Files
@ 0260ba63d9cf
Branch filter:
Location: hot67beta/administrator/components/com_templates/helpers/template.php - annotation
0260ba63d9cf
3.1 KiB
text/x-php
morepad
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 | c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 c7d7e38b2269 | <?php
/**
* @version $Id: template.php 10381 2008-06-01 03:35:53Z pasamio $
* @package Joomla
* @subpackage Templates
* @copyright Copyright (C) 2005 - 2008 Open Source Matters. All rights reserved.
* @license GNU/GPL, see LICENSE.php
* Joomla! 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. See COPYRIGHT.php for copyright notices and
* details.
*/
// no direct access
defined('_JEXEC') or die('Restricted access');
/**
* @package Joomla
* @subpackage Templates
*/
class TemplatesHelper
{
function isTemplateDefault($template, $clientId)
{
$db =& JFactory::getDBO();
// Get the current default template
$query = ' SELECT template '
.' FROM #__templates_menu '
.' WHERE client_id = ' . (int) $clientId
.' AND menuid = 0 ';
$db->setQuery($query);
$defaultemplate = $db->loadResult();
return $defaultemplate == $template ? 1 : 0;
}
function isTemplateAssigned($template)
{
$db =& JFactory::getDBO();
// check if template is assigned
$query = 'SELECT COUNT(*)' .
' FROM #__templates_menu' .
' WHERE client_id = 0' .
' AND template = '.$db->Quote($template) .
' AND menuid <> 0';
$db->setQuery($query);
return $db->loadResult() ? 1 : 0;
}
function parseXMLTemplateFiles($templateBaseDir)
{
// Read the template folder to find templates
jimport('joomla.filesystem.folder');
$templateDirs = JFolder::folders($templateBaseDir);
$rows = array();
// Check that the directory contains an xml file
foreach ($templateDirs as $templateDir)
{
if(!$data = TemplatesHelper::parseXMLTemplateFile($templateBaseDir, $templateDir)){
continue;
} else {
$rows[] = $data;
}
}
return $rows;
}
function parseXMLTemplateFile($templateBaseDir, $templateDir)
{
// Check of the xml file exists
if(!is_file($templateBaseDir.DS.$templateDir.DS.'templateDetails.xml')) {
return false;
}
$xml = JApplicationHelper::parseXMLInstallFile($templateBaseDir.DS.$templateDir.DS.'templateDetails.xml');
if ($xml['type'] != 'template') {
return false;
}
$data = new StdClass();
$data->directory = $templateDir;
foreach($xml as $key => $value) {
$data->$key = $value;
}
$data->checked_out = 0;
$data->mosname = JString::strtolower(str_replace(' ', '_', $data->name));
return $data;
}
function createMenuList($template)
{
$db =& JFactory::getDBO();
// get selected pages for $menulist
$query = 'SELECT menuid AS value' .
' FROM #__templates_menu' .
' WHERE client_id = 0' .
' AND template = '.$db->Quote($template);
$db->setQuery($query);
$lookup = $db->loadObjectList();
if (empty( $lookup )) {
$lookup = array( JHTML::_('select.option', '-1' ) );
}
// build the html select list
$options = JHTML::_('menu.linkoptions');
$result = JHTML::_('select.genericlist', $options, 'selections[]', 'class="inputbox" size="15" multiple="multiple"', 'value', 'text', $lookup, 'selections' );
return $result;
}
}
|