コード例 #1
0
ファイル: Table.php プロジェクト: disearth/espocrm
 public function __construct(User $user, Config $config = null, FileManager $fileManager = null, Metadata $metadata = null, FieldManager $fieldManager = null)
 {
     $this->data = (object) ['table' => (object) [], 'fieldTable' => (object) [], 'fieldTableQuickAccess' => (object) []];
     $this->user = $user;
     $this->metadata = $metadata;
     if ($fieldManager) {
         $this->fieldManager = $fieldManager;
     }
     if (!$this->user->isFetched()) {
         throw new Error('User must be fetched before ACL check.');
     }
     $this->user->loadLinkMultipleField('teams');
     if ($fileManager) {
         $this->fileManager = $fileManager;
     }
     $this->cacheFile = 'data/cache/application/acl/' . $user->id . '.php';
     if ($config && $config->get('useCache') && file_exists($this->cacheFile)) {
         $cached = (include $this->cacheFile);
         $this->data = $cached;
     } else {
         $this->load();
         if ($config && $fileManager && $config->get('useCache')) {
             $this->buildCache();
         }
     }
 }
コード例 #2
0
ファイル: Table.php プロジェクト: houzhenggang/espocrm
 public function __construct(User $user, Config $config = null, FileManager $fileManager = null, Metadata $metadata = null, FieldManager $fieldManager = null)
 {
     $this->data = (object) ['table' => (object) [], 'fieldTable' => (object) [], 'fieldTableQuickAccess' => (object) []];
     $this->user = $user;
     $this->metadata = $metadata;
     if ($fieldManager) {
         $this->fieldManager = $fieldManager;
     }
     if (!$this->user->isFetched()) {
         throw new Error('User must be fetched before ACL check.');
     }
     $this->user->loadLinkMultipleField('teams');
     if ($fileManager) {
         $this->fileManager = $fileManager;
     }
     $this->valuePermissionList = $this->metadata->get('app.' . $this->type . '.defs.valuePermissionList', $this->valuePermissionList);
     $this->initCacheFilePath();
     if ($config && $config->get('useCache') && file_exists($this->cacheFilePath)) {
         $cached = (include $this->cacheFilePath);
         $this->data = $cached;
     } else {
         $this->load();
         if ($config && $fileManager && $config->get('useCache')) {
             $this->buildCache();
         }
     }
 }
コード例 #3
0
ファイル: Manager.php プロジェクト: mehulsbhatt/espocrm
 public function __construct(\Espo\Core\Utils\Config $config = null)
 {
     $params = null;
     if (isset($config)) {
         $params = array('defaultPermissions' => $config->get('defaultPermissions'), 'permissionMap' => $config->get('permissionMap'));
     }
     $this->permission = new Permission($this, $params);
 }