function reload_dimensions_js() { ajx_current("empty"); $dimensions = Dimensions::findAll(); $ot_extra_cond = ""; Hook::fire('available_object_types_extra_cond', null, $ot_extra_cond); $ots = ObjectTypes::getAvailableObjectTypesWithTimeslots($ot_extra_cond); $dims_info = array(); $perms_info = array(); foreach ($dimensions as $dim) { $dims_info[$dim->getId()] = array(); $perms_info[$dim->getId()] = array(); $members = $dim->getAllMembers(); foreach ($members as $member) { $mem_info = array(); $mem_info['id'] = $member->getId(); $mem_info['name'] = clean($member->getName()); $mem_info['ot'] = $member->getObjectTypeId(); $mem_info['path'] = $dim->getIsManageable() ? trim(clean($member->getPath())) : ''; $mem_info['ico'] = $member->getIconClass(); $mem_info['color'] = $member->getMemberColor(); $mem_info['parent_id'] = $member->getParentMemberId(); $mem_info['archived'] = $member->getArchivedById(); $p_info = array(); if ($dim->getIsManageable()) { foreach ($ots as $ot) { $p_info[$ot->getId()] = $dim->getDefinesPermissions() ? can_read(logged_user(), array($member), $ot->getId()) : true; } } $dims_info[$dim->getId()][$member->getId()] = $mem_info; $perms_info[$dim->getId()][$member->getId()] = $p_info; } } ajx_extra_data(array("dims" => $dims_info, "perms" => $perms_info)); }