X-Git-Url: http://git.pjr.cc/?a=blobdiff_plain;f=gwvplib%2Fgwvpuseradmin.php;h=d39aeae97a61a34eaa16347a6855d6ea6330291d;hb=c7bb18886251e5187afbdb8d2101e200eb895ab6;hp=63b3cd8cb8bc6ec253bf38e4ed9b149ff86f95a5;hpb=047523a5083efd83dcd94b6d2763c9fddb913c90;p=gwvp.git diff --git a/gwvplib/gwvpuseradmin.php b/gwvplib/gwvpuseradmin.php index 63b3cd8..d39aeae 100644 --- a/gwvplib/gwvpuseradmin.php +++ b/gwvplib/gwvpuseradmin.php @@ -11,103 +11,209 @@ function gwvp_UserAdminCallMe() { if(isset($_REQUEST["q"])) { $query = $_REQUEST["q"]; - if($query == "admin/users") return "gwvp_UserAdminPage"; + $qspl = explode("/", $query); + if(isset($qspl[0]) && isset($qspl[1])) { + if($qspl[0] == "admin" && $qspl[1] == "users") { + if(isset($qspl[2])) { + switch($qspl[2]) { + case "adduser": + return "gwvp_AddUserPage"; + break; + case "addgroup": + return "gwvp_AddGroupPage"; + break; + case "modify": + return "gwvp_ModifyUserPage"; + break; + case "modifygroup": + return "gwvp_ModifyGroupPage"; + break; + default: + return "gwvp_UserAdminPage"; + } + } else { + return "gwvp_UserAdminPage"; + } + } + } else return false; } return false; } +function gwvp_AddUserPage() +{ + +} + +function gwvp_AddGroupPage() +{ + +} + function gwvp_UserAdminPage() { gwvp_goMainPage("gwvp_UserAdminPageBody"); } +function gwvp_ModifyUserPage() +{ + gwvp_goMainPage("gwvp_ModifyUserPageBody"); +} -function gwvp_UserAdminPageBody() +function gwvp_ModifyGroupPage() { - $groups = gwvp_getGroups(); - $users = gwvp_getUsers(); + gwvp_goMainPage("gwvp_ModifyGroupPageBody"); +} + +function gwvp_ModifyUserPageBody() +{ + //error_log("modify user body - coming in"); + if(!gwvp_CheckAuthLevel("admin")) { + gwvp_AuthNoPermsBody(); + return; + } - echo "

User/Group Administration

"; - echo "On this page you can manage users, groups, group membership and update your profile
"; - echo ""; - // Header part of table - echo ""; + $uid = -1; + if(isset($_REQUEST["q"])) { + $query = $_REQUEST["q"]; + $qspl = explode("/", $query); + $uid = $qspl[3]; + } - echo ""; - // user profile bit - echo ""; + echo "modify user $uid"; +} + +function gwvp_ModifyGroupPageBody() +{ + $gid = -1; + if(isset($_REQUEST["q"])) { + $query = $_REQUEST["q"]; + $qspl = explode("/", $query); + $gid = $qspl[3]; + } - // now the group bit for the user - echo ""; - echo ""; + echo "modify group $gid"; +} + +function gwvp_UserAdminPageBody() +{ + global $LOGIN_TYPE, $BASE_URL; + $groups = gwvp_getGroups(); + $users = gwvp_getUsers(); - echo ""; + echo "

Users and Groups

"; + echo "On this page you can manage users, groups, group membership and update your profile
"; + echo "

My Profile

My Groups

"; - echo "User profile bits go here"; - echo ""; - echo "User owned groups, and groups their a member of go here"; - echo "

Users

Groups

"; - // create user bit - echo ""; - echo "Create User
"; - echo ""; - echo "
"; + echo "

"; - echo ""; - echo ""; - echo ""; - echo ""; - echo ""; - echo ""; - echo ""; - echo "
EMailFull Name
PasswordPassword Confirm
NicknameDescription
"; - echo ""; - echo ""; + // Header part of table + // user self-management bit + if($LOGIN_TYPE != "anon") { + echo "

My Profile

My Groups

"; + + echo ""; + // user profile bit + echo ""; + echo "User profile bits go here"; + echo ""; + + // now the group bit for the user + echo ""; + echo "User owned groups, and groups their a member of go here"; + echo ""; + echo ""; + + echo "
"; + } - // Create group - echo "
"; - echo ""; - echo ""; - echo ""; - echo ""; + + // create user bit + echo ""; + echo ""; } - echo ""; - echo ""; - echo "
Group Name
Admin Group?
Owner

