aboutsummaryrefslogtreecommitdiffstats
path: root/plugins/AMenuManager/amm_aip.class.inc.php
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/AMenuManager/amm_aip.class.inc.php')
-rwxr-xr-xplugins/AMenuManager/amm_aip.class.inc.php1094
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.'&amp;fAMM_tabsheet=setmenu');
- $this->tabsheet->add('links',
- l10n('g002_addlinks'),
- $this->page_link.'&amp;fAMM_tabsheet=links');
- $this->tabsheet->add('randompict',
- l10n('g002_randompict'),
- $this->page_link.'&amp;fAMM_tabsheet=randompict');
- $this->tabsheet->add('personnalblock',
- l10n('g002_personnalblock'),
- $this->page_link.'&amp;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.'&amp;fAMM_tabsheet=links&amp;action=create',
- 'lnk_config' => $this->page_link.'&amp;fAMM_tabsheet=links&amp;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.'&amp;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.'&amp;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.'&amp;fAMM_tabsheet=setmenu&amp;action=modmenu', 'label' => 'g002_modmenu'),
- array('separator' => ' / ', 'link' => $this->page_link.'&amp;fAMM_tabsheet=setmenu&amp;action=modspecial', 'label' => 'g002_modspecial')
- );
- break;
- case 'modmenu':
- $tmp_list=array(
- array('separator' => '', 'link' => $this->page_link.'&amp;fAMM_tabsheet=setmenu&amp;action=list', 'label' => 'g002_sectionslist'),
- array('separator' => ' / ', 'link' => '', 'label' => 'g002_modmenu'),
- array('separator' => ' / ', 'link' => $this->page_link.'&amp;fAMM_tabsheet=setmenu&amp;action=modspecial', 'label' => 'g002_modspecial')
- );
- break;
- case 'modspecial':
- $tmp_list=array(
- array('separator' => '', 'link' => $this->page_link.'&amp;fAMM_tabsheet=setmenu&amp;action=list', 'label' => 'g002_sectionslist'),
- array('separator' => ' / ', 'link' => $this->page_link.'&amp;fAMM_tabsheet=setmenu&amp;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.'&amp;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.'&amp;fAMM_tabsheet=personnalblock&amp;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.'&amp;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.'&amp;fAMM_tabsheet=links&amp;action=modify&amp;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.'&amp;fAMM_tabsheet=personnalblock&amp;action=modify&amp;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
-
-
-?>