public function chkPermission_Click($strFormId, $strControlId, $strParameter)
 {
     if (is_numeric($strParameter)) {
         $chkPermission = $this->Form->GetControl($strControlId);
         if ($chkPermission->Checked) {
             $objRolePermission = new NarroRolePermission();
             $objRolePermission->RoleId = $this->objRole->RoleId;
             $objRolePermission->PermissionId = $strParameter;
             try {
                 $objRolePermission->Save();
             } catch (QMySqliDatabaseException $objExc) {
                 if (strpos($objExc->getMessage(), 'Duplicate entry') === false) {
                     throw $objExc;
                 } else {
                     //
                 }
             }
         } else {
             $objRolePermission = NarroRolePermission::QuerySingle(QQ::AndCondition(QQ::Equal(QQN::NarroRolePermission()->RoleId, $this->objRole->RoleId), QQ::Equal(QQN::NarroRolePermission()->PermissionId, $strParameter)));
             if ($objRolePermission instanceof NarroRolePermission) {
                 $objRolePermission->Delete();
             }
         }
     } else {
         $this->dtgPermission_Bind();
     }
 }
Exemplo n.º 2
0
 /**
  * Load a single NarroRolePermission object,
  * by RolePermissionId Index(es)
  * @param integer $intRolePermissionId
  * @param QQClause[] $objOptionalClauses additional optional QQClause objects for this query
  * @return NarroRolePermission
  */
 public static function LoadByRolePermissionId($intRolePermissionId, $objOptionalClauses = null)
 {
     return NarroRolePermission::QuerySingle(QQ::AndCondition(QQ::Equal(QQN::NarroRolePermission()->RolePermissionId, $intRolePermissionId)), $objOptionalClauses);
 }