Create User

Create Group

"; + + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo "
EMailFull Name
PasswordPassword Confirm
UsernameDescription
"; + echo ""; + + echo "
"; + + // Create group + echo "
"; + echo ""; + echo ""; + echo ""; + echo ""; + + + + echo ""; + echo "
Group Name
Admin Group?
Owner
"; + echo "
"; + + + echo "

"; - echo ""; - echo ""; + // TODO: whats seen here will depend GREATLY on setting in config - need to fix this later // user list + echo "

Users

Groups

"; + echo ""; echo ""; - echo ""; + switch($LOGIN_TYPE) { + case "anon": + echo ""; + break; + case "admin": + echo ""; + break; + case "user": + echo ""; + break; + } + /* * $returns[$rn]["id"] = $u_res["users_id"]; $returns[$rn]["fullname"] = $u_res["user_full_name"]; $returns[$rn]["password"] = $u_res["user_password"]; - $returns[$rn]["nickname"] = $u_res["user_nickname"]; + $returns[$rn]["username"] = $u_res["user_username"]; $returns[$rn]["email"] = $u_res["user_email"]; $returns[$rn]["desc"] = $u_res["user_desc"]; $returns[$rn]["status"] = $u_res["user_status"]; */ foreach($users as $u_users) { + $userid = $u_users["id"]; $email = $u_users["email"]; $fullname = $u_users["fullname"]; - $nickname = $u_users["nickname"]; + $username = $u_users["username"]; $desc = $u_users["desc"]; $status = $u_users["status"]; if(gwvp_IsUserAdmin($email) == 1) { @@ -116,23 +222,44 @@ function gwvp_UserAdminPageBody() $globaladmin = "No"; } + + // TODO: sort out group prints here $ingroups = gwvp_getGroupsForUser($email); - $ugroups = ""; - foreach($ingroups as $grname) { - $ugroups .= "$grname "; - } - trim($ugroups); $ownedgroups = gwvp_getGroupsOwnedByUser($email); - $ogroups = ""; + $ugroups = ""; if($ownedgroups == false) $ogroups = "-"; else { foreach($ownedgroups as $gr_u) { - $ogroups .= "$gr_u "; + $ugroups .= "$gr_u
"; + } + } + trim($ugroups); + + + foreach($ingroups as $grname) { + $isownedgroup = false; + foreach($ownedgroups as $gr_u) { + if($grname == $gr_u) $isownedgroup = true; } + if(!$isownedgroup) $ugroups .= "$grname
"; + } + trim($ugroups); + + switch($LOGIN_TYPE) { + case "anon": + echo ""; + break; + case "admin": + echo ""; + echo ""; + break; + case "user": + echo ""; + break; } - echo ""; + } echo "
EMailNick NameFull NameIn GroupsOwns GroupsDescriptionIs Global Admin?Status
UsernameGroupsDescription
EMailUsernameFull NameGroupsDescriptionAdmin?StatusModify
UsernameGroupsDescription
$username$ugroups$desc
$email$username$fullname$ugroups$desc$globaladmin$statusModify
$username$ugroups$desc
$email$nickname$fullname$ugroups$ogroups$desc$globaladmin$status
"; @@ -141,7 +268,19 @@ function gwvp_UserAdminPageBody() // group part of table echo ""; - echo ""; + + switch($LOGIN_TYPE) { + case "anon": + echo ""; + break; + case "admin": + echo ""; + break; + case "user": + echo ""; + break; + } + foreach($groups as $u_groups) { /* * $returns[$rn]["id"] = $u_res["groups_id"]; @@ -153,10 +292,24 @@ function gwvp_UserAdminPageBody() */ $gname = $u_groups["name"]; + $gid = $u_groups["id"]; $owner = gwvp_getUserEmail($u_groups["ownerid"]); if($u_groups["admin"]) $gadmin = "Yes"; else $gadmin = "No"; - echo ""; + + switch($LOGIN_TYPE) { + case "anon": + echo ""; + break; + case "admin": + echo ""; + break; + case "user": + echo ""; + break; + } + + } echo "
Group NameOwnerGlobal Admin Group?
Group NameOwner
Group NameOwnerAdmin Group?Modify
Group NameOwnerAdmin Group?
$gname$owner$gadmin
$gname$owner
$gname$owner$gadminModify
$gname$owner$gadmin
"; echo "";