added a modify line to groups for admin users
[gwvp.git] / gwvplib / gwvpdatabase.php
index c2d37cf..56b5247 100644 (file)
@@ -16,7 +16,7 @@ function gwvp_dbCreateSQLiteStructure($dbloc)
            "users_id" INTEGER PRIMARY KEY AUTOINCREMENT,
            "user_full_name" TEXT,
            "user_password" TEXT,
-           "user_nickname" TEXT,
+           "user_username" TEXT,
            "user_email" TEXT,
            "user_desc" TEXT,
            "user_status" INTEGER
@@ -106,19 +106,19 @@ function gwvp_ConnectDB()
        return $DB_CONNECTION;
 }
 
-function gwvp_createUser($email, $fullname, $password, $nick, $desc, $status)
+function gwvp_createUser($email, $fullname, $password, $username, $desc, $status)
 {
        $conn = gwvp_ConnectDB();
        
        // TODO: change from sha1
        $shapass = sha1($password);
        //error_log("Create user called with $email");
-       $conn->query("insert into users values (null, '$fullname', '$shapass', '$nick', '$email', '$desc', '$status')");
+       $conn->query("insert into users values (null, '$fullname', '$shapass', '$username', '$email', '$desc', '$status')");
        /*
         *          "users_id" INTEGER PRIMARY KEY AUTOINCREMENT,
            "user_full_name" TEXT,
            "user_password" TEXT,
-           "user_nickname" TEXT,
+           "user_username" TEXT,
            "user_email" TEXT,
            "user_desc" TEXT,
            "user_status" INTEGER
@@ -126,6 +126,33 @@ function gwvp_createUser($email, $fullname, $password, $nick, $desc, $status)
         */
 }
 
+function gwvp_getUser($username=null, $email=null, $id=null)
+{
+       $conn = gwvp_ConnectDB();
+       
+       if($username != null) {
+               $res = $conn->query("select * from users where user_username='$username'");
+       } else if($email != null) {
+               $res = $conn->query("select * from users where user_email='$email'");
+       } else if($id != null) {
+               $res = $conn->query("select * from users where users_id='$id'");
+       } else return false;
+
+       $returns = false;
+       foreach($res as $u_res) {
+               $returns["id"] = $u_res["users_id"];
+               $returns["fullname"] = $u_res["user_full_name"];
+               $returns["password"] = $u_res["user_password"];
+               $returns["username"] = $u_res["user_username"];
+               $returns["email"] = $u_res["user_email"];
+               $returns["desc"] = $u_res["user_desc"];
+               $returns["status"] = $u_res["user_status"];
+       }
+       
+       return $returns;
+       
+}
+
 function gwvp_getUsers()
 {
        $conn = gwvp_ConnectDB();
@@ -138,7 +165,7 @@ function gwvp_getUsers()
                $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"];
@@ -311,11 +338,15 @@ function gwvp_getGroupId($groupname)
        return $return;
 }
 
-function gwvp_getUserId($useremail)
+function gwvp_getUserId($useremail=null, $username = null)
 {
        $conn = gwvp_ConnectDB();
        
-       $sql = "select users_id from users where user_email='$useremail'";
+       if($useremail != null) {
+               $sql = "select users_id from users where user_email='$useremail'";
+       } else if($username != null) {
+               $sql = "select users_id from users where user_username='$username'";
+       } else return false;
        
        $res = $conn->query($sql);
        $return = false;
@@ -388,12 +419,19 @@ function gwvp_IsGroupMember($email, $groupname)
        if($result == 1) return true;
 }
 
-function gwvp_IsUserAdmin($email)
+function gwvp_IsUserAdmin($email=null, $username = null)
 {
        $conn = gwvp_ConnectDB();
        
-       $id = gwvp_getUserId($email);
-       $sql = "select groupmember_groupid from group_membership where groupmember_userid='$id'";
+       
+       // TODO: clean this up, this should be a single query - idiot
+       if($email != null) {
+               $id = gwvp_getUserId($email);
+               $sql = "select groupmember_groupid from group_membership where groupmember_userid='$id'";
+       } else if($username != null) {
+               $id = gwvp_getUserId(null, $username);
+               $sql = "select groupmember_groupid from group_membership where groupmember_userid='$id'";
+       } else return false;
        
        $res = $conn->query($sql);
        $rn = 0;
@@ -423,13 +461,13 @@ function gwvp_IsUserAdmin($email)
        return false;
 }
 
-function gwvp_ModifyUser($userid, $email=null, $fullname=null, $password=null, $nickname=null, $desc=null, $status=null)
+function gwvp_ModifyUser($userid, $email=null, $fullname=null, $password=null, $username=null, $desc=null, $status=null)
 {
        /*
         *          "users_id" INTEGER PRIMARY KEY AUTOINCREMENT,
            "user_full_name" TEXT,
            "user_password" TEXT,
-           "user_nickname" TEXT,
+           "user_username" TEXT,
            "user_email" TEXT,
            "user_desc" TEXT,
            "user_status" INTEGER
@@ -454,8 +492,8 @@ function gwvp_ModifyUser($userid, $email=null, $fullname=null, $password=null, $
                $conn->query($sql);
        }
 
-       if($nickname != null) {
-               $sql = "update users set user_nickname='$nickname' where users_id='$userid'";
+       if($username != null) {
+               $sql = "update users set user_username='$username' where users_id='$userid'";
                $conn->query($sql);
        }