- fix typing error in index.tpl

- added template smarty function known_script (e.g.{known_script id="x" src"y.js"}) - useful to avoid double inclusion of a script such as prototype,jquery,... when a template and plugin need it independently (see the use in admin.tpl for example)
- removed unused themeconf.template_dir 

git-svn-id: http://piwigo.org/svn/trunk@2513 68402e56-0260-453c-a942-63ccdbb3a9ee
This commit is contained in:
rvelices 2008-09-09 09:53:31 +00:00
parent 26474d349f
commit 9aec2fb5e7
11 changed files with 56 additions and 37 deletions

View file

@ -1,4 +1,18 @@
{* $Id$ *}
{known_script id="jquery" src=$ROOT_URL|@cat:"template-common/lib/jquery.packed.js"}
{known_script id="jquery.ui" src=$ROOT_URL|@cat:"template-common/lib/ui/ui.core.packed.js" }
{known_script id="jquery.ui.accordion" src=$ROOT_URL|@cat:"template-common/lib/ui/ui.accordion.packed.js" }
<script type="text/javascript">
jQuery().ready(function(){ldelim}
jQuery('#menubar').accordion({ldelim}
header: "dt.rdion",
event: "click",
active: {$themeconf.selected_admin_menu}
});
});
</script>
<div id="menubar">
<dl class="first">
<dt class="rdion"><span>{'Links'|@translate}&nbsp;</span></dt>

View file

@ -3,7 +3,7 @@
Warning : This is the admin pages header only
don't be confusing with the public page header
don't confuse with the public page header
*}
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
@ -22,6 +22,7 @@
<link rel="stylesheet" type="text/css" media="print" href="{$ROOT_URL}template/{$themeconf.template}/print.css">
<link rel="stylesheet" type="text/css" href="{$ROOT_URL}admin/template/{$themeconf.template}/default-colors.css">
<link rel="stylesheet" type="text/css" href="{$ROOT_URL}admin/template/{$themeconf.template}/theme/{$themeconf.theme}/theme.css">
{known_script id="jquery" src=$ROOT_URL|@cat:"template-common/lib/jquery.packed.js" now=1} {*jQuery is always available by default*}
{$themeconf.local_head}
<script type="text/javascript" src="{$ROOT_URL}template-common/scripts.js"></script>
<!--[if lt IE 7]>

View file

@ -51,24 +51,10 @@ function selected_admin_menu()
$themeconf = array(
'template' => 'yoga',
'theme' => 'admin',
'template_dir' => 'admin/template/yoga',
'icon_dir' => 'template/yoga/icon',
'admin_icon_dir' => 'template/yoga/icon/admin',
'mime_icon_dir' => 'template/yoga/icon/mimetypes/',
'local_head' => '
<!-- New template location for admin -->
<!-- Admin Accordion Menus -->
<script type="text/javascript" src="template-common/lib/jquery.packed.js"></script>
<script type="text/javascript" src="template-common/lib/ui/ui.core.packed.js"></script>
<script type="text/javascript" src="template-common/lib/ui/ui.accordion.packed.js"></script>
<script type="text/javascript">
jQuery().ready(function(){
jQuery(\'#menubar\').accordion({
header: "dt.rdion",
event: "click",
active: '. selected_admin_menu() . '
});
});
</script>'
'selected_admin_menu' => selected_admin_menu(),
'local_head' => '',
);
?>

View file

