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  3b0b77e65ee70adfb9b323c2487ae219857dc249 (commit)
       via  556a6464785fc8c2994296b752ad01aea74cef82 (commit)
       via  e91ff639a2bf8429947a15e3094cfb80e1905df0 (commit)
      from  5a6b5cd9ba168f458f3605b85ece2ab787d3a9b0 (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=3b0b77e65ee70adfb9b323c2487ae219857dc249

commit 3b0b77e65ee70adfb9b323c2487ae219857dc249
Author: Franck Villaume <[email protected]>
Date:   Sun Feb 11 16:52:16 2018 +0100

    SCM admin page: support allow_multiple_scm for anonymous setting

diff --git a/src/common/include/SCMPlugin.class.php 
b/src/common/include/SCMPlugin.class.php
index d574086..7858e0d 100644
--- a/src/common/include/SCMPlugin.class.php
+++ b/src/common/include/SCMPlugin.class.php
@@ -4,7 +4,7 @@
  *
  * Copyright 2004-2009, Roland Mas
  * Copyright (C) 2011-2012 Alain Peyrat - Alcatel-Lucent
- * Copyright 2012,2014,2017, Franck Villaume - TrivialDev
+ * Copyright 2012,2014,2017-2018, Franck Villaume - TrivialDev
  *
  * This file is part of FusionForge. FusionForge is free software;
  * you can redistribute it and/or modify it under the terms of the
@@ -250,14 +250,18 @@ abstract class SCMPlugin extends Plugin {
                }
        }
 
-       function printAdminPage($params) {
+       function printAdminPage(&$params) {
                $group = $this->checkParams($params);
                if (!$group) {
                        return;
                }
 
                $ra = RoleAnonymous::getInstance();
-               if ($ra->hasPermission('project_read', $group->getID())) {
+               // $params is passed by reference. This hack limits the display 
of the anonymous information if project is using multiple scm plugins.
+               if ($ra->hasPermission('project_read', $group->getID()) && 
!isset($params['anonymous_display'])) {
+                       if ($params['allow_multiple_scm']) {
+                               $params['anonymous_display'] = true;
+                       }
                        $inputAttr = array('type' => 'checkbox', 'name' => 
'scm_enable_anonymous', 'value' => 1);
                        if ($group->enableAnonSCM()) {
                                $inputAttr['checked'] = 'checked';
diff --git a/src/www/scm/admin/index.php b/src/www/scm/admin/index.php
index 7b13993..78f0347 100644
--- a/src/www/scm/admin/index.php
+++ b/src/www/scm/admin/index.php
@@ -3,6 +3,7 @@
  * SCM Frontend
  *
  * Copyright 2004 (c) Roland Mas, Tim Perdue GForge LLC
+ * Copyright 2018, Franck Villaume - TrivialDev
  * http://fusionforge.org
  *
  * This file is part of FusionForge. FusionForge is free software;
@@ -193,7 +194,8 @@ if (count($scm_plugins) != 0) {
 }
 
 (isset($scm)) ? $hook_params['scm_plugin'] = $scm : $hook_params['scm_plugin'] 
= 0;
-plugin_hook("scm_admin_page", $hook_params);
+$hook_params['allow_multiple_scm'] = forge_get_config('allow_multiple_scm');
+plugin_hook_by_reference("scm_admin_page", $hook_params);
 echo html_e('input', array('type' => 'hidden', 'name' => 'group_id', 'value' 
=> $group_id));
 echo html_e('p', array(), html_e('input', array('type' => 'submit', 'name' => 
'submit', 'value' => _('Update'))));
 echo $HTML->closeForm();

https://scm.fusionforge.org/anonscm/gitweb/?p=fusionforge/fusionforge.git;a=commitdiff;h=556a6464785fc8c2994296b752ad01aea74cef82

commit 556a6464785fc8c2994296b752ad01aea74cef82
Author: Franck Villaume <[email protected]>
Date:   Sun Feb 11 16:44:13 2018 +0100

    use SCMFactory

diff --git a/src/www/scm/index.php b/src/www/scm/index.php
index 7368715..5917cb6 100644
--- a/src/www/scm/index.php
+++ b/src/www/scm/index.php
@@ -23,6 +23,7 @@
 
 require_once '../env.inc.php';
 require_once $gfcommon.'include/pre.php';
+require_once $gfcommon.'scm/SCMFactory.class.php';
 require_once $gfwww.'scm/include/scm_utils.php';
 
 global $HTML;
@@ -36,11 +37,12 @@ if (!$group || !is_object($group)) {
 session_require_perm('scm', $group_id, 'read');
 
 // Check if there is an associated scm plugin and issue a warning if none.
+$SCMFactory = new SCMFactory();
+$av_scm_plugins = $SCMFactory->getSCMs();
 $scm_plugins = array();
-foreach (PluginManager::instance()->getPlugins() as $p) {
-       $plugin = PluginManager::instance()->GetPluginObject($p);
-       if (isset($plugin->provides['scm']) && $plugin->provides['scm'] && 
$group->usesPlugin($p)) {
-               $scm_plugins[] = $plugin;
+foreach ($av_scm_plugins as $av_scm_plugin) {
+       if ($group->usesPlugin($av_scm_plugin)) {
+               $scm_plugins[] = plugin_get_object($av_scm_plugin);
        }
 }
 if (count($scm_plugins) == 0) {

https://scm.fusionforge.org/anonscm/gitweb/?p=fusionforge/fusionforge.git;a=commitdiff;h=e91ff639a2bf8429947a15e3094cfb80e1905df0

commit e91ff639a2bf8429947a15e3094cfb80e1905df0
Author: Franck Villaume <[email protected]>
Date:   Sun Feb 11 16:34:12 2018 +0100

    wrong comments.

diff --git a/src/common/scm/SCMFactory.class.php 
b/src/common/scm/SCMFactory.class.php
index 64b931b..e361464 100644
--- a/src/common/scm/SCMFactory.class.php
+++ b/src/common/scm/SCMFactory.class.php
@@ -28,7 +28,7 @@ class SCMFactory extends FFError {
        /**
         * The scms array.
         *
-        * @var  array  scms.
+        * @var array   scms.
         */
        var $scms;
 
@@ -40,9 +40,9 @@ class SCMFactory extends FFError {
        }
 
        /**
-        *      getSCMs - get an array of Plugin SCM objects.
+        *      getSCMs - get an array of Plugin SCM names.
         *
-        *      @return array   The array of SCM objects.
+        *      @return array   The array of plugin SCM names.
         */
        function &getSCMs() {
                $scm_plugins = array();

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

Summary of changes:
 src/common/include/SCMPlugin.class.php | 10 +++++++---
 src/common/scm/SCMFactory.class.php    |  6 +++---
 src/www/scm/admin/index.php            |  4 +++-
 src/www/scm/index.php                  | 10 ++++++----
 4 files changed, 19 insertions(+), 11 deletions(-)


hooks/post-receive
-- 
FusionForge

_______________________________________________
Fusionforge-commits mailing list
[email protected]
http://lists.fusionforge.org/cgi-bin/mailman/listinfo/fusionforge-commits

Reply via email to