0000809: Use more php classes implementation
Use class for tabsheet like grum class Change way for tabsheet git-svn-id: http://piwigo.org/svn/trunk@2226 68402e56-0260-453c-a942-63ccdbb3a9ee
This commit is contained in:
parent
7818a7715b
commit
4621be1005
9 changed files with 208 additions and 198 deletions
|
@ -30,7 +30,7 @@ if (!defined('PHPWG_ROOT_PATH'))
|
|||
}
|
||||
|
||||
include_once(PHPWG_ROOT_PATH.'admin/include/functions.php');
|
||||
include_once(PHPWG_ROOT_PATH.'admin/include/functions_tabsheet.inc.php');
|
||||
include_once(PHPWG_ROOT_PATH.'admin/include/tabsheet.class.php');
|
||||
|
||||
// +-----------------------------------------------------------------------+
|
||||
// | Check Access and exit when user status is not ok |
|
||||
|
@ -159,50 +159,22 @@ $template->assign(
|
|||
)
|
||||
);
|
||||
|
||||
// TabSheet
|
||||
$tabsheet = new tabsheet();
|
||||
// TabSheet initialization
|
||||
$opt_link = $link_start.'cat_options&section=';
|
||||
$tabsheet = array
|
||||
(
|
||||
'status' => array
|
||||
(
|
||||
'caption' => l10n('cat_security'),
|
||||
'url' => $opt_link.'status'
|
||||
),
|
||||
'visible' => array
|
||||
(
|
||||
'caption' => l10n('lock'),
|
||||
'url' => $opt_link.'visible'
|
||||
),
|
||||
'upload' => array
|
||||
(
|
||||
'caption' => l10n('upload'),
|
||||
'url' => $opt_link.'upload'
|
||||
),
|
||||
'comments' => array
|
||||
(
|
||||
'caption' => l10n('comments'),
|
||||
'url' => $opt_link.'comments'
|
||||
),
|
||||
);
|
||||
|
||||
$tabsheet->add('status', l10n('cat_security'), $opt_link.'status');
|
||||
$tabsheet->add('visible', l10n('lock'), $opt_link.'visible');
|
||||
$tabsheet->add('upload', l10n('upload'), $opt_link.'upload');
|
||||
$tabsheet->add('comments', l10n('comments'), $opt_link.'comments');
|
||||
if ($conf['allow_random_representative'])
|
||||
{
|
||||
$tabsheet['representative'] =
|
||||
array
|
||||
(
|
||||
'caption' => l10n('Representative'),
|
||||
'url' => $opt_link.'representative'
|
||||
);
|
||||
$tabsheet->add('representative', l10n('Representative'), $opt_link.'representative');
|
||||
}
|
||||
$tabsheet[$page['section']]['selected'] = true;
|
||||
|
||||
// TabSheet selection
|
||||
$tabsheet->select($page['section']);
|
||||
// Assign tabsheet to template
|
||||
$template->assign(
|
||||
array(
|
||||
'tabsheet' => $tabsheet,
|
||||
'TABSHEET_TITLE' => $tabsheet[$page['section']]['caption']
|
||||
)
|
||||
);
|
||||
$tabsheet->assign();
|
||||
|
||||
// +-----------------------------------------------------------------------+
|
||||
// | form display |
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
// +-----------------------------------------------------------------------+
|
||||
// | PhpWebGallery - a PHP based picture gallery |
|
||||
// | Copyright (C) 2002-2003 Pierrick LE GALL - pierrick@phpwebgallery.net |
|
||||
// | Copyright (C) 2003-2007 PhpWebGallery Team - http://phpwebgallery.net |
|
||||
// | Copyright (C) 2003-2008 PhpWebGallery Team - http://phpwebgallery.net |
|
||||
// +-----------------------------------------------------------------------+
|
||||
// | branch : BSF (Best So Far)
|
||||
// | file : $RCSfile$
|
||||
|
@ -31,7 +31,7 @@ if( !defined("PHPWG_ROOT_PATH") )
|
|||
}
|
||||
|
||||
include_once(PHPWG_ROOT_PATH.'admin/include/functions.php');
|
||||
include_once(PHPWG_ROOT_PATH.'admin/include/functions_tabsheet.inc.php');
|
||||
include_once(PHPWG_ROOT_PATH.'admin/include/tabsheet.class.php');
|
||||
|
||||
// +-----------------------------------------------------------------------+
|
||||
// | Check Access and exit when user status is not ok |
|
||||
|
@ -157,35 +157,17 @@ WHERE param = \''.$row['param'].'\'
|
|||
//----------------------------------------------------- template initialization
|
||||
$template->set_filename('config', 'admin/configuration.tpl');
|
||||
|
||||
// TabSheet
|
||||
$tabsheet = new tabsheet();
|
||||
// TabSheet initialization
|
||||
$page['tabsheet'] = array
|
||||
(
|
||||
'main' => array
|
||||
(
|
||||
'caption' => l10n('conf_main_title'),
|
||||
'url' => $conf_link.'main'
|
||||
),
|
||||
'history' => array
|
||||
(
|
||||
'caption' => l10n('conf_history_title'),
|
||||
'url' => $conf_link.'history'
|
||||
),
|
||||
'comments' => array
|
||||
(
|
||||
'caption' => l10n('conf_comments_title'),
|
||||
'url' => $conf_link.'comments'
|
||||
),
|
||||
'default' => array
|
||||
(
|
||||
'caption' => l10n('conf_display'),
|
||||
'url' => $conf_link.'default'
|
||||
)
|
||||
);
|
||||
|
||||
$page['tabsheet'][$page['section']]['selected'] = true;
|
||||
|
||||
$tabsheet->add('main', l10n('conf_main_title'), $conf_link.'main');
|
||||
$tabsheet->add('history', l10n('conf_history_title'), $conf_link.'history');
|
||||
$tabsheet->add('comments', l10n('conf_comments_title'), $conf_link.'comments');
|
||||
$tabsheet->add('default', l10n('conf_display'), $conf_link.'default');
|
||||
// TabSheet selection
|
||||
$tabsheet->select($page['section']);
|
||||
// Assign tabsheet to template
|
||||
template_assign_tabsheet();
|
||||
$tabsheet->assign();
|
||||
|
||||
$action = PHPWG_ROOT_PATH.'admin.php?page=configuration';
|
||||
$action.= '&section='.$page['section'];
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
// +-----------------------------------------------------------------------+
|
||||
// | PhpWebGallery - a PHP based picture gallery |
|
||||
// | Copyright (C) 2002-2003 Pierrick LE GALL - pierrick@phpwebgallery.net |
|
||||
// | Copyright (C) 2003-2007 PhpWebGallery Team - http://phpwebgallery.net |
|
||||
// | Copyright (C) 2003-2008 PhpWebGallery Team - http://phpwebgallery.net |
|
||||
// +-----------------------------------------------------------------------+
|
||||
// | file : $Id$
|
||||
// | last update : $Date$
|
||||
|
@ -24,31 +24,21 @@
|
|||
// | USA. |
|
||||
// +-----------------------------------------------------------------------+
|
||||
|
||||
include_once(PHPWG_ROOT_PATH.'admin/include/functions_tabsheet.inc.php');
|
||||
include_once(PHPWG_ROOT_PATH.'admin/include/tabsheet.class.php');
|
||||
|
||||
function history_tabsheet()
|
||||
{
|
||||
global $page, $link_start;
|
||||
|
||||
// TabSheet
|
||||
$tabsheet = new tabsheet();
|
||||
// TabSheet initialization
|
||||
$page['tabsheet'] = array
|
||||
(
|
||||
'stats' => array
|
||||
(
|
||||
'caption' => l10n('Statistics'),
|
||||
'url' => $link_start.'stats'
|
||||
),
|
||||
'history' => array
|
||||
(
|
||||
'caption' => l10n('Search'),
|
||||
'url' => $link_start.'history'
|
||||
)
|
||||
);
|
||||
|
||||
$page['tabsheet'][$page['page']]['selected'] = true;
|
||||
|
||||
$tabsheet->add('stats', l10n('Statistics'), $link_start.'stats');
|
||||
$tabsheet->add('history', l10n('Search'), $link_start.'history');
|
||||
// TabSheet selection
|
||||
$tabsheet->select($page['page']);
|
||||
// Assign tabsheet to template
|
||||
template_assign_tabsheet();
|
||||
$tabsheet->assign();
|
||||
}
|
||||
|
||||
function history_compare($a, $b)
|
||||
|
|
|
@ -1,64 +0,0 @@
|
|||
<?php
|
||||
// +-----------------------------------------------------------------------+
|
||||
// | PhpWebGallery - a PHP based picture gallery |
|
||||
// | Copyright (C) 2002-2003 Pierrick LE GALL - pierrick@phpwebgallery.net |
|
||||
// | Copyright (C) 2003-2007 PhpWebGallery Team - http://phpwebgallery.net |
|
||||
// +-----------------------------------------------------------------------+
|
||||
// | file : $Id$
|
||||
// | last update : $Date$
|
||||
// | last modifier : $Author$
|
||||
// | revision : $Revision$
|
||||
// +-----------------------------------------------------------------------+
|
||||
// | This program is free software; you can redistribute it and/or modify |
|
||||
// | it under the terms of the GNU General Public License as published by |
|
||||
// | the Free Software Foundation |
|
||||
// | |
|
||||
// | This program is distributed in the hope that it will be useful, but |
|
||||
// | WITHOUT ANY WARRANTY; without even the implied warranty of |
|
||||
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
|
||||
// | General Public License for more details. |
|
||||
// | |
|
||||
// | You should have received a copy of the GNU General Public License |
|
||||
// | along with this program; if not, write to the Free Software |
|
||||
// | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, |
|
||||
// | USA. |
|
||||
// +-----------------------------------------------------------------------+
|
||||
|
||||
/*
|
||||
* Build TabSheet and assign this content to current page
|
||||
*
|
||||
* Uses $page['tabsheet'], it's an array of array
|
||||
*
|
||||
* $page['tabsheet'] description:
|
||||
* $page['tabsheet']'[url'] : Tab link
|
||||
* $page['tabsheet']['Caption'] : Tab caption
|
||||
* $page['tabsheet']['selected'] : Is the selected tab (default value false)
|
||||
*
|
||||
* Fill {TABSHEET} with HTML code for tabshette
|
||||
* Fill {U_TABSHEET_TITLE} with formated caption of the selected tab
|
||||
*/
|
||||
|
||||
function template_assign_tabsheet()
|
||||
{
|
||||
global $page, $template;
|
||||
//THIS SHOULD BE DEPRECATED ?
|
||||
|
||||
$template->set_filename('tabsheet', 'admin/tabsheet.tpl');
|
||||
$template->assign('tabsheet', $page['tabsheet']);
|
||||
|
||||
foreach ($page['tabsheet'] as $tab_name => $tab)
|
||||
{
|
||||
$is_selected = isset($tab['selected']) and $tab['selected'] === true;
|
||||
if ($is_selected)
|
||||
{
|
||||
$template->assign_vars(
|
||||
array('TABSHEET_TITLE' => '['.$tab['caption'].']'));
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
$template->assign_var_from_handle('TABSHEET', 'tabsheet');
|
||||
$template->clear_assign('tabsheet');
|
||||
}
|
||||
|
||||
?>
|
|
@ -2,7 +2,7 @@
|
|||
// +-----------------------------------------------------------------------+
|
||||
// | PhpWebGallery - a PHP based picture gallery |
|
||||
// | Copyright (C) 2002-2003 Pierrick LE GALL - pierrick@phpwebgallery.net |
|
||||
// | Copyright (C) 2003-2007 PhpWebGallery Team - http://phpwebgallery.net |
|
||||
// | Copyright (C) 2003-2008 PhpWebGallery Team - http://phpwebgallery.net |
|
||||
// +-----------------------------------------------------------------------+
|
||||
// | file : $Id$
|
||||
// | last update : $Date$
|
||||
|
@ -24,31 +24,21 @@
|
|||
// | USA. |
|
||||
// +-----------------------------------------------------------------------+
|
||||
|
||||
include_once(PHPWG_ROOT_PATH.'admin/include/functions_tabsheet.inc.php');
|
||||
include_once(PHPWG_ROOT_PATH.'admin/include/tabsheet.class.php');
|
||||
|
||||
function waiting_tabsheet()
|
||||
{
|
||||
global $page, $link_start;
|
||||
|
||||
// TabSheet
|
||||
$tabsheet = new tabsheet();
|
||||
// TabSheet initialization
|
||||
$page['tabsheet'] = array
|
||||
(
|
||||
'comments' => array
|
||||
(
|
||||
'caption' => l10n('comments'),
|
||||
'url' => $link_start.'comments'
|
||||
),
|
||||
'upload' => array
|
||||
(
|
||||
'caption' => l10n('upload_pictures'),
|
||||
'url' => $link_start.'upload'
|
||||
)
|
||||
);
|
||||
|
||||
$page['tabsheet'][$page['page']]['selected'] = true;
|
||||
|
||||
$tabsheet->add('comments', l10n('comments'), $link_start.'comments');
|
||||
$tabsheet->add('upload', l10n('upload_pictures'), $link_start.'upload');
|
||||
// TabSheet selection
|
||||
$tabsheet->select($page['page']);
|
||||
// Assign tabsheet to template
|
||||
template_assign_tabsheet();
|
||||
$tabsheet->assign();
|
||||
}
|
||||
|
||||
?>
|
||||
|
|
149
admin/include/tabsheet.class.php
Normal file
149
admin/include/tabsheet.class.php
Normal file
|
@ -0,0 +1,149 @@
|
|||
<?php
|
||||
// +-----------------------------------------------------------------------+
|
||||
// | PhpWebGallery - a PHP based picture gallery |
|
||||
// | Copyright (C) 2002-2003 Pierrick LE GALL - pierrick@phpwebgallery.net |
|
||||
// | Copyright (C) 2003-2008 PhpWebGallery Team - http://phpwebgallery.net |
|
||||
// +-----------------------------------------------------------------------+
|
||||
// | file : $Id$
|
||||
// | last update : $Date$
|
||||
// | last modifier : $Author$
|
||||
// | revision : $Revision$
|
||||
// +-----------------------------------------------------------------------+
|
||||
// | This program is free software; you can redistribute it and/or modify |
|
||||
// | it under the terms of the GNU General Public License as published by |
|
||||
// | the Free Software Foundation |
|
||||
// | |
|
||||
// | This program is distributed in the hope that it will be useful, but |
|
||||
// | WITHOUT ANY WARRANTY; without even the implied warranty of |
|
||||
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
|
||||
// | General Public License for more details. |
|
||||
// | |
|
||||
// | You should have received a copy of the GNU General Public License |
|
||||
// | along with this program; if not, write to the Free Software |
|
||||
// | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, |
|
||||
// | USA. |
|
||||
// +-----------------------------------------------------------------------+
|
||||
|
||||
class tabsheet
|
||||
{
|
||||
var $sheets;
|
||||
var $name;
|
||||
var $titlename;
|
||||
var $selected;
|
||||
|
||||
/*
|
||||
$name is the tabsheet's name inside the template .tpl file
|
||||
$titlename in the template is affected by $titlename value
|
||||
*/
|
||||
function tabsheet($name = 'TABSHEET', $titlename = 'TABSHEET_TITLE')
|
||||
{
|
||||
$this->sheets = array();
|
||||
$this->name = $name;
|
||||
$this->titlename = $titlename;
|
||||
$this->selected = "";
|
||||
}
|
||||
|
||||
/*
|
||||
add a tab
|
||||
*/
|
||||
function add($name, $caption, $url, $selected = false)
|
||||
{
|
||||
if (!isset($this->sheets[$name]))
|
||||
{
|
||||
$this->sheets[$name] = array('caption' => $caption,
|
||||
'url' => $url);
|
||||
if($selected)
|
||||
{
|
||||
$this->selected=$name;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
/*
|
||||
remove a tab
|
||||
*/
|
||||
function delete($name)
|
||||
{
|
||||
if (isset($this->sheets[$name]))
|
||||
{
|
||||
array_splice($this->sheets, $name, 1);
|
||||
|
||||
if ($this->selected == $name)
|
||||
{
|
||||
$this->selected = "";
|
||||
}
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
/*
|
||||
select a tab to be active
|
||||
*/
|
||||
function select($name)
|
||||
{
|
||||
$this->selected = $name;
|
||||
}
|
||||
|
||||
/*
|
||||
set $titlename value
|
||||
*/
|
||||
function set_titlename($titlename)
|
||||
{
|
||||
$this->titlename = $titlename;
|
||||
return $this->titlename;
|
||||
}
|
||||
|
||||
/*
|
||||
returns $titlename value
|
||||
*/
|
||||
function get_titlename()
|
||||
{
|
||||
return $this->titlename;
|
||||
}
|
||||
|
||||
/*
|
||||
returns properties of selected tab
|
||||
*/
|
||||
function get_selected()
|
||||
{
|
||||
if (!empty($this->selected))
|
||||
{
|
||||
return $this->sheets[$this->selected];
|
||||
}
|
||||
else
|
||||
{
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* Build TabSheet and assign this content to current page
|
||||
*
|
||||
* Fill $this->$name {default value = TABSHEET} with HTML code for tabsheet
|
||||
* Fill $this->titlename {default value = TABSHEET_TITLE} with formated caption of the selected tab
|
||||
*/
|
||||
function assign()
|
||||
{
|
||||
global $template;
|
||||
|
||||
$template->set_filename('tabsheet', 'admin/tabsheet.tpl');
|
||||
$template->assign('tabsheet', $this->sheets);
|
||||
$template->assign('tabsheet_selected', $this->selected);
|
||||
|
||||
$selected_tab = $this->get_selected();
|
||||
|
||||
if (isset($selected_tab))
|
||||
{
|
||||
$template->assign_vars(
|
||||
array($this->titlename => '['.$selected_tab['caption'].']'));
|
||||
}
|
||||
|
||||
$template->assign_var_from_handle($this->name, 'tabsheet');
|
||||
$template->clear_assign('tabsheet');
|
||||
}
|
||||
}
|
||||
|
||||
?>
|
|
@ -2,7 +2,7 @@
|
|||
// +-----------------------------------------------------------------------+
|
||||
// | PhpWebGallery - a PHP based picture gallery |
|
||||
// | Copyright (C) 2002-2003 Pierrick LE GALL - pierrick@phpwebgallery.net |
|
||||
// | Copyright (C) 2003-2007 PhpWebGallery Team - http://phpwebgallery.net |
|
||||
// | Copyright (C) 2003-2008 PhpWebGallery Team - http://phpwebgallery.net |
|
||||
// +-----------------------------------------------------------------------+
|
||||
// | file : $Id$
|
||||
// | last update : $Date$
|
||||
|
@ -35,7 +35,7 @@ if (!defined('PHPWG_ROOT_PATH'))
|
|||
|
||||
include_once(PHPWG_ROOT_PATH.'admin/include/functions.php');
|
||||
include_once(PHPWG_ROOT_PATH.'admin/include/functions_notification_by_mail.inc.php');
|
||||
include_once(PHPWG_ROOT_PATH.'admin/include/functions_tabsheet.inc.php');
|
||||
include_once(PHPWG_ROOT_PATH.'admin/include/tabsheet.class.php');
|
||||
include_once(PHPWG_ROOT_PATH.'include/common.inc.php');
|
||||
include_once(PHPWG_ROOT_PATH.'include/functions_notification.inc.php');
|
||||
include_once(PHPWG_ROOT_PATH.'include/functions_mail.inc.php');
|
||||
|
@ -610,31 +610,22 @@ $template->assign_vars
|
|||
|
||||
if (is_autorize_status(ACCESS_WEBMASTER))
|
||||
{
|
||||
// TabSheet
|
||||
$tabsheet = new tabsheet();
|
||||
// TabSheet initialization
|
||||
$page['tabsheet'] = array
|
||||
(
|
||||
'param' => array
|
||||
(
|
||||
'caption' => l10n('nbm_param_mode'),
|
||||
'url' => add_url_params($base_url.get_query_string_diff(array('mode', 'select')),
|
||||
array('mode' => 'param'))
|
||||
),
|
||||
'subscribe' => array
|
||||
(
|
||||
'caption' => l10n('nbm_subscribe_mode'),
|
||||
'url' => add_url_params($base_url.get_query_string_diff(array('mode', 'select')), array('mode' => 'subscribe')),
|
||||
),
|
||||
'send' => array
|
||||
(
|
||||
'caption' => l10n('nbm_send_mode'),
|
||||
'url' => add_url_params($base_url.get_query_string_diff(array('mode', 'select')), array('mode' => 'send'))
|
||||
)
|
||||
);
|
||||
|
||||
$page['tabsheet'][$page['mode']]['selected'] = true;
|
||||
|
||||
$tabsheet->add('param', l10n('nbm_param_mode'),
|
||||
add_url_params($base_url.get_query_string_diff(array('mode', 'select')),
|
||||
array('mode' => 'param')));
|
||||
$tabsheet->add('subscribe', l10n('nbm_subscribe_mode'),
|
||||
add_url_params($base_url.get_query_string_diff(array('mode', 'select')),
|
||||
array('mode' => 'subscribe')));
|
||||
$tabsheet->add('send', l10n('nbm_send_mode'),
|
||||
add_url_params($base_url.get_query_string_diff(array('mode', 'select')),
|
||||
array('mode' => 'send')));
|
||||
// TabSheet selection
|
||||
$tabsheet->select($page['mode']);
|
||||
// Assign tabsheet to template
|
||||
template_assign_tabsheet();
|
||||
$tabsheet->assign();
|
||||
}
|
||||
|
||||
if ($must_repost)
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
<li><a href="{$U_HELP}" onclick="popuphelp(this.href); return false;" title="{'Help'|@translate}"><img src="{$themeconf.icon_dir}/help.png" class="button" alt="(?)"></a></li>
|
||||
</ul>
|
||||
<h2>{'cat_options_title'|@translate} {$TABSHEET_TITLE}</h2>
|
||||
{include file='admin/tabsheet.tpl'}
|
||||
{$TABSHEET}
|
||||
</div>
|
||||
|
||||
<form method="post" action="{$F_ACTION}" id="cat_options">
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
{* $Id$ *}
|
||||
{if isset($tabsheet) and count($tabsheet)}
|
||||
<ul class="tabsheet">
|
||||
{foreach from=$tabsheet item=tab}
|
||||
<li class="{if isset($tab.selected) and $tab.selected}selected_tab{else}normal_tab{/if}"><a href="{$tab.url}">{$tab.caption}</a></li>
|
||||
{foreach from=$tabsheet key=name item=sheet}
|
||||
<li class="{if ($name == $tabsheet_selected)}selected_tab{else}normal_tab{/if}"><a href="{$sheet.url}">{$sheet.caption}</a></li>
|
||||
{/foreach}
|
||||
</ul>
|
||||
{/if}
|
Loading…
Reference in a new issue