PHP warning uasort() expects parameter 2 to be a valid callback, function 'comparePermission' not found or invalid function name /srv/www/htdocs/limesurvey/application/models/Permission.php(102) 090 public static function getGlobalBasePermissions() 091 { 092 $clang = Yii::app()->lang; 093 $aPermissions=array( 094 'surveys'=>array('create'=>true,'read'=>true,'update'=>true,'delete'=>true,'import'=>false,'export'=>true,'title'=>$clang->gT("Surveys"),'description'=>$clang->gT("Permission to create surveys (for which all permissions are automatically given) and view, update and delete surveys from other users"),'img'=>'survey'), 095 'users'=>array('create'=>true,'read'=>true,'update'=>true,'delete'=>true,'import'=>false,'export'=>false,'title'=>$clang->gT("Users"),'description'=>$clang->gT("Permission to create, view, update and delete users"),'img'=>'security'), 096 'usergroups'=>array('create'=>true,'read'=>true,'update'=>true,'delete'=>true,'import'=>false,'export'=>false,'title'=>$clang->gT("User groups"),'description'=>$clang->gT("Permission to create, view, update and delete user groups"),'img'=>'usergroup'), 097 'templates'=>array('create'=>true,'read'=>true,'update'=>true,'delete'=>true,'import'=>true,'export'=>true,'title'=>$clang->gT("Templates"),'description'=>$clang->gT("Permission to create, view, update, delete, export and import templates"),'img'=>'templates'), 098 'labelsets'=>array('create'=>true,'read'=>true,'update'=>true,'delete'=>true,'import'=>true,'export'=>true,'title'=>$clang->gT("Label sets"),'description'=>$clang->gT("Permission to create, view, update, delete, export and import label sets/labels"),'img'=>'labels'), 099 'settings'=>array('create'=>false,'read'=>true,'update'=>true,'delete'=>false,'import'=>true,'export'=>false,'title'=>$clang->gT("Settings & Plugins"),'description'=>$clang->gT("Permission to view and update global settings & plugins and to delete and import plugins"),'img'=>'global'), 100 'participantpanel'=>array('create'=>true,'read'=>true,'update'=>true,'delete'=>true,'import'=>false,'export'=>true,'title'=>$clang->gT("Participant panel"),'description'=>$clang->gT("Permission to create your own participants in the central participants database (for which all permissions are automatically given) and view, update and delete participants from other users"),'img'=>'cpdb'), 101 ); 102 uasort($aPermissions,"comparePermission"); 103 $aPermissions=array('superadmin'=>array('create'=>false,'read'=>true,'update'=>false,'delete'=>false,'import'=>false,'export'=>false,'title'=>$clang->gT("Superadministrator"),'description'=>$clang->gT("Unlimited administration permissions"),'img'=>'superadmin'))+$aPermissions; 104 return $aPermissions; 105 } 106 107 public static function getPermissions($iUserID, $iEntityID=null, $sEntityName=null) 108 { 109 if ($sEntityName=='survey') 110 { 111 $aBasePermissions=Permission::model()->getSurveyBasePermissions(); 112 } 113 elseif ($sEntityName=='global') 114 { Stack Trace #0 –  /srv/www/htdocs/limesurvey/application/models/Permission.php(102): uasort(array("surveys" => array("create" => true, "read" => true, "update" => true, "delete" => true, ...), "users" => array("create" => true, "read" => true, "update" => true, "delete" => true, ...), "usergroups" => array("create" => true, "read" => true, "update" => true, "delete" => true, ...), "templates" => array("create" => true, "read" => true, "update" => true, "delete" => true, ...), ...), "comparePermission") 097 'templates'=>array('create'=>true,'read'=>true,'update'=>true,'delete'=>true,'import'=>true,'export'=>true,'title'=>$clang->gT("Templates"),'description'=>$clang->gT("Permission to create, view, update, delete, export and import templates"),'img'=>'templates'), 098 'labelsets'=>array('create'=>true,'read'=>true,'update'=>true,'delete'=>true,'import'=>true,'export'=>true,'title'=>$clang->gT("Label sets"),'description'=>$clang->gT("Permission to create, view, update, delete, export and import label sets/labels"),'img'=>'labels'), 099 'settings'=>array('create'=>false,'read'=>true,'update'=>true,'delete'=>false,'import'=>true,'export'=>false,'title'=>$clang->gT("Settings & Plugins"),'description'=>$clang->gT("Permission to view and update global settings & plugins and to delete and import plugins"),'img'=>'global'), 100 'participantpanel'=>array('create'=>true,'read'=>true,'update'=>true,'delete'=>true,'import'=>false,'export'=>true,'title'=>$clang->gT("Participant panel"),'description'=>$clang->gT("Permission to create your own participants in the central participants database (for which all permissions are automatically given) and view, update and delete participants from other users"),'img'=>'cpdb'), 101 ); 102 uasort($aPermissions,"comparePermission"); 103 $aPermissions=array('superadmin'=>array('create'=>false,'read'=>true,'update'=>false,'delete'=>false,'import'=>false,'export'=>false,'title'=>$clang->gT("Superadministrator"),'description'=>$clang->gT("Unlimited administration permissions"),'img'=>'superadmin'))+$aPermissions; 104 return $aPermissions; 105 } 106 107 public static function getPermissions($iUserID, $iEntityID=null, $sEntityName=null) #1 –  /srv/www/htdocs/limesurvey/application/controllers/admin/useraction.php(477): Permission::getGlobalBasePermissions() 472 if ($oInitialAdmin && $oInitialAdmin->uid == $iUserID) // it's the original superadmin !!! 473 { 474 Yii::app()->setFlashMessage(Yii::app()->lang->gT("Initial Superadmin permissions cannot be updated!"),'error'); 475 $this->getController()->redirect(array("admin/user/sa/index")); 476 } 477 $aBaseUserPermissions = Permission::model()->getGlobalBasePermissions(); 478 if ($iUserID) {//Never update 1st admin 479 if(Permission::model()->hasGlobalPermission('superadmin','read')) 480 $oUser = User::model()->findByAttributes(array('uid' => $iUserID)); 481 else 482 $oUser = User::model()->findByAttributes(array('uid' => $iUserID, 'parent_id' => Yii::app()->session['loginID'])); #2  unknown(0): UserAction->setuserpermissions() #3 +  /srv/www/htdocs/limesurvey/framework/web/actions/CAction.php(108): ReflectionMethod->invokeArgs(UserAction, array()) #4 –  /srv/www/htdocs/limesurvey/application/core/Survey_Common_Action.php(99): CAction->runWithParamsInternal(UserAction, ReflectionMethod, array("sa" => "setuserpermissions")) 094 $oMethod = new ReflectionMethod($this, $sDefault); 095 } 096 097 // We're all good to go, let's execute it 098 // runWithParamsInternal would automatically get the parameters of the method and populate them as required with the params 099 return parent::runWithParamsInternal($this, $oMethod, $params); 100 } 101 102 /** 103 * Some functions have different parameters, which are just an alias of the 104 * usual parameters we're getting in the url. This function just populates #5 +  /srv/www/htdocs/limesurvey/framework/web/CController.php(308): Survey_Common_Action->runWithParams(array("sa" => "setuserpermissions")) #6 +  /srv/www/htdocs/limesurvey/framework/web/CController.php(286): CController->runAction(UserAction) #7 +  /srv/www/htdocs/limesurvey/framework/web/CController.php(265): CController->runActionWithFilters(UserAction, array()) #8 +  /srv/www/htdocs/limesurvey/application/controllers/AdminController.php(169): CController->run("user") #9 +  /srv/www/htdocs/limesurvey/framework/web/CWebApplication.php(282): AdminController->run("user") #10 +  /srv/www/htdocs/limesurvey/framework/web/CWebApplication.php(141): CWebApplication->runController("admin/user/sa/setuserpermissions") #11 +  /srv/www/htdocs/limesurvey/framework/base/CApplication.php(180): CWebApplication->processRequest() #12 +  /srv/www/htdocs/limesurvey/index.php(200): CApplication->run() 2014-08-05 09:33:22 Apache/2.2.12 (Linux/SUSE) Yii Framework/1.1.14