%PDF- %PDF-
Direktori : /home/lightco1/www/lightcolab.com/administrator/components/com_jce/models/ |
Current File : /home/lightco1/www/lightcolab.com/administrator/components/com_jce/models/help.php |
<?php /** * @copyright Copyright (c) 2009-2017 Ryan Demmer. All rights reserved * @license GNU/GPL 2 or later - http://www.gnu.org/licenses/old-licenses/gpl-2.0.html * JCE is free software. This version may have been modified pursuant * to the GNU General Public License, and as distributed it includes or * is derivative of works licensed under the GNU General Public License or * other free or open source software licenses */ defined('_JEXEC') or die('RESTRICTED'); // load base model require_once dirname(__FILE__).'/model.php'; class WFModelHelp extends WFModel { public function getLanguage() { $language = JFactory::getLanguage(); $tag = $language->getTag(); return substr($tag, 0, strpos($tag, '-')); } public function getTopics($file) { $result = ''; if (file_exists($file)) { // load xml $xml = WFXMLElement::load($file); if ($xml) { foreach ($xml->help->children() as $topic) { $subtopics = $topic->subtopic; $class = count($subtopics) ? ' class="subtopics"' : ''; $key = (string) $topic->attributes()->key; $title = (string) $topic->attributes()->title; $file = (string) $topic->attributes()->file; // if file attribute load file if ($file) { $result .= $this->getTopics(WF_EDITOR.'/'.$file); } else { $result .= '<dd'.$class.' id="'.$key.'"><i class="icon-copy"></i><i class="icon-file"></i> '.trim(WFText::_($title)).'</dd>'; } if (count($subtopics)) { $result .= '<dl class="hidden">'; foreach ($subtopics as $subtopic) { $sub_subtopics = $subtopic->subtopic; // if a file is set load it as sub-subtopics if ($file = (string) $subtopic->attributes()->file) { $result .= '<dd class="subtopics"><i class="icon-copy"></i> '.trim(WFText::_((string) $subtopic->attributes()->title)).'</dd>'; $result .= '<dl class="hidden">'; $result .= $this->getTopics(WF_EDITOR.'/'.$file); $result .= '</dl>'; } else { $id = $subtopic->attributes()->key ? ' id="'.(string) $subtopic->attributes()->key.'"' : ''; $class = count($sub_subtopics) ? ' class="subtopics"' : ''; $result .= '<dd'.$class.$id.'><i class="icon-copy"></i><i class="icon-file"></i> '.trim(WFText::_((string) $subtopic->attributes()->title)).'</dd>'; if (count($sub_subtopics)) { $result .= '<dl class="hidden">'; foreach ($sub_subtopics as $sub_subtopic) { $result .= '<dd id="'.(string) $sub_subtopic->attributes()->key.'"><i class="icon-copy"></i><i class="icon-file"></i> '.trim(WFText::_((string) $sub_subtopic->attributes()->title)).'</dd>'; } $result .= '</dl>'; } } } $result .= '</dl>'; } } } } return $result; } /** * Returns a formatted list of help topics. * * @return string * * @since 1.5 */ public function renderTopics() { $section = JRequest::getWord('section', 'admin'); $category = JRequest::getWord('category', 'cpanel'); $document = JFactory::getDocument(); $language = JFactory::getLanguage(); $document->setTitle(WFText::_('WF_HELP').' : '.WFText::_('WF_'.strtoupper($category).'_TITLE')); $file = WF_EDITOR_PLUGINS.'/'.$category.'/'.$category.'.xml'; switch ($section) { case 'admin': $file = JPATH_ADMINISTRATOR.'/components/com_jce/models/'.$category.'.xml'; break; case 'editor': $file = WF_EDITOR_PLUGINS.'/'.$category.'/'.$category.'.xml'; if (!is_file($file)) { $file = WF_EDITOR_LIBRARIES.'/xml/help/editor.xml'; } else { $language->load('com_jce_'.$category, JPATH_SITE); } break; } $result = ''; $result .= '<dl><dt><i class="icon-folder"></i> '.WFText::_('WF_'.strtoupper($category).'_TITLE').'</dt>'; $result .= $this->getTopics($file); $result .= '</dl>'; return $result; } }