public function get_user_roles_and_rights($project_id = false, $user_name = false) { $ret_info = new ReturnInfo(); $ret_info->status = 'bad'; $js = Loader::helper('json'); if ($project_id == false || ProjectInfo::getDomainName($project_id, 'home') == false) { echo $js->encode($ret_info); exit(0); } if ($user_name == false) { if (fse_try_to_login()) { $fse_id = $_SESSION['FSEInfo']['fse_id']; $user_name = $_SESSION['FSEInfo']['user_name']; } else { echo $js->encode($ret_info); exit(0); } } else { $fse_info = FSEInfo::getBasicProfile($user_name); if ($fse_info == false) { echo $js->encode($ret_info); exit(0); } $fse_id = $fse_info['fse_id']; } $ret_info->status = 'ok'; $ret_info->project_id = $project_id; $ret_info->user_name = $user_name; $roles = ProjectInfo::getUserRoles($project_id, $fse_id); $ret_info->roles = $roles['member_roles']; $ret_info->rights = $roles['member_rights']; echo $js->encode($ret_info); exit(0); }
if (strncmp($type_handle, "member", 6) != 0) { $error_info = t('Section is not a member section!'); } else { if ($attached_files[0] > 0) { $attached_file_0 = File::getByID($attached_files[0]); } $type_fragments = explode(":", $type_handle); if (count($type_fragments) != 5) { $error_info = t('Bad member section!'); } else { $member_username = $type_fragments[2]; $member_fse_info = FSEInfo::getBasicProfile($member_username); if ($member_fse_info == false) { $error_info = t('Bad member username!'); } else { $roles = ProjectInfo::getUserRoles($project_id, $member_fse_info['fse_id']); $member_roles = $roles['member_roles']; if ($member_roles == '') { $error_info = t('Not a valid member!'); } else { if ($member_roles == 'owner') { $error_info = t('You can not edit roles of the owner!'); } } } } } } } } }