Ver Fonte

added canCreateField in AntAcl

Piotr Labudda há 8 anos atrás
pai
commit
0c03a1de38
2 ficheiros alterados com 10 adições e 1 exclusões
  1. 9 1
      SE/se-lib/AntAclBase.php
  2. 1 0
      SE/se-lib/Core/AclHelper.php

+ 9 - 1
SE/se-lib/AntAclBase.php

@@ -164,7 +164,15 @@ class AntAclBase extends Core_AclBase {
 		return false; // TODO: $this->getAclInfo($fieldName); @see canReadField
 	}
 	public function canCreateField($fieldName) {
-		return false; // TODO: $this->getAclInfo($fieldName); @see canReadField
+		try {
+			$fieldAclInfo = $this->getAclInfo($fieldName);
+			DBG::log($fieldAclInfo, 'array', "AntAclBase: canReadField({$fieldName})...");
+			return ($fieldAclInfo['PERM_C'] > 0);
+		} catch (Exception $e) {
+			DBG::log($e);
+			return false;
+		}
+		return false;
 	}
 	public function canReadField($fieldName) {
 		try {

+ 1 - 0
SE/se-lib/Core/AclHelper.php

@@ -10,6 +10,7 @@ class Core_AclHelper {// Helper class for Acl
   public static function hasCreatePerms($acl) {
     foreach ($acl->getFieldListByIdZasob() as $fieldName) {// TODO: use getFieldList
       // echo"<p>\$acl->canCreateField({$fieldName}): (".$acl->canCreateField($fieldName).")</p>";
+			DBG::log($acl->canCreateField($fieldName), 'array', "\$acl->canCreateField({$fieldName})");
       if ($acl->canCreateField($fieldName)) return true;
     }
     return false;