replacing the cli cmds with variables and configuration in config.php
[gwvp-mini.git] / gwvpmini / gwvpmini_view.php
index b47c152..92ac981 100644 (file)
@@ -10,7 +10,7 @@ function gwvpmini_RepoViewCallMe()
 {
        global $repo_view_call;
        
-       error_log("in admin callme");\r
+       // error_log("in admin callme");\r
        if(isset($_REQUEST["q"])) {\r
                $query = $_REQUEST["q"];\r
                $qspl = explode("/", $query);\r
@@ -36,6 +36,9 @@ function gwvpmini_RepoViewCallMe()
                        if($qspl[0] == "reporemovecontribs") {
                                return "gwvpmini_RemoveRepoContributor";
                        }
+                       if($qspl[0] == "repoupdatedesc") {
+                               return "gwvpmini_RepoUpdateDescription";
+                       }
                        return false;\r
                }\r
                else return false;\r
@@ -73,6 +76,9 @@ function gwvpmini_RepoViewPageBody()
        
        $owner = gwvpmini_GetRepoOwnerDetailsFromName($repo_view_call);
        $desc = gwvpmini_GetRepoDescFromName($repo_view_call);
+       $editdesc = preg_replace("/\<br\>/", "\n", $desc);
+       
+       $rid = gwvpmini_GetRepoId($repo_view_call);
        
        $owner_name = $owner["username"];
        
@@ -96,8 +102,8 @@ function gwvpmini_RepoViewPageBody()
        }
        
        
-       error_log("STUFF:".print_r($owner,true));
-       if($bperms != "a") $login = $_SESSION["username"]."@password:";
+       // error_log("STUFF:".print_r($owner,true));
+       if($bperms != "a") $login = $_SESSION["username"].":password@";
        else $login = "";
        $cloneurl = "git clone $proto$login$sname$BASE_URL/git/$repo_view_call.git";
        echo "<textarea rows=1 cols=".strlen($cloneurl).">$cloneurl</textarea><br>";
@@ -105,10 +111,13 @@ function gwvpmini_RepoViewPageBody()
        if($owner_view) $owner_extra = " (YOU)";
        else $owner_extra = "";\r
        
-       echo "<h2>".get_gravatar($owner["email"], 30, 'mm', 'g', true)."$repo_view_call - $owner_name$owner_extra</h2>";
-       echo "<b>$desc</b><br>";
+       echo "<h2>".gwvpmini_HtmlGravatar($owner["email"], 30)."$repo_view_call - $owner_name$owner_extra</h2>";
+       if(!$owner_view) echo "$desc<br>";
        
        if($owner_view) {
+               echo "<form method=\"post\" action=\"$BASE_URL/repoupdatedesc/$repo_view_call\">";\r
+               echo "<h3>Description<h3><textarea name=\"desc\" cols=\"120\" rows=\"5\">$editdesc</textarea><br><input type=\"submit\" name=\"Update\" value=\"Update\">";\r
+               echo "</form><br>";\r
                
                
 
@@ -120,7 +129,7 @@ function gwvpmini_RepoViewPageBody()
                if($bperms == "r") $regd = " selected";\r
                if($bperms == "x") $expl = " selected";\r
                
-               error_log("BPERMS: $bperms");
+               // error_log("BPERMS: $bperms");
                
                if($bperms == "x") $cspan = 3;
                else $cspan = 2;
@@ -141,7 +150,7 @@ function gwvpmini_RepoViewPageBody()
                        foreach($bperms_f as $key=>$val) {
                                if($val == 1) {
                                        $dets = gwvpmini_getUser(null, null, $key);
-                                       echo get_gravatar($dets["email"], 18, 'mm', 'g', true)." <input type=\"checkbox\" name=\"$key\"> ".$dets["username"]."<br>";
+                                       echo gwvpmini_HtmlGravatar($dets["email"], 18, " ")."<input type=\"checkbox\" name=\"$key\"> ".$dets["username"]."<br>";
                                        $nl = 1;
                                }
                        }
@@ -158,7 +167,7 @@ function gwvpmini_RepoViewPageBody()
                foreach($bperms_f as $key=>$val) {\r
                        if($val == 2) {\r
                                $dets = gwvpmini_getUser(null, null, $key);\r
-                               echo get_gravatar($dets["email"], 18, 'mm', 'g', true)." <input type=\"checkbox\" name=\"$key\"> ".$dets["username"]."<br>";
+                               echo gwvpmini_HtmlGravatar($dets["email"], 18, " ")."<input type=\"checkbox\" name=\"$key\"> ".$dets["username"]."<br>";
                                $nl = 1;\r
                        }\r
                }\r
@@ -169,6 +178,7 @@ function gwvpmini_RepoViewPageBody()
                echo "<input type=\"text\" name=\"contribusername\"> <input type=\"submit\" name=\"Add\" value=\"Add\">";
                echo "</form><br>";
                echo "</td></tr></table>";
+               
        }
        //echo "command: git log --git-dir=$repo_base/$repo_view_call.git --pretty=format:\"%H\" -10";
        $rs = popen("git --git-dir=$repo_base/$repo_view_call.git log --pretty=format:\"%H\" -10", "r");
