diff options
Diffstat (limited to 'plugins/grum_plugins_classes-2/public_integration.class.inc.php')
-rwxr-xr-x | plugins/grum_plugins_classes-2/public_integration.class.inc.php | 202 |
1 files changed, 0 insertions, 202 deletions
diff --git a/plugins/grum_plugins_classes-2/public_integration.class.inc.php b/plugins/grum_plugins_classes-2/public_integration.class.inc.php deleted file mode 100755 index db61e51b3..000000000 --- a/plugins/grum_plugins_classes-2/public_integration.class.inc.php +++ /dev/null @@ -1,202 +0,0 @@ -<?php - -/* ----------------------------------------------------------------------------- - class name: public_integration - class version: 1.0 - date: 2007-10-31 - ------------------------------------------------------------------------------ - author: grum at grum.dnsalias.com - << May the Little SpaceFrog be with you >> - ------------------------------------------------------------------------------ - - this class provides base functions to manage an integration into main index - page - the class use plugin MenuBarManager function if installed - - - constructor public_integration($section) - - (public) function init_events() - - (public) function set_callback_page_function($value) - - (public) function set_callback_init_menu_function($value) - - (public) function set_menu_tpl($tpl_code) - - (public) function set_menu_list($list) - - (public) function set_menu_title($title) - - (public) function set_lnk_admin_add($text, $link) - - (public) function set_lnk_admin_edit($text, $link) - - (private) function update_menubar() - - (private) function init_section() - - (private) function call_page() - - use init_events() function to initialize needed triggers for updating menubar - use set_menu_tpl() function to initialize the template of menu - use set_menu_title() function to initialize the title of menu - use set_menu_list() function to initialize the elements of menu (see function for use) - use set_lnk_admin_add() and set_lnk_admin_edit() functions for displaying specific admin links - - the "callback_page_function" is called everytime a specific page is displayed - the "callback_init_menu_function" is called everytime the menu is made (allows - for example to prepare menu's title and list using user's language) - ------------------------------------------------------------------------------ */ - -class public_integration -{ - var $menu_tpl; //template definition for the menu - var $menu_list; //an array of arrays array(array('text' => '', 'id' => '', 'link' => ''), array... ) - var $menu_title; //menu's title - var $lnk_admin_add; //if set array('text'=>'', 'link'=>''), add a link "add" to the menu - var $lnk_admin_edit; //if set array('text'=>'', 'link'=>''), add a link "edit" to the menu's elements - var $section; //section applied to the page viewed - var $callback_page_function; //called function to display page - var $callback_init_menu_function; //called function to initialize menu - - function public_integration($section) - { - $this->menu_tpl=""; - $this->menu_list=array(); - $this->menu_title=""; - $this->lnk_admin_add=array(); - $this->lnk_admin_edit=array(); - $this->section=$section; - $this->callback_page_function=''; - $this->callback_init_menu_function=''; - } - - //initialize events to manage menu & page integration - function init_events() - { - add_event_handler('loc_begin_menubar', array(&$this, 'init_smarty')); - add_event_handler('loc_end_menubar', array(&$this, 'update_menubar')); - add_event_handler('loc_end_section_init', array(&$this, 'init_section')); - add_event_handler('loc_end_index', array(&$this, 'call_page')); - } - - function set_callback_page_function($value) - { - $this->callback_page_function=$value; - } - - function set_callback_init_menu_function($value) - { - $this->callback_init_menu_function=$value; - } - - // set template definition for menu - function set_menu_tpl($tpl_code) - { - $this->menu_tpl = $tpl_code; - } - - //set menu list - function set_menu_list($list) - { - $this->menu_list = $list; - } - - //set menu title - function set_menu_title($title) - { - $this->menu_title = $title; - } - - //set 'add' link to menu - function set_lnk_admin_add($text, $link) - { - $this->lnk_admin_add = array('text' => $text, 'link' => $link); - } - - //set 'edit' link to menu - function set_lnk_admin_edit($text, $link) - { - $this->lnk_admin_edit = array('text' => $text, 'link' => $link); - } - - function init_smarty() - { - global $template; - - $template->smarty->register_prefilter(array(&$this, 'modify_tpl')); - } - - function modify_tpl($tpl_source, &$smarty) - { - return(str_replace('<div id="menubar">', '<div id="menubar">(test3)'.$this->menu_tpl, $tpl_source)); - } - - /* - Update PWG menubar - - add a MyPolls block - - add a MyPolls menu inside - */ - function update_menubar() - { - global $template; - - @call_user_func($this->callback_init_menu_function); - - //echo "update_menubar****".$this->menu_tpl."****".$this->menu_title."****".count($this->menu_list)."****"; - //do not do nothing because nothing to do - if((($this->menu_tpl=="") || - (count($this->menu_list)==0) || - ($this->menu_title=="") - ) and !is_admin()) - { - return(false); - } - - $template_datas=array(); - $template_datas['links']=array(); - $template_datas['TITLE']='toto'.$this->menu_title; - - if(is_admin() && (count($this->lnk_admin_add)>0)) - { - $template_datas['links'][]=array( - 'LABEL' => "<i>".$this->lnk_admin_add['text']."</i>", - 'URL' => $this->lnk_admin_add['link'] - ); - } - - foreach($this->menu_list as $key => $val) - { - if(is_admin() && (count($this->lnk_admin_edit)>0)) - { $lnk_edit = "</a> --- <a href='".$this->lnk_admin_edit['link']. - $val['id']."'>[".$this->lnk_admin_edit['text']."]"; } - else - { $lnk_edit = ''; } - - $template_datas['links'][]=array( - 'LABEL' => $val['text'].$lnk_edit, - 'URL' => $val['link'] - ); - } - - $template->assign("datas", $template_datas); - } - - /* - init section - */ - function init_section() - { - global $tokens, $page; - - if ($tokens[0] == $this->section) - { $page['section'] = $this->section; } - } - - /* - loads a page - */ - function call_page() - { - global $page, $user; - - if($page['section'] == $this->section) - { - @call_user_func($this->callback_page_function); - } - } - -} //class public_integration - - -?>
\ No newline at end of file |