public function getFolderAccess() { $obj = new stdClass(); $obj->count = 0; $obj->names = array(); $obj->paths = array(); $o = $this->data->get("folders", array()); foreach ($o as $key => $mdo) { if (MRights::can("use", (int) $key)) { $obj->count++; $path = $mdo->get("path", null); $name = $mdo->get("name", null); if (!$name) { $name = basename($path); } $obj->names[$key] = $name; $obj->paths[$key] = $path; } } return $obj; }
/** * * @param string $name * @param int $group_id * @param int $_group_parent_id * @param MDO $group_rights * @param int $rootFolderId * @return int */ protected function checkRule($name = "use", $group_id = null, $_group_parent_id = 0, &$group_rights = null, $rootFolderId = null) { if (!$group_id || !$group_rights || $rootFolderId === null) { return MRIGHTS_DISALLOW; } $rightAttribute = (int) $group_rights->get($name, MRIGHTS_DISALLOW); while ($rightAttribute === MRIGHTS_INHERIT) { if ($_group_parent_id === 0) { $rightAttribute = MRIGHTS_DISALLOW; } else { $parentGroup = self::$lookUpById[$_group_parent_id]; $parentGroupId = (int) $parentGroup->get("id"); if (self::$calcultedRights[(int) $rootFolderId]->has("_" . $parentGroupId)) { $rightAttribute = self::$calcultedRights[(int) $rootFolderId]->get("_" . $parentGroupId)->get($name); } else { $parentRights = self::$rights[(int) $rootFolderId]->get("_" . $parentGroupId); $rightAttribute = $parentRights->get($name); $_group_parent_id = (int) $parentGroup->get("parent_id", 0); } //EOF no calculate rights available } //EOF else parent_id is not 0 } //EOF while inherit return (int) $rightAttribute; }
/** * * @param MDO $data * @param int $id */ public static function rootsMask($data = null, $id = -1){ $disabled = _FM_IS_DEMO ? ' disabled="disabled"' : ''; $c = new MContainer(); // $c->add('ID: '.$id); $c->add('<div class="mMaskHeading"><span>'); if($id === null || $id <0){ $c->add(MText::_("addnewroot")); }else{ $c->add(MText::_("rootfolderconfig") .": ".$data->get("name") ); } $c->add('</span></div><div style="padding:10px;">'); $c->add('<label>'.MText::_("title").'</label>'); $c->add('<div class="mSpacer"></div>'); $c->add(MForms::field("name",$data->get("name"),80,'','class="mRootsTitle" ')); $c->add($data->get("nameError", "")); $c->add('<div class="mSpacer"></div>'); $c->add('<label>'.MText::_("path").'</label>'); $c->add('<div class="mSpacer"></div>'); $path = _FM_IS_DEMO ? MText::_("notfordemo") : $data->get("path"); $c->add(MForms::field("path",$path ,null,'','class="mRootsPath"'. $disabled)); $c->add($data->get("pathError", "")); $c->add('<div class="clr"></div>'); $c->add('</div>'); return self::form($c->get(),null,array("id"=>$id)); }
public function get($name = null, $default = null) { return $this->data->get($name, $default); }