Ignore:
Timestamp:
Oct 13, 2010, 5:22:04 PM (14 years ago)
Author:
grum
Message:

Packing js files + add categorySelector functionnalities

File:
1 edited

Legend:

Unmodified
Added
Removed
  • extensions/GrumPluginClasses/gpc_ajax.php

    r6894 r7175  
    1616 *
    1717 * manage all the ajax requests
     18 *
     19 * known functions :
     20 *  - admin.rbuilder.fillCaddie
     21 *  - admin.categorySelector.getList
     22 *
    1823 * -----------------------------------------------------------------------------
    1924 */
     
    6873      // check if asked function is valid
    6974      if(!(
    70            $_REQUEST['ajaxfct']=='admin.rbuilder.fillCaddie'
     75           $_REQUEST['ajaxfct']=='admin.rbuilder.fillCaddie' or
     76           $_REQUEST['ajaxfct']=='admin.categorySelector.getList' or
     77           $_REQUEST['ajaxfct']=='public.categorySelector.getList'
    7178          )
    7279        ) $_REQUEST['ajaxfct']='';
     
    7784      {
    7885        /*
    79          * check admin.makeStats.getList values
     86         * check admin.rbuilder.fillCaddie values
    8087         */
    8188        if($_REQUEST['ajaxfct']=="admin.rbuilder.fillCaddie")
     
    8895          if(!isset($_REQUEST['requestNumber'])) $_REQUEST['ajaxfct']="";
    8996        }
     97
     98        /*
     99         * check admin.categorySelector.getList values
     100         */
     101        if($_REQUEST['ajaxfct']=="admin.categorySelector.getList" or
     102           $_REQUEST['ajaxfct']=="public.categorySelector.getList")
     103        {
     104          if(!isset($_REQUEST['filter'])) $_REQUEST['filter']="accessible";
     105
     106          if(!($_REQUEST['filter']=="public" or
     107               $_REQUEST['filter']=="accessible" or
     108               $_REQUEST['filter']=="all")
     109            ) $_REQUEST['filter']="accessible";
     110
     111          if(!isset($_REQUEST['galleryRoot'])) $_REQUEST['galleryRoot']="y";
     112
     113          if(!($_REQUEST['galleryRoot']=="y" or
     114               $_REQUEST['galleryRoot']=="n")
     115            ) $_REQUEST['galleryRoot']="y";
     116
     117          if(!isset($_REQUEST['tree'])) $_REQUEST['tree']="n";
     118
     119          if(!($_REQUEST['tree']=="y" or
     120               $_REQUEST['tree']=="n")
     121            ) $_REQUEST['tree']="n";
     122        }
     123
     124
    90125      }
    91     }
     126    } //checkRequest()
    92127
    93128
     
    102137        case 'admin.rbuilder.fillCaddie':
    103138          $result=$this->ajax_gpc_admin_rbuilderFillCaddie($_REQUEST['fillMode'], $_REQUEST['requestNumber']);
     139          break;
     140        case 'admin.categorySelector.getList':
     141          $result=$this->ajax_gpc_admin_CategorySelectorGetList($_REQUEST['filter'], $_REQUEST['galleryRoot'], $_REQUEST['tree']);
     142          break;
     143        case 'public.categorySelector.getList':
     144          $result=$this->ajax_gpc_public_CategorySelectorGetList($_REQUEST['filter'], $_REQUEST['galleryRoot'], $_REQUEST['tree']);
    104145          break;
    105146      }
     
    141182    }
    142183
     184
     185
     186    /**
     187     * return the list of all categories
     188     *
     189     * @param String $filter : 'public' or 'accessible' or 'all'
     190     * @param String $galleryRoot : 'y' if the gallery root is in the list
     191     * @param String $tree : 'y' to obtain a recursive array, 'n' to obtain a flat array
     192     * @return String : json string
     193     */
     194    private function ajax_gpc_admin_CategorySelectorGetList($filter, $galleryRoot, $tree)
     195    {
     196      global $user;
     197
     198      include_once(PHPWG_PLUGINS_PATH.'GrumPluginClasses/classes/GPCCategorySelector.class.inc.php');
     199
     200      $categorySelector=new GPCCategorySelector(
     201        array(
     202          'filter' => $filter,
     203          'galleryRoot' => ($galleryRoot=='y')?true:false,
     204          'tree' => ($tree=='y')?true:false,
     205          'userMode' => 'admin'
     206        )
     207      );
     208
     209      $returned=array(
     210        'userId' => $user['id'],
     211        'nbCategories' => 0,
     212        'categories' => $categorySelector->getCategoryList(),
     213        'status' => array(
     214          0=>l10n('Private'),
     215          1=>l10n('Public')
     216        )
     217      );
     218      $returned['nbCategories']=count($returned['categories']);
     219
     220      return(json_encode($returned));
     221    } //ajax_gpc_admin_CategorySelectorGetList
     222
     223
     224    /**
     225     * return the list of all categories
     226     *
     227     * @param String $filter : 'public' or 'accessible' or 'all'
     228     * @param String $galleryRoot : 'y' if the gallery root is in the list
     229     * @param String $tree : 'y' to obtain a recursive array, 'n' to obtain a flat array
     230     * @param String $userMode : 'public' or 'admin'
     231     * @return String : json string
     232     */
     233    private function ajax_gpc_public_CategorySelectorGetList($filter, $galleryRoot, $tree)
     234    {
     235      global $user;
     236
     237      include_once(PHPWG_PLUGINS_PATH.'GrumPluginClasses/classes/GPCCategorySelector.class.inc.php');
     238
     239      $categorySelector=new GPCCategorySelector(
     240        array(
     241          'filter' => $filter,
     242          'galleryRoot' => ($galleryRoot=='y')?true:false,
     243          'tree' => ($tree=='y')?true:false,
     244          'userMode' => 'public'
     245        )
     246      );
     247
     248      $returned=array(
     249        'userId' => $user['id'],
     250        'nbCategories' => 0,
     251        'categories' => $categorySelector->getCategoryList(),
     252        'status' => array(
     253          0=>l10n('Private'),
     254          1=>l10n('Public')
     255        )
     256      );
     257      $returned['nbCategories']=count($returned['categories']);
     258
     259      return(json_encode($returned));
     260    } //ajax_gpc_public_CategorySelectorGetList
     261
     262
     263
    143264  } //class
    144265
Note: See TracChangeset for help on using the changeset viewer.