{
if(isset($_REQUEST["q"])) {
$query = $_REQUEST["q"];
- if($query == "admin/repos") return "gwvp_RepoAdminPage";
+ $qspl = explode("/", $query);
+ if(isset($qspl[0]) && isset($qspl[1])) {
+ if($qspl[0] == "admin" && $qspl[1] == "repos") {
+ if(isset($qspl[2])) {
+ switch($qspl[2]) {
+ case "create":
+ return "gwvp_CreateRepoPage";
+ break;
+ case "docreate":
+ return "gwvp_DoCreateRepoPage";
+ break;
+ default:
+ return "gwvp_RepoAdminPage";
+ }
+ } else {
+ return "gwvp_RepoAdminPage";
+ }
+ }
+ }
else return false;
}
gwvp_goMainPage("gwvp_RepoAdminPageBody");
}
+function gwvp_CreateRepoPage()
+{
+ gwvp_goMainPage("gwvp_CreateRepoPageBody");
+}
+
+function gwvp_DoCreateRepoPage()
+{
+ global $BASE_URL;
+
+ $reponame = $_REQUEST["reponame"];
+ $repodesc = $_REQUEST["repodesc"];
+
+ if(gwvp_repoExists($reponame)) {
+ gwvp_SendMessage("error", "a repository with the name <b>\"$reponame\"</b> already exists");
+ header("Location: $BASE_URL/admin/repos/create?reponameobv=$reponame&repodescobv=$repodesc");
+ } else if(gwvp_createGitRepo($reponame)) {
+ gwvp_SendMessage("info", "Repo, $reponame, created");
+ header("Location: $BASE_URL/admin/repos");
+ }
+
+
+}
+
+function gwvp_CreateRepoPageBody()
+{
+ global $BASE_URL, $repo_base;
+
+ $reponameobv = "";
+ $repodescobv = "";
+
+ if(isset($_REQUEST["reponameobv"])) $reponameobv = $_REQUEST["reponameobv"];
+ if(isset($_REQUEST["repodescobv"])) $repodescobv = $_REQUEST["repodescobv"];
+
+ echo "<h2>Create a Repo</h2>";
+ echo "<form method=\"post\" action=\"$BASE_URL/admin/repos/docreate\">";
+ echo "<table>";
+ echo "<tr><td>Repository Name</td><td><input type=\"text\" name=\"reponame\" value=\"$reponameobv\"></td></tr>";
+ echo "<tr><td>Repository Description</td><td><input type=\"text\" name=\"repodesc\" value=\"$repodescobv\"></td></tr>";
+ echo "</table>";
+ echo "<input type=\"submit\" name=\"create\" value=\"Create\"><br>";
+ echo "</form>";
+}
function gwvp_RepoAdminPageBody()
{
- echo "I am a repo admin page body";
+ // first we need a menu
+ global $BASE_URL;
+
+ echo "<h2>Repo Management</h2>";
+ echo "<a href=\"$BASE_URL/admin/repos/create\">Create a Repo</a><br>";
+
+
+ // next we need a repo list - with perms checking - ug
+ // i must also remember that the home page will also contain a list of repos and that this page is solely for maintance
+ // and creation of repos - so i dont need to get over-worked about the info stored on this page outside of those activities
+ $rlist = gwvp_GetRepoList();
+ echo "<table border=\"1\"><tr><th>Repo Name</th><th>Repo Description</th><th>Repo Owner</th></tr>";
+ foreach($rlist as $u_res) {
+ $rname = $u_res["name"];
+ $rdesc = $u_res["description"];
+ $rown = $u_res["owner"];
+ echo "<tr><td>$rname</td><td>$rdesc</td><td>$rown</td></tr>";
+ }
+ echo "</table>";
+
+ return;
}
+
+
?>
\ No newline at end of file