aboutsummaryrefslogtreecommitdiffstats
path: root/plugins/AMenuManager/amm_pip.class.inc.php
diff options
context:
space:
mode:
authorgrum <grum@piwigo.org>2008-08-03 07:48:39 +0000
committergrum <grum@piwigo.org>2008-08-03 07:48:39 +0000
commit7ebed797262c7f3371ae1b16ed455f7e9879caf0 (patch)
tree7abef8d2994ae2efa66f38e3027369c7ac0e3926 /plugins/AMenuManager/amm_pip.class.inc.php
parentee0af5d43d607ffb969a10e6a21e9df923651d52 (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.php92
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
+
+
+?>