Changeset 2313:ef1db3d7c388 for inc/admin/prepend.php
- Timestamp:
- 10/08/13 15:27:39 (12 years ago)
- Branch:
- twig
- Parents:
- 1524:913f5a36bbb0 (diff), 2312:d01c85eaa37d (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the (diff) links above to see all the changes relative to each parent. - Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
inc/admin/prepend.php
r1490 r2313 22 22 header("Pragma: no-cache"); 23 23 24 function dc_valid_fav($url) {25 global $core;26 27 if (preg_match('#plugin\.php\?p=([^&]+)#',$url,$matches)) {28 if (isset($matches[1])) {29 if (!$core->plugins->moduleExists($matches[1])) {30 return false;31 }32 }33 }34 return true;35 }36 37 function dc_prepare_url($url) {38 39 $u = str_replace(array('?','&','/'),array('\?','&','\\/'),$url);40 return (!strpos($u,'\?') ?41 '/'.$u.'$/' :42 (!strpos($u,'&') ?43 '/'.$u.'(\?.*)?$/' :44 '/'.$u.'(&.*)?$/'));45 }46 47 24 function dc_load_locales() { 48 25 global $_lang, $core; … … 51 28 $_lang = preg_match('/^[a-z]{2}(-[a-z]{2})?$/',$_lang) ? $_lang : 'en'; 52 29 30 l10n::lang($_lang); 53 31 if (l10n::set(dirname(__FILE__).'/../../locales/'.$_lang.'/date') === false && $_lang != 'en') { 54 32 l10n::set(dirname(__FILE__).'/../../locales/en/date'); … … 216 194 } 217 195 unset($hfiles,$locales_root); 196 // Contextual help flag 197 $GLOBALS['__resources']['ctxhelp'] = false; 218 198 219 199 $core->auth->user_prefs->addWorkspace('interface'); 220 200 $user_ui_nofavmenu = $core->auth->user_prefs->interface->nofavmenu; 221 201 222 # Standard favorites223 $_fav = new ArrayObject(); 202 $core->favs = new dcFavorites($core); 203 224 204 225 205 # [] : Title, URL, small icon, large icon, permissions, id, class 226 206 # NB : '*' in permissions means any, null means super admin only 227 207 228 $_fav['prefs'] = new ArrayObject(array('prefs','My preferences','preferences.php',229 'images/menu/user-pref.png','images/menu/user-pref-b.png',230 '*',null,null));231 232 $_fav['new_post'] = new ArrayObject(array('new_post','New entry','post.php',233 'images/menu/edit.png','images/menu/edit-b.png',234 'usage,contentadmin',null,'menu-new-post'));235 $_fav['posts'] = new ArrayObject(array('posts','Entries','posts.php',236 'images/menu/entries.png','images/menu/entries-b.png',237 'usage,contentadmin',null,null));238 $_fav['comments'] = new ArrayObject(array('comments','Comments','comments.php',239 'images/menu/comments.png','images/menu/comments-b.png',240 'usage,contentadmin',null,null));241 $_fav['search'] = new ArrayObject(array('search','Search','search.php',242 'images/menu/search.png','images/menu/search-b.png',243 'usage,contentadmin',null,null));244 $_fav['categories'] = new ArrayObject(array('categories','Categories','categories.php',245 'images/menu/categories.png','images/menu/categories-b.png',246 'categories',null,null));247 $_fav['media'] = new ArrayObject(array('media','Media manager','media.php',248 'images/menu/media.png','images/menu/media-b.png',249 'media,media_admin',null,null));250 $_fav['blog_pref'] = new ArrayObject(array('blog_pref','Blog settings','blog_pref.php',251 'images/menu/blog-pref.png','images/menu/blog-pref-b.png',252 'admin',null,null));253 $_fav['blog_theme'] = new ArrayObject(array('blog_theme','Blog appearance','blog_theme.php',254 'images/menu/themes.png','images/menu/blog-theme-b.png',255 'admin',null,null));256 257 $_fav['blogs'] = new ArrayObject(array('blogs','Blogs','blogs.php',258 'images/menu/blogs.png','images/menu/blogs-b.png',259 'usage,contentadmin',null,null));260 $_fav['users'] = new ArrayObject(array('users','Users','users.php',261 'images/menu/users.png','images/menu/users-b.png',262 null,null,null));263 $_fav['plugins'] = new ArrayObject(array('plugins','Plugins','plugins.php',264 'images/menu/plugins.png','images/menu/plugins-b.png',265 null,null,null));266 $_fav['langs'] = new ArrayObject(array('langs','Languages','langs.php',267 'images/menu/langs.png','images/menu/langs-b.png',268 null,null,null));269 208 270 209 # Menus creation 210 $_menu = new ArrayObject(); 271 211 $_menu['Dashboard'] = new dcMenu('dashboard-menu',null); 272 if (!$user_ui_nofavmenu) 273 $_menu['Favorites'] = new dcMenu('favorites-menu','My favorites'); 212 if (!$user_ui_nofavmenu) { 213 $core->favs->appendMenuTitle($_menu); 214 } 274 215 $_menu['Blog'] = new dcMenu('blog-menu','Blog'); 275 216 $_menu['System'] = new dcMenu('system-menu','System'); 276 217 $_menu['Plugins'] = new dcMenu('plugins-menu','Plugins'); 277 278 218 # Loading plugins 279 219 $core->plugins->loadModules(DC_PLUGINS_ROOT,'admin',$_lang); 280 281 # Loading favorites info from plugins 282 $core->callBehavior('adminDashboardFavs', $core, $_fav); 220 $core->favs->setup(); 221 222 if (!$user_ui_nofavmenu) { 223 $core->favs->appendMenu($_menu); 224 } 225 283 226 284 227 # Set menu titles … … 286 229 $_menu['System']->title = __('System settings'); 287 230 $_menu['Blog']->title = __('Blog'); 288 $_menu['Plugins']->title = __('Additional plugins'); 289 if (!$user_ui_nofavmenu) 290 $_menu['Favorites']->title = __('My favorites'); 291 292 /* 293 if (!preg_match('/index.php$/',$_SERVER['REQUEST_URI'])) { 294 # Admin index can't be add in fav's 295 $_menu['Dashboard']->prependItem(__('Add this page to my favorites'),'#','images/menu/add_to_favorites.png', 296 false,$core->auth->check('usage,contentadmin',$core->blog->id),'fav-add'); 297 } 298 */ 231 $_menu['Plugins']->title = __('Plugins'); 232 233 299 234 $_menu['Blog']->prependItem(__('Blog appearance'),'blog_theme.php','images/menu/themes.png', 300 235 preg_match('/blog_theme.php(\?.*)?$/',$_SERVER['REQUEST_URI']), … … 320 255 $_menu['Blog']->prependItem(__('New entry'),'post.php','images/menu/edit.png', 321 256 preg_match('/post.php$/',$_SERVER['REQUEST_URI']), 322 $core->auth->check('usage,contentadmin',$core->blog->id) ,'menu-new-post');323 324 $_menu['System']->prependItem(__('Update s'),'update.php','images/menu/update.png',257 $core->auth->check('usage,contentadmin',$core->blog->id)); 258 259 $_menu['System']->prependItem(__('Update'),'update.php','images/menu/update.png', 325 260 preg_match('/update.php(\?.*)?$/',$_SERVER['REQUEST_URI']), 326 261 $core->auth->isSuperAdmin() && is_readable(DC_DIGESTS)); … … 328 263 preg_match('/langs.php(\?.*)?$/',$_SERVER['REQUEST_URI']), 329 264 $core->auth->isSuperAdmin()); 330 $_menu['System']->prependItem(__('Plugins '),'plugins.php','images/menu/plugins.png',265 $_menu['System']->prependItem(__('Plugins management'),'plugins.php','images/menu/plugins.png', 331 266 preg_match('/plugins.php(\?.*)?$/',$_SERVER['REQUEST_URI']), 332 267 $core->auth->isSuperAdmin()); … … 337 272 preg_match('/blogs.php$/',$_SERVER['REQUEST_URI']), 338 273 $core->auth->isSuperAdmin() || 339 $core->auth->check('usage,contentadmin',$core->blog->id) && $core->auth->blog_count > 1); 340 341 if (!$user_ui_nofavmenu) { 342 // Set favorites menu 343 $ws = $core->auth->user_prefs->addWorkspace('favorites'); 344 $count = 0; 345 foreach ($ws->dumpPrefs() as $k => $v) { 346 // User favorites only 347 if (!$v['global']) { 348 $fav = unserialize($v['value']); 349 if (dc_valid_fav($fav['url'])) { 350 $count++; 351 $_menu['Favorites']->addItem(__($fav['title']),$fav['url'],$fav['small-icon'], 352 preg_match(dc_prepare_url($fav['url']),$_SERVER['REQUEST_URI']), 353 (($fav['permissions'] == '*') || $core->auth->check($fav['permissions'],$core->blog->id)),$fav['id'],$fav['class']); 354 } 355 } 356 } 357 if (!$count) { 358 // Global favorites if any 359 foreach ($ws->dumpPrefs() as $k => $v) { 360 $fav = unserialize($v['value']); 361 if (dc_valid_fav($fav['url'])) { 362 $count++; 363 $_menu['Favorites']->addItem(__($fav['title']),$fav['url'],$fav['small-icon'], 364 preg_match(dc_prepare_url($fav['url']),$_SERVER['REQUEST_URI']), 365 (($fav['permissions'] == '*') || $core->auth->check($fav['permissions'],$core->blog->id)),$fav['id'],$fav['class']); 366 } 367 } 368 } 369 if (!$count) { 370 // No user or global favorites, add "new entry" fav 371 $_menu['Favorites']->addItem(__('New entry'),'post.php','images/menu/edit.png', 372 preg_match('/post.php$/',$_SERVER['REQUEST_URI']), 373 $core->auth->check('usage,contentadmin',$core->blog->id),'menu-new-post',null); 374 } 274 $core->auth->check('usage,contentadmin',$core->blog->id) && $core->auth->getBlogCount() > 1); 275 276 if (empty($core->blog->settings->system->jquery_migrate_mute)) { 277 $core->blog->settings->system->put('jquery_migrate_mute', true, 'boolean', 'Mute warnings for jquery migrate plugin ?', false); 375 278 } 376 279 } -
inc/admin/prepend.php
r2277 r2313 4 4 # This file is part of Dotclear 2. 5 5 # 6 # Copyright (c) 2003-201 3Olivier Meunier & Association Dotclear6 # Copyright (c) 2003-2011 Olivier Meunier & Association Dotclear 7 7 # Licensed under the GPL version 2.0 license. 8 8 # See LICENSE file or … … 219 219 $core->plugins->loadModules(DC_PLUGINS_ROOT,'admin',$_lang); 220 220 $core->favs->setup(); 221 221 222 222 if (!$user_ui_nofavmenu) { 223 223 $core->favs->appendMenu($_menu); … … 273 273 $core->auth->isSuperAdmin() || 274 274 $core->auth->check('usage,contentadmin',$core->blog->id) && $core->auth->getBlogCount() > 1); 275 275 276 276 if (empty($core->blog->settings->system->jquery_migrate_mute)) { 277 277 $core->blog->settings->system->put('jquery_migrate_mute', true, 'boolean', 'Mute warnings for jquery migrate plugin ?', false); 278 278 } 279 279 } 280 281 # Add admin default templates path 282 $core->tpl->getLoader()->addPath(dirname(__FILE__).'/default-templates'); 283 # Set admin context 284 $_ctx = new dcAdminContext($core); 285 $core->tpl->addExtension($_ctx); 286 287 # --BEHAVIOR-- adminPrepend 288 $core->callBehavior('adminPrepend',$core,$_ctx); 280 289 ?>
Note: See TracChangeset
for help on using the changeset viewer.