@@ -205,7 +215,8 @@ function gwvpmini_RepoViewPageBody()
                                        $flon = "$flin3 (external)";
                                }
                        }
-                       echo "<tr><td>".get_gravatar($flin2, 18, 'mm', 'g', true)."$flon</td><td>$flin1</td><td>$flin4</td></tr>";
+                       $timedifftxt = gwvpmini_TimeDiffText($flin1);
+                       echo "<tr><td>".gwvpmini_HtmlGravatar($flin2, 18)."$flon</td><td>$timedifftxt</td><td>$flin4</td></tr>";
                }
                echo "</table>";
        } else {
@@ -220,12 +231,12 @@ function gwvpmini_UpdateRepoBasePerms()
        if(isset($_REQUEST["q"])) {\r
                $query = $_REQUEST["q"];\r
                $qspl = explode("/", $query);
-               error_log("PLOOP:qview".print_r($qspl, true));\r
+               // error_log("PLOOP:qview".print_r($qspl, true));\r
        }
        
        if(isset($qspl[1])) $repo_view_call = $qspl[1];
        else {
-               error_log("PLOOP: no repo name");
+               // error_log("PLOOP: no repo name");
                header("Location: $BASE_URL/view/$repo_view_call");
                return;
        }
@@ -248,9 +259,9 @@ function gwvpmini_UpdateRepoBasePerms()
        
        if(!$owner_view) {
                gwvpmini_SendMessage("error", "failure updating permission for repo");
-               error_log("PLOOP: attempt to update from non-owner");
+               // error_log("PLOOP: attempt to update from non-owner");
        } else {
-               error_log("PLOOP: updateds: ".print_r($_REQUEST, true));
+               // error_log("PLOOP: updateds: ".print_r($_REQUEST, true));
                gwvpmini_ChangeRepoPerm($rid, "b", $_REQUEST["base_perms"]);
                gwvpmini_SendMessage("info", "Base permissions for repo updated");
        }\r
@@ -265,12 +276,12 @@ function gwvpmini_AddRepoReader()
        if(isset($_REQUEST["q"])) {\r
                $query = $_REQUEST["q"];\r
                $qspl = explode("/", $query);\r
-               error_log("PLOOP:qview".print_r($qspl, true));\r
+               // error_log("PLOOP:qview".print_r($qspl, true));\r
        }\r
        \r
        if(isset($qspl[1])) $repo_view_call = $qspl[1];\r
        else {\r
-               error_log("PLOOP: no repo name");
+               // error_log("PLOOP: no repo name");
                // TODO: btw, this makes no sense\r
                header("Location: $BASE_URL/view/$repo_view_call");\r
                return;\r
@@ -291,7 +302,7 @@ function gwvpmini_AddRepoReader()
        }
        if(!$owner_view) {
                gwvpmini_SendMessage("error", "failure updating permission for repo");\r
-               error_log("PLOOP: attempt to update from non-owner");
+               // error_log("PLOOP: attempt to update from non-owner");
                header("Location: $BASE_URL/view/$repo_view_call");
                return;
        }\r
@@ -327,12 +338,12 @@ function gwvpmini_AddRepoContributor()
        if(isset($_REQUEST["q"])) {\r
                $query = $_REQUEST["q"];\r
                $qspl = explode("/", $query);\r
-               error_log("PLOOP:qview".print_r($qspl, true));\r
+               // error_log("PLOOP:qview".print_r($qspl, true));\r
        }\r
        \r
        if(isset($qspl[1])) $repo_view_call = $qspl[1];\r
        else {\r
-               error_log("PLOOP: no repo name");\r
+               // error_log("PLOOP: no repo name");\r
                // TODO: btw, this makes no sense\r
                header("Location: $BASE_URL/view/$repo_view_call");\r
                return;\r
@@ -353,7 +364,7 @@ function gwvpmini_AddRepoContributor()
        }\r
        if(!$owner_view) {\r
                gwvpmini_SendMessage("error", "failure updating permission for repo");\r
-               error_log("PLOOP: attempt to update from non-owner");\r
+               // error_log("PLOOP: attempt to update from non-owner");\r
                header("Location: $BASE_URL/view/$repo_view_call");\r
                return;\r
        }\r
@@ -388,12 +399,12 @@ function gwvpmini_RemoveRepoContributor()
        if(isset($_REQUEST["q"])) {\r
                $query = $_REQUEST["q"];\r
                $qspl = explode("/", $query);\r
-               error_log("PLOOP:qview".print_r($qspl, true));\r
+               // error_log("PLOOP:qview".print_r($qspl, true));\r
        }\r
        \r
        if(isset($qspl[1])) $repo_view_call = $qspl[1];\r
        else {\r
-               error_log("PLOOP: no repo name");\r
+               // error_log("PLOOP: no repo name");\r
                // TODO: btw, this makes no sense\r
                header("Location: $BASE_URL/view/$repo_view_call");\r
                return;\r
@@ -413,7 +424,7 @@ function gwvpmini_RemoveRepoContributor()
        }\r
        if(!$owner_view) {\r
                gwvpmini_SendMessage("error", "failure updating permission for repo");\r
-               error_log("PLOOP: attempt to update from non-owner");\r
+               // error_log("PLOOP: attempt to update from non-owner");\r
                header("Location: $BASE_URL/view/$repo_view_call");\r
                return;\r
        }
@@ -445,12 +456,12 @@ function gwvpmini_RemoveRepoReader()
        if(isset($_REQUEST["q"])) {\r
                $query = $_REQUEST["q"];\r
                $qspl = explode("/", $query);\r
-               error_log("PLOOP:qview".print_r($qspl, true));\r
+               // error_log("PLOOP:qview".print_r($qspl, true));\r
        }\r
 \r
        if(isset($qspl[1])) $repo_view_call = $qspl[1];\r
        else {\r
-               error_log("PLOOP: no repo name");\r
+               // error_log("PLOOP: no repo name");\r
                // TODO: btw, this makes no sense\r
                header("Location: $BASE_URL/view/$repo_view_call");\r
                return;\r
@@ -470,7 +481,7 @@ function gwvpmini_RemoveRepoReader()
        }\r
        if(!$owner_view) {\r
                gwvpmini_SendMessage("error", "failure updating permission for repo");\r
-               error_log("PLOOP: attempt to update from non-owner");\r
+               // error_log("PLOOP: attempt to update from non-owner");\r
                header("Location: $BASE_URL/view/$repo_view_call");\r
                return;\r
        }\r
@@ -491,6 +502,52 @@ function gwvpmini_RemoveRepoReader()
        header("Location: $BASE_URL/view/$repo_view_call");\r
        return;\r
 \r
+}
+
+function gwvpmini_RepoUpdateDescription()
+{
+       global $BASE_URL, $repo_view_call;\r
+       \r
+       if(isset($_REQUEST["q"])) {\r
+               $query = $_REQUEST["q"];\r
+               $qspl = explode("/", $query);\r
+               // error_log("PLOOP:qview".print_r($qspl, true));\r
+       }\r
+       \r
+       if(isset($qspl[1])) $repo_view_call = $qspl[1];\r
+       else {\r
+               // error_log("PLOOP: no repo name");\r
+               // TODO: btw, this makes no sense\r
+               header("Location: $BASE_URL/view/$repo_view_call");\r
+               return;\r
+       }\r
+       \r
+       \r
+       $owner = gwvpmini_GetRepoOwnerDetailsFromName($repo_view_call);\r
+       $desc = gwvpmini_GetRepoDescFromName($repo_view_call);\r
+       \r
+       $owner_name = $owner["username"];\r
+       \r
+       $owner_view = false;\r
+       if(isset($_SESSION["id"])) {\r
+               if($owner["id"] == $_SESSION["id"]) {\r
+                       $owner_view = true;\r
+               }\r
+       }\r
+       if(!$owner_view) {\r
+               gwvpmini_SendMessage("error", "failure updating description for repo");\r
+               // error_log("PLOOP: attempt to update from non-owner");\r
+               header("Location: $BASE_URL/view/$repo_view_call");\r
+               return;\r
+       }\r
+       \r
+       $rid = gwvpmini_GetRepoId($repo_view_call);\r
+       \r
+       gwvpmini_UpdateRepoDescription($rid, $_REQUEST["desc"]);
+               \r
+       gwvpmini_SendMessage("info", "Repo description updated");\r
+       header("Location: $BASE_URL/view/$repo_view_call");\r
+       return;
 }\r
 
 ?>
\ No newline at end of file