}\r
\r
return $DB_CONNECTION;\r
+}
+
+function gwvpmini_AddUser($username, $password, $fullname, $email, $desc, $level, $status)
+{
+ \r
+
+ \r
+ $conn = gwvpmini_ConnectDB();\r
+ \r
+ $sql = "insert into 'users' values ( null, '$fullname', '".sha1($password)."', '$username', '$email', '$desc', '$level', '$status')";\r
+ \r
+ $res = $conn->query($sql);
+ if(!$res) return -1;
+
+ $sql = "select user_id from users where user_username='$username'";\r
+ $res = $conn->query($sql);\r
+ if(!$res) return -1;\r
+
+ $retval = -1;
+ foreach($res as $row) {
+ $retval = $row[0];
+ }
+
+ return $retval;
}\r
"user_email" TEXT,\r
"user_desc" TEXT,
"user_level" TEXT,\r
- "user_status" TEXT\r
+ "user_status" TEXT,
+ UNIQUE(user_username)\r
)';\r
\r
$initialuser_admin = '
"repos_id" INTEGER PRIMARY KEY AUTOINCREMENT,\r
"repos_name" TEXT,\r
"repos_description" TEXT,\r
- "repos_owner" INTEGER\r
+ "repos_owner" INTEGER,
+ "repos_readperms" TEXT,
+ UNIQUE(repos_name)\r
)';\r
\r
// this looks like null, <repoid>, <read|visible|write>, user:<uid>|group:<gid>|authed|anon\r
return $retval;
}
+
+function gwvpmini_GetRepoDescFromName($reponame)\r
+{\r
+\r
+ /*\r
+ * $reposql = '\r
+ CREATE TABLE "repos" (\r
+ "repos_id" INTEGER PRIMARY KEY AUTOINCREMENT,\r
+ "repos_name" TEXT,\r
+ "repos_description" TEXT,\r
+ "repos_owner" INTEGER\r
+ )';\r
+\r
+ */\r
+\r
+ $conn = gwvpmini_ConnectDB();\r
+\r
+ $sql = "select repos_description from repos where repos_name='$reponame'";
+ error_log("desc for name sql: $sql");\r
+\r
+ $res = $conn->query($sql);\r
+\r
+ $retval = -1;\r
+ if(!$res) return -1;\r
+ foreach($res as $row) {\r
+ $retval = $row[0];\r
+ }\r
+\r
+ return $retval;\r
+}
+\r
+function gwvpmini_GetRepoOwnerDetailsFromName($reponame)\r
+{\r
+\r
+ /*\r
+ * $reposql = '\r
+ CREATE TABLE "repos" (\r
+ "repos_id" INTEGER PRIMARY KEY AUTOINCREMENT,\r
+ "repos_name" TEXT,\r
+ "repos_description" TEXT,\r
+ "repos_owner" INTEGER\r
+ )';
+
+ "user_id" INTEGER PRIMARY KEY AUTOINCREMENT,
+ "user_full_name" TEXT,
+ "user_password" TEXT,
+ "user_username" TEXT,
+ "user_email" TEXT,
+ "user_desc" TEXT,
+ "user_level" TEXT,
+ "user_status" TEXT,
+ UNIQUE(user_username)\r
+\r
+ */\r
+\r
+ $conn = gwvpmini_ConnectDB();\r
+\r
+ $sql = "select users.* from repos,users where repos_name='$reponame' and repos_owner=user_id";\r
+\r
+ $res = $conn->query($sql);\r
+\r
+ $retval = -1;\r
+ if(!$res) return -1;\r
+ foreach($res as $row) {
+ $retval = array();
+ error_log("STUFF2: ".print_r($row,true));\r
+ $retval["id"] = $row["user_id"];
+ $retval["fullname"] = $row["user_full_name"];
+ $retval["username"] = $row["user_username"];
+ $retval["email"] = $row["user_email"];
+ $retval["desc"] = $row["user_desc"];
+ $retval["level"] = $row["user_level"];
+ $retval["status"] = $row["user_status"];\r
+ }\r
\r
+ return $retval;\r
+}\r
\r
function gwvpmini_setConfigVal($confname, $confval)\r
{\r
return $conn->query($sql);\r
}
-function gwvpmini_AddRepo($name, $desc, $ownerid)
+function gwvpmini_AddRepo($name, $desc, $ownerid, $perms = "perms-public")
{
error_log("addrepo in db for $name, $desc, $ownerid");
$conn = gwvpmini_ConnectDB();\r
\r
- $sql = "insert into repos values (null, '$name', '$desc', '$ownerid')";\r
+ $sql = "insert into repos values (null, '$name', '$desc', '$ownerid', '$perms')";\r
\r
$conn->query($sql);\r
}
return $retval;
}
+function gwvpmini_GetUserNameFromEmail($email)\r
+{\r
+ $conn = gwvpmini_ConnectDB();\r
+\r
+ $sql = "select user_username from users where user_email='$email'";\r
+\r
+ error_log("username sql $sql");\r
+\r
+ $res = $conn->query($sql);\r
+\r
+ $retval = false;\r
+ foreach($res as $row) {\r
+ $retval = $row[0];\r
+ }\r
+\r
+ return $retval;\r
+}
function gwvpmini_GetOwnedRepos($username)\r
{
/*
return $lev;
}
-function gwvpmini_GetUsers()
+function gwvpmini_GetUsers($startat = 0, $num = 10)
{
$conn = gwvpmini_ConnectDB();
*/\r
\r
- $sql = "select * from users";
+ $sql = "select * from users where user_id>'$startat' order by user_id asc limit $num";
$res = $conn->query($sql);
return $retval;
}\r
+function gwvpmini_GetRepos($startat=0, $num=200)\r
+{\r
+ $conn = gwvpmini_ConnectDB();\r
+ \r
+ /*\r
+ * CREATE TABLE "repos" (
+ "repos_id" INTEGER PRIMARY KEY AUTOINCREMENT,
+ "repos_name" TEXT,
+ "repos_description" TEXT,
+ "repos_owner" INTEGER
+ )';
+ \r
+ */\r
+ \r
+ $sql = "select * from repos where repos_id > '$startat' order by repos_id asc limit $num";\r
+ \r
+ $res = $conn->query($sql);\r
+ \r
+ $retval = false;\r
+ foreach($res as $row) {\r
+ $id = $row["repos_id"];\r
+ $retval[$id]["name"] = $row["repos_name"];\r
+ $retval[$id]["desc"] = $row["repos_description"];\r
+ $retval[$id]["owner"] = $row["repos_owner"];\r
+ }\r
+ \r
+ return $retval;\r
+ \r
+ \r
+}\r
+
+function gwvpmini_GetNRepos()
+{
+ $conn = gwvpmini_ConnectDB();
+
+ $sql = "select count(*) from repos";
+
+ $res = $conn->query($sql);
+
+ $retval = -1;
+ foreach($res as $row) {
+ $retval = $row[0];
+ }
+
+ return $retval;
+}
+
+\r
+function gwvpmini_GetNUsers()\r
+{\r
+ $conn = gwvpmini_ConnectDB();\r
+\r
+ $sql = "select count(*) from users";\r
+\r
+ $res = $conn->query($sql);\r
+\r
+ $retval = -1;\r
+ foreach($res as $row) {\r
+ $retval = $row[0];\r
+ }\r
+\r
+ return $retval;\r
+}\r
+
?>
\ No newline at end of file