Server IP : 180.180.241.3 / Your IP : 216.73.216.252 Web Server : Microsoft-IIS/7.5 System : Windows NT NETWORK-NHRC 6.1 build 7601 (Windows Server 2008 R2 Standard Edition Service Pack 1) i586 User : IUSR ( 0) PHP Version : 5.3.28 Disable Function : NONE MySQL : ON | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /AppServ/www/news/tmp/install_5333cea8259e5/front/views/html/tmpl/ |
Upload File : |
<?php /** * @version $Id$ * @copyright Copyright (C) 2005 - 2009 Joomla! Vargas. All rights reserved. * @license GNU General Public License version 2 or later; see LICENSE.txt * @author Guillermo Vargas (guille@vargas.co.cr) */ // No direct access defined( '_JEXEC' ) or die( 'Restricted access' ); require_once(JPATH_COMPONENT.'/displayer.php'); class XmapHtmlDisplayer extends XmapDisplayer { var $level = -1; var $_openList = ''; var $_closeList = ''; var $_closeItem = ''; var $_childs; var $_width; var $live_site = 0; function __construct ($config, $sitemap) { $this->view = 'html'; parent::__construct($config, $sitemap); $this->_parent_children=array(); $this->_last_child=array(); $this->live_site = substr_replace(JURI::root(), "", -1, 1); $user = JFactory::getUser(); } function setJView($view) { parent::setJView($view); $columns = $this->sitemap->params->get('columns',0); if( $columns > 1 ) { // calculate column widths $total = count($view->items); $columns = $total < $columns? $total : $columns; $this->_width = (100 / $columns) - 1; $this->sitemap->params->set('columns',$columns); } } /** * Prints one node of the sitemap * * * @param object $node * @return boolean */ function printNode( &$node ) { $out = ''; if ($this->isExcluded($node->id,$node->uid) && !$this->canEdit) { return FALSE; } // To avoid duplicate children in the same parent if ( !empty($this->_parent_children[$this->level][$node->uid]) ) { return FALSE; } //var_dump($this->_parent_children[$this->level]); $this->_parent_children[$this->level][$node->uid] = true; $out .= $this->_closeItem; $out .= $this->_openList; $this->_openList = ""; $out .= '<li>'; if( !isset($node->browserNav) ) $node->browserNav = 0; if ($node->browserNav != 3) { $link = JRoute::_($node->link, true, @$node->secure); } $node->name = htmlspecialchars($node->name); switch( $node->browserNav ) { case 1: // open url in new window $ext_image = ''; if ( $this->sitemap->params->get('exlinks') ) { $ext_image = ' <img src="'. $this->live_site .'/components/com_xmap/assets/images/'. $this->sitemap->params->get('exlinks') .'" alt="' . JText::_('COM_XMAP_SHOW_AS_EXTERN_ALT') . '" title="' . JText::_('COM_XMAP_SHOW_AS_EXTERN_ALT') . '" border="0" />'; } $out .= '<a href="'. $link .'" title="'. htmlspecialchars($node->name) .'" target="_blank">'. $node->name . $ext_image .'</a>'; break; case 2: // open url in javascript popup window $ext_image = ''; if( $this->sitemap->params->get('exlinks') ) { $ext_image = ' <img src="'. $this->live_site .'/components/com_xmap/assets/images/'. $this->sitemap->params->get('exlinks') .'" alt="' . JText::_('COM_XMAP_SHOW_AS_EXTERN_ALT') . '" title="' . JText::_('COM_XMAP_SHOW_AS_EXTERN_ALT') . '" border="0" />'; } $out .= '<a href="'. $link .'" title="'. $node->name .'" target="_blank" '. "onClick=\"javascript: window.open('". $link ."', '', 'toolbar=no,location=no,status=no,menubar=no,scrollbars=yes,resizable=yes,width=780,height=550'); return false;\">". $node->name . $ext_image."</a>"; break; case 3: // no link $out .= '<span>'. $node->name .'</span>'; break; default: // open url in parent window $out .= '<a href="'. $link .'" title="'. $node->name .'">'. $node->name .'</a>'; break; } $this->_closeItem = "</li>\n"; $this->_childs[$this->level]++; echo $out; if ($this->canEdit) { if ( $this->isExcluded($node->id,$node->uid) ) { $img = '<img src="'.$this->live_site.'/components/com_xmap/assets/images/unpublished.png" alt="v" title="'.JText::_('JUNPUBLISHED').'">'; $class= 'xmapexclon'; } else { $img = '<img src="'.$this->live_site.'/components/com_xmap/assets/images/tick.png" alt="x" title="'.JText::_('JPUBLISHED').'" />'; $class= 'xmapexcloff'; } echo ' <a href= "#" class="xmapexcl '.$class.'" rel="{uid:\''.$node->uid.'\',itemid:'.$node->id.'}">'.$img.'</a>'; } $this->count++; $this->_last_child[$this->level] = $node->uid; return TRUE; } /** * Moves sitemap level up or down */ function changeLevel( $level ) { if ( $level > 0 ) { # We do not print start ul here to avoid empty list, it's printed at the first child $this->level += $level; $this->_childs[$this->level]=0; $this->_openList = "\n<ul class=\"level_".$this->level."\">\n"; $this->_closeItem = ''; // If we are moving up, then lets clean the children of this level // because for sure this is a new set of links if ( empty ($this->_last_child[$this->level-1]) || empty ($this->_parent_children[$this->level]['parent']) || $this->_parent_children[$this->level]['parent'] != $this->_last_child[$this->level-1] ) { $this->_parent_children[$this->level]=array(); $this->_parent_children[$this->level]['parent'] = @$this->_last_child[$this->level-1]; } } else { if ($this->_childs[$this->level]){ echo $this->_closeItem."</ul>\n"; } $this->_closeItem ='</li>'; $this->_openList = ''; $this->level += $level; } } function startMenu(&$menu) { if( $this->sitemap->params->get('columns') > 1 ) // use columns echo '<div style="float:left;width:'.$this->_width.'%;">'; if( $this->sitemap->params->get('show_menutitle') ) // show menu titles echo '<h2 class="menutitle">'.$menu->name.'</h2>'; } function endMenu(&$menu) { $sitemap=&$this->sitemap; $this->_closeItem=''; if( $sitemap->params->get('columns')> 1 ) { echo "</div>\n"; } } }