Changeset 7207


Ignore:
Timestamp:
10/15/10 21:38:35 (9 years ago)
Author:
grum
Message:

Admin interface implemented

Location:
extensions/ASearchEngine
Files:
1 added
7 edited

Legend:

Unmodified
Added
Removed
  • extensions/ASearchEngine/admin/ase_search.tpl

    r7196 r7207  
    33 
    44{$ase_search_page} 
     5 
  • extensions/ASearchEngine/ase.css

    r7196 r7207  
    1 #iHeaderListMaps { width:100%; border:1px solid; border-collapse: collapse; margin-top:3px; } 
    2 #iListMaps, #iListAssoc, #iListKml { width:100%; border:1px solid; height:280px; border-top:0px; overflow:auto; position:relative; left:-1px;} 
    3 #iListMapsNb, #iListAssocNb, #iListKmlNb { width:99%; text-align:right; margin-bottom:8px; padding:2px; font-size:80%; } 
    4  
    5 #iListMaps table, table.listMaps, 
    6 #iListAssoc table, 
    7 #iListKml table  { width:100%; text-align:left; border-collapse: collapse; } 
    8  
    9 #iListMaps.roma table tr:hover, 
    10 #iListAssoc.roma table tr:hover, 
    11 #iListKml.roma table tr:hover  { cursor:pointer; background:#303030; } 
    12  
    13 #iListMaps.clear table tr:hover, 
    14 #iListAssoc.clear table tr:hover, 
    15 #iListKml.clear table tr:hover { cursor:pointer; color: #D54E21; background:#dbe8f3; } 
    16  
    17 #iBDAssocCatId { 
    18   width:560px; 
     1ul.modulesList { 
     2  margin:0px; 
     3  padding:0px; 
     4  list-style:none; 
    195} 
    206 
    21 div.addMap { text-align:left; } 
    22  
    23 img.pointer, span.pointer, div.pointer { cursor:pointer; } 
    24  
    25 .error, input.error { 
    26   background:#FFAAAA; 
    27   border:1px solid #800000; 
    28   color:#800000; 
    29 } 
    30 ul.error { 
    31   min-height:30px; 
    32   -moz-border-radius:8px; 
    33   -webkit-border-radius:8px; 
    34   -khtml-border-radius:8px; 
    35   border-radius:8px; 
     7div.cfgBloc { 
     8  margin-top:10px; 
    369} 
    3710 
    38 .ui-slider { 
    39   width:708px; 
    40   height:10px; 
    41   border-width:1px; 
    42   border-style:solid; 
    43   margin-right:5px; 
    44   padding-right:14px; 
    45 } 
    46 .ui-slider-handle { 
    47   width:12px; 
    48   height:12px; 
    49   position:relative; 
    50   top:-2px; 
    51   border-width:1px; 
    52   border-style:solid; 
    53   display:block; 
    54 } 
    55  
    56 #itab2 { 
    57   border-top:1px solid; 
    58   margin:25px -6px 0 -10px; 
    59   padding-top:3px; 
    60 } 
    61  
    62 #iDialogGMapNfo { 
    63   height:18px; 
    64   margin:5px 5px 0 60px; 
    65   text-align:left; 
    66 } 
    67 #iDialogGMapNfo span { 
    68   position:relative; 
    69   top:-3px; 
    70   margin-left:3px; 
    71 } 
    72 #iDialogGMapWaiting { 
    73   position:absolute; 
    74   z-index:1500; 
    75   background:#000000; 
    76   opacity:0.55; 
    77   filter:alpha(opacity:55); 
    78 } 
    79  
    80  
    81 // fix IE8 compatibility bugs from GPC 3.2.0 (fixed in next release) 
    82 .formtable, .formtable P { margin-left:0px;  } 
    83 .tabsheet2 { list-style:none; } 
  • 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 
  • extensions/ASearchEngine/ase_ajax.php

    r7196 r7207  
    6262 
    6363      // check if asked function is valid 
    64       if(!($_REQUEST['ajaxfct']=='admin.maps.getList' 
    65            //$_REQUEST['ajaxfct']=='public.maps.getMarkerInfos' 
     64      if(!($_REQUEST['ajaxfct']=='admin.config.setConfig' 
    6665           )) $_REQUEST['ajaxfct']=''; 
    6766 
     
    7170      if($_REQUEST['ajaxfct']!='') 
    7271      { 
    73         /* 
    74          * no check for admin.maps.getList & admin.assoc.getList requests 
    75          */ 
    76  
    7772 
    7873      } 
     
    8681    { 
    8782      $result="<p class='errors'>An error has occured</p>"; 
    88       /* 
     83 
    8984      switch($_REQUEST['ajaxfct']) 
    9085      { 
    91         case 'admin.maps.getList': 
     86        case 'admin.config.setConfig': 
    9287          $result=$this->ajax_gmaps_admin_mapsGetList(); 
    9388          break; 
    9489      } 
    95       */ 
    9690      GPCAjax::returnResult($result); 
    9791    } 
  • extensions/ASearchEngine/ase_root.class.inc.php

    r7196 r7207  
    6161 
    6262    /* 
    63       intialize default values 
     63      initialize default values 
    6464    */ 
    6565    public function initConfig() 
     
    6767      //global $user; 
    6868      $this->config=array( 
     69        'ase_keyword_minLength' => 3, 
     70        'ase_publicAccess_active' => false, 
     71        'ase_publicAccess_applyLimits' => true, 
     72        'ase_publicAccess_limits' => 1000, 
     73        'ase_publicAccess_allowedPlugins' => array() 
    6974      ); 
    7075    } 
  • extensions/ASearchEngine/language/fr_FR/plugin.lang.php

    r7196 r7207  
    44 
    55$lang['ase_release']='v'; 
     6 
     7$lang['ASERate']="Advanced Search Engine - Note moyenne"; 
     8$lang['ASEDate']="Advanced Search Engine - Dates"; 
     9$lang['ASECategory']="Advanced Search Engine - Catégories"; 
     10$lang['ASEKeyword']="Advanced Search Engine - Mots-clefs"; 
     11$lang['ASEHD']="Advanced Search Engine - Photos HD"; 
    612 
    713$lang['ase_search']='Rechercher'; 
     
    94100 
    95101 
     102$lang['ase_config']="Configuration"; 
     103$lang['ase_gallery_integration']="Intégration dans la galerie"; 
     104$lang['ase_keyword_module']="Module 'Mots-clefs'"; 
     105 
     106$lang['ase_publicAccess_active']="Remplacer la page de recherche de Piwigo par celle d'<i>Advanced Search Engine</i>"; 
     107$lang['ase_publicAccess_allowedPlugins']="Modules accessibles :"; 
     108$lang['ase_publicAccess_applyLimits']="Limiter le nombre d'élements restitués"; 
     109$lang['ase_keyword_minLength']="Nombre minimum de caractères requis pour un accepter la recherche sur un mot-clef"; 
     110 
     111$lang['ase_error_limit_must_be_integer_gt_0']="Le nombre d'élements restitués doit être un entier supérieur à 0"; 
     112$lang['ase_error_key_word_min_length_must_be_integer_gt_0']="Le nombre minimum de caractères doit être un entier supérieur à 0"; 
     113$lang['ase_error_no_module_checked']="Si la page de recherche Piwigo est à remplacer, au moins un module doit être sélectionné"; 
     114 
     115$lang['ase_apply']="Appliquer"; 
     116$lang['ase_config_saved']="La configuration est enregistrée"; 
     117 
    96118?> 
  • extensions/ASearchEngine/templates/ase_dialog_keyword_choose.tpl

    r7196 r7207  
    9191    returned=true; 
    9292 
    93     if($('#iASEKeywordKeyword').val().length<3) 
     93    if($('#iASEKeywordKeyword').val().length< {/literal}{$aseConfig.ase_keyword_minLength}{literal} ) 
    9494    { 
    9595      $("#iASEKeywordKeyword").addClass('error'); 
Note: See TracChangeset for help on using the changeset viewer.