diff options
Diffstat (limited to 'plugins/AMenuManager/amm_aip.class.inc.php')
-rwxr-xr-x | plugins/AMenuManager/amm_aip.class.inc.php | 1094 |
1 files changed, 0 insertions, 1094 deletions
diff --git a/plugins/AMenuManager/amm_aip.class.inc.php b/plugins/AMenuManager/amm_aip.class.inc.php deleted file mode 100755 index 5481fd030..000000000 --- a/plugins/AMenuManager/amm_aip.class.inc.php +++ /dev/null @@ -1,1094 +0,0 @@ -<?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 - - AIP classe => manage integration in administration interface - - --------------------------------------------------------------------------- */ -if (!defined('PHPWG_ROOT_PATH')) { die('Hacking attempt!'); } - -include_once(PHPWG_PLUGINS_PATH.'AMenuManager/amm_root.class.inc.php'); -include_once(PHPWG_ROOT_PATH.'admin/include/tabsheet.class.php'); -include_once(PHPWG_PLUGINS_PATH.'grum_plugins_classes-2/css.class.inc.php'); -include_once(PHPWG_PLUGINS_PATH.'grum_plugins_classes-2/ajax.class.inc.php'); -include_once(PHPWG_PLUGINS_PATH.'grum_plugins_classes-2/genericjs.class.inc.php'); -include_once(PHPWG_PLUGINS_PATH.'grum_plugins_classes-2/translate.class.inc.php'); - -class AMM_AIP extends AMM_root -{ - protected $google_translate; - protected $tabsheet; - protected $css; //the css object - protected $ajax; - - protected $urls_modes=array(0 => 'new_window', 1 => 'current_window'); - - function AMM_AIP($prefixeTable, $filelocation) - { - parent::__construct($prefixeTable, $filelocation); - - $this->load_config(); - $this->init_events(); - - $this->tabsheet = new tabsheet(); - $this->tabsheet->add('setmenu', - l10n('g002_setmenu'), - $this->page_link.'&fAMM_tabsheet=setmenu'); - $this->tabsheet->add('links', - l10n('g002_addlinks'), - $this->page_link.'&fAMM_tabsheet=links'); - $this->tabsheet->add('randompict', - l10n('g002_randompict'), - $this->page_link.'&fAMM_tabsheet=randompict'); - $this->tabsheet->add('personnalblock', - l10n('g002_personnalblock'), - $this->page_link.'&fAMM_tabsheet=personnalblock'); - $this->css = new css(dirname($this->filelocation).'/'.$this->plugin_name_files.".css"); - $this->ajax = new Ajax(); - $this->google_translate = new translate(); - } - - - /* --------------------------------------------------------------------------- - Public classe functions - --------------------------------------------------------------------------- */ - - /* - manage plugin integration into piwigo's admin interface - */ - public function manage() - { - global $template; - - - $template->set_filename('plugin_admin_content', dirname(__FILE__)."/admin/amm_admin.tpl"); - - $this->return_ajax_content(); - - $this->init_request(); - - $this->tabsheet->select($_REQUEST['fAMM_tabsheet']); - $this->tabsheet->assign(); - $selected_tab=$this->tabsheet->get_selected(); - $template->assign($this->tabsheet->get_titlename(), "[".$selected_tab['caption']."]"); - - $template_plugin["AMM_VERSION"] = "<i>".$this->plugin_name."</i> ".l10n('g002_version').AMM_VERSION; - $template_plugin["AMM_PAGE"] = $_REQUEST['fAMM_tabsheet']; - $template_plugin["PATH"] = AMM_PATH; - - $template->assign('plugin', $template_plugin); - - - if(isset($_POST['famm_modeedit'])) - { - $post_action=$_POST['famm_modeedit']; - } - else - { - $post_action=""; - } - - $page_nfo=""; - if($_REQUEST['fAMM_tabsheet']=='links') - { - $page_nfo=l10n('g002_addlinks_nfo'); - - switch($_REQUEST['action']) - { - case 'list': - $this->display_links_list_page(); - break; - case 'create': - case 'modify': - if($post_action==$_REQUEST['action']) - { - if(!$this->adviser_abort()) - { - $this->action_create_modify_url(); - } - $this->display_links_list_page(); - } - else - { - ($_REQUEST['action']=='modify')?$urlid=$_REQUEST['fItem']:$urlid=0; - $this->display_links_manage_page($_REQUEST['action'], $urlid); - } - break; - case 'config': - if($post_action==$_REQUEST['action']) - { - if(!$this->adviser_abort()) - { - $this->action_links_modify_config(); - } - } - $this->display_links_config_page(); - break; - } - } - elseif($_REQUEST['fAMM_tabsheet']=='randompict') - { - $page_nfo=l10n('g002_randompict_nfo'); - if($post_action=='config') - { - if(!$this->adviser_abort()) - { - $this->action_randompic_modify_config(); - } - } - $this->display_randompic_config_page(); - } - elseif($_REQUEST['fAMM_tabsheet']=='personnalblock') - { - $page_nfo=l10n('g002_personnalblock_nfo'); - - switch($_REQUEST['action']) - { - case 'list': - $this->display_personalised_list_page(); - break; - case 'create': - case 'modify': - if($post_action==$_REQUEST['action']) - { - if(!$this->adviser_abort()) - { - $this->action_create_modify_personalised(); - } - $this->display_personalised_list_page(); - } - else - { - ($_REQUEST['action']=='modify')?$sectionid=$_REQUEST['fItem']:$sectionid=0; - $this->display_personalised_manage_page($_REQUEST['action'], $sectionid); - } - break; - } - } - elseif($_REQUEST['fAMM_tabsheet']=='setmenu') - { - $page_nfo=l10n('g002_setmenu_nfo'); - $this->display_sections_list_page($_REQUEST['action']); - } - - $template->assign('page_nfo', $page_nfo); - - $template->assign_var_from_handle('ADMIN_CONTENT', 'plugin_admin_content'); - } - - /* - initialize events call for the plugin - */ - public function init_events() - { - add_event_handler('loc_end_page_header', array(&$this->css, 'apply_CSS')); - } - - /* --------------------------------------------------------------------------- - Private classe functions - --------------------------------------------------------------------------- */ - - /* - return ajax content - */ - protected function return_ajax_content() - { - global $ajax, $template; - - if(isset($_REQUEST['ajaxfct'])) - { - //$this->debug("AJAXFCT:".$_REQUEST['ajaxfct']); - $result="<p class='errors'>".l10n('g002_error_invalid_ajax_call')."</p>"; - switch($_REQUEST['ajaxfct']) - { - case 'links_list': - $result=$this->ajax_amm_links_list(); - break; - case 'links_permut': - $result=$this->ajax_amm_links_permut($_REQUEST['fItem'], $_REQUEST['fPermut']); - break; - case 'links_delete': - $result=$this->ajax_amm_links_delete($_REQUEST['fItem']); - break; - case 'setmenu_list_sections_list': - $result=$this->ajax_amm_setmenu_list_section_list(); - break; - case 'setmenu_list_sections_position': - $result=$this->ajax_amm_setmenu_list_section_position($_REQUEST['fItem'], $_REQUEST['fPosition']); - break; - case 'setmenu_list_sections_showhide': - $result=$this->ajax_amm_setmenu_list_section_showhide($_REQUEST['fItem']); - break; - - case 'setmenu_modmenu_sections_list': - $result=$this->ajax_amm_setmenu_mod_section_list('amm_sections_modmenu'); - break; - case 'setmenu_modmenu_sections_showhide': - $result=$this->ajax_amm_setmenu_mod_section_showhide('amm_sections_modmenu', $_REQUEST['fItem']); - break; - - case 'setmenu_modspecial_sections_list': - $result=$this->ajax_amm_setmenu_mod_section_list('amm_sections_modspecials'); - break; - case 'setmenu_modspecial_sections_showhide': - $result=$this->ajax_amm_setmenu_mod_section_showhide('amm_sections_modspecials', $_REQUEST['fItem']); - break; - - case 'personalised_list': - $result=$this->ajax_amm_personalised_list(); - break; - case 'personalised_delete': - $result=$this->ajax_amm_personalised_delete($_REQUEST['fItem']); - break; - } - //$template-> - $this->ajax->return_result($result); - } - } - - /* - if empty, initialize $_request - */ - private function init_request() - { - //initialise $REQUEST values if not defined - if(!array_key_exists('fAMM_tabsheet', $_REQUEST)) - { - $_REQUEST['fAMM_tabsheet']='setmenu'; - } - - if((($_REQUEST['fAMM_tabsheet']=='links') or - ($_REQUEST['fAMM_tabsheet']=='personnalblock') or - ($_REQUEST['fAMM_tabsheet']=='setmenu')) and !isset($_REQUEST['action'])) - { - $_REQUEST['action']='list'; - } - - - } //init_request - - - /* - manage display for urls table page - */ - private function display_links_list_page() - { - global $template, $user; - $template->set_filename('body_page', - dirname($this->filelocation).'/admin/amm_linkslist.tpl'); - - $tmp=$this->get_count_url(); - if($tmp==0) - { - $tmp=l10n("g002_nolinks"); - } - elseif($tmp==1) - { - $tmp="1 ".l10n("g002_link"); - } - else - { - $tmp=$tmp." ".l10n("g002_links"); - } - - - $template_datas=array( - 'lnk_create' => $this->page_link.'&fAMM_tabsheet=links&action=create', - 'lnk_config' => $this->page_link.'&fAMM_tabsheet=links&action=config', - 'AMM_AJAX_URL_LIST' => $this->page_link."&ajaxfct=", - 'nburl' => $tmp - ); - - $template->assign("datas", $template_datas); - $template->assign_var_from_handle('AMM_BODY_PAGE', 'body_page'); - } - - /* - manage display for urls config page - */ - private function display_links_config_page() - { - global $template, $user; - $template->set_filename('body_page', - dirname($this->filelocation).'/admin/amm_linksconfig.tpl'); - - $template_datas=array( - 'lnk_list' => $this->page_link.'&fAMM_tabsheet=links', - 'AMM_AJAX_URL_LIST' => $this->page_link."&ajaxfct=", - 'show_icons_selected' => $this->my_config['amm_links_show_icons'], - 'lang_selected' => $user['language'], - 'fromlang' => substr($user['language'],0,2) - ); - - $template_datas['language_list'] = array(); - foreach($this->my_config['amm_links_title'] as $key => $val) - { - $template_datas['language_list'][] = array( - 'LANG' => $key, - 'MENUBARTIT' => base64_decode($val) - ); - } - - - - $lang=get_languages(); - foreach($lang as $key => $val) - { - $template_datas['language_list_values'][] = $key; - $template_datas['language_list_labels'][] = $val; - } - - - $template_datas['yesno_values'] = array('y','n'); - $template_datas['yesno_labels'][] = l10n('g002_yesno_y'); - $template_datas['yesno_labels'][] = l10n('g002_yesno_n'); - - - $template->assign("datas", $template_datas); - $template->assign_var_from_handle('AMM_BODY_PAGE', 'body_page'); - } - - /* - manage display for urls create/modify page - */ - private function display_links_manage_page($modeedit = 'create', $urlid=0) - { - global $template, $user; - $template->set_filename('body_page', - dirname($this->filelocation).'/admin/amm_linkslist_edit.tpl'); - - $extensions_list=array('jpg'=>0,'jpeg'=>0,'gif'=>0,'png'=>0); - $template_icons_list=array(); - $directory=dir(dirname($this->filelocation).'/links_pictures/'); - while($file=$directory->read()) - { - if(isset($extensions_list[get_extension(strtolower($file))])) - { - $template_icons_list[]=$file; - } - } - - - if($modeedit=='modify') - { - $url=$this->get_url($urlid); - - $template_datas=array( - 'id' => $urlid, - 'modeedit' => 'modify', - 'label' => htmlentities($url['label'], ENT_QUOTES, 'UTF-8'), - 'url' => $url['url'], - 'icons_selected' => $url['icon'], - 'mode_selected' => $url['mode'], - 'visible_selected' => $url['visible'] - ); - } - else - { - $template_datas=array( - 'id' => '', - 'modeedit' => 'create', - 'label' => '', - 'url' => '', - 'icons_selected' => $template_icons_list[0], - 'mode_selected' => 0, - 'visible_selected' => 'y' - ); - } - - $template_datas['lnk_list'] = $this->page_link.'&fAMM_tabsheet=links'; - $template_datas['icons_img'] = AMM_PATH."links_pictures/".$template_datas['icons_selected']; - $template_datas['icons_values'] = array(); - foreach($template_icons_list as $key => $val) - { - $template_datas['icons_values'][] = array( - 'img' => AMM_PATH."links_pictures/".$val, - 'value' => $val, - 'label' => $val - ); - } - $template_datas['mode_values'] = array(0,1); - $template_datas['mode_labels'][] = l10n("g002_mode_".$this->urls_modes[0]); - $template_datas['mode_labels'][] = l10n("g002_mode_".$this->urls_modes[1]); - $template_datas['visible_values'] = array('y','n'); - $template_datas['visible_labels'][] = l10n('g002_yesno_y'); - $template_datas['visible_labels'][] = l10n('g002_yesno_n'); - - $template->assign("datas", $template_datas); - $template->assign_var_from_handle('AMM_BODY_PAGE', 'body_page'); - } - - /* - manage create/modify url into database and display result - */ - protected function action_create_modify_url() - { - $datas=array( - 'id' => $_POST['famm_id'], - 'label' => $_POST['famm_label'], - 'url' => $_POST['famm_url'], - 'mode' => $_POST['famm_mode'], - 'icon' => $_POST['famm_icon'], - 'position' => 0, - 'visible' => $_POST['famm_visible'] - ); - - switch($_POST['famm_modeedit']) - { - case 'create': - $this->add_url($datas); - break; - case 'modify': - $this->modify_url($datas); - } - } - - /* - manage urls config save into database - */ - protected function action_links_modify_config() - { - $this->my_config['amm_links_show_icons']=$_POST['famm_links_show_icons']; - $languages=get_languages(); - foreach($languages as $key => $val) - { - $this->my_config['amm_links_title'][$key]=base64_encode($_POST['famm_links_title_'.$key]); - } - $this->save_config(); - } - - /* - manage randompic config save into database - */ - protected function action_randompic_modify_config() - { - $this->my_config['amm_randompicture_showname']=$_POST['famm_randompicture_showname']; - $this->my_config['amm_randompicture_showcomment']=$_POST['famm_randompicture_showcomment']; - $languages=get_languages(); - foreach($languages as $key => $val) - { - $this->my_config['amm_randompicture_title'][$key]=base64_encode(stripslashes($_POST['famm_randompicture_title_'.$key])); - } - $this->save_config(); - } - - - - /* - manage display for sections table page - */ - private function display_sections_list_page($action) - { - global $template, $user; - $template->set_filename('body_page', - dirname($this->filelocation).'/admin/amm_sections.tpl'); - - switch($action) - { - case 'list': - $tmp_list=array( - array('separator' => '', 'link' => '', 'label' => 'g002_sectionslist'), - array('separator' => ' / ', 'link' => $this->page_link.'&fAMM_tabsheet=setmenu&action=modmenu', 'label' => 'g002_modmenu'), - array('separator' => ' / ', 'link' => $this->page_link.'&fAMM_tabsheet=setmenu&action=modspecial', 'label' => 'g002_modspecial') - ); - break; - case 'modmenu': - $tmp_list=array( - array('separator' => '', 'link' => $this->page_link.'&fAMM_tabsheet=setmenu&action=list', 'label' => 'g002_sectionslist'), - array('separator' => ' / ', 'link' => '', 'label' => 'g002_modmenu'), - array('separator' => ' / ', 'link' => $this->page_link.'&fAMM_tabsheet=setmenu&action=modspecial', 'label' => 'g002_modspecial') - ); - break; - case 'modspecial': - $tmp_list=array( - array('separator' => '', 'link' => $this->page_link.'&fAMM_tabsheet=setmenu&action=list', 'label' => 'g002_sectionslist'), - array('separator' => ' / ', 'link' => $this->page_link.'&fAMM_tabsheet=setmenu&action=modmenu', 'label' => 'g002_modmenu'), - array('separator' => ' / ', 'link' => '', 'label' => 'g002_modspecial') - ); - break; - } - - $template_datas=array( - 'AMM_AJAX_URL_LIST' => $this->page_link."&ajaxfct=setmenu_".$action."_", - 'LIST' => $tmp_list - ); - - $template->assign("datas", $template_datas); - $template->assign_var_from_handle('AMM_BODY_PAGE', 'body_page'); - } - - - /* - manage display for randompic config page - */ - private function display_randompic_config_page() - { - global $template, $user; - $template->set_filename('body_page', - dirname($this->filelocation).'/admin/amm_randompicconfig.tpl'); - - $template_datas=array( - 'lnk_list' => $this->page_link.'&fAMM_tabsheet=links', - 'showname_selected' => $this->my_config['amm_randompicture_showname'], - 'showcomment_selected' => $this->my_config['amm_randompicture_showcomment'], - 'lang_selected' => $user['language'], - 'fromlang' => substr($user['language'],0,2) - ); - - $template_datas['language_list'] = array(); - foreach($this->my_config['amm_randompicture_title'] as $key => $val) - { - $template_datas['language_list'][] = array( - 'LANG' => $key, - 'MENUBARTIT' => htmlentities(base64_decode($val), ENT_QUOTES, 'UTF-8') - ); - } - - - - $lang=get_languages(); - foreach($lang as $key => $val) - { - $template_datas['language_list_values'][] = $key; - $template_datas['language_list_labels'][] = $val; - } - - - $template_datas['yesno_values'] = array('y','n'); - $template_datas['yesno_labels'][] = l10n('g002_yesno_y'); - $template_datas['yesno_labels'][] = l10n('g002_yesno_n'); - - $template_datas['show_values'] = array('n', 'o', 'u'); - $template_datas['show_labels'][] = l10n('g002_show_n'); - $template_datas['show_labels'][] = l10n('g002_show_o'); - $template_datas['show_labels'][] = l10n('g002_show_u'); - - - $template->assign("datas", $template_datas); - $template->assign_var_from_handle('AMM_BODY_PAGE', 'body_page'); - } - - - - - - - - /* - manage display for personalised sections list page - */ - private function display_personalised_list_page() - { - global $template, $user; - $template->set_filename('body_page', - dirname($this->filelocation).'/admin/amm_personalisedlist.tpl'); - - $sql="SELECT COUNT(DISTINCT ID) as countid FROM ".$this->tables['personalised']; - $result=pwg_query($sql); - if($result) - { - $tmp=mysql_fetch_row($result); - $tmp=$tmp[0]; - } - else - { - $tmp=0; - } - - if($tmp==0) - { - $tmp=l10n("g002_nosections"); - } - elseif($tmp==1) - { - $tmp="1 ".l10n("g002_section"); - } - else - { - $tmp=$tmp." ".l10n("g002_sections"); - } - - - $template_datas=array( - 'lnk_create' => $this->page_link.'&fAMM_tabsheet=personnalblock&action=create', - 'AMM_AJAX_URL_LIST' => $this->page_link."&ajaxfct=", - 'nbsections' => $tmp - ); - - $template->assign("datas", $template_datas); - $template->assign_var_from_handle('AMM_BODY_PAGE', 'body_page'); - } - - - - /* - manage display for personalised sections create/modify page - */ - private function display_personalised_manage_page($modeedit = 'create', $sectionid=0) - { - global $template, $user; - $template->set_filename('body_page', - dirname($this->filelocation).'/admin/amm_personalisedlist_edit.tpl'); - - $template_datas=array(); - - $lang=get_languages(); - $lang['all']=l10n('g002_all_languages'); - foreach($lang as $key => $val) - { - $template_datas['language_list_values'][] = $key; - $template_datas['language_list_labels'][] = $val; - $template_datas['language_list'][$key]=array( - 'LANG' => $key, - 'MENUBARTIT' => '', - 'MENUBARCONTENT' => '' - ); - } - - - if($modeedit=='modify') - { - $sections=$this->get_personalised($sectionid); - - $template_datas['id'] = $sectionid; - $template_datas['modeedit'] = 'modify'; - $template_datas['visible_selected'] = $sections[0]['visible']; - $template_datas['nfo'] = htmlentities($sections[0]['nfo'], ENT_QUOTES, 'UTF-8'); - - foreach($sections as $key => $val) - { - $lang=($val['lang']=='*')?'all':$val['lang']; - $template_datas['language_list'][$lang] = array( - 'LANG' => $lang, - 'MENUBARTIT' => htmlentities($val['title'], ENT_QUOTES, 'UTF-8'), - 'MENUBARCONTENT' => htmlentities($val['content'], ENT_QUOTES, 'UTF-8'), - ); - } - } - else - { - $template_datas['nfo'] = ''; - $template_datas['id'] = ''; - $template_datas['modeedit'] = 'create'; - $template_datas['visible_selected'] = 'y'; - } - - $template_datas['lang_selected'] = $user['language']; - - $template_datas['personalised_list'] = $this->page_link.'&fAMM_tabsheet=personnalblock'; - $template_datas['yesno_values'] = array('y','n'); - $template_datas['yesno_labels'][] = l10n('g002_yesno_y'); - $template_datas['yesno_labels'][] = l10n('g002_yesno_n'); - - $template->assign("datas", $template_datas); - $template->assign_var_from_handle('AMM_BODY_PAGE', 'body_page'); - } - - /* - manage create/modify pesonalised sections into database and display result - */ - protected function action_create_modify_personalised() - { - global $user; - - if($_POST['famm_modeedit']=='create') - { - $id=$this->get_personalised_id(); - } - else - { - $id=$_POST['famm_id']; - } - $languages=get_languages(); - $languages['all']='*'; - foreach($languages as $key => $val) - { - $datas=array( - 'id' => $id, - 'lang' => ($key=='all')?'*':$key, - 'visible' => $_POST['famm_personalised_visible'], - 'nfo' => ($_POST['famm_personalised_nfo']=='')?$_POST['famm_personalised_title_'.$user['language']]:$_POST['famm_personalised_nfo'], - 'title' => $_POST['famm_personalised_title_'.$key], - 'content' => $_POST['famm_personalised_content_'.$key] - ); - switch($_POST['famm_modeedit']) - { - case 'create': - $this->add_personalised($datas); - break; - case 'modify': - $this->modify_personalised($datas); - } - } - } - - - - - - /* - manage adviser profile - return true if user is adviser - */ - protected function adviser_abort() - { - if(is_adviser()) - { - $this->display_result(l10n("g002_adviser_not_allowed"), false); - return(true); - } - return(false); - } - - /* --------------------------------------------------------------------------- - functions to manage urls tables - --------------------------------------------------------------------------- */ - // protected function get_urls() - // protected function get_count_url() - // => defined in root class - - // return properties of an given url - private function get_url($url_id) - { - $returned=array(); - $sql="SELECT * FROM ".$this->tables['urls']." WHERE id = '".$url_id."'"; - $result=pwg_query($sql); - if($result) - { - $returned=mysql_fetch_array($result); - //$returned['label']=stripslashes($returned['label']); - } - return($returned); - } - - // permut position of two 2 urls - private function permut_url($url_id, $url_permut) - { - $sql="SELECT id, position FROM ".$this->tables['urls']." WHERE id IN ('".$url_id."','".$url_permut."')"; - $result=pwg_query($sql); - if($result) - { - $tmp=array(); - while($row=mysql_fetch_array($result)) - { - $tmp[$row['id']]=$row['position']; - } - $sql="UPDATE ".$this->tables['urls']." SET position = ".$tmp[$url_id]." WHERE id = '".$url_permut."'"; - pwg_query($sql); - $sql="UPDATE ".$this->tables['urls']." SET position = ".$tmp[$url_permut]." WHERE id = '".$url_id."'"; - pwg_query($sql); - } - } - - // delete an url - private function delete_url($url_id) - { - $sql="DELETE FROM ".$this->tables['urls']." WHERE id = '".$url_id."' "; - return(pwg_query($sql)); - } - - // add an url - private function add_url($datas) - { - $numurl=$this->get_count_url(); - $sql="INSERT INTO ".$this->tables['urls']." (label, url, mode, icon, position, visible) - VALUES ('".$datas['label']."', '".$datas['url']."', '".$datas['mode']."', - '".$datas['icon']."', '".$numurl."', '".$datas['visible']."')"; - return(pwg_query($sql)); - } - - // modify an url - private function modify_url($datas) - { - $sql="UPDATE ".$this->tables['urls']." SET label = '".$datas['label']."', - url = '".$datas['url']."', mode = '".$datas['mode']."', icon = '".$datas['icon']."', - visible = '".$datas['visible']."' - WHERE id = '".$datas['id']."'"; - return(pwg_query($sql)); - } - - // just modify url visibility - private function set_url_visibility($urlid, $visible) - { - $sql="UPDATE ".$this->tables['urls']." SET visible = '".$visible."' - WHERE id = '".$urlid."'"; - return(pwg_query($sql)); - } - - /* --------------------------------------------------------------------------- - functions to manage sections tables - --------------------------------------------------------------------------- */ - // protected function get_sections($only_visible=false, $lang="") - // => defined in root class - - // return properties of a given section (return each languages) - private function get_personalised($section_id) - { - $returned=array(); - $sql="SELECT * FROM ".$this->tables['personalised']." WHERE id = '".$section_id."'"; - $result=pwg_query($sql); - if($result) - { - while($returned[]=mysql_fetch_array($result)); - } - return($returned); - } - - // delete a section - private function delete_personalised($section_id) - { - $sql="DELETE FROM ".$this->tables['personalised']." WHERE id = '".$section_id."' "; - return(pwg_query($sql)); - } - - // add a section - private function add_personalised($datas) - { - $sql="INSERT INTO ".$this->tables['personalised']." (id, lang, title, content, visible, nfo) - VALUES ('".$datas['id']."', '".$datas['lang']."', '".$datas['title']."', '".$datas['content']."', '".$datas['visible']."', '".$datas['nfo']."')"; - return(pwg_query($sql)); - } - - // modify a section - private function modify_personalised($datas) - { - $sql="UPDATE ".$this->tables['personalised']." SET title = '".$datas['title']."', - content = '".$datas['content']."', visible = '".$datas['visible']."', - nfo = '".$datas['nfo']."' - WHERE id = '".$datas['id']."' - AND lang = '".$datas['lang']."'"; - return(pwg_query($sql)); - } - - // return the next personalised id - private function get_personalised_id() - { - $sql='SELECT MAX(ID) FROM '.$this->tables['personalised']; - $result=pwg_query($sql); - if($result) - { - $row=mysql_fetch_row($result); - if(is_array($row)) - { - return($row[0]+1); - } - } - return(0); - } - - - /* --------------------------------------------------------------------------- - ajax functions - --------------------------------------------------------------------------- */ - - // return a html formatted list of urls - private function ajax_amm_links_list() - { - global $template, $user; - $local_tpl = new Template(AMM_PATH."admin/", ""); - $local_tpl->set_filename('body_page', - dirname($this->filelocation).'/admin/amm_linkslist_detail.tpl'); - - $template_datas['urls']=array(); - $urls=$this->get_urls(); - for($i=0;$i<count($urls);$i++) - { - $template_datas['urls'][]=array( - 'img' => AMM_PATH."links_pictures/".$urls[$i]['icon'], - 'label' => $urls[$i]['label'], - 'url' => $urls[$i]['url'], - 'mode' => l10n("g002_mode_".$this->urls_modes[$urls[$i]['mode']]), - 'up' => ($i==0)?false:true, - 'down' => ($i<(count($urls)-1))?true:false, - 'edit' => $this->page_link.'&fAMM_tabsheet=links&action=modify&fItem='.$urls[$i]['id'], - 'ID' => $urls[$i]['id'], - 'IDPREV' => ($i==0)?0:$urls[$i-1]['id'], - 'IDNEXT' => ($i<(count($urls)-1))?$urls[$i+1]['id']:0, - 'visible' => l10n('g002_yesno_'.$urls[$i]['visible']) - ); - } - - $themeconf=array( - 'icon_dir' => $template->get_themeconf('icon_dir') - ); - - $local_tpl->assign('themeconf', $themeconf); - $local_tpl->assign('datas', $template_datas); - $local_tpl->assign('plugin', array('PATH' => AMM_PATH)); - - return($local_tpl->parse('body_page', true)); - } - - // permut position of 2 urls and returns a html formatted list of urls - private function ajax_amm_links_permut($urlid, $urlpermut) - { - $this->permut_url($urlid, $urlpermut); - return($this->ajax_amm_links_list()); - } - - // delete an url and returns a html formatted list of urls - private function ajax_amm_links_delete($urlid) - { - if(!$this->adviser_abort()) - { - $this->delete_url($urlid); - } - return($this->ajax_amm_links_list()); - } - - - - - // return a html formatted list of menu's sections - private function ajax_amm_setmenu_list_section_list() - { - global $menu; - $local_tpl = new Template(AMM_PATH."admin/", ""); - $local_tpl->set_filename('body_page', - dirname($this->filelocation).'/admin/amm_sectionslist_detail.tpl'); - - $sections=$menu->registered(); - $i=0; - foreach($sections as $key => $val) - { - $template_datas['sections'][]=array( - 'OWNER' => $val['OWNER'], - 'NAME' => l10n($val['NAME']), - 'ID' => $key, - 'VISIBLE' => l10n('g002_yesno_'.$this->my_config['amm_sections_visible'][$key]), - 'POSITION' => $val['POSITION'], - 'NEXTPOS' => $val['POSITION']+2, - 'PREVPOS' => $val['POSITION']-1, - 'up' => ($i==0)?false:true, - 'down' => ($i<(count($sections)-1))?true:false - ); - $i++; - } - - $local_tpl->assign('datas', $template_datas); - $local_tpl->assign('plugin', array('PATH' => AMM_PATH)); - - return($local_tpl->parse('body_page', true)); - } - - // move item to the specified position - private function ajax_amm_setmenu_list_section_position($urlid, $position) - { - global $menu; - - $menu->register_position($urlid, $position); - return($this->ajax_amm_setmenu_list_section_list()); - } - - // show/hide item to the specified position - private function ajax_amm_setmenu_list_section_showhide($urlid) - { - $switchvisible=array('y'=>'n', 'n'=>'y'); - - $this->my_config['amm_sections_visible'][$urlid]=$switchvisible[$this->my_config['amm_sections_visible'][$urlid]]; - $this->save_config(); - - return($this->ajax_amm_setmenu_list_section_list()); - } - - // return a html formatted list of personalised sections - private function ajax_amm_personalised_list() - { - global $template, $user; - $local_tpl = new Template(AMM_PATH."admin/", ""); - $local_tpl->set_filename('body_page', - dirname($this->filelocation).'/admin/amm_personalisedlist_detail.tpl'); - - $template_datas['sections']=array(); - - $sections=$this->get_sections(false, '', false); - $is_done=array(); - foreach($sections as $key => $val) - { - if(!isset($is_done[$val['id']])) - { - $template_datas['sections'][]=array( - 'title' => ($val['title']!='')?$val['title']:l10n('g002_notitle'), - 'edit' => $this->page_link.'&fAMM_tabsheet=personnalblock&action=modify&fItem='.$val['id'], - 'ID' => $val['id'], - 'visible' => l10n('g002_yesno_'.$val['visible']), - 'nfo' => $val['nfo'] - ); - $is_done[$val['id']]=''; - } - } - - $themeconf=array( - 'icon_dir' => $template->get_themeconf('icon_dir') - ); - - $local_tpl->assign('themeconf', $themeconf); - $local_tpl->assign('datas', $template_datas); - $local_tpl->assign('plugin', array('PATH' => AMM_PATH)); - - return($local_tpl->parse('body_page', true)); - } - - // delete a section and returns a html formatted list - private function ajax_amm_personalised_delete($sectionid) - { - if(!$this->adviser_abort()) - { - $this->delete_personalised($sectionid); - } - return($this->ajax_amm_personalised_list()); - } - - - - - // return a html formatted list of special menu sections items - private function ajax_amm_setmenu_mod_section_list($menuname) - { - $local_tpl = new Template(AMM_PATH."admin/", ""); - $local_tpl->set_filename('body_page', - dirname($this->filelocation).'/admin/amm_sectionsmod_detail.tpl'); - - $template_datas = array('LIST' => array()); - foreach($this->my_config[$menuname] as $key => $val) - { - $template_datas['LIST'][] = array( - 'ID' => base64_encode($key), - 'LABEL' => $key, - 'VISIBLE' => 'g002_yesno_'.$val - ); - } - - $local_tpl->assign('datas', $template_datas); - $local_tpl->assign('plugin', array('PATH' => AMM_PATH)); - - return($local_tpl->parse('body_page', true)); - } - - - // move item to the specified position - private function ajax_amm_setmenu_mod_section_showhide($menuname, $urlid) - { - $switchvisible=array('y'=>'n', 'n'=>'y'); - - $this->my_config[$menuname][base64_decode($urlid)]=$switchvisible[$this->my_config[$menuname][base64_decode($urlid)]]; - $this->save_config(); - - return($this->ajax_amm_setmenu_mod_section_list($menuname)); - } - - - - -} // AMM_AIP class - - -?> |