source: branches/2.1/admin.php @ 6276

Last change on this file since 6276 was 6276, checked in by plg, 14 years ago

merge r6265 from trunk to branch 2.1

Correct text alignement in .infos, .errors
30px => 53px

File size: 7.5 KB
Line 
1<?php
2// +-----------------------------------------------------------------------+
3// | Piwigo - a PHP based picture gallery                                  |
4// +-----------------------------------------------------------------------+
5// | Copyright(C) 2008-2010 Piwigo Team                  http://piwigo.org |
6// | Copyright(C) 2003-2008 PhpWebGallery Team    http://phpwebgallery.net |
7// | Copyright(C) 2002-2003 Pierrick LE GALL   http://le-gall.net/pierrick |
8// +-----------------------------------------------------------------------+
9// | This program is free software; you can redistribute it and/or modify  |
10// | it under the terms of the GNU General Public License as published by  |
11// | the Free Software Foundation                                          |
12// |                                                                       |
13// | This program is distributed in the hope that it will be useful, but   |
14// | WITHOUT ANY WARRANTY; without even the implied warranty of            |
15// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU      |
16// | General Public License for more details.                              |
17// |                                                                       |
18// | You should have received a copy of the GNU General Public License     |
19// | along with this program; if not, write to the Free Software           |
20// | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, |
21// | USA.                                                                  |
22// +-----------------------------------------------------------------------+
23
24//----------------------------------------------------------- include
25define('PHPWG_ROOT_PATH','./');
26define('IN_ADMIN', true);
27include_once( PHPWG_ROOT_PATH.'include/common.inc.php' );
28
29include_once(PHPWG_ROOT_PATH.'admin/include/functions.php');
30include_once(PHPWG_ROOT_PATH.'admin/include/functions_plugins.inc.php');
31
32trigger_action('loc_begin_admin');
33
34// +-----------------------------------------------------------------------+
35// | Check Access and exit when user status is not ok                      |
36// +-----------------------------------------------------------------------+
37check_status(ACCESS_ADMINISTRATOR);
38
39// tags
40if (isset($_GET['fckb_tags']))
41{
42  $query = '
43SELECT
44    id AS tag_id,
45    name AS tag_name
46  FROM '.TAGS_TABLE.'
47;';
48  echo json_encode(get_fckb_taglist($query));
49  exit();
50}
51
52// theme changer
53if (isset($_GET['change_theme']))
54{
55  $admin_themes = array('roma', 'clear');
56
57  $new_admin_theme = array_pop(
58    array_diff(
59      $admin_themes,
60      array($conf['admin_theme'])
61      )
62    );
63
64  conf_update_param('admin_theme', $new_admin_theme);
65
66  redirect('admin.php');
67}
68
69// +-----------------------------------------------------------------------+
70// |                    synchronize user informations                      |
71// +-----------------------------------------------------------------------+
72
73sync_users();
74
75// +-----------------------------------------------------------------------+
76// |                            variables init                             |
77// +-----------------------------------------------------------------------+
78
79if (isset($_GET['page'])
80    and preg_match('/^[a-z_]*$/', $_GET['page'])
81    and is_file(PHPWG_ROOT_PATH.'admin/'.$_GET['page'].'.php'))
82{
83  $page['page'] = $_GET['page'];
84}
85else
86{
87  $page['page'] = 'intro';
88}
89
90$page['errors'] = array();
91$page['infos']  = array();
92
93$link_start = PHPWG_ROOT_PATH.'admin.php?page=';
94$conf_link = $link_start.'configuration&amp;section=';
95//----------------------------------------------------- template initialization
96$title = l10n('Piwigo Administration'); // for include/page_header.php
97$page['page_banner'] = '<h1>'.l10n('Piwigo Administration').'</h1>';
98$page['body_id'] = 'theAdminPage';
99
100$template->set_filenames(array('admin' => 'admin.tpl'));
101
102$template->assign(
103  array(
104    'USERNAME' => $user['username'],
105    'U_SITE_MANAGER'=> $link_start.'site_manager',
106    'U_HISTORY_STAT'=> $link_start.'stats',
107    'U_FAQ'=> $link_start.'help',
108    'U_SITES'=> $link_start.'remote_site',
109    'U_MAINTENANCE'=> $link_start.'maintenance',
110    'U_NOTIFICATION_BY_MAIL'=> $link_start.'notification_by_mail',
111    'U_CONFIG_GENERAL'=> $link_start.'configuration',
112    'U_CONFIG_DISPLAY'=> $conf_link.'default',
113    'U_CONFIG_EXTENTS'=> $link_start.'extend_for_templates',
114    'U_CONFIG_MENUBAR'=> $link_start.'menubar',
115    'U_CONFIG_LANGUAGES' => $link_start.'languages_installed',
116    'U_CONFIG_THEMES'=> $link_start.'themes_installed',
117    'U_CATEGORIES'=> $link_start.'cat_list',
118    'U_MOVE'=> $link_start.'cat_move',
119    'U_CAT_OPTIONS'=> $link_start.'cat_options',
120    'U_CAT_UPDATE'=> $link_start.'site_update&amp;site=1',
121    'U_WAITING'=> $link_start.'upload',
122    'U_RATING'=> $link_start.'rating',
123    'U_CADDIE'=> $link_start.'element_set&amp;cat=caddie',
124    'U_RECENT_SET'=> $link_start.'element_set&amp;cat=recent',
125    'U_TAGS'=> $link_start.'tags',
126    'U_THUMBNAILS'=> $link_start.'thumbnail',
127    'U_USERS'=> $link_start.'user_list',
128    'U_GROUPS'=> $link_start.'group_list',
129    'U_PERMALINKS'=> $link_start.'permalinks',
130    'U_RETURN'=> make_index_url(),
131    'U_ADMIN'=> PHPWG_ROOT_PATH.'admin.php',
132    'U_LOGOUT'=> PHPWG_ROOT_PATH.'index.php?act=logout',
133    'U_PLUGINS'=> $link_start.'plugins_list',
134    'U_ADD_PHOTOS' => $link_start.'photos_add',
135    'U_CHANGE_THEME' => PHPWG_ROOT_PATH.'admin.php?change_theme=1',
136    'U_PENDING_COMMENTS' => $link_start.'comments',
137    )
138  );
139
140//---------------------------------------------------------------- plugin menus
141$plugin_menu_links = trigger_event('get_admin_plugin_menu_links', array() );
142
143function UC_name_compare($a, $b)
144{
145  return strcmp(strtolower($a['NAME']), strtolower($b['NAME']));
146}
147usort($plugin_menu_links, 'UC_name_compare');
148$template->assign('plugin_menu_items', $plugin_menu_links);
149
150include(PHPWG_ROOT_PATH.'admin/'.$page['page'].'.php');
151
152//------------------------------------------------------------- content display
153
154// +-----------------------------------------------------------------------+
155// |                            errors & infos                             |
156// +-----------------------------------------------------------------------+
157
158$template->assign('ACTIVE_MENU', get_active_menu($page['page']));
159
160if (count($page['errors']) != 0)
161{
162  $template->assign('errors', $page['errors']);
163}
164
165if (count($page['infos']) != 0)
166{
167  $template->assign('infos', $page['infos']);
168}
169
170// Add the Piwigo Official menu
171  $template->assign( 'pwgmenu', pwg_URL() );
172
173include(PHPWG_ROOT_PATH.'include/page_header.php');
174
175trigger_action('loc_end_admin');
176
177$template->pparse('admin');
178
179// +-----------------------------------------------------------------------+
180// |                     order permission refreshment                      |
181// +-----------------------------------------------------------------------+
182// Only for pages witch change permissions
183if (
184    in_array($page['page'],
185      array(
186        'site_manager', // delete site
187        'site_update',  // ?only POST
188        'cat_list',     // delete cat
189        'cat_modify',   // delete cat; public/private; lock/unlock
190        'cat_move',     // ?only POST
191        'cat_options',  // ?only POST; public/private; lock/unlock
192        'cat_perm',     // ?only POST
193        'element_set',  // ?only POST; associate/dissociate
194        'picture_modify', // ?only POST; associate/dissociate
195        'user_list',    // ?only POST; group assoc
196        'user_perm',
197        'group_perm',
198        'group_list',   // delete group
199      )
200    )
201  )
202{
203  invalidate_user_cache();
204}
205
206include(PHPWG_ROOT_PATH.'include/page_tail.php');
207?>
Note: See TracBrowser for help on using the repository browser.