Ignore:
Timestamp:
Oct 15, 2010, 9:38:35 PM (14 years ago)
Author:
grum
Message:

Admin interface implemented

File:
1 edited

Legend:

Unmodified
Added
Removed
  • extensions/ASearchEngine/ase_aip.class.inc.php

    r7196 r7207  
    2323{
    2424  protected $tabsheet;
     25  protected $modules;
    2526
    2627  public function __construct($prefixeTable, $filelocation)
     
    157158    global $template;
    158159
    159     /*$template->set_filename('body_page',
     160    $this->modules=GPCRequestBuilder::getRegistered();
     161    $this->updateConfig();
     162    $this->configForTemplate();
     163
     164    $template->set_filename('body_page',
    160165                dirname($this->getFileLocation()).'/admin/ase_config.tpl');
    161166
    162 
    163     $template->assign_var_from_handle('ASE_BODY_PAGE', 'body_page');*/
     167    $cfgTabsheet = new GPCTabSheet('configTabsheet', $this->tabsheet->get_titlename(), 'tabsheet2 gcBorder', 'itabcfg');
     168    $cfgTabsheet->add('gallery',
     169                        l10n('ase_gallery_integration'),
     170                        '', true, "cm.displayTab('gallery');");
     171    $cfgTabsheet->add('keyword',
     172                        l10n('ase_keyword_module'),
     173                        '', false, "cm.displayTab('keyword');");
     174    $cfgTabsheet->assign();
     175
     176
     177    foreach($this->modules as $key=>$val)
     178    {
     179      $this->modules[$key]=array(
     180        'name' => l10n($val['name']),
     181        'id' => $val['name'],
     182        'accessible' => in_array($val['name'], $this->config['ase_publicAccess_allowedPlugins'])
     183      );
     184    }
     185
     186    $datas=Array(
     187      'urlRequest' => $this->getAdminLink('ajax'),
     188      'modules' => $this->modules
     189    );
     190    $template->assign('datas', $datas);
     191
     192    $template->assign_var_from_handle('ASE_BODY_PAGE', 'body_page');
     193  }
     194
     195  /**
     196   * update config values
     197   */
     198  protected function updateConfig()
     199  {
     200    global $infos;
     201
     202    if(!isset($_POST) or count($_POST)==0) return(false);
     203
     204
     205    if(isset($_POST['fPAActive']) and $_POST['fPAActive']=='on')
     206    {
     207      $this->config['ase_publicAccess_active']=true;
     208    }
     209    else
     210    {
     211      $this->config['ase_publicAccess_active']=false;
     212    }
     213
     214
     215    if(isset($_POST['fPAApplyLimits']) and $_POST['fPAApplyLimits']=='on')
     216    {
     217      $this->config['ase_publicAccess_applyLimits']=true;
     218    }
     219    else
     220    {
     221      $this->config['ase_publicAccess_applyLimits']=false;
     222    }
     223
     224    if(isset($_POST['fKMinLength'])) $this->config['ase_keyword_minLength']=$_POST['fKMinLength'];
     225
     226    if(isset($_POST['fPALimits'])) $this->config['ase_publicAccess_limits']=$_POST['fPALimits'];
     227
     228    $this->config['ase_publicAccess_allowedPlugins']=array();
     229    foreach($this->modules as $key=>$val)
     230    {
     231      if(isset($_POST['fModule'.$val['name']]) and $_POST['fModule'.$val['name']]=='on') $this->config['ase_publicAccess_allowedPlugins'][]=$val['name'];
     232    }
     233
     234    if($this->saveConfig())
     235    {
     236      $this->displayResult(l10n('ase_config_saved'), true);
     237      return(true);
     238    }
     239    return(false);
    164240  }
    165241
Note: See TracChangeset for help on using the changeset viewer.