@ -62,6 +62,7 @@ class Template {
$this->smarty->register_modifier( 'translate', array('Template', 'mod_translate') );
$this->smarty->register_modifier( 'explode', array('Template', 'mod_explode') );
$this->smarty->register_block('html_head', array(&$this, 'block_html_head') );
$this->smarty->register_function('known_script', array(&$this, 'func_known_script'), false );
$this->smarty->register_prefilter( array('Template', 'prefilter_white_space') );
if ( $conf['compiled_template_cache_language'] )
{
@ -339,6 +340,37 @@ class Template {
}
}
/**
* This smarty "known_script" functions allows to insert well known java scripts
* such as prototype, jquery, etc... only once. Examples:
* {known_script id="jquery" src="{$ROOT_URL}template-common/lib/jquery.packed.js"}
*/
function func_known_script($params, &$smarty )
{
if (!isset($params['id']))
{
$smarty->trigger_error("known_script: missing 'id' parameter");
return;
}
$id = $params['id'];
if (! isset( $this->known_scripts[$id] ) )
{
if (!isset($params['src']))
{
$smarty->trigger_error("known_script: missing 'src' parameter");
return;
}
$this->known_scripts[$id] = $params['src'];
$content = '<script type="text/javascript" src="'.$params['src'].'"></script>';
if (isset($params['now']) and $params['now'] and empty($this->output) )
{
return $content;
}
$repeat = false;
$this->block_html_head(null, $content, $smarty, $repeat);
}
}
/*static */ function prefilter_white_space($source, &$smarty)
{
$ld = $smarty->left_delimiter;

View file

@ -622,15 +622,6 @@ foreach (array('first','previous','next','last', 'current') as $which_image)
if ($page['slideshow'])
{
// Add local-slideshow.css file if exists
// Not only for ligth
$css = PHPWG_ROOT_PATH . get_themeconf('template_dir') . '/theme/'
. get_themeconf('theme') . '/local-slideshow.css';
if (file_exists($css))
{
//TODO CORRECT THIS $template->assign_block_vars('slideshow', array());
}
$tpl_slideshow = array();
//slideshow end

View file

@ -10,7 +10,7 @@
{'Sort order'|@translate}:
<select onchange="document.location = this.options[this.selectedIndex].value;">
{foreach from=$image_orders item=image_order }
<option value="{$image_order.URL}"{if $image_order.SELECTED} selected="selected"{/if}}>{$image_order.DISPLAY}</option>
<option value="{$image_order.URL}"{if $image_order.SELECTED} selected="selected"{/if}>{$image_order.DISPLAY}</option>
{/foreach}
</select>
</li>

View file

@ -2,10 +2,9 @@
$themeconf = array(
'template' => 'yoga',
'theme' => 'Sylvia',
'template_dir' => 'template/yoga',
'icon_dir' => 'template/yoga/icon',
'admin_icon_dir' => 'template/yoga/icon/admin',
'mime_icon_dir' => 'template/yoga/icon/mimetypes/',
'local_head' => '<!-- no theme specific head content -->',
'local_head' => '',
);
?>

View file

@ -2,10 +2,9 @@
$themeconf = array(
'template' => 'yoga',
'theme' => 'clear',
'template_dir' => 'template/yoga',
'icon_dir' => 'template/yoga/icon',
'admin_icon_dir' => 'template/yoga/icon/admin',
'mime_icon_dir' => 'template/yoga/icon/mimetypes/',
'local_head' => '<!-- no theme specific head content -->',
'local_head' => '',
);
?>

View file

@ -2,10 +2,9 @@
$themeconf = array(
'template' => 'yoga',
'theme' => 'dark',
'template_dir' => 'template/yoga',
'icon_dir' => 'template/yoga/icon',
'admin_icon_dir' => 'template/yoga/icon/admin',
'mime_icon_dir' => 'template/yoga/icon/mimetypes/',
'local_head' => '<!-- no theme specific head content -->',
'local_head' => '',
);
?>

View file

@ -2,10 +2,9 @@
$themeconf = array(
'template' => 'yoga',
'theme' => 'p0w0',
'template_dir' => 'template/yoga',
'icon_dir' => 'template/yoga/icon',
'admin_icon_dir' => 'template/yoga/icon/admin',
'mime_icon_dir' => 'template/yoga/icon/mimetypes/',
'local_head' => '<!-- no theme specific head content -->',
'local_head' => '',
);
?>

View file

@ -2,11 +2,10 @@
$themeconf = array(
'template' => 'yoga',
'theme' => 'wipi',
'template_dir' => 'template/yoga',
'icon_dir' => 'template/yoga/icon',
'admin_icon_dir' => 'template/yoga/icon/admin',
'mime_icon_dir' => 'template/yoga/icon/mimetypes/',
'local_head' => '<!-- no theme specific head content -->',
'local_head' => '',
);
if ( !isset($lang['Theme: wipi']) )
{