|
|
@@ -46,10 +46,12 @@ class Core_AclHelper {// Helper class for Acl
|
|
|
public static function getAclByTypeName($typeName, $forceTblAclInit = false) {// TODO: replace getAclFromTypeName in WFS
|
|
|
return self::getAclByNamespace(str_replace(':', '/', $typeName), $forceTblAclInit);
|
|
|
}
|
|
|
- public static function getAclByNamespace($namespace, $forceTblAclInit = false) { // TODO: mv to ACL
|
|
|
+ public static function getAclByNamespace($namespace, $forceTblAclInit = false, $objItem = null) { // TODO: mv to ACL
|
|
|
try {
|
|
|
- Lib::loadClass('SchemaFactory');
|
|
|
- $objItem = SchemaFactory::loadDefaultObject('SystemObject')->getItem(str_replace('__x3A__', '/', $namespace), ['propertyName'=>"*,field"]);
|
|
|
+ if (!$objItem) {
|
|
|
+ Lib::loadClass('SchemaFactory');
|
|
|
+ $objItem = SchemaFactory::loadDefaultObject('SystemObject')->getItem(str_replace('__x3A__', '/', $namespace), ['propertyName'=>"*,field"]);
|
|
|
+ }
|
|
|
DBG::log($objItem, 'array', "DBG objItem({$namespace})");
|
|
|
if (!$objItem['idZasob']) throw new Exception("Missing idZasob for namespace '{$namespace}'");
|
|
|
if (!in_array($objItem['_type'], [
|