addded user details to top of repo view
[gwvp-mini.git] / gwvpmini / gwvpmini_view.php
1 <?php
2 global $HOME_PAGE_PROVIDERS;
3
4
5 $CALL_ME_FUNCTIONS["repoview"] = "gwvpmini_RepoViewCallMe";
6
7
8
9 function gwvpmini_RepoViewCallMe()
10 {
11         global $repo_view_call;
12         
13         error_log("in admin callme");\r
14         if(isset($_REQUEST["q"])) {\r
15                 $query = $_REQUEST["q"];\r
16                 $qspl = explode("/", $query);\r
17                 if(isset($qspl[0])) {\r
18                         if($qspl[0] == "view") {\r
19                                 if(isset($qspl[1])) {
20                                         $repo_view_call = $qspl[1];
21                                         return "gwvpmini_RepoViewPage";\r
22                                 } else return false;\r
23                         } else return false;\r
24                 }\r
25                 else return false;\r
26         }\r
27 \r
28         return false;\r
29         
30         
31 }
32
33 function gwvpmini_RepoViewPage()\r
34 {
35         global $repo_view_call, $MENU_ITEMS, $BASE_URL;\r
36         \r
37         $MENU_ITEMS["40thisrepo"]["text"] = "$repo_view_call";\r
38         $MENU_ITEMS["40thisrepo"]["link"] = "$BASE_URL/view/$repo_view_call";\r
39         \r
40         gwvpmini_goMainPage("gwvpmini_RepoViewPageBody");\r
41 }
42
43 function gwvpmini_RepoViewPageBody()
44 {
45         global $repo_view_call, $MENU_ITEMS, $BASE_URL;
46         
47         $repo_base = gwvpmini_getConfigVal("repodir");\r
48
49         if($_SERVER["SERVER_PORT"] == 443) $proto="https://";
50         else $proto = "http://";
51         $sname = $_SERVER["SERVER_NAME"];
52         
53         $owner = gwvpmini_GetRepoOwnerDetailsFromName($repo_view_call);
54         
55         $owner_name = $owner["username"];
56         
57         error_log("STUFF:".print_r($owner,true));
58         
59         echo "<br><h2>".get_gravatar($owner["email"], 30, 'mm', 'g', true)."$repo_view_call - $owner_name</h2>";
60         echo "<b>Desc</b><br>";
61         echo "<textarea rows=1 cols=100>git clone $proto$sname$BASE_URL/git/$repo_view_call.git</textarea><br>";
62         //echo "command: git log --git-dir=$repo_base/$repo_view_call.git --pretty=format:\"%H\" -10";
63         $rs = popen("git --git-dir=$repo_base/$repo_view_call.git log --pretty=format:\"%H\" -10", "r");
64         $commitids = array();
65         $i = 0;
66         if($rs) {
67                 while(!feof($rs)) {
68                         $flin = fgets($rs);
69                         if($flin !== false) {
70                                 $commitids[$i] = trim($flin);
71                                 $i++;
72                         }
73                 }
74                 fclose($rs);
75         } else {
76                 echo "No commit logs yet<br>";
77                 $commitids = false;
78         }
79         
80         if($commitids != false) {
81                 echo "<hr>Commits<br>";
82                 echo "<table border=\"1\">";
83                 echo "<tr><th>Committed By</th><th>Date</th><th>Commit Log Entry</th></tr>";
84                 foreach($commitids as $ids) {
85                         $rs = popen("git --git-dir=$repo_base/$repo_view_call.git log --pretty=format:\"%at%n%ce%n%an%n%s\" $ids -1", "r");
86                         if($rs) {
87                                 $flin1 = trim(fgets($rs));
88                                 $flin2 = trim(fgets($rs));
89                                 $flin3 = trim(fgets($rs));
90                                 while(!feof($rs)) {
91                                         $flin4 = fread($rs, 8192);
92                                 }
93                                 $flon =  gwvpmini_emailToUserLink($flin2);
94                                 if(!$flon) {
95                                         $flon = "$flin3 (external)";
96                                 }
97                         }
98                         echo "<tr><td>".get_gravatar($flin2, 18, 'mm', 'g', true)."$flon</td><td>$flin1</td><td>$flin4</td></tr>";
99                 }
100                 echo "</table>";
101         }
102 }
103 \r
104
105 ?>