Example #1
0
 public static function LoadByUsername($strUsername, $objOptionalClauses = null)
 {
     $objUser = NarroUser::QuerySingle(QQ::AndCondition(QQ::Equal(QQN::NarroUser()->Username, $strUsername)));
     if (!$objUser instanceof NarroUser) {
         return false;
     }
     $arrUserRole = NarroUserRole::LoadArrayByUserId($objUser->intUserId);
     foreach ($arrUserRole as $objRole) {
         $arrRolePermission = NarroRolePermission::LoadArrayByRoleId($objRole->RoleId);
         foreach ($arrRolePermission as $objRolePermission) {
             $objUser->arrPermissions[$objRolePermission->Permission->PermissionName . '-' . $objRole->LanguageId . '-' . $objRole->ProjectId] = $objRolePermission;
         }
     }
     if (isset($objUser->Preferences['Language'])) {
         $objLanguage = NarroLanguage::LoadByLanguageCode($objUser->Preferences['Language']);
         if ($objLanguage instanceof NarroLanguage) {
             $objUser->Language = $objLanguage;
         } elseif (QApplication::$TargetLanguage instanceof NarroLanguage) {
             $objUser->Language = QApplication::$TargetLanguage;
         }
     } else {
         $objUser->Language = QApplication::$TargetLanguage;
     }
     return $objUser;
 }
Example #2
0
 /**
  * Gets all associated NarroUserRolesAsUser as an array of NarroUserRole objects
  * @param QQClause[] $objOptionalClauses additional optional QQClause objects for this query
  * @return NarroUserRole[]
  */
 public function GetNarroUserRoleAsUserArray($objOptionalClauses = null)
 {
     if (is_null($this->intUserId)) {
         return array();
     }
     try {
         return NarroUserRole::LoadArrayByUserId($this->intUserId, $objOptionalClauses);
     } catch (QCallerException $objExc) {
         $objExc->IncrementOffset();
         throw $objExc;
     }
 }
 public function dtgUserRole_Bind()
 {
     // Because we want to enable pagination AND sorting, we need to setup the $objClauses array to send to LoadAll()
     // Setup the $objClauses Array
     $objClauses = array();
     // If a column is selected to be sorted, and if that column has a OrderByClause set on it, then let's add
     // the OrderByClause to the $objClauses array
     if ($objClause = $this->dtgUserRole->OrderByClause) {
         array_push($objClauses, $objClause);
     }
     // Add the LimitClause information, as well
     if ($objClause = $this->dtgUserRole->LimitClause) {
         array_push($objClauses, $objClause);
     }
     // Set the DataSource to be the array of all NarroUser objects, given the clauses above
     $this->dtgUserRole->DataSource = NarroUserRole::LoadArrayByUserId($this->objUser->UserId, $objClauses);
 }