Changeset 7349


Ignore:
Timestamp:
10/22/10 22:07:46 (9 years ago)
Author:
grum
Message:

add the ui.tagSelector.js jQuery plugin

Location:
extensions/GrumPluginClasses
Files:
4 added
5 edited

Legend:

Unmodified
Added
Removed
  • extensions/GrumPluginClasses/css/categorySelector_clear.css

    r7175 r7349  
    5454 
    5555li.ui-category-selector-item:hover { 
    56   background-color:#999999; 
     56  background-color:#AAAAAA; 
     57  color:#DDDDDD; 
    5758} 
    5859 
    5960.ui-category-selector-selected-item { 
    60   background-color:#AAAAAA; 
     61  background-color:#999999; 
     62  color:#DDDDDD; 
    6163} 
    6264 
  • extensions/GrumPluginClasses/gpc_ajax.php

    r7327 r7349  
    2020 *  - admin.rbuilder.fillCaddie 
    2121 *  - admin.categorySelector.getList 
     22 *  - public.categorySelector.getList 
     23 *  - public.rbuilder.searchExecute 
     24 *  - public.rbuilder.searchGetPage 
     25 *  - public.tagSelector.get 
     26 *  - admin.tagSelector.get 
     27 * 
    2228 * 
    2329 * ----------------------------------------------------------------------------- 
     
    8086           $_REQUEST['ajaxfct']=='public.rbuilder.searchGetPage' or 
    8187           $_REQUEST['ajaxfct']=='admin.categorySelector.getList' or 
    82            $_REQUEST['ajaxfct']=='public.categorySelector.getList' 
     88           $_REQUEST['ajaxfct']=='public.categorySelector.getList' or 
     89           $_REQUEST['ajaxfct']=='public.tagSelector.get' or 
     90           $_REQUEST['ajaxfct']=='admin.tagSelector.get' 
    8391          ) 
    8492        ) $_REQUEST['ajaxfct']=''; 
     
    127135 
    128136        /* 
    129          * check admin.categorySelector.getList values 
     137         * check admin.tagSelector.get values 
     138         */ 
     139        if($_REQUEST['ajaxfct']=="admin.tagSelector.get" or 
     140           $_REQUEST['ajaxfct']=="public.tagSelector.get") 
     141        { 
     142          if(!isset($_REQUEST['letters'])) $_REQUEST['ajaxfct']=""; 
     143          if(!isset($_REQUEST['filter'])) $_REQUEST['filter']="affected"; 
     144 
     145          if(!($_REQUEST['filter']=="affected" or 
     146               $_REQUEST['filter']=="all") 
     147            ) $_REQUEST['filter']="affected"; 
     148 
     149          if(!isset($_REQUEST['maxTags'])) $_REQUEST['maxTags']=1000; 
     150          if($_REQUEST['maxTags']<0) $_REQUEST['maxTags']=0; 
     151 
     152          if(!isset($_REQUEST['ignoreCase'])) $_REQUEST['ignoreCase']=true; 
     153 
     154        } 
     155 
     156 
     157        /* 
     158         * check public.categorySelector.getList values 
    130159         */ 
    131160        if($_REQUEST['ajaxfct']=="admin.categorySelector.getList" or 
     
    152181        } 
    153182 
    154  
    155183      } 
    156184    } //checkRequest() 
     
    179207        case 'public.categorySelector.getList': 
    180208          $result=$this->ajax_gpc_public_CategorySelectorGetList($_REQUEST['filter'], $_REQUEST['galleryRoot'], $_REQUEST['tree']); 
     209          break; 
     210        case 'admin.tagSelector.get': 
     211          $result=$this->ajax_gpc_both_TagSelectorGet('admin', $_REQUEST['letters'], $_REQUEST['filter'], $_REQUEST['maxTags'], $_REQUEST['ignoreCase']); 
     212          break; 
     213        case 'public.tagSelector.get': 
     214          $result=$this->ajax_gpc_both_TagSelectorGet('public', $_REQUEST['letters'], $_REQUEST['filter'], $_REQUEST['maxTags'], $_REQUEST['ignoreCase']); 
    181215          break; 
    182216      } 
     
    322356 
    323357 
     358 
     359    /** 
     360     * return the list of all known tags 
     361     * 
     362     * @param Striong $mode : 'admin' or 'public' 
     363     * @param String $letters : filtering on letters 
     364     * @param String $filter : 'accessible' or 'all' 
     365     * @param Integer $maxTags : maximum of items returned ; 0 = no limits 
     366     * @return String : json string 
     367     */ 
     368    private function ajax_gpc_both_TagSelectorGet($mode, $letters, $filter, $maxTags, $ignoreCase) 
     369    { 
     370      global $user; 
     371 
     372      $returned=array( 
     373        'totalNbTags' => 0, 
     374        'tags' => array(), 
     375      ); 
     376 
     377      $binary=''; 
     378      if(!$ignoreCase) $binary=" BINARY "; 
     379 
     380 
     381      $sql="SELECT DISTINCT SQL_CALC_FOUND_ROWS ptt.id, ptt.name 
     382            FROM ((".TAGS_TABLE." ptt "; 
     383 
     384      if($filter=='affected') 
     385      { 
     386        $sql.=" JOIN ".IMAGE_TAG_TABLE." pitt 
     387                ON pitt.tag_id = ptt.id ) "; 
     388      } 
     389      else 
     390      { 
     391        $sql.=" ) "; 
     392      } 
     393 
     394 
     395      if($mode=='public' and $filter=='affected') 
     396      { 
     397        $sql.=" JOIN ".IMAGE_CATEGORY_TABLE." pict 
     398                ON pict.image_id = pitt.image_id ) 
     399                JOIN ".USER_CACHE_CATEGORIES_TABLE." pucc 
     400                ON (pucc.cat_id = pict.category_id AND pucc.user_id='".$user['id']."' )"; 
     401      } 
     402      else 
     403      { 
     404        $sql.=" ) "; 
     405      } 
     406 
     407      $sql.=" WHERE ptt.name LIKE $binary '%$letters%' 
     408            ORDER BY ptt.name "; 
     409 
     410      if($maxTags>0) $sql.=" LIMIT 0, ".$maxTags; 
     411 
     412      $result=pwg_query($sql); 
     413      if($result) 
     414      { 
     415        while($row=pwg_db_fetch_assoc($result)) 
     416        { 
     417          $returned['tags'][]=$row; 
     418        } 
     419 
     420        $sql="SELECT FOUND_ROWS();"; 
     421        $result=pwg_query($sql); 
     422        if($result) 
     423        { 
     424          while($row=pwg_db_fetch_row($result)) 
     425          { 
     426            $returned['totalNbTags']=$row[0]; 
     427          } 
     428        } 
     429      } 
     430 
     431      return(json_encode($returned)); 
     432    } //ajax_gpc_both_TagSelectorGet 
     433 
     434 
    324435  } //class 
    325436 
    326437 
    327438  $returned=new GPC_Ajax($prefixeTable, __FILE__); 
     439 
     440 
     441 
     442 
     443 
    328444?> 
  • extensions/GrumPluginClasses/main.inc.php

    r7327 r7349  
    8585|         |            |   and templates 
    8686|         |            | 
     87|         |            | * Add the jQuery plugins 
     88|         |            |   . ui.tagSelector.js + ui.tagSelector.packed.js 
     89|         |            | 
     90|         |            | 
     91|         |            | 
    8792|         |            | 
    8893|         |            | ===== Don't forget to update the plugin version ! ===== 
  • extensions/GrumPluginClasses/templates/GPCRequestBuilder_search.tpl

    r7327 r7349  
    376376  {/foreach} 
    377377 
     378  $('.ui-dialog').css('overflow', 'visible'); 
     379 
    378380  init(); 
    379381</script> 
Note: See TracChangeset for help on using the changeset viewer.