Current Path : /var/www/html/clients/tatneft-nhs.ru/administrator/components/com_jce/helpers/ |
Current File : /var/www/html/clients/tatneft-nhs.ru/administrator/components/com_jce/helpers/tools.php |
<?php /** * @version $Id: tools.php 201 2011-05-08 16:27:15Z happy_noodle_boy $ * @package JCE * @copyright Copyright © 2009-2011 Ryan Demmer. All rights reserved. * @license GNU/GPL 2 or later * 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. */ class WFToolsHelper { function getTemplate() { $db = JFactory::getDBO(); // Joomla! 1.5 if (WF_JOOMLA15) { $query = 'SELECT template' . ' FROM #__templates_menu' . ' WHERE client_id = 0' ; // Joomla! 1.6+ } else { $query = 'SELECT template' . ' FROM #__template_styles' . ' WHERE client_id = 0' . ' AND home = 1' ; } $db->setQuery($query); return $db->loadResult(); } function parseColors($file) { $data = ''; $colors = array(); $file = realpath($file); if ($file && is_file($file)) { $data = JFile::read($file); } if ($data) { if (preg_match_all('/@import url\(([^\)]+)\)/', $data, $matches)) { $template = self::getTemplate(); foreach ($matches[1] as $match) { $file = JPATH_SITE.DS.'templates'.DS.$template.DS.'css'.DS.$match; if ($file) { self::parseColors($file); } } } preg_match_all('/#[0-9a-f]{3,6}/i', $data, $matches); $colors = $matches[0]; } return $colors; } function getTemplateColors() { jimport('joomla.filesystem.folder'); jimport('joomla.filesystem.file'); $colors = array(); $template = self::getTemplate(); $path = JPATH_SITE.DS.'templates'.DS.$template.DS.'css'; $files = JFolder::files($path, '\.css$', false, true); foreach ($files as $file) { $colors = array_merge($colors, WFToolsHelper::parseColors($file)); } return implode(",", array_unique($colors)); } function getOptions($params) { $options = array( 'editableselects' => array('label' => WFText::_('WF_TOOLS_EDITABLESELECT_LABEL')), 'extensions' => array( 'labels' => array( 'type_new' => WFText::_('WF_EXTENSION_MAPPER_TYPE_NEW'), 'group_new' => WFText::_('WF_EXTENSION_MAPPER_GROUP_NEW'), 'acrobat' => WFText::_('WF_FILEGROUP_ACROBAT'), 'office' => WFText::_('WF_FILEGROUP_OFFICE'), 'flash' => WFText::_('WF_FILEGROUP_FLASH'), 'shockwave' => WFText::_('WF_FILEGROUP_SHOCKWAVE'), 'quicktime' => WFText::_('WF_FILEGROUP_QUICKTIME'), 'windowsmedia' => WFText::_('WF_FILEGROUP_WINDOWSMEDIA'), 'silverlight' => WFText::_('WF_FILEGROUP_SILVERLIGHT'), 'openoffice' => WFText::_('WF_FILEGROUP_OPENOFFICE'), 'divx' => WFText::_('WF_FILEGROUP_DIVX'), 'real' => WFText::_('WF_FILEGROUP_REAL'), 'video' => WFText::_('WF_FILEGROUP_VIDEO'), 'audio' => WFText::_('WF_FILEGROUP_AUDIO') ) ), 'colorpicker' => array( 'template_colors' => self::getTemplateColors(), 'custom_colors' => $params->get('editor.custom_colors'), 'labels' => array( 'title' => WFText::_('WF_COLORPICKER_TITLE'), 'picker' => WFText::_('WF_COLORPICKER_PICKER'), 'palette' => WFText::_('WF_COLORPICKER_PALETTE'), 'named' => WFText::_('WF_COLORPICKER_NAMED'), 'template' => WFText::_('WF_COLORPICKER_TEMPLATE'), 'custom' => WFText::_('WF_COLORPICKER_CUSTOM'), 'color' => WFText::_('WF_COLORPICKER_COLOR'), 'apply' => WFText::_('WF_COLORPICKER_APPLY'), 'name' => WFText::_('WF_COLORPICKER_NAME') ) ), 'browser' => array( 'title' => WFText::_('WF_BROWSER_TITLE') ) ); return $options; } } ?>