| Server IP : 180.180.241.3 / Your IP : 216.73.216.216 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 : C:/AppServ/www/news/administrator/components/com_xmap/extensions/ |
Upload File : |
<?php
/**
* @author Guillermo Vargas, http://joomla.vargas.co.cr
* @email guille@vargas.co.cr
* @version $Id: com_joomdoc.php 120 2010-06-26 11:51:39Z guilleva $
* @package Xmap
* @license GNU/GPL
* @description Xmap plugin for Seyret Video component
*/
defined( '_JEXEC' ) or die( 'Direct Access to this location is not allowed.' );
class xmap_com_joomdoc {
/*
* This function is called before a menu item is printed. We use it to set the
* proper uniqueid for the item
*/
function prepareMenuItem(&$node,&$params) {
$link_query = parse_url( $node->link );
parse_str( html_entity_decode($link_query['query']), $link_vars);
$task = JArrayHelper::getValue($link_varas,'task','');
$gid = intval(JArrayHelper::getValue($link_vars,'gid',0));
if ( $task == 'view_cat' && $gid ) {
$node->uid = 'com_joomdocc'.$gid;
$node->expandible = true;
} elseif (($task == 'doc_details' || $task == 'doc_download') && $gid) {
$node->uid = 'com_joomdocd'.$gid;
$node->expandible = false;
}
}
function getTree ( &$xmap, &$parent, &$params ) {
//DOCMan core interaction API
xmap_com_joomdoc::includeDependencies();
$docman = &DocmanFactory::getDocman ();
// get the parameters from the query string
$link_query = parse_url( $parent->link );
parse_str( html_entity_decode($link_query['query']), $link_vars);
$task = JArrayHelper::getValue($link_varas,'task',0);
$catid = intval(JArrayHelper::getValue($link_vars,'gid',0));
if ($task != '' && $task != 'cat_view') {
return true;
}
if ( !$catid ) {
// get the parameters
$menu =& JSite::getMenu();
$queryparams = $menu->getParams($parent->id);
$catid=intval($queryparams->get('cat_id',NULL));
if (!$catid) {
$link_query = parse_url( $parent->link );
parse_str( html_entity_decode($link_query['query']), $link_vars);
$catid = JArrayHelper::getValue($link_vars,'gid',0);
}
}
$include_docs = JArrayHelper::getValue($params,'include_docs',1);
$include_docs = ( $include_docs == 1
|| ( $include_docs == 2 && $xmap->view == 'xml')
|| ( $include_docs == 3 && $xmap->view == 'html'));
$params['include_docs'] = $include_docs;
$doc_task = JArrayHelper::getValue($params,'doc_task','doc_details');
$params['doc_task'] = $doc_task;
$priority = JArrayHelper::getValue($params,'cat_priority',$parent->priority);
$changefreq = JArrayHelper::getValue($params,'cat_changefreq',$parent->changefreq);
if ($priority == '-1')
$priority = $parent->priority;
if ($changefreq == '-1')
$changefreq = $parent->changefreq;
$params['cat_priority'] = $priority;
$params['cat_changefreq'] = $changefreq;
$priority = JArrayHelper::getValue($params,'doc_priority',$parent->priority);
$changefreq = JArrayHelper::getValue($params,'doc_changefreq',$parent->changefreq);
if ($priority == '-1')
$priority = $parent->priority;
if ($changefreq == '-1')
$changefreq = $parent->changefreq;
$params['doc_priority'] = $priority;
$params['doc_changefreq'] = $changefreq;
$menuid = $parent->id;
$params['tpl'] = $docman->getCfg('icon_theme');
xmap_com_joomdoc::getCategoryTree($xmap,$parent,$params,$catid,$menuid);
}
function getCategoryTree(&$xmap,&$parent,&$params,$catid=0,$menuid) {
$db =& JFactory::getDBO();
$limits = 1000;
$list = array();
$query = 'select id,title from #__categories where parent_id='.$catid . ' and section=\'com_joomdoc\' and published=1';
$db->setQuery($query);
$rows = $db->loadRowList();
// Get sub-categories list
$xmap->changeLevel(1);
foreach ($rows as $row) {
$node = new stdclass;
$node->id = $menuid;
$node->uid = $parent->uid . 'c'.$row[0]; // should be unique on component
$node->name = $row[1];
$node->browserNav = $parent->browserNav;
$node->priority = $params['cat_priority'];
$node->changefreq = $params['cat_changefreq'];
$node->link = 'index.php?option=com_joomdoc&task=cat_view&gid='.$row[0];
$node->expandible = true;
if ($xmap->printNode($node)) {
xmap_com_joomdoc::getCategoryTree($xmap,$parent,$params,$row[0],$menuid);
}
}
$xmap->changeLevel(-1);
$include_docs = @$params['include_docs'];
if ( $catid > 0 && $params['include_docs'] ) {
$xmap->changeLevel(1);
$rows = DOCMAN_Docs::getDocsByUserAccess ( $catid, '', '', 10000, 0 );
// Get documents list
foreach ($rows as $row) {
$node = new stdclass;
$node->id = $menuid;
$node->uid = $parent->uid . 'd'.$row->id; // should be unique on component
$node->link = 'index.php?option=com_joomdoc&task='.$params['doc_task'].'&gid='.$row->id. '&Itemid='.$menuid;
$node->browserNav = $parent->browserNav;
$node->priority = $params['doc_priority'];
$node->changefreq = $params['doc_changefreq'];
$node->name = $row->dmname;
$node->expandible = false;
$xmap->printNode($node);
}
$xmap->changeLevel(-1);
}
return true;
}
function includeDependencies()
{
if (!defined('JPATH_COMPONENT_HELPERS')) {
define ( 'JPATH_COMPONENT_HELPERS', JPATH_SITE.DS.'components'.DS.'com_joomdoc'.DS.'helpers' );
define ( 'JPATH_COMPONENT_AHELPERS', JPATH_ADMINISTRATOR.DS.'components'.DS.'com_joomdoc' . DS . 'helpers' );
require_once (JPATH_ADMINISTRATOR.DS.'components'.DS.'com_joomdoc'. DS . 'docman.class.php');
require_once (JPATH_COMPONENT_AHELPERS . DS . 'factory.php');
define ( 'C_DOCMAN_DEFAULT_THEME', JPATH_SITE.'components'.DS.'com_joomdoc' . DS . 'views' . DS . 'themes' . DS);
$docman = &DocmanFactory::getDocman ();
define ( 'C_DOCMAN_HTML', $docman->getPath ( 'classes', 'html' ) );
define ( 'C_DOCMAN_UTILS', $docman->getPath ( 'classes', 'utils' ) );
define ( 'C_DOCMAN_FILE', $docman->getPath ( 'classes', 'file' ) );
require_once (C_DOCMAN_HTML);
require_once (C_DOCMAN_UTILS);
require_once (C_DOCMAN_FILE);
}
}
}