[Fusionforge-commits] r11954 - branches/Branch_5_1/src/etc/templates

Roland Mas lolando at libremir.placard.fr.eu.org
Mon Jan 10 14:49:19 CET 2011


Author: lolando
Date: 2011-01-10 14:49:19 +0100 (Mon, 10 Jan 2011)
New Revision: 11954

Modified:
   branches/Branch_5_1/src/etc/templates/local.pl
Log:
Factor some Perl code to allow for future improvements

Modified: branches/Branch_5_1/src/etc/templates/local.pl
===================================================================
--- branches/Branch_5_1/src/etc/templates/local.pl	2011-01-10 10:41:48 UTC (rev 11953)
+++ branches/Branch_5_1/src/etc/templates/local.pl	2011-01-10 13:49:19 UTC (rev 11954)
@@ -1,47 +1,42 @@
 # PLEASE DO NOT REMOVE THIS LINE
 
 $fgcpath = '{usr_share_gforge}/bin' ;
+%forge_config_cache = ();
 
-$sys_default_domain = qx!$fgcpath/forge_get_config web_host! ;
-chomp $sys_default_domain ;
-$sys_scm_host = $sys_default_domain ;
-$domain_name = $sys_default_domain;
-$sys_users_host = qx!$fgcpath/forge_get_config users_host!;
-chomp $sys_users_host ;
-$sys_lists_host = qx!$fgcpath/forge_get_config lists_host!;
-chomp $sys_lists_host ;
-$sys_name = qx!$fgcpath/forge_get_config forge_name!;
-chomp $sys_name ;
-$sys_themeroot = qx!$fgcpath/forge_get_config themes_root!;
-chomp $sys_themeroot ;
-$sys_news_group = qx!$fgcpath/forge_get_config news_group!;
-chomp $sys_news_group ;
-$sys_dbhost = qx!$fgcpath/forge_get_config database_host!;
-chomp $sys_dbhost ;
-$sys_dbport = qx!$fgcpath/forge_get_config database_port!;
-chomp $sys_dbport ;
-$sys_dbname = qx!$fgcpath/forge_get_config database_name!;
-chomp $sys_dbname ;
-$sys_dbuser = qx!$fgcpath/forge_get_config database_user!;
-chomp $sys_dbuser ;
-$sys_dbpasswd = qx!$fgcpath/forge_get_config database_password!;
-chomp $sys_dbpasswd ;
-$sys_ldap_base_dn = qx!$fgcpath/forge_get_config ldab_base_dn!;
-chomp $sys_ldap_base_dn ;
-$sys_ldap_host = qx!$fgcpath/forge_get_config ldap_host!;
-chomp $sys_ldap_host ;
-$server_admin = qx!$fgcpath/forge_get_config admin_email!;
-$peerrating_groupid = qx!$fgcpath/forge_get_config peer_rating_group!;
-chomp $peerrating_groupid ;
+sub forge_get_config ($$) {
+    my $var = shift;
+    my $sec = shift || 'core';
+
+    if (!defined $forge_config_cache{$sec}{$var}) {
+	$forge_config_cache{$sec}{$var} = qx!$fgcpath/forge_get_config $var $sec!;
+	chomp $forge_config_cache{$sec}{$var};
+    }
+    return $forge_config_cache{$sec}{$var};
+}
+
+$sys_default_domain = &forge_get_config ('web_host') ;
+$sys_scm_host = &forge_get_config ('web_host') ;
+$domain_name = &forge_get_config ('web_host') ;
+$sys_users_host = &forge_get_config ('users_host') ;
+$sys_lists_host = &forge_get_config ('lists_host') ;
+$sys_name = &forge_get_config ('forge_name') ;
+$sys_themeroot = &forge_get_config ('themes_root') ;
+$sys_news_group = &forge_get_config ('news_group') ;
+$sys_dbhost = &forge_get_config ('database_host') ;
+$sys_dbport = &forge_get_config ('database_port') ;
+$sys_dbname = &forge_get_config ('database_name') ;
+$sys_dbuser = &forge_get_config ('database_user') ;
+$sys_dbpasswd = &forge_get_config ('database_password') ;
+$sys_ldap_base_dn = &forge_get_config ('ldab_base_dn') ;
+$sys_ldap_host = &forge_get_config ('ldap_host') ;
+$server_admin = &forge_get_config ('admin_email') ;
+$peerrating_groupid = &forge_get_config ('peer_rating_group') ;
+$chroot_prefix = &forge_get_config ('chroot') ;
+$homedir_prefix = &forge_get_config ('homedir_prefix') ;
+$grpdir_prefix = &forge_get_config ('groupdir_prefix') ;
+$file_dir = &forge_get_config ('data_path') ;
+
 $noreply_to_bitbucket = '{noreply_to_bitbucket}' ;
 $sys_ip_address = '{ip_address}';
-$chroot_prefix = qx!$fgcpath/forge_get_config chroot!;
-chomp $chroot_prefix ;
-$homedir_prefix = qx!$fgcpath/forge_get_config homedir_prefix!;
-chomp $homedir_prefix ;
-$grpdir_prefix = qx!$fgcpath/forge_get_config groupdir_prefix!;
-chomp $grpdir_prefix ;
-$file_dir = qx!$fgcpath/forge_get_config data_path!;
-chomp $file_dir ;
 
 1 ;




More information about the Fusionforge-commits mailing list