[evolvis-commits] r18232: update to tip of integration branch

mirabilos at evolvis.org mirabilos at evolvis.org
Thu Apr 5 12:25:43 CEST 2012


Author: mirabilos
Date: 2012-04-05 12:25:42 +0200 (Thu, 05 Apr 2012)
New Revision: 18232

Added:
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/common/include/preutils.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/db/20120321-add-news-in-activity_vw.sql
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/db/20120329-pfo-rbac.sql
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/source/
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/packaging/cron.d/plugin-mediawiki
Modified:
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/Makefile
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/cEv-hook/D20repo
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/mvntests/AllTests.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/mvntests/syntax/SyntaxTests.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/BuildDSC.sh
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/common/include/Group.class.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/common/include/config-vars.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/common/include/descriptive.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/common/include/env.inc.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/common/include/session.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/common/include/utils.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/common/tracker/Artifact.class.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/common/tracker/ArtifactFactory.class.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/auth_unix.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/backup_site.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/calculate_user_metric.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/check_stale_tracker_items.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/create_scm_repos.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/daily_task_email.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/db_project_sums.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/db_stats_agg.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/db_trove_maint.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/forum_gateway.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/gather_scm_stats.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/generate_scm_snapshots.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/homedirs.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/mail/mailaliases.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/mail/mailing_lists_create.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/massmail.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/project_cleanup.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/project_weekly_metric.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/rating_stats.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/reporting_cron.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/rotate_activity.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/site_stats.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/tracker_gateway.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/update_docdata_dataword.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/vacuum.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/db/20010304-4-artifact-convert-files.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/db/20021213-2-doc_data-migrate.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/db/20040826_migrateforum.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/db/20040826_migraterbac.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/db/20041211-syncmail.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/db/20041222-1-delete-task-artifact.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/db/20050127-frs-reorg.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/db/20050325-3.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/db/20050617.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/db/20050804-2.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/db/20090507-install_workflow.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/db/20100927-pfo-rbac.sql
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/db/startpoint.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/db/upgrade-db.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/deb-specific/create-mailing-lists.pl
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/deb-specific/db-upgrade.pl
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/deb-specific/fileforge.pl
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/deb-specific/fix-mailing-lists.pl
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/deb-specific/install-exim.sh
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/deb-specific/install-exim4.sh
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/deb-specific/install-postfix.sh
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/deb-specific/prepare-vhosts-file.pl
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/deb-specific/update-user-group-ssh.sh
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/changelog
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/control
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-in/common.postinst
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-in/common.postrm
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-in/db-postgresql.postinst.dsfh-in
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-in/dns-bind9.postinst
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-in/ftp-proftpd.postinst
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-in/lists-mailman.postinst
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-in/mta-exim4.postinst
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-in/mta-postfix.postinst
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-in/shell-postgresql.postinst
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-in/web-apache2-vhosts.postinst.dsfh-in
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-in/web-apache2-vhosts.postrm.dsfh-in
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-in/web-apache2.postinst.dsfh-in
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-po/cs.po
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-po/de.po
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-po/es.po
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-po/fi.po
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-po/fr.po
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-po/gl.po
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-po/nl.po
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-po/pt.po
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-po/ru.po
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-po/sv.po
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-po/templates.pot
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-po/vi.po
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/rules
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/source/format
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/docs/README.html:EvolvisTable
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/etc/httpd.conf.d/log.inc
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/packaging/control/000source
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/packaging/control/900evolvis-meta
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/packaging/install/db-postgresql
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/blocks/packaging/install/plugin-blocks
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/externalsearch/bin/db-upgrade.pl
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/globalsearch/bin/db-upgrade.pl
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/globalsearch/common/globalsearch_stats_boxes.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/hudson/bin/db-upgrade.pl
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/mediawiki/bin/mw-drop-wikis.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/mediawiki/bin/mw-plugin-init.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/mediawiki/bin/mw-wrapper.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/mediawiki/common/MediaWikiPlugin.class.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/mediawiki/cronjobs/create-imagedirs.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/mediawiki/cronjobs/create-wikis.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/mediawiki/cronjobs/dump-wikis.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/mediawiki/mediawiki-skin-devel/00README
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/mediawiki/mediawiki-skin-devel/FusionForge.php.patched
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/mediawiki/mediawiki-skin-devel/FusionForge.php.reference
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/mediawiki/mediawiki-skin-devel/MonoBook.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/mediawiki/mediawiki-skin/FusionForge.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/mediawiki/packaging/cron.d/plugin-mediawiki
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/mediawiki/www/LocalSettings.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/mediawiki/www/plugin_admin.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/oslc/bin/db-upgrade.pl
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/scmcvs/cronjobs/ssh_create.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/scmsvn/common/SVNPlugin.class.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/translations/de.po
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/translations/fusionforge.pot
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/utils/fixscripts/fix_default_role.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/utils/fixscripts/populate_template_project.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/utils/include.pl
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/utils/inject-files.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/utils/inject-groups.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/utils/inject-users.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/utils/normalize_roles.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/utils/sync_unix_groups.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/utils/user-del.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/www/admin/grouplist.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/www/include/html.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/www/include/project_home.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/www/project/admin/massadd.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/www/project/admin/users.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/www/projects
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/www/themes/evolvis/Theme.class.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/www/themes/evolvis/evolvis.css
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/www/top/toplist.php
   branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/www/tracker/browse.php
Log:
update to tip of integration branch


Property changes on: branches/QA-2011Q4:evolvis-qs.lan.tarent.de
___________________________________________________________________
Modified: svn:mergeinfo
   - /trunk/gforge_base/evolvisforge-5.1:7226,17132-17168,17573-17576,17584,17592,17595,17631,17646-17652,17928-17931,17933,17942-17943,18046-18050,18062-18064,18096-18097,18156-18159,18166-18168,18194-18197
/branches/messer-51:17836,17838

   + /trunk/gforge_base/evolvisforge-5.1:7226,17132-17168,17573-17576,17584,17592,17595,17631,17646-17652,17928-17931,17933,17942-17943,18046-18050,18062-18064,18096-18097,18156-18159,18166-18168,18194-18197,18230-18231
/branches/messer-51:17836,17838

Modified: svk:merge
   - 8ed69402-faa4-4b47-986e-66d49b2a90d8:/branches/messer-51:17838
8ed69402-faa4-4b47-986e-66d49b2a90d8:/trunk/gforge_base/evolvisforge-5.1:17168
8ed69402-faa4-4b47-986e-66d49b2a90d8:/trunk/gforge_base/evolvisforge-5.1:17584
8ed69402-faa4-4b47-986e-66d49b2a90d8:/trunk/gforge_base/evolvisforge-5.1:17592
8ed69402-faa4-4b47-986e-66d49b2a90d8:/trunk/gforge_base/evolvisforge-5.1:17595
8ed69402-faa4-4b47-986e-66d49b2a90d8:/trunk/gforge_base/evolvisforge-5.1:17631
8ed69402-faa4-4b47-986e-66d49b2a90d8:/trunk/gforge_base/evolvisforge-5.1:17652
8ed69402-faa4-4b47-986e-66d49b2a90d8:/trunk/gforge_base/evolvisforge-5.1:17933
8ed69402-faa4-4b47-986e-66d49b2a90d8:/trunk/gforge_base/evolvisforge-5.1:17943
8ed69402-faa4-4b47-986e-66d49b2a90d8:/trunk/gforge_base/evolvisforge-5.1:18050
8ed69402-faa4-4b47-986e-66d49b2a90d8:/trunk/gforge_base/evolvisforge-5.1:18064
8ed69402-faa4-4b47-986e-66d49b2a90d8:/trunk/gforge_base/evolvisforge-5.1:18097
8ed69402-faa4-4b47-986e-66d49b2a90d8:/trunk/gforge_base/evolvisforge-5.1:18159
8ed69402-faa4-4b47-986e-66d49b2a90d8:/trunk/gforge_base/evolvisforge-5.1:18168
8ed69402-faa4-4b47-986e-66d49b2a90d8:/trunk/gforge_base/evolvisforge-5.1:18197
8ed69402-faa4-4b47-986e-66d49b2a90d8:/trunk/gforge_base/evolvisforge-5.1:7226

   + 8ed69402-faa4-4b47-986e-66d49b2a90d8:/branches/messer-51:17838
8ed69402-faa4-4b47-986e-66d49b2a90d8:/trunk/gforge_base/evolvisforge-5.1:17168
8ed69402-faa4-4b47-986e-66d49b2a90d8:/trunk/gforge_base/evolvisforge-5.1:17584
8ed69402-faa4-4b47-986e-66d49b2a90d8:/trunk/gforge_base/evolvisforge-5.1:17592
8ed69402-faa4-4b47-986e-66d49b2a90d8:/trunk/gforge_base/evolvisforge-5.1:17595
8ed69402-faa4-4b47-986e-66d49b2a90d8:/trunk/gforge_base/evolvisforge-5.1:17631
8ed69402-faa4-4b47-986e-66d49b2a90d8:/trunk/gforge_base/evolvisforge-5.1:17652
8ed69402-faa4-4b47-986e-66d49b2a90d8:/trunk/gforge_base/evolvisforge-5.1:17933
8ed69402-faa4-4b47-986e-66d49b2a90d8:/trunk/gforge_base/evolvisforge-5.1:17943
8ed69402-faa4-4b47-986e-66d49b2a90d8:/trunk/gforge_base/evolvisforge-5.1:18050
8ed69402-faa4-4b47-986e-66d49b2a90d8:/trunk/gforge_base/evolvisforge-5.1:18064
8ed69402-faa4-4b47-986e-66d49b2a90d8:/trunk/gforge_base/evolvisforge-5.1:18097
8ed69402-faa4-4b47-986e-66d49b2a90d8:/trunk/gforge_base/evolvisforge-5.1:18159
8ed69402-faa4-4b47-986e-66d49b2a90d8:/trunk/gforge_base/evolvisforge-5.1:18168
8ed69402-faa4-4b47-986e-66d49b2a90d8:/trunk/gforge_base/evolvisforge-5.1:18197
8ed69402-faa4-4b47-986e-66d49b2a90d8:/trunk/gforge_base/evolvisforge-5.1:18231
8ed69402-faa4-4b47-986e-66d49b2a90d8:/trunk/gforge_base/evolvisforge-5.1:7226


Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/Makefile
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/Makefile	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/Makefile	2012-04-05 10:25:42 UTC (rev 18232)
@@ -1,3 +1,9 @@
+regress:
+	# moreutils phpunit pcregrep
+	test -x /usr/bin/phpunit && test -x /usr/bin/pcregrep && test -x /usr/bin/isutf8
+	php mvntests/AllTests.php
+	@echo minimal testsuite run.
+
 #
 # This Makefile may be used to create packages for distributions
 #

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/cEv-hook/D20repo
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/cEv-hook/D20repo	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/cEv-hook/D20repo	2012-04-05 10:25:42 UTC (rev 18232)
@@ -3,6 +3,8 @@
 LC_ALL=C
 export LC_ALL
 
+apt-get --purge install -y --force-yes apt-transport-https
+
 apt-key add - <<'EOF'
 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v1.4.6 (GNU/Linux)
@@ -114,7 +116,7 @@
 -----END PGP PUBLIC KEY BLOCK-----
 EOF
 
-echo deb http://evolvis.evolvis.org/ lenny evolvis51 >>/etc/apt/sources.list
-echo deb http://mirror.netcologne.de/debian-backports lenny-backports main contrib non-free >>/etc/apt/sources.list
+echo deb https://evolvis.evolvis.org/ lenny evolvis51 >>/etc/apt/sources.list
+echo deb http://archive.debian.org/debian-backports lenny-backports main >>/etc/apt/sources.list
 
 apt-get update

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/mvntests/AllTests.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/mvntests/AllTests.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/mvntests/AllTests.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -13,7 +13,13 @@
 {
 	public static function main()
 	{
-		PHPUnit_TextUI_TestRunner::run(self::suite());
+		try {
+			$res = PHPUnit_TextUI_TestRunner::run(self::suite());
+		} catch (Exception $e) {
+			echo "Caught exception: " . $e->getMessage() . "\n";
+			exit(255);
+		}
+		exit($res->wasSuccessful() ? 0 : 1);
 	}
 
 	public static function suite()

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/mvntests/syntax/SyntaxTests.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/mvntests/syntax/SyntaxTests.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/mvntests/syntax/SyntaxTests.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -7,50 +7,102 @@
 /**
  * Syntax test class.
  *
- * @package   SyntaxTests
- * @author    Alain Peyrat <aljeux at free.fr>
- * @copyright 2009 Alain Peyrat. All rights reserved.
- * @license   http://www.opensource.org/licenses/gpl-license.php  GPL License
+ * @package	SyntaxTests
+ * @author	Alain Peyrat <aljeux at free.fr>
+ * @copyright	2009 Alain Peyrat. All rights reserved.
+ * @license	http://www.opensource.org/licenses/gpl-license.php  GPL License
  */
 class Syntax_Tests extends PHPUnit_Framework_TestCase
 {
-    /**
-     * Validate all php code with php -l.
-     */
-    public function testPhpSyntax()
-    {
-	    $output = `find src -name '*.php' -type f  -exec php -l {} \; | grep -v '^No syntax errors detected'`;
-	    $this->assertEquals('', $output);
-    }
+	/**
+	 * First, make sure pcregrep is installed
+	 */
+	public function testPcRegrepInstalled()
+	{
+		$output = `type pcregrep >/dev/null; echo $?`;
+		$rc = trim($output);
+		if ($rc != '0') {
+			$output = `type pcregrep`;
+			$this->fail('You should probably install "pcregrep" : `type pcregrep` reports "'.$output);
+		}
+	}
 
-    /**
-     * Validate all php code with isutf8.
-     */
-    public function testUTF8Chars()
-    {
-	    // Skip the wiki part which is not UTF-8 encoded.
-	    $output = `find src -name '*.php' -not -path 'src/plugins/wiki/www/*' -type f  -exec isutf8 {} \;`;
-	    $this->assertEquals('', $output);
-	    $output = `find src -name '*.sql' -type f  -exec isutf8 {} \;`;
-	    $this->assertEquals('', $output);
-	    $output = `find src -name '*.sh' -type f  -exec isutf8 {} \;`;
-	    $this->assertEquals('', $output);
-	    $output = `find src -name '*.pl' -type f  -exec isutf8 {} \;`;
-	    $this->assertEquals('', $output);
-    }
+	/**
+	 * Validate all php code with php -l.
+	 */
+	public function testPhpSyntax()
+	{
+		$root = ".";
+		$output = `find $root/src $root/tests -name '*.php' -type f -exec php -l {} \; | grep -v '^No syntax errors detected'`;
+		$this->assertEquals('', $output);
+	}
 
-    /**
-     * Ensure all PHP files use Unix-style line endings
-     */
-    public function testUnixLineEndings()
-    {
-	    $output = `find src -name '*.php' -type f | xargs pcregrep -l '\r$'`;
-	    $this->assertEquals('', $output);
-	    $output = `find src -name '*.sql' -type f | xargs pcregrep -l '\r$'`;
-	    $this->assertEquals('', $output);
-	    $output = `find src -name '*.sh' -type f | xargs pcregrep -l '\r$'`;
-	    $this->assertEquals('', $output);
-	    $output = `find src -name '*.pl' -type f | xargs pcregrep -l '\r$'`;
-	    $this->assertEquals('', $output);
-    }
+	/**
+	 * Validate all scripts with isutf8.
+	 */
+	public function testUTF8Chars()
+	{
+		$root = ".";
+		$output = `find $root/src $root/tests -name '*.php' -type f | xargs isutf8`;
+		$this->assertEquals('', $output);
+		$output = `find $root/src $root/tests -name '*.sql' -type f | xargs isutf8`;
+		$this->assertEquals('', $output);
+		$output = `find $root/src $root/tests -name '*.sh' -type f | xargs isutf8`;
+		$this->assertEquals('', $output);
+		$output = `find $root/src $root/tests -name '*.pl' -type f | xargs isutf8`;
+		$this->assertEquals('', $output);
+	}
+
+	/**
+	 * Ensure all scripts use Unix-style line endings
+	 */
+	public function testUnixLineEndings()
+	{
+		$root = ".";
+		$output = `find $root/src $root/tests -name '*.php' -type f | xargs pcregrep -l '\r$'`;
+		$this->assertEquals('', $output);
+		$output = `find $root/src $root/tests -name '*.sql' -type f | xargs pcregrep -l '\r$'`;
+		$this->assertEquals('', $output);
+		$output = `find $root/src $root/tests -name '*.sh' -type f | xargs pcregrep -l '\r$'`;
+		$this->assertEquals('', $output);
+		$output = `find $root/src $root/tests -name '*.pl' -type f | xargs pcregrep -l '\r$'`;
+		$this->assertEquals('', $output);
+	}
+
+	/**
+	 * Ensure no scripts have SVN conflicts markers
+	 */
+	public function testSVNConflicts()
+	{
+		$root = ".";
+		$output = `find $root/src $root/tests -type f | xargs grep -l '^<<<<<<'`;
+		$this->assertEquals('', $output);
+		$output = `find $root/src $root/tests -type f | xargs grep -l '^>>>>>>'`;
+		$this->assertEquals('', $output);
+	}
+
+	/**
+	 * Ensure no script has an empty last line
+	 */
+	public function testEmptyLastLine()
+	{
+		$root = ".";
+		$output = `find $root/src $root/tests -name '*.php' -type f | while read i ; do [ -s \$i ] && [ -z "\$(tail -n 1 \$i)" ] && echo \$i ; done`;
+		$this->assertEquals('', $output);
+	}
+
+	/**
+	 * Validate syntax of gettextfiles
+	 */
+	public function testGettextSyntax()
+	{
+		$root = ".";
+		$output = `cd $root/src ; ./utils/manage-translations.sh check 2>&1`;
+		$this->assertEquals('', $output);
+	}
 }
+
+// Local Variables:
+// mode: php
+// c-file-style: "bsd"
+// End:

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/BuildDSC.sh
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/BuildDSC.sh	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/BuildDSC.sh	2012-04-05 10:25:42 UTC (rev 18232)
@@ -121,6 +121,9 @@
 upstreamversion=${version%%-*([!-])}
 upstreamversion=${upstreamversion#+([0-9]):}
 cd ..
+### BEGIN evolvis-5.1 PART 0
+make regress || exit 1
+### END evolvis-5.1 PART 0
 curname=${mydir##*/}
 newname=$pkgstem-$upstreamversion
 [[ $newname = $curname ]] || mv "$curname" "$newname"

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/common/include/Group.class.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/common/include/Group.class.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/common/include/Group.class.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -1,4 +1,4 @@
-<?php   
+<?php
 /**
  * FusionForge groups
  *
@@ -83,9 +83,9 @@
 	//create a common set of group objects
 	//saves a little wear on the database
 
-	//automatically checks group_type and 
+	//automatically checks group_type and
 	//returns appropriate object
-	
+
 	global $GROUP_OBJ;
 	if (!isset($GROUP_OBJ["_".$group_id."_"])) {
 		if ($res) {
@@ -113,11 +113,11 @@
 
 function &group_get_objects($id_arr) {
 	global $GROUP_OBJ;
-	
+
 	// Note: if we don't do this, the result may be corrupted
 	$fetch = array();
 	$return = array();
-	
+
 	foreach ($id_arr as $id) {
 		//
 		//	See if this ID already has been fetched in the cache
@@ -174,14 +174,14 @@
 class Group extends Error {
 	/**
 	 * Associative array of data from db.
-	 * 
+	 *
 	 * @var array $data_array.
 	 */
 	var $data_array;
 
 	/**
 	 * array of User objects.
-	 * 
+	 *
 	 * @var array $membersArr.
 	 */
 	var $membersArr;
@@ -195,14 +195,14 @@
 
 	/**
 	 * Artifact types result handle.
-	 * 
+	 *
 	 * @var int $types_res.
 	 */
 	var $types_res;
 
 	/**
 	 * Associative array of data for plugins.
-	 * 
+	 *
 	 * @var array $plugins_data.
 	 */
 	var $plugins_data;
@@ -250,7 +250,7 @@
 				}
 			}
 		}
-		
+
 		return true;
 	}
 
@@ -274,7 +274,7 @@
 	 *	create - Create new group.
 	 *
 	 *	This method should be called on empty Group object.
-	 *  
+	 *
 	 *  @param	object	The User object.
 	 *  @param	string	The full name of the user.
 	 *  @param	string	The Unix name of the user.
@@ -328,7 +328,7 @@
 
 
 			db_begin();
-	
+
 			$res = db_query_params ('
 				INSERT INTO groups (
 					group_name,
@@ -364,14 +364,14 @@
 				db_rollback();
 				return false;
 			}
-	
+
 			$id = db_insertid($res, 'groups', 'group_id');
 			if (!$id) {
 				$this->setError(sprintf(_('ERROR: Could not get group id: %s'),db_error()));
 				db_rollback();
 				return false;
 			}
-			
+
 			if (!$this->fetchData($id)) {
 				db_rollback();
 				return false;
@@ -388,7 +388,7 @@
 			//
 			$res=db_query_params ('INSERT INTO user_group (user_id, group_id, admin_flags,
 				cvs_flags, artifact_flags, forum_flags, role_id)
-				VALUES ($1, $2, $3, $4, $5, $6, $7)', 
+				VALUES ($1, $2, $3, $4, $5, $6, $7)',
 					      array ($user->getID(),
 						     $id,
 						     'A',
@@ -402,14 +402,14 @@
 				return false;
 			}
 			}
-	
+
 			$hook_params = array ();
 			$hook_params['group'] = $this;
 			$hook_params['group_id'] = $this->getID();
 			$hook_params['group_name'] = $group_name;
 			$hook_params['unix_group_name'] = $unix_name;
 			plugin_hook ("group_create", $hook_params);
-			
+
 			db_commit();
 			if ($send_mail) {
 				$this->sendNewProjectNotificationEmail();
@@ -600,7 +600,7 @@
 
 		db_begin();
 
-		//XXX not yet actived logo_image_id='$logo_image_id', 
+		//XXX not yet actived logo_image_id='$logo_image_id',
 		$res = db_query_params ('UPDATE groups
 			SET group_name=$1,
 				homepage=$2,
@@ -775,7 +775,7 @@
 		$hook_params['group_id'] = $this->getID();
 		$hook_params['status'] = $status;
 		plugin_hook ("group_setstatus", $hook_params);
-		
+
 		db_commit();
 
 		// Log the audit trail
@@ -978,7 +978,7 @@
 	function getLicense() {
 		return $this->data_array['license'];
 	}
-	
+
 	/**
 	 * getLicenseName - the name of the license
 	 *
@@ -1023,7 +1023,7 @@
 	 */
 	function &getAdmins() {
 		$roles = RBACEngine::getInstance()->getRolesByAllowedAction ('project_admin', $this->getID()) ;
-		
+
 		$user_ids = array () ;
 
 		foreach ($roles as $role) {
@@ -1034,15 +1034,15 @@
 			    || $role->getHomeProject()->getID() != $this->getID()) {
 				continue ;
 			}
-			
+
 			foreach ($role->getUsers() as $u) {
 				$user_ids[] = $u->getID() ;
 			}
 		}
-			
+
 		return user_get_objects(array_unique($user_ids));
 	}
-		
+
 	/*
 
 		Common Group preferences for tools
@@ -1222,7 +1222,7 @@
 		} else {
 			return false;
 		}
-	}	   
+	}
 
 	/**
 	 *	setUseForum - Set the forum usage
@@ -1423,7 +1423,7 @@
 		} else {
 			return false;
 		}
-	}	   
+	}
 
 	/**
 	 *  usesPM - whether or not this group has opted to Project Manager.
@@ -1482,7 +1482,7 @@
 	}
 
 	/**
-	 *  usesPlugin - returns true if the group uses a particular plugin 
+	 *  usesPlugin - returns true if the group uses a particular plugin
 	 *
 	 *  @param	string	name of the plugin
 	 *  @return	boolean	whether plugin is being used or not
@@ -1522,7 +1522,7 @@
 	 *
 	 *  @param	string	name of the plugin
 	 *  @param	boolean	the new state
-	 *  @return	string	database result 
+	 *  @return	string	database result
 	 */
 	function setPluginUse($pluginname, $val=true) {
 		if ($val == $this->usesPlugin($pluginname)) {
@@ -1550,6 +1550,7 @@
 						       $plugin_id));
 			return $res ;
 		}
+		$this->normalizeAllRoles () ;
 	}
 
 	/**
@@ -1679,7 +1680,7 @@
 			$this->removeUser($i->getID());
 		}
 		// Failsafe until user_group table is gone
-		$res = db_query_params ('DELETE FROM user_group WHERE group_id=$1', 
+		$res = db_query_params ('DELETE FROM user_group WHERE group_id=$1',
 					array ($this->getID())) ;
 
 		// unlink roles from this project
@@ -1792,7 +1793,7 @@
 			db_rollback();
 			return false;
 		}
-					
+
 		//
 		//	Delete group history
 		//
@@ -1923,12 +1924,12 @@
 		if (!$res) {
 			return false;
 		}
-               
+
 		$hook_params = array ();
 		$hook_params['group'] = $this;
 		$hook_params['group_id'] = $this->getID();
 		plugin_hook ("group_delete", $hook_params);
-		
+
 		if (forge_get_config('upload_dir') != '' && $this->getUnixName()) {
 			exec('/bin/rm -rf '.forge_get_config('upload_dir').'/'.$this->getUnixName().'/');
 		}
@@ -1963,7 +1964,7 @@
 
 	/**
 	 *	addUser - controls adding a user to a group.
-	 *  
+	 *
 	 *  @param	string	Unix name of the user to add OR integer user_id.
 	 *	@param	int	The role_id this user should have.
 	 *	@return	boolean	success.
@@ -1980,7 +1981,7 @@
 			return false;
 		}
 		db_begin();
-		
+
 		/*
 			get user id for this user's unix_name
 		*/
@@ -2014,7 +2015,7 @@
 				db_rollback();
 				return false;
 			}
-			
+
 			if (USE_PFO_RBAC) {
 				$role->addUser (user_get_object ($user_id)) ;
 				if (!$SYS->sysCheckCreateGroup($this->getID())){
@@ -2037,8 +2038,8 @@
 			//
 			//	if not already a member, add them
 			//
-			$res_member = db_query_params ('SELECT user_id 
-				FROM user_group 
+			$res_member = db_query_params ('SELECT user_id
+				FROM user_group
 				WHERE user_id=$1 AND group_id=$2',
 						       array ($user_id, $this->getID())) ;
 
@@ -2046,7 +2047,7 @@
 				//
 				//	Create this user's row in the user_group table
 				//
-				$res = db_query_params ('INSERT INTO user_group 
+				$res = db_query_params ('INSERT INTO user_group
 					(user_id,group_id,admin_flags,forum_flags,project_flags,
 					doc_flags,cvs_flags,member_role,release_flags,artifact_flags)
 					VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10)',
@@ -2097,7 +2098,7 @@
 			} else {
 				//
 				//  user was already a member
-				//  make sure they are set up 
+				//  make sure they are set up
 				//
 				$user= user_get_object($user_id,$res_newuser);
 				$user->fetchData($user->getID());
@@ -2142,7 +2143,7 @@
 		$hook_params['user'] = &user_get_object($user_id);
 		$hook_params['user_id'] = $user_id;
 		plugin_hook ("group_adduser", $hook_params);
-		
+
 		//
 		//	audit trail
 		//
@@ -2153,12 +2154,12 @@
 
 	/**
 	 *  removeUser - controls removing a user from a group.
-	 * 
+	 *
 	 *  Users can remove themselves.
 	 *
 	 *  @param	int		The ID of the user to remove.
 	 *	@return	boolean	success.
-	 */ 
+	 */
 	function removeUser($user_id) {
 		global $SYS;
 
@@ -2167,7 +2168,7 @@
 			$this->setPermissionDeniedError();
 			return false;
 		}
-	
+
 		db_begin();
 
 		if (USE_PFO_RBAC) {
@@ -2193,7 +2194,7 @@
 			}
 
 		} else {
-			$res = db_query_params ('DELETE FROM user_group WHERE group_id=$1 AND user_id=$2', 
+			$res = db_query_params ('DELETE FROM user_group WHERE group_id=$1 AND user_id=$2',
 						array ($this->getID(),
 						       $user_id)) ;
 			if (!$res || db_affected_rows($res) < 1) {
@@ -2207,9 +2208,9 @@
 			//	reassign open artifacts to id=100
 			//
 			$res = db_query_params ('UPDATE artifact SET assigned_to=100
-				WHERE group_artifact_id 
-				IN (SELECT group_artifact_id 
-				FROM artifact_group_list 
+				WHERE group_artifact_id
+				IN (SELECT group_artifact_id
+				FROM artifact_group_list
 				WHERE group_id=$1 AND status_id=1 AND assigned_to=$2)',
 						array ($this->getID(),
 						       $user_id)) ;
@@ -2221,13 +2222,13 @@
 
 			//
 			//	reassign open tasks to id=100
-			//	first have to purge any assignments that would cause 
+			//	first have to purge any assignments that would cause
 			//	conflict with existing assignment to 100
 			//
 			$res = db_query_params ('DELETE FROM project_assigned_to
-					WHERE project_task_id IN (SELECT pt.project_task_id 
-					FROM project_task pt, project_group_list pgl, project_assigned_to pat 
-					WHERE pt.group_project_id = pgl.group_project_id 
+					WHERE project_task_id IN (SELECT pt.project_task_id
+					FROM project_task pt, project_group_list pgl, project_assigned_to pat
+					WHERE pt.group_project_id = pgl.group_project_id
 					AND pat.project_task_id=pt.project_task_id
 					AND pt.status_id=1 AND pgl.group_id=$1
 					AND pat.assigned_to_id=$2)
@@ -2240,10 +2241,10 @@
 				return false;
 			}
 			$res = db_query_params ('UPDATE project_assigned_to SET assigned_to_id=100
-				WHERE project_task_id IN (SELECT pt.project_task_id 
-				FROM project_task pt, project_group_list pgl 
-				WHERE pt.group_project_id = pgl.group_project_id 
-				AND pt.status_id=1 AND pgl.group_id=$1) 
+				WHERE project_task_id IN (SELECT pt.project_task_id
+				FROM project_task pt, project_group_list pgl
+				WHERE pt.group_project_id = pgl.group_project_id
+				AND pt.status_id=1 AND pgl.group_id=$1)
 				AND assigned_to_id=$2',
 						array ($this->getID(),
 						       $user_id)) ;
@@ -2270,18 +2271,18 @@
 
 			//audit trail
 			$this->addHistory('Removed User',$user_id);
-		
+
 		db_commit();
 		return true;
 	}
 
-	/**	 
+	/**
 	 *  updateUser - controls updating a user's role in this group.
 	 *
 	 *  @param	int		The ID of the user.
 	 *	@param	int		The role_id to set this user to.
 	 *	@return	boolean	success.
-	 */	 
+	 */
 	function updateUser($user_id,$role_id) {
 		global $SYS;
 
@@ -2298,7 +2299,7 @@
 			} elseif ($newrole->isError()) {
 				$this->setError(sprintf(_('Role: %s'),$role->getErrorMessage()));
 				return false;
-			} elseif ($newrole->getHomeProject() == NULL 
+			} elseif ($newrole->getHomeProject() == NULL
 				  || $newrole->getHomeProject()->getID() != $this->getID()) {
 				$this->setError(_('Wrong destination role'));
 				return false;
@@ -2333,8 +2334,8 @@
 			$this->setError(sprintf(_('Role: %s'),$role->getErrorMessage()));
 			return false;
 		}
-		}		
-		
+		}
+
 		$this->addHistory('Updated User',$user_id);
 		return true;
 	}
@@ -2349,7 +2350,7 @@
 	 *	@access public
 	 */
 	function addHistory($field_name, $old_value, $new_value="") {
-		return db_query_params ('INSERT INTO group_history(group_id,field_name,old_value,new_value,mod_by,adddate) 
+		return db_query_params ('INSERT INTO group_history(group_id,field_name,old_value,new_value,mod_by,adddate)
 			VALUES ($1,$2,$3,$4,$5,$6)',
 					array ($this->getID(),
 					       $field_name,
@@ -2357,13 +2358,13 @@
 					       $new_value,
 					       user_getid(),
 					       time()));
-	}		  
+	}
 
 	/**
 	 *	activateUsers - Make sure that group members have unix accounts.
 	 *
 	 *	Setup unix accounts for group members. Can be called even
-	 *	if members are already active. 
+	 *	if members are already active.
 	 *
 	 *	@access private
 	 */
@@ -2371,7 +2372,7 @@
 		/*
 			Activate member(s) of the project
 		*/
-		
+
 		if (USE_PFO_RBAC) {
 		$members = $this->getUsers (true) ;
 
@@ -2385,7 +2386,7 @@
 					return false ;
 				}
 			}
-			
+
 		}
 		} else {
 			$res_member = db_query_params ('SELECT user_id,role_id FROM user_group WHERE group_id=$1',
@@ -2397,7 +2398,7 @@
 				}
 			}
 		}
-		
+
 		return true ;
 	}
 
@@ -2437,7 +2438,7 @@
 			$this->setError(_("Group already active"));
 			return false;
 		}
-		
+
 		db_begin();
 
 		// Step 1: Activate group and create LDAP entries
@@ -2504,7 +2505,7 @@
 			$adminperms = array ('project_admin' => array ($this->getID() => 1)) ;
 			$role_id = $role->create ('Admin', $adminperms, true) ;
 		}
-		
+
 		if (USE_PFO_RBAC) {
 			$roles = $this->getRoles() ;
 			foreach ($roles as $r) {
@@ -2516,7 +2517,7 @@
 				}
 			}
 		}
-		
+
 		// Temporarily switch to the submitter's identity
 		$saved_session = session_get_user () ;
 		session_set_internal ($idadmin_group) ;
@@ -2558,7 +2559,7 @@
 					}
 				}
 			}
-			
+
 			if (forge_get_config ('use_docman')) {
 				$this->setUseDocman ($template->usesDocman()) ;
 				if ($template->usesDocman()) {
@@ -2578,7 +2579,7 @@
 					}
 				}
 			}
-			
+
 			if (forge_get_config ('use_frs')) {
 				$this->setUseFRS ($template->usesFRS()) ;
 				if ($template->usesFRS()) {
@@ -2617,7 +2618,7 @@
 					$newrole->setPublic ($oldrole->isPublic()) ;
 				}
 				$oldsettings = $oldrole->getSettingsForProject ($template) ;
-				
+
 				$sections = array ('project_read', 'project_admin', 'frs', 'scm', 'docman', 'tracker_admin', 'new_tracker', 'forum_admin', 'new_forum', 'pm_admin', 'new_pm') ;
 				foreach ($sections as $section) {
 					$newrole->setSetting ($section, $this->getID(), $oldsettings[$section][$template->getID()]) ;
@@ -2636,7 +2637,7 @@
 						}
 					}
 				}
-			}	
+			}
 
 			$lm = new WidgetLayoutManager();
 			$lm->createDefaultLayoutForProject ($this->getID(), $template->getID()) ;
@@ -2670,14 +2671,14 @@
 
 		$this->sendApprovalEmail();
 		$this->addHistory('Approved', 'x');
-		
-		// 
+
+		//
 		//	Plugin can make approve operation there
 		//
-		//	
+		//
 		$params[0] = $idadmin_group ;
 		$params[1] = $this->getID();
-		plugin_hook('group_approved',$params);	
+		plugin_hook('group_approved',$params);
 
 		return true;
 	}
@@ -2732,14 +2733,16 @@
 Enjoy the system, and please tell others about %4$s. Let us know
 if there is anything we can do to help you.
 
--- the %4$s crew'), 
-						       htmlspecialchars_decode($this->getPublicName()),
-						       $this->getUnixName(), 
-						       util_make_url ('/project/admin/?group_id='.$this->getID()),
-						       forge_get_config ('forge_name'));
-	
-			util_send_message($admin->getEmail(), sprintf(_('%1$s Project Approved'), forge_get_config ('forge_name')), $message);
+-- the %4$s crew'),
+			    util_unconvert_htmlspecialchars($this->getPublicName()),
+			    $this->getUnixName(),
+			    util_make_url('/project/admin/?group_id='.$this->getID()),
+			    forge_get_config('forge_name'));
 
+			util_send_message($admin->getEmail(),
+			    sprintf(_('%1$s Project Approved'),
+			    forge_get_config('forge_name')), $message);
+
 			setup_gettext_from_context();
 		}
 
@@ -2799,7 +2802,9 @@
 					"response_text");
 			}
 
-			util_send_message($admin->getEmail(), sprintf(_('%1$s Project Denied'), forge_get_config ('forge_name')), $response);
+			util_send_message($admin->getEmail(),
+			    sprintf(_('%1$s Project Denied'),
+			    forge_get_config('forge_name')), $response);
 			setup_gettext_from_context();
 		}
 
@@ -2834,7 +2839,7 @@
 			$this->setError(_("Could not find user who has submitted the project."));
 			return false;
 		}
-		
+
 		$admins = RBACEngine::getInstance()->getUsersByAllowedAction ('approve_projects', -1) ;
 
 		if (count($admins) < 1) {
@@ -2849,45 +2854,53 @@
 			foreach ($submitters as $u) {
 				$submitter_names[] = $u->getRealName() ;
 			}
-			
+
 			$message = sprintf(_('New %1$s Project Submitted
 
 Project Full Name:  %2$s
 Submitted Description: %3$s
 '),
-					   forge_get_config ('forge_name'),
-					   htmlspecialchars_decode($this->getPublicName()),
-					   htmlspecialchars_decode($this->getRegistrationPurpose()));
-			
+			    forge_get_config('forge_name'),
+			    util_unconvert_htmlspecialchars($this->getPublicName()),
+			    util_unconvert_htmlspecialchars($this->getRegistrationPurpose()));
+
 			foreach ($submitters as $submitter) {
 				$message .= sprintf(_('Submitter: %1$s (%2$s)
 '),
-						    $submitter->getRealName(), 
-						    $submitter->getUnixName());
+				    $submitter->getRealName(),
+				    $submitter->getUnixName());
 			}
 
 			$message .= sprintf (_('
 Please visit the following URL to approve or reject this project:
 %1$s'),
-					    util_make_url ('/admin/approve-pending.php')) ;
-			util_send_message($admin_email, sprintf(_('New %1$s Project Submitted'), forge_get_config ('forge_name')), $message);
+			    util_make_url ('/admin/approve-pending.php')) ;
+			util_send_message($admin_email,
+			    sprintf(_('New %1$s Project Submitted'),
+			    forge_get_config('forge_name')), $message);
 			setup_gettext_from_context();
 		}
-		
 
+
 		$email = $submitter->getEmail() ;
 		setup_gettext_for_user ($submitter) ;
-				
+
 		$message=sprintf(_('New %1$s Project Submitted
 
 Project Full Name:  %2$s
 Submitted Description: %3$s
 
-The %1$s admin team will now examine your project submission.  You will be notified of their decision.'), forge_get_config ('forge_name'), $this->getPublicName(), util_unconvert_htmlspecialchars($this->getRegistrationPurpose()), forge_get_config('web_host'));
-				
-		util_send_message($email, sprintf(_('New %1$s Project Submitted'), forge_get_config ('forge_name')), $message);
+The %1$s admin team will now examine your project submission.  You will be notified of their decision.'),
+		    forge_get_config('forge_name'),
+		    $this->getPublicName(),
+		    util_unconvert_htmlspecialchars($this->getRegistrationPurpose()),
+		    forge_get_config('web_host'));
+
+		util_send_message($email,
+		    sprintf(_('New %1$s Project Submitted'),
+		    forge_get_config('forge_name')), $message);
 		setup_gettext_from_context();
-		
+
 		return true;
 	}
 
@@ -2923,7 +2936,7 @@
 	 */
 	function getRolesId () {
 		$role_ids = array () ;
-		
+
 		if (USE_PFO_RBAC) {
 			$res = db_query_params ('SELECT role_id FROM pfo_role WHERE home_group_id=$1',
 						array ($this->getID()));
@@ -2942,15 +2955,15 @@
 				$role_ids[] = $arr['role_id'] ;
 			}
 		}
-		
+
 		return array_unique ($role_ids) ;
 	}
-	
+
 	function getRoles () {
 		$result = array () ;
 
 		$roles = $this->getRolesId () ;
-		if (USE_PFO_RBAC) {				
+		if (USE_PFO_RBAC) {
 			$engine = RBACEngine::getInstance() ;
 			foreach ($roles as $role_id) {
 				$result[] = $engine->getRoleById ($role_id) ;
@@ -2966,7 +2979,7 @@
 
 	function normalizeAllRoles () {
 		$roles = $this->getRoles () ;
-		
+
 		foreach ($roles as $r) {
 			$r->normalizeData () ;
 		}
@@ -2980,7 +2993,7 @@
 	function getUnixStatus() {
 		return $this->data_array['unix_status'];
 	}
-	
+
 	/**
 	 *	setUnixStatus - Sets status of activation of unix account.
 	 *
@@ -2998,7 +3011,7 @@
 		$res = db_query_params ('UPDATE groups SET unix_status=$1 WHERE group_id=$2',
 					array ($status,
 					       $this->getID())) ;
-	
+
 		if (!$res) {
 			$this->setError(sprintf(_('ERROR - Could Not Update Group Unix Status: %s'),db_error()));
 			db_rollback();
@@ -3019,13 +3032,13 @@
 					}
 				}
 			}
-			
+
 			$this->data_array['unix_status']=$status;
 			db_commit();
 			return true;
 		}
 	}
-	
+
 	/**
 	 *	getUsers - Get the users of a group
 	 *
@@ -3034,11 +3047,11 @@
 	function getUsers($onlylocal = true) {
 		if (!isset($this->membersArr)) {
 			$this->membersArr = array () ;
-			
+
 			if (USE_PFO_RBAC) {
 				$ids = array () ;
 				foreach ($this->getRoles() as $role) {
-					if ($onlylocal 
+					if ($onlylocal
 					    && ($role->getHomeProject() == NULL || $role->getHomeProject()->getID() != $this->getID())) {
 						continue ;
 					}
@@ -3054,7 +3067,7 @@
 					}
 				}
 			} else {
-				
+
 				$users_group_res = db_query_params ('SELECT u.user_id FROM users u, user_group ug WHERE ug.group_id=$1 AND ug.user_id=u.user_id AND u.status=$2',
 								    array ($this->getID(),
 									   'A'));
@@ -3062,11 +3075,11 @@
 					$this->setError(_('Error: Enable to get users from group'). ' ' . $this->getID() . ' ' .db_error());
 					return false;
 				}
-				
+
 				for ($i=0; $i<db_numrows($users_group_res); $i++) {
 					$this->membersArr[$i] = new GFUser(db_result($users_group_res,$i,'user_id'),false);
 				}
-				
+
 			}
 		}
 		return $this->membersArr;
@@ -3078,7 +3091,7 @@
 		$res = db_query_params ('UPDATE groups SET use_docman_create_online=$1 WHERE group_id=$2',
 					array ($status,
 					       $this->getID())) ;
-	
+
 		if (!$res) {
 			$this->setError(sprintf(_('ERROR - Could Not Update Group DocmanCreateOnline Status: %s'),db_error()));
 			db_rollback();
@@ -3096,7 +3109,7 @@
 		$res = db_query_params ('UPDATE groups SET use_webdav=$1 WHERE group_id=$2',
 					array ($status,
 					       $this->getID())) ;
-	
+
 		if (!$res) {
 			$this->setError(sprintf(_('ERROR - Could Not Update Group UseWebdab Status: %s'),db_error()));
 			db_rollback();
@@ -3114,7 +3127,7 @@
 		$res = db_query_params ('UPDATE groups SET use_docman_search=$1, force_docman_reindex=$1 WHERE group_id=$2',
 					array ($status,
 					       $this->getID())) ;
-	
+
 		if (!$res) {
 			$this->setError(sprintf(_('ERROR - Could Not Update Group UseDocmanSearch Status: %s'),db_error()));
 			db_rollback();
@@ -3132,7 +3145,7 @@
 		$res = db_query_params ('UPDATE groups SET force_docman_reindex=$1 WHERE group_id=$2',
 					array ($status,
 					       $this->getID())) ;
-	
+
 		if (!$res) {
 			$this->setError(sprintf(_('ERROR - Could Not Update Group force_docman_reindex %s'),db_error()));
 			db_rollback();
@@ -3268,5 +3281,3 @@
 // mode: php
 // c-file-style: "bsd"
 // End:
-
-?>

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/common/include/config-vars.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/common/include/config-vars.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/common/include/config-vars.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -21,130 +21,436 @@
  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 
-forge_define_config_item ('forge_name', 'core', $GLOBALS['sys_name']) ;
-forge_define_config_item ('force_login', 'core', $GLOBALS['sys_force_login']) ;
+require_once dirname(__FILE__).'/preutils.php';
+
+if (isset ($GLOBALS['sys_name'])) {
+	forge_define_config_item ('forge_name', 'core', $GLOBALS['sys_name']) ;
+} else {
+	forge_define_config_item ('forge_name', 'core', 'FusionForge') ;
+}
+if (isset ($GLOBALS['sys_force_login'])) {
+	forge_define_config_item ('force_login', 'core', $GLOBALS['sys_force_login']) ;
+} else {
+	forge_define_config_item ('force_login', 'core', false) ;
+}
 forge_set_config_item_bool ('force_login', 'core') ;
-forge_define_config_item ('user_registration_restricted', 'core', $GLOBALS['sys_user_reg_restricted']) ;
+if (isset ($GLOBALS['sys_user_reg_restricted'])) {
+	forge_define_config_item ('user_registration_restricted', 'core', $GLOBALS['sys_user_reg_restricted']) ;
+} else {
+	forge_define_config_item ('user_registration_restricted', 'core', false) ;
+}
 forge_set_config_item_bool ('user_registration_restricted', 'core') ;
-forge_define_config_item ('use_captcha', 'core', $GLOBALS['sys_user_reg_captcha']) ;
+forge_define_config_item ('use_captcha', 'core', util_ifsetor($GLOBALS['sys_user_reg_captcha']));
 forge_set_config_item_bool ('use_captcha', 'core');
-forge_define_config_item ('project_registration_restricted', 'core', $GLOBALS['sys_project_reg_restricted']) ;
+if (isset ($GLOBALS['sys_project_reg_restricted'])) {
+	forge_define_config_item ('project_registration_restricted', 'core', $GLOBALS['sys_project_reg_restricted']) ;
+} else {
+	forge_define_config_item ('project_registration_restricted', 'core', false) ;
+}
 forge_set_config_item_bool ('project_registration_restricted', 'core') ;
 forge_define_config_item ('project_auto_approval', 'core', false) ;
 forge_set_config_item_bool ('project_auto_approval', 'core') ;
 forge_define_config_item ('project_auto_approval_user', 'core', 'admin') ;
 forge_define_config_item ('allow_project_without_template', 'core', true) ;
 forge_set_config_item_bool ('allow_project_without_template', 'core') ;
-forge_define_config_item ('web_host', 'core', $GLOBALS['sys_default_domain']) ;
+if (isset ($GLOBALS['sys_default_domain'])) {
+	forge_define_config_item ('web_host', 'core', $GLOBALS['sys_default_domain']) ;
+} else {
+	forge_define_config_item ('web_host', 'core', '') ;
+}
 forge_define_config_item ('http_port', 'core', 80) ;
 forge_define_config_item ('https_port', 'core', 443) ;
-forge_define_config_item ('apache_user', 'core', $GLOBALS['sys_apache_user']) ;
-forge_define_config_item ('apache_group', 'core', $GLOBALS['sys_apache_group']) ;
+if (isset ($GLOBALS['sys_apache_user'])) {
+	forge_define_config_item ('apache_user', 'core', $GLOBALS['sys_apache_user']) ;
+} else {
+	forge_define_config_item ('apache_user', 'core', '') ;
+}
+if (isset ($GLOBALS['sys_apache_group'])) {
+	forge_define_config_item ('apache_group', 'core', $GLOBALS['sys_apache_group']) ;
+} else {
+	forge_define_config_item ('apache_group', 'core', '') ;
+}
 forge_define_config_item ('scm_tarballs_path', 'core', '$core/data_path/scmtarballs') ;
 forge_define_config_item ('scm_snapshots_path', 'core', '$core/data_path/scmsnapshots') ;
 forge_define_config_item ('plugins_path', 'core', '$core/source_path/plugins') ;
 forge_define_config_item ('themes_root', 'core', '$core/source_path/www/themes') ;
-forge_define_config_item ('default_theme', 'core', $GLOBALS['sys_theme']) ;
-forge_define_config_item ('default_language', 'core', $GLOBALS['sys_lang']) ;
-forge_define_config_item ('default_timezone', 'core', $GLOBALS['sys_default_timezone']) ;
-forge_define_config_item ('default_country_code', 'core', $GLOBALS['sys_default_country_code']) ;
-forge_define_config_item ('use_scm', 'core', $GLOBALS['sys_use_scm']) ;
+if (isset ($GLOBALS['sys_theme'])) {
+	forge_define_config_item ('default_theme', 'core', $GLOBALS['sys_theme']) ;
+} else {
+	forge_define_config_item ('default_theme', 'core', 'gforge') ;
+}
+if (isset ($GLOBALS['sys_lang'])) {
+	forge_define_config_item ('default_language', 'core', $GLOBALS['sys_lang']) ;
+} else {
+	forge_define_config_item ('default_language', 'core', 'en') ;
+}
+if (isset ($GLOBALS['sys_default_timezone'])) {
+	forge_define_config_item ('default_timezone', 'core', $GLOBALS['sys_default_timezone']) ;
+} else {
+	forge_define_config_item ('default_timezone', 'core', 'UTC') ;
+}
+if (isset ($GLOBALS['sys_default_country_code'])) {
+	forge_define_config_item ('default_country_code', 'core', $GLOBALS['sys_default_country_code']) ;
+} else {
+	forge_define_config_item ('default_country_code', 'core', 'US') ;
+}
+if (isset ($GLOBALS['sys_use_scm'])) {
+	forge_define_config_item ('use_scm', 'core', $GLOBALS['sys_use_scm']) ;
+} else {
+	forge_define_config_item ('use_scm', 'core', true) ;
+}
 forge_set_config_item_bool ('use_scm', 'core') ;
-forge_define_config_item ('use_dav', 'core', @$GLOBALS['sys_use_dav']) ;
+if (isset ($GLOBALS['sys_use_dav'])) {
+	forge_define_config_item ('use_dav', 'core', $GLOBALS['sys_use_dav']) ;
+} else {
+	forge_define_config_item ('use_dav', 'core', true) ;
+}
 forge_set_config_item_bool ('use_dav', 'core') ;
-forge_define_config_item ('use_tracker', 'core', $GLOBALS['sys_use_tracker']) ;
+if (isset ($GLOBALS['sys_use_tracker'])) {
+	forge_define_config_item ('use_tracker', 'core', $GLOBALS['sys_use_tracker']) ;
+} else {
+	forge_define_config_item ('use_tracker', 'core', true) ;
+}
 forge_set_config_item_bool ('use_tracker', 'core') ;
-forge_define_config_item ('use_forum', 'core', $GLOBALS['sys_use_forum']) ;
+if (isset ($GLOBALS['sys_use_forum'])) {
+	forge_define_config_item ('use_forum', 'core', $GLOBALS['sys_use_forum']) ;
+} else {
+	forge_define_config_item ('use_forum', 'core', true) ;
+}
 forge_set_config_item_bool ('use_forum', 'core') ;
-forge_define_config_item ('use_pm', 'core', $GLOBALS['sys_use_pm']) ;
+if (isset ($GLOBALS['sys_use_pm'])) {
+	forge_define_config_item ('use_pm', 'core', $GLOBALS['sys_use_pm']) ;
+} else {
+	forge_define_config_item ('use_pm', 'core', true) ;
+}
 forge_set_config_item_bool ('use_pm', 'core') ;
-forge_define_config_item ('use_docman', 'core', $GLOBALS['sys_use_docman']) ;
+if (isset ($GLOBALS['sys_use_docman'])) {
+	forge_define_config_item ('use_docman', 'core', $GLOBALS['sys_use_docman']) ;
+} else {
+	forge_define_config_item ('use_docman', 'core', true) ;
+}
 forge_set_config_item_bool ('use_docman', 'core') ;
-forge_define_config_item ('use_diary', 'core', $GLOBALS['sys_use_diary']) ;
+if (isset ($GLOBALS['sys_use_diary'])) {
+	forge_define_config_item ('use_diary', 'core', $GLOBALS['sys_use_diary']) ;
+} else {
+	forge_define_config_item ('use_diary', 'core', false) ;
+}
 forge_set_config_item_bool ('use_diary', 'core') ;
-forge_define_config_item ('use_news', 'core', $GLOBALS['sys_use_news']) ;
+if (isset ($GLOBALS['sys_use_news'])) {
+	forge_define_config_item ('use_news', 'core', $GLOBALS['sys_use_news']) ;
+} else {
+	forge_define_config_item ('use_news', 'core', true) ;
+}
 forge_set_config_item_bool ('use_news', 'core') ;
-forge_define_config_item ('use_mail', 'core', $GLOBALS['sys_use_mail']) ;
+if (isset ($GLOBALS['sys_use_mail'])) {
+	forge_define_config_item ('use_mail', 'core', $GLOBALS['sys_use_mail']) ;
+} else {
+	forge_define_config_item ('use_mail', 'core', true) ;
+}
 forge_set_config_item_bool ('use_mail', 'core') ;
-forge_define_config_item ('use_survey', 'core', $GLOBALS['sys_use_survey']) ;
+if (isset ($GLOBALS['sys_use_survey'])) {
+	forge_define_config_item ('use_survey', 'core', $GLOBALS['sys_use_survey']) ;
+} else {
+	forge_define_config_item ('use_survey', 'core', true) ;
+}
 forge_set_config_item_bool ('use_survey', 'core') ;
-forge_define_config_item ('use_frs', 'core', $GLOBALS['sys_use_frs']) ;
+if (isset ($GLOBALS['sys_use_frs'])) {
+	forge_define_config_item ('use_frs', 'core', $GLOBALS['sys_use_frs']) ;
+} else {
+	forge_define_config_item ('use_frs', 'core', true) ;
+}
 forge_set_config_item_bool ('use_frs', 'core') ;
-forge_define_config_item ('use_project_tags', 'core', $GLOBALS['sys_use_project_tags']) ;
+if (isset ($GLOBALS['sys_use_project_tags'])) {
+	forge_define_config_item ('use_project_tags', 'core', $GLOBALS['sys_use_project_tags']) ;
+} else {
+	forge_define_config_item ('use_project_tags', 'core', true) ;
+}
 forge_set_config_item_bool ('use_project_tags', 'core') ;
-forge_define_config_item ('use_project_full_list', 'core', $GLOBALS['sys_use_project_full_list']) ;
+if (isset ($GLOBALS['sys_use_project_full_list'])) {
+	forge_define_config_item ('use_project_full_list', 'core', $GLOBALS['sys_use_project_full_list']) ;
+} else {
+	forge_define_config_item ('use_project_full_list', 'core', true) ;
+}
 forge_set_config_item_bool ('use_project_full_list', 'core') ;
-forge_define_config_item ('use_fti', 'core', $GLOBALS['sys_use_fti']) ;
+if (isset ($GLOBALS['sys_use_fti'])) {
+	forge_define_config_item ('use_fti', 'core', $GLOBALS['sys_use_fti']) ;
+} else {
+	forge_define_config_item ('use_fti', 'core', true) ;
+}
 forge_set_config_item_bool ('use_fti', 'core') ;
-forge_define_config_item ('use_ftp', 'core', $GLOBALS['sys_use_ftp']) ;
+if (isset ($GLOBALS['sys_use_ftp'])) {
+	forge_define_config_item ('use_ftp', 'core', $GLOBALS['sys_use_ftp']) ;
+} else {
+	forge_define_config_item ('use_ftp', 'core', false) ;
+}
 forge_set_config_item_bool ('use_ftp', 'core') ;
-forge_define_config_item ('use_trove', 'core', $GLOBALS['sys_use_trove']) ;
+if (isset ($GLOBALS['sys_use_trove'])) {
+	forge_define_config_item ('use_trove', 'core', $GLOBALS['sys_use_trove']) ;
+} else {
+	forge_define_config_item ('use_trove', 'core', true) ;
+}
 forge_set_config_item_bool ('use_trove', 'core') ;
-forge_define_config_item ('use_snippet', 'core', $GLOBALS['sys_use_snippet']) ;
+if (isset ($GLOBALS['sys_use_snippet'])) {
+	forge_define_config_item ('use_snippet', 'core', $GLOBALS['sys_use_snippet']) ;
+} else {
+	forge_define_config_item ('use_snippet', 'core', true) ;
+}
 forge_set_config_item_bool ('use_snippet', 'core') ;
-forge_define_config_item ('use_ssl', 'core', $GLOBALS['sys_use_ssl']) ;
+if (isset ($GLOBALS['sys_use_ssl'])) {
+	forge_define_config_item ('use_ssl', 'core', $GLOBALS['sys_use_ssl']) ;
+} else {
+	forge_define_config_item ('use_ssl', 'core', true) ;
+}
 forge_set_config_item_bool ('use_ssl', 'core') ;
-forge_define_config_item ('use_people', 'core', $GLOBALS['sys_use_people']) ;
+if (isset ($GLOBALS['sys_use_people'])) {
+	forge_define_config_item ('use_people', 'core', $GLOBALS['sys_use_people']) ;
+} else {
+	forge_define_config_item ('use_people', 'core', false) ;
+}
 forge_set_config_item_bool ('use_people', 'core') ;
-forge_define_config_item ('use_shell', 'core', $GLOBALS['sys_use_shell']) ;
+if (isset ($GLOBALS['sys_use_shell'])) {
+	forge_define_config_item ('use_shell', 'core', $GLOBALS['sys_use_shell']) ;
+} else {
+	forge_define_config_item ('use_shell', 'core', true) ;
+}
 forge_set_config_item_bool ('use_shell', 'core') ;
-forge_define_config_item ('use_ratings', 'core', $GLOBALS['sys_use_ratings']) ;
+if (isset ($GLOBALS['sys_use_ratings'])) {
+	forge_define_config_item ('use_ratings', 'core', $GLOBALS['sys_use_ratings']) ;
+} else {
+	forge_define_config_item ('use_ratings', 'core', true) ;
+}
 forge_set_config_item_bool ('use_ratings', 'core') ;
-forge_define_config_item ('use_ftp_uploads', 'core', $GLOBALS['sys_use_ftpuploads']) ;
+if (isset ($GLOBALS['sys_use_ftpuploads'])) {
+	forge_define_config_item ('use_ftp_uploads', 'core', $GLOBALS['sys_use_ftpuploads']) ;
+} else {
+	forge_define_config_item ('use_ftp_uploads', 'core', true) ;
+}
 forge_set_config_item_bool ('use_ftp_uploads', 'core') ;
-forge_define_config_item ('ftp_upload_dir', 'core', $GLOBALS['sys_ftp_upload_dir']) ;
-forge_define_config_item ('upload_dir', 'core', $GLOBALS['sys_upload_dir']) ;
+if (isset ($GLOBALS['sys_ftp_upload_dir'])) {
+	forge_define_config_item ('ftp_upload_dir', 'core', $GLOBALS['sys_ftp_upload_dir']) ;
+} else {
+	forge_define_config_item ('ftp_upload_dir', 'core', '') ;
+}
+if (isset ($GLOBALS['sys_upload_dir'])) {
+	forge_define_config_item ('upload_dir', 'core', $GLOBALS['sys_upload_dir']) ;
+} else {
+	forge_define_config_item ('upload_dir', 'core', '') ;
+}
 forge_define_config_item ('use_manual_uploads', 'core', isset ($GLOBALS['sys_use_manual_uploads']) ? $GLOBALS['sys_use_manual_uploads'] : false) ;
 forge_set_config_item_bool ('use_manual_uploads', 'core') ;
-forge_define_config_item ('use_gateways', 'core', $GLOBALS['sys_use_gateways']) ;
+if (isset ($GLOBALS['sys_use_gateways'])) {
+	forge_define_config_item ('use_gateways', 'core', $GLOBALS['sys_use_gateways']) ;
+} else {
+	forge_define_config_item ('use_gateways', 'core', true) ;
+}
 forge_set_config_item_bool ('use_gateways', 'core') ;
-forge_define_config_item ('use_project_vhost', 'core', $GLOBALS['sys_use_project_vhost']) ;
+if (isset ($GLOBALS['sys_use_project_vhost'])) {
+	forge_define_config_item ('use_project_vhost', 'core', $GLOBALS['sys_use_project_vhost']) ;
+} else {
+	forge_define_config_item ('use_project_vhost', 'core', true) ;
+}
 forge_set_config_item_bool ('use_project_vhost', 'core') ;
-forge_define_config_item ('use_project_database', 'core', $GLOBALS['sys_use_project_database']) ;
+if (isset ($GLOBALS['sys_use_project_database'])) {
+	forge_define_config_item ('use_project_database', 'core', $GLOBALS['sys_use_project_database']) ;
+} else {
+	forge_define_config_item ('use_project_database', 'core', false) ;
+}
 forge_set_config_item_bool ('use_project_database', 'core') ;
-forge_define_config_item ('use_project_multimedia', 'core', $GLOBALS['sys_use_project_multimedia']) ;
+if (isset ($GLOBALS['sys_use_project_multimedia'])) {
+	forge_define_config_item ('use_project_multimedia', 'core', $GLOBALS['sys_use_project_multimedia']) ;
+} else {
+	forge_define_config_item ('use_project_multimedia', 'core', false) ;
+}
 forge_set_config_item_bool ('use_project_multimedia', 'core') ;
-forge_define_config_item ('download_host', 'core', $GLOBALS['sys_download_host']) ;
-forge_define_config_item ('shell_host', 'core', $GLOBALS['sys_shell_host']) ;
-forge_define_config_item ('users_host', 'core', $GLOBALS['sys_users_host']) ;
-forge_define_config_item ('lists_host', 'core', $GLOBALS['sys_lists_host']) ;
-forge_define_config_item ('scm_host', 'core', $GLOBALS['sys_scm_host']) ;
-forge_define_config_item ('forum_return_domain', 'core', $GLOBALS['sys_forum_return_domain']) ;
-forge_define_config_item ('use_jabber', 'core', $GLOBALS['sys_use_jabber']) ;
+if (isset ($GLOBALS['sys_download_host'])) {
+	forge_define_config_item ('download_host', 'core', $GLOBALS['sys_download_host']) ;
+} else {
+	forge_define_config_item ('download_host', 'core', '') ;
+}
+if (isset ($GLOBALS['sys_shell_host'])) {
+	forge_define_config_item ('shell_host', 'core', $GLOBALS['sys_shell_host']) ;
+} else {
+	forge_define_config_item ('shell_host', 'core', '') ;
+}
+if (isset ($GLOBALS['sys_users_host'])) {
+	forge_define_config_item ('users_host', 'core', $GLOBALS['sys_users_host']) ;
+} else {
+	forge_define_config_item ('users_host', 'core', '') ;
+}
+if (isset ($GLOBALS['sys_lists_host'])) {
+	forge_define_config_item ('lists_host', 'core', $GLOBALS['sys_lists_host']) ;
+} else {
+	forge_define_config_item ('lists_host', 'core', '') ;
+}
+if (isset ($GLOBALS['sys_scm_host'])) {
+	forge_define_config_item ('scm_host', 'core', $GLOBALS['sys_scm_host']) ;
+} else {
+	forge_define_config_item ('scm_host', 'core', '') ;
+}
+if (isset ($GLOBALS['sys_forum_return_domain'])) {
+	forge_define_config_item ('forum_return_domain', 'core', $GLOBALS['sys_forum_return_domain']) ;
+} else {
+	forge_define_config_item ('forum_return_domain', 'core', '') ;
+}
+if (isset ($GLOBALS['sys_use_jabber'])) {
+	forge_define_config_item ('use_jabber', 'core', $GLOBALS['sys_use_jabber']) ;
+} else {
+	forge_define_config_item ('use_jabber', 'core', false) ;
+}
 forge_set_config_item_bool ('use_jabber', 'core') ;
-forge_define_config_item ('jabber_host', 'core', $GLOBALS['sys_jabber_server']) ;
-forge_define_config_item ('jabber_port', 'core', $GLOBALS['sys_jabber_port']) ;
-forge_define_config_item ('jabber_user', 'core', $GLOBALS['sys_jabber_user']) ;
+if (isset ($GLOBALS['sys_jabber_server'])) {
+	forge_define_config_item ('jabber_host', 'core', $GLOBALS['sys_jabber_server']) ;
+} else {
+	forge_define_config_item ('jabber_host', 'core', '') ;
+}
+if (isset ($GLOBALS['sys_jabber_port'])) {
+	forge_define_config_item ('jabber_port', 'core', $GLOBALS['sys_jabber_port']) ;
+} else {
+	forge_define_config_item ('jabber_port', 'core', '') ;
+}
+if (isset ($GLOBALS['sys_jabber_user'])) {
+	forge_define_config_item ('jabber_user', 'core', $GLOBALS['sys_jabber_user']) ;
+} else {
+	forge_define_config_item ('jabber_user', 'core', '') ;
+}
 forge_define_config_item ('jabber_password', 'core', isset($GLOBALS['sys_jabber_pass']) ? $GLOBALS['sys_jabber_pass'] : '') ;
-forge_define_config_item ('ldap_host', 'core', $GLOBALS['sys_ldap_host']) ;
-forge_define_config_item ('ldap_port', 'core', $GLOBALS['sys_ldap_port']) ;
-forge_define_config_item ('ldap_version', 'core', $GLOBALS['sys_ldap_version']) ;
-forge_define_config_item ('ldap_base_dn', 'core', $GLOBALS['sys_ldap_base_dn']) ;
-forge_define_config_item ('ldap_bind_dn', 'core', $GLOBALS['sys_ldap_bind_dn']) ;
-forge_define_config_item ('ldap_admin_dn', 'core', $GLOBALS['sys_ldap_admin_dn']) ;
+if (isset ($GLOBALS['sys_ldap_host'])) {
+	forge_define_config_item ('ldap_host', 'core', $GLOBALS['sys_ldap_host']) ;
+} else {
+	forge_define_config_item ('ldap_host', 'core', '') ;
+}
+if (isset ($GLOBALS['sys_ldap_port'])) {
+	forge_define_config_item ('ldap_port', 'core', $GLOBALS['sys_ldap_port']) ;
+} else {
+	forge_define_config_item ('ldap_port', 'core', '') ;
+}
+if (isset ($GLOBALS['sys_ldap_version'])) {
+	forge_define_config_item ('ldap_version', 'core', $GLOBALS['sys_ldap_version']) ;
+} else {
+	forge_define_config_item ('ldap_version', 'core', 3) ;
+}
+if (isset ($GLOBALS['sys_ldap_base_dn'])) {
+	forge_define_config_item ('ldap_base_dn', 'core', $GLOBALS['sys_ldap_base_dn']) ;
+} else {
+	forge_define_config_item ('ldap_base_dn', 'core', '') ;
+}
+if (isset ($GLOBALS['sys_ldap_bind_dn'])) {
+	forge_define_config_item ('ldap_bind_dn', 'core', $GLOBALS['sys_ldap_bind_dn']) ;
+} else {
+	forge_define_config_item ('ldap_bind_dn', 'core', '') ;
+}
+if (isset ($GLOBALS['sys_ldap_admin_dn'])) {
+	forge_define_config_item ('ldap_admin_dn', 'core', $GLOBALS['sys_ldap_admin_dn']) ;
+} else {
+	forge_define_config_item ('ldap_admin_dn', 'core', '') ;
+}
 forge_define_config_item ('ldap_password', 'core', isset($GLOBALS['sys_ldap_passwd']) ? $GLOBALS['sys_ldap_passwd'] : '') ;
-forge_define_config_item ('news_group', 'core', $GLOBALS['sys_news_group']) ;
-forge_define_config_item ('stats_group', 'core', $GLOBALS['sys_stats_group']) ;
-forge_define_config_item ('peer_rating_group', 'core', $GLOBALS['sys_peer_rating_group']) ;
-forge_define_config_item ('template_group', 'core', $GLOBALS['sys_template_group']) ;
-forge_define_config_item ('sendmail_path', 'core', $GLOBALS['sys_sendmail_path']) ;
-forge_define_config_item ('mailman_path', 'core', $GLOBALS['sys_path_to_mailman']) ;
-forge_define_config_item ('jpgraph_path', 'core', $GLOBALS['sys_path_to_jpgraph']) ;
-forge_define_config_item ('account_manager_type', 'core', $GLOBALS['sys_account_manager_type']) ;
-forge_define_config_item ('unix_cipher', 'core', $GLOBALS['unix_cipher']) ;
-forge_define_config_item ('homedir_prefix', 'core', $GLOBALS['homedir_prefix']) ;
-forge_define_config_item ('groupdir_prefix', 'core', $GLOBALS['groupdir_prefix']) ;
-forge_define_config_item ('url_root', 'core', $GLOBALS['sys_urlroot']) ;
-forge_define_config_item ('url_prefix', 'core', $GLOBALS['sys_urlprefix']) ;
-forge_define_config_item ('images_url', 'core', $GLOBALS['sys_images_url']) ;
-forge_define_config_item ('images_secure_url', 'core', $GLOBALS['sys_images_secure_url']) ;
-forge_define_config_item ('admin_email', 'core', $GLOBALS['sys_admin_email']) ;
-forge_define_config_item ('session_key', 'core', $GLOBALS['sys_session_key']) ;
-forge_define_config_item ('session_expire', 'core', $GLOBALS['sys_session_expire']) ;
-forge_define_config_item ('show_source', 'core', $GLOBALS['sys_show_source']) ;
+if (isset ($GLOBALS['sys_news_group'])) {
+	forge_define_config_item ('news_group', 'core', $GLOBALS['sys_news_group']) ;
+} else {
+	forge_define_config_item ('news_group', 'core', 2) ;
+}
+if (isset ($GLOBALS['sys_stats_group'])) {
+	forge_define_config_item ('stats_group', 'core', $GLOBALS['sys_stats_group']) ;
+} else {
+	forge_define_config_item ('stats_group', 'core', 3) ;
+}
+if (isset ($GLOBALS['sys_peer_rating_group'])) {
+	forge_define_config_item ('peer_rating_group', 'core', $GLOBALS['sys_peer_rating_group']) ;
+} else {
+	forge_define_config_item ('peer_rating_group', 'core', 4) ;
+}
+if (isset ($GLOBALS['sys_template_group'])) {
+	forge_define_config_item ('template_group', 'core', $GLOBALS['sys_template_group']) ;
+} else {
+	forge_define_config_item ('template_group', 'core', 5) ;
+}
+if (isset ($GLOBALS['sys_sendmail_path'])) {
+	forge_define_config_item ('sendmail_path', 'core', $GLOBALS['sys_sendmail_path']) ;
+} else {
+	forge_define_config_item ('sendmail_path', 'core', '/usr/sbin/sendmail') ;
+}
+if (isset ($GLOBALS['sys_path_to_mailman'])) {
+	forge_define_config_item ('mailman_path', 'core', $GLOBALS['sys_path_to_mailman']) ;
+} else {
+	forge_define_config_item ('mailman_path', 'core', '') ;
+}
+if (isset ($GLOBALS['sys_path_to_jpgraph'])) {
+	forge_define_config_item ('jpgraph_path', 'core', $GLOBALS['sys_path_to_jpgraph']) ;
+} else {
+	forge_define_config_item ('jpgraph_path', 'core', '') ;
+}
+if (isset ($GLOBALS['sys_account_manager_type'])) {
+	forge_define_config_item ('account_manager_type', 'core', $GLOBALS['sys_account_manager_type']) ;
+} else {
+	forge_define_config_item ('account_manager_type', 'core', '') ;
+}
+if (isset ($GLOBALS['unix_cipher'])) {
+	forge_define_config_item ('unix_cipher', 'core', $GLOBALS['unix_cipher']) ;
+} else {
+	forge_define_config_item ('unix_cipher', 'core', '') ;
+}
+if (isset ($GLOBALS['homedir_prefix'])) {
+	forge_define_config_item ('homedir_prefix', 'core', $GLOBALS['homedir_prefix']) ;
+} else {
+	forge_define_config_item ('homedir_prefix', 'core', '') ;
+}
+if (isset ($GLOBALS['groupdir_prefix'])) {
+	forge_define_config_item ('groupdir_prefix', 'core', $GLOBALS['groupdir_prefix']) ;
+} else {
+	forge_define_config_item ('groupdir_prefix', 'core', '') ;
+}
+if (isset ($GLOBALS['sys_urlroot'])) {
+	forge_define_config_item ('url_root', 'core', $GLOBALS['sys_urlroot']) ;
+} else {
+	forge_define_config_item ('url_root', 'core', '') ;
+}
+if (isset ($GLOBALS['sys_urlprefix'])) {
+	forge_define_config_item ('url_prefix', 'core', $GLOBALS['sys_urlprefix']) ;
+} else {
+	forge_define_config_item ('url_prefix', 'core', '') ;
+}
+if (isset ($GLOBALS['sys_images_url'])) {
+	forge_define_config_item ('images_url', 'core', $GLOBALS['sys_images_url']) ;
+} else {
+	forge_define_config_item ('images_url', 'core', '') ;
+}
+if (isset ($GLOBALS['sys_images_secure_url'])) {
+	forge_define_config_item ('images_secure_url', 'core', $GLOBALS['sys_images_secure_url']) ;
+} else {
+	forge_define_config_item ('images_secure_url', 'core', '') ;
+}
+if (isset ($GLOBALS['sys_admin_email'])) {
+	forge_define_config_item ('admin_email', 'core', $GLOBALS['sys_admin_email']) ;
+} else {
+	forge_define_config_item ('admin_email', 'core', '') ;
+}
+if (isset ($GLOBALS['sys_session_key'])) {
+	forge_define_config_item ('session_key', 'core', $GLOBALS['sys_session_key']) ;
+} else {
+	forge_define_config_item ('session_key', 'core', '') ;
+}
+if (isset ($GLOBALS['sys_session_expire'])) {
+	forge_define_config_item ('session_expire', 'core', $GLOBALS['sys_session_expire']) ;
+} else {
+	forge_define_config_item ('session_expire', 'core', 0) ;
+}
+if (isset ($GLOBALS['sys_show_source'])) {
+	forge_define_config_item ('show_source', 'core', $GLOBALS['sys_show_source']) ;
+} else {
+	forge_define_config_item ('show_source', 'core', true) ;
+}
 forge_set_config_item_bool ('show_source', 'core') ;
-forge_define_config_item ('default_trove_cat', 'core', $GLOBALS['default_trove_cat']) ;
-forge_define_config_item ('user_registration_accept_conditions', 'core', $GLOBALS['sys_require_accept_conditions']);
+if (isset ($GLOBALS['default_trove_cat'])) {
+	forge_define_config_item ('default_trove_cat', 'core', $GLOBALS['default_trove_cat']) ;
+} else {
+	forge_define_config_item ('default_trove_cat', 'core', 18) ;
+}
+if (isset ($GLOBALS['sys_require_accept_conditions'])) {
+	forge_define_config_item ('user_registration_accept_conditions', 'core', $GLOBALS['sys_require_accept_conditions']);
+} else {
+	forge_define_config_item ('user_registration_accept_conditions', 'core', false);
+}
 forge_set_config_item_bool ('user_registration_accept_conditions', 'core') ;
 forge_define_config_item ('host_uuid', 'core', '') ;
 if (isset($GLOBALS['sys_default_task_categories']))

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/common/include/descriptive.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/common/include/descriptive.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/common/include/descriptive.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -32,6 +32,8 @@
  * careful as usual. We decide to only pass around unencoded strings
  * except once formatted for display, and the accessor and database
  * functions for compatibility.
+ * Except that htmlspecialchars_decode() is not enough, and we must
+ * call util_unconvert_htmlspecialchars() on the contents instead…
  *
  * Details and Comments further can have formatting attributes and
  * links. The format for that is:
@@ -142,7 +144,7 @@
 		}
 
 		$t->tr()->td()->setraw($firstlines .
-		    showmess_fmt(htmlspecialchars_decode($mbody)));
+		    showmess_fmt(util_unconvert_htmlspecialchars($mbody)));
 	}
 	echo $t->emit() . html_ac($spos) . "\n";
 }
@@ -156,7 +158,7 @@
  *		XHTML encoded item summary text (no tag)
  */
 function emit_summary($inst) {
-	$txt = htmlspecialchars_decode($inst->getSummary());
+	$txt = util_unconvert_htmlspecialchars($inst->getSummary());
 	return util_html_encode($txt);
 }
 
@@ -173,7 +175,7 @@
  *		XHTML form field
  */
 function emit_summary_field($inst, $name, $id, $class=false, $title=false) {
-	$txt = $inst ? htmlspecialchars_decode($inst->getSummary()) : "";
+	$txt = $inst ? util_unconvert_htmlspecialchars($inst->getSummary()) : "";
 	return html_e('input', array(
 		'type' => 'text',
 		'name' => $name,
@@ -200,7 +202,7 @@
  * @todo add formatting
  */
 function emit_details($inst, $headline="", $editable=false) {
-	$txt = htmlspecialchars_decode($inst->getDetails());
+	$txt = util_unconvert_htmlspecialchars($inst->getDetails());
 
 	$ftx = html_e('div', array(
 		'class' => array(
@@ -256,7 +258,7 @@
  *		XHTML form field
  */
 function emit_details_field($inst, $name, $id=false, $title=false) {
-	$txt = $inst ? htmlspecialchars_decode($inst->getDetails()) : "";
+	$txt = $inst ? util_unconvert_htmlspecialchars($inst->getDetails()) : "";
 	return html_e('textarea', array(
 		'class' => array(
 			'small',
@@ -301,7 +303,7 @@
  * showmess_fmt() - render message body for display
  *
  * @param	string	$mess
- *			already htmlspecialchars_decode()d text body
+ *			already util_unconvert_htmlspecialchars()d text body
  * @return	string
  *		XHTML rendition of the message body
  */

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/common/include/env.inc.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/common/include/env.inc.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/common/include/env.inc.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -44,6 +44,9 @@
 } elseif (file_exists('/etc/gforge/local.inc')) {
 	$gfcgfile = '/etc/gforge/local.inc';
 	$gfconfig = '/etc/gforge/';
+} elseif (file_exists('/etc/fusionforge/config.ini')) {
+	$gfcgfile = '/etc/fusionforge/local.inc';
+	$gfconfig = '/etc/fusionforge/';
 } else {
 	$gfcgfile = 'local.inc';
 	$gfconfig = '';

Copied: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/common/include/preutils.php (from rev 18231, trunk/gforge_base/evolvisforge-5.1/src/common/include/preutils.php)
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/common/include/preutils.php	                        (rev 0)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/common/include/preutils.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -0,0 +1,31 @@
+<?php
+/*-
+ * FusionForge miscellaneous utils, included very early
+ *
+ * Copyright © 2012
+ *	Thorsten Glaser <t.glaser at tarent.de>
+ * All rights reserved.
+ *
+ * This file is part of FusionForge. FusionForge is free software;
+ * you can redistribute it and/or modify it under the terms of the
+ * GNU General Public License as published by the Free Software
+ * Foundation; either version 2 of the Licence, or (at your option)
+ * any later version.
+ *
+ * FusionForge is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with FusionForge; if not, write to the Free Software Foundation, Inc.,
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+ *-
+ * This is like utils.php, except it’s included so early that it can be
+ * used by any other early/core module, such as the configuration system.
+ */
+
+/* return $1 if $1 is set, ${2:-false} otherwise */
+function util_ifsetor(&$val, $default = false) {
+	return (isset($val) ? $val : $default);
+}

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/common/include/session.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/common/include/session.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/common/include/session.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -387,15 +387,26 @@
 }
 
 /**
+ *	session_redirect_uri() - Redirect browser
+ *
+ *	@param		string	Absolute URI
+ *	@return never returns
+ */
+function session_redirect_uri($loc) {
+	sysdebug_off("Status: 301 Moved Permanently", true, 301);
+	header("Location: ${loc}", true);
+	echo "\nPlease go to ${loc} instead!\n";
+	exit;
+}
+
+/**
  *	session_redirect() - Redirect browser within the site
  *
  *	@param		string	Absolute path within the site
  *	@return never returns
  */
 function session_redirect($loc) {
-	sysdebug_off('Location: '.util_make_url ($loc));
-	print("\n\n");
-	exit;
+	session_redirect_uri(util_make_url($loc));
 }
 
 /**

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/common/include/utils.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/common/include/utils.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/common/include/utils.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -25,6 +25,8 @@
  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 
+require_once dirname(__FILE__).'/preutils.php';
+
 /**
  * htpasswd_apr1_md5($plainpasswd) - generate htpasswd md5 format password
  *
@@ -1485,11 +1487,6 @@
 	return $postfile;
 }
 
-/* return $1 if $1 is set, ${2:-false} otherwise */
-function util_ifsetor(&$val, $default = false) {
-	return (isset($val) ? $val : $default);
-}
-
 function util_randbytes($num=6) {
 	$f = fopen("/dev/urandom", "rb");
 	$b = fread($f, $num);
@@ -1735,10 +1732,25 @@
 	return ($ashtml ? util_html_encode($rv) : $rv);
 }
 
+/**
+ * util_sanitise_multiline_submission() – Convert text to ASCII CR-LF
+ *
+ * @param	string	$text
+ *			input string to sanitise
+ * @return	string
+ *		sanitised string: CR, LF or CR-LF converted to CR-LF
+ */
+function util_sanitise_multiline_submission($text) {
+	/* convert all CR-LF into LF */
+	$text = preg_replace("/\015+\012+/m", "\012", $text);
+	/* convert all CR or LF into CR-LF */
+	$text = preg_replace("/[\012\015]/m", "\015\012", $text);
 
+	return $text;
+}
+
+
 // Local Variables:
 // mode: php
 // c-file-style: "bsd"
 // End:
-
-?>

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/common/tracker/Artifact.class.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/common/tracker/Artifact.class.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/common/tracker/Artifact.class.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -51,11 +51,11 @@
 
 // This string is used when sending the notification mail for identifying the
 // user response
-define('ARTIFACT_MAIL_MARKER', '#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+');	
+define('ARTIFACT_MAIL_MARKER', '#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+');
 
 	/**
 	*	Factory method which creates an Artifact from an artifact ID
-	*	
+	*
 	*	@param int	The artifact ID
 	*	@param array	The result array, if it's passed in
 	*	@return	object	Artifact object
@@ -78,7 +78,7 @@
 			$ARTIFACT_OBJ["_".$artifact_id."_"]= new Artifact($ArtifactType,$data);
 		}
 		return $ARTIFACT_OBJ["_".$artifact_id."_"];
-	}	
+	}
 
 class Artifact extends Error {
 
@@ -94,7 +94,7 @@
 	 *
 	 * @var		object	$ArtifactType.
 	 */
-	var $ArtifactType; 
+	var $ArtifactType;
 
 	/**
 	 * Array of artifact data.
@@ -115,7 +115,7 @@
 	 *
 	 * @var		array	$files
 	 */
-	var $files; 
+	var $files;
 
 	/**
 	 * Database result set of related tasks
@@ -123,17 +123,17 @@
 	 * @var     result $relatedtasks
 	 */
 	var $relatedtasks;
-    
+
 	/**
 	 *  Artifact - constructor.
 	 *
 	 *	@param	object	The ArtifactType object.
-	 *  @param	integer	(primary key from database OR complete assoc array) 
+	 *  @param	integer	(primary key from database OR complete assoc array)
 	 *		ONLY OPTIONAL WHEN YOU PLAN TO IMMEDIATELY CALL ->create()
 	 *  @return	boolean	success.
 	 */
 	function Artifact(&$ArtifactType, $data=false) {
-		$this->Error(); 
+		$this->Error();
 
 		$this->ArtifactType =& $ArtifactType;
 
@@ -176,7 +176,7 @@
 			}
 		}
 	}
-	
+
 	/**
 	 *	create - construct a new Artifact in the database.
 	 *
@@ -185,7 +185,7 @@
 	 *	@param	int		The ID of the user to which this artifact is to be assigned.
 	 *	@param	int		The artifacts priority.
 	 *	@param	array	Array of extra fields like: array(15=>'foobar',22=>'1');
-	 *	@param	array	Array of data to change submitter and time of submit like: array('user' => 127, 'time' => 1234556789)	
+	 *	@param	array	Array of data to change submitter and time of submit like: array('user' => 127, 'time' => 1234556789)
 	 *  @return id on success / false on failure.
 	 */
 	function create( $summary, $details, $assigned_to=100, $priority=3, $extra_fields=array(), $importData = array()) {
@@ -193,7 +193,7 @@
 		//
 		//	get the user_id
 		//
-		
+
 		if(array_key_exists('user', $importData)){
 				$user = $importData['user'];
 		} else {
@@ -207,9 +207,9 @@
 					return false;
 				}
 			}
-		}	
-			
+		}
 
+
 		//
 		//	data validation
 		//
@@ -221,6 +221,7 @@
 			$this->setError(_('Artifact: Message Body Is Required'));
 			return false;
 		}
+		$details = util_sanitise_multiline_submission($details);
 		if (!$assigned_to) {
 			$assigned_to=100;
 		}
@@ -247,9 +248,9 @@
 		} else {
 			$time = time();
 		}
-		$res = db_query_params ('INSERT INTO artifact 
+		$res = db_query_params ('INSERT INTO artifact
 			(group_artifact_id,status_id,priority,
-			submitted_by,assigned_to,open_date,summary,details) 
+			submitted_by,assigned_to,open_date,summary,details)
 			VALUES ($1,$2,$3,$4,$5,$6,$7,$8)',
 					array ($this->ArtifactType->getID(),
 					       $status_id,
@@ -264,7 +265,7 @@
 			db_rollback();
 			return false;
 		}
-		
+
 		$artifact_id=db_insertid($res,'artifact','artifact_id');
 
 		if (!$res || !$artifact_id) {
@@ -296,7 +297,7 @@
 			return $artifact_id;
 		}
 	}
-	
+
 	/**
 	 *	fetchData - re-fetch the data for this Artifact from the database.
 	 *
@@ -324,7 +325,7 @@
 	function &getArtifactType() {
 		return $this->ArtifactType;
 	}
-	
+
 	/**
 	 *	getID - get this ArtifactID.
 	 *
@@ -536,7 +537,7 @@
 			db_rollback();
 			return false;
 		}
-		
+
 		if ($this->getStatusID() == 1) {
 			$res = db_query_params ('UPDATE artifact_counts_agg SET count=count-1,open_count=open_count-1
 				WHERE group_artifact_id=$1',
@@ -602,7 +603,7 @@
 			}
 		} else {
 			//already monitoring - remove their monitor
-			db_query_params ('DELETE FROM artifact_monitor 
+			db_query_params ('DELETE FROM artifact_monitor
 				WHERE artifact_id=$1
 				AND user_id=$2',
 					 array ($this->getID(),
@@ -735,6 +736,7 @@
 			$this->setMissingParamsError();
 			return false;
 		}
+		$body = util_sanitise_multiline_submission($body);
 		if (session_loggedin()) {
 			$user_id=user_getid();
 			$user =& user_get_object($user_id);
@@ -742,7 +744,7 @@
 				$this->setError('ERROR - Logged In User But Could Not Get User Object');
 				return false;
 			}
-			//	we'll store this email even though it will likely never be used - 
+			//	we'll store this email even though it will likely never be used -
 			//	since we have their correct user_id, we can join the USERS table to get email
 			$by=$user->getEmail();
 		} elseif (!$this->ArtifactType->allowsAnon()) {
@@ -835,8 +837,8 @@
 				return false;
 			}
 		}
-               
-               
+
+
 		//commiting changes
 		db_commit();
 		return true;
@@ -866,8 +868,8 @@
 		if (!forge_check_perm ('tracker', $this->ArtifactType->getID(), 'manager')) {
 			// Non-managers cannot modify these fields
 			$priority=$this->getPriority();
-			$summary=htmlspecialchars_decode($this->getSummary());
-			$description=htmlspecialchars_decode($this->getDetails());
+			$summary=util_unconvert_htmlspecialchars($this->getSummary());
+			$description=util_unconvert_htmlspecialchars($this->getDetails());
 			$canned_response=100;
 			$new_artifact_type_id=$this->ArtifactType->getID();
 			$assigned_to=$this->getAssignedTo();
@@ -885,10 +887,10 @@
 		//
 			$status_id=$this->ArtifactType->remapStatus($status_id,$extra_fields);
 		}
-		if (!$this->getID() 
-			|| !$assigned_to 
-			|| !$status_id 
-			|| !$canned_response 
+		if (!$this->getID()
+			|| !$assigned_to
+			|| !$status_id
+			|| !$canned_response
 			|| !$new_artifact_type_id) {
 			$this->setMissingParamsError();
 			return false;
@@ -906,7 +908,7 @@
 		// Array to record which properties were changed
 		$changes = array();
 		$update  = false;
-		
+
 		db_begin();
 
 		//
@@ -932,7 +934,7 @@
 				db_rollback();
 				return false;
 			}
-			
+
 			// Add a message to explain that the tracker was moved.
 			$message = 'Moved from '.$this->ArtifactType->getName().' to '.$newArtifactType->getName();
 			$this->addHistory('type', $this->ArtifactType->getName());
@@ -990,7 +992,7 @@
 					}
 				}
 			}
-			
+
 			// Special case if moving to a tracker with custom status (previous has not).
 			$custom_status_id = $newArtifactType->getCustomStatusField();
 			if ($custom_status_id && !util_ifsetor($new_extra_fields[$custom_status_id])) {
@@ -1061,6 +1063,7 @@
 			$changes['summary'] = 1;
 			$update = true;
 		}
+		$description = util_sanitise_multiline_submission($description);
  		if ($description && ($this->getDetails() != htmlspecialchars($description))) {
  			$this->addHistory('details', $this->getDetails());
  			$qpa = db_construct_qpa($qpa, ' details=$1,', array(htmlspecialchars($description)));
@@ -1102,7 +1105,7 @@
 			db_rollback();
 			return false;
 		}
-		
+
 		/*
 			handle canned responses
 
@@ -1144,7 +1147,7 @@
 			db_rollback();
 			return false;
 		}
-	
+
 	}
 
 	/**
@@ -1168,7 +1171,7 @@
 			$this->setPermissionDeniedError();
 			return false;
 		}
-		
+
 		$user_id = user_getid();
 		$res = db_query_params ('UPDATE artifact SET assigned_to=$1 WHERE artifact_id=$2',
 								array ($user_id, $this->getID())) ;
@@ -1177,7 +1180,7 @@
 			return false;
 		}
 		$this->fetchData($this->getID());
-		
+
 		return true;
 	}
 
@@ -1192,14 +1195,14 @@
 	function updateExtraFields($extra_fields,&$changes){
 /*
 	This is extremely complex code - we have take the passed array
-	and see if we need to insert it into the db, and may have to 
+	and see if we need to insert it into the db, and may have to
 	add history rows for the audit trail
 
 	start by getting all the available extra fields from ArtifactType
-		For each field from ArtifacType, check the passed array - 
+		For each field from ArtifacType, check the passed array -
 			This prevents someone from passing bogus extra field entries - they will be ignored
 			if the passed entry is blank, may have to force a default value
-			if the passed array is different from the existing data in db, 
+			if the passed array is different from the existing data in db,
 				delete old entry and insert new entries, along with possible audit trail
 			else
 				skip it and continue to next item
@@ -1235,7 +1238,7 @@
 				}
 			}
 		}
-		
+
 		//now we'll update this artifact for each extra field
 		for ($i=0; $i<count($efk); $i++) {
 			$efid=$efk[$i];
@@ -1306,16 +1309,16 @@
 				//
 				//	Compare for history purposes
 				//
-				
+
 				// these types have arrays associated to them, so they need
 				// special handling to check for differences
 				if ($type == ARTIFACT_EXTRAFIELDTYPE_MULTISELECT || $type == ARTIFACT_EXTRAFIELDTYPE_CHECKBOX) {
 					// check the differences between the old values and the new values
 					$old_values = util_result_column_to_array($resd,"field_data");
-					
+
 					$added_values = array_diff($extra_fields[$efid], $old_values);
 					$deleted_values = array_diff($old_values, $extra_fields[$efid]);
-					
+
 					if (!empty($added_values) || !empty($deleted_values))	{	// there are differences...
 						$field_name = $ef[$efid]['field_name'];
 						if (!preg_match('/^@/', $ef[$efid]['alias'])) {
@@ -1488,7 +1491,7 @@
 		} else {
 			return '';
 		}
-	}				
+	}
 
 	/**
 	 *	mailFollowup - send out an email update for this artifact.
@@ -1506,27 +1509,17 @@
 		if (!$changes) {
 			$changes=array();
 		}
-		
+
 		$sess = session_get_user() ;
-		if ($type == 1) { // Initial opening
-			if ($sess) {
-				$body = $this->ArtifactType->getName() ." item #". $this->getID() .", was opened at ". date( _('Y-m-d H:i'), $this->getOpenDate() ) . " by " . $sess->getRealName () ;
-			} else {
-				$body = $this->ArtifactType->getName() ." item #". $this->getID() .", was opened at ". date( _('Y-m-d H:i'), $this->getOpenDate() ) ;
-			}
-		} else {
-			if ($sess) {
-				$body = $this->ArtifactType->getName() ." item #". $this->getID() .", was changed at ". date( _('Y-m-d H:i'), $this->getOpenDate() ) . " by " . $sess->getRealName ();
-			} else {
-				$body = $this->ArtifactType->getName() ." item #". $this->getID() .", was changed at ". date( _('Y-m-d H:i'), $this->getOpenDate() ) ;
-			}
-		}
-			      
+		$body = $this->ArtifactType->Group->getUnixName() . '-' .
+		    $this->ArtifactType->getName() . ' item [#' .
+		    $this->getID() . '] was ' .
+		    ($type == 1 ? 'opened' : 'changed') . ' at ' .
+		    date(_('Y-m-d H:i'), $type == 1 ? $this->getOpenDate() : time()) .
+		    ($sess ? ' by ' . $sess->getRealName() : ' anonymously');
 
 		$body .= "\nYou can respond by visiting: ".
-			"\n".util_make_url ('/tracker/?func=detail&atid='. $this->ArtifactType->getID() .
-					    "&aid=". $this->getID() .
-					    "&group_id=". $this->ArtifactType->Group->getID()) .
+			"\n".util_make_url('/tracker/t_follow.php/'. $this->getID()) .
 			"\n\n".
 			$this->marker('status',$changes).
 			 "Status: ". $this->getStatusName() ."\n".
@@ -1539,16 +1532,16 @@
 			 " (". $this->getAssignedUnixName(). ")"."\n".
 			$this->marker('summary',$changes).
 			 "Summary: ". util_unconvert_htmlspecialchars( $this->getSummary() )." \n";
-			 
+
 		// Now display the extra fields
 		$efd = $this->getExtraFieldDataText();
 		foreach ($efd as $efid => $ef) {
 			$body .= $this->marker('extra_fields', $changes, $efid);
 			$body .= $ef["name"].": ".util_unconvert_htmlspecialchars($ef["value"])."\n";
 		}
-			
-		$subject='['. $this->ArtifactType->Group->getUnixName() . '-' . $this->ArtifactType->getName() . '][' . $this->getID() .'] '. util_unconvert_htmlspecialchars( $this->getSummary() );
 
+		$subject='['. $this->ArtifactType->Group->getUnixName() . '-' . $this->ArtifactType->getName() . '][#' . $this->getID() .'] '. util_unconvert_htmlspecialchars( $this->getSummary() );
+
 		if ($type > 1) {
 			// get all the email addresses that are monitoring this request or the ArtifactType
 			$monitor_ids = $this->getMonitorIds();
@@ -1593,11 +1586,11 @@
 			$result2=$this->getMessages();
 
 			$rows=db_numrows($result2);
-		
+
 			if ($result2 && $rows > 0) {
 				for ($i=0; $i<$rows; $i++) {
 					//
-					//	for messages posted by non-logged-in users, 
+					//	for messages posted by non-logged-in users,
 					//	we grab the email they gave us
 					//
 					//	otherwise we use the confirmed one from the users table
@@ -1618,7 +1611,7 @@
 					"\n\nMessage:".
 					"\n".util_unconvert_htmlspecialchars( db_result($result2,$i,'body') ).
 					"\n\n----------------------------------------------------------------------";
-				}	   
+				}
 			}
 
 		}
@@ -1638,10 +1631,10 @@
 		} else {
 			$monitor_ids=array_unique($monitor_ids);
 		}
-		
+
 		$from = $this->ArtifactType->getReturnEmailAddress();
 		$extra_headers = 'Reply-to: '.$from;
-		
+
 		// load the e-mail addresses of the users
 		$users =& user_get_objects($monitor_ids);
 		if (count($users) > 0) {
@@ -1651,21 +1644,21 @@
 				}
 			}
 		}
-		
+
 		//now remove all duplicates from the email list
 		if (count($emails) > 0) {
 			$BCC=implode(',',array_unique($emails));
-			util_send_message('',$subject,$body,$from,$BCC,'',$extra_headers);			
+			util_send_message('',$subject,$body,$from,$BCC,'',$extra_headers);
 		}
-		
+
 		$this->sendSubjectMsg = $subject;
 		$this->sendBodyMsg = $body;
-		
+
 		//util_handle_message($monitor_ids,$subject,$body,$BCC);
-		
+
 		return true;
 	}
-	
+
 	/**
 	* getExtraFieldDataText - Return the extra fields' data in a human-readable form.
 	*
@@ -1677,16 +1670,16 @@
 		// associated to the fields
 		$efs = $this->ArtifactType->getExtraFields();
 		$efd = $this->getExtraFieldData();
-		
+
 		$return = array();
 
 		foreach ($efs as $efid => $ef) {
 			$name = $ef["field_name"];
 			$type = $ef["field_type"];
-			
+
 			// Get the value according to the type
 			switch ($type) {
-				
+
 				// for these types, the associated value comes straight
 				case ARTIFACT_EXTRAFIELDTYPE_TEXT:
 				case ARTIFACT_EXTRAFIELDTYPE_TEXTAREA:
@@ -1698,7 +1691,7 @@
 						$value = '';
 					}
 					break;
-	
+
 				// the other types have and ID or an array of IDs associated to them
 				default:
 					if (isset($efd[$efid])) {
@@ -1707,10 +1700,10 @@
 						$value = 'None';
 					}
 			}
-			
+
 			$return[$efid] = array("name" => $name, "value" => $value, 'type' => $type);
 		}
-		
+
 		return $return;
 	}
 

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/common/tracker/ArtifactFactory.class.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/common/tracker/ArtifactFactory.class.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/common/tracker/ArtifactFactory.class.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -244,6 +244,7 @@
 				if (is_array($_assigned_to)) {
 					$_assigned_to='';
 				}
+				//XXX same as ↑ for submitted_by?
 				$aux_extra_fields = array();
 				if (is_array($_extra_fields)){
 					//print_r($_extra_fields);
@@ -310,32 +311,7 @@
 		else
 			return '';
 	}
-	
-	function getArtifacts_helper_getsubmittedby(&$sb) {
-		if (!isset($sb) || !$sb) {
-			return '';
-		}
 
-		if (!is_array($sb)) {
-			$num = util_nat0($sb);
-			if ($num === false) {
-				return '';
-			}
-			return "submitted_by=$num";
-		}
-
-		$res = "";
-		foreach ($sb as $v) {
-			$q = $this->getArtifacts_helper_getsubmittedby($v);
-			if ($res) {
-				$res .= " OR " . $q;
-			} else {
-				$res = $q;
-			}
-		}
-		return $res;
-	}
-
 	/**
 	 *	getArtifacts - get an array of Artifact objects.
 	 *
@@ -404,10 +380,22 @@
 			}
 		}
 
-		if ($this->submitted_by && ($this->submitted_by != 0)) {
+		if ($this->submitted_by) {
 			//for open tasks, add status=100 to make sure we show all
-			$wheresql .= ' AND submitted_by=$'.$paramcount++ ;
-			$params[] = $this->submitted_by;
+			if (is_array($this->submitted_by)) {
+				$wheresql .= ' AND submitted_by = ANY ($' . $paramcount++;
+				$params[] = db_int_array_to_any_clause($this->submitted_by);
+				/*
+				 * eh. why is this a separate string
+				 * concatenation? and why does this
+				 * not use db_construct_qpa, anyway?
+				 * --mirabilos
+				 */
+				$wheresql .= ')';
+			} else {
+				$wheresql .= ' AND submitted_by = $' . $paramcount++;
+				$params[] = $this->submitted_by;
+			}
 		}
 
 		if ($this->last_changed > 0) {

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/auth_unix.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/auth_unix.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/auth_unix.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -32,7 +32,7 @@
  * the /etc/passwd, /etc/shadow and /etc/group files
  */
 
-require (dirname(__FILE__).'/../www/env.inc.php');
+require dirname(__FILE__).'/../common/include/env.inc.php';
 require_once $gfcommon.'include/pre.php';
 require $gfcommon.'/include/cron_utils.php';
 

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/backup_site.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/backup_site.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/backup_site.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -19,7 +19,7 @@
  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 
-require dirname(__FILE__).'/../www/env.inc.php';
+require dirname(__FILE__).'/../common/include/env.inc.php';
 require_once $gfcommon.'include/pre.php';
 require $gfcommon.'include/cron_utils.php';
 

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/calculate_user_metric.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/calculate_user_metric.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/calculate_user_metric.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -57,7 +57,7 @@
 		what we want - a list of the top users on the site.
 
 */
-require dirname(__FILE__).'/../www/env.inc.php';
+require dirname(__FILE__).'/../common/include/env.inc.php';
 require_once $gfcommon.'include/pre.php';
 require $gfcommon.'include/cron_utils.php';
 

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/check_stale_tracker_items.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/check_stale_tracker_items.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/check_stale_tracker_items.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -30,7 +30,7 @@
 /* disabled, we do not have status 4 */
 exit(0);
 
-require dirname(__FILE__).'/../www/env.inc.php';
+require dirname(__FILE__).'/../common/include/env.inc.php';
 require_once $gfcommon.'include/pre.php';
 require $gfcommon.'include/cron_utils.php';
 

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/create_scm_repos.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/create_scm_repos.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/create_scm_repos.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -23,7 +23,7 @@
  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
         
-require dirname(__FILE__).'/../www/env.inc.php';
+require dirname(__FILE__).'/../common/include/env.inc.php';
 require_once $gfcommon.'include/pre.php';
 require_once $gfcommon.'include/cron_utils.php';
 

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/daily_task_email.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/daily_task_email.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/daily_task_email.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -22,7 +22,7 @@
  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 
-require dirname(__FILE__).'/../www/env.inc.php';
+require dirname(__FILE__).'/../common/include/env.inc.php';
 require_once $gfcommon.'include/pre.php';
 require_once $gfcommon.'pm/ProjectTasksForUser.class.php';
 require_once $gfcommon.'include/cron_utils.php';

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/db_project_sums.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/db_project_sums.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/db_project_sums.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -21,7 +21,7 @@
  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 
-require (dirname(__FILE__).'/../www/env.inc.php');
+require dirname(__FILE__).'/../common/include/env.inc.php';
 require_once $gfcommon.'include/pre.php';
 require $gfcommon.'include/cron_utils.php';
 

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/db_stats_agg.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/db_stats_agg.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/db_stats_agg.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -21,7 +21,7 @@
  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 
-require dirname(__FILE__).'/../www/env.inc.php';
+require dirname(__FILE__).'/../common/include/env.inc.php';
 require_once $gfcommon.'include/pre.php';
 require $gfcommon.'include/cron_utils.php';
 

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/db_trove_maint.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/db_trove_maint.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/db_trove_maint.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -20,7 +20,7 @@
  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 
-require (dirname(__FILE__).'/../www/env.inc.php');
+require dirname(__FILE__).'/../common/include/env.inc.php';
 require_once $gfcommon.'include/pre.php';
 require $gfcommon.'include/cron_utils.php';
 

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/forum_gateway.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/forum_gateway.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/forum_gateway.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -24,7 +24,7 @@
  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 
-require dirname(__FILE__).'/../www/env.inc.php';
+require dirname(__FILE__).'/../common/include/env.inc.php';
 require_once $gfcommon.'include/pre.php';
 require_once $gfcommon.'include/Group.class.php';
 require_once $gfcommon.'include/MailParser.class.php';

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/gather_scm_stats.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/gather_scm_stats.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/gather_scm_stats.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -21,7 +21,7 @@
  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
         
-require (dirname(__FILE__).'/../www/env.inc.php');
+require dirname(__FILE__).'/../common/include/env.inc.php';
 require_once $gfcommon.'include/pre.php';
 require_once $gfcommon.'include/cron_utils.php';
 

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/generate_scm_snapshots.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/generate_scm_snapshots.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/generate_scm_snapshots.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -21,7 +21,7 @@
  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
         
-require (dirname(__FILE__).'/../www/env.inc.php');
+require dirname(__FILE__).'/../common/include/env.inc.php';
 require_once $gfcommon.'include/pre.php';
 require_once $gfcommon.'include/cron_utils.php';
 

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/homedirs.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/homedirs.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/homedirs.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -50,7 +50,7 @@
 	</IfModule>
 </VirtualHost> 
 */
-require_once dirname(__FILE__).'/../www/env.inc.php';
+require dirname(__FILE__).'/../common/include/env.inc.php';
 require_once $gfcommon.'include/pre.php';
 require $gfcommon.'include/cron_utils.php';
 

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/mail/mailaliases.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/mail/mailaliases.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/mail/mailaliases.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -22,7 +22,7 @@
  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 
-require dirname(__FILE__).'/../../www/env.inc.php';
+require dirname(__FILE__).'/../common/include/env.inc.php';
 require_once $gfcommon.'include/pre.php';
 require $gfcommon.'include/cron_utils.php';
 

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/mail/mailing_lists_create.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/mail/mailing_lists_create.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/mail/mailing_lists_create.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -7,7 +7,7 @@
 //	The /var/lib/gforge/dumps/mailman-aliases file will then be read by the mailaliases.php file
 //
 
-require dirname(__FILE__).'/../../www/env.inc.php';
+require dirname(__FILE__).'/../common/include/env.inc.php';
 require_once $gfcommon.'include/pre.php';
 require $gfcommon.'include/cron_utils.php';
 

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/massmail.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/massmail.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/massmail.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -28,7 +28,7 @@
  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 
-require dirname(__FILE__).'/../www/env.inc.php';
+require dirname(__FILE__).'/../common/include/env.inc.php';
 require_once $gfcommon.'include/pre.php';
 require $gfcommon.'include/cron_utils.php';
 

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/project_cleanup.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/project_cleanup.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/project_cleanup.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -19,7 +19,7 @@
  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 
-require dirname(__FILE__).'/../www/env.inc.php';
+require dirname(__FILE__).'/../common/include/env.inc.php';
 require_once $gfcommon.'include/pre.php';
 require $gfcommon.'include/cron_utils.php';
 

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/project_weekly_metric.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/project_weekly_metric.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/project_weekly_metric.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -20,7 +20,7 @@
  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 
-require (dirname(__FILE__).'/../www/env.inc.php');
+require dirname(__FILE__).'/../common/include/env.inc.php';
 require_once $gfcommon.'include/pre.php';
 require $gfcommon.'include/cron_utils.php';
 

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/rating_stats.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/rating_stats.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/rating_stats.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -19,7 +19,7 @@
  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 
-require (dirname(__FILE__).'/../www/env.inc.php');
+require dirname(__FILE__).'/../common/include/env.inc.php';
 require_once $gfcommon.'include/pre.php';
 require $gfcommon.'include/cron_utils.php';
 

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/reporting_cron.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/reporting_cron.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/reporting_cron.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -24,7 +24,7 @@
  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 
-require dirname(__FILE__).'/../www/env.inc.php';
+require dirname(__FILE__).'/../common/include/env.inc.php';
 require_once $gfcommon.'include/pre.php';
 require $gfcommon.'include/cron_utils.php';
 require $gfcommon.'reporting/ReportSetup.class.php';

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/rotate_activity.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/rotate_activity.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/rotate_activity.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -19,7 +19,7 @@
  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 
-require (dirname(__FILE__).'/../www/env.inc.php');
+require dirname(__FILE__).'/../common/include/env.inc.php';
 require_once $gfcommon.'include/pre.php';
 require $gfcommon.'include/cron_utils.php';
 

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/site_stats.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/site_stats.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/site_stats.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -19,7 +19,7 @@
  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 
-require dirname(__FILE__).'/../www/env.inc.php';
+require dirname(__FILE__).'/../common/include/env.inc.php';
 require_once $gfcommon.'include/pre.php';
 require $gfcommon.'include/cron_utils.php';
 

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/tracker_gateway.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/tracker_gateway.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/tracker_gateway.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -28,7 +28,7 @@
  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 
-require dirname(__FILE__).'/../www/env.inc.php';
+require dirname(__FILE__).'/../common/include/env.inc.php';
 require_once $gfcommon.'include/pre.php';
 require_once $gfcommon.'include/Group.class.php';
 require_once $gfcommon.'include/MailParser.class.php';

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/update_docdata_dataword.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/update_docdata_dataword.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/update_docdata_dataword.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -23,7 +23,7 @@
  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 
-require dirname(__FILE__).'/../www/env.inc.php';
+require dirname(__FILE__).'/../common/include/env.inc.php';
 require_once $gfcommon.'include/pre.php';
 require_once $gfcommon.'docman/Parsedata.class.php';
 require_once $gfcommon.'docman/Document.class.php';

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/vacuum.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/vacuum.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/cronjobs/vacuum.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -21,7 +21,7 @@
  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 
-require dirname(__FILE__).'/../www/env.inc.php';
+require dirname(__FILE__).'/../common/include/env.inc.php';
 require_once $gfcommon.'include/pre.php';
 require $gfcommon.'include/cron_utils.php';
 

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/db/20010304-4-artifact-convert-files.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/db/20010304-4-artifact-convert-files.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/db/20010304-4-artifact-convert-files.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -1,7 +1,7 @@
 #! /usr/bin/php
 <?php
 
-require_once (dirname(__FILE__)).'/../www/env.inc.php';
+require dirname(__FILE__).'/../common/include/env.inc.php';
 require_once $gfcommon.'include/pre.php';
 
 db_begin();

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/db/20021213-2-doc_data-migrate.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/db/20021213-2-doc_data-migrate.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/db/20021213-2-doc_data-migrate.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -7,7 +7,7 @@
  * Copyright 2002 (c) GFORGE LLC
  */
 
-require_once dirname(__FILE__).'/../www/env.inc.php';
+require dirname(__FILE__).'/../common/include/env.inc.php';
 require_once $gfcommon.'include/pre.php';
 
 @ini_set('memory_limit', '128M');

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/db/20040826_migrateforum.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/db/20040826_migrateforum.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/db/20040826_migrateforum.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -23,7 +23,7 @@
  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 
-require_once dirname(__FILE__).'/../www/env.inc.php';
+require dirname(__FILE__).'/../common/include/env.inc.php';
 require_once $gfcommon.'include/pre.php';
 
 //

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/db/20040826_migraterbac.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/db/20040826_migraterbac.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/db/20040826_migraterbac.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -23,7 +23,7 @@
  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 
-require_once dirname(__FILE__).'/../www/env.inc.php';
+require dirname(__FILE__).'/../common/include/env.inc.php';
 require_once $gfcommon.'include/pre.php';
 
 //system library

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/db/20041211-syncmail.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/db/20041211-syncmail.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/db/20041211-syncmail.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -1,6 +1,6 @@
 #! /usr/bin/php
 <?php
-require_once dirname(__FILE__).'/../www/env.inc.php';
+require dirname(__FILE__).'/../common/include/env.inc.php';
 require_once $gfcommon.'include/pre.php';
 require_once $gfcommon.'mail/MailingList.class.php';
 require_once $gfcommon.'include/Group.class.php';

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/db/20041222-1-delete-task-artifact.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/db/20041222-1-delete-task-artifact.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/db/20041222-1-delete-task-artifact.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -1,6 +1,6 @@
 #! /usr/bin/php
 <?php
-require_once dirname(__FILE__).'/../www/env.inc.php';
+require dirname(__FILE__).'/../common/include/env.inc.php';
 require_once $gfcommon.'include/pre.php';
 require_once $gfcommon.'pm/ProjectTask.class.php';
 

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/db/20050127-frs-reorg.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/db/20050127-frs-reorg.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/db/20050127-frs-reorg.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -22,7 +22,7 @@
  * with this program; if not, write to the Free Software Foundation, Inc.,
  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
-require_once dirname(__FILE__).'/../www/env.inc.php';
+require dirname(__FILE__).'/../common/include/env.inc.php';
 require_once $gfcommon.'include/pre.php';
 require_once $gfcommon.'frs/FRSFile.class.php';
 require_once $gfcommon.'frs/FRSRelease.class.php';

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/db/20050325-3.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/db/20050325-3.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/db/20050325-3.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -23,7 +23,7 @@
  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 
-require_once dirname(__FILE__).'/../www/env.inc.php';
+require dirname(__FILE__).'/../common/include/env.inc.php';
 require_once $gfcommon.'include/pre.php';
 require_once $gfcommon.'tracker/ArtifactExtraField.class.php';
 require_once $gfcommon.'tracker/ArtifactExtraFieldElement.class.php';

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/db/20050617.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/db/20050617.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/db/20050617.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -23,7 +23,7 @@
  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 
-require_once dirname(__FILE__).'/../www/env.inc.php';
+require dirname(__FILE__).'/../common/include/env.inc.php';
 require_once $gfcommon.'include/pre.php';
 
 // these names can't be assigned to an extra field's alias because they are already

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/db/20050804-2.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/db/20050804-2.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/db/20050804-2.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -24,7 +24,7 @@
  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 
-require_once dirname(__FILE__).'/../www/env.inc.php';
+require dirname(__FILE__).'/../common/include/env.inc.php';
 require_once $gfwww.'include/squal_pre.php';
 
 $res = db_query_params('SELECT docid,filesize FROM doc_data',

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/db/20090507-install_workflow.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/db/20090507-install_workflow.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/db/20090507-install_workflow.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -1,6 +1,6 @@
 <?php
 
-require_once dirname(__FILE__).'/../www/env.inc.php';
+require dirname(__FILE__).'/../common/include/env.inc.php';
 require_once $gfcommon.'include/pre.php';
 require_once $gfcommon.'tracker/Artifact.class.php';
 require_once $gfcommon.'tracker/ArtifactFile.class.php';

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/db/20100927-pfo-rbac.sql
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/db/20100927-pfo-rbac.sql	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/db/20100927-pfo-rbac.sql	2012-04-05 10:25:42 UTC (rev 18232)
@@ -200,38 +200,55 @@
 		   PERFORM insert_pfo_role_setting (2, 'scm', g.group_id, 1) ;
 		END IF ;
 
-		FOR t IN SELECT * FROM artifact_group_list WHERE group_id = g.group_id AND is_public = 1
+		FOR t IN SELECT * FROM artifact_group_list WHERE group_id = g.group_id
 		LOOP
-			IF t.allow_anon = 1 THEN
-			   PERFORM insert_pfo_role_setting (1, 'tracker', t.group_artifact_id, 1) ;
+			IF t.is_public = 1 THEN
+			   IF t.allow_anon = 1 THEN
+			      PERFORM insert_pfo_role_setting (1, 'tracker', t.group_artifact_id, 1) ;
+			   ELSE
+			      PERFORM insert_pfo_role_setting (1, 'tracker', t.group_artifact_id, 0) ;
+			   END IF ;
+
+			   PERFORM insert_pfo_role_setting (2, 'tracker', t.group_artifact_id, 1) ;
+			ELSE
+			   PERFORM insert_pfo_role_setting (1, 'tracker', t.group_artifact_id, 0) ;
+			   PERFORM insert_pfo_role_setting (2, 'tracker', t.group_artifact_id, 0) ;
 			END IF ;
-
-			PERFORM insert_pfo_role_setting (2, 'tracker', t.group_artifact_id, 1) ;
 		END LOOP ;
 		
-		FOR p IN SELECT * FROM project_group_list WHERE group_id = g.group_id AND is_public = 1
+		FOR p IN SELECT * FROM project_group_list WHERE group_id = g.group_id
 		LOOP
-			PERFORM insert_pfo_role_setting (1, 'pm', p.group_project_id, 1) ;
-			PERFORM insert_pfo_role_setting (2, 'pm', p.group_project_id, 1) ;
+			IF p.is_public = 1 THEN
+			   PERFORM insert_pfo_role_setting (1, 'pm', p.group_project_id, 1) ;
+			   PERFORM insert_pfo_role_setting (2, 'pm', p.group_project_id, 1) ;
+			ELSE
+			   PERFORM insert_pfo_role_setting (1, 'pm', p.group_project_id, 0) ;
+			   PERFORM insert_pfo_role_setting (2, 'pm', p.group_project_id, 0) ;
+			END IF ;
 		END LOOP ;
 		
 		FOR f IN SELECT * FROM forum_group_list WHERE group_id = g.group_id AND is_public = 1
 		LOOP
-			IF f.allow_anonymous = 1 THEN
+			IF f.is_public = 1 THEN
+			   IF f.allow_anonymous = 1 THEN
+			      IF f.moderation_level = 0 THEN
+			         PERFORM insert_pfo_role_setting (1, 'forum', f.group_forum_id, 3) ;
+			      ELSE
+			         PERFORM insert_pfo_role_setting (1, 'forum', f.group_forum_id, 2) ;
+			      END IF ;
+			   ELSE
+			      PERFORM insert_pfo_role_setting (1, 'forum', f.group_forum_id, 1) ;
+			   END IF ;
+			   
 			   IF f.moderation_level = 0 THEN
-			      PERFORM insert_pfo_role_setting (1, 'forum', f.group_forum_id, 3) ;
+			      PERFORM insert_pfo_role_setting (2, 'forum', f.group_forum_id, 3) ;
 			   ELSE
-			      PERFORM insert_pfo_role_setting (1, 'forum', f.group_forum_id, 2) ;
+			      PERFORM insert_pfo_role_setting (2, 'forum', f.group_forum_id, 2) ;
 			   END IF ;
 			ELSE
-			   PERFORM insert_pfo_role_setting (1, 'forum', f.group_forum_id, 1) ;
+			   PERFORM insert_pfo_role_setting (1, 'forum', f.group_forum_id, 0) ;
+			   PERFORM insert_pfo_role_setting (2, 'forum', f.group_forum_id, 0) ;
 			END IF ;
-
-			IF f.moderation_level = 0 THEN
-			   PERFORM insert_pfo_role_setting (2, 'forum', f.group_forum_id, 3) ;
-			ELSE
-			   PERFORM insert_pfo_role_setting (2, 'forum', f.group_forum_id, 2) ;
-			END IF ;
 		END LOOP ;
 		
 	END LOOP ;

Copied: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/db/20120321-add-news-in-activity_vw.sql (from rev 18231, trunk/gforge_base/evolvisforge-5.1/src/db/20120321-add-news-in-activity_vw.sql)
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/db/20120321-add-news-in-activity_vw.sql	                        (rev 0)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/db/20120321-add-news-in-activity_vw.sql	2012-04-05 10:25:42 UTC (rev 18232)
@@ -0,0 +1,29 @@
+CREATE OR REPLACE VIEW activity_vw AS
+SELECT
+agl.group_id, 'trackeropen'::text AS section, agl.group_artifact_id AS ref_id,
+a.artifact_id as subref_id, a.summary as description, a.open_date AS activity_date, u.user_id, u.user_name, u.realname
+FROM artifact_group_list agl JOIN artifact a using (group_artifact_id),
+users u WHERE u.user_id=a.submitted_by
+UNION
+SELECT
+agl.group_id, 'trackerclose'::text AS section, agl.group_artifact_id AS ref_id,
+a.artifact_id as subref_id, a.summary as description, a.close_date AS activity_date, u.user_id, u.user_name, u.realname
+FROM artifact_group_list agl JOIN artifact a using (group_artifact_id), users u WHERE u.user_id=a.assigned_to
+--actually should join against
+AND a.close_date > 0
+UNION
+SELECT
+frsp.group_id, 'frsrelease'::text as section,frsp.package_id as ref_id,
+frsr.release_id as subref_id, frsr.name AS description, frsr.release_date AS activity_date,
+u.user_id, u.user_name, u.realname FROM frs_package frsp JOIN frs_release frsr USING (package_id), users u WHERE
+u.user_id=frsr.released_by
+UNION
+SELECT
+fgl.group_id, 'forumpost'::text as section,fgl.group_forum_id as ref_id, forum.msg_id
+as subref_id, forum.subject AS description, forum.post_date AS activity_date, u.user_id,
+u.user_name, u.realname FROM forum_group_list fgl JOIN forum USING (group_forum_id), users u WHERE
+u.user_id=forum.posted_by
+UNION
+SELECT news_bytes.group_id,'news' AS section,news_bytes.id AS ref_id,news_bytes.forum_id AS subref_id,
+news_bytes.summary AS description, news_bytes.post_date AS activity_date, u.user_id, u.user_name, u.realname
+FROM news_bytes, users u WHERE u.user_id = news_bytes.submitted_by;

Copied: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/db/20120329-pfo-rbac.sql (from rev 18231, trunk/gforge_base/evolvisforge-5.1/src/db/20120329-pfo-rbac.sql)
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/db/20120329-pfo-rbac.sql	                        (rev 0)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/db/20120329-pfo-rbac.sql	2012-04-05 10:25:42 UTC (rev 18232)
@@ -0,0 +1,87 @@
+-- this is a copy of part of 20100927-pfo-rbac.sql
+-- the function fixed in FF SVN r15238 only, to ensure the
+-- fixed function is available on already upgraded systems
+
+CREATE OR REPLACE FUNCTION migrate_role_observer_to_pfo_rbac () RETURNS void AS $$
+DECLARE
+	g groups%ROWTYPE ;
+	t artifact_group_list%ROWTYPE ;
+	f forum_group_list%ROWTYPE ;
+	p project_group_list%ROWTYPE ;
+	need_loggedin boolean := false ;
+BEGIN
+	FOR g IN SELECT * FROM groups WHERE is_public = 1
+	LOOP
+		INSERT INTO role_project_refs VALUES (1, g.group_id) ;
+		INSERT INTO role_project_refs VALUES (2, g.group_id) ;
+		PERFORM insert_pfo_role_setting (1, 'project_read', g.group_id, 1) ;
+		PERFORM insert_pfo_role_setting (1, 'new_tracker', g.group_id, 1) ;
+		PERFORM insert_pfo_role_setting (1, 'new_pm', g.group_id, 1) ;
+		PERFORM insert_pfo_role_setting (1, 'new_forum', g.group_id, 1) ;
+		PERFORM insert_pfo_role_setting (1, 'frs', g.group_id, 1) ;
+		PERFORM insert_pfo_role_setting (2, 'project_read', g.group_id, 1) ;
+		PERFORM insert_pfo_role_setting (2, 'new_tracker', g.group_id, 1) ;
+		PERFORM insert_pfo_role_setting (2, 'new_pm', g.group_id, 1) ;
+		PERFORM insert_pfo_role_setting (2, 'new_forum', g.group_id, 1) ;
+		PERFORM insert_pfo_role_setting (2, 'frs', g.group_id, 1) ;
+
+		IF g.enable_anonscm = 1 THEN
+		   PERFORM insert_pfo_role_setting (1, 'scm', g.group_id, 1) ;
+		   PERFORM insert_pfo_role_setting (2, 'scm', g.group_id, 1) ;
+		END IF ;
+
+		FOR t IN SELECT * FROM artifact_group_list WHERE group_id = g.group_id
+		LOOP
+			IF t.is_public = 1 THEN
+			   IF t.allow_anon = 1 THEN
+			      PERFORM insert_pfo_role_setting (1, 'tracker', t.group_artifact_id, 1) ;
+			   ELSE
+			      PERFORM insert_pfo_role_setting (1, 'tracker', t.group_artifact_id, 0) ;
+			   END IF ;
+
+			   PERFORM insert_pfo_role_setting (2, 'tracker', t.group_artifact_id, 1) ;
+			ELSE
+			   PERFORM insert_pfo_role_setting (1, 'tracker', t.group_artifact_id, 0) ;
+			   PERFORM insert_pfo_role_setting (2, 'tracker', t.group_artifact_id, 0) ;
+			END IF ;
+		END LOOP ;
+		
+		FOR p IN SELECT * FROM project_group_list WHERE group_id = g.group_id
+		LOOP
+			IF p.is_public = 1 THEN
+			   PERFORM insert_pfo_role_setting (1, 'pm', p.group_project_id, 1) ;
+			   PERFORM insert_pfo_role_setting (2, 'pm', p.group_project_id, 1) ;
+			ELSE
+			   PERFORM insert_pfo_role_setting (1, 'pm', p.group_project_id, 0) ;
+			   PERFORM insert_pfo_role_setting (2, 'pm', p.group_project_id, 0) ;
+			END IF ;
+		END LOOP ;
+		
+		FOR f IN SELECT * FROM forum_group_list WHERE group_id = g.group_id AND is_public = 1
+		LOOP
+			IF f.is_public = 1 THEN
+			   IF f.allow_anonymous = 1 THEN
+			      IF f.moderation_level = 0 THEN
+			         PERFORM insert_pfo_role_setting (1, 'forum', f.group_forum_id, 3) ;
+			      ELSE
+			         PERFORM insert_pfo_role_setting (1, 'forum', f.group_forum_id, 2) ;
+			      END IF ;
+			   ELSE
+			      PERFORM insert_pfo_role_setting (1, 'forum', f.group_forum_id, 1) ;
+			   END IF ;
+			   
+			   IF f.moderation_level = 0 THEN
+			      PERFORM insert_pfo_role_setting (2, 'forum', f.group_forum_id, 3) ;
+			   ELSE
+			      PERFORM insert_pfo_role_setting (2, 'forum', f.group_forum_id, 2) ;
+			   END IF ;
+			ELSE
+			   PERFORM insert_pfo_role_setting (1, 'forum', f.group_forum_id, 0) ;
+			   PERFORM insert_pfo_role_setting (2, 'forum', f.group_forum_id, 0) ;
+			END IF ;
+		END LOOP ;
+		
+	END LOOP ;
+
+END ;
+$$ LANGUAGE plpgsql ;

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/db/startpoint.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/db/startpoint.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/db/startpoint.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -1,7 +1,7 @@
 #! /usr/bin/php
 <?php
 
-require_once dirname(__FILE__).'/../www/env.inc.php';
+require dirname(__FILE__).'/../common/include/env.inc.php';
 require_once $gfcommon.'include/pre.php';
 
 if (!$gfconn) {

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/db/upgrade-db.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/db/upgrade-db.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/db/upgrade-db.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -5,7 +5,7 @@
 // upgrade-db.php all      => Upgrade the main database and active plugins.
 // upgrade-db.php <plugin> => Upgrade only the database of the given active plugin.
 
-require_once dirname(__FILE__).'/../www/env.inc.php';
+require dirname(__FILE__).'/../common/include/env.inc.php';
 require_once $gfcommon.'include/pre.php';
 
 /** 

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/deb-specific/create-mailing-lists.pl
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/deb-specific/create-mailing-lists.pl	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/deb-specific/create-mailing-lists.pl	2012-04-05 10:25:42 UTC (rev 18232)
@@ -17,7 +17,6 @@
 sub debug ( $ ) ;
 
 require ("/usr/share/gforge/lib/include.pl") ; # Include all the predefined functions 
-require ("/etc/gforge/local.pl") ;
 
 &db_connect ;
 

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/deb-specific/db-upgrade.pl
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/deb-specific/db-upgrade.pl	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/deb-specific/db-upgrade.pl	2012-04-05 10:25:42 UTC (rev 18232)
@@ -24,7 +24,6 @@
     $server_admin $domain_name $newsadmin_groupid $statsadmin_groupid
     $libdir $sqldir/ ;
 
-require ("/etc/gforge/local.pl") ; 
 $libdir="/usr/share/gforge/lib";
 $sqldir="/usr/share/gforge/db";
 require ("$libdir/sqlparser.pm") ; # Our magic SQL parser
@@ -117,8 +116,6 @@
 	  if (&is_lesser ($version, $target)) {
 	      &debug ("Adding local data.") ;
 
-	      do "/etc/gforge/local.pl" or die "Cannot read /etc/gforge/local.pl" ;
-
 	      my ($login, $md5pwd, $unixpwd, $email, $noreplymail, $date) ;
 
 	      $login = 'admin' ;
@@ -2509,6 +2506,9 @@
 	$dbh->commit();
     }
 
+    &update_with_sql("20120321-add-news-in-activity_vw","5.1-12");
+    &update_with_sql("20120329-pfo-rbac", "5.1-12+ev1");
+
     ########################### INSERT HERE #################################
 
     # There should be a commit at the end of every block above.
@@ -2609,6 +2609,7 @@
 sub update_with_sql ( $$ ) {
     my $sqlfile = shift or die "Not enough arguments" ;
     my $target = shift or die "Not enough arguments" ;
+    $sqlfile =~ s/\.sql$//;
     my $version = &get_db_version ;
     if (&is_lesser ($version, $target)) {
         &debug ("Upgrading database with $sqlfile.sql") ;

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/deb-specific/fileforge.pl
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/deb-specific/fileforge.pl	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/deb-specific/fileforge.pl	2012-04-05 10:25:42 UTC (rev 18232)
@@ -11,7 +11,7 @@
 delete @ENV{qw(IFS CDPATH ENV BASH_ENV PATH)};
 
 # Check access to secret
-require ("/etc/gforge/local.pl") ;
+require ("/usr/share/gforge/lib/include.pl") ;
 unless ( (defined $sys_dbpasswd)
 	 and (defined $ENV{'sys_dbpasswd'})
 	 and ($sys_dbpasswd eq $ENV{'sys_dbpasswd'}) ) {

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/deb-specific/fix-mailing-lists.pl
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/deb-specific/fix-mailing-lists.pl	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/deb-specific/fix-mailing-lists.pl	2012-04-05 10:25:42 UTC (rev 18232)
@@ -14,7 +14,6 @@
 
 sub debug ( $ ) ;
 
-require ("/etc/gforge/local.pl") ;
 require("/usr/share/gforge/lib/include.pl");  # Include all the predefined functions
 
 &db_connect ;

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/deb-specific/install-exim.sh
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/deb-specific/install-exim.sh	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/deb-specific/install-exim.sh	2012-04-05 10:25:42 UTC (rev 18232)
@@ -14,8 +14,8 @@
     configure-files)
 	cp -a /etc/aliases /etc/aliases.gforge-new
 	# Redirect "noreply" mail to the bit bucket (if need be)
-	noreply_to_bitbucket=$(perl -e'require "/etc/gforge/local.pl"; print "$noreply_to_bitbucket\n";')
-	if [ "$noreply_to_bitbucket" = "true" ] ; then
+	noreply_to_bitbucket=$(/usr/share/gforge/bin/forge_get_config noreply_to_bitbucket)
+	if [ "$noreply_to_bitbucket" != "no" ] ; then
 	    if ! grep -q "^noreply:" /etc/aliases.gforge-new ; then
 		echo "### Next line inserted by GForge install" >> /etc/aliases.gforge-new
 		echo "noreply: /dev/null" >> /etc/aliases.gforge-new
@@ -23,7 +23,7 @@
 	fi
 
 	# Redirect "gforge" mail to the site admin
-	server_admin=$(perl -e'require "/etc/gforge/local.pl"; print "$server_admin\n";')
+	server_admin=$(/usr/share/gforge/bin/forge_get_config admin_email)
 	if ! grep -q "^gforge:" /etc/aliases.gforge-new ; then
 	    echo "### Next line inserted by GForge install" >> /etc/aliases.gforge-new
 	    echo "gforge: $server_admin" >> /etc/aliases.gforge-new
@@ -35,7 +35,7 @@
 	tmp1=$(mktemp /tmp/$pattern)
 	# First, get the list of local domains right
 	perl -e '
-require ("/etc/gforge/local.pl") ;
+require ("/usr/share/gforge/lib/include.pl") ;
 $seen_sf_domains = 0 ;
 while (($l = <>) !~ /^\s*local_domains/) {
   print $l;
@@ -51,7 +51,7 @@
 	tmp2=$(mktemp /tmp/$pattern)
 	# Second, insinuate our forwarding rules in the directors section
 	perl -e '
-require ("/etc/gforge/local.pl") ;
+require ("/usr/share/gforge/lib/include.pl") ;
 
 $sf_block = "# BEGIN SOURCEFORGE BLOCK -- DO NOT EDIT #
 # You may move this block around to accomodate your local needs as long as you
@@ -210,8 +210,8 @@
 	tmp1=$(mktemp /tmp/$pattern)
 	cp -a /etc/aliases /etc/aliases.gforge-new
 	# Redirect "noreply" mail to the bit bucket (if need be)
-	noreply_to_bitbucket=$(perl -e'require "/etc/gforge/local.pl"; print "$noreply_to_bitbucket\n";')
-	if [ "$noreply_to_bitbucket" = "true" ] ; then
+	noreply_to_bitbucket=$(/usr/share/gforge/bin/forge_get_config noreply_to_bitbucket)
+	if [ "$noreply_to_bitbucket" != "no" ] ; then
 	    grep -v "^noreply:" /etc/aliases.gforge-new > $tmp1
 	    cat $tmp1 > /etc/aliases.gforge-new
 	fi

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/deb-specific/install-exim4.sh
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/deb-specific/install-exim4.sh	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/deb-specific/install-exim4.sh	2012-04-05 10:25:42 UTC (rev 18232)
@@ -40,8 +40,8 @@
     cp -a $cfg_aliases $cfg_aliases_gforge
 
     # Redirect "noreply" mail to the bit bucket (if need be)
-    noreply_to_bitbucket=$(perl -e'require "/etc/gforge/local.pl"; print "$noreply_to_bitbucket\n";')
-    if [ "$noreply_to_bitbucket" = "true" ] ; then
+    noreply_to_bitbucket=$(/usr/share/gforge/bin/forge_get_config noreply_to_bitbucket)
+    if [ "$noreply_to_bitbucket" != "no" ] ; then
       if ! grep -q "^noreply:" $cfg_aliases_gforge; then
 	echo "### Next line inserted by GForge install" >> $cfg_aliases_gforge
 	echo "noreply: :blackhole:" >> $cfg_aliases_gforge
@@ -49,7 +49,7 @@
     fi
 
     # Redirect "gforge" mail to the site admin
-    server_admin=$(perl -e'require "/etc/gforge/local.pl"; print "$server_admin\n";')
+    server_admin=$(/usr/share/gforge/bin/forge_get_config admin_email)
     if ! grep -q "^gforge:" $cfg_aliases_gforge; then
       echo "### Next line inserted by GForge install" >> $cfg_aliases_gforge
       echo "gforge: $server_admin" >> $cfg_aliases_gforge
@@ -67,7 +67,7 @@
       cp -a $m $cfg_gforge_main
 
       perl -e '
-require ("/etc/gforge/local.pl") ;
+require ("/usr/share/gforge/lib/include.pl") ;
 $seen_gf_domains = 0;
 while (($l = <>) !~ /^\s*domainlist\s*local_domains/) {
   print $l;
@@ -89,7 +89,7 @@
     # Second, insinuate our forwarding rules in the directors section
 
     perl -e '
-require ("/etc/gforge/local.pl") ;
+require ("/usr/share/gforge/lib/include.pl") ;
 
 my $gf_block = "# BEGIN GFORGE BLOCK -- DO NOT EDIT #
 # You may move this block around to accomodate your local needs as long as you
@@ -252,8 +252,8 @@
 
     grep -v "^gforge:" $cfg_aliases_gforge > $tmp1
     # Redirect "noreply" mail to the bit bucket (if need be)
-    noreply_to_bitbucket=$(perl -e'require "/etc/gforge/local.pl"; print "$noreply_to_bitbucket\n";')
-    if [ "$noreply_to_bitbucket" = "true" ] ; then
+    noreply_to_bitbucket=$(/usr/share/gforge/bin/forge_get_config noreply_to_bitbucket)
+    if [ "$noreply_to_bitbucket" != "no" ] ; then
       grep -v "^noreply:" $tmp1 > $cfg_aliases_gforge
     else
       cat $tmp1 > $cfg_aliases_gforge

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/deb-specific/install-postfix.sh
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/deb-specific/install-postfix.sh	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/deb-specific/install-postfix.sh	2012-04-05 10:25:42 UTC (rev 18232)
@@ -16,8 +16,8 @@
     configure-files)
 	cp -a /etc/aliases /etc/aliases.gforge-new
 	# Redirect "noreply" mail to the bit bucket (if need be)
-	noreply_to_bitbucket=$(perl -e'require "/etc/gforge/local.pl"; print "$noreply_to_bitbucket\n";')
-	if [ "$noreply_to_bitbucket" = "true" ] ; then
+	noreply_to_bitbucket=$(/usr/share/gforge/bin/forge_get_config noreply_to_bitbucket)
+	if [ "$noreply_to_bitbucket" != "no" ] ; then
 	    if ! grep -q "^noreply:" /etc/aliases.gforge-new ; then
 		echo "### Next line inserted by GForge install" >> /etc/aliases.gforge-new
 		echo "noreply: /dev/null" >> /etc/aliases.gforge-new
@@ -25,7 +25,7 @@
 	fi
 
 	# Redirect "gforge" mail to the site admin
-	server_admin=$(perl -e'require "/etc/gforge/local.pl"; print "$server_admin\n";')
+	server_admin=$(/usr/share/gforge/bin/forge_get_config admin_email)
 	if ! grep -q "^gforge:" /etc/aliases.gforge-new ; then
 	    echo "### Next line inserted by GForge install" >> /etc/aliases.gforge-new
 	    echo "gforge: $server_admin" >> /etc/aliases.gforge-new
@@ -41,7 +41,7 @@
 	tmp1=$(mktemp /tmp/$pattern)
 	# First, get the list of local domains right - add gforge domains to 'mydestination'
 	perl -e '
-require ("/etc/gforge/local.pl") ;
+require ("/usr/share/gforge/lib/include.pl") ;
 my $l;
 while ($l = <>) { 
   last if $l =~ /^\s*mydestination/ ;
@@ -58,7 +58,7 @@
 ' < /etc/postfix/main.cf.gforge-new > $tmp1
 	grep -q '^[[:space:]]*relay_domains' $tmp1 || echo 'relay_domains = $mydestination' >>$tmp1
 	perl -i -e '
-require ("/etc/gforge/local.pl") ;
+require ("/usr/share/gforge/lib/include.pl") ;
 my $l;
 while (($l = <>) !~ /^\s*relay_domains/) { print $l; };
 chomp $l;
@@ -77,7 +77,7 @@
 	def_smtpd_recipient_restrictions=$(postconf -d smtpd_recipient_restrictions)
 	# Second, insinuate our forwarding rules in the directors section
 	perl -e '
-require ("/etc/gforge/local.pl") ;
+require ("/usr/share/gforge/lib/include.pl") ;
 
 my $gf_block;
 my $l;
@@ -169,7 +169,7 @@
     
     configure)
 	[ -x /usr/bin/newaliases ] && newaliases
-	perl -e'require "/etc/gforge/local.pl"; print "$sys_lists_host mailman:\n";' > /var/lib/gforge/etc/postfix-transport
+	echo "$(/usr/share/gforge/bin/forge_get_config lists_host) mailman:" > /var/lib/gforge/etc/postfix-transport
 	postmap /var/lib/gforge/etc/postfix-transport	
 	;;
     
@@ -178,8 +178,8 @@
 	tmp1=$(mktemp /tmp/$pattern)
 	cp -a /etc/aliases /etc/aliases.gforge-new
 	# Redirect "noreply" mail to the bit bucket (if need be)
-	noreply_to_bitbucket=$(perl -e'require "/etc/gforge/local.pl"; print "$noreply_to_bitbucket\n";')
-	if [ "$noreply_to_bitbucket" = "true" ] ; then
+	noreply_to_bitbucket=$(/usr/share/gforge/bin/forge_get_config noreply_to_bitbucket)
+	if [ "$noreply_to_bitbucket" != "no" ] ; then
 	    grep -v "^noreply:" /etc/aliases.gforge-new > $tmp1
 	    cat $tmp1 > /etc/aliases.gforge-new
 	fi
@@ -192,7 +192,7 @@
 	tmp1=$(mktemp /tmp/$pattern)
 	# First, replace the list of local domains
 	perl -e '
-require ("/etc/gforge/local.pl") ;
+require ("/usr/share/gforge/lib/include.pl") ;
 while ($l = <>) { 
   last if $l =~ /^\s*mydestination/ ;
   print $l;
@@ -209,7 +209,7 @@
 while ($l = <>) { print $l; };
 ' < /etc/postfix/main.cf.gforge-new > $tmp1
 	grep -q '^[[:space:]]*relay_domains' $tmp1 && perl -i -e '
-require ("/etc/gforge/local.pl") ;
+require ("/usr/share/gforge/lib/include.pl") ;
 while (($l = <>) !~ /^\s*relay_domains/) {
   print $l;
 };

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/deb-specific/prepare-vhosts-file.pl
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/deb-specific/prepare-vhosts-file.pl	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/deb-specific/prepare-vhosts-file.pl	2012-04-05 10:25:42 UTC (rev 18232)
@@ -5,7 +5,6 @@
 use strict ;
 use vars qw/$dbh $ifile $ofile @ilist %hash $key $val $cur $line $dbh $sys_dbname $sys_dbuser $sys_dbpasswd $token/ ;
 
-require("/etc/gforge/local.pl"); 
 require ("/usr/share/gforge/lib/include.pl") ; 
 
 %hash = () ;

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/deb-specific/update-user-group-ssh.sh
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/deb-specific/update-user-group-ssh.sh	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/deb-specific/update-user-group-ssh.sh	2012-04-05 10:25:42 UTC (rev 18232)
@@ -17,7 +17,7 @@
 	(
 		echo '# THIS FILE IS GENERATED, DO NOT MODIFY'
 		php -r '
-			require_once "/usr/share/gforge/www/env.inc.php";
+			require_once "/usr/share/gforge/common/include/env.inc.php";
 			require_once $gfcommon."include/pre.php";
 
 			$mapping = array(

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/changelog
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/changelog	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/changelog	2012-04-05 10:25:42 UTC (rev 18232)
@@ -1,3 +1,45 @@
+fusionforge (5.1.1+evolvis50) unstable; urgency=low
+
+  [ Julien Heyman ]
+  * Add news in activity_vw
+
+  [ Marcel Baur ]
+  * Fix scmcvs .ssh key generation
+
+  [ Roland Mas ]
+  * Ship plugins/blocks/config.php to where it'll get found
+  * Use current config system in deb-specific scripts
+  * Better default values for config variables
+  * Refreshed podebconf files
+  * Normalize roles after enabling/disabling a plugin, so that plugins
+    defining new permission settings get their default values set
+  * Mediawiki: Only create the project dir if the database part ran fine
+  * Fixed permission checking in top projects list
+  * [#2944] Fix RBAC migration: not saving a setting ≠ setting it to zero
+
+  [ Thorsten Glaser ]
+  * Merge fusionforge (5.1.1-5) unstable
+  * Be more lenient regarding *.sql files in the DB upgrade script
+  * Run a normalise_roles plugin hook after everything else
+  * Mediawiki: Remove old Evolvis 4.8 style public visibility code;
+    [#2947] upon normalising roles, transition from old style to PFO-RBAC
+    if any old-style setting files were found
+  * Mediawiki: Fix generating the nightly XML dumps
+  * Fix SCM dir group read permissions when toggling scmsvn/use_ssh to yes
+  * Improve the Users/Roles UI: display Unixnames in more places
+  * Bring in the ?subpage=home ⇒ wiki code from 4.8
+  * Display [#nnn] links in Tracker mails correctly and use permalinks
+  * [#2946] Correctly unencode entities before sending out mails
+  * Tracker: multi-line Item Description and Comments handled correctly
+  * [#2942] Rewrite Site-Admin Group List page
+  * [#2932] Allow multiple Submitters in Old Power Queries
+  * [#2945] Prevent non-logged in users from determining group existence
+  * Enable syntax checks before build
+  * Disable non-rotated Apache 2 logfiles
+  * Allow using language-pack-{de,en} as locales-all replacement
+
+ -- Thorsten Glaser <t.glaser at tarent.de>  Thu, 05 Apr 2012 12:15:15 +0200
+
 fusionforge (5.1.1+evolvis49) unstable; urgency=low
 
   * Fix several PHP warnings (undefined variables, API mismatch,
@@ -384,12 +426,34 @@
 
  -- Thorsten Glaser <t.glaser at tarent.de>  Tue, 06 Dec 2011 19:13:33 +0100
 
-fusionforge (5.1.1-3) UNRELEASED; urgency=low
+fusionforge (5.1.1-5) unstable; urgency=low
 
+  * Remove more config files on purge (detected by piuparts).
+
+ -- Roland Mas <lolando at debian.org>  Tue, 27 Mar 2012 20:34:57 +0200
+
+fusionforge (5.1.1-4) unstable; urgency=low
+
+  * Removed one more call to fusionforge-config.
+
+ -- Roland Mas <lolando at debian.org>  Tue, 20 Mar 2012 17:09:19 +0100
+
+fusionforge (5.1.1-3) unstable; urgency=low
+
+  [ Olivier Berger ]
   * Add new README.Debian for gforge-web-apache2 specifically.
 
- -- Olivier Berger <obergix at debian.org>  Mon, 21 Nov 2011 17:33:28 +0100
+  [ Roland Mas ]
+  * Use common/include/env.inc.php rather than www/env.inc.php for offline
+    scripts (closes: #663602).
+  * More comprehensive purge for -common package (closes: #638167).
+  * Stop trying to call fusionforge-config in maintainer scripts, it's not
+    needed any longer and it causes problems (closes: #655965, #656088,
+    #662897).
+  * Fixed PHP 5.4 compatibility (closes: #658955).
 
+ -- Roland Mas <lolando at debian.org>  Fri, 16 Mar 2012 16:12:09 +0100
+
 fusionforge (5.1.1-2) unstable; urgency=low
 
   * New upstream SVN snapshot.
@@ -3711,7 +3775,3 @@
   * Initial Release.  Expect many bugs.
 
  -- Roland Mas <99.roland.mas at aist.enst.fr>  Sun, 10 Dec 2000 16:15:20 +0100
-
-Local Variables:
-coding: utf-8
-End:

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/control
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/control	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/control	2012-04-05 10:25:42 UTC (rev 18232)
@@ -285,7 +285,10 @@
  gforge-db-postgresql, gforge-mta-postfix,
  gforge-shell-postgresql, gforge-lists-mailman,
  fusionforge-plugin-scmgit, fusionforge-plugin-scmsvn,
- evolvis-anonsvnsh, locales-all,
+ evolvis-anonsvnsh,
+ locales-all | locales,
+ locales-all | language-pack-de,
+ locales-all | language-pack-en,
  fusionforge-plugin-extratabs, fusionforge-plugin-projectlabels,
  fusionforge-plugin-mediawiki, mediawiki-extensions-base (>= 2.4~),
  mediawiki-math, mediawiki-extensions-collection,

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-in/common.postinst
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-in/common.postinst	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-in/common.postinst	2012-04-05 10:25:42 UTC (rev 18232)
@@ -111,8 +111,6 @@
 	    echo "Migrating existing configuration to *.ini files"
 	    PATH=$PATH:/usr/share/gforge/bin migrate-to-ini-files.sh
 	fi 
-
-	@PACKAGE at -config
     ;;
 
     abort-upgrade|abort-remove|abort-deconfigure)

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-in/common.postrm
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-in/common.postrm	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-in/common.postrm	2012-04-05 10:25:42 UTC (rev 18232)
@@ -21,6 +21,9 @@
 	rm -rf /var/lib/@OLDPACKAGE@
 	[ -d /etc/@OLDPACKAGE@ ] && rm -rf /etc/@OLDPACKAGE@
 	rm -f /scmrepos
+	for i in config.ini.d/debian-install-secrets.ini config.ini.d/debian-install.ini fusionforge.conf ; do
+	    [ -e /etc/@PACKAGE@/$i ] && rm /etc/@PACKAGE@/$i
+	done
 	;;
     remove|upgrade|failed-upgrade|abort-install|abort-upgrade|disappear)
 	;;

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-in/db-postgresql.postinst.dsfh-in
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-in/db-postgresql.postinst.dsfh-in	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-in/db-postgresql.postinst.dsfh-in	2012-04-05 10:25:42 UTC (rev 18232)
@@ -56,8 +56,6 @@
     configure)
 	add_onevar_mainconfile default_trove_cat 18
 
-	@PACKAGE at -config
-
         # Patch DB configuration files
 	/usr/share/@OLDPACKAGE@/bin/install-db.sh configure-files
 

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-in/dns-bind9.postinst
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-in/dns-bind9.postinst	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-in/dns-bind9.postinst	2012-04-05 10:25:42 UTC (rev 18232)
@@ -27,8 +27,6 @@
 
 case "$1" in
     configure)
-	@PACKAGE at -config
-
 	# Patch Bind configuration files
 	/usr/share/@OLDPACKAGE@/bin/install-dns.sh configure-files
 	ucf --debconf-ok /etc/bind/named.conf. at OLDPACKAGE@-new /etc/bind/named.conf

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-in/ftp-proftpd.postinst
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-in/ftp-proftpd.postinst	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-in/ftp-proftpd.postinst	2012-04-05 10:25:42 UTC (rev 18232)
@@ -27,8 +27,6 @@
 
 case "$1" in
     configure)
-	@PACKAGE at -config
-
         # Patch Proftpd configuration files
 	/usr/share/@OLDPACKAGE@/bin/install-ftp.sh configure-files
 	if [ -f /etc/proftpd/proftpd.conf. at OLDPACKAGE@-new ]

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-in/lists-mailman.postinst
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-in/lists-mailman.postinst	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-in/lists-mailman.postinst	2012-04-05 10:25:42 UTC (rev 18232)
@@ -27,8 +27,6 @@
 
 case "$1" in
     configure)
-	@PACKAGE at -config
-	
 	echo "Fixing past damage in mailing-lists..."
 	if [ -z "$2" ] || dpkg --compare-versions $2 le 3rc2-4 ; then
 	    /usr/share/@OLDPACKAGE@/bin/fix-mailing-lists.pl

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-in/mta-exim4.postinst
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-in/mta-exim4.postinst	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-in/mta-exim4.postinst	2012-04-05 10:25:42 UTC (rev 18232)
@@ -27,8 +27,6 @@
 
 case "$1" in
     configure)
-
-	@PACKAGE at -config
         # Patch Exim configuration files
 	/usr/share/@OLDPACKAGE@/bin/install-exim4.sh configure-files
 	if [ -f /etc/aliases. at OLDPACKAGE@-new ]

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-in/mta-postfix.postinst
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-in/mta-postfix.postinst	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-in/mta-postfix.postinst	2012-04-05 10:25:42 UTC (rev 18232)
@@ -27,8 +27,6 @@
 
 case "$1" in
     configure)
-	@PACKAGE at -config
-
         # Patch Postfix configuration files
 	/usr/share/@OLDPACKAGE@/bin/install-postfix.sh configure-files
 	ucf --debconf-ok /etc/aliases. at OLDPACKAGE@-new /etc/aliases

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-in/shell-postgresql.postinst
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-in/shell-postgresql.postinst	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-in/shell-postgresql.postinst	2012-04-05 10:25:42 UTC (rev 18232)
@@ -27,8 +27,6 @@
 
 case "$1" in
     configure)
-	@PACKAGE at -config
-
         # Patch NSS configuration files
 	/usr/share/@OLDPACKAGE@/bin/install-nsspgsql.sh configure-files
 

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-in/web-apache2-vhosts.postinst.dsfh-in
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-in/web-apache2-vhosts.postinst.dsfh-in	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-in/web-apache2-vhosts.postinst.dsfh-in	2012-04-05 10:25:42 UTC (rev 18232)
@@ -27,8 +27,6 @@
 
 case "$1" in
     configure)
-        @PACKAGE at -config
-
 	db_stop
         # Setup our Apache
 	touch /var/lib/@OLDPACKAGE@/etc/templates/httpd.vhosts  && \

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-in/web-apache2-vhosts.postrm.dsfh-in
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-in/web-apache2-vhosts.postrm.dsfh-in	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-in/web-apache2-vhosts.postrm.dsfh-in	2012-04-05 10:25:42 UTC (rev 18232)
@@ -18,7 +18,6 @@
 
 case "$1" in
     purge|remove|upgrade|failed-upgrade|abort-install|abort-upgrade|disappear)
-	@PACKAGE at -config
         # Make Apache see these new changes
 	invoke-rc.d apache2 reload || true
 	;;

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-in/web-apache2.postinst.dsfh-in
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-in/web-apache2.postinst.dsfh-in	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-in/web-apache2.postinst.dsfh-in	2012-04-05 10:25:42 UTC (rev 18232)
@@ -55,8 +55,6 @@
 		cat /etc/@OLDPACKAGE@/ssl-cert.pem >/etc/@OLDPACKAGE@/ssl-cert.ca
 	fi
 	
-        fusionforge-config
-
 	for i in secrets.inc vhost-list.inc vhost-main.inc vhost-projects.inc ; do
 	    if [ ! -e /etc/gforge/httpd.conf.d/$i ] ; then
 		cp /usr/share/gforge/etc/httpd.conf.d-fhs/$i /etc/gforge/httpd.conf.d/$i

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-po/cs.po
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-po/cs.po	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-po/cs.po	2012-04-05 10:25:42 UTC (rev 18232)
@@ -14,11 +14,12 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: @PACKAGE@\n"
-"Report-Msgid-Bugs-To: gforge at packages.debian.org\n"
-"POT-Creation-Date: 2009-06-12 23:23+0200\n"
+"Report-Msgid-Bugs-To: fusionforge at packages.debian.org\n"
+"POT-Creation-Date: 2012-03-16 10:20+0100\n"
 "PO-Revision-Date: 2008-03-30 14:36+0200\n"
 "Last-Translator: Miroslav Kure <kurem at debian.cz>\n"
 "Language-Team: Czech <debian-l10n-czech at lists.debian.org>\n"
+"Language: cs\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
@@ -76,44 +77,13 @@
 #. Type: string
 #. Description
 #: ../dsf-in/db-postgresql.templates.dsfh-in:8001
-#, fuzzy
-#| msgid "@FORGENAME@ administrator login:"
-msgid "@FORGENAME@ administrator login:"
-msgstr "Přihlašovací jméno správce @FORGENAME@:"
-
-#. Type: string
-#. Description
-#. Type: password
-#. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:8001
-#: ../dsf-in/db-postgresql.templates.dsfh-in:10001
-#, fuzzy
-#| msgid ""
-#| "The @FORGENAME@ administrator account will have full privileges on the "
-#| "system. It will be used to approve the creation of new projects."
-msgid ""
-"The @FORGENAME@ administrator account will have full privileges on the "
-"system. It will be used to approve the creation of new projects."
-msgstr ""
-"Správce @FORGENAME@ bude mít v systému @FORGENAME@ všechna práva. Používá se "
-"například pro schvalování vytváření nových projektů."
-
-#. Type: string
-#. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:8001
-msgid "Please choose the username for this account."
-msgstr "Zadejte prosím přihlašovací jméno tohoto účtu."
-
-#. Type: string
-#. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:9001
 #: ../dsf-helper/host-variables.templates:2001
 msgid "IP address:"
 msgstr "IP adresa:"
 
 #. Type: string
 #. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:9001
+#: ../dsf-in/db-postgresql.templates.dsfh-in:8001
 #: ../dsf-helper/host-variables.templates:2001
 #, fuzzy
 #| msgid ""
@@ -127,14 +97,14 @@
 
 #. Type: string
 #. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:9001
+#: ../dsf-in/db-postgresql.templates.dsfh-in:8001
 #: ../dsf-helper/host-variables.templates:2001
 msgid "This is needed for the configuration of Apache virtual hosting."
 msgstr "To je vyžadováno pro nastavení virtuálních hostů v Apachi."
 
 #. Type: password
 #. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:10001
+#: ../dsf-in/db-postgresql.templates.dsfh-in:9001
 #, fuzzy
 #| msgid "@FORGENAME@ administrator password:"
 msgid "@FORGENAME@ administrator password:"
@@ -142,53 +112,40 @@
 
 #. Type: password
 #. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:10001
-msgid "Please choose the password for this account."
+#: ../dsf-in/db-postgresql.templates.dsfh-in:9001
+#, fuzzy
+#| msgid ""
+#| "The @FORGENAME@ administrator account will have full privileges on the "
+#| "system. It will be used to approve the creation of new projects."
+msgid ""
+"The @FORGENAME@ administrator account will have full privileges on the "
+"forge. It will be used to approve the creation of new projects."
+msgstr ""
+"Správce @FORGENAME@ bude mít v systému @FORGENAME@ všechna práva. Používá se "
+"například pro schvalování vytváření nových projektů."
+
+#. Type: password
+#. Description
+#: ../dsf-in/db-postgresql.templates.dsfh-in:9001
+#, fuzzy
+#| msgid "Please choose the password for this account."
+msgid "Please choose the password for this forge account."
 msgstr "Zadejte prosím heslo pro tento účet."
 
 #. Type: password
 #. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:11001
+#: ../dsf-in/db-postgresql.templates.dsfh-in:10001
 #: ../dsf-helper/dbpasswd-variables.templates:3001
 msgid "Password confirmation:"
 msgstr "Potvrzení hesla:"
 
 #. Type: password
 #. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:11001
+#: ../dsf-in/db-postgresql.templates.dsfh-in:10001
 #: ../dsf-helper/dbpasswd-variables.templates:3001
 msgid "Please re-type the password for confirmation."
 msgstr "Zadejte heslo ještě jednou pro potvrzení."
 
-#. Type: string
-#. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:12001
-msgid "Initial list of skills:"
-msgstr "Počáteční seznam schopností:"
-
-#. Type: string
-#. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:12001
-#, fuzzy
-#| msgid ""
-#| "@FORGENAME@ allows users to define a list of their skills, to be chosen "
-#| "from those present in the database. This list is the initial list of "
-#| "skills that will enter the database."
-msgid ""
-"@FORGENAME@ allows users to define a list of their skills, to be chosen from "
-"those present in the database. This list is the initial list of skills that "
-"will enter the database."
-msgstr ""
-"@FORGENAME@ umožňuje uživatelům, aby si ze seznamu schopností definovali své "
-"dovednosti. Seznam, který zde zadáte, bude uložen v databázi jako výchozí "
-"seznam schopností."
-
-#. Type: string
-#. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:12001
-msgid "Please enter a semicolon-separated list of skill names."
-msgstr "Jednotlivé položky seznamu schopností oddělte středníky."
-
 #. Type: boolean
 #. Description
 #. Translators: SCM here means "Source Control Management"
@@ -243,8 +200,8 @@
 #| "@FORGENAME@ sends and receives plenty of e-mail to and from the "
 #| "\"${noreply}\" address."
 msgid ""
-"@FORGENAME@ sends and receives plenty of e-mail to and from the \"${noreply}"
-"\" address."
+"@FORGENAME@ sends and receives plenty of e-mail to and from the "
+"\"${noreply}\" address."
 msgstr ""
 "@FORGENAME@ využívá adresu „${noreply}“ k odesílání i příjmu velkého "
 "množství pošty."
@@ -678,3 +635,31 @@
 "Please choose the default theme for web pages. This must be a valid name."
 msgstr ""
 "Vyberte prosím výchozí téma pro webové stránky. Musí to být platný název."
+
+#, fuzzy
+#~| msgid "@FORGENAME@ administrator login:"
+#~ msgid "@FORGENAME@ administrator login:"
+#~ msgstr "Přihlašovací jméno správce @FORGENAME@:"
+
+#~ msgid "Please choose the username for this account."
+#~ msgstr "Zadejte prosím přihlašovací jméno tohoto účtu."
+
+#~ msgid "Initial list of skills:"
+#~ msgstr "Počáteční seznam schopností:"
+
+#, fuzzy
+#~| msgid ""
+#~| "@FORGENAME@ allows users to define a list of their skills, to be chosen "
+#~| "from those present in the database. This list is the initial list of "
+#~| "skills that will enter the database."
+#~ msgid ""
+#~ "@FORGENAME@ allows users to define a list of their skills, to be chosen "
+#~ "from those present in the database. This list is the initial list of "
+#~ "skills that will enter the database."
+#~ msgstr ""
+#~ "@FORGENAME@ umožňuje uživatelům, aby si ze seznamu schopností definovali "
+#~ "své dovednosti. Seznam, který zde zadáte, bude uložen v databázi jako "
+#~ "výchozí seznam schopností."
+
+#~ msgid "Please enter a semicolon-separated list of skill names."
+#~ msgstr "Jednotlivé položky seznamu schopností oddělte středníky."

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-po/de.po
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-po/de.po	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-po/de.po	2012-04-05 10:25:42 UTC (rev 18232)
@@ -5,11 +5,12 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: @PACKAGENAME@ 4.8.2-1\n"
-"Report-Msgid-Bugs-To: gforge at packages.debian.org\n"
-"POT-Creation-Date: 2009-06-12 23:23+0200\n"
+"Report-Msgid-Bugs-To: fusionforge at packages.debian.org\n"
+"POT-Creation-Date: 2012-03-16 10:20+0100\n"
 "PO-Revision-Date: 2009-12-27 09:30+0100\n"
 "Last-Translator: Helge Kreutzmann <debian at helgefjell.de>\n"
 "Language-Team: German <debian-l10n-german at lists.debian.org>\n"
+"Language: de\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
@@ -62,39 +63,13 @@
 #. Type: string
 #. Description
 #: ../dsf-in/db-postgresql.templates.dsfh-in:8001
-msgid "@FORGENAME@ administrator login:"
-msgstr "@FORGENAME at -Administrator-Anmeldung:"
-
-#. Type: string
-#. Description
-#. Type: password
-#. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:8001
-#: ../dsf-in/db-postgresql.templates.dsfh-in:10001
-msgid ""
-"The @FORGENAME@ administrator account will have full privileges on the "
-"system. It will be used to approve the creation of new projects."
-msgstr ""
-"Das @FORGENAME at -Administrator-Konto wird alle Privilegien auf dem "
-"@FORGENAME at -System haben. Es wird benötigt, um die Erstellung von neuen "
-"Projekten zu bewilligen."
-
-#. Type: string
-#. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:8001
-msgid "Please choose the username for this account."
-msgstr "Bitte wählen Sie den Benutzernamen für dieses Konto."
-
-#. Type: string
-#. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:9001
 #: ../dsf-helper/host-variables.templates:2001
 msgid "IP address:"
 msgstr "IP-Adresse:"
 
 #. Type: string
 #. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:9001
+#: ../dsf-in/db-postgresql.templates.dsfh-in:8001
 #: ../dsf-helper/host-variables.templates:2001
 msgid ""
 "Please enter the IP address of the server that will host the @FORGENAME@ "
@@ -105,63 +80,54 @@
 
 #. Type: string
 #. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:9001
+#: ../dsf-in/db-postgresql.templates.dsfh-in:8001
 #: ../dsf-helper/host-variables.templates:2001
 msgid "This is needed for the configuration of Apache virtual hosting."
 msgstr "Diese wird für die virtualhosting-Konfiguration des Apache benötigt."
 
 #. Type: password
 #. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:10001
+#: ../dsf-in/db-postgresql.templates.dsfh-in:9001
 msgid "@FORGENAME@ administrator password:"
 msgstr "@FORGENAME at -Administrator-Passwort:"
 
 #. Type: password
 #. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:10001
-msgid "Please choose the password for this account."
+#: ../dsf-in/db-postgresql.templates.dsfh-in:9001
+#, fuzzy
+#| msgid ""
+#| "The @FORGENAME@ administrator account will have full privileges on the "
+#| "system. It will be used to approve the creation of new projects."
+msgid ""
+"The @FORGENAME@ administrator account will have full privileges on the "
+"forge. It will be used to approve the creation of new projects."
+msgstr ""
+"Das @FORGENAME at -Administrator-Konto wird alle Privilegien auf dem "
+"@FORGENAME at -System haben. Es wird benötigt, um die Erstellung von neuen "
+"Projekten zu bewilligen."
+
+#. Type: password
+#. Description
+#: ../dsf-in/db-postgresql.templates.dsfh-in:9001
+#, fuzzy
+#| msgid "Please choose the password for this account."
+msgid "Please choose the password for this forge account."
 msgstr "Bitte wählen Sie das Passwort für dieses Konto."
 
 #. Type: password
 #. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:11001
+#: ../dsf-in/db-postgresql.templates.dsfh-in:10001
 #: ../dsf-helper/dbpasswd-variables.templates:3001
 msgid "Password confirmation:"
 msgstr "Bestätigung des Passworts:"
 
 #. Type: password
 #. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:11001
+#: ../dsf-in/db-postgresql.templates.dsfh-in:10001
 #: ../dsf-helper/dbpasswd-variables.templates:3001
 msgid "Please re-type the password for confirmation."
 msgstr "Bitte geben Sie zur Bestätigung das Passwort erneut ein."
 
-#. Type: string
-#. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:12001
-msgid "Initial list of skills:"
-msgstr "Anfängliche Liste der Fähigkeiten:"
-
-#. Type: string
-#. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:12001
-msgid ""
-"@FORGENAME@ allows users to define a list of their skills, to be chosen from "
-"those present in the database. This list is the initial list of skills that "
-"will enter the database."
-msgstr ""
-"@FORGENAME@ erlaubt es den Benutzern, eine Liste Ihrer Fähigkeiten zu "
-"definieren, die aus allen in der Datenbank hinterlegten Fähigkeiten "
-"ausgewählt werden können. Diese Liste ist die anfängliche Liste von "
-"Fähigkeiten, die in die Datenbank eingegeben wird."
-
-#. Type: string
-#. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:12001
-msgid "Please enter a semicolon-separated list of skill names."
-msgstr ""
-"Bitte geben Sie die Namen der Fähigkeiten, getrennt durch Semikola »;«, ein."
-
 #. Type: boolean
 #. Description
 #. Translators: SCM here means "Source Control Management"
@@ -211,8 +177,8 @@
 #. Description
 #: ../dsf-in/mta-postfix.templates.dsfh-in:3001
 msgid ""
-"@FORGENAME@ sends and receives plenty of e-mail to and from the \"${noreply}"
-"\" address."
+"@FORGENAME@ sends and receives plenty of e-mail to and from the "
+"\"${noreply}\" address."
 msgstr ""
 "@FORGENAME@ sendet und empfängt viele E-Mails von und auf der »${noreply}«-"
 "Adresse."
@@ -606,5 +572,29 @@
 "Bitte wählen Sie das Standard-Thema für Webseiten. Dies muss ein gültiger "
 "Namen sein."
 
+#~ msgid "@FORGENAME@ administrator login:"
+#~ msgstr "@FORGENAME at -Administrator-Anmeldung:"
+
+#~ msgid "Please choose the username for this account."
+#~ msgstr "Bitte wählen Sie den Benutzernamen für dieses Konto."
+
+#~ msgid "Initial list of skills:"
+#~ msgstr "Anfängliche Liste der Fähigkeiten:"
+
+#~ msgid ""
+#~ "@FORGENAME@ allows users to define a list of their skills, to be chosen "
+#~ "from those present in the database. This list is the initial list of "
+#~ "skills that will enter the database."
+#~ msgstr ""
+#~ "@FORGENAME@ erlaubt es den Benutzern, eine Liste Ihrer Fähigkeiten zu "
+#~ "definieren, die aus allen in der Datenbank hinterlegten Fähigkeiten "
+#~ "ausgewählt werden können. Diese Liste ist die anfängliche Liste von "
+#~ "Fähigkeiten, die in die Datenbank eingegeben wird."
+
+#~ msgid "Please enter a semicolon-separated list of skill names."
+#~ msgstr ""
+#~ "Bitte geben Sie die Namen der Fähigkeiten, getrennt durch Semikola »;«, "
+#~ "ein."
+
 #~ msgid "admin"
 #~ msgstr "Administrator"

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-po/es.po
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-po/es.po	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-po/es.po	2012-04-05 10:25:42 UTC (rev 18232)
@@ -30,11 +30,12 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: @PACKAGE@ 4.7~rc2-7\n"
-"Report-Msgid-Bugs-To: gforge at packages.debian.org\n"
-"POT-Creation-Date: 2009-06-12 23:23+0200\n"
+"Report-Msgid-Bugs-To: fusionforge at packages.debian.org\n"
+"POT-Creation-Date: 2012-03-16 10:20+0100\n"
 "PO-Revision-Date: 2009-04-15 14:37+0200\n"
 "Last-Translator: Francisco Javier Cuadrado <fcocuadrado at gmail.com>\n"
 "Language-Team: Debian l10n Spanish <debian-l10n-spanish at lists.debian.org>\n"
+"Language: \n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
@@ -94,44 +95,13 @@
 #. Type: string
 #. Description
 #: ../dsf-in/db-postgresql.templates.dsfh-in:8001
-#, fuzzy
-#| msgid "@FORGENAME@ administrator login:"
-msgid "@FORGENAME@ administrator login:"
-msgstr "Usuario del administrador de @FORGENAME@:"
-
-#. Type: string
-#. Description
-#. Type: password
-#. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:8001
-#: ../dsf-in/db-postgresql.templates.dsfh-in:10001
-#, fuzzy
-#| msgid ""
-#| "The @FORGENAME@ administrator account will have full privileges on the "
-#| "system. It will be used to approve the creation of new projects."
-msgid ""
-"The @FORGENAME@ administrator account will have full privileges on the "
-"system. It will be used to approve the creation of new projects."
-msgstr ""
-"La cuenta de administrador de @FORGENAME@ tendrá privilegios completos sobre "
-"el sistema. Se debe utilizar para aprobar la creación de nuevos proyectos."
-
-#. Type: string
-#. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:8001
-msgid "Please choose the username for this account."
-msgstr "Escriba el nombre de usuario para esta cuenta."
-
-#. Type: string
-#. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:9001
 #: ../dsf-helper/host-variables.templates:2001
 msgid "IP address:"
 msgstr "Dirección IP:"
 
 #. Type: string
 #. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:9001
+#: ../dsf-in/db-postgresql.templates.dsfh-in:8001
 #: ../dsf-helper/host-variables.templates:2001
 #, fuzzy
 #| msgid ""
@@ -146,14 +116,14 @@
 
 #. Type: string
 #. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:9001
+#: ../dsf-in/db-postgresql.templates.dsfh-in:8001
 #: ../dsf-helper/host-variables.templates:2001
 msgid "This is needed for the configuration of Apache virtual hosting."
 msgstr "Es necesario para la configuración del servidor virtual de Apache."
 
 #. Type: password
 #. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:10001
+#: ../dsf-in/db-postgresql.templates.dsfh-in:9001
 #, fuzzy
 #| msgid "@FORGENAME@ administrator password:"
 msgid "@FORGENAME@ administrator password:"
@@ -161,54 +131,40 @@
 
 #. Type: password
 #. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:10001
-msgid "Please choose the password for this account."
+#: ../dsf-in/db-postgresql.templates.dsfh-in:9001
+#, fuzzy
+#| msgid ""
+#| "The @FORGENAME@ administrator account will have full privileges on the "
+#| "system. It will be used to approve the creation of new projects."
+msgid ""
+"The @FORGENAME@ administrator account will have full privileges on the "
+"forge. It will be used to approve the creation of new projects."
+msgstr ""
+"La cuenta de administrador de @FORGENAME@ tendrá privilegios completos sobre "
+"el sistema. Se debe utilizar para aprobar la creación de nuevos proyectos."
+
+#. Type: password
+#. Description
+#: ../dsf-in/db-postgresql.templates.dsfh-in:9001
+#, fuzzy
+#| msgid "Please choose the password for this account."
+msgid "Please choose the password for this forge account."
 msgstr "Escriba la contraseña para esta cuenta."
 
 #. Type: password
 #. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:11001
+#: ../dsf-in/db-postgresql.templates.dsfh-in:10001
 #: ../dsf-helper/dbpasswd-variables.templates:3001
 msgid "Password confirmation:"
 msgstr "Confirmación de la contraseña:"
 
 #. Type: password
 #. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:11001
+#: ../dsf-in/db-postgresql.templates.dsfh-in:10001
 #: ../dsf-helper/dbpasswd-variables.templates:3001
 msgid "Please re-type the password for confirmation."
 msgstr "Escriba nuevamente la contraseña para su confirmación."
 
-#. Type: string
-#. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:12001
-msgid "Initial list of skills:"
-msgstr "Lista inicial de habilidades:"
-
-#. Type: string
-#. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:12001
-#, fuzzy
-#| msgid ""
-#| "@FORGENAME@ allows users to define a list of their skills, to be chosen "
-#| "from those present in the database. This list is the initial list of "
-#| "skills that will enter the database."
-msgid ""
-"@FORGENAME@ allows users to define a list of their skills, to be chosen from "
-"those present in the database. This list is the initial list of skills that "
-"will enter the database."
-msgstr ""
-"@FORGENAME@ permite que los usuarios definan una lista de habilidades, a "
-"elegir de las presentes en la base de datos. Esta lista es la lista inicial "
-"de habilidades que se introducirá en la base de datos."
-
-#. Type: string
-#. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:12001
-msgid "Please enter a semicolon-separated list of skill names."
-msgstr ""
-"Introduzca una lista de nombres de habilidades, separados por punto y coma."
-
 #. Type: boolean
 #. Description
 #. Translators: SCM here means "Source Control Management"
@@ -265,8 +221,8 @@
 #| "@FORGENAME@ sends and receives plenty of e-mail to and from the "
 #| "\"${noreply}\" address."
 msgid ""
-"@FORGENAME@ sends and receives plenty of e-mail to and from the \"${noreply}"
-"\" address."
+"@FORGENAME@ sends and receives plenty of e-mail to and from the "
+"\"${noreply}\" address."
 msgstr ""
 "@FORGENAME@ envía y recibe muchos correos electrónicos hacia y desde la "
 "dirección «${noreply}»."
@@ -707,3 +663,33 @@
 "Please choose the default theme for web pages. This must be a valid name."
 msgstr ""
 "Elija el tema predeterminado para las páginas web. Debe ser un nombre válido."
+
+#, fuzzy
+#~| msgid "@FORGENAME@ administrator login:"
+#~ msgid "@FORGENAME@ administrator login:"
+#~ msgstr "Usuario del administrador de @FORGENAME@:"
+
+#~ msgid "Please choose the username for this account."
+#~ msgstr "Escriba el nombre de usuario para esta cuenta."
+
+#~ msgid "Initial list of skills:"
+#~ msgstr "Lista inicial de habilidades:"
+
+#, fuzzy
+#~| msgid ""
+#~| "@FORGENAME@ allows users to define a list of their skills, to be chosen "
+#~| "from those present in the database. This list is the initial list of "
+#~| "skills that will enter the database."
+#~ msgid ""
+#~ "@FORGENAME@ allows users to define a list of their skills, to be chosen "
+#~ "from those present in the database. This list is the initial list of "
+#~ "skills that will enter the database."
+#~ msgstr ""
+#~ "@FORGENAME@ permite que los usuarios definan una lista de habilidades, a "
+#~ "elegir de las presentes en la base de datos. Esta lista es la lista "
+#~ "inicial de habilidades que se introducirá en la base de datos."
+
+#~ msgid "Please enter a semicolon-separated list of skill names."
+#~ msgstr ""
+#~ "Introduzca una lista de nombres de habilidades, separados por punto y "
+#~ "coma."

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-po/fi.po
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-po/fi.po	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-po/fi.po	2012-04-05 10:25:42 UTC (rev 18232)
@@ -1,11 +1,12 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: @PACKAGE@\n"
-"Report-Msgid-Bugs-To: gforge at packages.debian.org\n"
-"POT-Creation-Date: 2009-06-12 23:23+0200\n"
+"Report-Msgid-Bugs-To: fusionforge at packages.debian.org\n"
+"POT-Creation-Date: 2012-03-16 10:20+0100\n"
 "PO-Revision-Date: 2008-03-24 17:41+0200\n"
 "Last-Translator: Esko Arajärvi <edu at iki.fi>\n"
 "Language-Team: Finnish <debian-l10n-finnish at lists.debian.org>\n"
+"Language: fi\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
@@ -65,44 +66,13 @@
 #. Type: string
 #. Description
 #: ../dsf-in/db-postgresql.templates.dsfh-in:8001
-#, fuzzy
-#| msgid "@FORGENAME@ administrator login:"
-msgid "@FORGENAME@ administrator login:"
-msgstr "@FORGENAME at n ylläpitotunnus:"
-
-#. Type: string
-#. Description
-#. Type: password
-#. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:8001
-#: ../dsf-in/db-postgresql.templates.dsfh-in:10001
-#, fuzzy
-#| msgid ""
-#| "The @FORGENAME@ administrator account will have full privileges on the "
-#| "system. It will be used to approve the creation of new projects."
-msgid ""
-"The @FORGENAME@ administrator account will have full privileges on the "
-"system. It will be used to approve the creation of new projects."
-msgstr ""
-"@FORGENAME at n ylläpitotunnuksella tulee olemaan täydet oikeudet "
-"järjestelmään. Sitä käytetään hyväksyttäessä uusien projektien luominen."
-
-#. Type: string
-#. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:8001
-msgid "Please choose the username for this account."
-msgstr "Valitse tämän tunnuksen nimi."
-
-#. Type: string
-#. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:9001
 #: ../dsf-helper/host-variables.templates:2001
 msgid "IP address:"
 msgstr "IP-osoite:"
 
 #. Type: string
 #. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:9001
+#: ../dsf-in/db-postgresql.templates.dsfh-in:8001
 #: ../dsf-helper/host-variables.templates:2001
 #, fuzzy
 #| msgid ""
@@ -115,14 +85,14 @@
 
 #. Type: string
 #. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:9001
+#: ../dsf-in/db-postgresql.templates.dsfh-in:8001
 #: ../dsf-helper/host-variables.templates:2001
 msgid "This is needed for the configuration of Apache virtual hosting."
 msgstr "Tätä tarvitaan Apachen näennäiskoneiden asetukseen."
 
 #. Type: password
 #. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:10001
+#: ../dsf-in/db-postgresql.templates.dsfh-in:9001
 #, fuzzy
 #| msgid "@FORGENAME@ administrator password:"
 msgid "@FORGENAME@ administrator password:"
@@ -130,53 +100,40 @@
 
 #. Type: password
 #. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:10001
-msgid "Please choose the password for this account."
+#: ../dsf-in/db-postgresql.templates.dsfh-in:9001
+#, fuzzy
+#| msgid ""
+#| "The @FORGENAME@ administrator account will have full privileges on the "
+#| "system. It will be used to approve the creation of new projects."
+msgid ""
+"The @FORGENAME@ administrator account will have full privileges on the "
+"forge. It will be used to approve the creation of new projects."
+msgstr ""
+"@FORGENAME at n ylläpitotunnuksella tulee olemaan täydet oikeudet "
+"järjestelmään. Sitä käytetään hyväksyttäessä uusien projektien luominen."
+
+#. Type: password
+#. Description
+#: ../dsf-in/db-postgresql.templates.dsfh-in:9001
+#, fuzzy
+#| msgid "Please choose the password for this account."
+msgid "Please choose the password for this forge account."
 msgstr "Valitse tunnuksen salasana."
 
 #. Type: password
 #. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:11001
+#: ../dsf-in/db-postgresql.templates.dsfh-in:10001
 #: ../dsf-helper/dbpasswd-variables.templates:3001
 msgid "Password confirmation:"
 msgstr "Salasanan vahvistus:"
 
 #. Type: password
 #. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:11001
+#: ../dsf-in/db-postgresql.templates.dsfh-in:10001
 #: ../dsf-helper/dbpasswd-variables.templates:3001
 msgid "Please re-type the password for confirmation."
 msgstr "Anna salasana uudestaan vahvistukseksi."
 
-#. Type: string
-#. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:12001
-msgid "Initial list of skills:"
-msgstr "Alkuperäinen lista taidoista:"
-
-#. Type: string
-#. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:12001
-#, fuzzy
-#| msgid ""
-#| "@FORGENAME@ allows users to define a list of their skills, to be chosen "
-#| "from those present in the database. This list is the initial list of "
-#| "skills that will enter the database."
-msgid ""
-"@FORGENAME@ allows users to define a list of their skills, to be chosen from "
-"those present in the database. This list is the initial list of skills that "
-"will enter the database."
-msgstr ""
-"@FORGENAME@ antaa käyttäjien määrittää listan taidoistaan. Ne valitaan "
-"tietokannassa tällä hetkellä olevista. Tämä alkuperäinen taitolista "
-"tallennetaan tietokantaan."
-
-#. Type: string
-#. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:12001
-msgid "Please enter a semicolon-separated list of skill names."
-msgstr "Anna puolipisteillä erotettu lista taitojen nimistä."
-
 #. Type: boolean
 #. Description
 #. Translators: SCM here means "Source Control Management"
@@ -234,8 +191,8 @@
 #| "@FORGENAME@ sends and receives plenty of e-mail to and from the "
 #| "\"${noreply}\" address."
 msgid ""
-"@FORGENAME@ sends and receives plenty of e-mail to and from the \"${noreply}"
-"\" address."
+"@FORGENAME@ sends and receives plenty of e-mail to and from the "
+"\"${noreply}\" address."
 msgstr ""
 "@FORGENAME@ lähettää ja vastaanottaa paljon sähköpostia osoitteen "
 "”${noreply}” kautta."
@@ -667,5 +624,33 @@
 "Please choose the default theme for web pages. This must be a valid name."
 msgstr "Valitse verkkosivujen oletusteema. Tämän tulee olla käypä nimi."
 
+#, fuzzy
+#~| msgid "@FORGENAME@ administrator login:"
+#~ msgid "@FORGENAME@ administrator login:"
+#~ msgstr "@FORGENAME at n ylläpitotunnus:"
+
+#~ msgid "Please choose the username for this account."
+#~ msgstr "Valitse tämän tunnuksen nimi."
+
+#~ msgid "Initial list of skills:"
+#~ msgstr "Alkuperäinen lista taidoista:"
+
+#, fuzzy
+#~| msgid ""
+#~| "@FORGENAME@ allows users to define a list of their skills, to be chosen "
+#~| "from those present in the database. This list is the initial list of "
+#~| "skills that will enter the database."
+#~ msgid ""
+#~ "@FORGENAME@ allows users to define a list of their skills, to be chosen "
+#~ "from those present in the database. This list is the initial list of "
+#~ "skills that will enter the database."
+#~ msgstr ""
+#~ "@FORGENAME@ antaa käyttäjien määrittää listan taidoistaan. Ne valitaan "
+#~ "tietokannassa tällä hetkellä olevista. Tämä alkuperäinen taitolista "
+#~ "tallennetaan tietokantaan."
+
+#~ msgid "Please enter a semicolon-separated list of skill names."
+#~ msgstr "Anna puolipisteillä erotettu lista taitojen nimistä."
+
 #~ msgid "admin"
 #~ msgstr "admin"

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-po/fr.po
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-po/fr.po	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-po/fr.po	2012-04-05 10:25:42 UTC (rev 18232)
@@ -6,11 +6,12 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: @PACKAGENAME@\n"
-"Report-Msgid-Bugs-To: gforge at packages.debian.org\n"
-"POT-Creation-Date: 2009-06-12 23:23+0200\n"
+"Report-Msgid-Bugs-To: fusionforge at packages.debian.org\n"
+"POT-Creation-Date: 2012-03-16 10:20+0100\n"
 "PO-Revision-Date: 2009-12-29 13:36+0100\n"
 "Last-Translator: Christian Perrier <bubulle at debian.org>\n"
 "Language-Team: French <debian-l10n-french at lists.debian.org>\n"
+"Language: fr\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
@@ -62,38 +63,13 @@
 #. Type: string
 #. Description
 #: ../dsf-in/db-postgresql.templates.dsfh-in:8001
-msgid "@FORGENAME@ administrator login:"
-msgstr "Identifiant de l'administrateur de @FORGENAME@ :"
-
-#. Type: string
-#. Description
-#. Type: password
-#. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:8001
-#: ../dsf-in/db-postgresql.templates.dsfh-in:10001
-msgid ""
-"The @FORGENAME@ administrator account will have full privileges on the "
-"system. It will be used to approve the creation of new projects."
-msgstr ""
-"Le compte d'administration de @FORGENAME@ aura tous les privilèges sur le "
-"système @FORGENAME at . Il servira à approuver la création de projets."
-
-#. Type: string
-#. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:8001
-msgid "Please choose the username for this account."
-msgstr "Veuillez choisir l'identifiant à utiliser pour ce compte."
-
-#. Type: string
-#. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:9001
 #: ../dsf-helper/host-variables.templates:2001
 msgid "IP address:"
 msgstr "Adresse IP :"
 
 #. Type: string
 #. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:9001
+#: ../dsf-in/db-postgresql.templates.dsfh-in:8001
 #: ../dsf-helper/host-variables.templates:2001
 msgid ""
 "Please enter the IP address of the server that will host the @FORGENAME@ "
@@ -102,7 +78,7 @@
 
 #. Type: string
 #. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:9001
+#: ../dsf-in/db-postgresql.templates.dsfh-in:8001
 #: ../dsf-helper/host-variables.templates:2001
 msgid "This is needed for the configuration of Apache virtual hosting."
 msgstr ""
@@ -111,55 +87,46 @@
 
 #. Type: password
 #. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:10001
+#: ../dsf-in/db-postgresql.templates.dsfh-in:9001
 msgid "@FORGENAME@ administrator password:"
 msgstr "Mot de passe de l'administrateur de @FORGENAME@ :"
 
 #. Type: password
 #. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:10001
-msgid "Please choose the password for this account."
+#: ../dsf-in/db-postgresql.templates.dsfh-in:9001
+#, fuzzy
+#| msgid ""
+#| "The @FORGENAME@ administrator account will have full privileges on the "
+#| "system. It will be used to approve the creation of new projects."
+msgid ""
+"The @FORGENAME@ administrator account will have full privileges on the "
+"forge. It will be used to approve the creation of new projects."
+msgstr ""
+"Le compte d'administration de @FORGENAME@ aura tous les privilèges sur le "
+"système @FORGENAME at . Il servira à approuver la création de projets."
+
+#. Type: password
+#. Description
+#: ../dsf-in/db-postgresql.templates.dsfh-in:9001
+#, fuzzy
+#| msgid "Please choose the password for this account."
+msgid "Please choose the password for this forge account."
 msgstr "Veuillez choisir le mot de passe de ce compte."
 
 #. Type: password
 #. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:11001
+#: ../dsf-in/db-postgresql.templates.dsfh-in:10001
 #: ../dsf-helper/dbpasswd-variables.templates:3001
 msgid "Password confirmation:"
 msgstr "Confirmation du mot de passe :"
 
 #. Type: password
 #. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:11001
+#: ../dsf-in/db-postgresql.templates.dsfh-in:10001
 #: ../dsf-helper/dbpasswd-variables.templates:3001
 msgid "Please re-type the password for confirmation."
 msgstr "Veuillez entrer à nouveau le mot de passe, pour confirmation."
 
-#. Type: string
-#. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:12001
-msgid "Initial list of skills:"
-msgstr "Liste initiale de domaines de compétences :"
-
-#. Type: string
-#. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:12001
-msgid ""
-"@FORGENAME@ allows users to define a list of their skills, to be chosen from "
-"those present in the database. This list is the initial list of skills that "
-"will enter the database."
-msgstr ""
-"Les utilisateurs de @FORGENAME@ peuvent afficher leurs niveaux de compétence "
-"dans différents domaines. Cette liste est la liste initiale de ces domaines. "
-
-#. Type: string
-#. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:12001
-msgid "Please enter a semicolon-separated list of skill names."
-msgstr ""
-"Veuillez indiquer les noms de ces domaines de compétence, séparés par des "
-"points-virgules."
-
 #. Type: boolean
 #. Description
 #. Translators: SCM here means "Source Control Management"
@@ -211,8 +178,8 @@
 #. Description
 #: ../dsf-in/mta-postfix.templates.dsfh-in:3001
 msgid ""
-"@FORGENAME@ sends and receives plenty of e-mail to and from the \"${noreply}"
-"\" address."
+"@FORGENAME@ sends and receives plenty of e-mail to and from the "
+"\"${noreply}\" address."
 msgstr ""
 "@FORGENAME@ envoie fréquemment des courriers de et vers l'adresse "
 "« ${noreply} »."
@@ -604,5 +571,28 @@
 "Veuillez choisir le thème par défaut des pages web. Veillez à indiquer un "
 "nom valable."
 
+#~ msgid "@FORGENAME@ administrator login:"
+#~ msgstr "Identifiant de l'administrateur de @FORGENAME@ :"
+
+#~ msgid "Please choose the username for this account."
+#~ msgstr "Veuillez choisir l'identifiant à utiliser pour ce compte."
+
+#~ msgid "Initial list of skills:"
+#~ msgstr "Liste initiale de domaines de compétences :"
+
+#~ msgid ""
+#~ "@FORGENAME@ allows users to define a list of their skills, to be chosen "
+#~ "from those present in the database. This list is the initial list of "
+#~ "skills that will enter the database."
+#~ msgstr ""
+#~ "Les utilisateurs de @FORGENAME@ peuvent afficher leurs niveaux de "
+#~ "compétence dans différents domaines. Cette liste est la liste initiale de "
+#~ "ces domaines. "
+
+#~ msgid "Please enter a semicolon-separated list of skill names."
+#~ msgstr ""
+#~ "Veuillez indiquer les noms de ces domaines de compétence, séparés par des "
+#~ "points-virgules."
+
 #~ msgid "admin"
 #~ msgstr "admin"

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-po/gl.po
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-po/gl.po	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-po/gl.po	2012-04-05 10:25:42 UTC (rev 18232)
@@ -5,11 +5,12 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: @PACKAGE@\n"
-"Report-Msgid-Bugs-To: gforge at packages.debian.org\n"
-"POT-Creation-Date: 2009-06-12 23:23+0200\n"
+"Report-Msgid-Bugs-To: fusionforge at packages.debian.org\n"
+"POT-Creation-Date: 2012-03-16 10:20+0100\n"
 "PO-Revision-Date: 2008-03-25 03:47+0000\n"
 "Last-Translator: Jacobo Tarrio <jtarrio at debian.org>\n"
 "Language-Team: Galician <proxecto at trasno.net>\n"
+"Language: gl\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
@@ -68,44 +69,13 @@
 #. Type: string
 #. Description
 #: ../dsf-in/db-postgresql.templates.dsfh-in:8001
-#, fuzzy
-#| msgid "@FORGENAME@ administrator login:"
-msgid "@FORGENAME@ administrator login:"
-msgstr "Nome do usuario administrador de @FORGENAME@:"
-
-#. Type: string
-#. Description
-#. Type: password
-#. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:8001
-#: ../dsf-in/db-postgresql.templates.dsfh-in:10001
-#, fuzzy
-#| msgid ""
-#| "The @FORGENAME@ administrator account will have full privileges on the "
-#| "system. It will be used to approve the creation of new projects."
-msgid ""
-"The @FORGENAME@ administrator account will have full privileges on the "
-"system. It will be used to approve the creation of new projects."
-msgstr ""
-"A conta de administrador de @FORGENAME@ ha ter tódolos privilexios no "
-"sistema. Hase empregar para aprobar a creación de novos proxectos."
-
-#. Type: string
-#. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:8001
-msgid "Please choose the username for this account."
-msgstr "Escolla o nome de usuario para esta conta."
-
-#. Type: string
-#. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:9001
 #: ../dsf-helper/host-variables.templates:2001
 msgid "IP address:"
 msgstr "Enderezo IP:"
 
 #. Type: string
 #. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:9001
+#: ../dsf-in/db-postgresql.templates.dsfh-in:8001
 #: ../dsf-helper/host-variables.templates:2001
 #, fuzzy
 #| msgid ""
@@ -120,14 +90,14 @@
 
 #. Type: string
 #. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:9001
+#: ../dsf-in/db-postgresql.templates.dsfh-in:8001
 #: ../dsf-helper/host-variables.templates:2001
 msgid "This is needed for the configuration of Apache virtual hosting."
 msgstr "Isto é preciso para configurar a hospedaxe virtual de Apache."
 
 #. Type: password
 #. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:10001
+#: ../dsf-in/db-postgresql.templates.dsfh-in:9001
 #, fuzzy
 #| msgid "@FORGENAME@ administrator password:"
 msgid "@FORGENAME@ administrator password:"
@@ -135,55 +105,40 @@
 
 #. Type: password
 #. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:10001
-msgid "Please choose the password for this account."
+#: ../dsf-in/db-postgresql.templates.dsfh-in:9001
+#, fuzzy
+#| msgid ""
+#| "The @FORGENAME@ administrator account will have full privileges on the "
+#| "system. It will be used to approve the creation of new projects."
+msgid ""
+"The @FORGENAME@ administrator account will have full privileges on the "
+"forge. It will be used to approve the creation of new projects."
+msgstr ""
+"A conta de administrador de @FORGENAME@ ha ter tódolos privilexios no "
+"sistema. Hase empregar para aprobar a creación de novos proxectos."
+
+#. Type: password
+#. Description
+#: ../dsf-in/db-postgresql.templates.dsfh-in:9001
+#, fuzzy
+#| msgid "Please choose the password for this account."
+msgid "Please choose the password for this forge account."
 msgstr "Escolla un contrasinal para esta conta."
 
 #. Type: password
 #. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:11001
+#: ../dsf-in/db-postgresql.templates.dsfh-in:10001
 #: ../dsf-helper/dbpasswd-variables.templates:3001
 msgid "Password confirmation:"
 msgstr "Confirmación do contrasinal:"
 
 #. Type: password
 #. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:11001
+#: ../dsf-in/db-postgresql.templates.dsfh-in:10001
 #: ../dsf-helper/dbpasswd-variables.templates:3001
 msgid "Please re-type the password for confirmation."
 msgstr "Volva introducir o contrasinal para confirmalo."
 
-#. Type: string
-#. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:12001
-msgid "Initial list of skills:"
-msgstr "Lista inicial de coñecementos:"
-
-#. Type: string
-#. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:12001
-#, fuzzy
-#| msgid ""
-#| "@FORGENAME@ allows users to define a list of their skills, to be chosen "
-#| "from those present in the database. This list is the initial list of "
-#| "skills that will enter the database."
-msgid ""
-"@FORGENAME@ allows users to define a list of their skills, to be chosen from "
-"those present in the database. This list is the initial list of skills that "
-"will enter the database."
-msgstr ""
-"@FORGENAME@ permítelle aos usuarios facer unha lista cos seus coñecementos, "
-"que poden escoller entre os que figuran na base de datos. Esta lista é a "
-"lista inicial de coñecementos que han entrar na base de datos."
-
-#. Type: string
-#. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:12001
-msgid "Please enter a semicolon-separated list of skill names."
-msgstr ""
-"Introduza unha lista de nomes de coñecementos separados por signos de punto "
-"e coma."
-
 #. Type: boolean
 #. Description
 #. Translators: SCM here means "Source Control Management"
@@ -238,11 +193,11 @@
 #| "@FORGENAME@ sends and receives plenty of e-mail to and from the "
 #| "\"${noreply}\" address."
 msgid ""
-"@FORGENAME@ sends and receives plenty of e-mail to and from the \"${noreply}"
-"\" address."
+"@FORGENAME@ sends and receives plenty of e-mail to and from the "
+"\"${noreply}\" address."
 msgstr ""
-"@FORGENAME@ envía e recibe moito email desde e para o enderezo \"${noreply}"
-"\"."
+"@FORGENAME@ envía e recibe moito email desde e para o enderezo "
+"\"${noreply}\"."
 
 #. Type: boolean
 #. Description
@@ -679,5 +634,36 @@
 msgstr ""
 "Escolla o tema por defecto para as páxinas web. Debe ser un nome válido."
 
+#, fuzzy
+#~| msgid "@FORGENAME@ administrator login:"
+#~ msgid "@FORGENAME@ administrator login:"
+#~ msgstr "Nome do usuario administrador de @FORGENAME@:"
+
+#~ msgid "Please choose the username for this account."
+#~ msgstr "Escolla o nome de usuario para esta conta."
+
+#~ msgid "Initial list of skills:"
+#~ msgstr "Lista inicial de coñecementos:"
+
+#, fuzzy
+#~| msgid ""
+#~| "@FORGENAME@ allows users to define a list of their skills, to be chosen "
+#~| "from those present in the database. This list is the initial list of "
+#~| "skills that will enter the database."
+#~ msgid ""
+#~ "@FORGENAME@ allows users to define a list of their skills, to be chosen "
+#~ "from those present in the database. This list is the initial list of "
+#~ "skills that will enter the database."
+#~ msgstr ""
+#~ "@FORGENAME@ permítelle aos usuarios facer unha lista cos seus "
+#~ "coñecementos, que poden escoller entre os que figuran na base de datos. "
+#~ "Esta lista é a lista inicial de coñecementos que han entrar na base de "
+#~ "datos."
+
+#~ msgid "Please enter a semicolon-separated list of skill names."
+#~ msgstr ""
+#~ "Introduza unha lista de nomes de coñecementos separados por signos de "
+#~ "punto e coma."
+
 #~ msgid "admin"
 #~ msgstr "admin"

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-po/nl.po
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-po/nl.po	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-po/nl.po	2012-04-05 10:25:42 UTC (rev 18232)
@@ -14,11 +14,12 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: @PACKAGE@\n"
-"Report-Msgid-Bugs-To: gforge at packages.debian.org\n"
-"POT-Creation-Date: 2009-06-12 23:23+0200\n"
+"Report-Msgid-Bugs-To: fusionforge at packages.debian.org\n"
+"POT-Creation-Date: 2012-03-16 10:20+0100\n"
 "PO-Revision-Date: 2008-03-28 14:19+0100\n"
 "Last-Translator: Bart Cornelis <cobaco at skolelinux.no>\n"
 "Language-Team: debian-l10n-dutch <debian-l10n-dutch at lists.debian.org>\n"
+"Language: \n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=utf-8\n"
 "Content-Transfer-Encoding: 8bit\n"
@@ -90,41 +91,6 @@
 #. Type: string
 #. Description
 #: ../dsf-in/db-postgresql.templates.dsfh-in:8001
-#, fuzzy
-#| msgid "@FORGENAME@ administrator login:"
-msgid "@FORGENAME@ administrator login:"
-msgstr "Gebruikersnaam @FORGENAME at -beheerder:"
-
-#  Type: string
-#  Description
-#. Type: string
-#. Description
-#. Type: password
-#. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:8001
-#: ../dsf-in/db-postgresql.templates.dsfh-in:10001
-#, fuzzy
-#| msgid ""
-#| "The @FORGENAME@ administrator account will have full privileges on the "
-#| "system. It will be used to approve the creation of new projects."
-msgid ""
-"The @FORGENAME@ administrator account will have full privileges on the "
-"system. It will be used to approve the creation of new projects."
-msgstr ""
-"De @FORGENAME at -beheerdersaccount krijgt volledige rechten binnen @FORGENAME at -"
-"systeem, en wordt gebruikt om nieuwe projecten goed te keuren."
-
-#. Type: string
-#. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:8001
-msgid "Please choose the username for this account."
-msgstr "Wat is de gebruikersnaam voor deze account?"
-
-#  Type: string
-#  Description
-#. Type: string
-#. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:9001
 #: ../dsf-helper/host-variables.templates:2001
 msgid "IP address:"
 msgstr "IP-adres:"
@@ -133,7 +99,7 @@
 #  Description
 #. Type: string
 #. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:9001
+#: ../dsf-in/db-postgresql.templates.dsfh-in:8001
 #: ../dsf-helper/host-variables.templates:2001
 #, fuzzy
 #| msgid ""
@@ -148,7 +114,7 @@
 
 #. Type: string
 #. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:9001
+#: ../dsf-in/db-postgresql.templates.dsfh-in:8001
 #: ../dsf-helper/host-variables.templates:2001
 msgid "This is needed for the configuration of Apache virtual hosting."
 msgstr "Dit is nodig voor om de 'virtual hosting' van Apache in te stellen."
@@ -157,25 +123,43 @@
 #  Description
 #. Type: password
 #. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:10001
+#: ../dsf-in/db-postgresql.templates.dsfh-in:9001
 #, fuzzy
 #| msgid "@FORGENAME@ administrator password:"
 msgid "@FORGENAME@ administrator password:"
 msgstr "Wachtwoord van de @FORGENAME at -beheerder:"
 
+#  Type: string
+#  Description
+#. Type: password
+#. Description
+#: ../dsf-in/db-postgresql.templates.dsfh-in:9001
+#, fuzzy
+#| msgid ""
+#| "The @FORGENAME@ administrator account will have full privileges on the "
+#| "system. It will be used to approve the creation of new projects."
+msgid ""
+"The @FORGENAME@ administrator account will have full privileges on the "
+"forge. It will be used to approve the creation of new projects."
+msgstr ""
+"De @FORGENAME at -beheerdersaccount krijgt volledige rechten binnen @FORGENAME at -"
+"systeem, en wordt gebruikt om nieuwe projecten goed te keuren."
+
 #  Type: password
 #  Description
 #. Type: password
 #. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:10001
-msgid "Please choose the password for this account."
+#: ../dsf-in/db-postgresql.templates.dsfh-in:9001
+#, fuzzy
+#| msgid "Please choose the password for this account."
+msgid "Please choose the password for this forge account."
 msgstr "Wat is het wachtwoord van deze account?"
 
 #  Type: password
 #  Description
 #. Type: password
 #. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:11001
+#: ../dsf-in/db-postgresql.templates.dsfh-in:10001
 #: ../dsf-helper/dbpasswd-variables.templates:3001
 msgid "Password confirmation:"
 msgstr "Wachtwoordbevestiging:"
@@ -184,46 +168,11 @@
 #  Description
 #. Type: password
 #. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:11001
+#: ../dsf-in/db-postgresql.templates.dsfh-in:10001
 #: ../dsf-helper/dbpasswd-variables.templates:3001
 msgid "Please re-type the password for confirmation."
 msgstr "Ter bevestiging dient het wachtwoord nogmaals ingevoerd te worden."
 
-#  Type: string
-#  Description
-#. Type: string
-#. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:12001
-msgid "Initial list of skills:"
-msgstr "Initiële lijst van vaardigheden:"
-
-#  Type: string
-#  Description
-#. Type: string
-#. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:12001
-#, fuzzy
-#| msgid ""
-#| "@FORGENAME@ allows users to define a list of their skills, to be chosen "
-#| "from those present in the database. This list is the initial list of "
-#| "skills that will enter the database."
-msgid ""
-"@FORGENAME@ allows users to define a list of their skills, to be chosen from "
-"those present in the database. This list is the initial list of skills that "
-"will enter the database."
-msgstr ""
-"@FORGENAME@ geeft gebruikers de mogelijkheid om een lijst met hun "
-"vaardigheden op te geven, gekozen uit deze aanwezig in de database. Dit is "
-"de de initiële lijst van vaardigheden voor de database."
-
-#. Type: string
-#. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:12001
-msgid "Please enter a semicolon-separated list of skill names."
-msgstr ""
-"Gelieve een met puntkomma's gescheiden lijst van vaardigheidsnamen in te "
-"voeren."
-
 #  Type: boolean
 #  Description
 #. Type: boolean
@@ -290,8 +239,8 @@
 #| "@FORGENAME@ sends and receives plenty of e-mail to and from the "
 #| "\"${noreply}\" address."
 msgid ""
-"@FORGENAME@ sends and receives plenty of e-mail to and from the \"${noreply}"
-"\" address."
+"@FORGENAME@ sends and receives plenty of e-mail to and from the "
+"\"${noreply}\" address."
 msgstr ""
 "@FORGENAME@ verstuurt en ontvangt een heleboel e-mails van en naar  het "
 "adres '${noreply}'."
@@ -828,3 +777,39 @@
 msgstr ""
 "Wat wordt het standaardthema voor webpagina's? Dit dient een geldige naam te "
 "zijn."
+
+#  Type: string
+#  Description
+#, fuzzy
+#~| msgid "@FORGENAME@ administrator login:"
+#~ msgid "@FORGENAME@ administrator login:"
+#~ msgstr "Gebruikersnaam @FORGENAME at -beheerder:"
+
+#~ msgid "Please choose the username for this account."
+#~ msgstr "Wat is de gebruikersnaam voor deze account?"
+
+#  Type: string
+#  Description
+#~ msgid "Initial list of skills:"
+#~ msgstr "Initiële lijst van vaardigheden:"
+
+#  Type: string
+#  Description
+#, fuzzy
+#~| msgid ""
+#~| "@FORGENAME@ allows users to define a list of their skills, to be chosen "
+#~| "from those present in the database. This list is the initial list of "
+#~| "skills that will enter the database."
+#~ msgid ""
+#~ "@FORGENAME@ allows users to define a list of their skills, to be chosen "
+#~ "from those present in the database. This list is the initial list of "
+#~ "skills that will enter the database."
+#~ msgstr ""
+#~ "@FORGENAME@ geeft gebruikers de mogelijkheid om een lijst met hun "
+#~ "vaardigheden op te geven, gekozen uit deze aanwezig in de database. Dit "
+#~ "is de de initiële lijst van vaardigheden voor de database."
+
+#~ msgid "Please enter a semicolon-separated list of skill names."
+#~ msgstr ""
+#~ "Gelieve een met puntkomma's gescheiden lijst van vaardigheidsnamen in te "
+#~ "voeren."

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-po/pt.po
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-po/pt.po	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-po/pt.po	2012-04-05 10:25:42 UTC (rev 18232)
@@ -6,11 +6,12 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: @PACKAGE@ 4.6.99+svn6387-1\n"
-"Report-Msgid-Bugs-To: gforge at packages.debian.org\n"
-"POT-Creation-Date: 2009-06-12 23:23+0200\n"
+"Report-Msgid-Bugs-To: fusionforge at packages.debian.org\n"
+"POT-Creation-Date: 2012-03-16 10:20+0100\n"
 "PO-Revision-Date: 2010-10-03 21:23+0200\n"
 "Last-Translator: Ricardo Silva <ardoric at gmail.com>\n"
 "Language-Team: Portuguese <traduz at debianpt.org>\n"
+"Language: pt\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
@@ -71,44 +72,13 @@
 #. Type: string
 #. Description
 #: ../dsf-in/db-postgresql.templates.dsfh-in:8001
-#, fuzzy
-#| msgid "@FORGENAME@ administrator login:"
-msgid "@FORGENAME@ administrator login:"
-msgstr "Login do administrador do @FORGENAME@:"
-
-#. Type: string
-#. Description
-#. Type: password
-#. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:8001
-#: ../dsf-in/db-postgresql.templates.dsfh-in:10001
-#, fuzzy
-#| msgid ""
-#| "The @FORGENAME@ administrator account will have full privileges on the "
-#| "system. It will be used to approve the creation of new projects."
-msgid ""
-"The @FORGENAME@ administrator account will have full privileges on the "
-"system. It will be used to approve the creation of new projects."
-msgstr ""
-"A conta de administrador do @FORGENAME@ terá privilégios totais sobre o "
-"sistema. Será usada para aprovar a criação de novos projectos."
-
-#. Type: string
-#. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:8001
-msgid "Please choose the username for this account."
-msgstr "Por favor escolha o nome de utilizador para esta conta."
-
-#. Type: string
-#. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:9001
 #: ../dsf-helper/host-variables.templates:2001
 msgid "IP address:"
 msgstr "Endereço IP:"
 
 #. Type: string
 #. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:9001
+#: ../dsf-in/db-postgresql.templates.dsfh-in:8001
 #: ../dsf-helper/host-variables.templates:2001
 #, fuzzy
 #| msgid ""
@@ -123,14 +93,14 @@
 
 #. Type: string
 #. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:9001
+#: ../dsf-in/db-postgresql.templates.dsfh-in:8001
 #: ../dsf-helper/host-variables.templates:2001
 msgid "This is needed for the configuration of Apache virtual hosting."
 msgstr "Isto é necessário para a configuração de 'virtual hosts' do Apache."
 
 #. Type: password
 #. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:10001
+#: ../dsf-in/db-postgresql.templates.dsfh-in:9001
 #, fuzzy
 #| msgid "@FORGENAME@ administrator password:"
 msgid "@FORGENAME@ administrator password:"
@@ -138,61 +108,45 @@
 
 #. Type: password
 #. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:10001
-msgid "Please choose the password for this account."
+#: ../dsf-in/db-postgresql.templates.dsfh-in:9001
+#, fuzzy
+#| msgid ""
+#| "The @FORGENAME@ administrator account will have full privileges on the "
+#| "system. It will be used to approve the creation of new projects."
+msgid ""
+"The @FORGENAME@ administrator account will have full privileges on the "
+"forge. It will be used to approve the creation of new projects."
+msgstr ""
+"A conta de administrador do @FORGENAME@ terá privilégios totais sobre o "
+"sistema. Será usada para aprovar a criação de novos projectos."
+
+#. Type: password
+#. Description
+#: ../dsf-in/db-postgresql.templates.dsfh-in:9001
+#, fuzzy
+#| msgid "Please choose the password for this account."
+msgid "Please choose the password for this forge account."
 msgstr "Por favor escolha a palavra-passe para esta conta."
 
 #. Type: password
 #. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:11001
+#: ../dsf-in/db-postgresql.templates.dsfh-in:10001
 #: ../dsf-helper/dbpasswd-variables.templates:3001
 msgid "Password confirmation:"
 msgstr "Confirmação da palavra-passe:"
 
 #. Type: password
 #. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:11001
+#: ../dsf-in/db-postgresql.templates.dsfh-in:10001
 #: ../dsf-helper/dbpasswd-variables.templates:3001
 msgid "Please re-type the password for confirmation."
 msgstr "Por favor, reescreva a palavra-passe para confirmação."
 
-#. Type: string
-#. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:12001
-msgid "Initial list of skills:"
-msgstr "Lista inicial de competências:"
-
-#. Type: string
-#. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:12001
-#, fuzzy
-#| msgid ""
-#| "@FORGENAME@ allows users to define a list of their skills, to be chosen "
-#| "from those present in the database. This list is the initial list of "
-#| "skills that will enter the database."
-msgid ""
-"@FORGENAME@ allows users to define a list of their skills, to be chosen from "
-"those present in the database. This list is the initial list of skills that "
-"will enter the database."
-msgstr ""
-"O @FORGENAME@ permite que os utilizadores definam uma lista com as suas "
-"competências, a serem escolhidas de entre aquelas que estão na base de "
-"dados. Esta lista é a lista inicial de competências que irão figurar na base "
-"de dados."
-
-#. Type: string
-#. Description
-#: ../gforge-db-postgresql.templates.dsfh-in:12001
-msgid "Please enter a semicolon-separated list of skill names."
-msgstr ""
-"Por favor introduza uma lista de nomes de capacidades, separadas pelo "
-"símbolo ponto-e-vírgula (;)."
-
 #. Type: boolean
 #. Description
 #. Translators: SCM here means "Source Control Management"
 #. (cvs, svn, etc.)
-#: ../gforge-dns-bind9.templates.dsfh-in:3001
+#: ../dsf-in/dns-bind9.templates.dsfh-in:3001
 msgid "Do you want a simple DNS setup for @FORGENAME@?"
 msgstr "Deseja uma configuração simples de DNS no @FORGENAME@?"
 
@@ -200,7 +154,7 @@
 #. Description
 #. Translators: SCM here means "Source Control Management"
 #. (cvs, svn, etc.)
-#: ../gforge-dns-bind9.templates.dsfh-in:3001
+#: ../dsf-in/dns-bind9.templates.dsfh-in:3001
 msgid ""
 "You can use a simple DNS setup with wildcards to map all project web-hosts "
 "to a single IP address, and direct all the scm-hosts to a single SCM server, "
@@ -217,7 +171,7 @@
 #. Description
 #. Translators: SCM here means "Source Control Management"
 #. (cvs, svn, etc.)
-#: ../gforge-dns-bind9.templates.dsfh-in:3001
+#: ../dsf-in/dns-bind9.templates.dsfh-in:3001
 msgid ""
 "Even if you use a simple DNS setup, you can still use separate machines as "
 "project servers; it just assumes that all the project web directories are on "
@@ -242,8 +196,8 @@
 #| "@FORGENAME@ sends and receives plenty of e-mail to and from the "
 #| "\"${noreply}\" address."
 msgid ""
-"@FORGENAME@ sends and receives plenty of e-mail to and from the \"${noreply}"
-"\" address."
+"@FORGENAME@ sends and receives plenty of e-mail to and from the "
+"\"${noreply}\" address."
 msgstr ""
 "O @FORGENAME@ envia e recebe bastante e-mail para e a partir do endereço "
 "\"${noreply}\"."
@@ -393,7 +347,8 @@
 #. Description
 #: ../dsf-helper/downloadhost-variables.templates:2001
 msgid ""
-"Please enter the host name of the server that will host the @FORGENAME@ packages."
+"Please enter the host name of the server that will host the @FORGENAME@ "
+"packages."
 msgstr ""
 "Por favor introduza o nome do servidor que irá guardar os pacotes do "
 "@FORGENAME at ."
@@ -444,8 +399,8 @@
 #. Description
 #: ../dsf-helper/lists-variables.templates:2001
 msgid ""
-"Please enter the host name of the server that will host the @FORGENAME@ mailing "
-"lists."
+"Please enter the host name of the server that will host the @FORGENAME@ "
+"mailing lists."
 msgstr ""
 "Por favor introduza o nome do servidor que irá guardar as listas de email do "
 "@FORGENAME at ."
@@ -661,5 +616,36 @@
 "Por favor escolha o tema pré-definido para as páginas web. Tem de introduzir "
 "um nome válido."
 
+#, fuzzy
+#~| msgid "@FORGENAME@ administrator login:"
+#~ msgid "@FORGENAME@ administrator login:"
+#~ msgstr "Login do administrador do @FORGENAME@:"
+
+#~ msgid "Please choose the username for this account."
+#~ msgstr "Por favor escolha o nome de utilizador para esta conta."
+
+#~ msgid "Initial list of skills:"
+#~ msgstr "Lista inicial de competências:"
+
+#, fuzzy
+#~| msgid ""
+#~| "@FORGENAME@ allows users to define a list of their skills, to be chosen "
+#~| "from those present in the database. This list is the initial list of "
+#~| "skills that will enter the database."
+#~ msgid ""
+#~ "@FORGENAME@ allows users to define a list of their skills, to be chosen "
+#~ "from those present in the database. This list is the initial list of "
+#~ "skills that will enter the database."
+#~ msgstr ""
+#~ "O @FORGENAME@ permite que os utilizadores definam uma lista com as suas "
+#~ "competências, a serem escolhidas de entre aquelas que estão na base de "
+#~ "dados. Esta lista é a lista inicial de competências que irão figurar na "
+#~ "base de dados."
+
+#~ msgid "Please enter a semicolon-separated list of skill names."
+#~ msgstr ""
+#~ "Por favor introduza uma lista de nomes de capacidades, separadas pelo "
+#~ "símbolo ponto-e-vírgula (;)."
+
 #~ msgid "admin"
 #~ msgstr "admin"

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-po/ru.po
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-po/ru.po	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-po/ru.po	2012-04-05 10:25:42 UTC (rev 18232)
@@ -7,17 +7,18 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: @PACKAGENAME@ 4.8.2-1\n"
-"Report-Msgid-Bugs-To: gforge at packages.debian.org\n"
-"POT-Creation-Date: 2009-06-12 23:23+0200\n"
+"Report-Msgid-Bugs-To: fusionforge at packages.debian.org\n"
+"POT-Creation-Date: 2012-03-16 10:20+0100\n"
 "PO-Revision-Date: 2010-01-02 10:03+0300\n"
 "Last-Translator: Yuri Kozlov <yuray at komyakino.ru>\n"
 "Language-Team: Russian <debian-l10n-russian at lists.debian.org>\n"
+"Language: ru\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "X-Generator: KBabel 1.11.4\n"
-"Plural-Forms:  nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%"
-"10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
+"Plural-Forms:  nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
+"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
 
 #. Type: string
 #. Description
@@ -63,38 +64,13 @@
 #. Type: string
 #. Description
 #: ../dsf-in/db-postgresql.templates.dsfh-in:8001
-msgid "@FORGENAME@ administrator login:"
-msgstr "Учётная запись администратора @FORGENAME@:"
-
-#. Type: string
-#. Description
-#. Type: password
-#. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:8001
-#: ../dsf-in/db-postgresql.templates.dsfh-in:10001
-msgid ""
-"The @FORGENAME@ administrator account will have full privileges on the "
-"system. It will be used to approve the creation of new projects."
-msgstr ""
-"Учётная запись администратора @FORGENAME@ будет иметь все привилегии в "
-"системе. Она будет использована для подтверждения создания новых проектов."
-
-#. Type: string
-#. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:8001
-msgid "Please choose the username for this account."
-msgstr "Введите имя пользователя учётной записи для этого."
-
-#. Type: string
-#. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:9001
 #: ../dsf-helper/host-variables.templates:2001
 msgid "IP address:"
 msgstr "IP-адрес:"
 
 #. Type: string
 #. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:9001
+#: ../dsf-in/db-postgresql.templates.dsfh-in:8001
 #: ../dsf-helper/host-variables.templates:2001
 msgid ""
 "Please enter the IP address of the server that will host the @FORGENAME@ "
@@ -105,61 +81,53 @@
 
 #. Type: string
 #. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:9001
+#: ../dsf-in/db-postgresql.templates.dsfh-in:8001
 #: ../dsf-helper/host-variables.templates:2001
 msgid "This is needed for the configuration of Apache virtual hosting."
 msgstr "Это нужно для настройки виртуального хостинга Apache."
 
 #. Type: password
 #. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:10001
+#: ../dsf-in/db-postgresql.templates.dsfh-in:9001
 msgid "@FORGENAME@ administrator password:"
 msgstr "Пароль администратора @FORGENAME@:"
 
 #. Type: password
 #. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:10001
-msgid "Please choose the password for this account."
+#: ../dsf-in/db-postgresql.templates.dsfh-in:9001
+#, fuzzy
+#| msgid ""
+#| "The @FORGENAME@ administrator account will have full privileges on the "
+#| "system. It will be used to approve the creation of new projects."
+msgid ""
+"The @FORGENAME@ administrator account will have full privileges on the "
+"forge. It will be used to approve the creation of new projects."
+msgstr ""
+"Учётная запись администратора @FORGENAME@ будет иметь все привилегии в "
+"системе. Она будет использована для подтверждения создания новых проектов."
+
+#. Type: password
+#. Description
+#: ../dsf-in/db-postgresql.templates.dsfh-in:9001
+#, fuzzy
+#| msgid "Please choose the password for this account."
+msgid "Please choose the password for this forge account."
 msgstr "Введите пароль для этой учётной записи."
 
 #. Type: password
 #. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:11001
+#: ../dsf-in/db-postgresql.templates.dsfh-in:10001
 #: ../dsf-helper/dbpasswd-variables.templates:3001
 msgid "Password confirmation:"
 msgstr "Подтверждение пароля:"
 
 #. Type: password
 #. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:11001
+#: ../dsf-in/db-postgresql.templates.dsfh-in:10001
 #: ../dsf-helper/dbpasswd-variables.templates:3001
 msgid "Please re-type the password for confirmation."
 msgstr "Введите пароль ещё раз для подтверждения."
 
-#. Type: string
-#. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:12001
-msgid "Initial list of skills:"
-msgstr "Начальный список навыков:"
-
-#. Type: string
-#. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:12001
-msgid ""
-"@FORGENAME@ allows users to define a list of their skills, to be chosen from "
-"those present in the database. This list is the initial list of skills that "
-"will enter the database."
-msgstr ""
-"@FORGENAME@ позволяет пользователям составить список своих навыков из "
-"имеющихся в базе данных. Запрашиваемый сейчас начальный список навыков будет "
-"введён в базу данных."
-
-#. Type: string
-#. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:12001
-msgid "Please enter a semicolon-separated list of skill names."
-msgstr "Введите названия навыков, разделяя их точкой с запятой."
-
 #. Type: boolean
 #. Description
 #. Translators: SCM here means "Source Control Management"
@@ -209,8 +177,8 @@
 #. Description
 #: ../dsf-in/mta-postfix.templates.dsfh-in:3001
 msgid ""
-"@FORGENAME@ sends and receives plenty of e-mail to and from the \"${noreply}"
-"\" address."
+"@FORGENAME@ sends and receives plenty of e-mail to and from the "
+"\"${noreply}\" address."
 msgstr ""
 "@FORGENAME@ посылает и принимает множество электронных писем на адрес "
 "\"${noreply}\"."
@@ -599,3 +567,24 @@
 msgstr ""
 "Выберите тему по умолчанию для веб-страниц. Должно быть указано допустимое "
 "имя."
+
+#~ msgid "@FORGENAME@ administrator login:"
+#~ msgstr "Учётная запись администратора @FORGENAME@:"
+
+#~ msgid "Please choose the username for this account."
+#~ msgstr "Введите имя пользователя учётной записи для этого."
+
+#~ msgid "Initial list of skills:"
+#~ msgstr "Начальный список навыков:"
+
+#~ msgid ""
+#~ "@FORGENAME@ allows users to define a list of their skills, to be chosen "
+#~ "from those present in the database. This list is the initial list of "
+#~ "skills that will enter the database."
+#~ msgstr ""
+#~ "@FORGENAME@ позволяет пользователям составить список своих навыков из "
+#~ "имеющихся в базе данных. Запрашиваемый сейчас начальный список навыков "
+#~ "будет введён в базу данных."
+
+#~ msgid "Please enter a semicolon-separated list of skill names."
+#~ msgstr "Введите названия навыков, разделяя их точкой с запятой."

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-po/sv.po
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-po/sv.po	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-po/sv.po	2012-04-05 10:25:42 UTC (rev 18232)
@@ -7,11 +7,12 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: @PACKAGENAME at _4.6.99+svn6580-1_sv\n"
-"Report-Msgid-Bugs-To: gforge at packages.debian.org\n"
-"POT-Creation-Date: 2009-06-12 23:23+0200\n"
+"Report-Msgid-Bugs-To: fusionforge at packages.debian.org\n"
+"POT-Creation-Date: 2012-03-16 10:20+0100\n"
 "PO-Revision-Date: 2008-07-29 18:44+0200\n"
 "Last-Translator: Martin Ågren <martin.agren at gmail.com>\n"
 "Language-Team: Swedish <debian-l10n-swedish at lists.debian.org>\n"
+"Language: sv\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=utf-8\n"
 "Content-Transfer-Encoding: 8bit\n"
@@ -65,38 +66,13 @@
 #. Type: string
 #. Description
 #: ../dsf-in/db-postgresql.templates.dsfh-in:8001
-msgid "@FORGENAME@ administrator login:"
-msgstr "@FORGENAME at -administratörens användarnamn:"
-
-#. Type: string
-#. Description
-#. Type: password
-#. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:8001
-#: ../dsf-in/db-postgresql.templates.dsfh-in:10001
-msgid ""
-"The @FORGENAME@ administrator account will have full privileges on the "
-"system. It will be used to approve the creation of new projects."
-msgstr ""
-"Administratörskontot för @FORGENAME@ kommer att ha alla rättigheter i "
-"@FORGENAME at -systemet. Det behövs för att godkänna skapandet av projekten."
-
-#. Type: string
-#. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:8001
-msgid "Please choose the username for this account."
-msgstr "Ange användarnamnet för detta konto."
-
-#. Type: string
-#. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:9001
 #: ../dsf-helper/host-variables.templates:2001
 msgid "IP address:"
 msgstr "IP-adress:"
 
 #. Type: string
 #. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:9001
+#: ../dsf-in/db-postgresql.templates.dsfh-in:8001
 #: ../dsf-helper/host-variables.templates:2001
 msgid ""
 "Please enter the IP address of the server that will host the @FORGENAME@ "
@@ -107,61 +83,53 @@
 
 #. Type: string
 #. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:9001
+#: ../dsf-in/db-postgresql.templates.dsfh-in:8001
 #: ../dsf-helper/host-variables.templates:2001
 msgid "This is needed for the configuration of Apache virtual hosting."
 msgstr "Detta krävs för att konfigurera Apaches virtuella värd."
 
 #. Type: password
 #. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:10001
+#: ../dsf-in/db-postgresql.templates.dsfh-in:9001
 msgid "@FORGENAME@ administrator password:"
 msgstr "@FORGENAME at -administratörens lösenord:"
 
 #. Type: password
 #. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:10001
-msgid "Please choose the password for this account."
+#: ../dsf-in/db-postgresql.templates.dsfh-in:9001
+#, fuzzy
+#| msgid ""
+#| "The @FORGENAME@ administrator account will have full privileges on the "
+#| "system. It will be used to approve the creation of new projects."
+msgid ""
+"The @FORGENAME@ administrator account will have full privileges on the "
+"forge. It will be used to approve the creation of new projects."
+msgstr ""
+"Administratörskontot för @FORGENAME@ kommer att ha alla rättigheter i "
+"@FORGENAME at -systemet. Det behövs för att godkänna skapandet av projekten."
+
+#. Type: password
+#. Description
+#: ../dsf-in/db-postgresql.templates.dsfh-in:9001
+#, fuzzy
+#| msgid "Please choose the password for this account."
+msgid "Please choose the password for this forge account."
 msgstr "Mata in lösenordet för detta konto."
 
 #. Type: password
 #. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:11001
+#: ../dsf-in/db-postgresql.templates.dsfh-in:10001
 #: ../dsf-helper/dbpasswd-variables.templates:3001
 msgid "Password confirmation:"
 msgstr "Lösenordsbekräftelse:"
 
 #. Type: password
 #. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:11001
+#: ../dsf-in/db-postgresql.templates.dsfh-in:10001
 #: ../dsf-helper/dbpasswd-variables.templates:3001
 msgid "Please re-type the password for confirmation."
 msgstr "Mata in lösenordet igen för bekräftelse."
 
-#. Type: string
-#. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:12001
-msgid "Initial list of skills:"
-msgstr "Initiala listan över färdigheter:"
-
-#. Type: string
-#. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:12001
-msgid ""
-"@FORGENAME@ allows users to define a list of their skills, to be chosen from "
-"those present in the database. This list is the initial list of skills that "
-"will enter the database."
-msgstr ""
-"@FORGENAME@ låter användarna definiera en lista över sina färdigheter, som "
-"kan väljas av de som finns i databasen.  Denna lista är den initiala listan "
-"som kommer att läggas in i databasen."
-
-#. Type: string
-#. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:12001
-msgid "Please enter a semicolon-separated list of skill names."
-msgstr "Mata in namn på färdigheter, separerade med semikolon."
-
 #. Type: boolean
 #. Description
 #. Translators: SCM here means "Source Control Management"
@@ -211,8 +179,8 @@
 #. Description
 #: ../dsf-in/mta-postfix.templates.dsfh-in:3001
 msgid ""
-"@FORGENAME@ sends and receives plenty of e-mail to and from the \"${noreply}"
-"\" address."
+"@FORGENAME@ sends and receives plenty of e-mail to and from the "
+"\"${noreply}\" address."
 msgstr ""
 "@FORGENAME@ skickar och tar emot en mängd e-postmeddelanden till och från "
 "adressen \"${noreply}\"."
@@ -598,3 +566,24 @@
 msgid ""
 "Please choose the default theme for web pages. This must be a valid name."
 msgstr "Ange standardtemat för webbsidorna. Detta måste vara ett giltigt namn."
+
+#~ msgid "@FORGENAME@ administrator login:"
+#~ msgstr "@FORGENAME at -administratörens användarnamn:"
+
+#~ msgid "Please choose the username for this account."
+#~ msgstr "Ange användarnamnet för detta konto."
+
+#~ msgid "Initial list of skills:"
+#~ msgstr "Initiala listan över färdigheter:"
+
+#~ msgid ""
+#~ "@FORGENAME@ allows users to define a list of their skills, to be chosen "
+#~ "from those present in the database. This list is the initial list of "
+#~ "skills that will enter the database."
+#~ msgstr ""
+#~ "@FORGENAME@ låter användarna definiera en lista över sina färdigheter, "
+#~ "som kan väljas av de som finns i databasen.  Denna lista är den initiala "
+#~ "listan som kommer att läggas in i databasen."
+
+#~ msgid "Please enter a semicolon-separated list of skill names."
+#~ msgstr "Mata in namn på färdigheter, separerade med semikolon."

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-po/templates.pot
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-po/templates.pot	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-po/templates.pot	2012-04-05 10:25:42 UTC (rev 18232)
@@ -6,12 +6,13 @@
 #, fuzzy
 msgid ""
 msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
-"Report-Msgid-Bugs-To: gforge at packages.debian.org\n"
-"POT-Creation-Date: 2009-06-12 23:23+0200\n"
+"Project-Id-Version: fusionforge\n"
+"Report-Msgid-Bugs-To: fusionforge at packages.debian.org\n"
+"POT-Creation-Date: 2012-03-16 10:20+0100\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL at ADDRESS>\n"
 "Language-Team: LANGUAGE <LL at li.org>\n"
+"Language: \n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=CHARSET\n"
 "Content-Transfer-Encoding: 8bit\n"
@@ -58,36 +59,13 @@
 #. Type: string
 #. Description
 #: ../dsf-in/db-postgresql.templates.dsfh-in:8001
-msgid "@FORGENAME@ administrator login:"
-msgstr ""
-
-#. Type: string
-#. Description
-#. Type: password
-#. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:8001
-#: ../dsf-in/db-postgresql.templates.dsfh-in:10001
-msgid ""
-"The @FORGENAME@ administrator account will have full privileges on the "
-"system. It will be used to approve the creation of new projects."
-msgstr ""
-
-#. Type: string
-#. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:8001
-msgid "Please choose the username for this account."
-msgstr ""
-
-#. Type: string
-#. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:9001
 #: ../dsf-helper/host-variables.templates:2001
 msgid "IP address:"
 msgstr ""
 
 #. Type: string
 #. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:9001
+#: ../dsf-in/db-postgresql.templates.dsfh-in:8001
 #: ../dsf-helper/host-variables.templates:2001
 msgid ""
 "Please enter the IP address of the server that will host the @FORGENAME@ "
@@ -96,58 +74,45 @@
 
 #. Type: string
 #. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:9001
+#: ../dsf-in/db-postgresql.templates.dsfh-in:8001
 #: ../dsf-helper/host-variables.templates:2001
 msgid "This is needed for the configuration of Apache virtual hosting."
 msgstr ""
 
 #. Type: password
 #. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:10001
+#: ../dsf-in/db-postgresql.templates.dsfh-in:9001
 msgid "@FORGENAME@ administrator password:"
 msgstr ""
 
 #. Type: password
 #. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:10001
-msgid "Please choose the password for this account."
+#: ../dsf-in/db-postgresql.templates.dsfh-in:9001
+msgid ""
+"The @FORGENAME@ administrator account will have full privileges on the "
+"forge. It will be used to approve the creation of new projects."
 msgstr ""
 
 #. Type: password
 #. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:11001
+#: ../dsf-in/db-postgresql.templates.dsfh-in:9001
+msgid "Please choose the password for this forge account."
+msgstr ""
+
+#. Type: password
+#. Description
+#: ../dsf-in/db-postgresql.templates.dsfh-in:10001
 #: ../dsf-helper/dbpasswd-variables.templates:3001
 msgid "Password confirmation:"
 msgstr ""
 
 #. Type: password
 #. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:11001
+#: ../dsf-in/db-postgresql.templates.dsfh-in:10001
 #: ../dsf-helper/dbpasswd-variables.templates:3001
 msgid "Please re-type the password for confirmation."
 msgstr ""
 
-#. Type: string
-#. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:12001
-msgid "Initial list of skills:"
-msgstr ""
-
-#. Type: string
-#. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:12001
-msgid ""
-"@FORGENAME@ allows users to define a list of their skills, to be chosen from "
-"those present in the database. This list is the initial list of skills that "
-"will enter the database."
-msgstr ""
-
-#. Type: string
-#. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:12001
-msgid "Please enter a semicolon-separated list of skill names."
-msgstr ""
-
 #. Type: boolean
 #. Description
 #. Translators: SCM here means "Source Control Management"
@@ -189,8 +154,8 @@
 #. Description
 #: ../dsf-in/mta-postfix.templates.dsfh-in:3001
 msgid ""
-"@FORGENAME@ sends and receives plenty of e-mail to and from the \"${noreply}"
-"\" address."
+"@FORGENAME@ sends and receives plenty of e-mail to and from the "
+"\"${noreply}\" address."
 msgstr ""
 
 #. Type: boolean

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-po/vi.po
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-po/vi.po	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/dsf-po/vi.po	2012-04-05 10:25:42 UTC (rev 18232)
@@ -6,15 +6,15 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: @PACKAGE@ 4.6.99+svn6387-1\n"
-"Report-Msgid-Bugs-To: gforge at packages.debian.org\n"
-"POT-Creation-Date: 2009-06-12 23:23+0200\n"
+"Report-Msgid-Bugs-To: fusionforge at packages.debian.org\n"
+"POT-Creation-Date: 2012-03-16 10:20+0100\n"
 "PO-Revision-Date: 2010-03-10 10:10+0200\n"
 "Last-Translator: Clytie Siddall <clytie at riverland.net.au>\n"
 "Language-Team: Vietnamese <vi-VN at googlegroups.com>\n"
+"Language: vi\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=utf-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"Language: vi\n"
 "Plural-Forms: nplurals=1; plural=0;\n"
 "X-Generator: Pootle 1.2.1\n"
 
@@ -61,38 +61,13 @@
 #. Type: string
 #. Description
 #: ../dsf-in/db-postgresql.templates.dsfh-in:8001
-msgid "@FORGENAME@ administrator login:"
-msgstr "Tên đăng nhập quản trị @FORGENAME@:"
-
-#. Type: string
-#. Description
-#. Type: password
-#. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:8001
-#: ../dsf-in/db-postgresql.templates.dsfh-in:10001
-msgid ""
-"The @FORGENAME@ administrator account will have full privileges on the "
-"system. It will be used to approve the creation of new projects."
-msgstr ""
-"Tài khoản quản trị @FORGENAME@ này sẽ được mọi quyền truy cập đến hệ thống. "
-"Nó dùng để tán thành việc tạo dự án mới."
-
-#. Type: string
-#. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:8001
-msgid "Please choose the username for this account."
-msgstr "Hãy chọn tên người dùng cho tài khoản này."
-
-#. Type: string
-#. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:9001
 #: ../dsf-helper/host-variables.templates:2001
 msgid "IP address:"
 msgstr "Địa chỉ IP:"
 
 #. Type: string
 #. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:9001
+#: ../dsf-in/db-postgresql.templates.dsfh-in:8001
 #: ../dsf-helper/host-variables.templates:2001
 msgid ""
 "Please enter the IP address of the server that will host the @FORGENAME@ "
@@ -101,61 +76,53 @@
 
 #. Type: string
 #. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:9001
+#: ../dsf-in/db-postgresql.templates.dsfh-in:8001
 #: ../dsf-helper/host-variables.templates:2001
 msgid "This is needed for the configuration of Apache virtual hosting."
 msgstr "Nó cần để cấu hình dịch vụ ảo Apache."
 
 #. Type: password
 #. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:10001
+#: ../dsf-in/db-postgresql.templates.dsfh-in:9001
 msgid "@FORGENAME@ administrator password:"
 msgstr "Mật khẩu quản trị @FORGENAME@:"
 
 #. Type: password
 #. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:10001
-msgid "Please choose the password for this account."
+#: ../dsf-in/db-postgresql.templates.dsfh-in:9001
+#, fuzzy
+#| msgid ""
+#| "The @FORGENAME@ administrator account will have full privileges on the "
+#| "system. It will be used to approve the creation of new projects."
+msgid ""
+"The @FORGENAME@ administrator account will have full privileges on the "
+"forge. It will be used to approve the creation of new projects."
+msgstr ""
+"Tài khoản quản trị @FORGENAME@ này sẽ được mọi quyền truy cập đến hệ thống. "
+"Nó dùng để tán thành việc tạo dự án mới."
+
+#. Type: password
+#. Description
+#: ../dsf-in/db-postgresql.templates.dsfh-in:9001
+#, fuzzy
+#| msgid "Please choose the password for this account."
+msgid "Please choose the password for this forge account."
 msgstr "Hãy chọn mật khẩu cho tài khoản này."
 
 #. Type: password
 #. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:11001
+#: ../dsf-in/db-postgresql.templates.dsfh-in:10001
 #: ../dsf-helper/dbpasswd-variables.templates:3001
 msgid "Password confirmation:"
 msgstr "Xác nhận mật khẩu :"
 
 #. Type: password
 #. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:11001
+#: ../dsf-in/db-postgresql.templates.dsfh-in:10001
 #: ../dsf-helper/dbpasswd-variables.templates:3001
 msgid "Please re-type the password for confirmation."
 msgstr "Hãy gõ lại mật khẩu để xác nhận nó."
 
-#. Type: string
-#. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:12001
-msgid "Initial list of skills:"
-msgstr "Danh sách kỹ năng ban đầu :"
-
-#. Type: string
-#. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:12001
-msgid ""
-"@FORGENAME@ allows users to define a list of their skills, to be chosen from "
-"those present in the database. This list is the initial list of skills that "
-"will enter the database."
-msgstr ""
-"@FORGENAME@ cho mỗi người dùng có khả năng xác định một danh sách các kỹ "
-"năng của mình, được chọn trong các điều nằm trong cơ sở dữ liệu. Danh sách "
-"này là danh sách kỹ năng ban đầu sẽ vào cơ sở dữ liệu."
-
-#. Type: string
-#. Description
-#: ../dsf-in/db-postgresql.templates.dsfh-in:12001
-msgid "Please enter a semicolon-separated list of skill names."
-msgstr "Hãy gõ danh sách các tên kỹ năng định giới bằng dấu chấm phẩy « ; »."
-
 #. Type: boolean
 #. Description
 #. Translators: SCM here means "Source Control Management"
@@ -205,8 +172,8 @@
 #. Description
 #: ../dsf-in/mta-postfix.templates.dsfh-in:3001
 msgid ""
-"@FORGENAME@ sends and receives plenty of e-mail to and from the \"${noreply}"
-"\" address."
+"@FORGENAME@ sends and receives plenty of e-mail to and from the "
+"\"${noreply}\" address."
 msgstr ""
 "@FORGENAME@ gửi và nhận rất nhiều thư điện tử cho/từ địa chỉ « ${noreply} »."
 
@@ -584,3 +551,25 @@
 msgid ""
 "Please choose the default theme for web pages. This must be a valid name."
 msgstr "Hãy chọn sắc thái mặc định cho trang Web: nó phải là một tên hợp lệ."
+
+#~ msgid "@FORGENAME@ administrator login:"
+#~ msgstr "Tên đăng nhập quản trị @FORGENAME@:"
+
+#~ msgid "Please choose the username for this account."
+#~ msgstr "Hãy chọn tên người dùng cho tài khoản này."
+
+#~ msgid "Initial list of skills:"
+#~ msgstr "Danh sách kỹ năng ban đầu :"
+
+#~ msgid ""
+#~ "@FORGENAME@ allows users to define a list of their skills, to be chosen "
+#~ "from those present in the database. This list is the initial list of "
+#~ "skills that will enter the database."
+#~ msgstr ""
+#~ "@FORGENAME@ cho mỗi người dùng có khả năng xác định một danh sách các kỹ "
+#~ "năng của mình, được chọn trong các điều nằm trong cơ sở dữ liệu. Danh "
+#~ "sách này là danh sách kỹ năng ban đầu sẽ vào cơ sở dữ liệu."
+
+#~ msgid "Please enter a semicolon-separated list of skill names."
+#~ msgstr ""
+#~ "Hãy gõ danh sách các tên kỹ năng định giới bằng dấu chấm phẩy « ; »."

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/rules
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/rules	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/debian/rules	2012-04-05 10:25:42 UTC (rev 18232)
@@ -173,7 +173,7 @@
 	rm -f $(CURDIR)/debian/README.Debian
 	rm -rf locales
 
-	rm -f $(POFILES)
+	rm -f $(POFILES) $(PPOSTINST) $(PPRERM)
 
 	perl $(CURDIR)/deb-specific/dsf-helper.pl --clean
 

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/docs/README.html:EvolvisTable
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/docs/README.html:EvolvisTable	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/docs/README.html:EvolvisTable	2012-04-05 10:25:42 UTC (rev 18232)
@@ -25,6 +25,13 @@
   the table width. For a headless table, $title_arr[0] === false,
   but it still m̲u̲s̲t̲ be filled in.
 
+  Members of $title_arr may be arrays themselves. If so, they must
+  be indexed and have two members, [0] being the text, [1] being
+  an array suitable for passing as HTML attributes to html_ao().
+  Default attributes will be applied to it but not overwrite the
+  supplied attributes; the default CSS class is prepended, no matter
+  whether unset, string or array, to $title_arr[$i][1]['class'].
+
   If $links_arr is set, it’s expected to be of equal magnitude as
   $title_arr and makes the <th> content be hyperlinks to the targets
   respective. (See Theme.class.php $HTML->listTableTop() for info.)

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/etc/httpd.conf.d/log.inc
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/etc/httpd.conf.d/log.inc	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/etc/httpd.conf.d/log.inc	2012-04-05 10:25:42 UTC (rev 18232)
@@ -1,7 +1,7 @@
 # Custom logging
 
 LogFormat "%h %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" fusionforge
-CustomLog {core/log_path}/access.log fusionforge
+#CustomLog {core/log_path}/access.log fusionforge
 LogFormat "%{Host}i %h %l %u %t %{SSL_PROTOCOL}x:%{SSL_CIPHER}x \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combinedvhssl
-CustomLog {core/log_path}/awstats.log combinedvhssl
+#CustomLog {core/log_path}/awstats.log combinedvhssl
 CustomLog "|/usr/bin/cronolog {core/log_path}/%Y/%m/%d/awstats.log" combinedvhssl

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/packaging/control/900evolvis-meta
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/packaging/control/900evolvis-meta	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/packaging/control/900evolvis-meta	2012-04-05 10:25:42 UTC (rev 18232)
@@ -7,7 +7,10 @@
  @OLDPACKAGE at -db-postgresql, @OLDPACKAGE at -mta-postfix,
  @OLDPACKAGE at -shell-postgresql, @OLDPACKAGE at -lists-mailman,
  @PACKAGE at -plugin-scmgit, @PACKAGE at -plugin-scmsvn,
- evolvis-anonsvnsh, locales-all,
+ evolvis-anonsvnsh,
+ locales-all | locales,
+ locales-all | language-pack-de,
+ locales-all | language-pack-en,
  @PACKAGE at -plugin-extratabs, @PACKAGE at -plugin-projectlabels,
  @PACKAGE at -plugin-mediawiki, mediawiki-extensions-base (>= 2.4~),
  mediawiki-math, mediawiki-extensions-collection,

Copied: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/packaging/cron.d/plugin-mediawiki (from rev 18231, trunk/gforge_base/evolvisforge-5.1/src/packaging/cron.d/plugin-mediawiki)
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/packaging/cron.d/plugin-mediawiki	                        (rev 0)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/packaging/cron.d/plugin-mediawiki	2012-04-05 10:25:42 UTC (rev 18232)
@@ -0,0 +1,2 @@
+# force a non-empty nop cron.d file
+# to get rid of the one 4.8 shipped

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/blocks/packaging/install/plugin-blocks
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/blocks/packaging/install/plugin-blocks	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/blocks/packaging/install/plugin-blocks	2012-04-05 10:25:42 UTC (rev 18232)
@@ -1,5 +1,5 @@
 plugins/blocks/common/*               usr/share/@OLDPACKAGE@/plugins/blocks/common/
 plugins/blocks/db/*                   usr/share/@OLDPACKAGE@/plugins/blocks/db/
 plugins/blocks/www/*                  usr/share/@OLDPACKAGE@/plugins/blocks/www/
-plugins/blocks/etc/plugins/blocks/*   etc/@OLDPACKAGE@/plugins/blocks/
+plugins/blocks/etc/plugins/blocks/*   etc/@PACKAGE@/plugins/blocks/
 plugins/blocks/etc/*.ini              etc/@PACKAGE@/config.ini.d/

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/externalsearch/bin/db-upgrade.pl
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/externalsearch/bin/db-upgrade.pl	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/externalsearch/bin/db-upgrade.pl	2012-04-05 10:25:42 UTC (rev 18232)
@@ -74,8 +74,6 @@
     if (is_lesser $version, $target) {
 	debug "Adding local data." ;
 	
-	do "/etc/gforge/local.pl" or die "Cannot read /etc/gforge/local.pl" ;
-	
 	my $ip_address = qx/host $domain_name | awk '{print \}'/ ;
 	
 	@reqlist = (

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/globalsearch/bin/db-upgrade.pl
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/globalsearch/bin/db-upgrade.pl	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/globalsearch/bin/db-upgrade.pl	2012-04-05 10:25:42 UTC (rev 18232)
@@ -77,8 +77,6 @@
     if (is_lesser $version, $target) {
     debug "Adding local data." ;
         
-    do "/etc/gforge/local.pl" or die "Cannot read /etc/gforge/local.pl" ;
-
     my $packed_ip = gethostbyname("$domain_name");
     my $ip_address ;
     if (defined $packed_ip) {

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/globalsearch/common/globalsearch_stats_boxes.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/globalsearch/common/globalsearch_stats_boxes.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/globalsearch/common/globalsearch_stats_boxes.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -22,7 +22,7 @@
  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 
-require_once ('../../../www/env.inc.php');
+require dirname(__FILE__).'/../../../common/include/env.inc.php';
 require_once $gfcommon.'include/pre.php';
 require_once $gfcommon.'/include/FusionForge.class.php';
 

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/hudson/bin/db-upgrade.pl
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/hudson/bin/db-upgrade.pl	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/hudson/bin/db-upgrade.pl	2012-04-05 10:25:42 UTC (rev 18232)
@@ -74,8 +74,6 @@
 #    if (is_lesser $version, $target) {
 #	debug "Adding local data." ;
 #	
-#	do "/etc/gforge/local.pl" or die "Cannot read /etc/gforge/local.pl" ;
-#	
 #	my $ip_address = qx/host $domain_name | awk '{print \}'/ ;
 #	
 #	@reqlist = (

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/mediawiki/bin/mw-drop-wikis.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/mediawiki/bin/mw-drop-wikis.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/mediawiki/bin/mw-drop-wikis.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -26,7 +26,7 @@
 	exit (0);
 }
 
-require_once dirname(__FILE__) . '/../../../www/env.inc.php';
+require dirname(__FILE__).'/../../../common/include/env.inc.php';
 require_once $gfcommon.'include/pre.php';
 
 $projects_path = forge_get_config('projects_path', 'mediawiki');

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/mediawiki/bin/mw-plugin-init.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/mediawiki/bin/mw-plugin-init.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/mediawiki/bin/mw-plugin-init.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -24,7 +24,7 @@
    mediawiki plugin. 
   */
 
-require_once dirname(__FILE__) . '/../../../www/env.inc.php';
+require dirname(__FILE__).'/../../../common/include/env.inc.php';
 require_once $gfcommon.'include/pre.php';
 
 $echo_links = $argc >= 1;

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/mediawiki/bin/mw-wrapper.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/mediawiki/bin/mw-wrapper.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/mediawiki/bin/mw-wrapper.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -34,7 +34,7 @@
 $fusionforgeproject = array_shift ($argv) ;
 $mwscript = array_shift ($argv) ;
 
-require_once dirname(__FILE__) . '/../../../www/env.inc.php';
+require dirname(__FILE__).'/../../../common/include/env.inc.php';
 require_once $gfcommon.'include/pre.php';
 require_once $gfcommon.'include/cron_utils.php';
 

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/mediawiki/common/MediaWikiPlugin.class.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/mediawiki/common/MediaWikiPlugin.class.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/mediawiki/common/MediaWikiPlugin.class.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -1,23 +1,25 @@
 <?php
-
-/**
- * MediaWikiPlugin Class
+/*-
+ * MediaWiki plugin for FusionForge – Forge Plugin class
  *
+ * Copyright © 2012
+ *	Thorsten Glaser <t.glaser at tarent.de>
+ * (and others)
+ * All rights reserved.
  *
- * This file is part of FusionForge.
+ * This file is part of FusionForge. FusionForge is free software;
+ * you can redistribute it and/or modify it under the terms of the
+ * GNU General Public License as published by the Free Software
+ * Foundation; either version 2 of the Licence, or (at your option)
+ * any later version.
  *
- * FusionForge is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
  * FusionForge is distributed in the hope that it will be useful,
  * but WITHOUT ANY WARRANTY; without even the implied warranty of
  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  * GNU General Public License for more details.
  *
  * You should have received a copy of the GNU General Public License along
- * with this program; if not, write to the Free Software Foundation, Inc.,
+ * with FusionForge; if not, write to the Free Software Foundation, Inc.,
  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 
@@ -50,6 +52,7 @@
 		$this->hooks[] = "list_roles_by_permission";
 		$this->hooks[] = "project_admin_plugins"; // to show up in the admin page for group
 		$this->hooks[] = "clone_project_from_template" ;
+		$this->hooks[] = "normalise_roles";
 	}
 
 	function CallHook ($hookname, &$params) {
@@ -396,6 +399,38 @@
 					}
 				}
 			}
+		} else if ($hookname == "normalise_roles") {
+			$ra = RoleAnonymous::getInstance();
+			/* get all groups using the mediawiki plugin */
+			$res = db_query_params("
+				SELECT g.unix_group_name, g.group_id
+				FROM groups g, group_plugin gp, plugins p
+				WHERE g.group_id = gp.group_id
+				  AND gp.plugin_id = p.plugin_id
+				  AND p.plugin_name = $1;
+			    ", array("mediawiki"));
+			/* iterate over all those groups */
+			while ($res && ($row = db_fetch_array($res))) {
+				$gid = $row['group_id'];
+				$ugn = $row['unix_group_name'];
+				$dir = forge_get_config('projects_path',
+				    'mediawiki') . "/" . $ugn;
+
+				/* look for Evolvis 4.8 public visibility info */
+				if (is_dir($dir) && file_exists("$dir/private")) {
+					$pub =
+					    $ra->hasPermission('project_read', $gid) ?
+					    /* parse old wiki visibility info */
+					    file_get_contents("$dir/private") === "0\n" :
+					    /* hide wiki on non-public groups */
+					    false;
+					/* set anonymous wiki readability */
+					$ra->setSetting('plugin_mediawiki_read',
+					    $gid, $pub ? 1 : 0);
+					/* nuke old file, once is enough */
+					@unlink("$dir/private");
+				}
+			}
 		}
 	}
   }
@@ -404,5 +439,3 @@
 // mode: php
 // c-file-style: "bsd"
 // End:
-
-?>

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/mediawiki/cronjobs/create-imagedirs.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/mediawiki/cronjobs/create-imagedirs.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/mediawiki/cronjobs/create-imagedirs.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -25,7 +25,7 @@
    It is intended to be started in a cronjob with root permissions.
    */
 
-require_once dirname(__FILE__) . '/../../../www/env.inc.php';
+require dirname(__FILE__).'/../../../common/include/env.inc.php';
 require_once $gfcommon.'include/pre.php';
 require_once $gfcommon.'include/cron_utils.php';
 

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/mediawiki/cronjobs/create-wikis.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/mediawiki/cronjobs/create-wikis.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/mediawiki/cronjobs/create-wikis.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -1,5 +1,5 @@
 <?php
-/* 
+/*
  * Copyright (C) 2010  Olaf Lenz
  *
  * This file is part of FusionForge.
@@ -21,7 +21,7 @@
 
   /** This script will automatically create mediawiki instances for
    projects that do not yet have it.
-   
+
    It is intended to be started in a cronjob.
    */
 
@@ -29,7 +29,7 @@
 # Required config variables:
 #   src_path: the directory where the mediawiki sources are installed
 
-require_once dirname(__FILE__) . '/../../../www/env.inc.php';
+require dirname(__FILE__).'/../../../common/include/env.inc.php';
 require_once $gfcommon.'include/pre.php';
 require_once $gfcommon.'include/cron_utils.php';
 
@@ -48,7 +48,7 @@
 # Loop over all projects that use the plugin
 while ( $row = db_fetch_array($project_res) ) {
 	$project = $row['unix_group_name'];
-	$project_dir = forge_get_config('projects_path', 'mediawiki') 
+	$project_dir = forge_get_config('projects_path', 'mediawiki')
 		. "/$project";
 	cron_debug("Checking $project...");
 
@@ -59,24 +59,7 @@
 				     $url));
 
 	// Create the project directory if necessary
-	if (is_dir($project_dir)) {
-		cron_debug("  Project dir $project_dir exists, so I assumen the project already exists.");
-		if(!is_dir("$project_dir/cache")) {
-			mkdir("$project_dir/cache", 02775, true);
-			chgrp("$project_dir/cache", "www-data");
-		}
-		if(!is_dir("$project_dir/cache/rss")) {
-			mkdir("$project_dir/cache/rss", 02775, true);
-			chgrp("$project_dir/cache/rss", "www-data");
-		}
-	} else {
-		cron_debug("  Creating project dir $project_dir.");
-		mkdir($project_dir, 0775, true);
-		mkdir("$project_dir/cache", 02775, true);
-		chgrp("$project_dir/cache", "www-data");
-		mkdir("$project_dir/cache/rss", 02775, true);
-		chgrp("$project_dir/cache/rss", "www-data");
-
+	if (!is_dir($project_dir)) {
 		// Create the DB
 		$schema = "plugin_mediawiki_$project";
 		// Sanitize schema name
@@ -87,7 +70,7 @@
 		cron_debug("  Creating schema $schema.");
 		$res = db_query_params("CREATE SCHEMA $schema", array());
 		if (!$res) {
-			$err =  "Error: Schema Creation Failed: " . 
+			$err =  "Error: Schema Creation Failed: " .
 				db_error();
 			cron_debug($err);
 			cron_entry(23,$err);
@@ -104,10 +87,10 @@
 			db_rollback();
 			exit;
 		}
-			
+
 		$res = db_query_params("SET search_path=$schema", array());
 		if (!$res) {
-			$err =  "Error: DB Query Failed: " . 
+			$err =  "Error: DB Query Failed: " .
 				db_error();
 			cron_debug($err);
 			cron_entry(23,$err);
@@ -118,7 +101,7 @@
 		$creation_query = file_get_contents($table_file);
 		$res = db_query_from_file($table_file);
 		if (!$res) {
-			$err =  "Error: Mediawiki Database Creation Failed: " . 
+			$err =  "Error: Mediawiki Database Creation Failed: " .
 				db_error();
 			cron_debug($err);
 			cron_entry(23,$err);
@@ -128,30 +111,47 @@
 
 		$res = db_query_params("CREATE TEXT SEARCH CONFIGURATION $schema.default ( COPY = pg_catalog.english )", array());
 		if (!$res) {
-			$err =  "Error: DB Query Failed: " . 
+			$err =  "Error: DB Query Failed: " .
 				db_error();
 			cron_debug($err);
 			cron_entry(23,$err);
 			db_rollback();
 			exit;
 		}
-		
+
 		if (!db_commit()) {
-			$err =  "Error: DB Commit Failed: " . 
+			$err =  "Error: DB Commit Failed: " .
 				db_error();
 			cron_debug($err);
 			cron_entry(23,$err);
 			exit;
 		}
 
+		cron_debug("  Creating project dir $project_dir.");
+		mkdir($project_dir, 0775, true);
+		mkdir("$project_dir/cache", 02775, true);
+		chgrp("$project_dir/cache", "www-data");
+		mkdir("$project_dir/cache/rss", 02775, true);
+		chgrp("$project_dir/cache/rss", "www-data");
+
 		$mwwrapper = forge_get_config('source_path')."/plugins/mediawiki/bin/mw-wrapper.php" ;
 		$dumpfile = forge_get_config('config_path')."/mediawiki/initial-content.xml" ;
-		
+
 		if (file_exists ($dumpfile)) {
 			system ("$mwwrapper $project importDump.php $dumpfile") ;
 			system ("$mwwrapper $project rebuildrecentchanges.php") ;
 		}
-	} 
+	} else {
+		cron_debug("  Project dir $project_dir exists, so I assume the project already exists.");
+		if (!is_dir("$project_dir/cache")) {
+			mkdir("$project_dir/cache", 02775, true);
+			chgrp("$project_dir/cache", "www-data");
+		}
+		if (!is_dir("$project_dir/cache/rss")) {
+			mkdir("$project_dir/cache/rss", 02775, true);
+			chgrp("$project_dir/cache/rss", "www-data");
+		}
+	}
 }
 
 

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/mediawiki/cronjobs/dump-wikis.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/mediawiki/cronjobs/dump-wikis.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/mediawiki/cronjobs/dump-wikis.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -24,7 +24,7 @@
       It is intended to be started in a cronjob.
    */
 
-require_once dirname(__FILE__) . '/../../../www/env.inc.php';
+require dirname(__FILE__).'/../../../common/include/env.inc.php';
 require_once $gfcommon.'include/pre.php';
 require_once $gfcommon.'include/cron_utils.php';
 

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/mediawiki/mediawiki-skin/FusionForge.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/mediawiki/mediawiki-skin/FusionForge.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/mediawiki/mediawiki-skin/FusionForge.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -440,5 +440,3 @@
 	}
 
 } // end of class
-
-

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/mediawiki/mediawiki-skin-devel/00README
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/mediawiki/mediawiki-skin-devel/00README	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/mediawiki/mediawiki-skin-devel/00README	2012-04-05 10:25:42 UTC (rev 18232)
@@ -14,3 +14,5 @@
 
 MonoBook.php and main.css are copied verbatim,
 currently from: mediawiki_1.15.5-1tarent2_all.deb
+
+Empty trailing lines have been removed from: MonoBook.php

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/mediawiki/mediawiki-skin-devel/FusionForge.php.patched
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/mediawiki/mediawiki-skin-devel/FusionForge.php.patched	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/mediawiki/mediawiki-skin-devel/FusionForge.php.patched	2012-04-05 10:25:42 UTC (rev 18232)
@@ -440,5 +440,3 @@
 	}
 
 } // end of class
-
-

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/mediawiki/mediawiki-skin-devel/FusionForge.php.reference
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/mediawiki/mediawiki-skin-devel/FusionForge.php.reference	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/mediawiki/mediawiki-skin-devel/FusionForge.php.reference	2012-04-05 10:25:42 UTC (rev 18232)
@@ -374,5 +374,3 @@
 	}
 
 } // end of class
-
-

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/mediawiki/mediawiki-skin-devel/MonoBook.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/mediawiki/mediawiki-skin-devel/MonoBook.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/mediawiki/mediawiki-skin-devel/MonoBook.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -374,5 +374,3 @@
 	}
 
 } // end of class
-
-

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/mediawiki/packaging/cron.d/plugin-mediawiki
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/mediawiki/packaging/cron.d/plugin-mediawiki	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/mediawiki/packaging/cron.d/plugin-mediawiki	2012-04-05 10:25:42 UTC (rev 18232)
@@ -17,4 +17,4 @@
 1,16,31,46 * * * * root [ -e $MWCRON/create-imagedirs.php ] && $PHP $MWCRON/create-imagedirs.php
 
 # Create wiki XML dumps every night
-55 1 * * * root [ -e $MWCRON/dump-wikis.php ] && $PHP $MWCRON/cronjobs/dump-wikis.php
+55 1 * * * root [ -e $MWCRON/dump-wikis.php ] && $PHP $MWCRON/dump-wikis.php

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/mediawiki/www/LocalSettings.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/mediawiki/www/LocalSettings.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/mediawiki/www/LocalSettings.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -438,11 +438,6 @@
 	$wgLogo = "$wgScriptPath/images/.wgLogo.png";
 }
 
-if (file_exists("$project_dir/private") &&
-    file_get_contents($project_dir . "/private") !== "0\n") {
-	$wgGroupPermissions['*']['read'] = false;
-}
-
 // LOAD THE SITE-WIDE AND PROJECT-SPECIFIC EXTRA-SETTINGS
 if (is_file(forge_get_config('config_path')."/plugins/mediawiki/LocalSettings.php")) {
 	include(forge_get_config('config_path')."/plugins/mediawiki/LocalSettings.php");

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/mediawiki/www/plugin_admin.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/mediawiki/www/plugin_admin.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/mediawiki/www/plugin_admin.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -2,7 +2,7 @@
 /*-
  * MediaWiki Plugin for FusionForge
  *
- * Copyright © 2010, 2011
+ * Copyright © 2010, 2011, 2012
  *      Thorsten Glaser <t.glaser at tarent.de>
  * All rights reserved.
  *
@@ -132,70 +132,28 @@
 		}
 		$feedback = logo_create($infile, $wgUploadDirectory);
 	}
-} else if (getStringFromRequest("mkprivate_submit")) {
-	$wiki_is_private = getIntFromRequest("mkprivate_value");
-	if ($wiki_is_private) {
-		$wiki_is_private = "1\n";
-		$feedback = "private";
-	} else {
-		$wiki_is_private = "0\n";
-		$feedback = "public";
-	}
-	if (file_put_contents($wikidir . "/private",
-	    $wiki_is_private) === false) {
-		$feedback = sprintf(_('Error making the wiki %s!'), $feedback);
-	} else {
-		$feedback = sprintf(_('Made the wiki %s successfully.'), $feedback);
-	}
 }
 
 site_project_header(array(
-	"title" => "MediaWiki Plugin Admin",
+	"title" => sprintf(_("MediaWiki Plugin Admin for %s"),
+	    $group->getPublicName()),
 	"pagename" => "MediaWiki Project Admin",
 	"sectionvals" => array($group->getPublicName()),
 	"toptab" => "admin",
 	"group" => $gid,
     ));
 
-echo "<h1>MediaWiki Plugin Admin for ".$group->getPublicName()."</h1>\n\n";
-
-echo "<h2>" . _('Public Visibility') . "</h2>\n";
-if (file_exists($wikidir . "/private")) {
-	?>
-<form enctype="multipart/form-data" method="post"
- style="border:solid 1px black; margin:3px; padding:3px;"
- action="<?php echo getStringFromServer('PHP_SELF')."?group_id=$gid"; ?>">
-	<?php
-	if (file_get_contents($wikidir . "/private") === "0\n") {
-		$wiki_is_private = '';
-		printf('<p>' . _('This wiki is currently not private, that is, readable to non-logged-in users and indexed by the search engine.') . "</p>\n");
-	} else {
-		$wiki_is_private = 'checked="checked"';
-		printf('<p>' . _('This wiki is currently private, that is, not readable to non-logged-in users and not indexed by the search engine.') . "</p>\n");
-	}
-	?>
-	<p><input type="checkbox" name="mkprivate_value"
-	 value="1" <?php echo $wiki_is_private; ?> /><?php
-	printf(_('Wiki for %s is private'), $group_unix_name); ?></p>
-	<p><input type="submit" name="mkprivate_submit" value="<?php echo _("Change settings"); ?>" /></p>
-</form>
-
-<?php
-	echo "<h3>" . _('Nightly XML dump') . "</h3>\n";
-	if ($wiki_is_private) {
-		echo '<p>' . _('XML dumps are not available for private wikis.') . "</p>\n";
-	} else {
-		printf('<p>' .
-		    _('<a href="%s">Download</a> the nightly created XML dump (backup) here.') .
-		    "</p>\n", util_make_url("/plugins/mediawiki/dumps/" . $group_unix_name .
-		    ".xml"));
-	}
-
+$ra = RoleAnonymous::getInstance();
+echo "<h2>" . _('Nightly XML dump') . "</h2>\n";
+if ($ra->hasPermission('plugin_mediawiki_read', $gid)) {
+	printf('<p>' .
+	    _('<a href="%s">Download</a> the nightly created XML dump (backup) here.') .
+	    "</p>\n", util_make_url("/plugins/mediawiki/dumps/" . $group_unix_name .
+	    ".xml"));
 } else {
-	echo '<p>' . _('Visibility information is not available yet.') . "</p>\n";
+	echo '<p>' . _('XML dumps are not available for private wikis.') . "</p>\n";
 }
 
-
 echo "<h2>\$wgLogo</h2>\n";
 echo '<div style="border:solid 1px black; margin:3px; padding:3px;">';
 if (file_exists($group_logo)) {

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/oslc/bin/db-upgrade.pl
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/oslc/bin/db-upgrade.pl	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/oslc/bin/db-upgrade.pl	2012-04-05 10:25:42 UTC (rev 18232)
@@ -74,8 +74,6 @@
 #    if (is_lesser $version, $target) {
 #	debug "Adding local data." ;
 #	
-#	do "/etc/gforge/local.pl" or die "Cannot read /etc/gforge/local.pl" ;
-#	
 #	my $ip_address = qx/host $domain_name | awk '{print \}'/ ;
 #	
 #	@reqlist = (

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/scmcvs/cronjobs/ssh_create.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/scmcvs/cronjobs/ssh_create.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/scmcvs/cronjobs/ssh_create.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -53,7 +53,7 @@
 	$ssh_key=str_replace('###',"\n",$ssh_key);
 	$uid += 1000;
 
-	$ssh_dir = "forge_get_config('homedir_prefix')/$username/.ssh";
+	$ssh_dir = forge_get_config('homedir_prefix')."/$username/.ssh";
 	if (!is_dir($ssh_dir)) {
 		mkdir ($ssh_dir, 0755);
 	}
@@ -69,7 +69,7 @@
 	posix_seteuid(0);
 	posix_setegid(0);
 		
-	system("chown $username:users forge_get_config('homedir_prefix')/$username");
+	system("chown $username:users ".forge_get_config('homedir_prefix')."/$username");
 	system("chown $username:users $ssh_dir");
 	system("chmod 0644 $ssh_dir/authorized_keys");
 	system("chown $username:users $ssh_dir/authorized_keys");

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/scmsvn/common/SVNPlugin.class.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/scmsvn/common/SVNPlugin.class.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/plugins/scmsvn/common/SVNPlugin.class.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -255,9 +255,9 @@
 			system ("find $repo -type d | xargs chmod g+s") ;
 			system ("chgrp -R $unix_group $repo") ;
 			if ($project->enableAnonSCM()) {
-				system ("chmod -R g+wX,o+rX-w $repo") ;
+				system("chmod -R g+rwX,o+rX-w $repo") ;
 			} else {
-				system ("chmod -R g+wX,o-rwx $repo") ;
+				system("chmod -R g+rwX,o-rwx $repo") ;
 			}
 		} else {
 			$unix_user = forge_get_config('apache_user');

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/translations/de.po
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/translations/de.po	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/translations/de.po	2012-04-05 10:25:42 UTC (rev 18232)
@@ -1,10 +1,10 @@
 # German translations for Evolvis.
 msgid ""
 msgstr ""
-"Project-Id-Version: EvolvisForge 5.1+evolvis49\n"
+"Project-Id-Version: EvolvisForge 5.1+evolvis50\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-03-14 19:51+0100\n"
-"PO-Revision-Date: 2012-03-14 19:52+0100\n"
+"POT-Creation-Date: 2012-04-03 15:51+0200\n"
+"PO-Revision-Date: 2012-04-03 15:54+0200\n"
 "Last-Translator: Thorsten Glaser <t.glaser at tarent.de>\n"
 "Language-Team: german\n"
 "Language: de\n"
@@ -382,12 +382,9 @@
 #: common/docman/include/utils.php:196 common/docman/include/utils.php:197
 #: common/docman/views/listfile.php:204 common/docman/views/listfile.php:206
 #: common/forum/ForumHTML.class.php:65 common/forum/ForumHTML.class.php:222
-#: common/forum/ForumHTML.class.php:463 common/include/descriptive.php:131
-#: common/pm/ProjectTask.class.php:1226 common/tracker/Artifact.class.php:1513
-#: common/tracker/Artifact.class.php:1515
-#: common/tracker/Artifact.class.php:1519
-#: common/tracker/Artifact.class.php:1521
-#: common/tracker/Artifact.class.php:1617
+#: common/forum/ForumHTML.class.php:463 common/include/descriptive.php:133
+#: common/pm/ProjectTask.class.php:1226 common/tracker/Artifact.class.php:1518
+#: common/tracker/Artifact.class.php:1610
 #: common/widget/Widget_MyLatestSvnCommits.class.php:65
 #: common/widget/Widget_ProjectInfo.class.php:66
 #: common/widget/Widget_Rss.class.php:74
@@ -396,12 +393,11 @@
 #: plugins/hudson/include/HudsonBuild.class.php:110
 #: plugins/projects_hierarchy/www/softwaremap.php:332
 #: www/account/index.php:128 www/admin/cronman.php:78
-#: www/admin/grouplist.php:149 www/admin/massmail.php:158
-#: www/admin/search.php:105 www/admin/search.php:187
-#: www/admin/userlist.php:110 www/developer/diary.php:51
-#: www/developer/diary.php:82 www/export/tracker.php:109
-#: www/forum/forum.php:289 www/forum/forum.php:366 www/forum/index.php:98
-#: www/forum/message.php:127 www/forum/message.php:204
+#: www/admin/massmail.php:158 www/admin/search.php:105
+#: www/admin/search.php:187 www/admin/userlist.php:110
+#: www/developer/diary.php:51 www/developer/diary.php:82
+#: www/export/tracker.php:109 www/forum/forum.php:289 www/forum/forum.php:366
+#: www/forum/index.php:98 www/forum/message.php:127 www/forum/message.php:204
 #: www/forum/myforums.php:152 www/frs/index.php:150 www/frs/index.php:210
 #: www/include/stats_function.php:77 www/include/stats_function.php:98
 #: www/include/user_home.php:144 www/my/diary.php:216
@@ -498,7 +494,7 @@
 #: www/search/include/renderers/ProjectHtmlSearchRenderer.class.php:45
 #: www/snippet/submit.php:110 www/tracker/admin/form-updatetracker.php:53
 #: www/tracker/admin/ind.php:113 www/tracker/admin/ind.php:142
-#: www/tracker/browse.php:673 www/tracker/ind.php:63
+#: www/tracker/browse.php:676 www/tracker/ind.php:63
 msgid "Description"
 msgstr "Beschreibung"
 
@@ -521,8 +517,8 @@
 
 #: common/docman/include/utils.php:326 common/docman/views/editfile.php:132
 #: www/pm/browse_task.php:619 www/project/admin/database.php:208
-#: www/tracker/admin/form-customizelist.php:44 www/tracker/browse.php:524
-#: www/tracker/browse.php:685 www/tracker/browse.php:883
+#: www/tracker/admin/form-customizelist.php:44 www/tracker/browse.php:527
+#: www/tracker/browse.php:688 www/tracker/browse.php:895
 #: www/tracker/query.php:346
 msgid "State"
 msgstr "Status"
@@ -796,7 +792,7 @@
 #: common/docman/views/listfile.php:121
 #: common/tracker/ArtifactExtraField.class.php:326
 #: plugins/globalsearch/common/globalsearch_edit_utils.php:218
-#: www/admin/groupedit.php:106 www/admin/grouplist.php:92
+#: www/admin/groupedit.php:106 www/admin/grouplist.php:35
 #: www/admin/pluginman.php:118 www/admin/search.php:94
 #: www/admin/search.php:171 www/frs/admin/editrelease.php:235
 #: www/frs/admin/index.php:155 www/my/dashboard.php:67
@@ -984,8 +980,8 @@
 #: www/tracker/admin/form-addextrafield.php:82
 #: www/tracker/admin/form-deleteextrafield.php:41
 #: www/tracker/admin/form-deletetracker.php:34
-#: www/tracker/admin/tracker.php:66 www/tracker/browse.php:173
-#: www/tracker/browse.php:500 www/tracker/deleteartifact.php:38
+#: www/tracker/admin/tracker.php:66 www/tracker/browse.php:176
+#: www/tracker/browse.php:503 www/tracker/deleteartifact.php:38
 #: www/tracker/item.php:256
 msgid "Delete"
 msgstr "Löschen"
@@ -1094,9 +1090,9 @@
 msgstr "Fehler bei der Aktualisierung:"
 
 #: common/forum/Forum.class.php:620 common/frs/FRSPackage.class.php:447
-#: common/frs/FRSRelease.class.php:356 common/include/Group.class.php:1651
+#: common/frs/FRSRelease.class.php:356 common/include/Group.class.php:1652
 #: common/mail/MailingList.class.php:393 common/pm/ProjectGroup.class.php:376
-#: common/pm/ProjectTask.class.php:518 common/tracker/Artifact.class.php:489
+#: common/pm/ProjectTask.class.php:518 common/tracker/Artifact.class.php:490
 #: common/tracker/ArtifactExtraField.class.php:429
 #: common/tracker/ArtifactType.class.php:816
 msgid "Please tick all checkboxes."
@@ -1271,7 +1267,7 @@
 msgid "Posted by"
 msgstr "Geposted von"
 
-#: common/forum/ForumHTML.class.php:65 common/include/descriptive.php:130
+#: common/forum/ForumHTML.class.php:65 common/include/descriptive.php:132
 #: common/widget/Widget_ProjectLatestFileReleases.class.php:58
 #: plugins/contribtracker/common/ContribTrackerPlugin.class.php:109
 #: plugins/cvstracker/common/cvstrackerPlugin.class.php:109
@@ -1301,8 +1297,8 @@
 #: www/search/include/renderers/NewsHtmlSearchRenderer.class.php:48
 #: www/search/include/renderers/TasksHtmlSearchRenderer.class.php:49
 #: www/search/include/renderers/TrackersHtmlSearchRenderer.class.php:49
-#: www/tracker/admin/form-customizelist.php:42 www/tracker/browse.php:278
-#: www/tracker/browse.php:670 www/tracker/item.php:313
+#: www/tracker/admin/form-customizelist.php:42 www/tracker/browse.php:281
+#: www/tracker/browse.php:673 www/tracker/item.php:313
 #: www/tracker/query.php:199 www/tracker/query.php:383
 msgid "Summary"
 msgstr "Kurzbeschreibung"
@@ -1809,7 +1805,7 @@
 msgid "SCM Box can't be empty"
 msgstr "Das SCM Feld darf nicht leer sein"
 
-#: common/include/Group.class.php:1619
+#: common/include/Group.class.php:1620
 msgid ""
 "Bad tag name, you only can use the following characters: [A-Z][a-z][0-9]-_&'#"
 "+. and space"
@@ -1817,139 +1813,139 @@
 "Fehlerhafter \"tag name\", Sie dürfen nur die folgenden Zeichen verwenden: "
 "[A-Z][a-z][0-9]-_&'#+. und das Leerzeichen"
 
-#: common/include/Group.class.php:1628
+#: common/include/Group.class.php:1629
 #, fuzzy
 msgid "Setting tags:"
 msgstr "Einstellungen"
 
-#: common/include/Group.class.php:1658
+#: common/include/Group.class.php:1659
 msgid "Cannot Delete System Group"
 msgstr "Systemgruppe kann nicht gelöscht werden"
 
-#: common/include/Group.class.php:1748 common/include/Group.class.php:1762
+#: common/include/Group.class.php:1749 common/include/Group.class.php:1763
 #, fuzzy
 msgid "Error Deleting News: "
 msgstr "Fehler beim Suchen eines neuen Forums"
 
-#: common/include/Group.class.php:1756
+#: common/include/Group.class.php:1757
 #, php-format
 msgid "Could Not Delete News Forum: %d"
 msgstr "Konnte News Forum: %d nicht löschen"
 
-#: common/include/Group.class.php:1773 common/include/Group.class.php:1781
+#: common/include/Group.class.php:1774 common/include/Group.class.php:1782
 #, fuzzy
 msgid "Error Deleting Documents: "
 msgstr "Fehler erzeugt ein leeres Dokument."
 
-#: common/include/Group.class.php:1791
+#: common/include/Group.class.php:1792
 #, fuzzy
 msgid "Error Deleting Tags: "
 msgstr "Fehler %1$s zu bekommen"
 
-#: common/include/Group.class.php:1802
+#: common/include/Group.class.php:1803
 #, fuzzy
 msgid "Error Deleting Project History: "
 msgstr "Fehler bei der Aktualisierung der Projekt- Informationen: %s"
 
-#: common/include/Group.class.php:1813
+#: common/include/Group.class.php:1814
 #, fuzzy
 msgid "Error Deleting Project Plugins: "
 msgstr "Fehler beim Erstellen des Mitarbeiter-Objektes: %s"
 
-#: common/include/Group.class.php:1824
+#: common/include/Group.class.php:1825
 #, fuzzy
 msgid "Error Deleting SCM Statistics: "
 msgstr "Fehler beim Aufruf der Liste"
 
-#: common/include/Group.class.php:1839
+#: common/include/Group.class.php:1840
 #, fuzzy
 msgid "Could not properly delete the survey"
 msgstr "Die Mailingliste konnte nicht ordnungsgemäß gelöscht werden"
 
-#: common/include/Group.class.php:1854
+#: common/include/Group.class.php:1855
 #, fuzzy
 msgid "Could not properly delete the survey questions"
 msgstr "Die Mailingliste konnte nicht ordnungsgemäß gelöscht werden"
 
-#: common/include/Group.class.php:1869
+#: common/include/Group.class.php:1870
 #: plugins/mailman/include/mailmanPlugin.class.php:201
 msgid "Could not properly delete the mailing list"
 msgstr "Die Mailingliste konnte nicht ordnungsgemäß gelöscht werden"
 
-#: common/include/Group.class.php:1880 common/include/Group.class.php:1888
+#: common/include/Group.class.php:1881 common/include/Group.class.php:1889
 #, fuzzy
 msgid "Error Deleting Trove: "
 msgstr "Fehler beim Erstellen einer Gruppe"
 
-#: common/include/Group.class.php:1899
+#: common/include/Group.class.php:1900
 #, fuzzy
 msgid "Error Deleting Counters: "
 msgstr "Fehler beim Erstellen einer Forennachricht:"
 
-#: common/include/Group.class.php:1909 common/include/Group.class.php:1917
+#: common/include/Group.class.php:1910 common/include/Group.class.php:1918
 #, fuzzy
 msgid "Error Deleting Project:"
 msgstr "Fehler beim Erstellen des Mitarbeiter-Objektes: %s"
 
-#: common/include/Group.class.php:1997
+#: common/include/Group.class.php:1998
 msgid "User is not active. Only active users can be added."
 msgstr ""
 "Der Nutzer ist nicht aktiv. Nur aktive Nutzer können hinzugefügt werden."
 
-#: common/include/Group.class.php:2009 common/include/Group.class.php:2106
+#: common/include/Group.class.php:2010 common/include/Group.class.php:2107
 msgid "Error Getting Role Object"
 msgstr "Kann Rollen-Objekt nicht holen"
 
-#: common/include/Group.class.php:2066
+#: common/include/Group.class.php:2067
 #, php-format
 msgid "ERROR: Could Not Add User To Group: %s"
 msgstr "Fehler: Konnte Nutzer nicht zur Gruppe: %s hinzufügen"
 
-#: common/include/Group.class.php:2135
+#: common/include/Group.class.php:2136
 msgid "ERROR: User does not exist"
 msgstr "Fehler: Der Nutzer existiert nicht"
 
-#: common/include/Group.class.php:2184 common/include/Group.class.php:2200
-#: common/include/Group.class.php:2316
+#: common/include/Group.class.php:2185 common/include/Group.class.php:2201
+#: common/include/Group.class.php:2317
 #, php-format
 msgid "ERROR: User not removed: %s"
 msgstr "Fehler: Der Nutzer: %s wurde nicht entfernt"
 
-#: common/include/Group.class.php:2217
+#: common/include/Group.class.php:2218
 #, fuzzy
 msgid "ERROR: DB: artifact:"
 msgstr "Fehler: Datenbank: artifact: %s"
 
-#: common/include/Group.class.php:2238 common/include/Group.class.php:2251
+#: common/include/Group.class.php:2239 common/include/Group.class.php:2252
 #, php-format
 msgid "ERROR: DB: project_assigned_to %d: %s"
 msgstr "Fehler: Datenbank: project_assigned_to %d: %s"
 
-#: common/include/Group.class.php:2296 common/include/Group.class.php:2325
+#: common/include/Group.class.php:2297 common/include/Group.class.php:2326
 #: www/admin/globalroledelete.php:37 www/admin/globalroleedit.php:41
 #: www/project/admin/roledelete.php:46 www/project/admin/roleedit.php:80
 msgid "Could Not Get Role"
 msgstr "Konnte die Rolle nicht bekommen"
 
-#: common/include/Group.class.php:2299 common/include/Group.class.php:2328
-#: common/include/Group.class.php:2333
+#: common/include/Group.class.php:2300 common/include/Group.class.php:2329
+#: common/include/Group.class.php:2334
 #, php-format
 msgid "Role: %s"
 msgstr "Rolle: %s"
 
-#: common/include/Group.class.php:2303
+#: common/include/Group.class.php:2304
 msgid "Wrong destination role"
 msgstr "Falsche Zielrolle"
 
-#: common/include/Group.class.php:2437
+#: common/include/Group.class.php:2438
 msgid "Group already active"
 msgstr "Diese Gruppe ist bereits aktiv."
 
-#: common/include/Group.class.php:2697 common/include/Group.class.php:2776
+#: common/include/Group.class.php:2698 common/include/Group.class.php:2779
 msgid "Group does not have any administrators."
 msgstr "Diese Gruppe besitzt keinen Administrator."
 
-#: common/include/Group.class.php:2705
+#: common/include/Group.class.php:2706
 #, php-format
 msgid ""
 "Your project registration for %4$s has been approved.\n"
@@ -2019,12 +2015,12 @@
 "\n"
 "-- Die %4$s Leitung"
 
-#: common/include/Group.class.php:2741
+#: common/include/Group.class.php:2743
 #, php-format
 msgid "%1$s Project Approved"
 msgstr "%1$s Projekt genehmigt"
 
-#: common/include/Group.class.php:2783
+#: common/include/Group.class.php:2786
 #, php-format
 msgid ""
 "Your project registration for %3$s has been denied.\n"
@@ -2043,21 +2039,21 @@
 "Gründe für die negative Entscheidung:\n"
 "\n"
 
-#: common/include/Group.class.php:2802
+#: common/include/Group.class.php:2806
 #, php-format
 msgid "%1$s Project Denied"
 msgstr "%1$s Projekt abgelehnt"
 
-#: common/include/Group.class.php:2834
+#: common/include/Group.class.php:2839
 msgid "Could not find user who has submitted the project."
 msgstr "Der Nutzer, der das Projekt anlegte, konnte nicht gefunden werden."
 
-#: common/include/Group.class.php:2841
+#: common/include/Group.class.php:2846
 #, fuzzy
 msgid "There is no administrator to send the mail to."
 msgstr "Konnte keinen Administrator finden, dem die Mail zugesandt werden kann"
 
-#: common/include/Group.class.php:2853
+#: common/include/Group.class.php:2858
 #, fuzzy, php-format
 msgid ""
 "New %1$s Project Submitted\n"
@@ -2075,12 +2071,12 @@
 "abzuweisen:\n"
 "%4$s "
 
-#: common/include/Group.class.php:2863
+#: common/include/Group.class.php:2868
 #, fuzzy, php-format
 msgid "Submitter: %1$s (%2$s)\n"
 msgstr "Gepostet von %1$s (%2$s)"
 
-#: common/include/Group.class.php:2869
+#: common/include/Group.class.php:2874
 #, php-format
 msgid ""
 "\n"
@@ -2092,12 +2088,12 @@
 "verwerfen:\n"
 "%1$s"
 
-#: common/include/Group.class.php:2873 common/include/Group.class.php:2888
+#: common/include/Group.class.php:2879 common/include/Group.class.php:2900
 #, php-format
 msgid "New %1$s Project Submitted"
 msgstr "Neues %1$s Projekt vorgeschlagen"
 
-#: common/include/Group.class.php:2881
+#: common/include/Group.class.php:2888
 #, php-format
 msgid ""
 "New %1$s Project Submitted\n"
@@ -2116,43 +2112,43 @@
 "Das %1$s-Admin-Team wird jetzt Ihre Projekt-Anmeldung überprüfen. Sie werden "
 "über deren Entscheidung benachrichtigt."
 
-#: common/include/Group.class.php:2906
+#: common/include/Group.class.php:2919
 msgid "Group name is too short"
 msgstr "Der Gruppenname ist zu kurz"
 
-#: common/include/Group.class.php:2909
+#: common/include/Group.class.php:2922
 msgid "Group name is too long"
 msgstr "Der Gruppenname ist zu lang"
 
-#: common/include/Group.class.php:2912
+#: common/include/Group.class.php:2925
 msgid "Group name already taken"
 msgstr "Der Gruppenname wird bereits verwendet"
 
-#: common/include/Group.class.php:3003
+#: common/include/Group.class.php:3016
 #, php-format
 msgid "ERROR - Could Not Update Group Unix Status: %s"
 msgstr "Fehler - Konnte den Unix Gruppen Status nicht aktualisieren: %s"
 
-#: common/include/Group.class.php:3062
+#: common/include/Group.class.php:3075
 msgid "Error: Enable to get users from group"
 msgstr "Fehler: Unmöglich die Benutzer der Gruppe anzuzeigen"
 
-#: common/include/Group.class.php:3083
+#: common/include/Group.class.php:3096
 #, fuzzy, php-format
 msgid "ERROR - Could Not Update Group DocmanCreateOnline Status: %s"
 msgstr "Fehler - Konnte den Unix Gruppen Status nicht aktualisieren: %s"
 
-#: common/include/Group.class.php:3101
+#: common/include/Group.class.php:3114
 #, fuzzy, php-format
 msgid "ERROR - Could Not Update Group UseWebdab Status: %s"
 msgstr "Fehler - Konnte den Unix Gruppen Status nicht aktualisieren: %s"
 
-#: common/include/Group.class.php:3119
+#: common/include/Group.class.php:3132
 #, fuzzy, php-format
 msgid "ERROR - Could Not Update Group UseDocmanSearch Status: %s"
 msgstr "Fehler - Konnte den Unix Gruppen Status nicht aktualisieren: %s"
 
-#: common/include/Group.class.php:3137
+#: common/include/Group.class.php:3150
 #, fuzzy, php-format
 msgid "ERROR - Could Not Update Group force_docman_reindex %s"
 msgstr "Fehler - Konnte den Unix Gruppen Status nicht aktualisieren: %s"
@@ -2915,39 +2911,39 @@
 msgid "locale-dependent-default-datepick-format"
 msgstr "dmy_de"
 
-#: common/include/descriptive.php:78
+#: common/include/descriptive.php:80
 msgid "Sort comments antichronologically"
 msgstr "Sortiere Kommentare, neueste zuerst"
 
-#: common/include/descriptive.php:81
+#: common/include/descriptive.php:83
 msgid "Sort comments chronologically"
 msgstr "Sortiere Kommentare, älteste zuerst"
 
-#: common/include/descriptive.php:132
+#: common/include/descriptive.php:134
 #: www/search/include/renderers/SkillHtmlSearchRenderer.class.php:48
 #: www/tracker/admin/form-workflow.php:61
 msgid "From"
 msgstr "Von"
 
-#: common/include/descriptive.php:229 common/include/descriptive.php:230
+#: common/include/descriptive.php:231 common/include/descriptive.php:232
 msgid "Click to edit"
 msgstr "Klicken zum Bearbeiten"
 
-#: common/include/descriptive.php:285
+#: common/include/descriptive.php:287
 msgid "Write a comment"
 msgstr "Einen Kommentar verfassen"
 
-#: common/include/descriptive.php:541
+#: common/include/descriptive.php:543
 #, php-format
 msgid "%s (Task)"
 msgstr "%s (Task/Aufgabe)"
 
-#: common/include/descriptive.php:546
+#: common/include/descriptive.php:548
 #, php-format
 msgid "%s (Bug/FR)"
 msgstr "%s (Bug/FR)"
 
-#: common/include/descriptive.php:551
+#: common/include/descriptive.php:553
 #, php-format
 msgid "%s (Forum Message)"
 msgstr "%s (Forumnachricht)"
@@ -3076,7 +3072,7 @@
 #: common/include/rbac_texts.php:43 common/include/rbac_texts.php:55
 #: common/include/rbac_texts.php:58 common/include/rbac_texts.php:60
 #: common/include/rbac_texts.php:62
-#: plugins/mediawiki/common/MediaWikiPlugin.class.php:229
+#: plugins/mediawiki/common/MediaWikiPlugin.class.php:232
 #, fuzzy
 msgid "No administrative access"
 msgstr "verwaltend"
@@ -3107,7 +3103,7 @@
 msgstr "Genehmigen"
 
 #: common/include/rbac_texts.php:50
-#: plugins/mediawiki/common/MediaWikiPlugin.class.php:209
+#: plugins/mediawiki/common/MediaWikiPlugin.class.php:212
 #, fuzzy
 msgid "Read access"
 msgstr "Kein Zugang"
@@ -3415,11 +3411,11 @@
 msgid "Account Not Active"
 msgstr "Account nicht aktiv"
 
-#: common/include/session.php:419
+#: common/include/session.php:430
 msgid "Your account is no longer active ; you have been disconnected"
 msgstr "Ihr Account ist nicht mehr aktiv; ihre Verbindung wurde unterbrochen"
 
-#: common/include/session.php:472
+#: common/include/session.php:483
 #, fuzzy, php-format
 msgid ""
 "Permission denied. The %s administrators will have to grant you permission "
@@ -3427,34 +3423,34 @@
 msgstr ""
 "Dieser Projekt-Administrator muß Sie berechtigen, um diese Seite zu sehen."
 
-#: common/include/session.php:528
+#: common/include/session.php:539
 #, fuzzy
 msgid "Could not fetch user session data"
 msgstr "Zugriff nicht erhalten."
 
-#: common/include/session.php:556
+#: common/include/session.php:567
 msgid "No admin users ?"
 msgstr "Keine administrativen Benutzer?"
 
-#: common/include/utils.php:178
+#: common/include/utils.php:180
 msgid "UTF-8"
 msgstr "UTF-8"
 
-#: common/include/utils.php:542
+#: common/include/utils.php:544
 msgid "Priority Colors"
 msgstr "Prioritätsfarben"
 
-#: common/include/utils.php:1242
+#: common/include/utils.php:1244
 #, fuzzy
 msgid "Error: a mailing list with the same email address already exists."
 msgstr "Ein Benutzer mit dieser Email-Adresse existiert bereits."
 
-#: common/include/utils.php:1258
+#: common/include/utils.php:1260
 #, fuzzy
 msgid "Error: a forum with the same email address already exists."
 msgstr "Ein Benutzer mit dieser Email-Adresse existiert bereits."
 
-#: common/include/utils.php:1500
+#: common/include/utils.php:1497
 msgid "Internal Error: Could not read from random device"
 msgstr "Interner Fehler: Kann nicht vom Zufallsgenerator lesen"
 
@@ -3824,7 +3820,7 @@
 msgid "Artifact: Only group members can view private artifact types"
 msgstr "Produkt: Nur Gruppenmitglieder können private Produkttypen sehen"
 
-#: common/tracker/Artifact.class.php:206 common/tracker/Artifact.class.php:749
+#: common/tracker/Artifact.class.php:206 common/tracker/Artifact.class.php:751
 #: www/tracker/tracker.php:96 www/tracker/tracker.php:294
 msgid ""
 "Artifact: This ArtifactType Does Not Allow Anonymous Submissions. Please "
@@ -3840,23 +3836,23 @@
 msgid "Artifact: Message Body Is Required"
 msgstr "Gegenstand: Rumpf der Nachricht erforderlich"
 
-#: common/tracker/Artifact.class.php:240
+#: common/tracker/Artifact.class.php:241
 msgid "Artifact: Error remapping status"
 msgstr "Artifact: Fehler bom remapStatus"
 
-#: common/tracker/Artifact.class.php:582
+#: common/tracker/Artifact.class.php:583
 msgid "SetMonitor::Valid Email Address Required"
 msgstr "SetMonitor::Gültige Email-Adresse benötigt"
 
-#: common/tracker/Artifact.class.php:600
+#: common/tracker/Artifact.class.php:601
 msgid "Now Monitoring Artifact"
 msgstr "Beobachtung aktiviert"
 
-#: common/tracker/Artifact.class.php:610
+#: common/tracker/Artifact.class.php:611
 msgid "Artifact Monitoring Deactivated"
 msgstr "Beobachtung deaktiviert"
 
-#: common/tracker/Artifact.class.php:1143
+#: common/tracker/Artifact.class.php:1146
 msgid "Nothing Changed - Update Cancelled"
 msgstr "Keine Änderungen - Aktualisierung abgebrochen"
 
@@ -4047,14 +4043,14 @@
 msgstr "Abschicken"
 
 #: common/widget/WidgetLayoutManager.class.php:242
-#: common/widget/WidgetLayoutManager.class.php:246 www/include/html.php:915
-#: www/include/project_home.php:73 www/widgets/widgets.php:73
+#: common/widget/WidgetLayoutManager.class.php:246 www/include/html.php:921
+#: www/include/project_home.php:67 www/widgets/widgets.php:73
 #, fuzzy
 msgid "Add widgets"
 msgstr "Datum hinzufügen"
 
 #: common/widget/WidgetLayoutManager.class.php:243
-#: common/widget/WidgetLayoutManager.class.php:247 www/include/html.php:919
+#: common/widget/WidgetLayoutManager.class.php:247 www/include/html.php:925
 #: www/widgets/widgets.php:71
 #, fuzzy
 msgid "Customize layout"
@@ -4470,7 +4466,7 @@
 
 #: common/widget/Widget_ProjectLatestFileReleases.class.php:67
 #: common/widget/Widget_ProjectLatestFileReleases.class.php:143
-#: plugins/mediawiki/www/plugin_admin.php:203 www/new/index.php:119
+#: plugins/mediawiki/www/plugin_admin.php:161 www/new/index.php:119
 msgid "Download"
 msgstr "Download"
 
@@ -4525,7 +4521,7 @@
 msgid "Project Admins"
 msgstr "Projektbetreuer"
 
-#: common/widget/Widget_ProjectMembers.class.php:74 www/admin/grouplist.php:95
+#: common/widget/Widget_ProjectMembers.class.php:74
 msgid "Members"
 msgstr "Mitglieder"
 
@@ -4954,7 +4950,7 @@
 msgstr "Attribute"
 
 #: plugins/contribtracker/common/ContribTrackerPlugin.class.php:112
-#: www/project/admin/massfinish.php:80 www/project/admin/users.php:316
+#: www/project/admin/massfinish.php:80 www/project/admin/users.php:317
 msgid "Role"
 msgstr "Rolle"
 
@@ -6030,7 +6026,8 @@
 #: plugins/globalsearch/common/globalsearch_edit_utils.php:233
 #: plugins/mailman/www/admin/index.php:148
 #: plugins/mailman/www/admin/index.php:180 www/admin/groupedit.php:159
-#: www/admin/groupedit.php:180 www/forum/admin/index.php:109
+#: www/admin/groupedit.php:180 www/admin/grouplist.php:194
+#: www/admin/grouplist.php:197 www/forum/admin/index.php:109
 #: www/forum/admin/index.php:114 www/forum/admin/index.php:153
 #: www/forum/admin/index.php:158 www/forum/admin/index.php:237
 #: www/mail/admin/index.php:191 www/mail/admin/index.php:222
@@ -6047,7 +6044,8 @@
 #: plugins/globalsearch/common/globalsearch_edit_utils.php:233
 #: plugins/mailman/www/admin/index.php:149
 #: plugins/mailman/www/admin/index.php:181 www/admin/groupedit.php:158
-#: www/admin/groupedit.php:179 www/forum/admin/index.php:110
+#: www/admin/groupedit.php:179 www/admin/grouplist.php:194
+#: www/admin/grouplist.php:197 www/forum/admin/index.php:110
 #: www/forum/admin/index.php:115 www/forum/admin/index.php:154
 #: www/forum/admin/index.php:159 www/forum/admin/index.php:238
 #: www/mail/admin/index.php:192 www/mail/admin/index.php:223
@@ -6765,7 +6763,7 @@
 #: plugins/mailman/include/mailmanPlugin.class.php:155
 #: www/admin/globalroleedit.php:150 www/admin/globalroleedit.php:165
 #: www/admin/globalroleedit.php:175 www/include/Layout.class.php:1275
-#: www/my/rmproject.php:92 www/project/admin/users.php:360
+#: www/my/rmproject.php:92 www/project/admin/users.php:364
 msgid "Remove"
 msgstr "Entfernen"
 
@@ -7129,71 +7127,71 @@
 msgid "You are not Admin of this project"
 msgstr "Sie sind bereits Mitglied dieses Projekts. "
 
-#: plugins/mediawiki/common/MediaWikiPlugin.class.php:207
+#: plugins/mediawiki/common/MediaWikiPlugin.class.php:210
 msgid "Mediawiki read access"
 msgstr "MediaWiki Lesezugriff"
 
-#: plugins/mediawiki/common/MediaWikiPlugin.class.php:208
+#: plugins/mediawiki/common/MediaWikiPlugin.class.php:211
 msgid "No reading"
 msgstr "Nicht lesen"
 
-#: plugins/mediawiki/common/MediaWikiPlugin.class.php:213
+#: plugins/mediawiki/common/MediaWikiPlugin.class.php:216
 msgid "Mediawiki write access"
 msgstr "MediaWiki Schreibzugriff"
 
-#: plugins/mediawiki/common/MediaWikiPlugin.class.php:214
+#: plugins/mediawiki/common/MediaWikiPlugin.class.php:217
 msgid "No editing"
 msgstr "Nicht bearbeiten"
 
-#: plugins/mediawiki/common/MediaWikiPlugin.class.php:215
+#: plugins/mediawiki/common/MediaWikiPlugin.class.php:218
 msgid "Edit existing pages only"
 msgstr "Bestehende Seiten bearbeiten"
 
-#: plugins/mediawiki/common/MediaWikiPlugin.class.php:216
+#: plugins/mediawiki/common/MediaWikiPlugin.class.php:219
 msgid "Edit and create pages"
 msgstr "Bearbeiten und neue Seiten erstellen"
 
-#: plugins/mediawiki/common/MediaWikiPlugin.class.php:217
+#: plugins/mediawiki/common/MediaWikiPlugin.class.php:220
 msgid "Edit, create, move pages"
 msgstr "Bearbeiten, Seiten verschieben, neue Seiten erstellen"
 
-#: plugins/mediawiki/common/MediaWikiPlugin.class.php:221
+#: plugins/mediawiki/common/MediaWikiPlugin.class.php:224
 msgid "Mediawiki file upload"
 msgstr "Mediawiki Dateien hochladen"
 
-#: plugins/mediawiki/common/MediaWikiPlugin.class.php:222
+#: plugins/mediawiki/common/MediaWikiPlugin.class.php:225
 msgid "No uploading"
 msgstr "Keine Upload-Rechte"
 
-#: plugins/mediawiki/common/MediaWikiPlugin.class.php:223
+#: plugins/mediawiki/common/MediaWikiPlugin.class.php:226
 msgid "Upload permitted"
 msgstr "Upload-Rechte (neue Dateien)"
 
-#: plugins/mediawiki/common/MediaWikiPlugin.class.php:224
+#: plugins/mediawiki/common/MediaWikiPlugin.class.php:227
 msgid "Upload and re-upload"
 msgstr "Upload und bestehende Dateien ersetzen"
 
-#: plugins/mediawiki/common/MediaWikiPlugin.class.php:228
+#: plugins/mediawiki/common/MediaWikiPlugin.class.php:231
 msgid "Mediawiki administrative tasks"
 msgstr "MediaWiki Administrationsaufgaben"
 
-#: plugins/mediawiki/common/MediaWikiPlugin.class.php:230
+#: plugins/mediawiki/common/MediaWikiPlugin.class.php:233
 msgid "Edit interface, import XML dumps"
 msgstr "Sidebar bearbeiten, XML-Dumps importieren"
 
-#: plugins/mediawiki/common/MediaWikiPlugin.class.php:234
+#: plugins/mediawiki/common/MediaWikiPlugin.class.php:237
 msgid "Mediawiki remove pages from history"
 msgstr "MediaWiki Seiten aus der Historië entfernen"
 
-#: plugins/mediawiki/common/MediaWikiPlugin.class.php:236
+#: plugins/mediawiki/common/MediaWikiPlugin.class.php:239
 msgid "No irreversible deletion"
 msgstr "Keine unwiderrufliche Löschung"
 
-#: plugins/mediawiki/common/MediaWikiPlugin.class.php:237
+#: plugins/mediawiki/common/MediaWikiPlugin.class.php:240
 msgid "Delete pages from history and undelete them"
 msgstr "Seiten unwiderruflich löschen"
 
-#: plugins/mediawiki/common/MediaWikiPlugin.class.php:374
+#: plugins/mediawiki/common/MediaWikiPlugin.class.php:377
 msgid "MediaWiki Plugin admin"
 msgstr "MediaWiki Plugin-Administration"
 
@@ -7271,81 +7269,41 @@
 #: plugins/mediawiki/www/plugin_admin.php:124
 #: www/frs/include/frs_utils.php:223 www/frs/include/frs_utils.php:261
 msgid "Unknown file upload error."
-msgstr "Unbekannter Dateihochlade Fehler."
+msgstr "Unbekannter Fehler beim Hochladen einer Datei."
 
-#: plugins/mediawiki/www/plugin_admin.php:146
+#: plugins/mediawiki/www/plugin_admin.php:138
 #, php-format
-msgid "Error making the wiki %s!"
-msgstr "Fehler: konnte das Wiki nicht %s machen!"
+msgid "MediaWiki Plugin Admin for %s"
+msgstr "MediaWiki Plugin-Administration für das %s-Projekt"
 
-#: plugins/mediawiki/www/plugin_admin.php:148
-#, php-format
-msgid "Made the wiki %s successfully."
-msgstr "Wiki erfolgreich %s gemacht."
-
-#: plugins/mediawiki/www/plugin_admin.php:162
-msgid "Public Visibility"
-msgstr "Sichtbarkeit:"
-
-#: plugins/mediawiki/www/plugin_admin.php:171
-#, php-format
-msgid ""
-"This wiki is currently not private, that is, readable to non-logged-in users "
-"and indexed by the search engine."
-msgstr ""
-"Dieses Wiki ist zur Zeit nicht privat, also von nicht eingeloggten Nutzern "
-"lesbar und suchmaschinenindiziert."
-
-#: plugins/mediawiki/www/plugin_admin.php:174
-#, php-format
-msgid ""
-"This wiki is currently private, that is, not readable to non-logged-in users "
-"and not indexed by the search engine."
-msgstr ""
-"Dieses Wiki ist zur Zeit privat, also von nicht eingeloggten Nutzern nicht "
-"lesbar und nicht suchmaschinenindiziert."
-
-#: plugins/mediawiki/www/plugin_admin.php:179
-#, php-format
-msgid "Wiki for %s is private"
-msgstr "Wiki für %s ist privat"
-
-#: plugins/mediawiki/www/plugin_admin.php:180
-msgid "Change settings"
-msgstr "Einstellungen aktualisieren"
-
-#: plugins/mediawiki/www/plugin_admin.php:184
+#: plugins/mediawiki/www/plugin_admin.php:147
 msgid "Nightly XML dump"
 msgstr "Nächtlicher XML-Dump"
 
-#: plugins/mediawiki/www/plugin_admin.php:186
-msgid "XML dumps are not available for private wikis."
-msgstr "XML-Dumps sind nicht bei privaten Wikis verfügbar."
-
-#: plugins/mediawiki/www/plugin_admin.php:189
+#: plugins/mediawiki/www/plugin_admin.php:150
 #, php-format
 msgid "<a href=\"%s\">Download</a> the nightly created XML dump (backup) here."
 msgstr ""
 "Lade den nächtlich erstellten <a href=\"%s\">XML-Dump (Backup)</a> hier "
 "herunter."
 
-#: plugins/mediawiki/www/plugin_admin.php:195
-msgid "Visibility information is not available yet."
-msgstr "Sichtbarkeitsinformation ist noch nicht verfügbar."
+#: plugins/mediawiki/www/plugin_admin.php:154
+msgid "XML dumps are not available for private wikis."
+msgstr "XML-Dumps sind nicht bei privaten Wikis verfügbar."
 
-#: plugins/mediawiki/www/plugin_admin.php:202
+#: plugins/mediawiki/www/plugin_admin.php:160
 msgid "Current logo:"
 msgstr "Aktuelles Logo:"
 
-#: plugins/mediawiki/www/plugin_admin.php:207
+#: plugins/mediawiki/www/plugin_admin.php:165
 msgid "No per-project logo currently installed."
 msgstr "Zur Zeit kein projektlokales Logo installiert."
 
-#: plugins/mediawiki/www/plugin_admin.php:215
+#: plugins/mediawiki/www/plugin_admin.php:173
 msgid "Upload a new logo"
 msgstr "Ein neues Logo hochladen"
 
-#: plugins/mediawiki/www/plugin_admin.php:217
+#: plugins/mediawiki/www/plugin_admin.php:175
 msgid ""
 "NOTE: In some browsers you must select the file in the file-upload dialog "
 "and click \"OK\".  Double-clicking doesn't register the file."
@@ -7354,12 +7312,12 @@
 "auswählen und dann auf \"OK\" klicken. Ein Doppelklick wählt die Datei nicht "
 "aus."
 
-#: plugins/mediawiki/www/plugin_admin.php:219
+#: plugins/mediawiki/www/plugin_admin.php:177
 #: www/frs/admin/editrelease.php:287 www/frs/admin/qrs.php:201
 msgid "Upload a new file"
 msgstr "Eine neue Datei hochladen"
 
-#: plugins/mediawiki/www/plugin_admin.php:226
+#: plugins/mediawiki/www/plugin_admin.php:184
 #: www/frs/admin/editrelease.php:302 www/frs/admin/qrs.php:217
 #, php-format
 msgid ""
@@ -7370,7 +7328,7 @@
 "\"%2$s\">incoming-Verzeichnis (%1$s) des Projektes</a> hochgeladen wurde, "
 "auswählen."
 
-#: plugins/mediawiki/www/plugin_admin.php:228
+#: plugins/mediawiki/www/plugin_admin.php:186
 #: www/frs/admin/editrelease.php:304 www/frs/admin/qrs.php:219
 msgid ""
 "This direct <tt>sftp://</tt> link only works with some browsers, such as "
@@ -7379,17 +7337,17 @@
 "Dieser direkte <tt>sftp://</tt>-Link funktioniert nur mit manchen Browsern, "
 "zum Beispiel Konqueror."
 
-#: plugins/mediawiki/www/plugin_admin.php:229
+#: plugins/mediawiki/www/plugin_admin.php:187
 #: www/frs/admin/editrelease.php:292 www/frs/admin/editrelease.php:305
 #: www/frs/admin/qrs.php:220
 msgid "Choose an already uploaded file:"
 msgstr "Bereits hochgeladene Datei wählen:"
 
-#: plugins/mediawiki/www/plugin_admin.php:235
+#: plugins/mediawiki/www/plugin_admin.php:193
 msgid "… or delete the currently uploaded logo and revert to the site default"
 msgstr "… oder das zur Zeit aktive Logo löschen und zum Standard revertieren"
 
-#: plugins/mediawiki/www/plugin_admin.php:236
+#: plugins/mediawiki/www/plugin_admin.php:194
 msgid "Upload new logo"
 msgstr "Neues Logo hochladen"
 
@@ -9199,7 +9157,7 @@
 msgstr "Aktualisiert"
 
 #: www/account/index.php:101 www/account/index.php:106
-#: www/include/html.php:934
+#: www/include/html.php:940
 msgid "Account Maintenance"
 msgstr "Accountverwaltung"
 
@@ -9996,7 +9954,7 @@
 msgstr "Füge diese Standardantwort zu den vorgespeicherten Antworten hinzu"
 
 #: www/admin/approve-pending.php:161 www/admin/pending-news.php:152
-#: www/project/admin/users.php:263
+#: www/project/admin/users.php:264
 msgid "Reject"
 msgstr "Ablehnen"
 
@@ -10211,7 +10169,7 @@
 msgstr "Aktuelle Version"
 
 #: www/admin/globalroleedit.php:149 www/admin/search.php:90
-#: www/admin/unsubscribe.php:113 www/project/admin/users.php:315
+#: www/admin/unsubscribe.php:113 www/project/admin/users.php:316
 #: www/search/include/renderers/PeopleHtmlSearchRenderer.class.php:44
 #: www/top/topusers.php:63
 msgid "User name"
@@ -10254,7 +10212,7 @@
 msgstr "Einstellungen"
 
 #: www/admin/globalroleedit.php:254 www/admin/globalroleedit.php:256
-#: www/project/admin/users.php:453
+#: www/project/admin/users.php:457
 #, fuzzy
 msgid "Delete role"
 msgstr "Datei löschen"
@@ -10318,11 +10276,11 @@
 "%3$s>give<%4$s> it “Project visibility” permissions."
 msgstr ""
 
-#: www/admin/groupedit.php:148 www/admin/grouplist.php:93
+#: www/admin/groupedit.php:148 www/admin/grouplist.php:36
 msgid "Public?"
 msgstr "Öffentlich?"
 
-#: www/admin/groupedit.php:169 www/admin/grouplist.php:96
+#: www/admin/groupedit.php:169 www/admin/grouplist.php:39
 #, fuzzy
 msgid "Template?"
 msgstr "Template auswählen"
@@ -10339,35 +10297,38 @@
 msgid "Resend New Project Instruction Email"
 msgstr "Sende erneut neue Email mit Projekt-Anweisungen"
 
-#: www/admin/grouplist.php:27 www/include/Layout.class.php:1351
-#: www/themes/evolvis/Theme.class.php:537
-msgid "Project List"
-msgstr "Projektliste"
-
-#: www/admin/grouplist.php:52
-#, fuzzy
-msgid "Projects that begin with"
-msgstr "Gruppen, die anfangen mit"
-
-#: www/admin/grouplist.php:89
-#, fuzzy
+#: www/admin/grouplist.php:32
 msgid "Project Name (click to edit)"
-msgstr "Gruppen-Name (anklicken zum Bearbeiten)"
+msgstr "Projektname (anklicken zum Bearbeiten)"
 
-#: www/admin/grouplist.php:90
+#: www/admin/grouplist.php:33
 msgid "Register Time"
-msgstr "Registrierungszeit"
+msgstr "Registrierungszeitpunkt"
 
-#: www/admin/grouplist.php:91 www/admin/search.php:168
-#: www/admin/useredit.php:235 www/project/admin/massadd.php:91
+#: www/admin/grouplist.php:34 www/admin/search.php:168
+#: www/admin/useredit.php:235 www/project/admin/massadd.php:111
 #: www/project/admin/massfinish.php:79
 msgid "Unix name"
-msgstr "Unix-Name"
+msgstr "Unix-Gruppenname"
 
-#: www/admin/grouplist.php:94 www/snippet/submit.php:119
-msgid "License"
+#: www/admin/grouplist.php:37
+msgid "Licence"
 msgstr "Lizenz"
 
+#: www/admin/grouplist.php:38
+msgid "Members#"
+msgstr "Zahl Mitglieder"
+
+#: www/admin/grouplist.php:201 www/include/Layout.class.php:1351
+#: www/themes/evolvis/Theme.class.php:567
+msgid "Project List"
+msgstr "Projektliste"
+
+#: www/admin/grouplist.php:206
+#, php-format
+msgid "Projects that begin with \"%s\""
+msgstr "Projekte, die mit \"%s\" anfangen"
+
 #: www/admin/index.php:46
 msgid "User Maintenance"
 msgstr "Benutzerverwaltung"
@@ -10413,7 +10374,7 @@
 msgid "Edit Role"
 msgstr "Rolle bearbeiten"
 
-#: www/admin/index.php:94 www/project/admin/users.php:478
+#: www/admin/index.php:94 www/project/admin/users.php:482
 #, fuzzy
 msgid "Create Role"
 msgstr "Erstellen"
@@ -10627,8 +10588,8 @@
 #: www/admin/massmail.php:136 www/admin/search.php:89 www/admin/search.php:167
 #: www/my/dashboard.php:61 www/pm/include/ProjectTaskHTML.class.php:114
 #: www/pm/index.php:99 www/project/admin/editimages.php:265
-#: www/tracker/admin/form-addcanned.php:41 www/tracker/browse.php:276
-#: www/tracker/browse.php:666 www/tracker/query.php:197
+#: www/tracker/admin/form-addcanned.php:41 www/tracker/browse.php:279
+#: www/tracker/browse.php:669 www/tracker/query.php:197
 msgid "ID"
 msgstr "ID"
 
@@ -10716,7 +10677,7 @@
 #: www/news/admin/index.php:133 www/pm/templates/detail_template.php:64
 #: www/search/include/renderers/ArtifactHtmlSearchRenderer.class.php:57
 #: www/search/include/renderers/TrackersHtmlSearchRenderer.class.php:50
-#: www/tracker/browse.php:695 www/tracker/item.php:201
+#: www/tracker/browse.php:698 www/tracker/item.php:201
 msgid "Submitted by"
 msgstr "Gepostet von"
 
@@ -10797,9 +10758,9 @@
 msgstr "Plugin Name"
 
 #: www/admin/pluginman.php:119 www/people/people_utils.php:158
-#: www/people/people_utils.php:299 www/project/admin/users.php:317
-#: www/project/admin/users.php:407 www/project/admin/users.php:495
-#: www/project/admin/users.php:519
+#: www/people/people_utils.php:299 www/project/admin/users.php:318
+#: www/project/admin/users.php:411 www/project/admin/users.php:499
+#: www/project/admin/users.php:523
 msgid "Action"
 msgstr "Aktion"
 
@@ -10911,7 +10872,7 @@
 msgstr[1] "Benutzer-Suche mit Merkmalen <em>%1$s</em>: %2$s Übereinstimmungen"
 
 #: www/admin/search.php:91 www/admin/unsubscribe.php:114
-#: www/admin/useredit.php:116 www/project/admin/massadd.php:90
+#: www/admin/useredit.php:116 www/project/admin/massadd.php:112
 #: www/project/admin/massfinish.php:78
 #: www/search/include/renderers/PeopleHtmlSearchRenderer.class.php:45
 #: www/top/topusers.php:64
@@ -12585,7 +12546,7 @@
 msgid "Display all public projects as trove tree"
 msgstr "Zeige vollständige Projektliste/Bearbeite Projekte"
 
-#: www/include/Layout.class.php:1353 www/themes/evolvis/Theme.class.php:538
+#: www/include/Layout.class.php:1353 www/themes/evolvis/Theme.class.php:568
 msgid "Display an alphabetically sorted list of all public projects"
 msgstr "Zeige eine alphabetisch sortierte Liste aller Projekte an"
 
@@ -12970,8 +12931,8 @@
 
 #: www/include/html.php:355 www/include/html.php:488 www/include/html.php:752
 #: www/pm/browse_task.php:584 www/pm/browse_task.php:609
-#: www/pm/browse_task.php:620 www/tracker/browse.php:867
-#: www/tracker/browse.php:875 www/tracker/browse.php:884
+#: www/pm/browse_task.php:620 www/tracker/browse.php:879
+#: www/tracker/browse.php:887 www/tracker/browse.php:896
 msgid "No Change"
 msgstr "Keine Änderung"
 
@@ -12983,25 +12944,25 @@
 msgid "Highest"
 msgstr "Höchstes"
 
-#: www/include/html.php:852
+#: www/include/html.php:855
 #, fuzzy, php-format
-msgid "Project access problem: %s"
-msgstr "Projekt Ressourcennutzung"
+msgid "Could not access the project #%d"
+msgstr "Konnte kein Foren-Objekt einholen"
 
-#: www/include/html.php:854
+#: www/include/html.php:859
 #, fuzzy, php-format
-msgid "Project Problem: %s"
-msgstr "Projekt %s"
+msgid "Error accessing the project #%d: %s"
+msgstr "Fehler bei der Aktualisierung der Projekt- Informationen: %s"
 
-#: www/include/html.php:907 www/my/bookmark_add.php:28
+#: www/include/html.php:913 www/my/bookmark_add.php:28
 msgid "My Personal Page"
 msgstr "Meine persönliche Seite"
 
-#: www/include/html.php:909 www/themes/evolvis/Theme.class.php:121
+#: www/include/html.php:915 www/themes/evolvis/Theme.class.php:121
 msgid "Manage projects, assigned tasks, bugs, etc."
 msgstr "Bearbeite Projekte, stelle Aufgaben, Fehler, usw."
 
-#: www/include/html.php:917
+#: www/include/html.php:923
 #, fuzzy
 msgid ""
 "Select widgets to add to the User Summary page from a list of available "
@@ -13010,36 +12971,36 @@
 "Wähle Widgets die zur Projektaufstellung hinzugefügt werden aus einer Liste "
 "verfügbarer Widgets"
 
-#: www/include/html.php:921 www/include/project_home.php:82
+#: www/include/html.php:927 www/include/project_home.php:76
 msgid "Customise number and sizes of columns to use for widgets"
 msgstr ""
 "Benutzerdefinierte Anzahl und Größe der Spalten die in Widgets verwendet "
 "werden."
 
-#: www/include/html.php:924
+#: www/include/html.php:930
 #, fuzzy
 msgid "Trackers dashboard"
 msgstr "Tracker aktualisiert"
 
-#: www/include/html.php:926
+#: www/include/html.php:932
 msgid "Have an overview about all tracker items related to you"
 msgstr ""
 "Erhalten sie einen Überblick über alle Tracker-Objekte die für sie relevant "
 "sind"
 
-#: www/include/html.php:929
+#: www/include/html.php:935
 msgid "Diary & Notes"
 msgstr "Terminkalender & Notizen"
 
-#: www/include/html.php:931
+#: www/include/html.php:937
 msgid "-tooltip:diary-and-notes"
 msgstr ""
 
-#: www/include/html.php:936
+#: www/include/html.php:942
 msgid "Change the password, SSH keys; configure account settings"
 msgstr "Paßwort, SSH-Schlüssel ändern; Benutzerkonteneinstellungen ändern"
 
-#: www/include/html.php:1274 www/notepad.php:48
+#: www/include/html.php:1277 www/notepad.php:48
 msgid "FusionForge Notepad"
 msgstr "FusionForge Notizblock"
 
@@ -13048,12 +13009,12 @@
 msgid "Project Home"
 msgstr "Projektname"
 
-#: www/include/project_home.php:74
+#: www/include/project_home.php:68
 #, fuzzy
 msgid "Customise Layout"
 msgstr "Anpassbares Feld Gelöscht"
 
-#: www/include/project_home.php:81
+#: www/include/project_home.php:75
 msgid ""
 "Select widgets to add to the Project Summary page from a list of available "
 "widgets"
@@ -13638,15 +13599,15 @@
 #: www/my/dashboard.php:69 www/pm/browse_task.php:219
 #: www/pm/browse_task.php:413 www/pm/browse_task.php:610
 #: www/pm/include/pm_columns.php:37 www/pm/templates/detail_template.php:20
-#: www/tracker/admin/form-customizelist.php:45 www/tracker/browse.php:277
-#: www/tracker/browse.php:688 www/tracker/browse.php:871
+#: www/tracker/admin/form-customizelist.php:45 www/tracker/browse.php:280
+#: www/tracker/browse.php:691 www/tracker/browse.php:883
 #: www/tracker/item.php:153 www/tracker/query.php:198
 msgid "Priority"
 msgstr "Priorität"
 
 #: www/my/dashboard.php:71 www/pm/browse_task.php:411
 #: www/pm/browse_task.php:617 www/pm/templates/detail_template.php:30
-#: www/tracker/browse.php:691 www/tracker/browse.php:874
+#: www/tracker/browse.php:694 www/tracker/browse.php:886
 #: www/tracker/item.php:167
 msgid "Assigned to"
 msgstr "Zugewiesen an"
@@ -14638,8 +14599,8 @@
 
 #: www/people/viewjob.php:80 www/pm/include/ProjectTaskHTML.class.php:118
 #: www/project/report/index.php:137
-#: www/tracker/admin/form-customizelist.php:43 www/tracker/browse.php:279
-#: www/tracker/browse.php:679 www/tracker/query.php:200
+#: www/tracker/admin/form-customizelist.php:43 www/tracker/browse.php:282
+#: www/tracker/browse.php:682 www/tracker/query.php:200
 msgid "Open Date"
 msgstr "Eröffnet am"
 
@@ -14813,7 +14774,7 @@
 "unwiderbringlich zu löschen!"
 
 #: www/pm/admin/index.php:403 www/pm/index.php:47 www/pm/task.php:95
-#: www/tracker/browse.php:93 www/tracker/taskmgr.php:151
+#: www/tracker/browse.php:96 www/tracker/taskmgr.php:151
 msgid "Could Not Get Factory"
 msgstr "Konnte nicht auf Factory zurgreifen"
 
@@ -14860,14 +14821,14 @@
 #: www/pm/browse_task.php:195 www/pm/browse_task.php:206
 #: www/pm/browse_task.php:296 www/pm/ganttpage.php:56 www/pm/ganttpage.php:58
 #: www/pm/ganttpage.php:60 www/pm/ganttpage.php:62
-#: www/reporting/usersummary.php:53 www/tracker/browse.php:264
-#: www/tracker/browse.php:343 www/tracker/browse.php:350
+#: www/reporting/usersummary.php:53 www/tracker/browse.php:267
+#: www/tracker/browse.php:346 www/tracker/browse.php:353
 #: www/tracker/query.php:346
 msgid "Any"
 msgstr "Alle"
 
 #: www/pm/browse_task.php:197 www/pm/browse_task.php:581
-#: www/pm/ganttpage.php:58 www/tracker/browse.php:269
+#: www/pm/ganttpage.php:58 www/tracker/browse.php:272
 msgid "Unassigned"
 msgstr "Nicht zugeordnet"
 
@@ -14899,7 +14860,7 @@
 msgstr "Unterprojekt"
 
 #: www/pm/browse_task.php:295 www/pm/ganttpage.php:155
-#: www/tracker/browse.php:282 www/tracker/browse.php:521
+#: www/tracker/browse.php:285 www/tracker/browse.php:524
 #: www/tracker/query.php:203 www/tracker/query.php:343
 msgid "Assignee"
 msgstr "Bearbeiter"
@@ -14929,7 +14890,7 @@
 msgid "Add tasks using the link above"
 msgstr "Fügen Sie Aufgaben hinzu, indem Sie auf den obigen Link klicken"
 
-#: www/pm/browse_task.php:351 www/tracker/browse.php:554
+#: www/pm/browse_task.php:351 www/tracker/browse.php:557
 #, php-format
 msgid "Displaying %d results."
 msgstr "Stelle %d Ergebnisse dar."
@@ -14982,7 +14943,7 @@
 msgid "Sub-Project"
 msgstr "Unterprojekt"
 
-#: www/pm/browse_task.php:565 www/tracker/browse.php:828
+#: www/pm/browse_task.php:565 www/tracker/browse.php:840
 msgid "Mass Update"
 msgstr "Massen-Update"
 
@@ -14994,7 +14955,7 @@
 msgid "Clear all"
 msgstr "Alle abwählen"
 
-#: www/pm/browse_task.php:604 www/tracker/browse.php:850
+#: www/pm/browse_task.php:604 www/tracker/browse.php:862
 msgid ""
 "<strong>Admin:</strong> If you wish to apply changes to all items selected "
 "above, use these controls to change their properties and click once on "
@@ -15008,7 +14969,7 @@
 msgid "Subproject"
 msgstr "Unterprojekt"
 
-#: www/pm/browse_task.php:626 www/tracker/browse.php:891
+#: www/pm/browse_task.php:626 www/tracker/browse.php:903
 msgid "Mass update"
 msgstr "Massen-Update"
 
@@ -15901,11 +15862,11 @@
 msgid "(send on all updates)"
 msgstr "(Bei allen Aktualisierungen senden)"
 
-#: www/project/admin/massadd.php:67 www/project/admin/users.php:298
+#: www/project/admin/massadd.php:68 www/project/admin/users.php:299
 msgid "Add Users From List"
 msgstr "Benutzer von der Liste hinzufügen"
 
-#: www/project/admin/massadd.php:71
+#: www/project/admin/massadd.php:72
 #, fuzzy
 msgid ""
 "Check the box next to the name of the user(s) you want to add. Your choices "
@@ -15917,7 +15878,7 @@
 "untenstehenden Buchstaben klicken. Wenn Sie fertig sind, klicken Sie auf "
 "\"Finish\" um den hinzuzufügenden Nutzern ihre Rollen zuzuweisen."
 
-#: www/project/admin/massadd.php:77
+#: www/project/admin/massadd.php:78
 #, fuzzy
 msgid ""
 "Choose the <strong>First Letter</strong> of the name of the person you wish "
@@ -15926,16 +15887,21 @@
 "<p>Wählen Sie den <strong>ersten Buchstaben</strong> des Namens der Person, "
 "die Sie hinzufügen wollen.</p>"
 
-#: www/project/admin/massadd.php:87 www/project/admin/users.php:104
+#: www/project/admin/massadd.php:88 www/project/admin/users.php:104
 #, fuzzy
 msgid "No Matching Users Found"
 msgstr "<p>Keine übereinstimmenden Benutzer gefunden</p>"
 
-#: www/project/admin/massadd.php:92
+#: www/project/admin/massadd.php:110
 msgid "Add user"
 msgstr "Nutzer hinzufügen"
 
-#: www/project/admin/massadd.php:116
+#: www/project/admin/massadd.php:124
+#, php-format
+msgid "%2$s, %1$s"
+msgstr "%1$s %2$s"
+
+#: www/project/admin/massadd.php:131
 msgid "Finish"
 msgstr "Fertig"
 
@@ -16097,7 +16063,7 @@
 msgid "Could Not Get RoleObserver"
 msgstr "Konnte die Rolle nicht bekommen"
 
-#: www/project/admin/roleedit.php:141 www/project/admin/users.php:486
+#: www/project/admin/roleedit.php:141 www/project/admin/users.php:490
 msgid "Edit Observer"
 msgstr "Bearbeite Beobachter"
 
@@ -16283,54 +16249,54 @@
 msgid "Pending Membership Requests"
 msgstr "Anstehende Anfragen"
 
-#: www/project/admin/users.php:261
+#: www/project/admin/users.php:262
 msgid "Accept"
 msgstr "Annehmen"
 
-#: www/project/admin/users.php:272 www/project/admin/users.php:274
-#: www/project/admin/users.php:293
+#: www/project/admin/users.php:273 www/project/admin/users.php:275
+#: www/project/admin/users.php:294
 #, fuzzy
 msgid "Add Member"
 msgstr "Mitglieder"
 
-#: www/project/admin/users.php:304
+#: www/project/admin/users.php:305
 #, fuzzy
 msgid "Current Project Members"
 msgstr "[Zeige/Bearbeite Projekt-Mitglieder]"
 
-#: www/project/admin/users.php:373
+#: www/project/admin/users.php:377
 msgid "Grant extra role"
 msgstr "weitere Rolle erteilen"
 
-#: www/project/admin/users.php:393 www/tracker/admin/form-workflow.php:119
+#: www/project/admin/users.php:397 www/tracker/admin/form-workflow.php:119
 msgid "Edit Roles"
 msgstr "Rollen bearbeiten"
 
-#: www/project/admin/users.php:405 www/project/admin/users.php:494
-#: www/project/admin/users.php:518
+#: www/project/admin/users.php:409 www/project/admin/users.php:498
+#: www/project/admin/users.php:522
 #, fuzzy
 msgid "Role name"
 msgstr "Rollenname"
 
-#: www/project/admin/users.php:435
+#: www/project/admin/users.php:439
 #, fuzzy
 msgid "Edit Permissions"
 msgstr "Berechtigungen aktualisiert"
 
-#: www/project/admin/users.php:492
+#: www/project/admin/users.php:496
 msgid "Currently used external roles"
 msgstr "zur Zeit benutzte externe Rolle"
 
-#: www/project/admin/users.php:507
+#: www/project/admin/users.php:511
 #, fuzzy
 msgid "Unlink Role"
 msgstr "Rolle bearbeiten"
 
-#: www/project/admin/users.php:516
+#: www/project/admin/users.php:520
 msgid "Available external roles"
 msgstr "Verfügbare externe Rollen"
 
-#: www/project/admin/users.php:537
+#: www/project/admin/users.php:541
 #, fuzzy
 msgid "Link external role"
 msgstr "Interner Fehler"
@@ -16579,7 +16545,7 @@
 "Stunden werden Sie eine Benachrichtigung mit der Entscheidung und weiteren "
 "Instruktionen erhalten.</p><p>Danke, daß Sie %1$s gewählt haben."
 
-#: www/register/index.php:166 www/themes/evolvis/Theme.class.php:532
+#: www/register/index.php:166 www/themes/evolvis/Theme.class.php:562
 msgid "Register Project"
 msgstr "Registriere Projekt"
 
@@ -17987,6 +17953,10 @@
 msgid "Script Type"
 msgstr "Skripttyp"
 
+#: www/snippet/submit.php:119
+msgid "License"
+msgstr "Lizenz"
+
 #: www/snippet/submit.php:142
 msgid "Paste the Code Here"
 msgstr "Fügen Sie den Code hier ein"
@@ -18784,7 +18754,7 @@
 msgid "Toggle"
 msgstr "Ein-/Ausklappen"
 
-#: www/themes/evolvis/Theme.class.php:533
+#: www/themes/evolvis/Theme.class.php:563
 msgid "Register a new Project on the forge"
 msgstr "Ein neues Projekt auf der Forge registrieren"
 
@@ -19115,8 +19085,8 @@
 msgid "Submitted By"
 msgstr "Gepostet von"
 
-#: www/tracker/admin/form-customizelist.php:48 www/tracker/browse.php:280
-#: www/tracker/browse.php:682 www/tracker/query.php:201
+#: www/tracker/admin/form-customizelist.php:48 www/tracker/browse.php:283
+#: www/tracker/browse.php:685 www/tracker/query.php:201
 msgid "Close Date"
 msgstr "Schließdatum"
 
@@ -19125,7 +19095,7 @@
 msgid "Detailed description"
 msgstr "Genaue Beschreibung"
 
-#: www/tracker/admin/form-customizelist.php:50 www/tracker/browse.php:699
+#: www/tracker/admin/form-customizelist.php:50 www/tracker/browse.php:702
 #, fuzzy
 msgid "Related tasks"
 msgstr "Verwandte Aufgaben"
@@ -19619,107 +19589,107 @@
 msgid "Element deleted"
 msgstr "Element aktualisiert"
 
-#: www/tracker/browse.php:161
+#: www/tracker/browse.php:164
 msgid "Query Name"
 msgstr "Name der Suchanfrage"
 
-#: www/tracker/browse.php:165 www/tracker/browse.php:499
+#: www/tracker/browse.php:168 www/tracker/browse.php:502
 msgid "Load"
 msgstr "Laden"
 
-#: www/tracker/browse.php:177
+#: www/tracker/browse.php:180
 #, fuzzy
 msgid "Deleted query successful."
 msgstr "Löschung Erfolgreich"
 
-#: www/tracker/browse.php:220
+#: www/tracker/browse.php:223
 #, fuzzy, php-format
 msgid "Saved query with name \"%s\"."
 msgstr "Gespeicherte Suchanfrage mit Name: "
 
-#: www/tracker/browse.php:281 www/tracker/query.php:202
+#: www/tracker/browse.php:284 www/tracker/query.php:202
 msgid "Submitter"
 msgstr "Sender"
 
-#: www/tracker/browse.php:298 www/tracker/query.php:219
+#: www/tracker/browse.php:301 www/tracker/query.php:219
 msgid "Ascending"
 msgstr "Aufsteigend"
 
-#: www/tracker/browse.php:299 www/tracker/query.php:220
+#: www/tracker/browse.php:302 www/tracker/query.php:220
 msgid "Descending"
 msgstr "Absteigend"
 
-#: www/tracker/browse.php:309 www/tracker/query.php:231
+#: www/tracker/browse.php:312 www/tracker/query.php:231
 msgid "Any changes"
 msgstr "Jede Änderung"
 
-#: www/tracker/browse.php:310 www/tracker/query.php:232
+#: www/tracker/browse.php:313 www/tracker/query.php:232
 msgid "Last 24H"
 msgstr "Letzten 24 h"
 
-#: www/tracker/browse.php:311 www/tracker/query.php:233
+#: www/tracker/browse.php:314 www/tracker/query.php:233
 msgid "Last 7days"
 msgstr "Letzten 7 Tage"
 
-#: www/tracker/browse.php:312 www/tracker/query.php:234
+#: www/tracker/browse.php:315 www/tracker/query.php:234
 msgid "Last 2weeks"
 msgstr "Letzte 2 Wochen"
 
-#: www/tracker/browse.php:313 www/tracker/query.php:235
+#: www/tracker/browse.php:316 www/tracker/query.php:235
 msgid "Last 1month"
 msgstr "Letzten Monat"
 
-#: www/tracker/browse.php:372
+#: www/tracker/browse.php:375
 msgid "Power Query [OLD]"
 msgstr "(alte) Powersuche"
 
-#: www/tracker/browse.php:424
+#: www/tracker/browse.php:427
 msgid "Power Query"
 msgstr "(alte) Powersuche"
 
-#: www/tracker/browse.php:426 www/tracker/browse.php:431
+#: www/tracker/browse.php:429 www/tracker/browse.php:434
 #: www/tracker/query.php:254 www/tracker/query.php:258
 msgid "Build Query"
 msgstr "Suche erzeugen"
 
-#: www/tracker/browse.php:437
+#: www/tracker/browse.php:440
 #, fuzzy
 msgid "Advanced queries"
 msgstr "Erweiterte Suche"
 
-#: www/tracker/browse.php:457
+#: www/tracker/browse.php:460
 msgid "Select Query"
 msgstr "Suchanfrage wählen"
 
-#: www/tracker/browse.php:459
+#: www/tracker/browse.php:462
 msgid "Select One"
 msgstr "Eine auswählen"
 
-#: www/tracker/browse.php:470
+#: www/tracker/browse.php:473
 msgid "Tracker Queries"
 msgstr "Tracker-Suchanfragen"
 
-#: www/tracker/browse.php:488
+#: www/tracker/browse.php:491
 msgid "Private Queries"
 msgstr "Private Suchanfragen"
 
-#: www/tracker/browse.php:514
+#: www/tracker/browse.php:517
 msgid "Simple Filtering and Sorting"
 msgstr "Einfaches Filtern und Sortieren"
 
-#: www/tracker/browse.php:543 www/tracker/query.php:392
+#: www/tracker/browse.php:546 www/tracker/query.php:392
 msgid "Order by"
 msgstr "Sortieren nach"
 
-#: www/tracker/browse.php:546
+#: www/tracker/browse.php:549
 msgid "Quick Browse"
 msgstr "Schnellsuche"
 
-#: www/tracker/browse.php:571
+#: www/tracker/browse.php:574
 msgid "Default"
 msgstr "Standard"
 
-#: www/tracker/browse.php:572
+#: www/tracker/browse.php:575
 msgid ""
 "Viewing only opened records by default, use 'Advanced queries' or 'Simple "
 "Filtering and Sorting' to change."
@@ -19727,46 +19697,46 @@
 "Standardmäßig nur geöffnete Aufzeichnungen ansehen, nutzen Sie 'Erweiterte "
 "Suche' oder 'Einfaches Filtern und Sortieren' um dies zu ändern."
 
-#: www/tracker/browse.php:662
+#: www/tracker/browse.php:665
 #, php-format
 msgid "unknown #%d"
 msgstr "unbekannte Nr. %d"
 
-#: www/tracker/browse.php:703
+#: www/tracker/browse.php:706
 #, php-format
 msgid "unknown (\"%s\")"
 msgstr "unbekannt (\"%s\")"
 
-#: www/tracker/browse.php:846
+#: www/tracker/browse.php:858
 #, fuzzy
 msgid "Check  all"
 msgstr "Alle auswählen"
 
-#: www/tracker/browse.php:848
+#: www/tracker/browse.php:860
 #, fuzzy
 msgid "Clear  all"
 msgstr "Alle abwählen"
 
-#: www/tracker/browse.php:875
+#: www/tracker/browse.php:887
 #: www/tracker/include/ArtifactTypeHtml.class.php:656
 #: www/tracker/include/ArtifactTypeHtml.class.php:688
 msgid "Nobody"
 msgstr "Niemanden"
 
-#: www/tracker/browse.php:879
+#: www/tracker/browse.php:891
 msgid "Canned Response"
 msgstr "Vorgespeicherte Antwort"
 
-#: www/tracker/browse.php:896 www/tracker/browse.php:898
+#: www/tracker/browse.php:908 www/tracker/browse.php:910
 msgid "Caption"
 msgstr "Legende"
 
-#: www/tracker/browse.php:901
+#: www/tracker/browse.php:913
 #, php-format
 msgid "* Denotes requests > %1$s Days Old"
 msgstr "* Anfragen, die älter als %1$s Tage sind"
 
-#: www/tracker/browse.php:911
+#: www/tracker/browse.php:923
 msgid "No items found"
 msgstr "Keine Beiträge gefunden"
 

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/translations/fusionforge.pot
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/translations/fusionforge.pot	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/translations/fusionforge.pot	2012-04-05 10:25:42 UTC (rev 18232)
@@ -8,7 +8,7 @@
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-03-14 19:51+0100\n"
+"POT-Creation-Date: 2012-04-05 12:14+0200\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL at ADDRESS>\n"
 "Language-Team: LANGUAGE <LL at li.org>\n"
@@ -336,12 +336,9 @@
 #: common/docman/include/utils.php:196 common/docman/include/utils.php:197
 #: common/docman/views/listfile.php:204 common/docman/views/listfile.php:206
 #: common/forum/ForumHTML.class.php:65 common/forum/ForumHTML.class.php:222
-#: common/forum/ForumHTML.class.php:463 common/include/descriptive.php:131
-#: common/pm/ProjectTask.class.php:1226 common/tracker/Artifact.class.php:1513
-#: common/tracker/Artifact.class.php:1515
-#: common/tracker/Artifact.class.php:1519
-#: common/tracker/Artifact.class.php:1521
-#: common/tracker/Artifact.class.php:1617
+#: common/forum/ForumHTML.class.php:463 common/include/descriptive.php:133
+#: common/pm/ProjectTask.class.php:1226 common/tracker/Artifact.class.php:1518
+#: common/tracker/Artifact.class.php:1610
 #: common/widget/Widget_MyLatestSvnCommits.class.php:65
 #: common/widget/Widget_ProjectInfo.class.php:66
 #: common/widget/Widget_Rss.class.php:74
@@ -350,12 +347,11 @@
 #: plugins/hudson/include/HudsonBuild.class.php:110
 #: plugins/projects_hierarchy/www/softwaremap.php:332
 #: www/account/index.php:128 www/admin/cronman.php:78
-#: www/admin/grouplist.php:149 www/admin/massmail.php:158
-#: www/admin/search.php:105 www/admin/search.php:187
-#: www/admin/userlist.php:110 www/developer/diary.php:51
-#: www/developer/diary.php:82 www/export/tracker.php:109
-#: www/forum/forum.php:289 www/forum/forum.php:366 www/forum/index.php:98
-#: www/forum/message.php:127 www/forum/message.php:204
+#: www/admin/massmail.php:158 www/admin/search.php:105
+#: www/admin/search.php:187 www/admin/userlist.php:110
+#: www/developer/diary.php:51 www/developer/diary.php:82
+#: www/export/tracker.php:109 www/forum/forum.php:289 www/forum/forum.php:366
+#: www/forum/index.php:98 www/forum/message.php:127 www/forum/message.php:204
 #: www/forum/myforums.php:152 www/frs/index.php:150 www/frs/index.php:210
 #: www/include/stats_function.php:77 www/include/stats_function.php:98
 #: www/include/user_home.php:144 www/my/diary.php:216
@@ -448,7 +444,7 @@
 #: www/search/include/renderers/ProjectHtmlSearchRenderer.class.php:45
 #: www/snippet/submit.php:110 www/tracker/admin/form-updatetracker.php:53
 #: www/tracker/admin/ind.php:113 www/tracker/admin/ind.php:142
-#: www/tracker/browse.php:673 www/tracker/ind.php:63
+#: www/tracker/browse.php:676 www/tracker/ind.php:63
 msgid "Description"
 msgstr ""
 
@@ -470,8 +466,8 @@
 
 #: common/docman/include/utils.php:326 common/docman/views/editfile.php:132
 #: www/pm/browse_task.php:619 www/project/admin/database.php:208
-#: www/tracker/admin/form-customizelist.php:44 www/tracker/browse.php:524
-#: www/tracker/browse.php:685 www/tracker/browse.php:883
+#: www/tracker/admin/form-customizelist.php:44 www/tracker/browse.php:527
+#: www/tracker/browse.php:688 www/tracker/browse.php:895
 #: www/tracker/query.php:346
 msgid "State"
 msgstr ""
@@ -716,7 +712,7 @@
 #: common/docman/views/listfile.php:121
 #: common/tracker/ArtifactExtraField.class.php:326
 #: plugins/globalsearch/common/globalsearch_edit_utils.php:218
-#: www/admin/groupedit.php:106 www/admin/grouplist.php:92
+#: www/admin/groupedit.php:106 www/admin/grouplist.php:35
 #: www/admin/pluginman.php:118 www/admin/search.php:94
 #: www/admin/search.php:171 www/frs/admin/editrelease.php:235
 #: www/frs/admin/index.php:155 www/my/dashboard.php:67
@@ -893,8 +889,8 @@
 #: www/tracker/admin/form-addextrafield.php:82
 #: www/tracker/admin/form-deleteextrafield.php:41
 #: www/tracker/admin/form-deletetracker.php:34
-#: www/tracker/admin/tracker.php:66 www/tracker/browse.php:173
-#: www/tracker/browse.php:500 www/tracker/deleteartifact.php:38
+#: www/tracker/admin/tracker.php:66 www/tracker/browse.php:176
+#: www/tracker/browse.php:503 www/tracker/deleteartifact.php:38
 #: www/tracker/item.php:256
 msgid "Delete"
 msgstr ""
@@ -1000,9 +996,9 @@
 msgstr ""
 
 #: common/forum/Forum.class.php:620 common/frs/FRSPackage.class.php:447
-#: common/frs/FRSRelease.class.php:356 common/include/Group.class.php:1651
+#: common/frs/FRSRelease.class.php:356 common/include/Group.class.php:1652
 #: common/mail/MailingList.class.php:393 common/pm/ProjectGroup.class.php:376
-#: common/pm/ProjectTask.class.php:518 common/tracker/Artifact.class.php:489
+#: common/pm/ProjectTask.class.php:518 common/tracker/Artifact.class.php:490
 #: common/tracker/ArtifactExtraField.class.php:429
 #: common/tracker/ArtifactType.class.php:816
 msgid "Please tick all checkboxes."
@@ -1164,7 +1160,7 @@
 msgid "Posted by"
 msgstr ""
 
-#: common/forum/ForumHTML.class.php:65 common/include/descriptive.php:130
+#: common/forum/ForumHTML.class.php:65 common/include/descriptive.php:132
 #: common/widget/Widget_ProjectLatestFileReleases.class.php:58
 #: plugins/contribtracker/common/ContribTrackerPlugin.class.php:109
 #: plugins/cvstracker/common/cvstrackerPlugin.class.php:109
@@ -1194,8 +1190,8 @@
 #: www/search/include/renderers/NewsHtmlSearchRenderer.class.php:48
 #: www/search/include/renderers/TasksHtmlSearchRenderer.class.php:49
 #: www/search/include/renderers/TrackersHtmlSearchRenderer.class.php:49
-#: www/tracker/admin/form-customizelist.php:42 www/tracker/browse.php:278
-#: www/tracker/browse.php:670 www/tracker/item.php:313
+#: www/tracker/admin/form-customizelist.php:42 www/tracker/browse.php:281
+#: www/tracker/browse.php:673 www/tracker/item.php:313
 #: www/tracker/query.php:199 www/tracker/query.php:383
 msgid "Summary"
 msgstr ""
@@ -1636,131 +1632,131 @@
 msgid "SCM Box can't be empty"
 msgstr ""
 
-#: common/include/Group.class.php:1619
+#: common/include/Group.class.php:1620
 msgid ""
 "Bad tag name, you only can use the following characters: [A-Z][a-z][0-9]-_&'#"
 "+. and space"
 msgstr ""
 
-#: common/include/Group.class.php:1628
+#: common/include/Group.class.php:1629
 msgid "Setting tags:"
 msgstr ""
 
-#: common/include/Group.class.php:1658
+#: common/include/Group.class.php:1659
 msgid "Cannot Delete System Group"
 msgstr ""
 
-#: common/include/Group.class.php:1748 common/include/Group.class.php:1762
+#: common/include/Group.class.php:1749 common/include/Group.class.php:1763
 msgid "Error Deleting News: "
 msgstr ""
 
-#: common/include/Group.class.php:1756
+#: common/include/Group.class.php:1757
 #, php-format
 msgid "Could Not Delete News Forum: %d"
 msgstr ""
 
-#: common/include/Group.class.php:1773 common/include/Group.class.php:1781
+#: common/include/Group.class.php:1774 common/include/Group.class.php:1782
 msgid "Error Deleting Documents: "
 msgstr ""
 
-#: common/include/Group.class.php:1791
+#: common/include/Group.class.php:1792
 msgid "Error Deleting Tags: "
 msgstr ""
 
-#: common/include/Group.class.php:1802
+#: common/include/Group.class.php:1803
 msgid "Error Deleting Project History: "
 msgstr ""
 
-#: common/include/Group.class.php:1813
+#: common/include/Group.class.php:1814
 msgid "Error Deleting Project Plugins: "
 msgstr ""
 
-#: common/include/Group.class.php:1824
+#: common/include/Group.class.php:1825
 msgid "Error Deleting SCM Statistics: "
 msgstr ""
 
-#: common/include/Group.class.php:1839
+#: common/include/Group.class.php:1840
 msgid "Could not properly delete the survey"
 msgstr ""
 
-#: common/include/Group.class.php:1854
+#: common/include/Group.class.php:1855
 msgid "Could not properly delete the survey questions"
 msgstr ""
 
-#: common/include/Group.class.php:1869
+#: common/include/Group.class.php:1870
 #: plugins/mailman/include/mailmanPlugin.class.php:201
 msgid "Could not properly delete the mailing list"
 msgstr ""
 
-#: common/include/Group.class.php:1880 common/include/Group.class.php:1888
+#: common/include/Group.class.php:1881 common/include/Group.class.php:1889
 msgid "Error Deleting Trove: "
 msgstr ""
 
-#: common/include/Group.class.php:1899
+#: common/include/Group.class.php:1900
 msgid "Error Deleting Counters: "
 msgstr ""
 
-#: common/include/Group.class.php:1909 common/include/Group.class.php:1917
+#: common/include/Group.class.php:1910 common/include/Group.class.php:1918
 msgid "Error Deleting Project:"
 msgstr ""
 
-#: common/include/Group.class.php:1997
+#: common/include/Group.class.php:1998
 msgid "User is not active. Only active users can be added."
 msgstr ""
 
-#: common/include/Group.class.php:2009 common/include/Group.class.php:2106
+#: common/include/Group.class.php:2010 common/include/Group.class.php:2107
 msgid "Error Getting Role Object"
 msgstr ""
 
-#: common/include/Group.class.php:2066
+#: common/include/Group.class.php:2067
 #, php-format
 msgid "ERROR: Could Not Add User To Group: %s"
 msgstr ""
 
-#: common/include/Group.class.php:2135
+#: common/include/Group.class.php:2136
 msgid "ERROR: User does not exist"
 msgstr ""
 
-#: common/include/Group.class.php:2184 common/include/Group.class.php:2200
-#: common/include/Group.class.php:2316
+#: common/include/Group.class.php:2185 common/include/Group.class.php:2201
+#: common/include/Group.class.php:2317
 #, php-format
 msgid "ERROR: User not removed: %s"
 msgstr ""
 
-#: common/include/Group.class.php:2217
+#: common/include/Group.class.php:2218
 msgid "ERROR: DB: artifact:"
 msgstr ""
 
-#: common/include/Group.class.php:2238 common/include/Group.class.php:2251
+#: common/include/Group.class.php:2239 common/include/Group.class.php:2252
 #, php-format
 msgid "ERROR: DB: project_assigned_to %d: %s"
 msgstr ""
 
-#: common/include/Group.class.php:2296 common/include/Group.class.php:2325
+#: common/include/Group.class.php:2297 common/include/Group.class.php:2326
 #: www/admin/globalroledelete.php:37 www/admin/globalroleedit.php:41
 #: www/project/admin/roledelete.php:46 www/project/admin/roleedit.php:80
 msgid "Could Not Get Role"
 msgstr ""
 
-#: common/include/Group.class.php:2299 common/include/Group.class.php:2328
-#: common/include/Group.class.php:2333
+#: common/include/Group.class.php:2300 common/include/Group.class.php:2329
+#: common/include/Group.class.php:2334
 #, php-format
 msgid "Role: %s"
 msgstr ""
 
-#: common/include/Group.class.php:2303
+#: common/include/Group.class.php:2304
 msgid "Wrong destination role"
 msgstr ""
 
-#: common/include/Group.class.php:2437
+#: common/include/Group.class.php:2438
 msgid "Group already active"
 msgstr ""
 
-#: common/include/Group.class.php:2697 common/include/Group.class.php:2776
+#: common/include/Group.class.php:2698 common/include/Group.class.php:2779
 msgid "Group does not have any administrators."
 msgstr ""
 
-#: common/include/Group.class.php:2705
+#: common/include/Group.class.php:2706
 #, php-format
 msgid ""
 "Your project registration for %4$s has been approved.\n"
@@ -1796,12 +1792,12 @@
 "-- the %4$s crew"
 msgstr ""
 
-#: common/include/Group.class.php:2741
+#: common/include/Group.class.php:2743
 #, php-format
 msgid "%1$s Project Approved"
 msgstr ""
 
-#: common/include/Group.class.php:2783
+#: common/include/Group.class.php:2786
 #, php-format
 msgid ""
 "Your project registration for %3$s has been denied.\n"
@@ -1813,20 +1809,20 @@
 "\n"
 msgstr ""
 
-#: common/include/Group.class.php:2802
+#: common/include/Group.class.php:2806
 #, php-format
 msgid "%1$s Project Denied"
 msgstr ""
 
-#: common/include/Group.class.php:2834
+#: common/include/Group.class.php:2839
 msgid "Could not find user who has submitted the project."
 msgstr ""
 
-#: common/include/Group.class.php:2841
+#: common/include/Group.class.php:2846
 msgid "There is no administrator to send the mail to."
 msgstr ""
 
-#: common/include/Group.class.php:2853
+#: common/include/Group.class.php:2858
 #, php-format
 msgid ""
 "New %1$s Project Submitted\n"
@@ -1835,12 +1831,12 @@
 "Submitted Description: %3$s\n"
 msgstr ""
 
-#: common/include/Group.class.php:2863
+#: common/include/Group.class.php:2868
 #, php-format
 msgid "Submitter: %1$s (%2$s)\n"
 msgstr ""
 
-#: common/include/Group.class.php:2869
+#: common/include/Group.class.php:2874
 #, php-format
 msgid ""
 "\n"
@@ -1848,12 +1844,12 @@
 "%1$s"
 msgstr ""
 
-#: common/include/Group.class.php:2873 common/include/Group.class.php:2888
+#: common/include/Group.class.php:2879 common/include/Group.class.php:2900
 #, php-format
 msgid "New %1$s Project Submitted"
 msgstr ""
 
-#: common/include/Group.class.php:2881
+#: common/include/Group.class.php:2888
 #, php-format
 msgid ""
 "New %1$s Project Submitted\n"
@@ -1865,43 +1861,43 @@
 "notified of their decision."
 msgstr ""
 
-#: common/include/Group.class.php:2906
+#: common/include/Group.class.php:2919
 msgid "Group name is too short"
 msgstr ""
 
-#: common/include/Group.class.php:2909
+#: common/include/Group.class.php:2922
 msgid "Group name is too long"
 msgstr ""
 
-#: common/include/Group.class.php:2912
+#: common/include/Group.class.php:2925
 msgid "Group name already taken"
 msgstr ""
 
-#: common/include/Group.class.php:3003
+#: common/include/Group.class.php:3016
 #, php-format
 msgid "ERROR - Could Not Update Group Unix Status: %s"
 msgstr ""
 
-#: common/include/Group.class.php:3062
+#: common/include/Group.class.php:3075
 msgid "Error: Enable to get users from group"
 msgstr ""
 
-#: common/include/Group.class.php:3083
+#: common/include/Group.class.php:3096
 #, php-format
 msgid "ERROR - Could Not Update Group DocmanCreateOnline Status: %s"
 msgstr ""
 
-#: common/include/Group.class.php:3101
+#: common/include/Group.class.php:3114
 #, php-format
 msgid "ERROR - Could Not Update Group UseWebdab Status: %s"
 msgstr ""
 
-#: common/include/Group.class.php:3119
+#: common/include/Group.class.php:3132
 #, php-format
 msgid "ERROR - Could Not Update Group UseDocmanSearch Status: %s"
 msgstr ""
 
-#: common/include/Group.class.php:3137
+#: common/include/Group.class.php:3150
 #, php-format
 msgid "ERROR - Could Not Update Group force_docman_reindex %s"
 msgstr ""
@@ -2597,39 +2593,39 @@
 msgid "locale-dependent-default-datepick-format"
 msgstr ""
 
-#: common/include/descriptive.php:78
+#: common/include/descriptive.php:80
 msgid "Sort comments antichronologically"
 msgstr ""
 
-#: common/include/descriptive.php:81
+#: common/include/descriptive.php:83
 msgid "Sort comments chronologically"
 msgstr ""
 
-#: common/include/descriptive.php:132
+#: common/include/descriptive.php:134
 #: www/search/include/renderers/SkillHtmlSearchRenderer.class.php:48
 #: www/tracker/admin/form-workflow.php:61
 msgid "From"
 msgstr ""
 
-#: common/include/descriptive.php:229 common/include/descriptive.php:230
+#: common/include/descriptive.php:231 common/include/descriptive.php:232
 msgid "Click to edit"
 msgstr ""
 
-#: common/include/descriptive.php:285
+#: common/include/descriptive.php:287
 msgid "Write a comment"
 msgstr ""
 
-#: common/include/descriptive.php:541
+#: common/include/descriptive.php:543
 #, php-format
 msgid "%s (Task)"
 msgstr ""
 
-#: common/include/descriptive.php:546
+#: common/include/descriptive.php:548
 #, php-format
 msgid "%s (Bug/FR)"
 msgstr ""
 
-#: common/include/descriptive.php:551
+#: common/include/descriptive.php:553
 #, php-format
 msgid "%s (Forum Message)"
 msgstr ""
@@ -2738,7 +2734,7 @@
 #: common/include/rbac_texts.php:43 common/include/rbac_texts.php:55
 #: common/include/rbac_texts.php:58 common/include/rbac_texts.php:60
 #: common/include/rbac_texts.php:62
-#: plugins/mediawiki/common/MediaWikiPlugin.class.php:229
+#: plugins/mediawiki/common/MediaWikiPlugin.class.php:232
 msgid "No administrative access"
 msgstr ""
 
@@ -2765,7 +2761,7 @@
 msgstr ""
 
 #: common/include/rbac_texts.php:50
-#: plugins/mediawiki/common/MediaWikiPlugin.class.php:209
+#: plugins/mediawiki/common/MediaWikiPlugin.class.php:212
 msgid "Read access"
 msgstr ""
 
@@ -3051,42 +3047,42 @@
 msgid "Account Not Active"
 msgstr ""
 
-#: common/include/session.php:419
+#: common/include/session.php:430
 msgid "Your account is no longer active ; you have been disconnected"
 msgstr ""
 
-#: common/include/session.php:472
+#: common/include/session.php:483
 #, php-format
 msgid ""
 "Permission denied. The %s administrators will have to grant you permission "
 "to view this page."
 msgstr ""
 
-#: common/include/session.php:528
+#: common/include/session.php:539
 msgid "Could not fetch user session data"
 msgstr ""
 
-#: common/include/session.php:556
+#: common/include/session.php:567
 msgid "No admin users ?"
 msgstr ""
 
-#: common/include/utils.php:178
+#: common/include/utils.php:180
 msgid "UTF-8"
 msgstr ""
 
-#: common/include/utils.php:542
+#: common/include/utils.php:544
 msgid "Priority Colors"
 msgstr ""
 
-#: common/include/utils.php:1242
+#: common/include/utils.php:1244
 msgid "Error: a mailing list with the same email address already exists."
 msgstr ""
 
-#: common/include/utils.php:1258
+#: common/include/utils.php:1260
 msgid "Error: a forum with the same email address already exists."
 msgstr ""
 
-#: common/include/utils.php:1500
+#: common/include/utils.php:1497
 msgid "Internal Error: Could not read from random device"
 msgstr ""
 
@@ -3433,7 +3429,7 @@
 msgid "Artifact: Only group members can view private artifact types"
 msgstr ""
 
-#: common/tracker/Artifact.class.php:206 common/tracker/Artifact.class.php:749
+#: common/tracker/Artifact.class.php:206 common/tracker/Artifact.class.php:751
 #: www/tracker/tracker.php:96 www/tracker/tracker.php:294
 msgid ""
 "Artifact: This ArtifactType Does Not Allow Anonymous Submissions. Please "
@@ -3448,23 +3444,23 @@
 msgid "Artifact: Message Body Is Required"
 msgstr ""
 
-#: common/tracker/Artifact.class.php:240
+#: common/tracker/Artifact.class.php:241
 msgid "Artifact: Error remapping status"
 msgstr ""
 
-#: common/tracker/Artifact.class.php:582
+#: common/tracker/Artifact.class.php:583
 msgid "SetMonitor::Valid Email Address Required"
 msgstr ""
 
-#: common/tracker/Artifact.class.php:600
+#: common/tracker/Artifact.class.php:601
 msgid "Now Monitoring Artifact"
 msgstr ""
 
-#: common/tracker/Artifact.class.php:610
+#: common/tracker/Artifact.class.php:611
 msgid "Artifact Monitoring Deactivated"
 msgstr ""
 
-#: common/tracker/Artifact.class.php:1143
+#: common/tracker/Artifact.class.php:1146
 msgid "Nothing Changed - Update Cancelled"
 msgstr ""
 
@@ -3644,13 +3640,13 @@
 msgstr ""
 
 #: common/widget/WidgetLayoutManager.class.php:242
-#: common/widget/WidgetLayoutManager.class.php:246 www/include/html.php:915
-#: www/include/project_home.php:73 www/widgets/widgets.php:73
+#: common/widget/WidgetLayoutManager.class.php:246 www/include/html.php:921
+#: www/include/project_home.php:67 www/widgets/widgets.php:73
 msgid "Add widgets"
 msgstr ""
 
 #: common/widget/WidgetLayoutManager.class.php:243
-#: common/widget/WidgetLayoutManager.class.php:247 www/include/html.php:919
+#: common/widget/WidgetLayoutManager.class.php:247 www/include/html.php:925
 #: www/widgets/widgets.php:71
 msgid "Customize layout"
 msgstr ""
@@ -4012,7 +4008,7 @@
 
 #: common/widget/Widget_ProjectLatestFileReleases.class.php:67
 #: common/widget/Widget_ProjectLatestFileReleases.class.php:143
-#: plugins/mediawiki/www/plugin_admin.php:203 www/new/index.php:119
+#: plugins/mediawiki/www/plugin_admin.php:161 www/new/index.php:119
 msgid "Download"
 msgstr ""
 
@@ -4058,7 +4054,7 @@
 msgid "Project Admins"
 msgstr ""
 
-#: common/widget/Widget_ProjectMembers.class.php:74 www/admin/grouplist.php:95
+#: common/widget/Widget_ProjectMembers.class.php:74
 msgid "Members"
 msgstr ""
 
@@ -4436,7 +4432,7 @@
 msgstr ""
 
 #: plugins/contribtracker/common/ContribTrackerPlugin.class.php:112
-#: www/project/admin/massfinish.php:80 www/project/admin/users.php:316
+#: www/project/admin/massfinish.php:80 www/project/admin/users.php:317
 msgid "Role"
 msgstr ""
 
@@ -5395,7 +5391,8 @@
 #: plugins/globalsearch/common/globalsearch_edit_utils.php:233
 #: plugins/mailman/www/admin/index.php:148
 #: plugins/mailman/www/admin/index.php:180 www/admin/groupedit.php:159
-#: www/admin/groupedit.php:180 www/forum/admin/index.php:109
+#: www/admin/groupedit.php:180 www/admin/grouplist.php:194
+#: www/admin/grouplist.php:197 www/forum/admin/index.php:109
 #: www/forum/admin/index.php:114 www/forum/admin/index.php:153
 #: www/forum/admin/index.php:158 www/forum/admin/index.php:237
 #: www/mail/admin/index.php:191 www/mail/admin/index.php:222
@@ -5412,7 +5409,8 @@
 #: plugins/globalsearch/common/globalsearch_edit_utils.php:233
 #: plugins/mailman/www/admin/index.php:149
 #: plugins/mailman/www/admin/index.php:181 www/admin/groupedit.php:158
-#: www/admin/groupedit.php:179 www/forum/admin/index.php:110
+#: www/admin/groupedit.php:179 www/admin/grouplist.php:194
+#: www/admin/grouplist.php:197 www/forum/admin/index.php:110
 #: www/forum/admin/index.php:115 www/forum/admin/index.php:154
 #: www/forum/admin/index.php:159 www/forum/admin/index.php:238
 #: www/mail/admin/index.php:192 www/mail/admin/index.php:223
@@ -6050,7 +6048,7 @@
 #: plugins/mailman/include/mailmanPlugin.class.php:155
 #: www/admin/globalroleedit.php:150 www/admin/globalroleedit.php:165
 #: www/admin/globalroleedit.php:175 www/include/Layout.class.php:1275
-#: www/my/rmproject.php:92 www/project/admin/users.php:360
+#: www/my/rmproject.php:92 www/project/admin/users.php:364
 msgid "Remove"
 msgstr ""
 
@@ -6365,71 +6363,71 @@
 msgid "You are not Admin of this project"
 msgstr ""
 
-#: plugins/mediawiki/common/MediaWikiPlugin.class.php:207
+#: plugins/mediawiki/common/MediaWikiPlugin.class.php:210
 msgid "Mediawiki read access"
 msgstr ""
 
-#: plugins/mediawiki/common/MediaWikiPlugin.class.php:208
+#: plugins/mediawiki/common/MediaWikiPlugin.class.php:211
 msgid "No reading"
 msgstr ""
 
-#: plugins/mediawiki/common/MediaWikiPlugin.class.php:213
+#: plugins/mediawiki/common/MediaWikiPlugin.class.php:216
 msgid "Mediawiki write access"
 msgstr ""
 
-#: plugins/mediawiki/common/MediaWikiPlugin.class.php:214
+#: plugins/mediawiki/common/MediaWikiPlugin.class.php:217
 msgid "No editing"
 msgstr ""
 
-#: plugins/mediawiki/common/MediaWikiPlugin.class.php:215
+#: plugins/mediawiki/common/MediaWikiPlugin.class.php:218
 msgid "Edit existing pages only"
 msgstr ""
 
-#: plugins/mediawiki/common/MediaWikiPlugin.class.php:216
+#: plugins/mediawiki/common/MediaWikiPlugin.class.php:219
 msgid "Edit and create pages"
 msgstr ""
 
-#: plugins/mediawiki/common/MediaWikiPlugin.class.php:217
+#: plugins/mediawiki/common/MediaWikiPlugin.class.php:220
 msgid "Edit, create, move pages"
 msgstr ""
 
-#: plugins/mediawiki/common/MediaWikiPlugin.class.php:221
+#: plugins/mediawiki/common/MediaWikiPlugin.class.php:224
 msgid "Mediawiki file upload"
 msgstr ""
 
-#: plugins/mediawiki/common/MediaWikiPlugin.class.php:222
+#: plugins/mediawiki/common/MediaWikiPlugin.class.php:225
 msgid "No uploading"
 msgstr ""
 
-#: plugins/mediawiki/common/MediaWikiPlugin.class.php:223
+#: plugins/mediawiki/common/MediaWikiPlugin.class.php:226
 msgid "Upload permitted"
 msgstr ""
 
-#: plugins/mediawiki/common/MediaWikiPlugin.class.php:224
+#: plugins/mediawiki/common/MediaWikiPlugin.class.php:227
 msgid "Upload and re-upload"
 msgstr ""
 
-#: plugins/mediawiki/common/MediaWikiPlugin.class.php:228
+#: plugins/mediawiki/common/MediaWikiPlugin.class.php:231
 msgid "Mediawiki administrative tasks"
 msgstr ""
 
-#: plugins/mediawiki/common/MediaWikiPlugin.class.php:230
+#: plugins/mediawiki/common/MediaWikiPlugin.class.php:233
 msgid "Edit interface, import XML dumps"
 msgstr ""
 
-#: plugins/mediawiki/common/MediaWikiPlugin.class.php:234
+#: plugins/mediawiki/common/MediaWikiPlugin.class.php:237
 msgid "Mediawiki remove pages from history"
 msgstr ""
 
-#: plugins/mediawiki/common/MediaWikiPlugin.class.php:236
+#: plugins/mediawiki/common/MediaWikiPlugin.class.php:239
 msgid "No irreversible deletion"
 msgstr ""
 
-#: plugins/mediawiki/common/MediaWikiPlugin.class.php:237
+#: plugins/mediawiki/common/MediaWikiPlugin.class.php:240
 msgid "Delete pages from history and undelete them"
 msgstr ""
 
-#: plugins/mediawiki/common/MediaWikiPlugin.class.php:374
+#: plugins/mediawiki/common/MediaWikiPlugin.class.php:377
 msgid "MediaWiki Plugin admin"
 msgstr ""
 
@@ -6506,84 +6504,48 @@
 msgid "Unknown file upload error."
 msgstr ""
 
-#: plugins/mediawiki/www/plugin_admin.php:146
+#: plugins/mediawiki/www/plugin_admin.php:138
 #, php-format
-msgid "Error making the wiki %s!"
+msgid "MediaWiki Plugin Admin for %s"
 msgstr ""
 
-#: plugins/mediawiki/www/plugin_admin.php:148
-#, php-format
-msgid "Made the wiki %s successfully."
-msgstr ""
-
-#: plugins/mediawiki/www/plugin_admin.php:162
-msgid "Public Visibility"
-msgstr ""
-
-#: plugins/mediawiki/www/plugin_admin.php:171
-#, php-format
-msgid ""
-"This wiki is currently not private, that is, readable to non-logged-in users "
-"and indexed by the search engine."
-msgstr ""
-
-#: plugins/mediawiki/www/plugin_admin.php:174
-#, php-format
-msgid ""
-"This wiki is currently private, that is, not readable to non-logged-in users "
-"and not indexed by the search engine."
-msgstr ""
-
-#: plugins/mediawiki/www/plugin_admin.php:179
-#, php-format
-msgid "Wiki for %s is private"
-msgstr ""
-
-#: plugins/mediawiki/www/plugin_admin.php:180
-msgid "Change settings"
-msgstr ""
-
-#: plugins/mediawiki/www/plugin_admin.php:184
+#: plugins/mediawiki/www/plugin_admin.php:147
 msgid "Nightly XML dump"
 msgstr ""
 
-#: plugins/mediawiki/www/plugin_admin.php:186
-msgid "XML dumps are not available for private wikis."
-msgstr ""
-
-#: plugins/mediawiki/www/plugin_admin.php:189
+#: plugins/mediawiki/www/plugin_admin.php:150
 #, php-format
 msgid "<a href=\"%s\">Download</a> the nightly created XML dump (backup) here."
 msgstr ""
 
-#: plugins/mediawiki/www/plugin_admin.php:195
-msgid "Visibility information is not available yet."
+#: plugins/mediawiki/www/plugin_admin.php:154
+msgid "XML dumps are not available for private wikis."
 msgstr ""
 
-#: plugins/mediawiki/www/plugin_admin.php:202
+#: plugins/mediawiki/www/plugin_admin.php:160
 msgid "Current logo:"
 msgstr ""
 
-#: plugins/mediawiki/www/plugin_admin.php:207
+#: plugins/mediawiki/www/plugin_admin.php:165
 msgid "No per-project logo currently installed."
 msgstr ""
 
-#: plugins/mediawiki/www/plugin_admin.php:215
+#: plugins/mediawiki/www/plugin_admin.php:173
 msgid "Upload a new logo"
 msgstr ""
 
-#: plugins/mediawiki/www/plugin_admin.php:217
+#: plugins/mediawiki/www/plugin_admin.php:175
 msgid ""
 "NOTE: In some browsers you must select the file in the file-upload dialog "
 "and click \"OK\".  Double-clicking doesn't register the file."
 msgstr ""
 
-#: plugins/mediawiki/www/plugin_admin.php:219
+#: plugins/mediawiki/www/plugin_admin.php:177
 #: www/frs/admin/editrelease.php:287 www/frs/admin/qrs.php:201
 msgid "Upload a new file"
 msgstr ""
 
-#: plugins/mediawiki/www/plugin_admin.php:226
+#: plugins/mediawiki/www/plugin_admin.php:184
 #: www/frs/admin/editrelease.php:302 www/frs/admin/qrs.php:217
 #, php-format
 msgid ""
@@ -6591,24 +6553,24 @@
 "the <a href=\"%2$s\">project's incoming directory</a> (%1$s)."
 msgstr ""
 
-#: plugins/mediawiki/www/plugin_admin.php:228
+#: plugins/mediawiki/www/plugin_admin.php:186
 #: www/frs/admin/editrelease.php:304 www/frs/admin/qrs.php:219
 msgid ""
 "This direct <tt>sftp://</tt> link only works with some browsers, such as "
 "Konqueror."
 msgstr ""
 
-#: plugins/mediawiki/www/plugin_admin.php:229
+#: plugins/mediawiki/www/plugin_admin.php:187
 #: www/frs/admin/editrelease.php:292 www/frs/admin/editrelease.php:305
 #: www/frs/admin/qrs.php:220
 msgid "Choose an already uploaded file:"
 msgstr ""
 
-#: plugins/mediawiki/www/plugin_admin.php:235
+#: plugins/mediawiki/www/plugin_admin.php:193
 msgid "… or delete the currently uploaded logo and revert to the site default"
 msgstr ""
 
-#: plugins/mediawiki/www/plugin_admin.php:236
+#: plugins/mediawiki/www/plugin_admin.php:194
 msgid "Upload new logo"
 msgstr ""
 
@@ -8077,7 +8039,7 @@
 msgstr ""
 
 #: www/account/index.php:101 www/account/index.php:106
-#: www/include/html.php:934
+#: www/include/html.php:940
 msgid "Account Maintenance"
 msgstr ""
 
@@ -8761,7 +8723,7 @@
 msgstr ""
 
 #: www/admin/approve-pending.php:161 www/admin/pending-news.php:152
-#: www/project/admin/users.php:263
+#: www/project/admin/users.php:264
 msgid "Reject"
 msgstr ""
 
@@ -8966,7 +8928,7 @@
 msgstr ""
 
 #: www/admin/globalroleedit.php:149 www/admin/search.php:90
-#: www/admin/unsubscribe.php:113 www/project/admin/users.php:315
+#: www/admin/unsubscribe.php:113 www/project/admin/users.php:316
 #: www/search/include/renderers/PeopleHtmlSearchRenderer.class.php:44
 #: www/top/topusers.php:63
 msgid "User name"
@@ -9007,7 +8969,7 @@
 msgstr ""
 
 #: www/admin/globalroleedit.php:254 www/admin/globalroleedit.php:256
-#: www/project/admin/users.php:453
+#: www/project/admin/users.php:457
 msgid "Delete role"
 msgstr ""
 
@@ -9067,11 +9029,11 @@
 "%3$s>give<%4$s> it “Project visibility” permissions."
 msgstr ""
 
-#: www/admin/groupedit.php:148 www/admin/grouplist.php:93
+#: www/admin/groupedit.php:148 www/admin/grouplist.php:36
 msgid "Public?"
 msgstr ""
 
-#: www/admin/groupedit.php:169 www/admin/grouplist.php:96
+#: www/admin/groupedit.php:169 www/admin/grouplist.php:39
 msgid "Template?"
 msgstr ""
 
@@ -9087,33 +9049,38 @@
 msgid "Resend New Project Instruction Email"
 msgstr ""
 
-#: www/admin/grouplist.php:27 www/include/Layout.class.php:1351
-#: www/themes/evolvis/Theme.class.php:537
-msgid "Project List"
-msgstr ""
-
-#: www/admin/grouplist.php:52
-msgid "Projects that begin with"
-msgstr ""
-
-#: www/admin/grouplist.php:89
+#: www/admin/grouplist.php:32
 msgid "Project Name (click to edit)"
 msgstr ""
 
-#: www/admin/grouplist.php:90
+#: www/admin/grouplist.php:33
 msgid "Register Time"
 msgstr ""
 
-#: www/admin/grouplist.php:91 www/admin/search.php:168
-#: www/admin/useredit.php:235 www/project/admin/massadd.php:91
+#: www/admin/grouplist.php:34 www/admin/search.php:168
+#: www/admin/useredit.php:235 www/project/admin/massadd.php:111
 #: www/project/admin/massfinish.php:79
 msgid "Unix name"
 msgstr ""
 
-#: www/admin/grouplist.php:94 www/snippet/submit.php:119
-msgid "License"
+#: www/admin/grouplist.php:37
+msgid "Licence"
 msgstr ""
 
+#: www/admin/grouplist.php:38
+msgid "Members#"
+msgstr ""
+
+#: www/admin/grouplist.php:201 www/include/Layout.class.php:1351
+#: www/themes/evolvis/Theme.class.php:567
+msgid "Project List"
+msgstr ""
+
+#: www/admin/grouplist.php:206
+#, php-format
+msgid "Projects that begin with \"%s\""
+msgstr ""
+
 #: www/admin/index.php:46
 msgid "User Maintenance"
 msgstr ""
@@ -9156,7 +9123,7 @@
 msgid "Edit Role"
 msgstr ""
 
-#: www/admin/index.php:94 www/project/admin/users.php:478
+#: www/admin/index.php:94 www/project/admin/users.php:482
 msgid "Create Role"
 msgstr ""
 
@@ -9357,8 +9324,8 @@
 #: www/admin/massmail.php:136 www/admin/search.php:89 www/admin/search.php:167
 #: www/my/dashboard.php:61 www/pm/include/ProjectTaskHTML.class.php:114
 #: www/pm/index.php:99 www/project/admin/editimages.php:265
-#: www/tracker/admin/form-addcanned.php:41 www/tracker/browse.php:276
-#: www/tracker/browse.php:666 www/tracker/query.php:197
+#: www/tracker/admin/form-addcanned.php:41 www/tracker/browse.php:279
+#: www/tracker/browse.php:669 www/tracker/query.php:197
 msgid "ID"
 msgstr ""
 
@@ -9440,7 +9407,7 @@
 #: www/news/admin/index.php:133 www/pm/templates/detail_template.php:64
 #: www/search/include/renderers/ArtifactHtmlSearchRenderer.class.php:57
 #: www/search/include/renderers/TrackersHtmlSearchRenderer.class.php:50
-#: www/tracker/browse.php:695 www/tracker/item.php:201
+#: www/tracker/browse.php:698 www/tracker/item.php:201
 msgid "Submitted by"
 msgstr ""
 
@@ -9512,9 +9479,9 @@
 msgstr ""
 
 #: www/admin/pluginman.php:119 www/people/people_utils.php:158
-#: www/people/people_utils.php:299 www/project/admin/users.php:317
-#: www/project/admin/users.php:407 www/project/admin/users.php:495
-#: www/project/admin/users.php:519
+#: www/people/people_utils.php:299 www/project/admin/users.php:318
+#: www/project/admin/users.php:411 www/project/admin/users.php:499
+#: www/project/admin/users.php:523
 msgid "Action"
 msgstr ""
 
@@ -9622,7 +9589,7 @@
 msgstr[1] ""
 
 #: www/admin/search.php:91 www/admin/unsubscribe.php:114
-#: www/admin/useredit.php:116 www/project/admin/massadd.php:90
+#: www/admin/useredit.php:116 www/project/admin/massadd.php:112
 #: www/project/admin/massfinish.php:78
 #: www/search/include/renderers/PeopleHtmlSearchRenderer.class.php:45
 #: www/top/topusers.php:64
@@ -11129,7 +11096,7 @@
 msgid "Display all public projects as trove tree"
 msgstr ""
 
-#: www/include/Layout.class.php:1353 www/themes/evolvis/Theme.class.php:538
+#: www/include/Layout.class.php:1353 www/themes/evolvis/Theme.class.php:568
 msgid "Display an alphabetically sorted list of all public projects"
 msgstr ""
 
@@ -11452,8 +11419,8 @@
 
 #: www/include/html.php:355 www/include/html.php:488 www/include/html.php:752
 #: www/pm/browse_task.php:584 www/pm/browse_task.php:609
-#: www/pm/browse_task.php:620 www/tracker/browse.php:867
-#: www/tracker/browse.php:875 www/tracker/browse.php:884
+#: www/pm/browse_task.php:620 www/tracker/browse.php:879
+#: www/tracker/browse.php:887 www/tracker/browse.php:896
 msgid "No Change"
 msgstr ""
 
@@ -11465,55 +11432,55 @@
 msgid "Highest"
 msgstr ""
 
-#: www/include/html.php:852
+#: www/include/html.php:855
 #, php-format
-msgid "Project access problem: %s"
+msgid "Could not access the project #%d"
 msgstr ""
 
-#: www/include/html.php:854
+#: www/include/html.php:859
 #, php-format
-msgid "Project Problem: %s"
+msgid "Error accessing the project #%d: %s"
 msgstr ""
 
-#: www/include/html.php:907 www/my/bookmark_add.php:28
+#: www/include/html.php:913 www/my/bookmark_add.php:28
 msgid "My Personal Page"
 msgstr ""
 
-#: www/include/html.php:909 www/themes/evolvis/Theme.class.php:121
+#: www/include/html.php:915 www/themes/evolvis/Theme.class.php:121
 msgid "Manage projects, assigned tasks, bugs, etc."
 msgstr ""
 
-#: www/include/html.php:917
+#: www/include/html.php:923
 msgid ""
 "Select widgets to add to the User Summary page from a list of available "
 "widgets"
 msgstr ""
 
-#: www/include/html.php:921 www/include/project_home.php:82
+#: www/include/html.php:927 www/include/project_home.php:76
 msgid "Customise number and sizes of columns to use for widgets"
 msgstr ""
 
-#: www/include/html.php:924
+#: www/include/html.php:930
 msgid "Trackers dashboard"
 msgstr ""
 
-#: www/include/html.php:926
+#: www/include/html.php:932
 msgid "Have an overview about all tracker items related to you"
 msgstr ""
 
-#: www/include/html.php:929
+#: www/include/html.php:935
 msgid "Diary & Notes"
 msgstr ""
 
-#: www/include/html.php:931
+#: www/include/html.php:937
 msgid "-tooltip:diary-and-notes"
 msgstr ""
 
-#: www/include/html.php:936
+#: www/include/html.php:942
 msgid "Change the password, SSH keys; configure account settings"
 msgstr ""
 
-#: www/include/html.php:1274 www/notepad.php:48
+#: www/include/html.php:1277 www/notepad.php:48
 msgid "FusionForge Notepad"
 msgstr ""
 
@@ -11521,11 +11488,11 @@
 msgid "Project Home"
 msgstr ""
 
-#: www/include/project_home.php:74
+#: www/include/project_home.php:68
 msgid "Customise Layout"
 msgstr ""
 
-#: www/include/project_home.php:81
+#: www/include/project_home.php:75
 msgid ""
 "Select widgets to add to the Project Summary page from a list of available "
 "widgets"
@@ -12016,15 +11983,15 @@
 #: www/my/dashboard.php:69 www/pm/browse_task.php:219
 #: www/pm/browse_task.php:413 www/pm/browse_task.php:610
 #: www/pm/include/pm_columns.php:37 www/pm/templates/detail_template.php:20
-#: www/tracker/admin/form-customizelist.php:45 www/tracker/browse.php:277
-#: www/tracker/browse.php:688 www/tracker/browse.php:871
+#: www/tracker/admin/form-customizelist.php:45 www/tracker/browse.php:280
+#: www/tracker/browse.php:691 www/tracker/browse.php:883
 #: www/tracker/item.php:153 www/tracker/query.php:198
 msgid "Priority"
 msgstr ""
 
 #: www/my/dashboard.php:71 www/pm/browse_task.php:411
 #: www/pm/browse_task.php:617 www/pm/templates/detail_template.php:30
-#: www/tracker/browse.php:691 www/tracker/browse.php:874
+#: www/tracker/browse.php:694 www/tracker/browse.php:886
 #: www/tracker/item.php:167
 msgid "Assigned to"
 msgstr ""
@@ -12899,8 +12866,8 @@
 
 #: www/people/viewjob.php:80 www/pm/include/ProjectTaskHTML.class.php:118
 #: www/project/report/index.php:137
-#: www/tracker/admin/form-customizelist.php:43 www/tracker/browse.php:279
-#: www/tracker/browse.php:679 www/tracker/query.php:200
+#: www/tracker/admin/form-customizelist.php:43 www/tracker/browse.php:282
+#: www/tracker/browse.php:682 www/tracker/query.php:200
 msgid "Open Date"
 msgstr ""
 
@@ -13049,7 +13016,7 @@
 msgstr ""
 
 #: www/pm/admin/index.php:403 www/pm/index.php:47 www/pm/task.php:95
-#: www/tracker/browse.php:93 www/tracker/taskmgr.php:151
+#: www/tracker/browse.php:96 www/tracker/taskmgr.php:151
 msgid "Could Not Get Factory"
 msgstr ""
 
@@ -13086,14 +13053,14 @@
 #: www/pm/browse_task.php:195 www/pm/browse_task.php:206
 #: www/pm/browse_task.php:296 www/pm/ganttpage.php:56 www/pm/ganttpage.php:58
 #: www/pm/ganttpage.php:60 www/pm/ganttpage.php:62
-#: www/reporting/usersummary.php:53 www/tracker/browse.php:264
-#: www/tracker/browse.php:343 www/tracker/browse.php:350
+#: www/reporting/usersummary.php:53 www/tracker/browse.php:267
+#: www/tracker/browse.php:346 www/tracker/browse.php:353
 #: www/tracker/query.php:346
 msgid "Any"
 msgstr ""
 
 #: www/pm/browse_task.php:197 www/pm/browse_task.php:581
-#: www/pm/ganttpage.php:58 www/tracker/browse.php:269
+#: www/pm/ganttpage.php:58 www/tracker/browse.php:272
 msgid "Unassigned"
 msgstr ""
 
@@ -13124,7 +13091,7 @@
 msgstr ""
 
 #: www/pm/browse_task.php:295 www/pm/ganttpage.php:155
-#: www/tracker/browse.php:282 www/tracker/browse.php:521
+#: www/tracker/browse.php:285 www/tracker/browse.php:524
 #: www/tracker/query.php:203 www/tracker/query.php:343
 msgid "Assignee"
 msgstr ""
@@ -13153,7 +13120,7 @@
 msgid "Add tasks using the link above"
 msgstr ""
 
-#: www/pm/browse_task.php:351 www/tracker/browse.php:554
+#: www/pm/browse_task.php:351 www/tracker/browse.php:557
 #, php-format
 msgid "Displaying %d results."
 msgstr ""
@@ -13200,7 +13167,7 @@
 msgid "Sub-Project"
 msgstr ""
 
-#: www/pm/browse_task.php:565 www/tracker/browse.php:828
+#: www/pm/browse_task.php:565 www/tracker/browse.php:840
 msgid "Mass Update"
 msgstr ""
 
@@ -13212,7 +13179,7 @@
 msgid "Clear all"
 msgstr ""
 
-#: www/pm/browse_task.php:604 www/tracker/browse.php:850
+#: www/pm/browse_task.php:604 www/tracker/browse.php:862
 msgid ""
 "<strong>Admin:</strong> If you wish to apply changes to all items selected "
 "above, use these controls to change their properties and click once on "
@@ -13223,7 +13190,7 @@
 msgid "Subproject"
 msgstr ""
 
-#: www/pm/browse_task.php:626 www/tracker/browse.php:891
+#: www/pm/browse_task.php:626 www/tracker/browse.php:903
 msgid "Mass update"
 msgstr ""
 
@@ -14048,32 +14015,37 @@
 msgid "(send on all updates)"
 msgstr ""
 
-#: www/project/admin/massadd.php:67 www/project/admin/users.php:298
+#: www/project/admin/massadd.php:68 www/project/admin/users.php:299
 msgid "Add Users From List"
 msgstr ""
 
-#: www/project/admin/massadd.php:71
+#: www/project/admin/massadd.php:72
 msgid ""
 "Check the box next to the name of the user(s) you want to add. Your choices "
 "will be preserved if you click any of the letters below. When done, click "
 "\"Finish\" to choose the roles for the users you are adding."
 msgstr ""
 
-#: www/project/admin/massadd.php:77
+#: www/project/admin/massadd.php:78
 msgid ""
 "Choose the <strong>First Letter</strong> of the name of the person you wish "
 "to add."
 msgstr ""
 
-#: www/project/admin/massadd.php:87 www/project/admin/users.php:104
+#: www/project/admin/massadd.php:88 www/project/admin/users.php:104
 msgid "No Matching Users Found"
 msgstr ""
 
-#: www/project/admin/massadd.php:92
+#: www/project/admin/massadd.php:110
 msgid "Add user"
 msgstr ""
 
-#: www/project/admin/massadd.php:116
+#: www/project/admin/massadd.php:124
+#, php-format
+msgid "%2$s, %1$s"
+msgstr ""
+
+#: www/project/admin/massadd.php:131
 msgid "Finish"
 msgstr ""
 
@@ -14210,7 +14182,7 @@
 msgid "Could Not Get RoleObserver"
 msgstr ""
 
-#: www/project/admin/roleedit.php:141 www/project/admin/users.php:486
+#: www/project/admin/roleedit.php:141 www/project/admin/users.php:490
 msgid "Edit Observer"
 msgstr ""
 
@@ -14365,49 +14337,49 @@
 msgid "Pending Membership Requests"
 msgstr ""
 
-#: www/project/admin/users.php:261
+#: www/project/admin/users.php:262
 msgid "Accept"
 msgstr ""
 
-#: www/project/admin/users.php:272 www/project/admin/users.php:274
-#: www/project/admin/users.php:293
+#: www/project/admin/users.php:273 www/project/admin/users.php:275
+#: www/project/admin/users.php:294
 msgid "Add Member"
 msgstr ""
 
-#: www/project/admin/users.php:304
+#: www/project/admin/users.php:305
 msgid "Current Project Members"
 msgstr ""
 
-#: www/project/admin/users.php:373
+#: www/project/admin/users.php:377
 msgid "Grant extra role"
 msgstr ""
 
-#: www/project/admin/users.php:393 www/tracker/admin/form-workflow.php:119
+#: www/project/admin/users.php:397 www/tracker/admin/form-workflow.php:119
 msgid "Edit Roles"
 msgstr ""
 
-#: www/project/admin/users.php:405 www/project/admin/users.php:494
-#: www/project/admin/users.php:518
+#: www/project/admin/users.php:409 www/project/admin/users.php:498
+#: www/project/admin/users.php:522
 msgid "Role name"
 msgstr ""
 
-#: www/project/admin/users.php:435
+#: www/project/admin/users.php:439
 msgid "Edit Permissions"
 msgstr ""
 
-#: www/project/admin/users.php:492
+#: www/project/admin/users.php:496
 msgid "Currently used external roles"
 msgstr ""
 
-#: www/project/admin/users.php:507
+#: www/project/admin/users.php:511
 msgid "Unlink Role"
 msgstr ""
 
-#: www/project/admin/users.php:516
+#: www/project/admin/users.php:520
 msgid "Available external roles"
 msgstr ""
 
-#: www/project/admin/users.php:537
+#: www/project/admin/users.php:541
 msgid "Link external role"
 msgstr ""
 
@@ -14627,7 +14599,7 @@
 "%1$s</p>"
 msgstr ""
 
-#: www/register/index.php:166 www/themes/evolvis/Theme.class.php:532
+#: www/register/index.php:166 www/themes/evolvis/Theme.class.php:562
 msgid "Register Project"
 msgstr ""
 
@@ -15845,6 +15817,10 @@
 msgid "Script Type"
 msgstr ""
 
+#: www/snippet/submit.php:119
+msgid "License"
+msgstr ""
+
 #: www/snippet/submit.php:142
 msgid "Paste the Code Here"
 msgstr ""
@@ -16573,7 +16549,7 @@
 msgid "Toggle"
 msgstr ""
 
-#: www/themes/evolvis/Theme.class.php:533
+#: www/themes/evolvis/Theme.class.php:563
 msgid "Register a new Project on the forge"
 msgstr ""
 
@@ -16876,8 +16852,8 @@
 msgid "Submitted By"
 msgstr ""
 
-#: www/tracker/admin/form-customizelist.php:48 www/tracker/browse.php:280
-#: www/tracker/browse.php:682 www/tracker/query.php:201
+#: www/tracker/admin/form-customizelist.php:48 www/tracker/browse.php:283
+#: www/tracker/browse.php:685 www/tracker/query.php:201
 msgid "Close Date"
 msgstr ""
 
@@ -16886,7 +16862,7 @@
 msgid "Detailed description"
 msgstr ""
 
-#: www/tracker/admin/form-customizelist.php:50 www/tracker/browse.php:699
+#: www/tracker/admin/form-customizelist.php:50 www/tracker/browse.php:702
 msgid "Related tasks"
 msgstr ""
 
@@ -17321,148 +17297,148 @@
 msgid "Element deleted"
 msgstr ""
 
-#: www/tracker/browse.php:161
+#: www/tracker/browse.php:164
 msgid "Query Name"
 msgstr ""
 
-#: www/tracker/browse.php:165 www/tracker/browse.php:499
+#: www/tracker/browse.php:168 www/tracker/browse.php:502
 msgid "Load"
 msgstr ""
 
-#: www/tracker/browse.php:177
+#: www/tracker/browse.php:180
 msgid "Deleted query successful."
 msgstr ""
 
-#: www/tracker/browse.php:220
+#: www/tracker/browse.php:223
 #, php-format
 msgid "Saved query with name \"%s\"."
 msgstr ""
 
-#: www/tracker/browse.php:281 www/tracker/query.php:202
+#: www/tracker/browse.php:284 www/tracker/query.php:202
 msgid "Submitter"
 msgstr ""
 
-#: www/tracker/browse.php:298 www/tracker/query.php:219
+#: www/tracker/browse.php:301 www/tracker/query.php:219
 msgid "Ascending"
 msgstr ""
 
-#: www/tracker/browse.php:299 www/tracker/query.php:220
+#: www/tracker/browse.php:302 www/tracker/query.php:220
 msgid "Descending"
 msgstr ""
 
-#: www/tracker/browse.php:309 www/tracker/query.php:231
+#: www/tracker/browse.php:312 www/tracker/query.php:231
 msgid "Any changes"
 msgstr ""
 
-#: www/tracker/browse.php:310 www/tracker/query.php:232
+#: www/tracker/browse.php:313 www/tracker/query.php:232
 msgid "Last 24H"
 msgstr ""
 
-#: www/tracker/browse.php:311 www/tracker/query.php:233
+#: www/tracker/browse.php:314 www/tracker/query.php:233
 msgid "Last 7days"
 msgstr ""
 
-#: www/tracker/browse.php:312 www/tracker/query.php:234
+#: www/tracker/browse.php:315 www/tracker/query.php:234
 msgid "Last 2weeks"
 msgstr ""
 
-#: www/tracker/browse.php:313 www/tracker/query.php:235
+#: www/tracker/browse.php:316 www/tracker/query.php:235
 msgid "Last 1month"
 msgstr ""
 
-#: www/tracker/browse.php:372
+#: www/tracker/browse.php:375
 msgid "Power Query [OLD]"
 msgstr ""
 
-#: www/tracker/browse.php:424
+#: www/tracker/browse.php:427
 msgid "Power Query"
 msgstr ""
 
-#: www/tracker/browse.php:426 www/tracker/browse.php:431
+#: www/tracker/browse.php:429 www/tracker/browse.php:434
 #: www/tracker/query.php:254 www/tracker/query.php:258
 msgid "Build Query"
 msgstr ""
 
-#: www/tracker/browse.php:437
+#: www/tracker/browse.php:440
 msgid "Advanced queries"
 msgstr ""
 
-#: www/tracker/browse.php:457
+#: www/tracker/browse.php:460
 msgid "Select Query"
 msgstr ""
 
-#: www/tracker/browse.php:459
+#: www/tracker/browse.php:462
 msgid "Select One"
 msgstr ""
 
-#: www/tracker/browse.php:470
+#: www/tracker/browse.php:473
 msgid "Tracker Queries"
 msgstr ""
 
-#: www/tracker/browse.php:488
+#: www/tracker/browse.php:491
 msgid "Private Queries"
 msgstr ""
 
-#: www/tracker/browse.php:514
+#: www/tracker/browse.php:517
 msgid "Simple Filtering and Sorting"
 msgstr ""
 
-#: www/tracker/browse.php:543 www/tracker/query.php:392
+#: www/tracker/browse.php:546 www/tracker/query.php:392
 msgid "Order by"
 msgstr ""
 
-#: www/tracker/browse.php:546
+#: www/tracker/browse.php:549
 msgid "Quick Browse"
 msgstr ""
 
-#: www/tracker/browse.php:571
+#: www/tracker/browse.php:574
 msgid "Default"
 msgstr ""
 
-#: www/tracker/browse.php:572
+#: www/tracker/browse.php:575
 msgid ""
 "Viewing only opened records by default, use 'Advanced queries' or 'Simple "
 "Filtering and Sorting' to change."
 msgstr ""
 
-#: www/tracker/browse.php:662
+#: www/tracker/browse.php:665
 #, php-format
 msgid "unknown #%d"
 msgstr ""
 
-#: www/tracker/browse.php:703
+#: www/tracker/browse.php:706
 #, php-format
 msgid "unknown (\"%s\")"
 msgstr ""
 
-#: www/tracker/browse.php:846
+#: www/tracker/browse.php:858
 msgid "Check  all"
 msgstr ""
 
-#: www/tracker/browse.php:848
+#: www/tracker/browse.php:860
 msgid "Clear  all"
 msgstr ""
 
-#: www/tracker/browse.php:875
+#: www/tracker/browse.php:887
 #: www/tracker/include/ArtifactTypeHtml.class.php:656
 #: www/tracker/include/ArtifactTypeHtml.class.php:688
 msgid "Nobody"
 msgstr ""
 
-#: www/tracker/browse.php:879
+#: www/tracker/browse.php:891
 msgid "Canned Response"
 msgstr ""
 
-#: www/tracker/browse.php:896 www/tracker/browse.php:898
+#: www/tracker/browse.php:908 www/tracker/browse.php:910
 msgid "Caption"
 msgstr ""
 
-#: www/tracker/browse.php:901
+#: www/tracker/browse.php:913
 #, php-format
 msgid "* Denotes requests > %1$s Days Old"
 msgstr ""
 
-#: www/tracker/browse.php:911
+#: www/tracker/browse.php:923
 msgid "No items found"
 msgstr ""
 

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/utils/fixscripts/fix_default_role.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/utils/fixscripts/fix_default_role.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/utils/fixscripts/fix_default_role.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -19,7 +19,7 @@
  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 
-require (dirname(__FILE__).'/../www/env.inc.php');
+require dirname(__FILE__).'/../common/include/env.inc.php';
 require_once $gfcommon.'include/pre.php';
 			 
 $res=db_query_params('CREATE FUNCTION upgrade_default_role_to_admin () RETURNS void AS $$

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/utils/fixscripts/populate_template_project.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/utils/fixscripts/populate_template_project.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/utils/fixscripts/populate_template_project.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -21,7 +21,7 @@
  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 
-require (dirname(__FILE__).'/../www/env.inc.php');
+require dirname(__FILE__).'/../common/include/env.inc.php';
 require_once $gfcommon.'include/pre.php';
 
 $err='';

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/utils/include.pl
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/utils/include.pl	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/utils/include.pl	2012-04-05 10:25:42 UTC (rev 18232)
@@ -4,13 +4,60 @@
 ##############################
 # Global Variables
 ##############################
-$config_file	=	"/etc/gforge/local.pl";	# Local Include file for database username and password
-
 $dummy_uid      =       getpwnam('scm-gforge');                  # UserID of the dummy user that will own group's files
 $date           =       int(time()/3600/24);    # Get the number of days since 1/1/1970 for /etc/shadow
 
-require $config_file;
+ at possible_paths = (
+    '/usr/share/gforge/bin',
+    '/usr/share/fusionforge/bin',
+    '/usr/local/share/gforge/bin',
+    '/usr/local/share/fusionforge/bin',
+    '/opt/gforge/bin',
+    '/opt/fusionforge/bin',
+    '/usr/bin',
+    '/usr/local/bin') ;
+foreach $p (@possible_paths) {
+    if (-x "$p/forge_get_config") {
+	$fgc = "$p/forge_get_config";
+	last;
+    }
+}
 
+%forge_config_cache = ();
+
+sub forge_get_config ($$) {
+    my $var = shift;
+    my $sec = shift || 'core';
+
+    if (!defined $forge_config_cache{$sec}{$var}) {
+	$forge_config_cache{$sec}{$var} = qx!$fgc $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 ('ldap_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') ;
+
 ##############################
 # Database Connect Functions
 ##############################

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/utils/inject-files.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/utils/inject-files.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/utils/inject-files.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -19,7 +19,7 @@
  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 
-require (dirname (__FILE__).'/../www/env.inc.php');
+require (dirname (__FILE__).'/../common/include/env.inc.php');
 require_once $gfcommon.'include/pre.php';
 require_once $gfcommon.'frs/FRSPackage.class.php';
 require_once $gfcommon.'frs/FRSRelease.class.php';

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/utils/inject-groups.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/utils/inject-groups.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/utils/inject-groups.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -19,7 +19,7 @@
  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 
-require (dirname (__FILE__).'/../www/env.inc.php');
+require (dirname (__FILE__).'/../common/include/env.inc.php');
 require_once $gfcommon.'include/pre.php';
 
 db_begin ();

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/utils/inject-users.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/utils/inject-users.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/utils/inject-users.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -19,7 +19,7 @@
  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 
-require (dirname (__FILE__).'/../www/env.inc.php');
+require (dirname (__FILE__).'/../common/include/env.inc.php');
 require_once $gfcommon.'include/pre.php';
 
 db_begin ();

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/utils/normalize_roles.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/utils/normalize_roles.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/utils/normalize_roles.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -19,9 +19,9 @@
  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 
-require (dirname(__FILE__).'/../www/env.inc.php');
+require (dirname(__FILE__).'/../common/include/env.inc.php');
 require_once $gfcommon.'include/pre.php';
-			 
+
 $err='';
 
 // Plugins subsystem
@@ -39,8 +39,9 @@
 for ($i=0; $i<$rows; $i++) {
 	$role = RBACEngine::getInstance()->getRoleById (db_result($res,$i,'role_id')) ;
 	echo "Normalizing role ".$role->getDisplayableName()."\n" ;
-	
+
 	$role->normalizeData() ;
 }
 
-?>
+$params = array();
+plugin_hook("normalise_roles", $params);

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/utils/sync_unix_groups.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/utils/sync_unix_groups.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/utils/sync_unix_groups.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -19,7 +19,7 @@
  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 
-require (dirname(__FILE__).'/../www/env.inc.php');
+require (dirname(__FILE__).'/../common/include/env.inc.php');
 require_once $gfcommon.'include/pre.php';
 			 
 $err='';

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/utils/user-del.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/utils/user-del.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/utils/user-del.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -47,7 +47,7 @@
 	usage();
 }
 
-require_once(dirname(__FILE__).'/../www/env.inc.php');
+require dirname(__FILE__).'/../common/include/env.inc.php';
 require_once $gfwww.'include/squal_pre.php';
 require_once $gfcommon.'include/cron_utils.php';
 

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/www/admin/grouplist.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/www/admin/grouplist.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/www/admin/grouplist.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -1,8 +1,11 @@
 <?php
-/**
- * List of all groups in the system. 
+/*-
+ * List of all groups on the forge.
  *
- * Copyright 1999-2000 (c) The SourceForge Crew
+ * Copyright © 2012
+ *	Thorsten Glaser <t.glaser at tarent.de>
+ * Copyright © 1999-2000 The SourceForge Crew
+ * All rights reserved.
  *
  * This file is part of FusionForge. FusionForge is free software;
  * you can redistribute it and/or modify it under the terms of the
@@ -22,152 +25,187 @@
 
 require_once('../env.inc.php');
 require_once $gfcommon.'include/pre.php';
+require_once $gfcommon.'include/datepick.php';
 require_once $gfwww.'admin/admin_utils.php';
 
-site_admin_header(array('title'=>_('Project List')));
+$tcolnames = array(
+	_('Project Name (click to edit)'),
+	_('Register Time'),
+	_('Unix name'),
+	_('Status'),
+	_('Public?'),
+	_('Licence'),
+	_('Members#'),
+	_('Template?'),
+    );
 
-$sortorder = getStringFromRequest('sortorder');
+$tcolids = array(
+	'group_name',
+	'register_time',
+	'unix_group_name',
+	'status',
+	'is_public',
+	'license_name',
+	'members',
+	'is_template',
+    );
+
 $group_name_search = getStringFromRequest('group_name_search');
 $status = getStringFromRequest('status');
+$sortorder = getStringFromRequest('sortorder');
+$sortorder = in_array($sortorder, $tcolids) ? $sortorder : 'unix_group_name';
+$sortrev = getIntFromRequest('sortrev');
 
-$sortorder = util_ensure_value_in_set ($sortorder,
-				       array ('group_name',
-					      'register_time',
-					      'unix_group_name',
-					      'status',
-					      'is_public',
-					      'license_name',
-					      'members',
-					      'is_template')) ;
-
-$sqlsortorder = $sortorder;
-
-if ($sortorder == 'is_public') {
-	$sortorder = 'group_name' ;
-} elseif ($sortorder == 'is_template') {
-	$sortorder = 'is_template DESC' ;
+if (USE_PFO_RBAC) {
+	$ra = RoleAnonymous::getInstance();
+	$qpa = db_construct_qpa(false, '
+		SELECT group_name, register_time, unix_group_name,
+		    groups.group_id, groups.is_template, status, license_name,
+		    COUNT(DISTINCT(pfo_user_role.user_id)) AS members
+		FROM groups
+		LEFT OUTER JOIN pfo_role
+			ON pfo_role.home_group_id = groups.group_id
+		LEFT OUTER JOIN pfo_user_role
+			ON pfo_user_role.role_id = pfo_role.role_id
+		    , licenses
+		WHERE
+			license_id = license
+	    ');
+} else {
+	$qpa = db_construct_qpa(false, '
+		SELECT group_name, register_time, unix_group_name,
+		    groups.group_id, groups.is_public, groups.is_template,
+		    status, license_name,
+		    COUNT(user_group.group_id) AS members
+		FROM groups
+		LEFT JOIN user_group
+			ON user_group.group_id = groups.group_id
+		    , licenses
+		WHERE
+			license_id = license
+	    ');
 }
+if ($group_name_search) {
+	$qpa = db_construct_qpa($qpa, '
+		AND lower(group_name) LIKE $1
+	    ', array(
+		strtolower($group_name_search . '%'),
+	    ));
+} else if ($status) {
+	$qpa = db_construct_qpa($qpa, '
+		AND status = $1
+	    ', array(
+		$status,
+	    ));
+}
+if (USE_PFO_RBAC) {
+	$qpa = db_construct_qpa($qpa, '
+		GROUP BY group_name, register_time, unix_group_name,
+		    groups.group_id,
+		    groups.is_template, status, license_name
+	    ');
+} else {
+	$qpa = db_construct_qpa($qpa, '
+		GROUP BY group_name, register_time, unix_group_name,
+		    groups.group_id, groups.is_public,
+		    groups.is_template, status, license_name
+	    ');
+}
+$res = db_query_qpa($qpa);
 
-if ($group_name_search != '') {
-	echo "<p>"._('Projects that begin with'). " <strong>".$group_name_search."</strong></p>\n";
+$rows = array();
+while (($grp = db_fetch_array($res))) {
 	if (USE_PFO_RBAC) {
-		$res = db_query_params ('SELECT group_name,register_time,unix_group_name,groups.group_id,groups.is_template,status,license_name,COUNT(DISTINCT(pfo_user_role.user_id)) AS members FROM groups LEFT OUTER JOIN pfo_role ON pfo_role.home_group_id=groups.group_id LEFT OUTER JOIN pfo_user_role ON pfo_user_role.role_id=pfo_role.role_id, licenses WHERE license_id=license AND lower(group_name) LIKE $1 GROUP BY group_name,register_time,unix_group_name,groups.group_id,groups.is_template,status,license_name ORDER BY '.$sqlsortorder,
-					array (strtolower ("$group_name_search%"))) ;
-	} else {
-	$res = db_query_params ('SELECT group_name,register_time,unix_group_name,groups.group_id,groups.is_public,groups.is_template,status,license_name,COUNT(user_group.group_id) AS members
-FROM groups
-LEFT JOIN user_group ON user_group.group_id=groups.group_id, licenses
-WHERE license_id=license
-AND lower(group_name) LIKE $1
-GROUP BY group_name,register_time,unix_group_name,groups.group_id,groups.is_public,groups.is_template,status,license_name
-ORDER BY '.$sortorder,
-				array (strtolower ("$group_name_search%"))) ;
+		$grp['is_public'] = $ra->hasPermission('project_read',
+		    $grp['group_id']) ? 1 : 0;
 	}
-} else {
-	if (USE_PFO_RBAC) {
-		$qpa = db_construct_qpa (false, 'SELECT group_name,register_time,unix_group_name,groups.group_id,groups.is_template,status,license_name,COUNT(DISTINCT(pfo_user_role.user_id)) AS members FROM groups LEFT OUTER JOIN pfo_role ON pfo_role.home_group_id=groups.group_id LEFT OUTER JOIN pfo_user_role ON pfo_user_role.role_id=pfo_role.role_id, licenses WHERE license_id=license') ;
-		if ($status) {
-			$qpa = db_construct_qpa ($qpa, ' AND status=$1', array ($status)) ;
-		}
-		$qpa = db_construct_qpa ($qpa, ' GROUP BY group_name,register_time,unix_group_name,groups.group_id,groups.is_template,status,license_name ORDER BY '.$sqlsortorder) ;
-		$res = db_query_qpa ($qpa) ;
-	} else {
-		$qpa = db_construct_qpa (false, 'SELECT group_name,register_time,unix_group_name,groups.group_id,groups.is_public,groups.is_template,status,license_name,COUNT(user_group.group_id) AS members
-FROM groups
-LEFT JOIN user_group ON user_group.group_id=groups.group_id, licenses
-WHERE license_id=license',
-					 array ()) ;
-		if ($status) {
-			$qpa = db_construct_qpa ($qpa, ' AND status=$1', array ($status)) ;
-		}
-		$qpa = db_construct_qpa ($qpa, ' GROUP BY group_name,register_time,unix_group_name,groups.group_id,groups.is_public,groups.is_template,status,license_name ORDER BY '.$sortorder) ;
-		$res = db_query_qpa ($qpa) ;
-	}
+	$rows[] = $grp;
 }
 
-$headers = array(
-	_('Project Name (click to edit)'),
-	_('Register Time'),
-	_('Unix name'),
-	_('Status'),
-	_('Public?'),
-	_('License'),
-	_('Members'),
-	_('Template?')
-);
+usort($rows, create_function('$a, $b', '
+	global $sortorder, $sortrev;
 
-$headerLinks = array(
-	'/admin/grouplist.php?sortorder=group_name',
-	'/admin/grouplist.php?sortorder=register_time',
-	'/admin/grouplist.php?sortorder=unix_group_name',
-	'/admin/grouplist.php?sortorder=status',
-	'/admin/grouplist.php?sortorder=is_public',
-	'/admin/grouplist.php?sortorder=license_name',
-	'/admin/grouplist.php?sortorder=members',
-	'/admin/grouplist.php?sortorder=is_template'
-);
+	$av = $a[$sortorder];
+	$bv = $b[$sortorder];
 
-echo $HTML->listTableTop($headers, $headerLinks);
+	switch ($sortorder) {
+	case "register_time":
+	case "is_public":
+	case "members":
+	case "is_template":
+		$rv = $av === $bv ? 0 : $av > $bv ? 1 : -1;
+		break;
 
-if (USE_PFO_RBAC) {
-	$public_rows = array();
-	$private_rows = array();
-	$ra = RoleAnonymous::getInstance() ;
-	while ($grp = db_fetch_array($res)) {
-		if ($ra->hasPermission('project_read', $grp['group_id'])) {
-			$grp['is_public'] = 1;
-			$public_rows[] = $grp;
-		} else {
-			$grp['is_public'] = 0;
-			$private_rows[] = $grp;
-		}
+	case "group_name":
+	case "status":
+	case "license_name":
+		$rv = strcasecmp($av, $bv);
+		break;
+
+	case "unix_group_name":
+	default:
+		$rv = 0;
 	}
-	$rows = $private_rows;
-	$rows = array_merge($rows, $public_rows);
-} else {
-	$rows = array();
-	while ($grp = db_fetch_array($res)) {
-		$rows[] = $grp;
+
+	/* second order sort is by unix group id */
+	$rv = $rv ? $rv : strcmp($a["unix_group_name"], $b["unix_group_name"]);
+
+	return ($sortrev ? -$rv : $rv);
+    '));
+
+$t = new EvolvisTable($tcolnames, array_map(create_function('$v', '
+	global $sortorder, $sortrev;
+
+	$rv = "/admin/grouplist.php?sortorder=" . $v;
+	if ($v == $sortorder && !$sortrev) {
+		$rv .= "&sortrev=1";
 	}
-}
 
-$i = 0;
+	return ($rv);
+    '), $tcolids));
+
 foreach ($rows as $grp) {
+	switch ($grp['status']) {
+	case 'A':
+		$status = "active";
+		break;
+	case 'D':
+		$status = "deleted";
+		break;
+	case 'P':
+		$status = "pending";
+		break;
+	default:
+		$status = "";
+	}
 
-	if ($grp['status']=='A'){
-		$status="active";
+	$r = $t->tr();
+	$r->td()->setraw(html_e('a', array(
+		'href' => 'groupedit.php?group_id=' . $grp['group_id'],
+	    ), util_html_secure($grp['group_name'])));
+	$x = $r->td();
+	if ($grp['register_time']) {
+		$x->set(datepick_format($grp['register_time'], true));
 	}
-	if ($grp['status']=='P'){
-		$status="pending";
-	}
-	if ($grp['status']=='D'){
-		$status="deleted";
-	}
-	
-	$time_display = "";
-	if ($grp['register_time'] != 0) {
-		$time_display = date(_('Y-m-d H:i'),$grp['register_time']);
-	}
-	echo '<tr '.$HTML->boxGetAltRowStyle($i).'>';
-	echo '<td><a href="groupedit.php?group_id='.$grp['group_id'].'">'.$grp['group_name'].'</a></td>';
-	echo '<td>'.$time_display.'</td>';
-	echo '<td>'.$grp['unix_group_name'].'</td>';
-	echo '<td class="'.$status.'">'.$grp['status'].'</td>';
-	echo '<td>'.$grp['is_public'].'</td>';
-	echo '<td>'.$grp['license_name'].'</td>';
-	echo '<td>'.$grp['members'].'</td>';
-	echo '<td>'.$grp['is_template'].'</td>';
-	echo '</tr>';
-	$i++;
+	$r->td()->set($grp['unix_group_name']);
+	$r->td(array(
+		'class' => $status,
+	    ), -1, $grp['status']);
+	$r->td()->set($grp['is_public'] ? _('Yes') : _('No'));
+	$r->td()->set($grp['license_name']);
+	$r->td()->set($grp['members']);
+	$r->td()->set($grp['is_template'] ? _('Yes') : _('No'));
 }
 
-echo $HTML->listTableBottom();
+site_admin_header(array(
+	'title' => _('Project List'),
+    ));
 
+if ($group_name_search) {
+	echo html_e('p', array(
+	    ), util_html_encode(sprintf(_('Projects that begin with "%s"'),
+	    $group_name_search)));
+}
+echo $t->emit();
+
 site_admin_footer(array());
-
-// Local Variables:
-// mode: php
-// c-file-style: "bsd"
-// End:
-
-?>

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/www/include/html.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/www/include/html.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/www/include/html.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -5,7 +5,7 @@
  * Copyright 1999-2001 (c) VA Linux Systems
  * Copyright 2010 (c) FusionForge Team
  * Copyright (C) 2010 Alain Peyrat - Alcatel-Lucent
- * Copyright © 2011
+ * Copyright © 2011, 2012
  *	Thorsten “mirabilos” Glaser <t.glaser at tarent.de>
  *
  * This file is part of FusionForge. FusionForge is free software;
@@ -836,22 +836,28 @@
 
 	//get the project object
 	$project = group_get_object($group_id);
-
-	if (!$project || !is_object($project)) {
-		exit_no_group();
-	} else if ($project->isError()) {
-		if ($project->isPermissionDeniedError()) {
-			if (!session_get_user()) {
- 			$next = '/account/login.php?error_msg='.urlencode($project->getErrorMessage());
- 			if (getStringFromServer('REQUEST_METHOD') != 'POST') {
-				$next .= '&return_to='.urlencode(getStringFromServer('REQUEST_URI'));
- 			}
+	if ($project && !is_object($project)) {
+		$project = false;
+	}
+	if (!$project || $project->isError()) {
+		/* prevent information leak */
+		if (!session_get_user()) {
+			$next = '/account/login.php?error_msg=' .
+			    urlencode('You must log in to access a project.');
+			if (getStringFromServer('REQUEST_METHOD') != 'POST') {
+				$next .= '&return_to=' .
+				    urlencode(getStringFromServer('REQUEST_URI'));
+			}
 			session_redirect($next);
+			/* NOTREACHED */
 		}
-			else
-				exit_error(sprintf(_('Project access problem: %s'),$project->getErrorMessage()),'home');
+		if (!$project) {
+			exit_error(sprintf(_('Could not access the project #%d'),
+			    $group_id), 'home');
+			/* NOTREACHED */
 		}
-		exit_error(sprintf(_('Project Problem: %s'),$project->getErrorMessage()),'home');
+		exit_error(sprintf(_('Error accessing the project #%d: %s'),
+		    $group_id, $project->getErrorMessage()), 'home');
 	}
 
 	// Check permissions in case of restricted access
@@ -1040,14 +1046,11 @@
 		}
 		$rv .= ' ' . $key . '="' . htmlspecialchars($value) . '"';
 	}
-	if (!$content) {
-		if ($shortform) {
-			$rv .= ' />';
-			return $rv;
-		}
-		$content = "";
+	if ($content === "" && $shortform) {
+		$rv .= ' />';
+	} else {
+		$rv .= '>' . $content . '</' . $name . '>';
 	}
-	$rv .= '>' . $content . '</' . $name . '>';
 	return $rv;
 }
 

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/www/include/project_home.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/www/include/project_home.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/www/include/project_home.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -34,12 +34,6 @@
 
 $title = _('Project Home');
 
-use_javascript('/scripts/prototype/prototype.js');
-use_javascript('/scripts/scriptaculous/scriptaculous.js');
-use_javascript('/scripts/codendi/Tooltip.js');
-use_javascript('/scripts/codendi/LayoutManager.js');
-use_javascript('/scripts/codendi/ReorderColumns.js');
-
 $request =& HTTPRequest::instance();
 $request->set('group_id',$group_id);
 

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/www/project/admin/massadd.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/www/project/admin/massadd.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/www/project/admin/massadd.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -24,6 +24,7 @@
 
 require_once('../../env.inc.php');
 require_once $gfcommon.'include/pre.php';
+require_once $gfcommon.'include/EvolvisTable.class.php';
 require_once $gfwww.'project/admin/project_admin_utils.php';
 require_once $gfwww.'include/role_utils.php';
 
@@ -87,30 +88,44 @@
 	echo '<p>' . _('No Matching Users Found') . '</p>';
 } else {
 
-	$titles[]=_('Real name');
-	$titles[]=_('Unix name');
-	$titles[]=_('Add user');
-
-	echo $HTML->listTableTop($titles);
-
 	//
 	//	Everything is built on the multi-dimensial arrays in the Role object
 	//
-	for ($i=0; $i<db_numrows($res); $i++) {
-		$uid = db_result($res,$i,'user_id');
-		echo '<tr '. $HTML->boxGetAltRowStyle($i) . '>
-			<td>'.db_result($res,$i,'lastname').', '.db_result($res,$i,'firstname').'</td>
-			<td>'.db_result($res,$i,'user_name').'</td>
-			<td><input type="checkbox" name="newids[]" value="'. $uid .'"';
-		if (in_array($uid, $accumulated_ids)) {
-			echo ' checked="checked" ';
-		}
-		echo ' /></td></tr>';
 
+	$tstyles = array(
+		array('style' => array(
+			'width:3em;',
+			'white-space:nowrap;',
+			'padding-right:1em;',
+		    )),
+		array('style' => array(
+			'width:12em;',
+			'white-space:nowrap;',
+		    )),
+		array('style' => array(
+			'white-space:nowrap;',
+		    )),
+	    );
+	$t = new EvolvisTable(array(
+		array(_('Add user'), $tstyles[0]),
+		array(_('Unix name'), $tstyles[1]),
+		array(_('Real name'), $tstyles[2]),
+	    ));
+	for ($i = 0; $i < db_numrows($res); $i++) {
+		$uid = db_result($res, $i, 'user_id');
+		$r = $t->tr();
+		$r->td($tstyles[0])->setraw(html_e('input', array(
+			'type' => 'checkbox',
+			'name' => 'newids[]',
+			'value' => $uid,
+			'checked' => (in_array($uid, $accumulated_ids) ? "checked" : false),
+		    )));
+		$r->td($tstyles[1])->set(db_result($res, $i, 'user_name'));
+		$r->td($tstyles[2])->set(sprintf(_('%2$s, %1$s'),
+		    db_result($res, $i, 'firstname'),
+		    db_result($res, $i, 'lastname')));
 	}
-
-	echo $HTML->listTableBottom();
-
+	echo $t->emit();
 }
 
 echo '<p><input type="submit" name="finished" value="'._('Finish').'" /></p>

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/www/project/admin/users.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/www/project/admin/users.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/www/project/admin/users.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -4,7 +4,7 @@
  *
  * Copyright 2004 GForge, LLC
  * Copyright 2006 federicot
- * Copyright © 2011
+ * Copyright © 2011, 2012
  *	Thorsten Glaser <t.glaser at tarent.de>
  * Copyright 2011, Roland Mas
  * All rights reserved.
@@ -253,8 +253,9 @@
 				<td style="white-space: nowrap;"><a
 					href="/users/<?php
 						echo $user->getUnixName();
-					?>"><?php echo $user->getRealName(); ?></a>
-				</td>
+					?>"><?php echo $user->getRealName();
+					?></a> (<?php echo $user->getUnixName();
+				?>)</td>
 				<td style="white-space: nowrap; text-align: right;"><?php
 					echo role_box($group_id,'role_id'); ?>
 				<input type="submit" name="acceptpending"
@@ -334,15 +335,18 @@
 	foreach ($roles as $role) {
 		echo '<tr '. $HTML->boxGetAltRowStyle($i) . '>' ;
 		if (!$seen) {
-			echo '<td style="white-space: nowrap;" rowspan="'.(count($roles)+1).'">
-			<a href="/users/'.$user->getUnixName().'">';
-			$display = $user->getRealName();
-			if (!empty($display)) {
-				echo $user->getRealName();
+			$seen = $user->getRealName();
+			if ($seen) {
+				$seen .= html_e('br');
 			} else {
-				echo $user->getUnixName();
+				$seen = "";
 			}
-			echo "</a></td>\n";
+			echo html_e('td', array(
+				'style' => 'white-space:nowrap;',
+				'rowspan' => count($roles) + 1,
+			    ), html_e('a', array(
+				'href' => '/users/' . $user->getUnixName(),
+			    ), $seen . $user->getUnixName()));
 			$seen = true ;
 		}
 

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/www/projects
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/www/projects	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/www/projects	2012-04-05 10:25:42 UTC (rev 18232)
@@ -1,11 +1,14 @@
 <?php
-/**
+/*-
  * FusionForge Projects Redirector
  *
  * Copyright 1999-2001 (c) VA Linux Systems
  * Copyright 2002-2004 (c) GForge Team
  * Copyright 2010 (c) FusionForge Team
  * http://fusionforge.org/
+ * Copyright © 2012
+ *	Thorsten Glaser <t.glaser at tarent.de>
+ * All rights reserved.
  *
  * This file is part of FusionForge. FusionForge is free software;
  * you can redistribute it and/or modify it under the terms of the
@@ -24,11 +27,11 @@
  */
 
 require_once 'env.inc.php';
-require_once $gfcommon.'include/pre.php';    
+require_once $gfcommon.'include/pre.php';
 
 //
 //	IMPORTANT NOTE!!
-//	Setting up the $project object is all being 
+//	Setting up the $project object is all being
 //	handled in the logger now
 //	This was done so the logger would accurately record these pages
 //
@@ -37,30 +40,48 @@
 //	test to see if the logger was successful in setting up the objects
 //
 if (!$group_id || !$project) {
+	/* prevent information leak */
+	if (!session_get_user()) {
+		/* handles the redirect for us */
+		include $gfwww.'include/project_home.php';
+		exit;
+	}
+
+	/* we are logged in for sure */
 	exit_no_group();
-} else {
-	$subpage = getStringFromRequest('subpage');
+}
 
-	if ($subpage == "admin") {
-		session_redirect(util_make_url("/project/admin/?group_id=$group_id"));
-	} else if ($subpage == "files" || $subpage == "download" || $subpage == "dl") {
-		if (getStringFromRequest('subpage2') == "release") {
-			session_redirect(util_make_url("/frs/admin/qrs.php?group_id=$group_id"));
-		} else {
-			session_redirect(util_make_url("/frs/?group_id=$group_id"));
-		}
-	} else if ($subpage == "cvs") {
-		sysdebug_off("Location: ".account_group_cvsweb_url($project->getUnixName()));
-		exit();
+$subpage = getStringFromRequest('subpage');
+
+switch ($subpage) {
+case "admin":
+	session_redirect("/project/admin/?group_id=$group_id");
+	break;
+case "home":
+	/* project home page; possibly a Wiki */
+	if ($project->usesPlugin("mediawiki")) {
+		session_redirect("/plugins/mediawiki/wiki/" .
+		    $project->getUnixName() . "/index.php");
+	}
+	break;
+case "files":
+case "download":
+case "dl":
+	if (getStringFromRequest('subpage2') == "release") {
+		session_redirect("/frs/admin/qrs.php?group_id=$group_id");
 	} else {
-		//show the project summary page
-		include $gfwww.'include/project_home.php';
+		session_redirect("/frs/?group_id=$group_id");
 	}
+	break;
+case "cvs":
+	session_redirect_uri(account_group_cvsweb_url($project->getUnixName()));
+	break;
 }
 
+/* show the default group summary page */
+include $gfwww.'include/project_home.php';
+
 // Local Variables:
 // mode: php
 // c-file-style: "bsd"
 // End:
-
-?>

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/www/themes/evolvis/Theme.class.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/www/themes/evolvis/Theme.class.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/www/themes/evolvis/Theme.class.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -440,20 +440,50 @@
 				    "\n" . htmlentities(debug_string_backtrace())));
 			} else if ($ct == $cl) {
 				for ($i = 0; $i < $ct; ++$i) {
-					$rv .= html_e('th', array(
-						'class' => 'ff',
-						'align' => 'left',
-					    ), html_e('a', array(
+					$celltext = $params['text'][$i];
+					if (is_array($celltext)) {
+						$cellattr = $celltext[1];
+						$celltext = $celltext[0];
+					} else {
+						$cellattr = array();
+					}
+					$cellattr['align'] =
+					    util_ifsetor($cellattr['align']) ?
+					    $cellattr['align'] : 'left';
+					if (!util_ifsetor($cellattr['class'])) {
+						$cellattr['class'] = 'ff';
+					} else if (is_array($cellattr['class'])) {
+						array_unshift($cellattr['class'], 'ff');
+					} else {
+						$cellattr['class'] = 'ff ' .
+						    $cellattr['class'];
+					}
+					$rv .= html_e('th', $cellattr,
+					    html_e('a', array(
 						'class' => 'titlebar',
 						'href' => $params['link'][$i],
-					    ), $params['text'][$i]));
+					    ), $celltext));
 				}
 			} else {
-				foreach ($params['text'] as $x) {
-					$rv .= html_e('th', array(
-						'class' => 'list_table_top',
-						'align' => 'left',
-					    ), $x);
+				foreach ($params['text'] as $celltext) {
+					if (is_array($celltext)) {
+						$cellattr = $celltext[1];
+						$celltext = $celltext[0];
+					} else {
+						$cellattr = array();
+					}
+					$cellattr['align'] =
+					    util_ifsetor($cellattr['align']) ?
+					    $cellattr['align'] : 'left';
+					if (!util_ifsetor($cellattr['class'])) {
+						$cellattr['class'] = 'list_table_top';
+					} else if (is_array($cellattr['class'])) {
+						array_unshift($cellattr['class'], 'list_table_top');
+					} else {
+						$cellattr['class'] = 'list_table_top ' .
+						    $cellattr['class'];
+					}
+					$rv .= html_e('th', $cellattr, $celltext);
 				}
 			}
 			$rv .= html_ac($spos);

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/www/themes/evolvis/evolvis.css
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/www/themes/evolvis/evolvis.css	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/www/themes/evolvis/evolvis.css	2012-04-05 10:25:42 UTC (rev 18232)
@@ -116,7 +116,7 @@
 	font-weight:bold;
 }
 
-.titlebar td {
+.titlebar td, .titlebar th {
 	background-image:url(/themes/evolvis/images/bg-head.png);
 	background-repeat:repeat-x;
 	line-height:1.5em;

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/www/top/toplist.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/www/top/toplist.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/www/top/toplist.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -61,7 +61,7 @@
 $display_rank = 0;
 $i=0;
 while ($row_top = db_fetch_array($res_top)) {
-	if (!forge_check_perm ('project_read', $row_top['group_id'])) {
+	if (!forge_check_perm ('project_read', $row_top['group_id']) && forge_check_perm('frs', $row_new['group_id'], 'read_public') ) {
 		continue ;
 	}
 	$i++;

Modified: branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/www/tracker/browse.php
===================================================================
--- branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/www/tracker/browse.php	2012-04-05 10:19:22 UTC (rev 18231)
+++ branches/QA-2011Q4:evolvis-qs.lan.tarent.de/src/www/tracker/browse.php	2012-04-05 10:25:42 UTC (rev 18232)
@@ -5,6 +5,8 @@
  * Copyright 1999-2001 (c) VA Linux Systems
  * Copyright 2010 Roland Mas
  * Copyright (C) 2011 Alain Peyrat - Alcatel-Lucent
+ * Copyright © 2012
+ *	Thorsten Glaser <t.glaser at tarent.de>
  *
  * This file is part of FusionForge. FusionForge is free software;
  * you can redistribute it and/or modify it under the terms of the
@@ -38,6 +40,7 @@
 	/* we want them on the top, all of them */
 	'gravity' => 's',
     ));
+use_javascript('/js/sortable.js');
 
 //
 //  make sure this person has permission to view artifacts
@@ -716,7 +719,7 @@
 	}
 
 	if ($art_cnt) {
-		echo $GLOBALS['HTML']->listTableTop($title_arr, $links_arr);
+		echo $GLOBALS['HTML']->listTableTopSortable($title_arr);
 	}
 
 	$then=(time()-$ath->getDuePeriod());
@@ -727,7 +730,10 @@
 		<tr '. $HTML->boxGetAltRowStyle($i) . '>';
  		foreach ($browse_fields as $f) {
 			if ($f == 'id') {
-				echo '<td style="white-space: nowrap;">'.
+				echo html_eo('td', array(
+					'style' => 'white-space:nowrap;',
+					'content' => $art_arr[$i]->getID(),
+				    )) .
 				($IS_ADMIN?'<input type="checkbox" name="artifact_id_list[]" value="'.
 				$art_arr[$i]->getID() .'" /> ':'').
 				'<a href="'.getStringFromServer('PHP_SELF').'?func=detail&aid='.
@@ -736,7 +742,10 @@
 				$ath->getID().'">'.$art_arr[$i]->getID() .
 				'</a></td>';
 			} else if ($f == 'summary') {
-		 		echo '<td><a href="'.getStringFromServer('PHP_SELF').'?func=detail&aid='.
+				echo html_eo('td', array(
+					'content' => $art_arr[$i]->getSummary(),
+				    )) . '
+				<a href="'.getStringFromServer('PHP_SELF').'?func=detail&aid='.
 				$art_arr[$i]->getID() .
 				'&group_id='. $group_id .'&atid='.
 				$ath->getID().'">'.
@@ -749,8 +758,9 @@
 				if ($set != 'closed' && $t < $then) {
 					echo html_ao('strong') . '*';
 				}
-				echo html_ac($as) . html_e('td', array(),
-				    datepick_format($t, true));
+				echo html_ac($as) . html_e('td', array(
+					'content' => $t,
+				    ), datepick_format($t, true));
 			} else if ($f == 'status_id') {
 				echo '<td>'. $art_arr[$i]->getStatusName() .'</td>';
 			} else if ($f == 'priority') {
@@ -765,14 +775,13 @@
 				    ), $art_arr[$i]->getSubmittedUnixName());
 			} else if ($f == 'close_date') {
 				$t = $art_arr[$i]->getCloseDate();
-				echo '<td>';
-				if ($t) {
-					echo datepick_format($t, true);
-				}
-				echo '</td>';
+				echo html_e('td', array(
+					'content' => $t,
+				    ), $t ? datepick_format($t, true) : "", false);
 			} else if ($f == 'details') {
 				echo '<td>'. $art_arr[$i]->getDetails() .'</td>';
 			} else if ($f == 'related_tasks') {
+				/*XXX how to sort? */
 				echo '<td>';
 				$tasks_res = $art_arr[$i]->getRelatedTasks();
 				$s ='';
@@ -790,7 +799,9 @@
 			} else if (intval($f) > 0) {
 				// Now display extra-fields (fields are numbers).
 				$value = $extra_data[$f]['value'];
+				$p = array();
 				if ($extra_data[$f]['type'] == 9) {
+					/*XXX how to sort? */
 					$r = "";
 					foreach (preg_split("/\D+/", $value) as $v) {
 						$v = (int)$v;
@@ -803,12 +814,13 @@
 					}
 					$value = $r;
 				} else if ($extra_data[$f]['type'] == 7) {
+					$p['content'] = $value;
 					if ($art_arr[$i]->getStatusID() == 2) {
 						$value = '<strike>'.$value.'</strike>';
 					}
 					
 				}
-				echo '<td>' . $value .'</td>';
+				echo html_e('td', $p, $value, false);
 			} else {
 				// Display ? for unknown values.
 				echo '<td>?</td>';



More information about the evolvis-commits mailing list