[Fusionforge-commits] FusionForge branch foo created. 9e5067c33804af319d5225d6b81c4a4d11987e88

Thorsten Glaser mirabilos at fusionforge.org
Mon Jan 5 17:04:28 CET 2015


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, foo has been created
        at  9e5067c33804af319d5225d6b81c4a4d11987e88 (commit)

- Log -----------------------------------------------------------------
commit 9e5067c33804af319d5225d6b81c4a4d11987e88
Author: Thorsten Glaser <t.glaser at tarent.de>
Date:   Wed Apr 25 16:15:30 2012 +0200

    move forge_cache_external_roles() into a common include and genericise

diff --git a/src/common/include/RBACEngine.class.php b/src/common/include/RBACEngine.class.php
index 7a96f69..87351b2 100644
--- a/src/common/include/RBACEngine.class.php
+++ b/src/common/include/RBACEngine.class.php
@@ -450,9 +450,42 @@ function forge_check_global_perm_for_user ($user, $section, $action = NULL) {
 	return $engine->isGlobalActionAllowedForUser($user, $section, $action) ;
 }
 
+function forge_cache_external_roles($group) {
+	global $used_external_roles, $unused_external_roles;
+
+	$used_external_roles = array();
+	$unused_external_roles = array();
+	if (!USE_PFO_RBAC) {
+		return;
+	}
+	$group_id = $group->getID();
+
+	foreach (RBACEngine::getInstance()->getPublicRoles() as $r) {
+		$grs = $r->getLinkedProjects();
+		$seen = false;
+		foreach ($grs as $g) {
+			if ($g->getID() == $group_id) {
+				$seen = true;
+				break;
+			}
+		}
+		if (!$seen) {
+			$unused_external_roles[] = $r;
+		}
+	}
+
+	foreach ($group->getRoles() as $r) {
+		if ($r->getHomeProject() == NULL ||
+		    $r->getHomeProject()->getID() != $group_id) {
+			$used_external_roles[] = $r;
+		}
+	}
+
+	sortRoleList($used_external_roles, $group, 'composite');
+	sortRoleList($unused_external_roles, $group, 'composite');
+}
+
 // Local Variables:
 // mode: php
 // c-file-style: "bsd"
 // End:
-
-?>
diff --git a/src/www/project/admin/users.php b/src/www/project/admin/users.php
index 145de56..019ecdd 100644
--- a/src/www/project/admin/users.php
+++ b/src/www/project/admin/users.php
@@ -59,39 +59,7 @@ if (plugin_hook_listeners("project_admin_users") > 0) {
 	plugin_hook ("project_admin_users", $hook_params);
 }
 
-function cache_external_roles () {
-	global $used_external_roles, $unused_external_roles, $group, $group_id;
-
-	if (USE_PFO_RBAC) {
-		$unused_external_roles = array () ;
-		foreach (RBACEngine::getInstance()->getPublicRoles() as $r) {
-			$grs = $r->getLinkedProjects () ;
-			$seen = false ;
-			foreach ($grs as $g) {
-				if ($g->getID() == $group_id) {
-					$seen = true ;
-					break ;
-				}
-			}
-			if (!$seen) {
-				$unused_external_roles[] = $r ;
-			}
-		}
-		$used_external_roles = array () ;
-		foreach ($group->getRoles() as $r) {
-			if ($r->getHomeProject() == NULL
-			    || $r->getHomeProject()->getID() != $group_id) {
-				$used_external_roles[] = $r ;
-			}
-		}
-
-		sortRoleList ($used_external_roles, $group, 'composite') ;
-		sortRoleList ($unused_external_roles, $group, 'composite') ;
-
-	}
-}
-
-cache_external_roles () ;
+forge_cache_external_roles($group);
 
 if (getStringFromRequest('submit')) {
 	if (getStringFromRequest('adduser')) {
@@ -198,7 +166,7 @@ if (getStringFromRequest('submit')) {
 						$error_msg = $r->getErrorMessage();
 					} else {
 						$feedback = _("Role linked successfully");
-						cache_external_roles () ;
+						forge_cache_external_roles($group);
 					}
 				}
 			}
@@ -213,7 +181,7 @@ if (getStringFromRequest('submit')) {
 						$error_msg = $r->getErrorMessage();
 					} else {
 						$feedback = _("Role unlinked successfully");
-						cache_external_roles () ;
+						forge_cache_external_roles($group);
 					}
 				}
 			}

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


hooks/post-receive
-- 
FusionForge



More information about the Fusionforge-commits mailing list