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, feature/subversion-multiple-repositories-per-project has been 
updated
       via  8aa8ea741ca974d7e0f25f2f6dc1d94fa85133d6 (commit)
       via  865138e4779c86095ee14bcd5b7d2e2b6cf3f0cf (commit)
       via  081905ade5f6e5f9224f22f83a9f38b544750e47 (commit)
       via  ba9a68beba4474790ec8109ae4c599678365dcdf (commit)
       via  98027d4489a643f250958b37959c03e3f59a28c6 (commit)
       via  5ed541053fe92270fb765861c6b3b2520a66c5c2 (commit)
      from  733a49e9ced7226af0294aafe8adaa71955d9650 (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=8aa8ea741ca974d7e0f25f2f6dc1d94fa85133d6

commit 8aa8ea741ca974d7e0f25f2f6dc1d94fa85133d6
Merge: 733a49e 865138e
Author: Franck Villaume <franck.villa...@trivialdev.com>
Date:   Sun Mar 11 14:48:20 2018 +0100

    Merge 6.1, adjust support multi-module with multi-repo

diff --cc src/plugins/scmsvn/common/SVNPlugin.class.php
index e152abb,7153e1c..6cd99df
--- a/src/plugins/scmsvn/common/SVNPlugin.class.php
+++ b/src/plugins/scmsvn/common/SVNPlugin.class.php
@@@ -101,71 -99,60 +101,81 @@@ some control over it to the project's a
                                . '</p>';
        }
  
 -      function topModule($project) {
 +      function topModule($project, $repo_name) {
-               // Check toplevel module presence
-               $repo = 'file://' . forge_get_config('repos_path', 
$this->name).'/'.$repo_name.'/';
-               $res = array ();
-               $module = 'trunk';
-               if (!is_file($repo.'/format')) {
-                       $module = '';
-               } else {
-                       exec("svn ls '$repo'", $res);
-                       if (!in_array($module.'/', $res)) {
-                               $module = '';
+               $scm_paths = array();
 -              $scm_paths_file = 
forge_get_config('groupdir_prefix').'/'.$project->getUnixName().'/'.$project->getUnixName().'_scmsvn_paths.txt';
++              $scm_paths_file = 
forge_get_config('groupdir_prefix').'/'.$project->getUnixName().'/'.$repo_name.'_scmsvn_paths.txt';
+               if (file_exists($scm_paths_file)) {
+                       $scm_paths = array_map("htmlentities", 
file($scm_paths_file));
+               }
+               // Check scm_path module presence in repository
+               $modules = array();
+               foreach ($scm_paths as $scm_path) {
+                       if (strpos($scm_path, "!") === false) {
 -                              $repo = 'file://' . 
forge_get_config('repos_path', $this->name).'/'.$project->getUnixName();
++                              $repo = 'file://' . 
forge_get_config('repos_path', $this->name).'/'.$repo_name;
+                               $res = array();
+                               if (!(exec("svn ls '$repo'", $res) && 
in_array($scm_path.'/', $res))) {
 -                                      $modules[] = $scm_path;
++                                      $modules[] = '/'.$scm_path;
+                               }
                        }
                }
-               return '/'.$module;
+               if (count($modules) == 0) {
 -                      $modules[] = '';
++                      $modules[] = '/';
+               }
+               return $modules;
        }
  
        function getInstructionsForAnon($project) {
 -              $b = '<h2>' . _('Anonymous Subversion Access') . '</h2>';
 -              $b .= '<p>';
 -              $b .= _("This project's SVN repository can be checked out 
through anonymous access with the following command(s).");
 -              $b .= '</p>';
 -
 -              $b .= '<p>' ;
 -              $modules = $this->topModule($project);
 -              foreach ($modules as $module) {
 -                      if (forge_get_config('use_ssh', 'scmsvn')) {
 -                              $ssh_port = '';
 -                              if (forge_get_config('ssh_port') != 22) {
 -                                      $ssh_port = 
'--config-option="config:tunnels:ssh=ssh -p '.forge_get_config('ssh_port').'"';
 -                              }
 -                              if (forge_get_config('use_shell_limited')) {
 -                                      $b .= '<span class="tt">svn 
'.$ssh_port.' checkout 
svn://'.$this->getBoxForProject($project).'/'.$project->getUnixName().'/'.$module.'</span>'.html_e('br');
 -                              } else {
 -                                      $b .= '<span class="tt">svn 
'.$ssh_port.' checkout 
svn://'.$this->getBoxForProject($project).$this->svn_root_fs.'/'.$project->getUnixName().'/'.$module.'</span>'.html_e('br');
 +              $repo_list = array($project->getUnixName());
 +              $result = db_query_params('SELECT repo_name FROM 
scm_secondary_repos WHERE group_id=$1 AND next_action = $2 AND plugin_id=$3 
ORDER BY repo_name',
 +                              array($project->getID(), 
SCM_EXTRA_REPO_ACTION_UPDATE, $this->getID()));
 +              $rows = db_numrows($result);
 +
 +              for ($i = 0; $i < $rows; $i++) {
 +                      $repo_list[] = db_result($result, $i, 'repo_name');
 +              }
 +
 +              $b = html_e('h2', array(), _('Anonymous Access'));
 +              $b .= html_e('p', array(),
 +                      ngettext("This project's SVN repository can be checked 
out through anonymous access with the following command(s).",
 +                              "This project's SVN repositories can be checked 
out through anonymous access with the following command(s).",
 +                              count($repo_list)));
 +
 +              if (forge_get_config('use_ssh', 'scmsvn')) {
 +                      $ssh_port = '';
 +                      if (forge_get_config('ssh_port') != 22) {
 +                              $ssh_port = 
'--config-option="config:tunnels:ssh=ssh -p '.forge_get_config('ssh_port').'"';
 +                      }
 +                      $b .= html_e('h3', array(), _('via SVN'));
 +                      foreach ($repo_list as $repo_name) {
-                               $module = $this->topModule($project, 
$repo_name);
-                               $b .= html_e('tt', array(), 'svn '.$ssh_port.' 
checkout 
svn://'.$this->getBoxForProject($project).$this->svn_root_fs.'/'.$repo_name.$module).html_e('br');
++                              $modules = $this->topModule($project, 
$repo_name);
++                              foreach ($modules as $module) {
++                                      $b .= html_e('tt', array(), 'svn 
'.$ssh_port.' checkout 
svn://'.$this->getBoxForProject($project).$this->svn_root_fs.'/'.$repo_name.$module).html_e('br');
+                               }
                        }
 -                      if (forge_get_config('use_dav', 'scmsvn')) {
 -                              $b .= '<span class="tt">svn checkout 
http'.((forge_get_config('use_ssl', 'scmsvn')) ? 's' : 
'').'://'.$this->getBoxForProject($project).'/anonscm/svn/'.$project->getUnixName().'/'.$module.'</span>'.html_e('br');
 +              }
 +
 +              if (forge_get_config('use_dav', 'scmsvn')) {
 +                      $b .= html_e('h3', array(), _('via DAV'));
 +                      foreach ($repo_list as $repo_name) {
-                               $module = $this->topModule($project, 
$repo_name);
-                               $b .= html_e('tt', array(), 'svn checkout 
http'.((forge_get_config('use_ssl', 'scmsvn')) ? 's' : '').'://'. 
$this->getBoxForProject($project). 
'/anonscm/svn/'.$repo_name.$module).html_e('br');
++                              $modules = $this->topModule($project, 
$repo_name);
++                              foreach ($modules as $module) {
++                                      $b .= html_e('tt', array(), 'svn 
checkout http'.((forge_get_config('use_ssl', 'scmsvn')) ? 's' : '').'://'. 
$this->getBoxForProject($project). 
'/anonscm/svn/'.$repo_name.$module).html_e('br');
++                              }
                        }
                }
 -              $b .= '</p>';
                return $b;
        }
  
        function getInstructionsForRW($project) {
 -              $modules = $this->topModule($project);
 +              $repo_list = array($project->getUnixName());
 +              $result = db_query_params('SELECT repo_name FROM 
scm_secondary_repos WHERE group_id=$1 AND next_action = $2 AND plugin_id=$3 
ORDER BY repo_name',
 +                              array($project->getID(), 
SCM_EXTRA_REPO_ACTION_UPDATE, $this->getID()));
 +              $rows = db_numrows($result);
 +              for ($i=0; $i<$rows; $i++) {
 +                      $repo_list[] = db_result($result, $i, 'repo_name');
 +              }
 +
-               $b = '';
-               $b .= html_e('h2', array(), _('Developer Access'));
+               $b = html_e('h2', array(), _('Developer Access'));
                $b .= sprintf(_('Only project developers can access the %s tree 
via this method.'), 'Subversion');
                $b .= '<div id="tabber-svn">';
                $b .= '<ul>';
@@@ -192,26 -179,24 +202,30 @@@
                                if (forge_get_config('ssh_port') != 22) {
                                        $ssh_port = 
'--config-option="config:tunnels:ssh=ssh -p '.forge_get_config('ssh_port').'" ';
                                }
 -                              foreach ($modules as $module) {
 -                                      if 
(forge_get_config('use_shell_limited')) {
 -                                              $b .= '<span class="tt">svn 
'.$ssh_port.'checkout 
svn+ssh://'.$d.'@'.$this->getBoxForProject($project).'/'.$project->getUnixName().'/'.$module.'</span>'.html_e('br');
 -                                      } else {
 -                                              $b .= '<span class="tt">svn 
'.$ssh_port.'checkout 
svn+ssh://'.$d.'@'.$this->getBoxForProject($project).$this->svn_root_fs .'/'. 
$project->getUnixName().'/'.$module.'</span>'.html_e('br');
 +                              foreach ($repo_list as $repo_name) {
-                                       $module = $this->topModule($project, 
$repo_name);
-                                       if 
(forge_get_config('use_shell_limited')) {
-                                               $b .= html_e('tt', array(), 
'svn '.$ssh_port.'checkout 
svn+ssh://'.$d.'@'.$this->getBoxForProject($project).'/'.$repo_name.$module).html_e('br');
-                                       } else {
-                                               $b .= html_e('tt', array(), 
'svn '.$ssh_port.'checkout 
svn+ssh://'.$d.'@'.$this->getBoxForProject($project).$this->svn_root_fs.'/'.$repo_name.$module).html_e('br');
++                                      $modules = $this->topModule($project, 
$repo_name);
++                                      foreach ($modules as $module) {
++                                              if 
(forge_get_config('use_shell_limited')) {
++                                                      $b .= html_e('tt', 
array(), 'svn '.$ssh_port.'checkout 
svn+ssh://'.$d.'@'.$this->getBoxForProject($project).'/'.$repo_name.$module).html_e('br');
++                                              } else {
++                                                      $b .= html_e('tt', 
array(), 'svn '.$ssh_port.'checkout 
svn+ssh://'.$d.'@'.$this->getBoxForProject($project).$this->svn_root_fs.'/'.$repo_name.$module).html_e('br');
++                                              }
                                        }
                                }
-                               $b .= '</div>';
+                               $b .= '</p></div>';
                        }
                        if (forge_get_config('use_dav', 'scmsvn')) {
                                $b .= '<div id="tabber-svndav" 
class="tabbertab" >';
                                $b .= '<p>';
                                $b .= _('Enter your site password when 
prompted.');
 -                              $b .= '</p><p>';
 -                              foreach ($modules as $module) {
 -                                      $b .= '<span class="tt">svn checkout 
--username '.$d.' http'.((forge_get_config('use_ssl', 'scmsvn')) ? 's' : 
'').'://'.$this->getBoxForProject($project).'/authscm/'.$d.'/svn/'.$project->getUnixName().'/'.$module.'</span>'.html_e('br');
 +                              $b .= '</p>';
 +                              foreach ($repo_list as $repo_name) {
-                                       $module = $this->topModule($project, 
$repo_name);
-                                       $b .= html_e('tt', array(), 'svn 
checkout --username '.$d.' http'.((forge_get_config('use_ssl', 'scmsvn')) ? 's' 
: 
'').'://'.$this->getBoxForProject($project).'/authscm/'.$d.'/svn/'.$repo_name.$module).html_e('br');
++                                      $modules = $this->topModule($project, 
$repo_name);
++                                      foreach ($modules as $module) {
++                                              $b .= html_e('tt', array(), 
'svn checkout --username '.$d.' http'.((forge_get_config('use_ssl', 'scmsvn')) 
? 's' : 
'').'://'.$this->getBoxForProject($project).'/authscm/'.$d.'/svn/'.$repo_name.$module).html_e('br');
++                                      }
                                }
 -                              $b .= '</p></div>';
 +                              $b .= '</div>';
                        }
                } else {
                        if (forge_get_config('use_ssh', 'scmsvn')) {
@@@ -227,15 -212,14 +241,17 @@@
                                if (forge_get_config('ssh_port') != 22) {
                                        $ssh_port = 
'--config-option="config:tunnels:ssh=ssh -p '.forge_get_config('ssh_port').'" ';
                                }
 -                              foreach ($modules as $module) {
 -                                      if 
(forge_get_config('use_shell_limited')) {
 -                                              $b .= '<span class="tt">svn 
'.$ssh_port.'checkout 
svn+ssh://<i>'._('developername').'</i>@'.$this->getBoxForProject($project).'/'.$project->getUnixName().'/'.$module.'</span>'.html_e('br');
 -                                      } else {
 -                                              $b .= '<span class="tt">svn 
'.$ssh_port.'checkout 
svn+ssh://<i>'._('developername').'</i>@'.$this->getBoxForProject($project).$this->svn_root_fs
 .'/'.$project->getUnixName().'/'.$module.'</span>'.html_e('br');
 +                              foreach ($repo_list as $repo_name) {
-                                       $module = $this->topModule($project, 
$repo_name);
-                                       if 
(forge_get_config('use_shell_limited')) {
-                                               $b .= html_e('tt', array(), 
'svn '.$ssh_port.'checkout 
svn+ssh://<i>'._('developername').'</i>@'.$this->getBoxForProject($project).'/'.$repo_name.$module).html_e('br');
-                                       } else {
-                                               $b .= html_e('tt', array(), 
'svn '.$ssh_port.'checkout 
svn+ssh://<i>'._('developername').'</i>@'.$this->getBoxForProject($project).$this->svn_root_fs
 .'/'.$repo_name.$module).html_e('br');
++                                      $modules = $this->topModule($project, 
$repo_name);
++                                      foreach ($modules as $module) {
++                                              if 
(forge_get_config('use_shell_limited')) {
++                                                      $b .= html_e('tt', 
array(), 'svn '.$ssh_port.'checkout 
svn+ssh://<i>'._('developername').'</i>@'.$this->getBoxForProject($project).'/'.$repo_name.$module).html_e('br');
++                                              } else {
++                                                      $b .= html_e('tt', 
array(), 'svn '.$ssh_port.'checkout 
svn+ssh://<i>'._('developername').'</i>@'.$this->getBoxForProject($project).$this->svn_root_fs
 .'/'.$repo_name.$module).html_e('br');
++                                              }
                                        }
                                }
-                               $b .= '</div>';
+                               $b .= '</p></div>';
                        }
                        if (forge_get_config('use_dav', 'scmsvn')) {
                                $b .= '<div id="tabber-svndav" 
class="tabbertab" >';
@@@ -243,12 -227,11 +259,14 @@@
                                $b .= _('Substitute <em>developername</em> with 
the proper value.');
                                $b .= ' ';
                                $b .= _('Enter your site password when 
prompted.');
 -                              $b .= '</p><p>';
 -                              foreach ($modules as $module) {
 -                                      $b .= '<span class="tt">svn checkout 
--username <i>'._('developername').'</i> http'.((forge_get_config('use_ssl', 
'scmsvn')) ? 's' : 
'').'://'.$this->getBoxForProject($project).'/authscm/<i>'._('developername').'</i>/svn/'.$project->getUnixName().'/'.$module.'</span>'.html_e('br');
 +                              $b .= '</p>';
 +                              foreach ($repo_list as $repo_name) {
-                                       $module = $this->topModule($project, 
$repo_name);
-                                       $b .= html_e('tt', array(), 'svn 
checkout --username <i>'._('developername').'</i> 
http'.((forge_get_config('use_ssl', 'scmsvn')) ? 's' : 
'').'://'.$this->getBoxForProject($project).'/authscm/<i>'._('developername').'</i>/svn/'.$repo_name.$module).html_e('br');
++                                      $modules = $this->topModule($project, 
$repo_name);
++                                      foreach ($modules as $module) {
++                                              $b .= html_e('tt', array(), 
'svn checkout --username <i>'._('developername').'</i> 
http'.((forge_get_config('use_ssl', 'scmsvn')) ? 's' : 
'').'://'.$this->getBoxForProject($project).'/authscm/<i>'._('developername').'</i>/svn/'.$repo_name.$module).html_e('br');
++                                      }
                                }
 -                              $b .= '</p></div>';
 +                              $b .= '</div>';
                        }
                }
                $b .= '</div>';

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

Summary of changes:
 .../tracker/ArtifactExtraFieldElement.class.php    |  4 +-
 src/plugins/scmsvn/common/SVNPlugin.class.php      | 88 +++++++++++++---------
 src/plugins/taskboard/common/TaskBoard.class.php   | 12 +--
 src/plugins/taskboard/www/css/agile-board.css      | 13 ++--
 src/plugins/taskboard/www/js/agile-board.js        |  7 +-
 5 files changed, 64 insertions(+), 60 deletions(-)


hooks/post-receive
-- 
FusionForge

_______________________________________________
Fusionforge-commits mailing list
Fusionforge-commits@lists.fusionforge.org
http://lists.fusionforge.org/cgi-bin/mailman/listinfo/fusionforge-commits

Reply via email to