[Fusionforge-commits] FusionForge branch 6.1 updated. v6.1beta2-24-g2ee79ee

Franck Villaume nerville at libremir.placard.fr.eu.org
Sun Mar 18 17:23:47 CET 2018


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "FusionForge".

The branch, 6.1 has been updated
       via  2ee79ee6a37d4f7212cebd179746e3fdca77f0f6 (commit)
      from  28314fad6a70ada89c552387b7debc06fbcd7d6d (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
https://scm.fusionforge.org/anonscm/gitweb/?p=fusionforge/fusionforge.git;a=commitdiff;h=2ee79ee6a37d4f7212cebd179746e3fdca77f0f6

commit 2ee79ee6a37d4f7212cebd179746e3fdca77f0f6
Author: Franck Villaume <franck.villaume at trivialdev.com>
Date:   Sun Mar 18 17:19:36 2018 +0100

    Project Widget: Latest Commits, fix multirepo & multiscm support

diff --git a/src/common/widget/Widget_ProjectLatestCommits.class.php b/src/common/widget/Widget_ProjectLatestCommits.class.php
index c69c499..04c7a1e 100644
--- a/src/common/widget/Widget_ProjectLatestCommits.class.php
+++ b/src/common/widget/Widget_ProjectLatestCommits.class.php
@@ -41,9 +41,17 @@ class Widget_ProjectLatestCommits extends Widget {
 		return _('5 Latest Commits');
 	}
 
-	public function _getLinkToCommit($project, $commit_id, $plugin_name) {
-		return util_make_link('/scm/browser.php?group_id='.$project->getID().'&scm_plugin='.$plugin_name.'&commit='.$commit_id, _('commit')._(': ').$commit_id);
+	public function _getLinkToCommit($project, $commit_id, $plugin_name, $repo_name) {
+		return util_make_link('/scm/browser.php?group_id='.$project->getID().'&scm_plugin='.$plugin_name.'&commit='.$commit_id.'&extra='.$repo_name, _('commit')._(': ').$commit_id);
 	}
+	
+        static function commit_dateorder($a, $b) {
+                if ($a['date'] == $b['date']) {
+                        return 0;
+                }
+                return ($a['date'] > $b['date']) ? -1 : 1;
+        }
+
 
 	public function getContent() {
 		global $HTML;
@@ -62,6 +70,8 @@ class Widget_ProjectLatestCommits extends Widget {
 			$revisions = array_merge($revisions, $scmPlugin->getCommits($project, null, self::NB_COMMITS_TO_DISPLAY));
 		}
 		if (count($revisions) > 0) {
+			usort($revisions, array ($this, "commit_dateorder"));
+			$revisions = array_slice($revisions, 0, self::NB_COMMITS_TO_DISPLAY, true);
 			foreach ($revisions as $key => $revision) {
 				$revisionDescription = substr($revision['description'], 0, 255);
 				if (strlen($revision['description']) > 255) {
@@ -75,8 +85,8 @@ class Widget_ProjectLatestCommits extends Widget {
 				}
 				$html .= html_e('div', $divattr,
 						html_e('div', array('style' => 'font-size:0.98em'),
-							$this->_getLinkToCommit($project, $revision['commit_id'], $revision['pluginName']).
-							' '._('on').' '.
+							$this->_getLinkToCommit($project, $revision['commit_id'], $revision['pluginName'], $revision['repo_name']).
+							' '._('on repository').' '.$revision['repo_name'].' '.
 							date(_("Y-m-d H:i"), $revision['date'])).
 						html_e('div', array('style' => 'padding-left:20px; padding-bottom:4px; color:#555'),
 							$revisionDescription));
diff --git a/src/plugins/scmgit/common/GitPlugin.class.php b/src/plugins/scmgit/common/GitPlugin.class.php
index 7cfc8eb..f255c72 100644
--- a/src/plugins/scmgit/common/GitPlugin.class.php
+++ b/src/plugins/scmgit/common/GitPlugin.class.php
@@ -1245,6 +1245,7 @@ control over it to the project's administrator.");
 				$params = '&mode=latest';
 			}
 			$repo_list = $this->getRepositories($project);
+			$i = 0;
 			foreach ($repo_list as $repo_name) {
 				$script_url = $protocol.$this->getBoxForProject($project)
 					. $server_script
@@ -1272,7 +1273,6 @@ control over it to the project's administrator.");
 				$f = fopen($filename, 'r');
 				unlink($filename);
 
-				$i = 0;
 				while (!feof($f) && $data = fgets($f)) {
 					$line = trim($data);
 					$splitedLine = explode('||', $line);
@@ -1280,6 +1280,7 @@ control over it to the project's administrator.");
 						$commits[$i]['pluginName'] = $this->name;
 						$commits[$i]['description'] = htmlspecialchars($splitedLine[2]);
 						$commits[$i]['commit_id'] = $splitedLine[3];
+						$commits[$i]['repo_name'] = $repo_name;
 						$splitedDate = explode(' ', $splitedLine[0]);
 						$commits[$i]['date'] = $splitedDate[0];
 						$i++;
diff --git a/src/plugins/scmsvn/common/SVNPlugin.class.php b/src/plugins/scmsvn/common/SVNPlugin.class.php
index 7153e1c..356a814 100644
--- a/src/plugins/scmsvn/common/SVNPlugin.class.php
+++ b/src/plugins/scmsvn/common/SVNPlugin.class.php
@@ -762,17 +762,11 @@ some control over it to the project's administrator.");
 			if ($adds > 0 || $updates > 0 || $commits > 0 || $deletes > 0) {
 				$i = 0;
 				foreach ($messages as $message) {
-					if ($user && ($users[$i] == $userunixname)) {
-						$revisionsArr[$i]['pluginName'] = 'scmsvn';
-						$revisionsArr[$i]['description'] = htmlspecialchars($message);
-						$revisionsArr[$i]['commit_id'] = $revisions[$i];
-						$revisionsArr[$i]['date'] = $times[$i];
-					} else {
-						$revisionsArr[$i]['pluginName'] = 'scmsvn';
-						$revisionsArr[$i]['description'] = htmlspecialchars($message);
-						$revisionsArr[$i]['commit_id'] = $revisions[$i];
-						$revisionsArr[$i]['date'] = $times[$i];
-					}
+					$revisionsArr[$i]['pluginName'] = 'scmsvn';
+					$revisionsArr[$i]['description'] = htmlspecialchars($message);
+					$revisionsArr[$i]['commit_id'] = $revisions[$i];
+					$revisionsArr[$i]['repo_name'] = $project->getUnixName();
+					$revisionsArr[$i]['date'] = $times[$i];
 					$i++;
 				}
 			}

-----------------------------------------------------------------------

Summary of changes:
 .../widget/Widget_ProjectLatestCommits.class.php       | 18 ++++++++++++++----
 src/plugins/scmgit/common/GitPlugin.class.php          |  3 ++-
 src/plugins/scmsvn/common/SVNPlugin.class.php          | 16 +++++-----------
 3 files changed, 21 insertions(+), 16 deletions(-)


hooks/post-receive
-- 
FusionForge



More information about the Fusionforge-commits mailing list