X-Git-Url: http://git.pjr.cc/?p=gwvp.git;a=blobdiff_plain;f=gwvplib%2Fgwvpdatabase.php;h=22db79c7a121c8d8371053a13632d800a198995b;hp=28d2832eba7b171d6b3d6d0bfd9634277c934290;hb=98ea64d926a23982b9cfb5b468be87f882268566;hpb=425b2ddb1c73ca601b616ff9c6ef71d2c6b58b03 diff --git a/gwvplib/gwvpdatabase.php b/gwvplib/gwvpdatabase.php index 28d2832..22db79c 100644 --- a/gwvplib/gwvpdatabase.php +++ b/gwvplib/gwvpdatabase.php @@ -393,7 +393,15 @@ function gwvp_createGroup($group_name, $group_desc, $is_admin, $owner_id) $conn->query($sql); - + + // add the owner to the group + $gid = gwvp_getGroupId($group_name); + + + error_log("calling addgroupmember with $owner_id, $gid"); + gwvp_addGroupMemberById($owner_id, $gid); + + return true; } function gwvp_deleteGroup($groupname) @@ -685,6 +693,22 @@ function gwvp_addGroupMember($email, $groupname) return true; } +function gwvp_IsGroupMemberById($uid, $gid) +{ + $conn = gwvp_ConnectDB(); + + $sql = "select count(*) from group_membership where groupmember_userid='$uid' and groupmember_groupid='$gid'"; + + $res = $conn->query($sql); + $result = 0; + foreach($res as $u_res) { + $result = $u_res[0]; + } + + if($result == 0) return false; + if($result == 1) return true; +} + function gwvp_IsGroupMember($email, $groupname) { $conn = gwvp_ConnectDB(); @@ -710,6 +734,27 @@ function gwvp_IsGroupMember($email, $groupname) if($result == 1) return true; } +function gwvp_IsGroupAdmin($groupname = null, $gid = null) +{ + $conn = gwvp_ConnectDB(); + + if($groupname != null) { + $sql = "select groups_is_admin from groups where groups_name='$groupname'"; + } else if($gid != null) { + $sql = "select groups_is_admin from groups where groups_id='$gid'"; + } else return false; + + $res = $conn->query($sql); + + $return = false; + foreach($res as $u_res) { + if($u_res["groups_is_admin"] == "1") $return = true; + } + + return $return; +} + + function gwvp_IsUserAdmin($email=null, $username = null, $userid = null) { $conn = gwvp_ConnectDB(); @@ -836,6 +881,42 @@ function gwvp_ModifyGroup($groupid, $groupname = null, $group_is_admin = null, $ return true; } +function gwvp_GetRepoId($reponame) +{ + $conn = gwvp_ConnectDB(); + + $sql = "select repos_id from repos where repos_name='$reponame'"; + + $res = $conn->query($sql); + + $return = false; + foreach($res as $u_res) { + $return = $u_res["repos_id"]; + } + + return $return; + +} + +function gwvp_GetRepo($rid) +{ + $conn = gwvp_ConnectDB(); + + $sql = "select * from repos where repos_id='$rid'"; + + $res = $conn->query($sql); + + $return = false; + foreach($res as $u_res) { + $return["id"] = $u_res["repos_id"]; + $return["name"] = $u_res["repos_name"]; + $return["description"] = $u_res["repos_description"]; + $return["owner"] = $u_res["repos_owner"]; + } + + return $return; +} + function gwvp_GetRepoList() { $conn = gwvp_ConnectDB(); @@ -937,7 +1018,7 @@ function gwvp_getRepoPermissions($repoid) $returns = false; $rn = 0; foreach($res as $perm) { - $returns[$rn]["permid"] = $perm["repoperms_id"]; + $returns[$rn]["id"] = $perm["repoperms_id"]; $returns[$rn]["type"] = $perm["repoperms_type"]; $returns[$rn]["ref"] = $perm["repoperms_ref"]; $rn++; @@ -946,10 +1027,21 @@ function gwvp_getRepoPermissions($repoid) return $returns; } +function gwvp_removeRepoPermission($permid) +{ + $conn = gwvp_ConnectDB(); + + $sql = "delete from repoperms where repoperms_id='$permid'"; + error_log("attempting: \"$sql\""); + + return $conn->query($sql); +} + function gwvp_addRepoPermission($repoid, $permtype, $permref) { $conn = gwvp_ConnectDB(); + error_log("PERMS: $repoid, $permtype, $permref"); $sql = "insert into repoperms values(null, '$repoid', '$permtype', '$permref')"; return $conn->query($sql);