Esempio n. 1
0
 /**
  * True if a lock with given bundle and module are set
  * @param string $bundle The bundle name
  * @param string $module The module name
  * @return boolean Returns true if the lock is set
  */
 private function HasLock($bundle, $module = '')
 {
     $sql = Access::SqlBuilder();
     $tblModLock = ModuleLock::Schema()->Table();
     $where = $sql->Equals($tblModLock->Field('Bundle'), $sql->Value($bundle))->And_($sql->Equals($tblModLock->Field('Module'), $sql->Value($module)))->And_($sql->Equals($tblModLock->Field('UserGroup'), $sql->Value($this->group->GetID())));
     return ModuleLock::Schema()->Count(false, $where) > 0;
 }
Esempio n. 2
0
 private function GrantOnModule(ModuleBase $module)
 {
     $bundle = $module->MyBundle();
     $moduleName = $module->MyName();
     $inList = $this->GetGroupList();
     $tblModLock = ModuleLock::Schema()->Table();
     $sql = Access::SqlBuilder();
     $where = $sql->Equals($tblModLock->Field('Bundle'), $sql->Value($bundle))->And_($sql->In($tblModLock->Field('UserGroup'), $inList))->And_($sql->Equals($tblModLock->Field('Module'), $sql->Value(''))->Or_($sql->Equals($tblModLock->Field('Module'), $sql->Value($moduleName))));
     if (ModuleLock::Schema()->Count(false, $where) > 0) {
         return GrantResult::NoAccess();
     }
     return GrantResult::Allowed();
 }