add_user($postdata); break; /* Редактирование пользователя */ /* Редактирование пользователя */ case "editUser": edit_user($postdata); break; /* Удаление пользователя */ /* Удаление пользователя */ case "deleteUser": delete_user($postdata); break; /* Получение прав пользователя */ /* Получение прав пользователя */ case "getPermissions": get_user_permissions($postdata); break; /* Добавление правила доступа к данным */ /* Добавление правила доступа к данным */ case "setPermission": set_permission($postdata); break; } } oci_close($connection); //} /* Функция получения всех групп пользователей */ function get_user_groups() { global $connection; $cursor = oci_new_cursor($connection);
function user_login_openid($token) { $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, "http://loginza.ru/api/authinfo?token={$token}"); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); $arr = json_decode(curl_exec($ch), true); if (isset($arr['error_type'])) { print $arr['error_message']; return 0; } $id = trim($arr['identity']); if (!$id) { throw new Exception(); } //check if the user exists $res = sql_pe("SELECT user_id FROM `users` WHERE user_name=? LIMIT 1", array($id)); sql_begin(); $user_id = sizeof($res) ? $res[0]['user_id'] : make_new_user($id, 'notagreed', '', $id); $alias_uid = check_for_user_alias($user_id); if ($alias_uid) { $user_id = $alias_uid; } $token = remember_user($user_id, false); $row = sql_fetch_array(sql_query("SELECT user_shown_name, user_passwd, user_level FROM users WHERE user_id = {$user_id} LIMIT 1")); init_session($user_id, $row['user_shown_name'], get_user_options($user_id), get_user_permissions($user_id), $token, $row['user_level']); sql_commit(); user_award_for_signup($user_id); if ($row['user_passwd'] == 'notagreed') { $_SESSION['user_pending'] = 1; return 2; } return 1; }
private function _check_user_permission($aconame) { $perm = get_user_permissions(); if (!$perm) { return -1; } if (is_array(@$perm["deny"])) { //配置了拒绝项 $denys = $this->_in_array($aconame, $perm["deny"]); //拒绝当前ACO if ($denys) { //拒绝当前ACO的所有action return false; } } if (is_array(@$perm["allow"])) { //允许当前ACO $allow = $this->_in_array($aconame, $perm["allow"]); //允许当前ACO if ($allow) { //允许当前ACO的所有action return true; } } if (@$perm["deny"] == "*") { return false; } //拒绝优先 if (@$perm["allow"] == "*") { return true; } //允许所有 return -1; }