function gwvp_RepoAdminCallMe()
{
+
+ error_log("in repoadmin callme");
if(isset($_REQUEST["q"])) {
$query = $_REQUEST["q"];
$qspl = explode("/", $query);
if(isset($qspl[0]) && isset($qspl[1])) {
if($qspl[0] == "admin" && $qspl[1] == "repos") {
+ error_log("i got here, where next?");
if(isset($qspl[2])) {
switch($qspl[2]) {
case "create":
global $BASE_URL;
$reponame = $_REQUEST["reponame"];
+ $repodesc = $_REQUEST["repodesc"];
- if(gwvp_createGitRepo($reponame)) {
+ // TODO: this code is bollocks, need to redo
+ 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($_FILES["bundlefile"]["size"] > 0) { // if(isset($_FILES["bundlefile"]["size"])) <--- this needs to happen here TODO
+ error_log("bundle file tmpname is ".$_FILES["bundlefile"]["tmp_name"]);
+ gwvp_createGitRepo($reponame, $_FILES["bundlefile"]["tmp_name"]);
+ gwvp_SendMessage("info", "Repo, $reponame, created");
+ } else if(gwvp_createGitRepo($reponame)) {
gwvp_SendMessage("info", "Repo, $reponame, created");
- header("Location: $BASE_URL/admin/repos");
}
+ header("Location: $BASE_URL/admin/repos");
}
{
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 "<form method=\"post\" enctype=\"multipart/form-data\" action=\"$BASE_URL/admin/repos/docreate\">";
echo "<table>";
- echo "<tr><td>Repository Name</td><td><input type=\"text\" name=\"reponame\"></td></tr>";
- echo "<tr><td>Repository Description</td><td><input type=\"text\" name=\"repodesc\"></td></tr>";
+ echo "<tr><td>Repository Name</td><td bgcolor=\"#eeeeee\"><input type=\"text\" name=\"reponame\" value=\"$reponameobv\"></td></tr>";
+ echo "<tr><td>Repository Description</td><td bgcolor=\"#eeeeee\"><input type=\"text\" name=\"repodesc\" value=\"$repodescobv\"></td></tr>";
+ echo "<tr><td>Repository Bundle</td><td bgcolor=\"#eeeeee\"><input type=\"file\" name=\"bundlefile\"></td><td><i>Create a bundle for pro-creating the git repository (export your git bundle with \"git bundle create /tmp/filename --branches\")</i></td></tr>";
+
+ echo "<tr><td>Default Permisison Set</td><td bgcolor=\"#eeeeee\">";
+
+ echo "<table>";
+ echo "<tr><td><input type=\"checkbox\" name=\"permsall\" checked></td><td>Anyone Can Read, Only you can write</td></tr>";
+ echo "<tr><td><input type=\"checkbox\" name=\"permsmeonly\"></td><td>Anyone can see the repository exists, but only you can read or write to it</td></tr>";
+ echo "<tr><td><input type=\"checkbox\" name=\"permsinvisible\"></td><td>Repository only visible to you</td></tr>";
echo "</table>";
- echo "<h3>Permissions</h3>";
-
- // no, this bit is wrong, need to come up with something better
- echo "<table border=\"1\">";
- echo "<tr><td>Anonymous</td><td>Authenticated</td><td>Group</td></tr>";
- echo "<tr><td valign=\"top\">";
- // anon permission dialog
- echo "<input type=\"checkbox\" name=\"anonvisible\"> Can anonymous users see the repo?<br>";
- echo "<input type=\"checkbox\" name=\"anonclone\"> Can anonymous user clone from the repo (read-only)?<br>";
- echo "</td><td>";
- // authed permission dialog
- echo "<input type=\"checkbox\" name=\"authdvisible\"> Can any authenticated user see the repo?<br>";
- echo "<input type=\"checkbox\" name=\"authdvisible\"> Can any authenticated user clone from the repo (read-only)?<br>";
- echo "<input type=\"checkbox\" name=\"authdvisible\"> Can any authenticated user clone *TO* the repo (read/write)?<br>";
- echo "</td><td>";
- // group permissions dialog
- echo "<input type=\"checkbox\" name=\"authdvisible\"> Can any authenticated user see the repo?<br>";
- echo "<input type=\"checkbox\" name=\"authdvisible\"> Can any authenticated user clone from the repo (read-only)?<br>";
- echo "<input type=\"checkbox\" name=\"authdvisible\"> Can any authenticated user clone *TO* the repo (read/write)?<br>";
-
- echo "</td></tr>";
+
+
+ echo "</td><td><i>Permissions can be changed in repository management later</i></td></tr>";
+
echo "</table>";
+
+
+
+
+
echo "<input type=\"submit\" name=\"create\" value=\"Create\"><br>";
echo "</form>";
}
// 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>";
+ echo "<table border=\"1\"><tr><th>Repo Name</th><th>Repo Description</th><th>Repo Owner</th><th>Control</th></tr>";
foreach($rlist as $u_res) {
+ $rid = $u_res["id"];
$rname = $u_res["name"];
$rdesc = $u_res["description"];
- $rown = $u_res["owner"];
- echo "<tr><td>$rname</td><td>$rdesc</td><td>$rown</td></tr>";
+ $rown = gwvp_getUserName($u_res["owner"]);
+ echo "<tr><td>$rname</td><td>$rdesc</td><td>$rown</td><td><a href=\"$BASE_URL/admin/repos/modify/$rid\">Modify</a></td></tr>";
}
echo "</table>";