diff options
author | grum <grum@piwigo.org> | 2008-08-03 07:48:39 +0000 |
---|---|---|
committer | grum <grum@piwigo.org> | 2008-08-03 07:48:39 +0000 |
commit | 7ebed797262c7f3371ae1b16ed455f7e9879caf0 (patch) | |
tree | 7abef8d2994ae2efa66f38e3027369c7ac0e3926 /plugins/AMenuManager/amm_pip.class.inc.php | |
parent | ee0af5d43d607ffb969a10e6a21e9df923651d52 (diff) |
Asked by rvelices on this topic
http://forum.phpwebgallery.net/viewtopic.php?pid=92097#p92097
A plugin to integrate the menu class
see test_menu directory
A plugin to show how to use the menu class
see AMenuManager directory
And common classes needed for the AMenuManager plugin
see grum_plugins_classes-2 directory
See topic http://forum.phpwebgallery.net/viewtopic.php?pid=92637#p92637 for more
informations
git-svn-id: http://piwigo.org/svn/trunk@2466 68402e56-0260-453c-a942-63ccdbb3a9ee
Diffstat (limited to 'plugins/AMenuManager/amm_pip.class.inc.php')
-rw-r--r-- | plugins/AMenuManager/amm_pip.class.inc.php | 92 |
1 files changed, 92 insertions, 0 deletions
diff --git a/plugins/AMenuManager/amm_pip.class.inc.php b/plugins/AMenuManager/amm_pip.class.inc.php new file mode 100644 index 000000000..57ba0db78 --- /dev/null +++ b/plugins/AMenuManager/amm_pip.class.inc.php @@ -0,0 +1,92 @@ +<?php +/* ----------------------------------------------------------------------------- + Plugin : Advanced Menu Manager + Author : Grum + email : grum@grum.dnsalias.com + website : http://photos.grum.dnsalias.com + PWG user : http://forum.phpwebgallery.net/profile.php?id=3706 + + << May the Little SpaceFrog be with you ! >> + ------------------------------------------------------------------------------ + See main.inc.php for release information + + PIP classe => manage integration in public interface + + --------------------------------------------------------------------------- */ +if (!defined('PHPWG_ROOT_PATH')) { die('Hacking attempt!'); } + +include_once(PHPWG_PLUGINS_PATH.'AMenuManager/amm_root.class.inc.php'); + +class AMM_PIP extends AMM_root +{ + function AMM_PIP($prefixeTable, $filelocation) + { + parent::__construct($prefixeTable, $filelocation); + + $this->load_config(); + $this->init_events(); + } + + + /* --------------------------------------------------------------------------- + Public classe functions + --------------------------------------------------------------------------- */ + + + /* + initialize events call for the plugin + */ + public function init_events() + { + add_event_handler('loc_begin_menubar', array(&$this, 'modify_menu') ); + } + + /* --------------------------------------------------------------------------- + protected classe functions + --------------------------------------------------------------------------- */ + public function modify_menu() + { + global $menu, $user; + + + + /* + Add a new section (links) + */ + $urls=$this->get_urls(true); + if(($this->my_config['amm_links_active']=='y')and(count($urls)>0)) + { + if($this->my_config['amm_links_show_icons']=='y') + { + for($i=0;$i<count($urls);$i++) + { + $urls[$i]['icon']=AMM_PATH."links_pictures/".$urls[$i]['icon']; + } + } + + $section = new Section('mbAMM_links', base64_decode($this->my_config['amm_links_title'][$user['language']]), dirname(__FILE__).'/menu_templates/menubar_links.tpl'); + $section->set_items(array( + 'LINKS' => $urls, + 'icons' => 'y' + )); + $menu->add($section->get()); + } + + /* + Hide sections + */ + foreach($this->my_config['amm_sections_visible'] as $key => $val) + { + if($val=='n') + { + $menu->remove($key); + } + } + + } + + +} // AMM_PIP class + + +?> |