replacing the cli cmds with variables and configuration in config.php
[gwvp-mini.git] / gwvpmini / gwvpmini_gitrepo.php
index e20532e..3c19507 100644 (file)
@@ -150,7 +150,8 @@ function gwvpmini_RepoMainPageBody()
 
 
 function gwvpmini_GitLogProvider()\r
-{\r
+{
+       global $cmd_line_tool,$git_cli_cmd,$php_cli_cmd;\r
        /*\r
         * The home page provider will:\r
        * 1) show the last 10 commits for every repository - though, excluding private repos\r
@@ -180,7 +181,7 @@ function gwvpmini_GitLogProvider()
                                echo "<tr><td><a href=\"$BASE_URL/view/$name\">$name</a></td><td>$desc</td>";
                                echo "<td>";
                                $repo_base = gwvpmini_getConfigVal("repodir");
-                               $cmd = "git --git-dir=\"$repo_base/$name.git\" log --all -1 2> /dev/null";
+                               $cmd = "$git_cli_cmd --git-dir=\"$repo_base/$name.git\" log --all -1 2> /dev/null";
                                // error_log("CMD: $cmd");
                                //system("$cmd");
                                $fls = popen($cmd, "r");
@@ -351,5 +352,51 @@ function gwvpmini_CompressCommitId($cid)
        
        return $compressedcid;
 }
+
+function gwvpmini_GetCommitDetail($repo, $commitid)
+{
+       global $cmd_line_tool,$git_cli_cmd,$php_cli_cmd;
+       
+       $repo_base = gwvpmini_getConfigVal("repodir");
+       
+       $cmd = "$git_cli_cmd --git-dir=$repo_base/$repo.git log $commitid -1 --format='%an'";   
+       exec($cmd, $commitername, $returnvar);
+
+       $cmd = "$git_cli_cmd --git-dir=$repo_base/$repo.git log $commitid -1 --format='%ae'";   
+       exec($cmd, $commiteremail, $returnvar);
+
+       $cmd = "$git_cli_cmd --git-dir=$repo_base/$repo.git log $commitid -1 --format='%ct'";   
+       exec($cmd, $commitertime, $returnvar);
+
+       $cmd = "$git_cli_cmd --git-dir=$repo_base/$repo.git log $commitid -1 --format='%s'";    
+       exec($cmd, $commiterlog, $returnvar);
+
+       $cmd = "$git_cli_cmd --git-dir=$repo_base/$repo.git log $commitid -1 --format='%b'";    
+       exec($cmd, $commiterbody, $returnvar);
+}
+
+function gwvpmini_GetCommitList($repo, $branch, $num=20)
+{
+       global $git_cli_cmd,$git_cli_cmd,$php_cli_cmd;
+       
+       $repo_base = gwvpmini_getConfigVal("repodir");
+       
+       $cmd = "$git_cli_cmd --git-dir=$repo_base/$repo.git log $commitid -1 --format='%an'";\r
+       exec($cmd, $commitername, $returnvar);\r
+       
+}
+
+function gwvpmini_GetRefList($repo)
+{
+       global $cmd_line_tool,$git_cli_cmd,$php_cli_cmd;
+       
+       $repo_base = gwvpmini_getConfigVal("repodir");
+
+       $cmd = "$git_cli_cmd --git-dir=$repo_base/$repo.git for-each-ref $commitid --format='%(objecttype):%(objectname):%(refname)'";
+       error_log("command was $cmd");
+       exec($cmd, $reflist, $returnvar);
+       
+       return $reflist;
+}
        
 ?>
\ No newline at end of file