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

mirabilos at evolvis.org mirabilos at evolvis.org
Thu Jan 19 16:25:17 CET 2012


Author: mirabilos
Date: 2012-01-19 16:25:17 +0100 (Thu, 19 Jan 2012)
New Revision: 18052

Added:
   branches/messer-51/src/common/include/jpgraph.php
   branches/messer-51/src/debian/fusionforge-plugin-scmgit.lintian-overrides
   branches/messer-51/src/plugins/scmgit/etc/plugins/
Removed:
   branches/messer-51/src/debian/gforge-plugin-scmsvn.lintian-overrides
   branches/messer-51/src/www/squal/
Modified:
   branches/messer-51/
   branches/messer-51/anonsvnsh/anoncvssh.c
   branches/messer-51/anonsvnsh/debian/changelog
   branches/messer-51/anonsvnsh/debian/control
   branches/messer-51/anonsvnsh/debian/copyright
   branches/messer-51/anonsvnsh/debian/rules
   branches/messer-51/src/COPYING.php
   branches/messer-51/src/README.evolvis
   branches/messer-51/src/common/advanced_search/ASFusionForgeParser.class.php
   branches/messer-51/src/common/advanced_search/FusionForgeDFIProvider.class.php
   branches/messer-51/src/common/forum/ForumHTML.class.php
   branches/messer-51/src/common/include/Group.class.php
   branches/messer-51/src/common/include/Navigation.class.php
   branches/messer-51/src/common/include/SCMPlugin.class.php
   branches/messer-51/src/common/include/database-pgsql.php
   branches/messer-51/src/common/include/exit.php
   branches/messer-51/src/common/include/extras-debug.php
   branches/messer-51/src/common/include/pre.php
   branches/messer-51/src/common/include/session.php
   branches/messer-51/src/common/include/utils.php
   branches/messer-51/src/common/mail/MailingList.class.php
   branches/messer-51/src/common/pm/ProjectController.class.php
   branches/messer-51/src/common/pm/ProjectGroup.class.php
   branches/messer-51/src/common/pm/ProjectTask.class.php
   branches/messer-51/src/common/pm/import_utils.php
   branches/messer-51/src/common/reporting/ReportSetup.class.php
   branches/messer-51/src/common/tracker/Artifact.class.php
   branches/messer-51/src/common/tracker/ArtifactFactory.class.php
   branches/messer-51/src/common/widget/WidgetLayoutManager.class.php
   branches/messer-51/src/common/widget/Widget_MyAdmin.class.php
   branches/messer-51/src/common/widget/Widget_MyArtifacts.class.php
   branches/messer-51/src/common/widget/Widget_MyTasks.class.php
   branches/messer-51/src/common/widget/Widget_ProjectDescription.class.php
   branches/messer-51/src/deb-specific/db-upgrade.pl
   branches/messer-51/src/deb-specific/group_dump_update.pl
   branches/messer-51/src/deb-specific/mailfwd_update.pl
   branches/messer-51/src/deb-specific/update-user-group-ssh.sh
   branches/messer-51/src/debian/changelog
   branches/messer-51/src/debian/control
   branches/messer-51/src/debian/copyright
   branches/messer-51/src/debian/dsf-in/common.postinst
   branches/messer-51/src/debian/dsf-in/common.postrm
   branches/messer-51/src/debian/dsf-in/plugin.postinst
   branches/messer-51/src/debian/evolvis.postinst
   branches/messer-51/src/etc/config.ini.d/debug.ini
   branches/messer-51/src/etc/config.ini.d/evolvis.ini
   branches/messer-51/src/etc/templates/local.pl
   branches/messer-51/src/packaging/control/020common
   branches/messer-51/src/packaging/control/030web-apache2
   branches/messer-51/src/packaging/install/common
   branches/messer-51/src/packaging/install/db-postgresql
   branches/messer-51/src/plugins/mediawiki/cronjobs/create-wikis.php
   branches/messer-51/src/plugins/mediawiki/etc/mediawiki.ini
   branches/messer-51/src/plugins/scmgit/common/GitPlugin.class.php
   branches/messer-51/src/plugins/scmgit/etc/plugins/scmgit/post-receive-email.sh
   branches/messer-51/src/plugins/scmgit/etc/scmgit.ini
   branches/messer-51/src/plugins/scmgit/packaging/install/plugin-scmgit
   branches/messer-51/src/plugins/scmsvn/bin/install.sh
   branches/messer-51/src/plugins/scmsvn/common/SVNPlugin.class.php
   branches/messer-51/src/translations/de.po
   branches/messer-51/src/translations/fusionforge.pot
   branches/messer-51/src/univention/call_evolvis.sh
   branches/messer-51/src/univention/ldap2psql.sh
   branches/messer-51/src/utils/fixscripts/populate_template_project.php
   branches/messer-51/src/utils/include.pl
   branches/messer-51/src/www/account/change_email.php
   branches/messer-51/src/www/activity/index.php
   branches/messer-51/src/www/admin/approve-pending.php
   branches/messer-51/src/www/frs/include/frs_utils.php
   branches/messer-51/src/www/include/Layout.class.php
   branches/messer-51/src/www/include/help.php
   branches/messer-51/src/www/include/html.php
   branches/messer-51/src/www/index_std.php
   branches/messer-51/src/www/js/common.js
   branches/messer-51/src/www/mail/admin/index.php
   branches/messer-51/src/www/my/my_utils.php
   branches/messer-51/src/www/pm/gantt.php
   branches/messer-51/src/www/pm/ganttofuser.php
   branches/messer-51/src/www/pm/include/ProjectGroupHTML.class.php
   branches/messer-51/src/www/pm/include/ProjectTaskHTML.class.php
   branches/messer-51/src/www/pm/include/ProjectView.class.php
   branches/messer-51/src/www/pm/pm_task.php
   branches/messer-51/src/www/pm/postuploadcsv.php
   branches/messer-51/src/www/pm/task.php
   branches/messer-51/src/www/project/admin/users.php
   branches/messer-51/src/www/reporting/groupadded_graph.php
   branches/messer-51/src/www/reporting/groupcum_graph.php
   branches/messer-51/src/www/reporting/projectact_graph.php
   branches/messer-51/src/www/reporting/projecttime_graph.php
   branches/messer-51/src/www/reporting/siteact_graph.php
   branches/messer-51/src/www/reporting/sitetime_graph.php
   branches/messer-51/src/www/reporting/sitetimebar_graph.php
   branches/messer-51/src/www/reporting/toolspie_graph.php
   branches/messer-51/src/www/reporting/trackerpie_graph.php
   branches/messer-51/src/www/reporting/useract_graph.php
   branches/messer-51/src/www/reporting/useradded_graph.php
   branches/messer-51/src/www/reporting/usercum_graph.php
   branches/messer-51/src/www/reporting/usertime_graph.php
   branches/messer-51/src/www/scm/reporting/commits_graph.php
   branches/messer-51/src/www/scm/reporting/commitstime_graph.php
   branches/messer-51/src/www/soap/index.php
   branches/messer-51/src/www/survey/admin/graphs.php
   branches/messer-51/src/www/themes/css/fusionforge.css
   branches/messer-51/src/www/themes/evolvis/evolvis.css
   branches/messer-51/src/www/themes/evolvis/images/logo_internal_repo.png
   branches/messer-51/src/www/tracker/browse.php
   branches/messer-51/src/www/tracker/include/ArtifactTypeHtml.class.php
   branches/messer-51/src/www/tracker/item.php
   branches/messer-51/src/www/tracker/reporting/trackeract_graph.php
   branches/messer-51/src/www/tracker/reporting/trackerpie_graph.php
   branches/messer-51/src/www/tracker/search.php
   branches/messer-51/src/www/tracker/tracker.php
   branches/messer-51/src/www/widgets/updatelayout.php
Log:
update to tip of integration branch


Property changes on: branches/messer-51
___________________________________________________________________
Modified: svn:mergeinfo
   - /trunk/gforge_base/evolvisforge-5.1:7226,17132-17168,17573-17576,17584,17592,17595,17631,17646-17652,17863-17867,17893,17907-17908,17928-17931,17933,17942-17943

   + /trunk/gforge_base/evolvisforge-5.1:7226,17132-17168,17573-17576,17584,17592,17595,17631,17646-17652,17863-17867,17893,17907-17908,17928-17931,17933,17942-17943,18046-18050

Modified: svk:merge
   - 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:17867
8ed69402-faa4-4b47-986e-66d49b2a90d8:/trunk/gforge_base/evolvisforge-5.1:17893
8ed69402-faa4-4b47-986e-66d49b2a90d8:/trunk/gforge_base/evolvisforge-5.1:17908
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:7226

   + 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:17867
8ed69402-faa4-4b47-986e-66d49b2a90d8:/trunk/gforge_base/evolvisforge-5.1:17893
8ed69402-faa4-4b47-986e-66d49b2a90d8:/trunk/gforge_base/evolvisforge-5.1:17908
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:7226


Modified: branches/messer-51/anonsvnsh/anoncvssh.c
===================================================================
--- branches/messer-51/anonsvnsh/anoncvssh.c	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/anonsvnsh/anoncvssh.c	2012-01-19 15:25:17 UTC (rev 18052)
@@ -49,6 +49,7 @@
 #include <sys/types.h>
 #include <sys/time.h>
 #include <sys/resource.h>
+#include <sys/stat.h>
 #include <errno.h>
 #include <fcntl.h>
 #include <stdio.h>
@@ -237,6 +238,12 @@
 	free(homedir);
 
 	/*
+	 * set umask 002 to keep group-write permissions on SCM repos
+	 */
+	/* note: leading-zero numbers are octal (base-8) numbers! */
+	umask(002);
+
+	/*
 	 * programme now "safe"
 	 */
 

Modified: branches/messer-51/anonsvnsh/debian/changelog
===================================================================
--- branches/messer-51/anonsvnsh/debian/changelog	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/anonsvnsh/debian/changelog	2012-01-19 15:25:17 UTC (rev 18052)
@@ -1,3 +1,15 @@
+evolvis-anonsvnsh (20110920) unstable; urgency=low
+
+  * [TTID# 1118041] Set umask 002 for the child
+
+ -- Thorsten Glaser <t.glaser at tarent.de>  Tue, 20 Sep 2011 11:43:52 +0200
+
+evolvis-anonsvnsh (20110121) unstable; urgency=low
+
+  * Update description
+
+ -- Thorsten Glaser <t.glaser at tarent.de>  Fri, 21 Jan 2011 10:21:24 +0100
+
 evolvis-anonsvnsh (20110110) unstable; urgency=low
 
   * Add support for git

Modified: branches/messer-51/anonsvnsh/debian/control
===================================================================
--- branches/messer-51/anonsvnsh/debian/control	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/anonsvnsh/debian/control	2012-01-19 15:25:17 UTC (rev 18052)
@@ -10,12 +10,12 @@
 Package: evolvis-anonsvnsh
 Architecture: any
 Depends: ${shlibs:Depends}, ${misc:Depends}
-Description: restricted user shell for sftp/svn only access
+Description: restricted user shell for git/SFTP/svn only access
  /lib/anonsvnsh provides a binary that can be used as a user’s
  login shell and restricts them to only access the system via
  SFTP and Subversion.
  .
- This flavour does NOT chroot.
+ This flavour does NOT chroot. Commit mail scripts will work.
 
 Package: evolvis-anonsvnsh-chroot
 Architecture: any
@@ -23,10 +23,14 @@
 Provides: evolvis-anonsvnsh
 Conflicts: evolvis-anonsvnsh
 Replaces: evolvis-anonsvnsh
-Description: restricted user shell for sftp/svn only access with chroot
+Description: restricted user shell for git/SFTP/svn only access with chroot
  /lib/anonsvnsh provides a binary that can be used as a user’s
  login shell and restricts them to only access the system via
  SFTP and Subversion.
  .
  This flavour chroots into /var/lib/gforge/chroot before passing
  control to the SFTP or Subversion application.
+ .
+ Note that commit hooks, such as post-commit/receive-pack mailings,
+ probably will not be able to run within the chroot (without further
+ setup).

Modified: branches/messer-51/anonsvnsh/debian/copyright
===================================================================
--- branches/messer-51/anonsvnsh/debian/copyright	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/anonsvnsh/debian/copyright	2012-01-19 15:25:17 UTC (rev 18052)
@@ -4,7 +4,7 @@
 Licence:
 
 
-Copyright (c) 2010
+Copyright (c) 2010, 2011
 	Thorsten Glaser <t.glaser at tarent.de>
 Copyright (c) 2007
 	Thorsten Glaser <t.glaser at aurisp.de>


Property changes on: branches/messer-51/anonsvnsh/debian/rules
___________________________________________________________________
Added: svn:executable
   + *

Modified: branches/messer-51/src/README.evolvis
===================================================================
--- branches/messer-51/src/README.evolvis	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/README.evolvis	2012-01-19 15:25:17 UTC (rev 18052)
@@ -12,18 +12,12 @@
   moment (and of course, English untranslated strings)
 
 
-New stuff:
+(4.8) New stuff:
 
 • put www-data into group list (for www/mail/admin/index.php)
 • Hide page title in the wiki:
   <css>#firstHeading { display:none; }</css>
 
-TODO:
-
-• sysdebug_off() might be interesting to “syslog” (better, write to
-  /var/www/log/error_log as usual with PHP messages) if buffer was
-  not empty, depending on another flag possibly
-
 Old stuff:
 
 Notes are on http://wiki.evolvis.org/evolvis/index.php/Main_Page
@@ -66,16 +60,18 @@
   with the GPL v2+ (or later) for upstream compatibility.
 • For the Collection extension:
   $wgCollectionLicenseURL = 'http://evolvis.org/plugins/mediawiki/wiki/evolvis/index.php?title=WikiContentLicence&action=raw';
-• Authors:
+• Authors, Contributors, Testers and other current and former Team Members:
   – Patrick Apel
   – Waldemar Brodkorb
   – Lukas Degener
   – Mike Esser
+  – Rebecca Fischbach
   – Sven Frommeyer
   – Elmar Geese
   – Sebastian Gerhards
   – Thorsten Glaser
   – Andreas Gockel
+  – Martina Heinold
   – Jutta Horstmann
   – Umer Kayani
   – Richard Klein

Modified: branches/messer-51/src/common/advanced_search/ASFusionForgeParser.class.php
===================================================================
--- branches/messer-51/src/common/advanced_search/ASFusionForgeParser.class.php	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/common/advanced_search/ASFusionForgeParser.class.php	2012-01-19 15:25:17 UTC (rev 18052)
@@ -73,14 +73,15 @@
 				//Check if the DFI is a Standard field. This is nowhere defined!
 				$dfiName = $curToken->getData();
 
-				if($dfiName == 'ID'          ||
-                                   $dfiName == 'Summary'     ||
-				   $dfiName == 'Open Date'   ||
-				   $dfiName == 'Close Date'  ||
-				   $dfiName == 'Assigned to' ||
-				   $dfiName == 'Submitted by' ||
-				   $dfiName == 'Priority' ||
-				   $dfiName == 'Status') {
+				if ($dfiName == 'ID'          ||
+				    $dfiName == 'Summary'     ||
+				    $dfiName == 'Detailed Description' ||
+				    $dfiName == 'Open Date'   ||
+				    $dfiName == 'Close Date'  ||
+				    $dfiName == 'Assigned to' ||
+				    $dfiName == 'Submitted by' ||
+				    $dfiName == 'Priority' ||
+				    $dfiName == 'Status') {
 					//Get the next token. This has to be an operator!
 					$curTokenPointer++;
 					$curToken = $this->tokens[$curTokenPointer];
@@ -160,7 +161,7 @@
 							$curToken = $this->tokens[$curTokenPointer];
 							$curType  = $curToken->getType();
 
-							$wheresql .= ' AND aefd'.$extraFieldCounter.'.field_data LIKE $'.$paramcount++;
+							$wheresql .= ' AND aefd'.$extraFieldCounter.'.field_data ILIKE $'.$paramcount++;
 							$params[] = $curToken->getData();
 						} else {
 							return "Invalid Syntax";
@@ -255,7 +256,7 @@
 							$curType  = $curToken->getType();
 
 							if(strtoupper($curToken->getData()) == 'NONE') {
-								$wheresql .= ' AND aefd'.$extraFieldCounter.'.field_data LIKE $'.$paramcount++;
+								$wheresql .= ' AND aefd'.$extraFieldCounter.'.field_data ILIKE $'.$paramcount++;
 								$params[] = '100';
 							} else {
 								// Get the ids. Consider that we have to check more then one field.
@@ -264,30 +265,29 @@
 
 								$res = db_query_params($sql, array($curToken->getData()));
 								$arr_data_id = array();
-                                                                
-                                                                while($real_data_id = db_fetch_array($res)) {
-                                                                    $arr_data_id[] = $real_data_id[0];
-                                                                }
 
-                                                                if(count($arr_data_id) > 1) {
-                                                                    $wheresql .= ' AND (';
-                                                                    
-                                                                    foreach($arr_data_id as $curId) {
-                                                                        $wheresql .= 'aefd'.$extraFieldCounter.
-                                                                                     '.field_data = $'.$paramcount++.'';
-                                                                        $params[] = $curId;
-                                                                        
-                                                                        $wheresql .= ' OR ';
-                                                                    }
-                                                                    
-                                                                    $wheresql = rtrim($wheresql, ' OR ');
-                                                                    $wheresql .= ')';
-                                                                } else {
-                                                                    $real_data_id = $arr_data_id[0];
-                                                                    $wheresql .= ' AND aefd'.$extraFieldCounter.
-                                                                                 '.field_data = $'.$paramcount++.'';
-                                                                    $params[] = $real_data_id;
-                                                                }
+								while (($real_data_id = db_fetch_array($res))) {
+									$arr_data_id[] = $real_data_id[0];
+								}
+
+								if (count($arr_data_id) > 1) {
+									$wheresql .= ' AND (';
+
+									foreach ($arr_data_id as $curId) {
+										$wheresql .= 'aefd' . $extraFieldCounter .
+										    '.field_data = $' . $paramcount++ . '';
+										$params[] = $curId;
+										$wheresql .= ' OR ';
+									}
+
+									$wheresql = rtrim($wheresql, ' OR ');
+									$wheresql .= ')';
+								} else {
+									$real_data_id = $arr_data_id[0];
+									$wheresql .= ' AND aefd'.$extraFieldCounter.
+										     '.field_data = $'.$paramcount++.'';
+									$params[] = $real_data_id;
+								}
 							}
 						} else {
 							//Invalid input. Return invalid syntax error.
@@ -317,10 +317,10 @@
 				$curTokenPointer++;
 				$curToken = $this->tokens[$curTokenPointer];
 			}
-                
 		}
 
-		$result = db_query_params('SELECT * FROM (' . $selectsql . $wheresql . ') AS Artifacts;',// ORDER BY'.$this->getParam('_sort_col').' '.$this->getParam('_sort_ord').';',
+		// ORDER BY'.$this->getParam('_sort_col').' '.$this->getParam('_sort_ord').';',
+		$result = db_query_params('SELECT * FROM (' . $selectsql . $wheresql . ') AS Artifacts;',
 					   $params);
 		$rows = db_numrows($result);
 
@@ -335,14 +335,18 @@
 			}
 		}
 
-                if($this->getParam('_sort_col') !== null && $this->getParam('_sort_ord') !== null) {
-                    if($this->getParam('_sort_col') == 'id') {
-                        sortArtifactList ($artifacts, 'artifact_id', $this->getParam('_sort_ord')) ;
-                    } else {
-                        sortArtifactList ($artifacts, $this->getParam('_sort_col'), $this->getParam('_sort_ord')) ;
-                    }
-                }
-                
+		if ($this->getParam('_sort_col') !== null &&
+		    $this->getParam('_sort_ord') !== null) {
+			if ($this->getParam('_sort_col') == 'id') {
+				sortArtifactList($artifacts, 'artifact_id',
+				    $this->getParam('_sort_ord'));
+			} else {
+				sortArtifactList($artifacts,
+				    $this->getParam('_sort_col'),
+				    $this->getParam('_sort_ord'));
+			}
+		}
+
 		return $artifacts;
 	}
 
@@ -392,17 +396,19 @@
 			$field_alias = 'status_name';
 		} else if ($fieldName == 'Summary') {
 			$field_alias = 'summary';
+		} else if ($fieldName == 'Detailed Description') {
+			$field_alias = 'details';
 		}
 
-		if($curType === EASToken::AS_OP_EQUALS) {
-			//Get the next token. This has to be the data!
-			$curTokenPointer ++;
+		if ($curType === EASToken::AS_OP_EQUALS) {
+			// Get the next token. This has to be the data!
+			$curTokenPointer++;
 			$curToken = $this->tokens[$curTokenPointer];
 			$curType = $curToken->getType();
 
 			if ($is_date) {
 				$curToken->setData($curToken->getData().'%');
-				$wheresql .= ' to_char((SELECT TIMESTAMP \'epoch\' + '.$field_alias.' * INTERVAL \'1 second\'), \'YYYY-MM-DD HH24:MI\') LIKE $' . $paramcount++;
+				$wheresql .= ' to_char((SELECT TIMESTAMP \'epoch\' + '.$field_alias.' * INTERVAL \'1 second\'), \'YYYY-MM-DD HH24:MI\') ILIKE $' . $paramcount++;
 				$params[] = $curToken->getData();
 			} else if ($is_name) {
 				$wheresql .= '( '.$field_alias.' = $' . $paramcount++ .' OR '.$field_alias2.' = $'.$paramcount++.' )';
@@ -414,7 +420,7 @@
 			}
 		} else if ($curType === EASToken::AS_OP_NOT) {
 			//Get the next token. This has to be the data!
-			$curTokenPointer ++;
+			$curTokenPointer++;
 			$curToken = $this->tokens[$curTokenPointer];
 			$curType = $curToken->getType();
 
@@ -423,7 +429,7 @@
 				$wheresql .= ' to_char((SELECT TIMESTAMP \'epoch\' + '.$field_alias.' * INTERVAL \'1 second\'), \'YYYY-MM-DD HH24:MI\') NOT LIKE $' . $paramcount++;
 				$params[] = $curToken->getData();
 			} else if ($is_name) {
-				$wheresql .= '( '.$field_alias.' NOT LIKE $' . $paramcount++ .' AND '.$field_alias2.' NOT LIKE $'.$paramcount++.' )';
+				$wheresql .= '( '.$field_alias.' NOT ILIKE $' . $paramcount++ .' AND '.$field_alias2.' NOT ILIKE $'.$paramcount++.' )';
 				$params[] = $curToken->getData();
 				$params[] = $curToken->getData();
 			} else {
@@ -433,11 +439,11 @@
 
 		} else if ($curType === EASToken::AS_OP_GREATER) {
 			//Get the next token. This has to be the data!
-			$curTokenPointer ++;
+			$curTokenPointer++;
 			$curToken = $this->tokens[$curTokenPointer];
 			$curType = $curToken->getType();
 
-			$wheresql .= ' '.$field_alias.' > $' . $paramcount ++;
+			$wheresql .= ' '.$field_alias.' > $' . $paramcount++;
 
 			if ($is_date) {
 				// Check if the user included a time format
@@ -451,11 +457,11 @@
 			}
 		} else if ($curType === EASToken::AS_OP_LESS) {
 			//Get the next token. This has to be the data!
-			$curTokenPointer ++;
+			$curTokenPointer++;
 			$curToken = $this->tokens[$curTokenPointer];
 			$curType = $curToken->getType();
 
-			$wheresql .= ' '.$field_alias.' < $' . $paramcount ++;
+			$wheresql .= ' '.$field_alias.' < $' . $paramcount++;
 
 			if($is_date) {
 				$params[] = strtotime($curToken->getData());
@@ -464,20 +470,20 @@
 			}
 		} else if ($curType === EASToken::AS_OP_LIKE) {
 			//Get the next token. This has to be the data!
-			$curTokenPointer ++;
+			$curTokenPointer++;
 			$curToken = $this->tokens[$curTokenPointer];
 			$curType = $curToken->getType();
 
 			if($is_date) {
 				//Convert unix timestamp to postgres date and then to string.
-				$wheresql .= ' to_char((SELECT TIMESTAMP \'epoch\' + '.$field_alias.' * INTERVAL \'1 second\'), \'YYYY-MM-DD HH24:MI\') LIKE $' . $paramcount ++;
+				$wheresql .= ' to_char((SELECT TIMESTAMP \'epoch\' + '.$field_alias.' * INTERVAL \'1 second\'), \'YYYY-MM-DD HH24:MI\') ILIKE $' . $paramcount++;
 				$params[] = $curToken->getData();
 			} else if ($is_name) {
-				$wheresql .= '( '.$field_alias.' LIKE $' . $paramcount++ .' OR '.$field_alias2.' LIKE $'.$paramcount++.' )';
+				$wheresql .= '( '.$field_alias.' ILIKE $' . $paramcount++ .' OR '.$field_alias2.' ILIKE $'.$paramcount++.' )';
 				$params[] = $curToken->getData();
 				$params[] = $curToken->getData();
 			} else {
-				$wheresql .= ' '.$field_alias.' LIKE $' . $paramcount ++;
+				$wheresql .= ' '.$field_alias.' ILIKE $' . $paramcount++;
 				$params[] = $curToken->getData();
 			}
 

Modified: branches/messer-51/src/common/advanced_search/FusionForgeDFIProvider.class.php
===================================================================
--- branches/messer-51/src/common/advanced_search/FusionForgeDFIProvider.class.php	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/common/advanced_search/FusionForgeDFIProvider.class.php	2012-01-19 15:25:17 UTC (rev 18052)
@@ -49,6 +49,7 @@
 		$result	 = array(
 			array('ID', 'artifact_id'),
 			array('Summary', 'summary'),
+			array('Detailed Description', 'details'),
 			array('Open Date', 'open_date'),
 			array('Close Date', 'close_date'),
 			array('Assigned to', 'assigned_to'),
@@ -76,7 +77,8 @@
 		$tracker_id = $params['tracker_id'];
 		$result	 = array();
 		$result	 = array('ID',
-                            'Summary',
+			    'Summary',
+			    'Detailed Description',
 			    'Open Date',
 			    'Close Date',
 			    'Assigned to',

Modified: branches/messer-51/src/common/forum/ForumHTML.class.php
===================================================================
--- branches/messer-51/src/common/forum/ForumHTML.class.php	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/common/forum/ForumHTML.class.php	2012-01-19 15:25:17 UTC (rev 18052)
@@ -79,12 +79,14 @@
 				echo util_make_links($body);
 			}
 
+		/*
 			// display classification
 			if ($params['group'] == forge_get_config('news_group')) { 
 			   print stripslashes(trove_news_getcatlisting(db_result($result,0,'forum_id'),0,1));
 			} elseif (forge_get_config('use_trove')) {
 			   print stripslashes(trove_getcatlisting($params['group'],0,1));
 			}
+		*/
 			echo '</td><td valign="top" width="35%">';
 			echo $HTML->boxTop(_('Latest News'));
 			echo news_show_latest($params['group'],5,false);

Modified: branches/messer-51/src/common/include/Group.class.php
===================================================================
--- branches/messer-51/src/common/include/Group.class.php	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/common/include/Group.class.php	2012-01-19 15:25:17 UTC (rev 18052)
@@ -730,7 +730,7 @@
 
 		// Check that status transition is valid
 		if ($this->getStatus() != $status
-			&& !$allowed_status_changes[$this->getStatus().$status]) {
+			&& !util_ifsetor($allowed_status_changes[$this->getStatus().$status])) {
 			$this->setError(_('Invalid Status Change'));
 			return false;
 		}

Modified: branches/messer-51/src/common/include/Navigation.class.php
===================================================================
--- branches/messer-51/src/common/include/Navigation.class.php	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/common/include/Navigation.class.php	2012-01-19 15:25:17 UTC (rev 18052)
@@ -397,7 +397,6 @@
 			 $TABS_TITLES[]=_('Home Page');
                         */
                         
-		if (forge_get_config('installation_environment') != 'development') {
                         // Project Activity tab 
                         $menu['titles'][] = _('Activity');
                         $menu['urls'][] = util_make_uri('/activity/?group_id=' . $group_id);
@@ -406,7 +405,6 @@
                         if ($toptab == "activity") {
                                 $selected = (count($menu['urls'])-1);
                         }
-		}
 
 			// Advanced Search tab
 			$menu['titles'][] = _('Search');

Modified: branches/messer-51/src/common/include/SCMPlugin.class.php
===================================================================
--- branches/messer-51/src/common/include/SCMPlugin.class.php	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/common/include/SCMPlugin.class.php	2012-01-19 15:25:17 UTC (rev 18052)
@@ -4,6 +4,8 @@
  *
  * Copyright 2004-2009, 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
@@ -173,9 +175,9 @@
 		}
 		
 		if ($project->usesPlugin ($this->name)) {
+			echo $HTML->boxTop(_('Repository Information'), "",
+			    false, 'scm_top_' . $this->name);
 
-			// Table for summary info
-			print '<table width="100%"><tr valign="top"><td width="65%">'."\n" ;
 			print $this->getBlurb ()."\n" ;
 
 			// Instructions for anonymous access
@@ -186,22 +188,19 @@
 			// Instructions for developer access
 			print $this->getInstructionsForRW ($project) ;
 
-			// Snapshot
+			// Browser and Snapshot
 			if ($this->browserDisplayable ($project)) {
+				echo $this->getBrowserLinkBlock($project);
 				print $this->getSnapshotPara ($project) ;
 			}
-			print '</td>'."\n".'<td width="35%" valign="top">'."\n" ;
 
-			// Browsing
-			echo $HTML->boxTop(_('Repository History'), '', false, 'scm_repohistory');
+			echo $HTML->boxMiddle(_('Repository History'), '', false, 'scm_repohistory');
 			echo _('Data about current and past states of the repository') ;
 			if ($this->browserDisplayable ($project)) {
 				echo $this->getStatsBlock($project) ;
-				echo $this->getBrowserLinkBlock ($project) ;
 			}
 			
 			echo $HTML->boxBottom();
-			print '</td></tr></table>' ;
 		}
 	}
 

Modified: branches/messer-51/src/common/include/exit.php
===================================================================
--- branches/messer-51/src/common/include/exit.php	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/common/include/exit.php	2012-01-19 15:25:17 UTC (rev 18052)
@@ -4,6 +4,8 @@
  *
  * Copyright 1999-2001 (c) VA Linux Systems
  * Copyright 2010, Franck Villaume
+ * 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
@@ -21,6 +23,8 @@
  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 
+$forge_exit_handler = false;
+
 /**
  * exit_error() - Exit PHP with error
  *
@@ -28,7 +32,12 @@
  * @param	string  toptab for navigation bar
  */
 function exit_error($text="", $toptab='') {
-	global $HTML,$group_id;
+	global $HTML, $group_id, $forge_exit_handler;
+
+	if ($forge_exit_handler) {
+		$forge_exit_handler($text);
+		exit;
+	}
 	$HTML->header(array('title'=>_('Exiting with error'), 'group'=>$group_id, 'toptab'=>$toptab));
 	echo $HTML->error_msg(htmlspecialchars($text));
 	$HTML->footer(array());
@@ -56,6 +65,12 @@
  * exit_not_logged_in() - Exit with not logged in error
  */
 function exit_not_logged_in() {
+	global $forge_exit_handler;
+
+	if ($forge_exit_handler) {
+		$forge_exit_handler(_('You are not logged in.'));
+		exit;
+	}
 	//instead of a simple error page, now take them to the login page
 	session_redirect ("/account/login.php?triggered=1&return_to=".urlencode(getStringFromServer('REQUEST_URI')));
 }
@@ -76,6 +91,8 @@
  * @param   string  toptab needed for navigation
  */
 function exit_missing_param($url='',$missing_params=array(),$toptab='') {
+	global $forge_exit_handler;
+
     if (!empty($missing_params)) {
         $error = _('Missing required parameters : ');
         foreach ($missing_params as $missing_param) {
@@ -84,7 +101,7 @@
     } else {
         $error = sprintf(_('Missing required parameters.'));
     }
-    if (!empty($url)) {
+    if (!empty($url) && !$forge_exit_handler) {
         if (strpos($url,'?')) {
             session_redirect($url.'&error_msg='.urlencode($error));
         }
@@ -116,5 +133,3 @@
 // mode: php
 // c-file-style: "bsd"
 // End:
-
-?>

Copied: branches/messer-51/src/common/include/jpgraph.php (from rev 18050, trunk/gforge_base/evolvisforge-5.1/src/common/include/jpgraph.php)
===================================================================
--- branches/messer-51/src/common/include/jpgraph.php	                        (rev 0)
+++ branches/messer-51/src/common/include/jpgraph.php	2012-01-19 15:25:17 UTC (rev 18052)
@@ -0,0 +1,108 @@
+<?php
+/*-
+ * JpGraph support code for FusionForge
+ *
+ * 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.
+ *-
+ * Set of helper functions, wrappers and initialisation code for using
+ * JpGraph within FusionForge.
+ */
+
+/* ensure exit_* functions are defined and overridable */
+require_once $gfcommon.'include/exit.php';
+
+/* ensure JpGraph is installed and loadable */
+if (!file_exists(forge_get_config('jpgraph_path').'/jpgraph.php')) {
+	exit_error(_('Package JPGraph not installed'));
+}
+require_once(forge_get_config('jpgraph_path').'/jpgraph.php');
+
+/* we need the forge software name */
+require_once $gfcommon.'include/FusionForge.class.php';
+
+/* error formatter producing an image */
+$forge_jpgraph_error_fmt_called = false;
+function forge_jpgraph_error_fmt($text) {
+	$w = 640; $h = 480;
+
+	if ($forge_jpgraph_error_fmt_called || headers_sent()) {
+		sysdebug_off();
+		$complain = $forge_jpgraph_error_fmt_called ?
+		    _('Cannot display error picture: called recursively! Backtrace:') :
+		    _('Cannot display error picture, headers already sent! Backtrace:');
+		$complain = trim($complain . "\n" . debug_string_backtrace());
+		$pfx = "";
+		foreach (explode("\n", $complain) as $line) {
+			error_log($pfx . $line);
+			$pfx = ">>> ";
+		}
+		echo util_html_encode($complain) . "\n";
+		exit;
+	}
+	$forge_jpgraph_error_fmt_called = true;
+
+	$ff = new FusionForge();
+	$i = new Image($w, $h);
+	$i->Rectangle(0, 0, $w - 1, $h - 1);
+	$i->SetFont(FF_FONT1, FS_BOLD);
+	$i->SetColor("darkred");
+	$i->StrokeText(12, 12, sprintf(_("%s Error:"), $ff->software_name));
+	$i->SetFont(FF_FONT1, FS_NORMAL);
+	$i->SetColor("black");
+	$t = new Text(wordwrap($text, 80), 12, 24);
+	$t->Align("left", "top");
+	$t->Stroke($i);
+	sysdebug_off();
+	$i->Headers();
+	$i->Stream();
+	exit;
+}
+
+/* image error handler for FusionForge */
+function forge_jpgraph_error($text) {
+	$pfx = _('A Forge error occured; maybe you’re not logged in or lack permissions.');
+	forge_jpgraph_error_fmt($pfx . "\n" . $text);
+}
+
+/* image error handler for JpGraph */
+class JpGraphErrObjectForge extends JpGraphErrObject {
+	function JpGraphErrObjectForge() {
+		$this->JpGraphErrObject();
+	}
+	function Raise($text, $isfatal=true) {
+		if ($isfatal) {
+			$pfx = _('A fatal JpGraph error occured; maybe your query did not yield any data points.');
+		} else {
+			$pfx = _('A non-fatal JpGraph error occured; we’re nevertheless halting execution.');
+		}
+		forge_jpgraph_error_fmt($pfx . "\n" .
+		    preg_replace('/\s*\n\t\s*/', ' ', $text));
+	}
+}
+
+/* install the JpGraph error handler */
+JpGraphError::Install('JpGraphErrObjectForge');
+
+
+/* now install the Forge exit handler */
+$forge_exit_handler = 'forge_jpgraph_error';
+
+/* and finally, disable debugging */
+sysdebug_off();

Modified: branches/messer-51/src/common/include/session.php
===================================================================
--- branches/messer-51/src/common/include/session.php	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/common/include/session.php	2012-01-19 15:25:17 UTC (rev 18052)
@@ -383,7 +383,7 @@
 	if ($force_secure && !session_issecure()) {
 		return;
 	}
-	setcookie($name, $value, $expiration, '/', $domain, $force_secure);
+	setcookie($name, $value, $expiration, '/', $domain, $force_secure, true);
 }
 
 /**

Modified: branches/messer-51/src/common/include/utils.php
===================================================================
--- branches/messer-51/src/common/include/utils.php	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/common/include/utils.php	2012-01-19 15:25:17 UTC (rev 18052)
@@ -5,7 +5,7 @@
  * Copyright 1999-2001, VA Linux Systems, Inc.
  * Copyright 2009-2010, Roland Mas
  * Copyright 2009-2010, Franck Villaume - Capgemini
- * Copyright (c) 2010, 2011
+ * Copyright (c) 2010, 2011, 2012
  *	Thorsten Glaser <t.glaser at tarent.de>
  * Copyright (C) 2010-2011 Alain Peyrat - Alcatel-Lucent
  *
@@ -1491,30 +1491,19 @@
 }
 
 function util_randbytes($num=6) {
-	$b = '';
+	$f = fopen("/dev/urandom", "rb");
+	$b = fread($f, $num);
+	fclose($f);
 
-	// Let's try /dev/urandom first
-	$f = @fopen("/dev/urandom", "rb");
-	if ($f !== FALSE) {
-		$b .= @fread($f, $num);
-		fclose($f);
+	/*XXX check if the result is truly random */
+	if (strlen($b) != $num) {
+		exit_error(_('Internal Error: Could not read from random device'));
+		/* Mebbe… */
+		throw new Exception('Could not read from random device');
+		/* Justin Case… */
+		die;
 	}
 
-	// Hm.  No /dev/urandom?  Try /dev/random.
-	if (strlen($b) < $num) {
-		$f = @fopen("/dev/random", "rb");
-		if ($f !== FALSE) {
-			$b .= @fread($f, $num);
-			fclose($f);
-		}
-	}
-
-	// Still no luck?  Fall back to PHP's built-in PRNG
-	while (strlen($b) < $num) {
-		$b .= uniqid(mt_rand(), true);
-	}
-
-	$b = substr($b, 0, $num);
 	return ($b);
 }
 
@@ -1714,6 +1703,39 @@
 	return forge_check_global_perm('forge_admin');
 }
 
+/**
+ * util_gethref() - Construct a hypertext reference
+ *
+ * @param	string	$baseurl
+ *		(optional) base URL (absolute or relative);
+ *			urlencoded, but not htmlencoded
+ *		(default (falsy): PHP_SELF)
+ * @param	array	$args
+ *		(optional) associative array of unencoded query parameters;
+ *			false values are ignored
+ * @param	bool	$ashtml
+ *		(optional) htmlencode the result?
+ *		(default: true)
+ * @param	string	$sep
+ *		(optional) argument separator ('&' or ';')
+ *		(default: '&')
+ * @return	string
+ *		URL, possibly htmlencoded
+ */
+function util_gethref($baseurl=false, $args=array(), $ashtml=true, $sep='&') {
+	$rv = $baseurl ? $baseurl : getStringFromServer('PHP_SELF');
+	$pfx = '?';
+	foreach ($args as $k => $v) {
+		if ($v === false) {
+			continue;
+		}
+		$rv .= $pfx . urlencode($k) . '=' . urlencode($v);
+		$pfx = $sep;
+	}
+	return ($ashtml ? util_html_encode($rv) : $rv);
+}
+
+
 // Local Variables:
 // mode: php
 // c-file-style: "bsd"

Modified: branches/messer-51/src/common/mail/MailingList.class.php
===================================================================
--- branches/messer-51/src/common/mail/MailingList.class.php	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/common/mail/MailingList.class.php	2012-01-19 15:25:17 UTC (rev 18052)
@@ -148,7 +148,7 @@
 			return false;
 		}
 
-		$listPassword = substr(md5($GLOBALS['session_ser'] . time() . util_randbytes()), 0, 16);
+		$listPassword = substr(md5(util_randbytes()), 0, 16);
 		
 		db_begin();
 		$result = db_query_params ('INSERT INTO mail_group_list (group_id,list_name,is_public,password,list_admin,status,description) VALUES ($1,$2,$3,$4,$5,$6,$7)',
@@ -334,10 +334,15 @@
 	 * @return string url of the archives
 	 */
 	function getArchivesUrl() {
+		if (forge_get_config('use_ssl')) {
+			$proto = 'https';
+		} else {
+			$proto = 'http';
+		}
 		if ($this->isPublic()) {
-			return 'http://'.forge_get_config('web_host').'/pipermail/'.$this->getName().'/';
+			return "$proto://".forge_get_config('web_host').'/pipermail/'.$this->getName().'/';
 		} else {
-			return 'http://'.forge_get_config('web_host').'/mailman/private/'.$this->getName().'/';
+			return "$proto://".forge_get_config('web_host').'/mailman/private/'.$this->getName().'/';
 		}
 	}
 	

Modified: branches/messer-51/src/common/pm/ProjectController.class.php
===================================================================
--- branches/messer-51/src/common/pm/ProjectController.class.php	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/common/pm/ProjectController.class.php	2012-01-19 15:25:17 UTC (rev 18052)
@@ -158,8 +158,24 @@
 	public function getCSort() {
 		return $this->cSort;
 	}
+	
+	private function setRelatedArtifactId($related_artifact_id) {
+		$this->relatedArtifactId = $related_artifact_id;
+	}
+	
+	private function getRelatedArtifactId() {
+		return $this->relatedArtifactId;
+	}
+	
+	private function setRelatedArtifactSummary($relatedArtifactSummary) {
+		$this->relatedArtifactSummary = $relatedArtifactSummary;
+	}
+	
+	private function getRelatedArtifactSummary() {
+		return $this->relatedArtifactSummary;
+	}
 
-	function __construct($uri, $pg, $pt, $pageView, $boolManager, $HTML, $cSort) {
+	function __construct($uri, $pg, $pt, $pageView, $boolManager, $HTML, $cSort, $related_artifact_id, $related_artifact_summary) {
 		$this->setUri($uri);
 		$this->setProjectGroupHTML($pg);
 		$this->setprojectTaskHTML($pt);
@@ -167,6 +183,9 @@
 		$this->setManager($boolManager);
 		$this->setHTML($HTML);
 		$this->setCSort($cSort);
+		
+		$this->setRelatedArtifactId($related_artifact_id);
+		$this->setRelatedArtifactSummary($related_artifact_summary);
 	}
 
 	function display() {
@@ -175,7 +194,8 @@
 
 		$pmView = new ProjectView($this->getUri(), $this->getProjectGroupHTML(),
 		    $this->getProjectTaskHTML(), $this->getPageView(), $this->isManager(),
-		    $this->getHTML(), $pmModel, $this->getCSort());
+		    $this->getHTML(), $pmModel, $this->getCSort(), $this->getRelatedArtifactId(), 
+		    $this->getRelatedArtifactSummary());
 
 		$arrInfo = $pmModel->getRelatedCommits();
 		$pmView->assign('commits', $arrInfo);

Modified: branches/messer-51/src/common/pm/ProjectTask.class.php
===================================================================
--- branches/messer-51/src/common/pm/ProjectTask.class.php	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/common/pm/ProjectTask.class.php	2012-01-19 15:25:17 UTC (rev 18052)
@@ -1162,7 +1162,14 @@
 			return true;
 		}
 
-		$body = "Task #". $this->getID() ." has been updated. ".
+		if (!($u = session_get_user())) {
+			$body = sprintf("Task [#%d] has been updated by something unknown.",
+			    $this->getID());
+		} else {
+			$body = sprintf("Task [#%d] has been updated by %s (%s).",
+			    $this->getID(), $u->getUnixName(), $u->getRealName());
+		}
+		$body .=
 			"\n\nProject: ". $this->ProjectGroup->Group->getPublicName(); 
 			if (isset($arrChangedAndInNotice['subproject']))
 				$body .= "\n". $arrChangedAndInNotice['subproject']."Subproject: ". $this->ProjectGroup->getName();

Modified: branches/messer-51/src/common/pm/import_utils.php
===================================================================
--- branches/messer-51/src/common/pm/import_utils.php	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/common/pm/import_utils.php	2012-01-19 15:25:17 UTC (rev 18052)
@@ -62,7 +62,6 @@
 		$array['errormessage']='Could Not Get ProjectGroup: '.$pg->getErrorMessage();
 	} else {
 		$count=count($tasks);
-//printr($count,'count - count of tasks');
 		//
 		//  Build hash list of technicians so we can get their ID for assigning tasks
 		//

Modified: branches/messer-51/src/common/tracker/Artifact.class.php
===================================================================
--- branches/messer-51/src/common/tracker/Artifact.class.php	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/common/tracker/Artifact.class.php	2012-01-19 15:25:17 UTC (rev 18052)
@@ -1724,14 +1724,9 @@
 		}
 
 		switch ($this->criterion) {
-                case 'artifact_id':
-                        $aid = $a->getID() ;
-                        $bid = $b->getID() ;
-                        if ($aid == $bid) {
-                            return 0;
-                        }
-                        break;
-		return ($aid < $bid) ? -1 : 1;
+		case 'artifact_id':
+			/* see below */
+			break;
 		case 'summary':
 			$namecmp = strcoll ($a->getSummary(),
 					    $b->getSummary()) ;

Modified: branches/messer-51/src/common/widget/WidgetLayoutManager.class.php
===================================================================
--- branches/messer-51/src/common/widget/WidgetLayoutManager.class.php	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/common/widget/WidgetLayoutManager.class.php	2012-01-19 15:25:17 UTC (rev 18052)
@@ -115,7 +115,7 @@
 				}
 				break;
 			case self::OWNER_TYPE_GROUP:
-				if (UserManager::instance()->getCurrentUser()->is_super_user==true || user_ismember($request->get('group_id'), 'A')) { //Only project admin
+				if (UserManager::instance()->getCurrentUser()->is_super_user==true || forge_check_perm('project_admin', $owner_id, NULL)) { //Only project admin
 					$readonly = false;
 				}
 				break;

Modified: branches/messer-51/src/common/widget/Widget_MyAdmin.class.php
===================================================================
--- branches/messer-51/src/common/widget/Widget_MyAdmin.class.php	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/common/widget/Widget_MyAdmin.class.php	2012-01-19 15:25:17 UTC (rev 18052)
@@ -68,7 +68,7 @@
 
 		$html_my_admin .= $this->_get_admin_row(
 			$i++, 
-			vsprintf(_('Groups in <a href="%s"><b>P</b> (pending) Status</a>'), array("/admin/approve-pending.php")),
+			vsprintf(_('Projects in <a href="%s"><b>P</b> (pending) Status</a>'), array("/admin/approve-pending.php")),
 			$pending_projects,
 			$this->_get_color($pending_projects)
 			);

Modified: branches/messer-51/src/common/widget/Widget_MyArtifacts.class.php
===================================================================
--- branches/messer-51/src/common/widget/Widget_MyArtifacts.class.php	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/common/widget/Widget_MyArtifacts.class.php	2012-01-19 15:25:17 UTC (rev 18052)
@@ -96,7 +96,7 @@
 		$atf = new ArtifactsForUser(@UserManager::instance()->getCurrentUser());
 		$assigned = $atf->getAssignedArtifactsByGroup();
 		$submitted = $atf->getSubmittedArtifactsByGroup();
-		$all = $atf->getArtifactsFromSQLWithParams('SELECT * FROM artifact_vw av where (av.submitted_by=$1 OR  av.assigned_to=$1) AND av.status_id=1 ORDER BY av.group_artifact_id, av.artifact_id DESC',array( UserManager::instance()->getCurrentUser()->getID()));
+		$all = $atf->getArtifactsFromSQLWithParams('SELECT * FROM artifact_vw av where (av.submitted_by=$1 OR  av.assigned_to=$1) AND av.status_id=1 ORDER BY av.group_artifact_id, av.priority DESC, av.artifact_id DESC',array( UserManager::instance()->getCurrentUser()->getID()));
 		if($this->_artifact_show == 'AS'){
 			$my_artifacts=$all;
 		}

Modified: branches/messer-51/src/common/widget/Widget_MyTasks.class.php
===================================================================
--- branches/messer-51/src/common/widget/Widget_MyTasks.class.php	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/common/widget/Widget_MyTasks.class.php	2012-01-19 15:25:17 UTC (rev 18052)
@@ -41,7 +41,7 @@
             'FROM groups,project_group_list,project_task,project_assigned_to '.
             'WHERE project_task.project_task_id=project_assigned_to.project_task_id '.
             'AND project_assigned_to.assigned_to_id=$1'.
-            ' AND project_task.status_id=1 AND project_group_list.group_id=groups.group_id '.
+            ' AND project_task.status_id IN (1, 4, 5, 6) AND project_group_list.group_id=groups.group_id '.
             "AND project_group_list.is_public!='9' ".
           'AND project_group_list.group_project_id=project_task.group_project_id GROUP BY groups.group_id, groups.group_name, project_group_list.project_name, project_group_list.group_project_id';
     
@@ -59,7 +59,7 @@
                 $sql2 = 'SELECT project_task.project_task_id, project_task.priority, project_task.summary,project_task.percent_complete '.
                     'FROM groups,project_group_list,project_task,project_assigned_to '.
                     'WHERE project_task.project_task_id=project_assigned_to.project_task_id '.
-                    "AND project_assigned_to.assigned_to_id=$1 AND project_task.status_id='1'  ".
+                    "AND project_assigned_to.assigned_to_id=$1 AND project_task.status_id IN (1, 4, 5, 6)  ".
                     'AND project_group_list.group_id=groups.group_id '.
                     "AND groups.group_id=$2 ".
                     'AND project_group_list.group_project_id=project_task.group_project_id '.

Modified: branches/messer-51/src/common/widget/Widget_ProjectDescription.class.php
===================================================================
--- branches/messer-51/src/common/widget/Widget_ProjectDescription.class.php	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/common/widget/Widget_ProjectDescription.class.php	2012-01-19 15:25:17 UTC (rev 18052)
@@ -53,7 +53,7 @@
 			} else {
 				print "<p>" . _('This project has not yet submitted a description.') . '</p>';
 			}
-			if ($longdesc) {
+			if ($longdesc && $longdesc != $shortdesc) {
 				print "<hr /><p>"
 					. nl2br($longdesc)
 					.'</p>';

Modified: branches/messer-51/src/deb-specific/db-upgrade.pl
===================================================================
--- branches/messer-51/src/deb-specific/db-upgrade.pl	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/deb-specific/db-upgrade.pl	2012-01-19 15:25:17 UTC (rev 18052)
@@ -12,6 +12,7 @@
 use MIME::Base64 ;
 use HTML::Entities ;
 use Digest::MD5 ;
+use BSD::arc4random qw(arc4random_bytes);
 
 use vars qw/$dbh @reqlist $query/ ;
 use vars qw/$sys_default_domain $sys_scm_host $sys_download_host
@@ -2396,6 +2397,90 @@
 	$dbh->commit();
     }
 
+    $version = &get_db_version;
+    $target = "5.1-11+evolvis-7";
+    if (&is_lesser($version, $target)) {
+	my ($urlbase, $urltail, $listpw);
+
+	$urlbase = util_make_url('/plugins/mediawiki/wiki/');
+	$urltail = '/index.php/$1';
+	$listpw = substr(Digest::MD5::md5_base64(arc4random_bytes(16)), 0, 16);
+
+	&debug("Creating Interwiki table, commits and discussion mailing lists");
+	@reqlist = (
+	    "INSERT INTO mail_group_list (group_id, list_name, is_public,
+		    password, list_admin, status, description)
+		SELECT group_id, unix_group_name||'-commits', 1, '$listpw',
+		    101, 1, 'SCM Commits'
+		FROM groups
+		WHERE status = 'A'
+		    AND group_id NOT IN (
+			SELECT mgl.group_id
+			FROM mail_group_list mgl, groups g
+			WHERE mgl.group_id = g.group_id
+			    AND mgl.list_name LIKE '%-commits'
+			)",
+	    "INSERT INTO mail_group_list (group_id, list_name, is_public,
+		    password, list_admin, status, description)
+		SELECT group_id, unix_group_name||'-discuss', 1, '$listpw',
+		    101, 1, 'Discussion'
+		FROM groups
+		WHERE status = 'A'
+		    AND group_id NOT IN (
+			SELECT mgl.group_id
+			FROM mail_group_list mgl, groups g
+			WHERE mgl.group_id = g.group_id
+			    AND mgl.list_name LIKE '%-discuss'
+			)",
+	    q{
+		CREATE OR REPLACE FUNCTION Iu7quah7() RETURNS void
+		    LANGUAGE plpgsql
+		    AS $_$
+		BEGIN
+		    BEGIN
+			CREATE TABLE interwiki (
+				iw_prefix  TEXT      NOT NULL  UNIQUE,
+				iw_url     TEXT      NOT NULL,
+				iw_local   SMALLINT  NOT NULL,
+				iw_trans   SMALLINT  NOT NULL  DEFAULT 0
+			);
+		    EXCEPTION
+			WHEN OTHERS THEN
+			     RETURN;
+		    END;
+		END;$_$;
+},
+	    "SELECT Iu7quah7();",
+	    "DROP FUNCTION Iu7quah7();",
+	    "INSERT INTO interwiki
+		SELECT g.unix_group_name,
+		    '$urlbase'||g.unix_group_name||'$urltail',
+		    1, 0
+		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 = 'mediawiki'
+		    AND g.unix_group_name NOT IN (
+			SELECT g.unix_group_name
+			FROM groups g, interwiki iw
+			WHERE g.unix_group_name = iw.iw_prefix
+		    )"
+	    );
+
+	foreach my $s (@reqlist) {
+	    $query = $s;
+	    # debug $query;
+	    $sth = $dbh->prepare($query);
+	    $sth->execute();
+	    $sth->finish();
+	}
+	@reqlist = ();
+
+	&update_db_version($target);
+	&debug("Committing.");
+	$dbh->commit();
+    }
+
     ########################### INSERT HERE #################################
 
     # There should be a commit at the end of every block above.

Modified: branches/messer-51/src/deb-specific/group_dump_update.pl
===================================================================
--- branches/messer-51/src/deb-specific/group_dump_update.pl	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/deb-specific/group_dump_update.pl	2012-01-19 15:25:17 UTC (rev 18052)
@@ -106,7 +106,11 @@
             $default_perms = 2770 ;
             $file_default_perms = 660;
 	    $default_page = "/usr/share/gforge/lib/private_default_page.php" ;
+	    if (! -e $default_page) {
+		$default_page = "/usr/share/gforge/lib/default_page.php";
+	    }
         }
+	$incdir_perms = 2775;
 	
 	if ($verbose) {print("Making a Group for : $gname\n")};
 		
@@ -121,8 +125,8 @@
 	system("chmod $default_perms $log_dir");
 	system("chmod $default_perms $cgi_dir");
 	system("chmod $default_perms $ht_dir");
-	system("chmod $default_perms $inc_dir");
-	system("chmod $file_default_perms $ht_dir/index.php");
+	system("chmod $incdir_perms $inc_dir");
+	system("chmod 664 $ht_dir/index.php");
 	chown $dummy_uid, $gid, ($group_dir, $log_dir, $cgi_dir, $ht_dir);
 	chown $dummy_uid, $gid, ("$ht_dir/index.php");
 }
@@ -147,6 +151,7 @@
 	} else {
 	    $default_perms = 2771 ;
 	}
+	$incdir_perms = 2775;
 
 	if ($verbose) {print("Updating Group: $gname\n")};
 		
@@ -154,7 +159,7 @@
 	system("chmod $default_perms $log_dir");
 	system("chmod $default_perms $cgi_dir");
 	system("chmod $default_perms $ht_dir");
-	system("chmod $default_perms $inc_dir");
+	system("chmod $incdir_perms $inc_dir");
 	chown $dummy_uid, $gid, ($group_dir, $log_dir, $cgi_dir, $ht_dir, $inc_dir);
 	
 	my $realuid=get_file_owner_uid($group_dir);

Modified: branches/messer-51/src/deb-specific/mailfwd_update.pl
===================================================================
--- branches/messer-51/src/deb-specific/mailfwd_update.pl	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/deb-specific/mailfwd_update.pl	2012-01-19 15:25:17 UTC (rev 18052)
@@ -64,10 +64,6 @@
     return ($uid,$gid);
 }
 
-# Run as gforge
-my($name,$passwd,$uid,$gid,$quota,$comment,$gcos,$dir,$shell) = getpwnam("gforge");
-$> = $uid;
-
 require("/usr/share/gforge/lib/include.pl");  # Include all the predefined functions
 
 my $verbose=0;
@@ -75,6 +71,10 @@
 
 &db_connect;
 
+# Run as gforge
+my($name,$passwd,$uid,$gid,$quota,$comment,$gcos,$dir,$shell) = getpwnam("gforge");
+$> = $uid;
+
 $dbh->{AutoCommit} = 0;
 
 # Dump the Table information

Modified: branches/messer-51/src/deb-specific/update-user-group-ssh.sh
===================================================================
--- branches/messer-51/src/deb-specific/update-user-group-ssh.sh	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/deb-specific/update-user-group-ssh.sh	2012-01-19 15:25:17 UTC (rev 18052)
@@ -12,7 +12,26 @@
     lockfile-touch $LOCK &
     LOCKPID=$!
     trap "kill $LOCKPID ; lockfile-remove $LOCK" exit
-        
+
+	# Create /etc/gforge/shell.inc
+	(
+		echo '# THIS FILE IS GENERATED, DO NOT MODIFY'
+		php -r '
+			require_once "/usr/share/gforge/www/env.inc.php";
+			require_once $gfcommon."include/pre.php";
+
+			$mapping = array(
+				"domain_name" => array("web_host", "core"),
+				"lists_host" => array("lists_host", "core"),
+				"sys_name" => array("forge_name", "core"),
+			    );
+			foreach ($mapping as $key => $where) {
+				printf("%s %s\n", $key,
+				    forge_get_config($where[0], $where[1]));
+			}
+		    '
+	) >/etc/gforge/shell.inc
+
 	# Fill ldap tables
 	# Should be safe to comment this soon
 	# Be sure the system user are created before creating homes

Modified: branches/messer-51/src/debian/changelog
===================================================================
--- branches/messer-51/src/debian/changelog	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/debian/changelog	2012-01-19 15:25:17 UTC (rev 18052)
@@ -1,8 +1,42 @@
-fusionforge (5.1.1+evolvis7) UNRELEASED; urgency=low
+fusionforge (5.1.1+evolvis40) unstable; urgency=low
 
+  * Only display group long description when it differs from the short
+    description in the Project Description widget
+  * Fix not using SSL for links to Mailing List archives
+  * Unbreak creating users’ ~/.forward files
+
+ -- Thorsten Glaser <t.glaser at tarent.de>  Thu, 19 Jan 2012 15:49:48 +0100
+
+fusionforge (5.1.1+evolvis8) unstable; urgency=low
+
   [ Mike Esser ]
-  * Advanced Search: fix Status, add Summary fields
+  * [#2376] Fix: only group admins can change the summary page’s layout
+  * [#2372] Advanced Search: Add Detailed Description
+  * [#2383] Advanced Search: “like” operator is now case-insensitive
+  * [#2364] My Page: Artifacts are now properly sorted
+
+  [ Patrick Apel ]
+  * [#2400] Tasks: Unbreak CSV import
+
+  [ Thorsten Glaser ]
+  * Make (Univention) LDAP integration more robust
+  * [#1897] [#1896] Create a template group that can be used for new
+    group registrations to have standard mailing lists, trackers, etc.
+  * [#2368] Widgets aren’t closed but removed from the view (button title)
+  * [#2318] German translation fix
+  * [#2404] Send mail when a GroupJoinRequest is accepted
+  * [#2503] Begin improving the look of the SCM part
+  * [#2497] Bring back SVN and GIT commit mails for existing groups
+
+ -- Thorsten Glaser <t.glaser at tarent.de>  Wed, 18 Jan 2012 17:14:27 +0100
+
+fusionforge (5.1.1+evolvis7.1) unstable; urgency=low
+
+  [ Mike Esser ]
+  * Advanced Search: fix Status, add Summary fields, fix sorting
   * [#2324] fix Status, fix whitespace in search terms
+  * Add back old Power Query to co-exist with Advanced Search
+  * Autocomplete dismisses invalid input after the second character
 
   [ Roland Mas ]
   * Fixed FRS of manually uploaded files
@@ -10,6 +44,10 @@
 
   [ Patrick Apel ]
   * [#2314] Fix mapping of Percent complete → Status onchange
+  * [#2299] Fix display of Task/Tracker relationships
+  * [#1839] Fix task display on My Page
+  * Tasks: Add ECMAscript that unchecks the None value when
+    clicking on an Assignee or Task dependency
 
   [ Thorsten Glaser ]
   * [#2319] More consistency in theming
@@ -19,12 +57,20 @@
   * Wrap Codendi code to update the widgeting theme in a DB transaction
   * [#2378] Remove Paging from Tracker, too, as it’s broken beyond repair
   * Improve debugging code
-  * [#2374] do not display /activity/ link in a !development environment
+  * [#2374] Display JpGraph errors graphically; fix headers, etc.
   * [#2313] Tracker: put a trash can icon into the column heading
   * Improve tooltip help for the write a comment field
-  * [#2369] make tipsies easier to read
+  * [#2369] Make tipsies easier to read
+  * [#1836] Fix creation of group default webpage
+  * [#2325] When displaying activity, use 23:59:59 on the last day
+  * [#2348] Handle SCM symlinks /scmrepos, /svnroot and $chroot/svnroot
+    (new: even piuparts clean, at least this part)
+  * Fix detemplating accident in plugins’ postinst maintainer script
+  * mediawiki plugin: Default to enable image uploads
+  * Unbreak interwiki; add database convergence (depends BSD::arc4random)
+  * Make session cookies HttpOnly (raise PHP dependency to 5.2)
 
- -- Thorsten Glaser <t.glaser at tarent.de>  Mon, 09 Jan 2012 13:29:27 +0100
+ -- Thorsten Glaser <t.glaser at tarent.de>  Tue, 17 Jan 2012 10:27:33 +0100
 
 fusionforge (5.1.1+evolvis6) unstable; urgency=low
 

Modified: branches/messer-51/src/debian/control
===================================================================
--- branches/messer-51/src/debian/control	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/debian/control	2012-01-19 15:25:17 UTC (rev 18052)
@@ -83,7 +83,7 @@
 
 Package: gforge-common
 Architecture: all
-Depends: debconf (>= 1.0.32) | debconf-2.0, ucf, cpio, lockfile-progs, adduser, php5-cli, php-htmlpurifier (>= 4.0), libphp-simplepie (>= 1.2-2+tarent1), libphp-simplepie (<< 1.2-3~~), python, mksh, xz-utils, sudo, w3c-dtd-xhtml, xmlstarlet, ${misc:Depends}
+Depends: debconf (>= 1.0.32) | debconf-2.0, ucf, cpio, lockfile-progs, adduser, php5-cli, php-htmlpurifier (>= 4.0), libphp-simplepie (>= 1.2-2+tarent1), libphp-simplepie (<< 1.2-3~~), python, mksh, xz-utils, sudo, w3c-dtd-xhtml, xmlstarlet, libbsd-arc4random-perl, ${misc:Depends}
 Recommends: php5-perl (>= 1.0.0-2~), libauthen-passphrase-perl
 Conflicts: sourceforge, gforge-plugin-scmcvs (<< 4.1), gforge-plugin-scmsvn (<< 4.1), gforge-plugin-scmccase (<< 4.1), gforge-theme-starterpack (<< 4.0)
 Description: collaborative development tool - shared files
@@ -98,7 +98,7 @@
 
 Package: gforge-web-apache2
 Architecture: all
-Depends: gforge-common, gforge-db-postgresql | gforge-db, libapache2-mod-php5, php5-cgi, php5-pgsql, php5-gd, perl, libdbi-perl, libdbd-pg-perl, debianutils (>= 1.7), debconf (>= 1.0.32) | debconf-2.0, ucf, cronolog, python, ssl-cert, libnusoap-php, php-htmlpurifier (>= 4.0), libjs-yui (>= 2.8.2r1~squeeze-1.1~), libjs-prototype (>= 1.7.0-2.1~), libjs-scriptaculous (>= 1.9.0-2~), libjs-jquery (>= 1.6.4-1~), libjs-jquery-ui (>= 1.8.ooops.16+dfsg-1~), libphp-jpgraph, tango-icon-theme, toilet, ${misc:Depends}
+Depends: gforge-common, gforge-db-postgresql | gforge-db, libapache2-mod-php5 (>= 5.2), php5-cgi (>= 5.2), php5-pgsql, php5-gd, perl, libdbi-perl, libdbd-pg-perl, debianutils (>= 1.7), debconf (>= 1.0.32) | debconf-2.0, ucf, cronolog, python, ssl-cert, libnusoap-php, php-htmlpurifier (>= 4.0), libjs-yui (>= 2.8.2r1~squeeze-1.1~), libjs-prototype (>= 1.7.0-2.1~), libjs-scriptaculous (>= 1.9.0-2~), libjs-jquery (>= 1.6.4-1~), libjs-jquery-ui (>= 1.8.ooops.16+dfsg-1~), libphp-jpgraph, tango-icon-theme, toilet, ${misc:Depends}
 Recommends: locales | locales-all
 Provides: gforge-web
 Conflicts: gforge-web

Modified: branches/messer-51/src/debian/dsf-in/common.postinst
===================================================================
--- branches/messer-51/src/debian/dsf-in/common.postinst	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/debian/dsf-in/common.postinst	2012-01-19 15:25:17 UTC (rev 18052)
@@ -39,6 +39,14 @@
 		    ln -sf $file /usr/share/gforge/common/include/
 	done
 
+	dolink=1
+	test -e /scmrepos && dolink=0
+	test -h /scmrepos && dolink=1
+	if test $dolink = 1; then
+		rm -f /scmrepos
+		ln -s var/lib/gforge/chroot/scmrepos /scmrepos
+	fi
+
 	adduser --system --group --home /var/www/@OLDPACKAGE@ @OLDPACKAGE@ > /dev/null 2>&1
 	adduser --system --group --home /var/lib/@OLDPACKAGE@/chroot/cvsroot anonscm- at OLDPACKAGE@ > /dev/null 2>&1
 	adduser --system --group --home /var/lib/@OLDPACKAGE@/chroot/cvsroot scm- at OLDPACKAGE@ > /dev/null 2>&1

Modified: branches/messer-51/src/debian/dsf-in/common.postrm
===================================================================
--- branches/messer-51/src/debian/dsf-in/common.postrm	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/debian/dsf-in/common.postrm	2012-01-19 15:25:17 UTC (rev 18052)
@@ -20,6 +20,7 @@
     purge)
 	rm -rf /var/lib/@OLDPACKAGE@
 	[ -d /etc/@OLDPACKAGE@ ] && rm -rf /etc/@OLDPACKAGE@
+	rm -f /scmrepos
 	;;
     remove|upgrade|failed-upgrade|abort-install|abort-upgrade|disappear)
 	;;

Modified: branches/messer-51/src/debian/dsf-in/plugin.postinst
===================================================================
--- branches/messer-51/src/debian/dsf-in/plugin.postinst	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/debian/dsf-in/plugin.postinst	2012-01-19 15:25:17 UTC (rev 18052)
@@ -1,5 +1,5 @@
 #! /bin/sh
-# postinst script for @OLDPACKAGE at -plugin-mediawiki
+# postinst script for @OLDPACKAGE at -plugin-@PLUGSHORTNAME@
 #
 # see: dh_installdeb(1)
 

Modified: branches/messer-51/src/debian/evolvis.postinst
===================================================================
--- branches/messer-51/src/debian/evolvis.postinst	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/debian/evolvis.postinst	2012-01-19 15:25:17 UTC (rev 18052)
@@ -36,6 +36,14 @@
 		enable_mwext SpecialInterwiki.php
 		enable_mwext SyntaxHighlight_GeSHi.php
 	fi
+
+	if test -z "$2" || \
+	    dpkg --compare-versions "$2" lt 5.1.1+evolvis7.2; then
+		# fresh installation or upgrade from <= evolvis 7.2 (beta)
+		# => create a template project for evolvis 8 (beta)
+		/usr/share/gforge/bin/populate_template_project.php \
+		    new evtemplate8 'Evolvis Template v8'
+	fi
 	;;
 
 abort-upgrade|abort-remove|abort-deconfigure)

Copied: branches/messer-51/src/debian/fusionforge-plugin-scmgit.lintian-overrides (from rev 18050, trunk/gforge_base/evolvisforge-5.1/src/debian/fusionforge-plugin-scmgit.lintian-overrides)
===================================================================
--- branches/messer-51/src/debian/fusionforge-plugin-scmgit.lintian-overrides	                        (rev 0)
+++ branches/messer-51/src/debian/fusionforge-plugin-scmgit.lintian-overrides	2012-01-19 15:25:17 UTC (rev 18052)
@@ -0,0 +1,2 @@
+# curva lenny
+fusionforge-plugin-scmgit: unusual-interpreter ./etc/gforge/plugins/scmgit/post-receive-email.sh #!/bin/mksh

Modified: branches/messer-51/src/etc/config.ini.d/evolvis.ini
===================================================================
--- branches/messer-51/src/etc/config.ini.d/evolvis.ini	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/etc/config.ini.d/evolvis.ini	2012-01-19 15:25:17 UTC (rev 18052)
@@ -9,7 +9,6 @@
 use_ftp = false
 use_people = false
 default_theme = evolvis
-default_lang = German
 default_timezone = Europe/Berlin
 default_country_code = DE
 project_registration_restricted = no

Modified: branches/messer-51/src/etc/templates/local.pl
===================================================================
--- branches/messer-51/src/etc/templates/local.pl	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/etc/templates/local.pl	2012-01-19 15:25:17 UTC (rev 18052)
@@ -35,6 +35,8 @@
 $homedir_prefix = &forge_get_config ('homedir_prefix') ;
 $grpdir_prefix = &forge_get_config ('groupdir_prefix') ;
 $file_dir = &forge_get_config ('data_path') ;
+$sys_use_ssl = &forge_get_config('use_ssl');
+$sys_urlprefix = &forge_get_config('url_prefix');
 
 $noreply_to_bitbucket = '{noreply_to_bitbucket}' ;
 $sys_ip_address = '{ip_address}';

Modified: branches/messer-51/src/packaging/control/020common
===================================================================
--- branches/messer-51/src/packaging/control/020common	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/packaging/control/020common	2012-01-19 15:25:17 UTC (rev 18052)
@@ -1,6 +1,6 @@
 Package: @OLDPACKAGE at -common
 Architecture: all
-Depends: debconf (>= 1.0.32) | debconf-2.0, ucf, cpio, lockfile-progs, adduser, php5-cli, php-htmlpurifier (>= 4.0), libphp-simplepie (>= 1.2-2+tarent1), libphp-simplepie (<< 1.2-3~~), python, mksh, xz-utils, sudo, w3c-dtd-xhtml, xmlstarlet, ${misc:Depends}
+Depends: debconf (>= 1.0.32) | debconf-2.0, ucf, cpio, lockfile-progs, adduser, php5-cli, php-htmlpurifier (>= 4.0), libphp-simplepie (>= 1.2-2+tarent1), libphp-simplepie (<< 1.2-3~~), python, mksh, xz-utils, sudo, w3c-dtd-xhtml, xmlstarlet, libbsd-arc4random-perl, ${misc:Depends}
 Recommends: php5-perl (>= 1.0.0-2~), libauthen-passphrase-perl
 Conflicts: sourceforge, @OLDPACKAGE at -plugin-scmcvs (<< 4.1), @OLDPACKAGE at -plugin-scmsvn (<< 4.1), @OLDPACKAGE at -plugin-scmccase (<< 4.1), @OLDPACKAGE at -theme-starterpack (<< 4.0)
 Description: collaborative development tool - shared files

Modified: branches/messer-51/src/packaging/control/030web-apache2
===================================================================
--- branches/messer-51/src/packaging/control/030web-apache2	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/packaging/control/030web-apache2	2012-01-19 15:25:17 UTC (rev 18052)
@@ -1,6 +1,6 @@
 Package: @OLDPACKAGE at -web-apache2
 Architecture: all
-Depends: @OLDPACKAGE at -common, @OLDPACKAGE at -db-postgresql | @OLDPACKAGE at -db, libapache2-mod-php5, php5-cgi, php5-pgsql, php5-gd, perl, libdbi-perl, libdbd-pg-perl, debianutils (>= 1.7), debconf (>= 1.0.32) | debconf-2.0, ucf, cronolog, python, ssl-cert, libnusoap-php, php-htmlpurifier (>= 4.0), libjs-yui (>= 2.8.2r1~squeeze-1.1~), libjs-prototype (>= 1.7.0-2.1~), libjs-scriptaculous (>= 1.9.0-2~), libjs-jquery (>= 1.6.4-1~), libjs-jquery-ui (>= 1.8.ooops.16+dfsg-1~), libphp-jpgraph, tango-icon-theme, toilet, ${misc:Depends}
+Depends: @OLDPACKAGE at -common, @OLDPACKAGE at -db-postgresql | @OLDPACKAGE at -db, libapache2-mod-php5 (>= 5.2), php5-cgi (>= 5.2), php5-pgsql, php5-gd, perl, libdbi-perl, libdbd-pg-perl, debianutils (>= 1.7), debconf (>= 1.0.32) | debconf-2.0, ucf, cronolog, python, ssl-cert, libnusoap-php, php-htmlpurifier (>= 4.0), libjs-yui (>= 2.8.2r1~squeeze-1.1~), libjs-prototype (>= 1.7.0-2.1~), libjs-scriptaculous (>= 1.9.0-2~), libjs-jquery (>= 1.6.4-1~), libjs-jquery-ui (>= 1.8.ooops.16+dfsg-1~), libphp-jpgraph, tango-icon-theme, toilet, ${misc:Depends}
 Recommends: locales | locales-all
 Provides: @OLDPACKAGE at -web
 Conflicts: @OLDPACKAGE at -web

Modified: branches/messer-51/src/packaging/install/common
===================================================================
--- branches/messer-51/src/packaging/install/common	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/packaging/install/common	2012-01-19 15:25:17 UTC (rev 18052)
@@ -19,7 +19,7 @@
 #
 deb-specific/user_dump_update.pl       usr/share/@OLDPACKAGE@/bin/
 deb-specific/group_dump_update.pl      usr/share/@OLDPACKAGE@/bin/
-#cronjobs/cvs-cron/default_page.php    usr/share/@OLDPACKAGE@/cronjobs/
+cronjobs/default_page.php              usr/share/@OLDPACKAGE@/lib/
 deb-specific/ssh_dump_update.pl        usr/share/@OLDPACKAGE@/bin/
 deb-specific/mailfwd_update.pl         usr/share/@OLDPACKAGE@/bin/
 #

Modified: branches/messer-51/src/packaging/install/db-postgresql
===================================================================
--- branches/messer-51/src/packaging/install/db-postgresql	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/packaging/install/db-postgresql	2012-01-19 15:25:17 UTC (rev 18052)
@@ -59,8 +59,7 @@
 db/20090507-add_element_pos.sql		usr/share/@OLDPACKAGE@/db/
 db/20090507-add_project_query.sql	usr/share/@OLDPACKAGE@/db/
 db/20090507-browse_list.sql		usr/share/@OLDPACKAGE@/db/
-db/2010*.sql				usr/share/@OLDPACKAGE@/db/
-db/2011*.sql				usr/share/@OLDPACKAGE@/db/
+db/201*.sql				usr/share/@OLDPACKAGE@/db/
 db/FTI*.sql				usr/share/@OLDPACKAGE@/db/
 #
 utils/inject-users.php usr/share/@OLDPACKAGE@/bin/

Modified: branches/messer-51/src/plugins/mediawiki/cronjobs/create-wikis.php
===================================================================
--- branches/messer-51/src/plugins/mediawiki/cronjobs/create-wikis.php	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/plugins/mediawiki/cronjobs/create-wikis.php	2012-01-19 15:25:17 UTC (rev 18052)
@@ -53,7 +53,7 @@
 	cron_debug("Checking $project...");
 
 	$res = db_query_params('DELETE FROM plugin_mediawiki_interwiki WHERE iw_prefix=$1', array($project));
-	$url = util_make_url("/plugins/mediawiki/wiki/$project/index.php/$1");
+	$url = util_make_url('/plugins/mediawiki/wiki/' . $project . '/index.php/$1');
 	$res = db_query_params('INSERT INTO plugin_mediawiki_interwiki VALUES ($1, $2, 1, 0)',
 			       array($project,
 				     $url));

Modified: branches/messer-51/src/plugins/mediawiki/etc/mediawiki.ini
===================================================================
--- branches/messer-51/src/plugins/mediawiki/etc/mediawiki.ini	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/plugins/mediawiki/etc/mediawiki.ini	2012-01-19 15:25:17 UTC (rev 18052)
@@ -1,7 +1,7 @@
 [mediawiki]
 
 ; Whether uploads are allowed on the mediawiki
-enable_uploads = false
+enable_uploads = true
 
 ; Source dir of the mediawiki source code.
 src_path = /usr/share/mediawiki

Modified: branches/messer-51/src/plugins/scmgit/common/GitPlugin.class.php
===================================================================
--- branches/messer-51/src/plugins/scmgit/common/GitPlugin.class.php	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/plugins/scmgit/common/GitPlugin.class.php	2012-01-19 15:25:17 UTC (rev 18052)
@@ -22,7 +22,7 @@
  */
 
 forge_define_config_item ('default_server', 'scmgit', forge_get_config ('web_host')) ;
-forge_define_config_item ('repos_path', 'scmgit', forge_get_config('chroot').'/scmrepos/git') ;
+forge_define_config_item ('repos_path', 'scmgit', '/scmrepos/git');
 
 class GitPlugin extends SCMPlugin {
 	function GitPlugin () {
@@ -67,7 +67,9 @@
 	}
 
 	function getInstructionsForAnon ($project) {
-		$b = '<h2>' . _('Anonymous Git Access') . '</h2>';
+		global $HTML;
+
+		$b = $HTML->boxMiddle(_('Anonymous Git Access'), '', false, 'scmgit_anon');
 		$b .= '<p>';
 		$b .= _('This project\'s Git repository can be checked out through anonymous access with the following command.');
 		$b .= '</p>';
@@ -82,9 +84,7 @@
 		$rows = db_numrows ($result) ;
 
 		if ($rows > 0) {
-			$b .= '<h2>';
-			$b .= _('Developer\'s repository');
-			$b .= '</h2>';
+			$b .= $HTML->boxMiddle(_('Developer\'s repository'), '', false, 'scmgit_persoanon');
 			$b .= '<p>';
 			$b .= ngettext ('One of this project\'s members also has a personal Git repository that can be checked out anonymously.',
 					'Some of this project\'s members also have personal Git repositories that can be checked out anonymously.',
@@ -104,45 +104,39 @@
 	}
 
 	function getInstructionsForRW ($project) {
+		global $HTML;
+
 		if (session_loggedin()) {
 			$u =& user_get_object(user_getid()) ;
 			$d = $u->getUnixName() ;
 			if (forge_get_config('use_ssh', 'scmgit')) {
-				$b = '<h2>';
-				$b .= _('Developer GIT Access via SSH');
-				$b .= '</h2>';
+				$b = $HTML->boxMiddle(_('Developer GIT Access via SSH'), '', false, 'scmgit_dev');
 				$b .= '<p>';
 				$b .= _('Only project developers can access the GIT tree via this method. SSH must be installed on your client machine. Enter your site password when prompted.');
 				$b .= '</p>';
-				$b .= '<p><tt>git clone git+ssh://'.$d.'@' . $this->getBoxForProject($project) . '/'. forge_get_config('repos_path', 'scmgit') .'/'. $project->getUnixName() .'/'. $project->getUnixName() .'.git</tt></p>' ;
+				$b .= '<p><tt>git clone git+ssh://'.$d.'@' . $this->getBoxForProject($project) . forge_get_config('repos_path', 'scmgit') .'/'. $project->getUnixName() .'/'. $project->getUnixName() .'.git</tt></p>' ;
 			} elseif (forge_get_config('use_dav', 'scmgit')) {
 				$protocol = forge_get_config('use_ssl', 'scmgit')? 'https' : 'http';
-				$b = '<h2>';
-				$b .= _('Developer GIT Access via HTTP');
-				$b .= '</h2>';
+				$b = $HTML->boxMiddle(_('Developer GIT Access via HTTP'), '', false, 'scmgit_dev');
 				$b .= '<p>';
 				$b .= _('Only project developers can access the GIT tree via this method. Enter your site password when prompted.');
 				$b .= '</p>';
-				$b .= '<p><tt>git clone '.$protocol.'://'.$d.'@' . $this->getBoxForProject($project) . '/'. forge_get_config('repos_path', 'scmgit') .'/'. $project->getUnixName() .'/'. $project->getUnixName() .'.git</tt></p>' ;
+				$b .= '<p><tt>git clone '.$protocol.'://'.$d.'@' . $this->getBoxForProject($project) . forge_get_config('repos_path', 'scmgit') .'/'. $project->getUnixName() .'/'. $project->getUnixName() .'.git</tt></p>' ;
 			}
 		} else {
 			if (forge_get_config('use_ssh', 'scmgit')) {
-				$b = '<h2>';
-				$b .= _('Developer GIT Access via SSH');
-				$b .= '</h2>';
+				$b = $HTML->boxMiddle(_('Developer GIT Access via SSH'), '', false, 'scmgit_dev');
 				$b .= '<p>';
 				$b .= _('Only project developers can access the GIT tree via this method. SSH must be installed on your client machine. Substitute <i>developername</i> with the proper value. Enter your site password when prompted.');
 				$b .= '</p>';
-				$b .= '<p><tt>git clone git+ssh://<i>'._('developername').'</i>@' . $this->getBoxForProject($project) . '/'. forge_get_config('repos_path', 'scmgit') .'/'. $project->getUnixName() .'/'. $project->getUnixName() .'.git</tt></p>' ;
+				$b .= '<p><tt>git clone git+ssh://<i>'._('developername').'</i>@' . $this->getBoxForProject($project) . forge_get_config('repos_path', 'scmgit') .'/'. $project->getUnixName() .'/'. $project->getUnixName() .'.git</tt></p>' ;
 			} elseif (forge_get_config('use_dav', 'scmgit')) {
 				$protocol = forge_get_config('use_ssl', 'scmgit')? 'https' : 'http';
-				$b = '<h2>';
-				$b .= _('Developer GIT Access via HTTP');
-				$b .= '</h2>';
+				$b = $HTML->boxMiddle(_('Developer GIT Access via HTTP'), '', false, 'scmgit_dev');
 				$b .= '<p>';
 				$b .= _('Only project developers can access the GIT tree via this method. Enter your site password when prompted.');
 				$b .= '</p>';
-				$b .= '<p><tt>git clone '.$protocol.'://<i>'._('developername').'</i>@' . $this->getBoxForProject($project) . '/'. forge_get_config('repos_path', 'scmgit') .'/'. $project->getUnixName() .'/'. $project->getUnixName() .'.git</tt></p>' ;
+				$b .= '<p><tt>git clone '.$protocol.'://<i>'._('developername').'</i>@' . $this->getBoxForProject($project) . forge_get_config('repos_path', 'scmgit') .'/'. $project->getUnixName() .'/'. $project->getUnixName() .'.git</tt></p>' ;
 			}
 		}
 
@@ -153,9 +147,7 @@
 							   array ($project->getID(),
 								  $u->getID())) ;
 				if ($result && db_numrows ($result) > 0) {
-					$b .= '<h2>';
-					$b .= _('Access to your personal repository');
-					$b .= '</h2>';
+					$b .= $HTML->boxMiddle(_('Access to your personal repository'));
 					$b .= '<p>';
 					$b .= _('You have a personal repository for this project, accessible through SSH with the following method. Enter your site password when prompted.');
 					$b .= '</p>';
@@ -164,9 +156,7 @@
 					$glist = $u->getGroups();
 					foreach ($glist as $g) {
 						if ($g->getID() == $project->getID()) {
-							$b .= '<h2>';
-							$b .= _('Request a personal repository');
-							$b .= '</h2>';
+							$b .= $HTML->boxMiddle(_('Request a personal repository'), '', false, 'scmgit_persoreq');
 							$b .= '<p>';
 							$b .= _('You can clone the project repository into a personal one into which you alone will be able to write.  Other members of the project will only have read access.  Access for non-members will follow the same rules as for the project\'s main repository.  Note that the personal repository may take some time before it is created (less than an hour in most situations).');
 							$b .= '</p>';
@@ -184,10 +174,12 @@
 	}
 
 	function getSnapshotPara ($project) {
+		global $HTML;
 
 		$b = "" ;
 		$filename = $project->getUnixName().'-scm-latest.tar'.util_get_compressed_file_extension();
 		if (file_exists(forge_get_config('scm_snapshots_path').'/'.$filename)) {
+			$b .= $HTML->boxMiddle(_('Snapshots'), '', false, 'scmgit_snap');
 			$b .= '<p>[' ;
 			$b .= util_make_link ("/snapshots.php?group_id=".$project->getID(),
 					      _('Download the nightly snapshot')

Modified: branches/messer-51/src/plugins/scmgit/etc/scmgit.ini
===================================================================
--- branches/messer-51/src/plugins/scmgit/etc/scmgit.ini	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/plugins/scmgit/etc/scmgit.ini	2012-01-19 15:25:17 UTC (rev 18052)
@@ -1,7 +1,7 @@
 [scmgit]
 
 default_server = "$core/web_host"
-repos_path = "$core/chroot/scmrepos/git"
+repos_path = "/scmrepos/git"
 use_ssh = true
 use_dav = false
 use_ssl = "$core/use_ssl"

Modified: branches/messer-51/src/plugins/scmgit/packaging/install/plugin-scmgit
===================================================================
--- branches/messer-51/src/plugins/scmgit/packaging/install/plugin-scmgit	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/plugins/scmgit/packaging/install/plugin-scmgit	2012-01-19 15:25:17 UTC (rev 18052)
@@ -3,3 +3,4 @@
 plugins/scmgit/www/*            usr/share/gforge/plugins/scmgit/www/
 plugins/scmgit/db/*		usr/share/gforge/plugins/scmgit/lib/
 plugins/scmgit/etc/*.ini 	etc/@PACKAGE@/config.ini.d/
+plugins/scmgit/etc/plugins/scmgit/*.*	etc/@OLDPACKAGE@/plugins/scmgit/

Modified: branches/messer-51/src/plugins/scmsvn/bin/install.sh
===================================================================
--- branches/messer-51/src/plugins/scmsvn/bin/install.sh	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/plugins/scmsvn/bin/install.sh	2012-01-19 15:25:17 UTC (rev 18052)
@@ -3,8 +3,6 @@
 # Configure Subversion for Sourceforge
 # Roland Mas, Gforge
 
-
-
 set -e
 
 if [ $(id -u) != 0 ] ; then
@@ -12,6 +10,40 @@
     exec su -c "$0 $1"
 fi
 
+maybe_upgrade_from_pre_scm_refactoring() {
+	# must be directories, not symlinks
+	test -h /var/lib/gforge/chroot/svnroot && return 0
+	test -d /var/lib/gforge/chroot/svnroot || return 0
+	test -h /var/lib/gforge/chroot/scmrepos && return 0
+	test -d /var/lib/gforge/chroot/scmrepos || return 0
+	test -h /var/lib/gforge/chroot/scmrepos/svn && return 0
+	test -d /var/lib/gforge/chroot/scmrepos/svn || return 0
+	# must not be equal
+	x1=$(readlink -f /var/lib/gforge/chroot/svnroot)
+	x2=$(readlink -f /var/lib/gforge/chroot/scmrepos/svn)
+	test x"$x1" = x"$x2" && return 0
+	# must not have any dirents in common
+	for f in /var/lib/gforge/chroot/svnroot/*; do
+		ff=${f#/var/lib/gforge/chroot/svnroot/}
+		test -e /var/lib/gforge/chroot/scmrepos/svn/"$f" && return 0
+	done
+	# okay, do the upgrade
+	mv -f /var/lib/gforge/chroot/svnroot/* \
+	    /var/lib/gforge/chroot/scmrepos/svn/
+	rmdir /var/lib/gforge/chroot/svnroot || exit 1
+	ln -s scmrepos/svn /var/lib/gforge/chroot/svnroot
+	# possibly upgrade /svnroot symlink as well
+	makesymlink=1
+	test -e /svnroot && makesymlink=0
+	test -h /svnroot && makesymlink=1
+	if test $makesymlink = 1; then
+		rm -f /svnroot
+		ln -s var/lib/gforge/chroot/scmrepos/svn /svnroot
+	fi
+	# note the /scmrepos symlink is part of the gf-common package
+	return 0
+}
+
 gforge_chroot=$(grep ^gforge_chroot= /etc/fusionforge/fusionforge.conf | cut -d= -f2-)
 
 case "$1" in
@@ -21,11 +53,15 @@
         update-inetd --remove  "svnserve stream tcp nowait.400 gforge_scm /usr/bin/svnserve svnserve -i -r $gforge_chroot" || true
         update-inetd --remove  "svn stream tcp nowait.400 scm-gforge /usr/bin/svnserve svnserve -i -r $gforge_chroot" || true
         update-inetd --add  "svn stream tcp nowait.400 scm-gforge /usr/bin/svnserve svnserve -i -r $gforge_chroot"
+
+	maybe_upgrade_from_pre_scm_refactoring
 	;;
 
     purge)
         update-inetd --remove  "svnserve stream tcp nowait.400 gforge_scm /usr/bin/svnserve svnserve -i -r $gforge_chroot"
         update-inetd --remove  "svn stream tcp nowait.400 scm-gforge /usr/bin/svnserve svnserve -i -r $gforge_chroot"
+
+	rm -f /svnroot /var/lib/gforge/chroot/svnroot
 	;;
 
     *)

Modified: branches/messer-51/src/plugins/scmsvn/common/SVNPlugin.class.php
===================================================================
--- branches/messer-51/src/plugins/scmsvn/common/SVNPlugin.class.php	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/plugins/scmsvn/common/SVNPlugin.class.php	2012-01-19 15:25:17 UTC (rev 18052)
@@ -97,7 +97,9 @@
 	}
 
 	function getInstructionsForAnon ($project) {
-		$b = '<h2>' . _('Anonymous Subversion Access') . '</h2>';
+		global $HTML;
+
+		$b = $HTML->boxMiddle(_('Anonymous Subversion Access'), '', false, 'scmscn_anon');
 		$b .= '<p>';
 		$b .= _("This project's SVN repository can be checked out through anonymous access with the following command(s).");
 		$b .= '</p>';
@@ -116,6 +118,8 @@
 	}
 
 	function getInstructionsForRW ($project) {
+		global $HTML;
+
 		$b = '' ;
 
 		$module = $this->topModule($project);
@@ -124,18 +128,14 @@
 			$u =& user_get_object(user_getid()) ;
 			$d = $u->getUnixName() ;
 			if (forge_get_config('use_ssh', 'scmsvn')) {
-				$b .= '<h2>';
-				$b .= _('Developer Subversion Access via SSH');
-				$b .= '</h2>';
+				$b .= $HTML->boxMiddle(_('Developer Subversion Access via SSH'), '', false, 'scmsvn_dev');
 				$b .= '<p>';
 				$b .= _('Only project developers can access the SVN tree via this method. SSH must be installed on your client machine. Enter your site password when prompted.');
 				$b .= '</p>';
 				$b .= '<p><tt>svn checkout svn+ssh://'.$d.'@' . $this->getBoxForProject($project) . $this->svn_root_fs .'/'. $project->getUnixName().$module.'</tt></p>' ;
 			}
 			if (forge_get_config('use_dav', 'scmsvn')) {
-				$b .= '<h2>';
-				$b .= _('Developer Subversion Access via DAV');
-				$b .= '</h2>';
+				$b .= $HTML->boxMiddle(_('Developer Subversion Access via DAV'), '', false, 'scmsvn_dev');
 				$b .= '<p>';
 				$b .= _('Only project developers can access the SVN tree via this method. Enter your site password when prompted.');
 				$b .= '</p>';
@@ -143,18 +143,14 @@
 			}
 		} else {
 			if (forge_get_config('use_ssh', 'scmsvn')) {
-				$b .= '<h2>';
-				$b .= _('Developer Subversion Access via SSH');
-				$b .= '</h2>';
+				$b .= $HTML->boxMiddle(_('Developer Subversion Access via SSH'), '', false, 'scmsvn_dev');
 				$b .= '<p>';
 				$b .= _('Only project developers can access the SVN tree via this method. SSH must be installed on your client machine. Substitute <i>developername</i> with the proper values. Enter your site password when prompted.');
 				$b .= '</p>';
 				$b .= '<p><tt>svn checkout svn+ssh://<i>'._('developername').'</i>@' . $this->getBoxForProject($project) . $this->svn_root_fs .'/'. $project->getUnixName().$module.'</tt></p>' ;
 			}
 			if (forge_get_config('use_dav', 'scmsvn')) {
-				$b .= '<h2>';
-				$b .= _('Developer Subversion Access via DAV');
-				$b .= '</h2>';
+				$b .= $HTML->boxMiddle(_('Developer Subversion Access via DAV'), '', false, 'scmsvn_dev');
 				$b .= '<p>';
 				$b .= _('Only project developers can access the SVN tree via this method. Substitute <i>developername</i> with the proper values. Enter your site password when prompted.');
 				$b .= '</p>';

Modified: branches/messer-51/src/translations/de.po
===================================================================
--- branches/messer-51/src/translations/de.po	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/translations/de.po	2012-01-19 15:25:17 UTC (rev 18052)
@@ -1,10 +1,10 @@
 # German translations for Evolvis.
 msgid ""
 msgstr ""
-"Project-Id-Version: EvolvisForge 5.1+evolvis7\n"
+"Project-Id-Version: EvolvisForge 5.1+evolvis8\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-01-09 13:26+0100\n"
-"PO-Revision-Date: 2012-01-09 13:28+0100\n"
+"POT-Creation-Date: 2012-01-19 15:49+0100\n"
+"PO-Revision-Date: 2012-01-18 13:49+0100\n"
 "Last-Translator: Thorsten Glaser <t.glaser at tarent.de>\n"
 "Language-Team: german\n"
 "Language: de\n"
@@ -16,7 +16,7 @@
 #: common/advanced_search/AdvancedSearch.class.php:92
 #: common/advanced_search/AdvancedSearch.class.php:97
 #: common/docman/views/search.php:51 common/include/Navigation.class.php:143
-#: common/include/Navigation.class.php:412
+#: common/include/Navigation.class.php:410
 #: plugins/globalsearch/common/globalsearch_stats_boxes.php:48
 #: www/pm/browse_task.php:300
 #: www/search/include/renderers/AdvancedSearchHtmlSearchRenderer.class.php:330
@@ -381,9 +381,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:220
-#: common/forum/ForumHTML.class.php:461 common/include/descriptive.php:130
-#: common/pm/ProjectTask.class.php:1197 common/tracker/Artifact.class.php:1511
+#: common/forum/ForumHTML.class.php:65 common/forum/ForumHTML.class.php:222
+#: common/forum/ForumHTML.class.php:463 common/include/descriptive.php:130
+#: common/pm/ProjectTask.class.php:1204 common/tracker/Artifact.class.php:1511
 #: common/tracker/Artifact.class.php:1513
 #: common/tracker/Artifact.class.php:1517
 #: common/tracker/Artifact.class.php:1519
@@ -423,15 +423,15 @@
 #: www/snippet/detail.php:80 www/snippet/detail.php:169
 #: www/soap/tracker/tracker.php:1131 www/softwaremap/full_list.php:169
 #: www/softwaremap/tag_cloud.php:176 www/softwaremap/trove_list.php:311
-#: www/stats/lastlogins.php:61 www/tracker/browse.php:635
-#: www/tracker/browse.php:650 www/tracker/downloadcsv.php:63
+#: www/stats/lastlogins.php:61 www/tracker/browse.php:733
+#: www/tracker/browse.php:748 www/tracker/downloadcsv.php:63
 #: www/tracker/downloadcsv.php:64 www/tracker/downloadcsv.php:65
 #: www/tracker/include/ArtifactHtml.class.php:60
 #: www/tracker/include/ArtifactHtml.class.php:69
 #: www/tracker/include/ArtifactTypeHtml.class.php:160
 #: www/tracker/include/ArtifactTypeHtml.class.php:161
-#: www/tracker/include/ArtifactTypeHtml.class.php:223 www/tracker/item.php:202
-#: www/tracker/item.php:207
+#: www/tracker/include/ArtifactTypeHtml.class.php:223 www/tracker/item.php:193
+#: www/tracker/item.php:198
 msgid "Y-m-d H:i"
 msgstr "d.m.Y H:i"
 
@@ -500,7 +500,7 @@
 #: www/search/include/renderers/ProjectHtmlSearchRenderer.class.php:45
 #: www/snippet/submit.php:110 www/tracker/admin/form-updatetracker.php:52
 #: www/tracker/admin/ind.php:113 www/tracker/admin/ind.php:142
-#: www/tracker/browse.php:587 www/tracker/ind.php:63
+#: www/tracker/browse.php:666 www/tracker/ind.php:63
 msgid "Description"
 msgstr "Beschreibung"
 
@@ -523,8 +523,8 @@
 
 #: common/docman/include/utils.php:326 common/docman/views/editfile.php:132
 #: www/pm/browse_task.php:585 www/project/admin/database.php:208
-#: www/tracker/admin/form-customizelist.php:44 www/tracker/browse.php:445
-#: www/tracker/browse.php:593 www/tracker/browse.php:761
+#: www/tracker/admin/form-customizelist.php:44 www/tracker/browse.php:519
+#: www/tracker/browse.php:675 www/tracker/browse.php:859
 #: www/tracker/query.php:344
 msgid "State"
 msgstr "Status"
@@ -811,7 +811,7 @@
 #: www/tracker/admin/form-addextrafield.php:132
 #: www/tracker/admin/form-addextrafieldoption.php:101
 #: www/tracker/admin/form-updateextrafieldelement.php:60
-#: www/tracker/include/ArtifactTypeHtml.class.php:147 www/tracker/item.php:149
+#: www/tracker/include/ArtifactTypeHtml.class.php:147 www/tracker/item.php:140
 msgid "Status"
 msgstr "Status"
 
@@ -926,8 +926,8 @@
 #: common/include/rbac_texts.php:219
 #: common/widget/Widget_MyProjects.class.php:79
 #: plugins/mantisbt/www/index.php:49 www/include/Layout.class.php:694
-#: www/tracker/admin/ind.php:90 www/tracker/item.php:182
-#: www/tracker/item.php:383
+#: www/tracker/admin/ind.php:90 www/tracker/item.php:173
+#: www/tracker/item.php:374
 msgid "Admin"
 msgstr "Verwalten"
 
@@ -986,9 +986,9 @@
 #: 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:168
-#: www/tracker/browse.php:421 www/tracker/deleteartifact.php:38
-#: www/tracker/item.php:265
+#: www/tracker/admin/tracker.php:66 www/tracker/browse.php:170
+#: www/tracker/browse.php:495 www/tracker/deleteartifact.php:38
+#: www/tracker/item.php:256
 msgid "Delete"
 msgstr "Löschen"
 
@@ -1045,11 +1045,11 @@
 
 #: common/forum/Forum.class.php:150 common/forum/Forum.class.php:561
 msgid "Forum Name Must Be At Least 3 Characters"
-msgstr "Der Forenname muß mindestens 3 Buchstaben lang sein"
+msgstr "Der Forenname muß mindestens 3 Zeichen lang sein"
 
 #: common/forum/Forum.class.php:154 common/forum/Forum.class.php:565
 msgid "Forum Description Must Be At Least 10 Characters"
-msgstr "Die Foren-Beschreibung muß mindestens 10 Buchstaben lang sein"
+msgstr "Die Foren-Beschreibung muß mindestens 10 Zeichen lang sein"
 
 #: common/forum/Forum.class.php:158 common/forum/Forum.class.php:569
 msgid "Illegal Characters in Forum Name"
@@ -1097,7 +1097,7 @@
 
 #: common/forum/Forum.class.php:620 common/frs/FRSPackage.class.php:447
 #: common/frs/FRSRelease.class.php:356 common/include/Group.class.php:1652
-#: common/mail/MailingList.class.php:388 common/pm/ProjectGroup.class.php:376
+#: common/mail/MailingList.class.php:393 common/pm/ProjectGroup.class.php:376
 #: common/pm/ProjectTask.class.php:513 common/tracker/Artifact.class.php:489
 #: common/tracker/ArtifactExtraField.class.php:429
 #: common/tracker/ArtifactType.class.php:816
@@ -1183,8 +1183,8 @@
 msgid "Release"
 msgstr "Versionen"
 
-#: common/forum/ForumAdmin.class.php:357 common/forum/ForumHTML.class.php:329
-#: common/forum/ForumHTML.class.php:542
+#: common/forum/ForumAdmin.class.php:357 common/forum/ForumHTML.class.php:331
+#: common/forum/ForumHTML.class.php:544
 #: plugins/mailman/www/admin/index.php:186 plugins/mailman/www/index.php:67
 #: plugins/mailman/www/mailman_utils.php:74
 #: plugins/mailman/www/mailman_utils.php:181 www/account/editsshkeys.php:85
@@ -1303,8 +1303,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:270
-#: www/tracker/browse.php:585 www/tracker/item.php:304
+#: www/tracker/admin/form-customizelist.php:42 www/tracker/browse.php:275
+#: www/tracker/browse.php:663 www/tracker/item.php:295
 #: www/tracker/query.php:197 www/tracker/query.php:381
 msgid "Summary"
 msgstr "Kurzbeschreibung"
@@ -1317,30 +1317,30 @@
 msgid "Project"
 msgstr "Projekt"
 
-#: common/forum/ForumHTML.class.php:89
+#: common/forum/ForumHTML.class.php:91
 #: common/widget/Widget_ProjectLatestNews.class.php:42
 #: www/export/projnews.php:72 www/index_std.php:9
 msgid "Latest News"
 msgstr "Neueste Nachrichten"
 
-#: common/forum/ForumHTML.class.php:102
+#: common/forum/ForumHTML.class.php:104
 #, fuzzy
 msgid "View Forums"
 msgstr "Benutze Foren"
 
-#: common/forum/ForumHTML.class.php:104
+#: common/forum/ForumHTML.class.php:106
 msgid "-tooltip:forum:view"
 msgstr ""
 
-#: common/forum/ForumHTML.class.php:108
+#: common/forum/ForumHTML.class.php:110
 msgid "Discussion Forums:"
 msgstr "Diskussionsforum:"
 
-#: common/forum/ForumHTML.class.php:110
+#: common/forum/ForumHTML.class.php:112
 msgid "-tooltip:forum:show"
 msgstr ""
 
-#: common/forum/ForumHTML.class.php:113 common/forum/ForumHTML.class.php:120
+#: common/forum/ForumHTML.class.php:115 common/forum/ForumHTML.class.php:122
 #: plugins/mailman/www/mailman_utils.php:208
 #: plugins/mailman/www/mailman_utils.php:211 www/frs/include/frs_utils.php:77
 #: www/mail/admin/index.php:285 www/mail/mail_utils.php:52
@@ -1353,67 +1353,67 @@
 msgid "Administration"
 msgstr "Administration"
 
-#: common/forum/ForumHTML.class.php:115 common/forum/ForumHTML.class.php:122
+#: common/forum/ForumHTML.class.php:117 common/forum/ForumHTML.class.php:124
 msgid "-tooltip:forum:admin"
 msgstr ""
 
-#: common/forum/ForumHTML.class.php:139 www/forum/monitor.php:59
+#: common/forum/ForumHTML.class.php:141 www/forum/monitor.php:59
 msgid "Stop Monitoring"
 msgstr "Stoppe Beobachtung"
 
-#: common/forum/ForumHTML.class.php:143 common/forum/ForumHTML.class.php:151
+#: common/forum/ForumHTML.class.php:145 common/forum/ForumHTML.class.php:153
 msgid "Monitor Forum"
 msgstr "Beobachte Forum"
 
-#: common/forum/ForumHTML.class.php:146
+#: common/forum/ForumHTML.class.php:148
 msgid "Save Place"
 msgstr "Speicherplatz"
 
-#: common/forum/ForumHTML.class.php:156 common/forum/ForumHTML.class.php:157
+#: common/forum/ForumHTML.class.php:158 common/forum/ForumHTML.class.php:159
 msgid "Start New Thread"
 msgstr "Starten Sie eine neue Diskussion"
 
-#: common/forum/ForumHTML.class.php:206
+#: common/forum/ForumHTML.class.php:208
 msgid "This is the content of the pending message"
 msgstr "Dies ist der Inhalt der wartenden Nachricht"
 
-#: common/forum/ForumHTML.class.php:210 common/forum/ForumHTML.class.php:268
+#: common/forum/ForumHTML.class.php:212 common/forum/ForumHTML.class.php:270
 #: www/forum/message.php:126
 msgid "By:"
 msgstr "Von:"
 
-#: common/forum/ForumHTML.class.php:267 www/forum/message.php:123
+#: common/forum/ForumHTML.class.php:269 www/forum/message.php:123
 msgid "reply"
 msgstr "antworten"
 
-#: common/forum/ForumHTML.class.php:312
+#: common/forum/ForumHTML.class.php:314
 msgid "Current File"
 msgstr "Aktuelle Datei"
 
-#: common/forum/ForumHTML.class.php:320 common/forum/ForumHTML.class.php:353
+#: common/forum/ForumHTML.class.php:322 common/forum/ForumHTML.class.php:355
 msgid "Use the \"Browse\" button to find the file you want to attach"
 msgstr ""
 "Nutzen Sie den \"Browse\" Knopf um die Datei zu finden, die Sie anhängen "
 "möchten."
 
-#: common/forum/ForumHTML.class.php:323 common/forum/ForumHTML.class.php:356
+#: common/forum/ForumHTML.class.php:325 common/forum/ForumHTML.class.php:358
 msgid "File to upload"
 msgstr "Datei zum hochladen"
 
-#: common/forum/ForumHTML.class.php:326
+#: common/forum/ForumHTML.class.php:328
 #, fuzzy
 msgid "Warning: Uploaded file will replace current file"
 msgstr "Warnung: aktuelle Datei wird unwiderruflich gelöscht"
 
-#: common/forum/ForumHTML.class.php:514 common/forum/ForumHTML.class.php:577
+#: common/forum/ForumHTML.class.php:516 common/forum/ForumHTML.class.php:579
 msgid "Subject:"
 msgstr "Betreff:"
 
-#: common/forum/ForumHTML.class.php:517 common/forum/ForumHTML.class.php:580
+#: common/forum/ForumHTML.class.php:519 common/forum/ForumHTML.class.php:582
 msgid "Message:"
 msgstr "Nachricht:"
 
-#: common/forum/ForumHTML.class.php:543 common/widget/Widget.class.php:92
+#: common/forum/ForumHTML.class.php:545 common/widget/Widget.class.php:92
 #: plugins/globalsearch/common/globalsearch_edit_utils.php:106
 #: plugins/globalsearch/common/globalsearch_edit_utils.php:156
 #: www/admin/admin_table.php:58 www/admin/admin_table.php:155
@@ -1425,37 +1425,37 @@
 msgid "Cancel"
 msgstr "Abbrechen"
 
-#: common/forum/ForumHTML.class.php:597
+#: common/forum/ForumHTML.class.php:599
 msgid "HTML tags will display in your post as text"
 msgstr "HTML-Tags werden in Ihrer Nachricht als Text angezeigt"
 
-#: common/forum/ForumHTML.class.php:604
+#: common/forum/ForumHTML.class.php:606
 #, php-format
 msgid ""
 "You are posting anonymously because you are not <a href=\"%1$s\">logged in</"
 "a>"
 msgstr "Sie posten anonym, da Sie nicht <a href=\"%1$s\">angemeldet</a> sind"
 
-#: common/forum/ForumHTML.class.php:608
+#: common/forum/ForumHTML.class.php:610
 msgid "Post Comment"
 msgstr "Poste Kommentar"
 
-#: common/forum/ForumHTML.class.php:608
+#: common/forum/ForumHTML.class.php:610
 msgid "Anonymously"
 msgstr "Anonym"
 
-#: common/forum/ForumHTML.class.php:609
+#: common/forum/ForumHTML.class.php:611
 msgid "Receive followups via email"
 msgstr "Erhalten der Antworten per Email"
 
-#: common/forum/ForumHTML.class.php:621
+#: common/forum/ForumHTML.class.php:623
 #, php-format
 msgid "You could post if you were <a href=\"%1$s\">logged in</a>."
 msgstr ""
 "Sie könnten einen Beitrag posten, wenn Sie <a href=\"%1$s\">angemeldet</a> "
 "wären."
 
-#: common/forum/ForumHTML.class.php:625
+#: common/forum/ForumHTML.class.php:627
 #, php-format
 msgid "Please <a href=\"%1$s\">log in</a>"
 msgstr "Bitte <a href=\"%1$s\">loggen Sie sich ein</a>"
@@ -1687,7 +1687,7 @@
 msgstr "Erlaubnis verweigert"
 
 #: common/include/Error.class.php:142 common/include/User.class.php:279
-#: www/tracker/tracker.php:96
+#: www/tracker/tracker.php:103
 msgid "Invalid Email Address"
 msgstr "Ungültige E-Mail Adresse"
 
@@ -2309,34 +2309,34 @@
 msgid "Project Features & Users Administration"
 msgstr "Projekt-Features und Nutzerverwaltung"
 
-#: common/include/Navigation.class.php:402 www/activity/index.php:85
-#: www/activity/index.php:94 www/activity/index.php:179
-#: www/activity/index.php:265 www/export/rss_project.php:97
+#: common/include/Navigation.class.php:401 www/activity/index.php:64
+#: www/activity/index.php:74 www/activity/index.php:159
+#: www/activity/index.php:243 www/export/rss_project.php:97
 #: www/project/stats/index.php:85
 msgid "Activity"
 msgstr "Aktivität"
 
-#: common/include/Navigation.class.php:404 www/activity/index.php:87
+#: common/include/Navigation.class.php:403 www/activity/index.php:66
 #: www/project/stats/index.php:87
 msgid "-tooltip:Activity"
 msgstr ""
 
-#: common/include/Navigation.class.php:414
+#: common/include/Navigation.class.php:412
 msgid "Advanced Search in this Project"
 msgstr "Erweiterte Suche in diesem Projekt durchführen"
 
-#: common/include/Navigation.class.php:422
+#: common/include/Navigation.class.php:420
 #: common/include/group_section_texts.php:28
 #: common/reporting/report_utils.php:147 plugins/blocks/www/index.php:167
 #: plugins/quota_management/www/quota_project.php:89
 msgid "Forums"
 msgstr "Foren"
 
-#: common/include/Navigation.class.php:424
+#: common/include/Navigation.class.php:422
 msgid "-tooltip:Forums"
 msgstr ""
 
-#: common/include/Navigation.class.php:437 common/include/rbac_texts.php:142
+#: common/include/Navigation.class.php:435 common/include/rbac_texts.php:142
 #: common/include/rbac_texts.php:238 common/include/rbac_texts.php:240
 #: common/reporting/report_utils.php:143
 #: common/widget/Widget_ProjectPublicAreas.class.php:51
@@ -2345,19 +2345,19 @@
 msgid "Tracker"
 msgstr "Tracker"
 
-#: common/include/Navigation.class.php:439
+#: common/include/Navigation.class.php:437
 msgid "Bugtracker, Feature Requests, etc."
 msgstr "Bugtracker, Feature-Anfragen, etc."
 
-#: common/include/Navigation.class.php:455 plugins/blocks/www/index.php:169
+#: common/include/Navigation.class.php:453 plugins/blocks/www/index.php:169
 msgid "Lists"
 msgstr "Mailinglisten"
 
-#: common/include/Navigation.class.php:457
+#: common/include/Navigation.class.php:455
 msgid "Project Mailing Lists"
 msgstr "Projektmailinglisten"
 
-#: common/include/Navigation.class.php:470
+#: common/include/Navigation.class.php:468
 #: common/include/group_section_texts.php:30 common/include/rbac_texts.php:143
 #: common/include/rbac_texts.php:233 common/include/rbac_texts.php:235
 #: common/reporting/report_utils.php:155 common/reporting/report_utils.php:193
@@ -2371,65 +2371,64 @@
 msgid "Tasks"
 msgstr "Aufgaben"
 
-#: common/include/Navigation.class.php:472
+#: common/include/Navigation.class.php:470
 msgid "Task and Time Tracking"
 msgstr "Aufgabenverfolgung und Zeitmanagement"
 
-#: common/include/Navigation.class.php:485
+#: common/include/Navigation.class.php:483
 #: common/reporting/report_utils.php:151 plugins/blocks/www/index.php:171
 #: www/reporting/projectact_graph.php:105
 msgid "Docs"
 msgstr "Dokumentation"
 
-#: common/include/Navigation.class.php:487
+#: common/include/Navigation.class.php:485
 msgid "Document Manager"
 msgstr "Dokumentenmanager"
 
-#: common/include/Navigation.class.php:500
+#: common/include/Navigation.class.php:498
 #: common/widget/Widget_ProjectPublicAreas.class.php:154
 #: plugins/blocks/www/index.php:172
 msgid "Surveys"
 msgstr "Umfragen"
 
-#: common/include/Navigation.class.php:502
+#: common/include/Navigation.class.php:500
 msgid "-tooltip:Surveys"
 msgstr ""
 
-#: common/include/Navigation.class.php:515
+#: common/include/Navigation.class.php:513
 #: common/include/group_section_texts.php:33 plugins/blocks/www/index.php:173
-#: plugins/quota_management/www/quota_project.php:75
-#: www/activity/index.php:117 www/activity/index.php:314
-#: www/admin/index.php:157 www/news/index.php:35
+#: plugins/quota_management/www/quota_project.php:75 www/activity/index.php:97
+#: www/activity/index.php:293 www/admin/index.php:157 www/news/index.php:35
 msgid "News"
 msgstr "Neuigkeiten"
 
-#: common/include/Navigation.class.php:517
+#: common/include/Navigation.class.php:515
 msgid "-tooltip:News"
 msgstr ""
 
-#: common/include/Navigation.class.php:530 common/include/rbac_texts.php:150
+#: common/include/Navigation.class.php:528 common/include/rbac_texts.php:150
 #: common/include/rbac_texts.php:247 common/include/rbac_texts.php:248
 #: plugins/blocks/www/index.php:174 www/stats/site_stats_utils.php:262
 #: www/stats/site_stats_utils.php:386 www/stats/site_stats_utils.php:441
 msgid "SCM"
 msgstr "SCM"
 
-#: common/include/Navigation.class.php:532
+#: common/include/Navigation.class.php:530
 msgid "Source Code Management"
 msgstr "Quellkodeverwaltung (Source Code Management)"
 
-#: common/include/Navigation.class.php:561
+#: common/include/Navigation.class.php:559
 #: common/include/group_section_texts.php:32 common/include/rbac_texts.php:152
 #: common/include/rbac_texts.php:244 plugins/blocks/www/index.php:175
 msgid "Files"
 msgstr "Dateien"
 
-#: common/include/Navigation.class.php:563 common/include/rbac_texts.php:162
+#: common/include/Navigation.class.php:561 common/include/rbac_texts.php:162
 #: common/include/rbac_texts.php:243
 msgid "File Release System"
 msgstr "Datei Freigabesystem"
 
-#: common/include/Navigation.class.php:630
+#: common/include/Navigation.class.php:628
 msgid "Show source"
 msgstr "Zeige Quelle"
 
@@ -2472,68 +2471,73 @@
 msgid "Any user logged in"
 msgstr "Sie müssen sich erst einloggen"
 
-#: common/include/SCMPlugin.class.php:120
+#: common/include/SCMPlugin.class.php:122
 #, fuzzy
 msgid "Unimplemented SCM plugin."
 msgstr "<p>Nicht implementiertes SCM plugin.</p>"
 
-#: common/include/SCMPlugin.class.php:124
+#: common/include/SCMPlugin.class.php:126
 #, fuzzy
 msgid "Instructions for anonymous access for unimplemented SCM plugin."
 msgstr ""
 "<p>Anleitung für anonymen Zugriff auf nicht implementiertes SCM-Plugin.</p>"
 
-#: common/include/SCMPlugin.class.php:128
+#: common/include/SCMPlugin.class.php:130
 #, fuzzy
 msgid "Instructions for read-write access for unimplemented SCM plugin."
 msgstr ""
 "<p>Anleitung für Lese-/Schreibzugriff auf nicht implementiertes SCM-Plugin.</"
 "p>"
 
-#: common/include/SCMPlugin.class.php:132
+#: common/include/SCMPlugin.class.php:134
 #, fuzzy
 msgid "Instructions for snapshot access for unimplemented SCM plugin."
 msgstr ""
 "<p>Anleitung für Snapshot-Zugriff auf nicht implementiertes SCM-Plugin.</p>"
 
-#: common/include/SCMPlugin.class.php:137
-#: common/include/SCMPlugin.class.php:151
+#: common/include/SCMPlugin.class.php:139
+#: common/include/SCMPlugin.class.php:153
 msgid "Repository Browser"
 msgstr "Quellcoderepository ansehen"
 
-#: common/include/SCMPlugin.class.php:139
-#: common/include/SCMPlugin.class.php:153
+#: common/include/SCMPlugin.class.php:141
+#: common/include/SCMPlugin.class.php:155
 #, fuzzy
 msgid "Browsing the SCM tree is not yet implemented for this SCM plugin."
 msgstr ""
 "<p>Die Durchsuchung des SCM Baums ist für dieses SCM plugin noch nicht "
 "implementiert.</p>"
 
-#: common/include/SCMPlugin.class.php:143
+#: common/include/SCMPlugin.class.php:145
 msgid "Not implemented yet"
 msgstr "Noch nicht umgesetzt"
 
-#: common/include/SCMPlugin.class.php:160
+#: common/include/SCMPlugin.class.php:162
 #: plugins/scmcvs/common/CVSPlugin.class.php:148
 #: plugins/scmdarcs/common/DarcsPlugin.class.php:193
-#: plugins/scmsvn/common/SVNPlugin.class.php:193
+#: plugins/scmsvn/common/SVNPlugin.class.php:189
 msgid "Repository Statistics"
 msgstr "Quellcodestatistiken"
 
-#: common/include/SCMPlugin.class.php:162
+#: common/include/SCMPlugin.class.php:164
 #, fuzzy
 msgid "Not implemented for this SCM plugin yet."
 msgstr "Noch nicht umgesetzt"
 
-#: common/include/SCMPlugin.class.php:196
+#: common/include/SCMPlugin.class.php:178
+#, fuzzy
+msgid "Repository Information"
+msgstr "Weitere Informationen"
+
+#: common/include/SCMPlugin.class.php:197
 msgid "Repository History"
 msgstr "Quellcode Historie"
 
-#: common/include/SCMPlugin.class.php:197
+#: common/include/SCMPlugin.class.php:198
 msgid "Data about current and past states of the repository"
 msgstr "Daten über aktuelle und vergangene Zustände der Quellcoderepository"
 
-#: common/include/SCMPlugin.class.php:228
+#: common/include/SCMPlugin.class.php:227
 #, fuzzy
 msgid "Enable Anonymous Read Access"
 msgstr "Ermögliche anonymen Zugang"
@@ -2556,7 +2560,7 @@
 
 #: common/include/User.class.php:258
 msgid "You must supply a password"
-msgstr "Sie müssen ein Passwort eingeben"
+msgstr "Sie müssen ein Paßwort eingeben"
 
 #: common/include/User.class.php:262
 msgid "Passwords do not match"
@@ -2564,7 +2568,7 @@
 
 #: common/include/User.class.php:266
 msgid "Invalid Password:"
-msgstr "Ungültiges Passwort:"
+msgstr "Ungültiges Paßwort:"
 
 #: common/include/User.class.php:271 common/include/User.class.php:340
 msgid "Invalid Unix Name."
@@ -2678,7 +2682,7 @@
 
 #: common/include/account.php:33
 msgid "Password must be at least 6 characters."
-msgstr "Das Passwort muß aus mindestens 6 Buchstaben bestehen."
+msgstr "Das Paßwort muß aus mindestens 6 Zeichen bestehen."
 
 #: common/include/account.php:51
 msgid "There cannot be any spaces in the login name."
@@ -2686,15 +2690,15 @@
 
 #: common/include/account.php:57
 msgid "Name is too short. It must be at least 3 characters."
-msgstr "Der Name ist zu kurz. Er muß mindestens 3 Buchstaben enthalten."
+msgstr "Der Name ist zu kurz. Er muß mindestens 3 Zeichen enthalten."
 
 #: common/include/account.php:61
 msgid "Name is too long. It must be less than 15 characters."
-msgstr "Der Name ist zu lang. Er muß kürzer als 15 Buchstaben sein."
+msgstr "Der Name ist zu lang. Er muß kürzer als 15 Zeichen sein."
 
 #: common/include/account.php:66
 msgid "Illegal character in name."
-msgstr "Ungültiger Buchstabe im Namen."
+msgstr "Ungültiges Zeichen im Namen."
 
 #: common/include/account.php:75
 msgid "Name is reserved."
@@ -2941,11 +2945,11 @@
 msgid "%s (Forum Message)"
 msgstr "%s (Forumnachricht)"
 
-#: common/include/exit.php:32
+#: common/include/exit.php:41
 msgid "Exiting with error"
 msgstr "Beendigung mit Fehler"
 
-#: common/include/exit.php:49
+#: common/include/exit.php:58
 #, fuzzy
 msgid ""
 "Permission denied. This project's administrator will have to grant you "
@@ -2953,29 +2957,34 @@
 msgstr ""
 "Dieser Projekt-Administrator muß Sie berechtigen, um diese Seite zu sehen."
 
-#: common/include/exit.php:68
+#: common/include/exit.php:71
 #, fuzzy
+msgid "You are not logged in."
+msgstr "Projekt-Administrator"
+
+#: common/include/exit.php:83
+#, fuzzy
 msgid ""
 "Permission denied. No project was chosen, project does not exist or you "
 "can't access it."
 msgstr ""
 "Keine Gruppe wurde ausgewählt oder Sie können auf diese nicht zugreifen"
 
-#: common/include/exit.php:80
+#: common/include/exit.php:97
 #, fuzzy
 msgid "Missing required parameters : "
 msgstr "Fehler - es fehlen benötigte Parameter"
 
-#: common/include/exit.php:85
+#: common/include/exit.php:102
 #, fuzzy, php-format
 msgid "Missing required parameters."
 msgstr "Fehler - es fehlen benötigte Parameter"
 
-#: common/include/exit.php:103
+#: common/include/exit.php:120
 msgid "The Site Administrator has turned off this feature."
 msgstr "Der Site Administrator hat dieses Feature ausgeschaltet."
 
-#: common/include/exit.php:112
+#: common/include/exit.php:129
 msgid "You Attempted To Double-submit this item. Please avoid double-clicking."
 msgstr ""
 "Sie haben versucht dieses Element doppelt abzuschicken. Bitte vermeiden Sie "
@@ -3011,6 +3020,46 @@
 msgid "Documentations"
 msgstr "Dokumentationen"
 
+#: common/include/jpgraph.php:33
+msgid "Package JPGraph not installed"
+msgstr "Paket JPGraph wurde noch nicht installiert"
+
+#: common/include/jpgraph.php:48
+msgid "Cannot display error picture: called recursively! Backtrace:"
+msgstr "Kann Fehlerbild nicht darstellen: Fehlerschleife! Backtrace:"
+
+#: common/include/jpgraph.php:49
+msgid "Cannot display error picture, headers already sent! Backtrace:"
+msgstr ""
+"Kann Fehlerbild nicht darstellen, weil die Header bereits gesendet wurden! "
+"Backtrace:"
+
+#: common/include/jpgraph.php:66
+#, php-format
+msgid "%s Error:"
+msgstr "%s Fehler:"
+
+#: common/include/jpgraph.php:80
+msgid "A Forge error occured; maybe you’re not logged in or lack permissions."
+msgstr ""
+"In der Forge ist ein Fehler aufgetreten; vielleicht bist Du nicht "
+"eingeloggt, oder Dir fehlen Zugriffsrechte."
+
+#: common/include/jpgraph.php:91
+msgid ""
+"A fatal JpGraph error occured; maybe your query did not yield any data "
+"points."
+msgstr ""
+"In JpGraph ist ein fataler Fehler aufgetreten; vielleicht hat Deine Abfrage "
+"keine Datenpunkte für den Graphen geliefert."
+
+#: common/include/jpgraph.php:93
+msgid ""
+"A non-fatal JpGraph error occured; we’re nevertheless halting execution."
+msgstr ""
+"In JpGraph ist ein eigentlich nicht fataler Fehler aufgetreten, aber die "
+"Ausführung mußte trotzdem gestoppt werden."
+
 #: common/include/pre.php:281
 #, php-format
 msgid "Posted data is too large. %1$s exceeds the maximum size of %2$s"
@@ -3333,7 +3382,7 @@
 
 #: common/include/session.php:146
 msgid "Missing Password Or Users Name"
-msgstr "Fehlendes Passwort oder Benutzername"
+msgstr "Fehlendes Paßwort oder Benutzername"
 
 #: common/include/session.php:158 common/include/session.php:191
 #: common/include/session.php:242
@@ -3341,7 +3390,7 @@
 #: plugins/ldapextauth/include/LdapExtAuthPlugin.class.php:187
 #: plugins/ldapextauth/include/LdapExtAuthPlugin.class.php:297
 msgid "Invalid Password Or User Name"
-msgstr "Ungültiges Passwort oder Benutzername"
+msgstr "Ungültiges Paßwort oder Benutzername"
 
 #: common/include/session.php:286
 msgid "Account Suspended"
@@ -3398,6 +3447,10 @@
 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
+msgid "Internal Error: Could not read from random device"
+msgstr "Interner Fehler: Kann nicht vom Zufallsgenerator lesen"
+
 #: common/mail/MailingList.class.php:61
 #: common/mail/MailingListFactory.class.php:54
 #: common/survey/Survey.class.php:61 common/survey/SurveyQuestion.class.php:53
@@ -3464,8 +3517,8 @@
 "Listenadministration kann hier gefunden werden:\n"
 "%5$s\n"
 "\n"
-"Ihr Listenpasswort ist: %6$s\n"
-"Sie sollten das Passwort so schnell wie möglich ändern.\n"
+"Ihr Listenpaßwort ist: %6$s\n"
+"Sie sollten das Paßwort so schnell wie möglich ändern.\n"
 "\n"
 "Vielen Dank, daß Sie Ihr Projekt auf %1$s registriert haben.\n"
 "\n"
@@ -3482,7 +3535,7 @@
 msgid "Error Getting mailing list"
 msgstr "Existierende Mailinglisten"
 
-#: common/mail/MailingList.class.php:383
+#: common/mail/MailingList.class.php:388
 msgid "Sorry, this mailing list is special and must not be deleted."
 msgstr "Sorry, diese Malingliste kann nicht gelöscht werden."
 
@@ -3510,7 +3563,7 @@
 msgid "Circular Dependency Detected'"
 msgstr "Periodische Abhängigkeiten entdeckt"
 
-#: common/pm/ProjectTask.class.php:1209
+#: common/pm/ProjectTask.class.php:1216
 #, fuzzy, php-format
 msgid "[%1$s - %2$s] [Task #%3$d] "
 msgstr "[%1$s - %2$s] Task [#%3$d] "
@@ -3765,7 +3818,7 @@
 msgstr "Produkt: Nur Gruppenmitglieder können private Produkttypen sehen"
 
 #: common/tracker/Artifact.class.php:206 common/tracker/Artifact.class.php:749
-#: www/tracker/tracker.php:89 www/tracker/tracker.php:287
+#: www/tracker/tracker.php:96 www/tracker/tracker.php:294
 msgid ""
 "Artifact: This ArtifactType Does Not Allow Anonymous Submissions. Please "
 "Login."
@@ -3956,7 +4009,7 @@
 #: plugins/contribtracker/www/global_admin.php:452
 #: plugins/contribtracker/www/project_admin.php:193
 #: plugins/forumml/www/forumml_utils.php:603 plugins/forumml/www/index.php:126
-#: www/account/pending-resend.php:75 www/activity/index.php:191
+#: www/account/pending-resend.php:75 www/activity/index.php:169
 #: www/admin/admin_table.php:212 www/admin/cronman.php:37
 #: www/admin/globalroleedit.php:247 www/admin/index.php:152
 #: www/admin/pending-news.php:173 www/forum/admin/index.php:427
@@ -3964,8 +4017,8 @@
 #: www/my/bookmark_edit.php:63 www/news/admin/index.php:161
 #: www/news/submit.php:165 www/pm/admin/index.php:219
 #: www/pm/admin/index.php:264 www/pm/admin/index.php:300
-#: www/pm/deletetask.php:44 www/pm/include/ProjectView.class.php:210
-#: www/pm/include/ProjectView.class.php:214
+#: www/pm/deletetask.php:44 www/pm/include/ProjectView.class.php:234
+#: www/pm/include/ProjectView.class.php:238
 #: www/project/admin/editimages.php:237 www/project/admin/roledelete.php:85
 #: www/project/admin/roleedit.php:359 www/project/request.php:69
 #: www/register/index.php:280 www/survey/include/SurveyHTML.class.php:551
@@ -3987,14 +4040,14 @@
 msgstr "Abschicken"
 
 #: common/widget/WidgetLayoutManager.class.php:242
-#: common/widget/WidgetLayoutManager.class.php:246 www/include/html.php:913
+#: common/widget/WidgetLayoutManager.class.php:246 www/include/html.php:915
 #: www/include/project_home.php:73 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:917
+#: common/widget/WidgetLayoutManager.class.php:247 www/include/html.php:919
 #: www/widgets/widgets.php:71
 #, fuzzy
 msgid "Customize layout"
@@ -4035,8 +4088,8 @@
 
 #: common/widget/Widget_MyAdmin.class.php:71
 #, php-format
-msgid "Groups in <a href=\"%s\"><b>P</b> (pending) Status</a>"
-msgstr ""
+msgid "Projects in <a href=\"%s\"><b>P</b> (pending) Status</a>"
+msgstr "Projekte im <a href=\"%s\"><b>P</b> (schwebenden) Status</a>"
 
 #: common/widget/Widget_MyAdmin.class.php:92
 #, fuzzy
@@ -4404,7 +4457,7 @@
 msgstr "Anmerkungen"
 
 #: common/widget/Widget_ProjectLatestFileReleases.class.php:64
-#: www/tracker/include/ArtifactTypeHtml.class.php:789 www/tracker/item.php:249
+#: www/tracker/include/ArtifactTypeHtml.class.php:789 www/tracker/item.php:240
 msgid "Monitor"
 msgstr "Beobachte"
 
@@ -4800,7 +4853,7 @@
 #: plugins/blocks/www/index.php:226
 #: plugins/scmcvs/common/CVSPlugin.class.php:151
 #: plugins/scmdarcs/common/DarcsPlugin.class.php:196
-#: plugins/scmsvn/common/SVNPlugin.class.php:196 www/admin/useredit.php:234
+#: plugins/scmsvn/common/SVNPlugin.class.php:192 www/admin/useredit.php:234
 #: www/project/admin/editimages.php:267 www/reporting/usersummary.php:101
 #: www/search/include/renderers/SkillHtmlSearchRenderer.class.php:44
 #: www/sendmessage.php:69 www/tracker/include/ArtifactTypeHtml.class.php:200
@@ -4894,7 +4947,7 @@
 msgstr "Attribute"
 
 #: plugins/contribtracker/common/ContribTrackerPlugin.class.php:112
-#: www/project/admin/massfinish.php:80 www/project/admin/users.php:315
+#: www/project/admin/massfinish.php:80 www/project/admin/users.php:316
 msgid "Role"
 msgstr "Rolle"
 
@@ -4907,7 +4960,7 @@
 #: plugins/contribtracker/common/ContribTrackerPlugin.class.php:132
 #: plugins/contribtracker/www/index.php:43
 #: plugins/contribtracker/www/project_admin.php:26
-#: plugins/contribtracker/www/project_admin.php:290 www/activity/index.php:36
+#: plugins/contribtracker/www/project_admin.php:290
 msgid "%Y-%m-%d"
 msgstr "%Y-%m-%d"
 
@@ -6079,9 +6132,8 @@
 msgstr "Seiten-Admin Home"
 
 #: plugins/globalsearch/www/index.php:83
-#, fuzzy
 msgid "Search must be at least three characters"
-msgstr "Das Passwort muß aus mindestens 6 Buchstaben bestehen."
+msgstr ""
 
 #: plugins/globalsearch/www/index.php:89
 msgid "Enter Your Search Words Above"
@@ -6333,7 +6385,7 @@
 msgstr "Kontinuierliche Eingliederung mit Hudson"
 
 #: plugins/hudson/include/hudsonViews.class.php:59
-#: utils/fixscripts/populate_template_project.php:81
+#: utils/fixscripts/populate_template_project.php:110
 msgid "Help"
 msgstr "Hilfe"
 
@@ -6415,7 +6467,7 @@
 
 #: plugins/hudson/include/hudsonViews.class.php:298
 msgid "CVS trigger"
-msgstr "CSV Trigger"
+msgstr "CVS Trigger"
 
 #: plugins/hudson/include/hudsonViews.class.php:320
 #, php-format
@@ -6705,8 +6757,8 @@
 
 #: plugins/mailman/include/mailmanPlugin.class.php:155
 #: www/admin/globalroleedit.php:150 www/admin/globalroleedit.php:165
-#: www/admin/globalroleedit.php:175 www/my/rmproject.php:92
-#: www/project/admin/users.php:359
+#: www/admin/globalroleedit.php:175 www/include/Layout.class.php:1275
+#: www/my/rmproject.php:92 www/project/admin/users.php:360
 msgid "Remove"
 msgstr "Entfernen"
 
@@ -6729,7 +6781,8 @@
 msgstr "Kein Objekt: Mailing Liste: %d"
 
 #: plugins/mailman/include/mailmanPlugin.class.php:212
-#: utils/fixscripts/populate_template_project.php:189
+#: utils/fixscripts/populate_template_project.php:219
+#: utils/fixscripts/populate_template_project.php:226
 #, php-format
 msgid "ML: %s"
 msgstr "ML: %s"
@@ -6861,7 +6914,7 @@
 "You seem to have mailman account with a different name or password. If you "
 "want to update mailman information, click on "
 msgstr ""
-"Sie scheinen ein Post-Admin-Konto mit einem anderen Namen oder Passwort zu "
+"Sie scheinen ein Post-Admin-Konto mit einem anderen Namen oder Paßwort zu "
 "haben. Wenn Sie die Post-Admin-Informationen aktualisieren wollen, klicken "
 "Sie auf"
 
@@ -6904,8 +6957,8 @@
 "Listenadministration kann hier gefunden werden:\n"
 "%5$s\n"
 "\n"
-"Ihr Listenpasswort ist: %6$s\n"
-"Sie sollten das Passwort so schnell wie möglich ändern.\n"
+"Ihr Listenpaßwort ist: %6$s\n"
+"Sie sollten das Paßwort so schnell wie möglich ändern.\n"
 "\n"
 "Vielen Dank, daß Sie Ihr Projekt auf %1$s registriert haben.\n"
 "\n"
@@ -7761,7 +7814,7 @@
 #: plugins/quota_management/www/quota.php:184
 #: plugins/quota_management/www/quota_project.php:333
 msgid "Cvs, Svn"
-msgstr "Cvs, Svn"
+msgstr "CVS, Subversion"
 
 #: plugins/quota_management/www/quota.php:186
 #: plugins/quota_management/www/quota.php:210
@@ -7947,7 +8000,7 @@
 #: plugins/quota_management/www/quota_project.php:249
 #: plugins/scmcvs/common/CVSPlugin.class.php:171
 #: plugins/scmdarcs/common/DarcsPlugin.class.php:216
-#: plugins/scmsvn/common/SVNPlugin.class.php:216 www/pm/index.php:103
+#: plugins/scmsvn/common/SVNPlugin.class.php:212 www/pm/index.php:103
 #: www/pm/templates/time_tracking.php:66 www/stats/site_stats_utils.php:285
 #: www/tracker/ind.php:63
 msgid "Total"
@@ -8068,10 +8121,10 @@
 
 #: plugins/scmbzr/common/BzrPlugin.class.php:108
 #: plugins/scmcvs/common/CVSPlugin.class.php:106
-#: plugins/scmgit/common/GitPlugin.class.php:136
-#: plugins/scmgit/common/GitPlugin.class.php:145
-#: plugins/scmsvn/common/SVNPlugin.class.php:152
-#: plugins/scmsvn/common/SVNPlugin.class.php:161
+#: plugins/scmgit/common/GitPlugin.class.php:132
+#: plugins/scmgit/common/GitPlugin.class.php:139
+#: plugins/scmsvn/common/SVNPlugin.class.php:150
+#: plugins/scmsvn/common/SVNPlugin.class.php:157
 msgid "developername"
 msgstr "Entwicklername"
 
@@ -8110,7 +8163,7 @@
 "Mounten Sie die VOB entweder mit einem <tt>Cleartool Mount%1$s</tt> oder "
 "wählen Sie die <tt>%1$s</tt> VOB in Ihrem ClearCase Explorer."
 
-#: plugins/scmccase/common/CCasePlugin.class.php:111 www/tracker/item.php:439
+#: plugins/scmccase/common/CCasePlugin.class.php:111 www/tracker/item.php:430
 msgid "History"
 msgstr "Verlauf"
 
@@ -8178,7 +8231,7 @@
 "<p><b>Anonymer CVS Zugang</b></p><p>Das CVS Repository dieses Projektes kann "
 "via anonymem (pserver) CVS mit der folgenden Anleitung ausgecheckt werden. "
 "Das Modul das Sie auschecken möchten, muß als <i>modulename</i> spezifiziert "
-"werden. Wenn Sie aufgefordert werden für <i>anonymous</i> ein Passwort "
+"werden. Wenn Sie aufgefordert werden für <i>anonymous</i> ein Paßwort "
 "einzugen drücken Sie einfach die Enter-Taste.</p>"
 
 #: plugins/scmcvs/common/CVSPlugin.class.php:80
@@ -8217,11 +8270,11 @@
 "Projektentwickler können mit dieser Methode auf den CVS Baum zugreifen. SSH "
 "muß auf Ihrem Client-Rechner installiert sein. Ersetzen Sie <i>modulename</"
 "i> und <i>developername</i> durch die korrekten Werte. Geben Sie nach der "
-"Aufforderung Ihr Site-Passwort ein.</p>"
+"Aufforderung Ihr Site-Paßwort ein.</p>"
 
 #: plugins/scmcvs/common/CVSPlugin.class.php:119
 #: plugins/scmdarcs/common/DarcsPlugin.class.php:154
-#: plugins/scmgit/common/GitPlugin.class.php:193
+#: plugins/scmgit/common/GitPlugin.class.php:185
 msgid "Download the nightly snapshot"
 msgstr "Nächtlichen git Checkout-Snapshot herunterladen"
 
@@ -8247,16 +8300,16 @@
 
 #: plugins/scmcvs/common/CVSPlugin.class.php:152
 #: plugins/scmdarcs/common/DarcsPlugin.class.php:197
-#: plugins/scmsvn/common/SVNPlugin.class.php:197
+#: plugins/scmsvn/common/SVNPlugin.class.php:193
 #: www/stats/site_stats_utils.php:304
 msgid "Adds"
 msgstr "Zusätze"
 
 #: plugins/scmcvs/common/CVSPlugin.class.php:153
 #: plugins/scmdarcs/common/DarcsPlugin.class.php:198
-#: plugins/scmsvn/common/SVNPlugin.class.php:198
-#: utils/fixscripts/populate_template_project.php:188
-#: www/activity/index.php:122 www/stats/site_stats_utils.php:303
+#: plugins/scmsvn/common/SVNPlugin.class.php:194
+#: utils/fixscripts/populate_template_project.php:218
+#: www/activity/index.php:102 www/stats/site_stats_utils.php:303
 msgid "Commits"
 msgstr "Commits"
 
@@ -8368,12 +8421,12 @@
 "<p>Dokumentation für git ist verfügbar <a href=\"http://git-scm.com/\">here</"
 "a>.</p>"
 
-#: plugins/scmgit/common/GitPlugin.class.php:70
+#: plugins/scmgit/common/GitPlugin.class.php:72
 #, fuzzy
 msgid "Anonymous Git Access"
 msgstr "Ermögliche anonymen Zugang"
 
-#: plugins/scmgit/common/GitPlugin.class.php:72
+#: plugins/scmgit/common/GitPlugin.class.php:74
 #, fuzzy
 msgid ""
 "This project's Git repository can be checked out through anonymous access "
@@ -8383,7 +8436,7 @@
 "Projektes kann durch einen anonymen Zugang mit den folgenden Kommandos "
 "geklont (ausgecheckt) werden.</p>"
 
-#: plugins/scmgit/common/GitPlugin.class.php:86
+#: plugins/scmgit/common/GitPlugin.class.php:87
 #, fuzzy
 msgid "Developer's repository"
 msgstr "Entwickler (test)"
@@ -8402,8 +8455,8 @@
 "Manche Mitglieder des Projekts haben eine persönliche Git-Ablage die Anonym "
 "durchsucht werden kann"
 
-#: plugins/scmgit/common/GitPlugin.class.php:112
-#: plugins/scmgit/common/GitPlugin.class.php:131
+#: plugins/scmgit/common/GitPlugin.class.php:113
+#: plugins/scmgit/common/GitPlugin.class.php:128
 msgid "Developer GIT Access via SSH"
 msgstr "GIT-Entwicklerzugang über SSH"
 
@@ -8419,13 +8472,13 @@
 "<i>developername</i> durch den korrekten Wert. Geben Sie nach der "
 "Aufforderung Ihr Site-Paßwort ein.</p>"
 
-#: plugins/scmgit/common/GitPlugin.class.php:121
-#: plugins/scmgit/common/GitPlugin.class.php:140
+#: plugins/scmgit/common/GitPlugin.class.php:120
+#: plugins/scmgit/common/GitPlugin.class.php:135
 msgid "Developer GIT Access via HTTP"
 msgstr "GIT-Entwicklerzugang über HTTP"
 
-#: plugins/scmgit/common/GitPlugin.class.php:124
-#: plugins/scmgit/common/GitPlugin.class.php:143
+#: plugins/scmgit/common/GitPlugin.class.php:122
+#: plugins/scmgit/common/GitPlugin.class.php:137
 #, fuzzy
 msgid ""
 "Only project developers can access the GIT tree via this method. Enter your "
@@ -8434,9 +8487,9 @@
 "<p><b>Subversion Entwicklerzugang über DAV</b></p><p>Ausschliesslich "
 "Projektentwickler können mit dieser Methode auf den SVN - Baum zugreifen. "
 "Ersetzen Sie <i>developername</i> durch den korrekten Wert. Geben Sie nach "
-"der Aufforderung Ihr Site-Passwort ein.</p>"
+"der Aufforderung Ihr Site-Paßwort ein.</p>"
 
-#: plugins/scmgit/common/GitPlugin.class.php:134
+#: plugins/scmgit/common/GitPlugin.class.php:130
 #, fuzzy
 msgid ""
 "Only project developers can access the GIT tree via this method. SSH must be "
@@ -8449,11 +8502,11 @@
 "<i>developername</i> durch den korrekten Wert. Geben Sie nach der "
 "Aufforderung Ihr Site-Paßwort ein.</p>"
 
-#: plugins/scmgit/common/GitPlugin.class.php:157
+#: plugins/scmgit/common/GitPlugin.class.php:150
 msgid "Access to your personal repository"
 msgstr "Zugang zur persönlichen Ablage"
 
-#: plugins/scmgit/common/GitPlugin.class.php:160
+#: plugins/scmgit/common/GitPlugin.class.php:152
 #, fuzzy
 msgid ""
 "You have a personal repository for this project, accessible through SSH with "
@@ -8461,13 +8514,13 @@
 msgstr ""
 "<p><b>Subversion Entwicklerzugang über DAV</b></p><p>Ausschliesslich "
 "Projektentwickler können mit dieser Methode auf den SVN - Baum zugreifen. "
-"Geben Sie nach der Aufforderung Ihr Site-Passwort ein.</p>"
+"Geben Sie nach der Aufforderung Ihr Site-Paßwort ein.</p>"
 
-#: plugins/scmgit/common/GitPlugin.class.php:168
+#: plugins/scmgit/common/GitPlugin.class.php:159
 msgid "Request a personal repository"
 msgstr "Anfrage für eine persönliche Ablage"
 
-#: plugins/scmgit/common/GitPlugin.class.php:171
+#: plugins/scmgit/common/GitPlugin.class.php:161
 msgid ""
 "You can clone the project repository into a personal one into which you "
 "alone will be able to write.  Other members of the project will only have "
@@ -8481,16 +8534,20 @@
 "Projekt-Ablage. Beachten sie das die Erstellung einer eigenen ablage ihre "
 "Zeit braucht (im Normalfall weniger als eine Stunde)."
 
-#: plugins/scmgit/common/GitPlugin.class.php:174
+#: plugins/scmgit/common/GitPlugin.class.php:164
 #, php-format
 msgid "<a href=\"%s\">Request a personal repository</a>."
 msgstr "<a href=\"%s\">Eigene Ablage beantragen</a>."
 
-#: plugins/scmgit/common/GitPlugin.class.php:217
+#: plugins/scmgit/common/GitPlugin.class.php:182
+msgid "Snapshots"
+msgstr ""
+
+#: plugins/scmgit/common/GitPlugin.class.php:209
 msgid "Git Repository Browser"
 msgstr "git Repository ansehen"
 
-#: plugins/scmgit/common/GitPlugin.class.php:219
+#: plugins/scmgit/common/GitPlugin.class.php:211
 #, fuzzy
 msgid ""
 "Browsing the Git tree gives you a view into the current status of this "
@@ -8501,7 +8558,7 @@
 "Einblick in den aktuellen Status des Projekt-Codes. Sie können zudem die "
 "vollständige Historie aller Files im Repository einsehen.</p>"
 
-#: plugins/scmgit/common/GitPlugin.class.php:223
+#: plugins/scmgit/common/GitPlugin.class.php:215
 msgid "Browse Git Repository"
 msgstr "Durchsuche git Repository"
 
@@ -8571,12 +8628,12 @@
 "<p>Eine Dokumentation für Subversion (manchmal auch \"SVN\" benannt) ist "
 "verfügbar <a href=\"http://svnbook.red-bean.com/\">here</a>.</p>"
 
-#: plugins/scmsvn/common/SVNPlugin.class.php:100
+#: plugins/scmsvn/common/SVNPlugin.class.php:102
 #, fuzzy
 msgid "Anonymous Subversion Access"
 msgstr "Ermögliche anonymen Zugang"
 
-#: plugins/scmsvn/common/SVNPlugin.class.php:102
+#: plugins/scmsvn/common/SVNPlugin.class.php:104
 #, fuzzy
 msgid ""
 "This project's SVN repository can be checked out through anonymous access "
@@ -8586,17 +8643,17 @@
 "Projektes kann durch einen anonymen Zugang mit den folgenden Kommandos "
 "ausgecheckt werden.</p>"
 
-#: plugins/scmsvn/common/SVNPlugin.class.php:112
+#: plugins/scmsvn/common/SVNPlugin.class.php:114
 #, fuzzy
 msgid "The password is "
-msgstr "Das Passwort lautet 'anonsvn'"
+msgstr "Das Paßwort lautet 'anonsvn'"
 
-#: plugins/scmsvn/common/SVNPlugin.class.php:128
-#: plugins/scmsvn/common/SVNPlugin.class.php:147
+#: plugins/scmsvn/common/SVNPlugin.class.php:131
+#: plugins/scmsvn/common/SVNPlugin.class.php:146
 msgid "Developer Subversion Access via SSH"
 msgstr "Subversionszugang für Entwickler über SSH"
 
-#: plugins/scmsvn/common/SVNPlugin.class.php:131
+#: plugins/scmsvn/common/SVNPlugin.class.php:133
 #, fuzzy
 msgid ""
 "Only project developers can access the SVN tree via this method. SSH must be "
@@ -8606,10 +8663,10 @@
 "Projektentwickler können mit dieser Methode auf den SVN - Baum zugreifen. "
 "SSH muß auf Ihrem Client-Rechner installiert sein. Ersetzen Sie "
 "<i>developername</i> durch den korrekten Wert. Geben Sie nach der "
-"Aufforderung Ihr Site-Passwort ein.</p>"
+"Aufforderung Ihr Site-Paßwort ein.</p>"
 
-#: plugins/scmsvn/common/SVNPlugin.class.php:137
-#: plugins/scmsvn/common/SVNPlugin.class.php:156
+#: plugins/scmsvn/common/SVNPlugin.class.php:138
+#: plugins/scmsvn/common/SVNPlugin.class.php:153
 msgid "Developer Subversion Access via DAV"
 msgstr "Subversionszugang für Entwickler über DAV"
 
@@ -8622,9 +8679,9 @@
 "<p><b>Subversion Entwicklerzugang über DAV</b></p><p>Ausschliesslich "
 "Projektentwickler können mit dieser Methode auf den SVN - Baum zugreifen. "
 "Ersetzen Sie <i>developername</i> durch den korrekten Wert. Geben Sie nach "
-"der Aufforderung Ihr Site-Passwort ein.</p>"
+"der Aufforderung Ihr Site-Paßwort ein.</p>"
 
-#: plugins/scmsvn/common/SVNPlugin.class.php:150
+#: plugins/scmsvn/common/SVNPlugin.class.php:148
 #, fuzzy
 msgid ""
 "Only project developers can access the SVN tree via this method. SSH must be "
@@ -8637,7 +8694,7 @@
 "<i>developername</i> durch den korrekten Wert. Geben Sie nach der "
 "Aufforderung Ihr Site-Paßwort ein.</p>"
 
-#: plugins/scmsvn/common/SVNPlugin.class.php:159
+#: plugins/scmsvn/common/SVNPlugin.class.php:155
 #, fuzzy
 msgid ""
 "Only project developers can access the SVN tree via this method. Substitute "
@@ -8647,13 +8704,13 @@
 "<p><b>Subversion Entwicklerzugang über DAV</b></p><p>Ausschliesslich "
 "Projektentwickler können mit dieser Methode auf den SVN - Baum zugreifen. "
 "Ersetzen Sie <i>developername</i> durch den korrekten Wert. Geben Sie nach "
-"der Aufforderung Ihr Site-Passwort ein.</p>"
+"der Aufforderung Ihr Site-Paßwort ein.</p>"
 
-#: plugins/scmsvn/common/SVNPlugin.class.php:173
+#: plugins/scmsvn/common/SVNPlugin.class.php:169
 msgid "Subversion Repository Browser"
 msgstr "Durchsuche Subversions Ablage"
 
-#: plugins/scmsvn/common/SVNPlugin.class.php:175
+#: plugins/scmsvn/common/SVNPlugin.class.php:171
 #, fuzzy
 msgid ""
 "Browsing the Subversion tree gives you a view into the current status of "
@@ -8664,7 +8721,7 @@
 "Einblick in den aktuellen Status des Projekt-Codes. Sie können zudem die "
 "vollständige Historie aller Files im Repository einsehen.</p>"
 
-#: plugins/scmsvn/common/SVNPlugin.class.php:179
+#: plugins/scmsvn/common/SVNPlugin.class.php:175
 msgid "Browse Subversion Repository"
 msgstr "Durchsuche Subversion Repository"
 
@@ -8673,84 +8730,89 @@
 msgid "Links to related SVN commits"
 msgstr "Keine verknüpften Commits"
 
-#: utils/fixscripts/populate_template_project.php:40
+#: utils/fixscripts/populate_template_project.php:69
 #, php-format
 msgid "R%d: %s"
 msgstr "R%d: %s"
 
-#: utils/fixscripts/populate_template_project.php:54
+#: utils/fixscripts/populate_template_project.php:83
 msgid "Error creating ArtifactTypes object"
 msgstr "Fehler beim Erstellen des ArtifactTypes Objektes"
 
-#: utils/fixscripts/populate_template_project.php:59
-#: utils/fixscripts/populate_template_project.php:65
+#: utils/fixscripts/populate_template_project.php:88
+#: utils/fixscripts/populate_template_project.php:94
 #, php-format
 msgid "ATS%d: %s"
 msgstr "ATS%d: %s"
 
-#: utils/fixscripts/populate_template_project.php:74
+#: utils/fixscripts/populate_template_project.php:103
 msgid "Open-Discussion"
 msgstr "Offene-Diskussionen"
 
-#: utils/fixscripts/populate_template_project.php:74
+#: utils/fixscripts/populate_template_project.php:103
 msgid "General Discussion"
 msgstr "Allgemeine Diskussionen"
 
-#: utils/fixscripts/populate_template_project.php:75
-#: utils/fixscripts/populate_template_project.php:82
-#: utils/fixscripts/populate_template_project.php:89
+#: utils/fixscripts/populate_template_project.php:104
+#: utils/fixscripts/populate_template_project.php:111
+#: utils/fixscripts/populate_template_project.php:118
 #, php-format
 msgid "F%d: %s"
 msgstr "F%d: %s"
 
-#: utils/fixscripts/populate_template_project.php:81
+#: utils/fixscripts/populate_template_project.php:110
 msgid "Get Public Help"
 msgstr "Öffentlich Hilfe bekommen"
 
-#: utils/fixscripts/populate_template_project.php:88
+#: utils/fixscripts/populate_template_project.php:117
 msgid "Developers-Discussion"
 msgstr "Entwickler-Diskussionen"
 
-#: utils/fixscripts/populate_template_project.php:88
+#: utils/fixscripts/populate_template_project.php:117
 msgid "Project Developer Discussion"
 msgstr "Projekt-Entwickler Diskussionen"
 
-#: utils/fixscripts/populate_template_project.php:98
+#: utils/fixscripts/populate_template_project.php:127
 msgid "Uncategorized Submissions"
 msgstr "Nicht kategorisierte Beiträge"
 
-#: utils/fixscripts/populate_template_project.php:99
+#: utils/fixscripts/populate_template_project.php:128
 #, php-format
 msgid "DG: %s"
 msgstr "DG: %s"
 
-#: utils/fixscripts/populate_template_project.php:109
+#: utils/fixscripts/populate_template_project.php:138
 #, php-format
 msgid "FRSP: %s"
 msgstr "FRSP: %s"
 
-#: utils/fixscripts/populate_template_project.php:118
+#: utils/fixscripts/populate_template_project.php:147
 msgid "To Do"
 msgstr "Zu Erledigen"
 
-#: utils/fixscripts/populate_template_project.php:118
+#: utils/fixscripts/populate_template_project.php:147
 msgid "Things We Have To Do"
 msgstr "Dinge die wir erledigen müssen"
 
-#: utils/fixscripts/populate_template_project.php:119
-#: utils/fixscripts/populate_template_project.php:126
+#: utils/fixscripts/populate_template_project.php:148
+#: utils/fixscripts/populate_template_project.php:155
 #, php-format
 msgid "PG%d: %s"
 msgstr "PG%d: %s"
 
-#: utils/fixscripts/populate_template_project.php:125
+#: utils/fixscripts/populate_template_project.php:154
 msgid "Next Release"
 msgstr "Nächstes Release"
 
-#: utils/fixscripts/populate_template_project.php:125
+#: utils/fixscripts/populate_template_project.php:154
 msgid "Items For Our Next Release"
 msgstr "Punkte für unser nächstes Release"
 
+#: utils/fixscripts/populate_template_project.php:225
+#, fuzzy
+msgid "Discussion"
+msgstr "Offene-Diskussionen"
+
 #: www/404.php:26
 msgid "Requested Page not Found (Error 404)"
 msgstr "Angeforderte Seite nicht gefunden (Fehler 404)"
@@ -8893,11 +8955,11 @@
 
 #: www/account/change_pw.php:48
 msgid "Old password is incorrect"
-msgstr "Altes Passwort ist falsch"
+msgstr "Altes Paßwort ist falsch"
 
 #: www/account/change_pw.php:53
 msgid "You must supply valid password (at least 6 chars)"
-msgstr "Sie müssen ein gültiges Passwort (mind. 6 Buchstaben) eingeben."
+msgstr "Sie müssen ein gültiges Paßwort (mind. 6 Zeichen) eingeben."
 
 #: www/account/change_pw.php:58 www/account/lostlogin.php:66
 msgid "New passwords do not match."
@@ -8906,11 +8968,11 @@
 #: www/account/change_pw.php:63
 #, fuzzy
 msgid "Could not change password: "
-msgstr "Ändere Passwort"
+msgstr "Ändere Paßwort"
 
 #: www/account/change_pw.php:70
 msgid "Successfully Changed Password"
-msgstr "Erfolgreiche Passwort-Änderung"
+msgstr "Erfolgreiche Paßwort-Änderung"
 
 #: www/account/change_pw.php:75
 #, fuzzy, php-format
@@ -8920,7 +8982,7 @@
 #: www/account/change_pw.php:79
 #, fuzzy
 msgid "Congratulations. You have changed your password."
-msgstr "Willkommen %s. Sie können nun Ihr Passwort ändern."
+msgstr "Willkommen %s. Sie können nun Ihr Paßwort ändern."
 
 #: www/account/change_pw.php:84
 #, php-format
@@ -8931,24 +8993,24 @@
 
 #: www/account/change_pw.php:91 www/account/index.php:138
 msgid "Change Password"
-msgstr "Ändere Passwort"
+msgstr "Ändere Paßwort"
 
 #: www/account/change_pw.php:96
 msgid "Old Password"
-msgstr "Altes Passwort"
+msgstr "Altes Paßwort"
 
 #: www/account/change_pw.php:98 www/admin/passedit.php:90
 msgid "New Password (at least 6 chars)"
-msgstr "Neues Passwort (mind. 6 Buchstaben)"
+msgstr "Neues Paßwort (mind. 6 Zeichen)"
 
 #: www/account/change_pw.php:100 www/account/lostlogin.php:97
 #: www/admin/passedit.php:92
 msgid "New Password (repeat)"
-msgstr "Neues Passwort (Wiederholung)"
+msgstr "Neues Paßwort (Wiederholung)"
 
 #: www/account/change_pw.php:102 www/admin/passedit.php:94
 msgid "Update password"
-msgstr "Aktualisiere Passwort"
+msgstr "Aktualisiere Paßwort"
 
 #: www/account/editsshkeys.php:44
 #, php-format
@@ -8972,7 +9034,7 @@
 "the CVS server in your ~/.ssh/authorized_keys file. This is done by a cron "
 "job, so it may not happen immediately.  Please allow for a one hour delay."
 msgstr ""
-"<p>Um zu vermeiden, daß Sie jedesmal Ihr Passwort für ihren CVS/SSH "
+"<p>Um zu vermeiden, daß Sie jedesmal Ihr Paßwort für ihren CVS/SSH "
 "Entwickler Account eingeben müssen, können Sie Ihre(n) öffentlichen "
 "Schlüssel hier hochladen und Sie werden auf dem CVS Server in Ihrer ~/.ssh/"
 "authorized_keys Datei abgelegt. Dies wird von einem Cron-Job erledigt, sodaß "
@@ -8993,7 +9055,7 @@
 "pub' (protocol version 2). Read the ssh documentation for further "
 "information on sharing keys."
 msgstr ""
-"<p>Um zu vermeiden, daß Sie jedesmal Ihr Passwort für ihren CVS/SSH "
+"<p>Um zu vermeiden, daß Sie jedesmal Ihr Paßwort für ihren CVS/SSH "
 "Entwickler Account eingeben müssen, können Sie Ihre(n) öffentlichen "
 "Schlüssel hier hochladen und Sie werden auf dem CVS Server in Ihrer ~/.ssh/"
 "authorized_keys Datei abgelegt. Dies wird von einem Cron-Job erledigt, sodaß "
@@ -9055,7 +9117,7 @@
 msgstr "Aktualisiert"
 
 #: www/account/index.php:101 www/account/index.php:106
-#: www/include/html.php:932
+#: www/include/html.php:934
 msgid "Account Maintenance"
 msgstr "Accountverwaltung"
 
@@ -9274,11 +9336,11 @@
 
 #: www/account/login.php:144 www/account/verify.php:90
 msgid "Password:"
-msgstr "Passwort:"
+msgstr "Paßwort:"
 
 #: www/account/login.php:151
 msgid "[Lost your password?]"
-msgstr "[Passwort vergessen?]"
+msgstr "[Paßwort vergessen?]"
 
 #: www/account/login.php:155
 msgid "[New Account]"
@@ -9294,12 +9356,12 @@
 
 #: www/account/lostlogin.php:62
 msgid "You must supply valid password (at least 6 chars)."
-msgstr "Sie müssen ein gültiges Passwort eingeben (mind. 6 Buchstaben)."
+msgstr "Sie müssen ein gültiges Paßwort eingeben (mind. 6 Zeichen)."
 
 #: www/account/lostlogin.php:75
 #, fuzzy
 msgid "Password changed"
-msgstr "Passwort:"
+msgstr "Paßwort:"
 
 #: www/account/lostlogin.php:77
 #, fuzzy, php-format
@@ -9307,7 +9369,7 @@
 "Congratulations, you have re-set your account password. You may <a href="
 "\"%1$s\">login</a> to the site now."
 msgstr ""
-"<h2>Passwort verändert</h2><p>Glückwunsch, Sie haben Ihr Account Passwort "
+"<h2>Paßwort verändert</h2><p>Glückwunsch, Sie haben Ihr Account Paßwort "
 "zurückgesetzt. Sie können nun auf der Seite <a href=\"%1$s\">einloggen</a>.</"
 "p>"
 
@@ -9318,16 +9380,16 @@
 
 #: www/account/lostlogin.php:87
 msgid "Lost Password Login"
-msgstr "[Passwort vergessen?]"
+msgstr "[Paßwort vergessen?]"
 
 #: www/account/lostlogin.php:90
 #, php-format
 msgid "Welcome, %s. You may now change your password."
-msgstr "Willkommen %s. Sie können nun Ihr Passwort ändern."
+msgstr "Willkommen %s. Sie können nun Ihr Paßwort ändern."
 
 #: www/account/lostlogin.php:95
 msgid "New Password (min. 6 chars)"
-msgstr "Neues Passwort (mind. 6 Buchstaben)"
+msgstr "Neues Paßwort (mind. 6 Zeichen)"
 
 #: www/account/lostpw.php:44 www/users:43
 msgid "That user does not exist."
@@ -9348,13 +9410,13 @@
 " -- the %1$s staff\n"
 msgstr ""
 "Jemand (vermutlich Sie) hat auf der %1$s Site einen\n"
-"Passwortwechsel per Email-Überprüfung angefordert. Falls Sie das nicht "
+"Paßwortwechsel per Email-Überprüfung angefordert. Falls Sie das nicht "
 "waren,\n"
 "ignorieren Sie diese Nachricht und nichts wird passieren.\n"
 "\n"
 "Falls Sie diese Überprüfung angefordert haben, besuchen Sie den folgenden "
 "Link,\n"
-"um Ihr Passwort zu ändern:\n"
+"um Ihr Paßwort zu ändern:\n"
 "\n"
 "<%2$s>\n"
 "\n"
@@ -9374,7 +9436,7 @@
 "Hey... losing your password is serious business. It compromises the security "
 "of your account, your projects, and this site."
 msgstr ""
-"Hey... das Passwort zu verlieren ist ernst. Es kompromitiert die Sicherheit "
+"Hey... das Paßwort zu verlieren ist ernst. Es kompromitiert die Sicherheit "
 "ihres Zugangs, ihrer Projekte und dieser Seite."
 
 #: www/account/lostpw.php:83
@@ -9390,7 +9452,7 @@
 "Seite.</p><p>Klicken Sie auf \"Paßwort vergessen\" unten, um einen Link per "
 "E-Mail an Ihre gespeicherte Mailadresse zu erhalten. Dieser Link beinhaltet "
 "einen 128-bit Bestätigungs-Code für Ihren Account. Wenn Sie den Link "
-"anklicken, erhalten Sie die Gelegenheit, Ihr Passwort online zu ändern und "
+"anklicken, erhalten Sie die Gelegenheit, Ihr Paßwort online zu ändern und "
 "sich wieder einzuloggen.</p>"
 
 #: www/account/lostpw.php:92
@@ -9451,7 +9513,7 @@
 #: www/account/register.php:78
 #, fuzzy
 msgid "Invalid captcha, please try again."
-msgstr "Ungültiges Passwort:"
+msgstr "Ungültiges Paßwort:"
 
 #: www/account/register.php:79
 msgid ""
@@ -9517,11 +9579,11 @@
 
 #: www/account/register.php:155
 msgid "Password (min. 6 chars):"
-msgstr "Passwort (mind. 6 Buchstaben):"
+msgstr "Paßwort (mind. 6 Zeichen):"
 
 #: www/account/register.php:159
 msgid "Password (repeat):"
-msgstr "Passwort (Wiederholung):"
+msgstr "Paßwort (Wiederholung):"
 
 #: www/account/register.php:175
 msgid "Language Choice:"
@@ -9605,7 +9667,7 @@
 msgid ""
 "Cannot confirm account identity - invalid confirmation hash (or login name)"
 msgstr ""
-"Konnte die Account-Identität nicht bestätigen - ungültiger Passwort-Hash "
+"Konnte die Account-Identität nicht bestätigen - ungültiger Paßwort-Hash "
 "(oder Anmelde-Name)"
 
 #: www/account/verify.php:61
@@ -9627,37 +9689,37 @@
 "<p>Melden Sie sich jetzt an, um Ihre Registrierung zu vervollständigen. Ihr "
 "Account wird dann für normale Anmeldungen aktiviert sein.</p>"
 
-#: www/activity/index.php:89 www/project/stats/index.php:89
+#: www/activity/index.php:68 www/project/stats/index.php:89
 #, fuzzy
 msgid "Statistics"
 msgstr "Benutze Statistiken"
 
-#: www/activity/index.php:91 www/project/stats/index.php:91
+#: www/activity/index.php:70 www/project/stats/index.php:91
 msgid "-tooltip:stats"
 msgstr ""
 
-#: www/activity/index.php:105
+#: www/activity/index.php:85
 msgid "Forum Post"
 msgstr "Foreneintrag"
 
-#: www/activity/index.php:110
+#: www/activity/index.php:90
 msgid "Tracker Opened"
 msgstr "Tracker Geöffnet"
 
-#: www/activity/index.php:112
+#: www/activity/index.php:92
 msgid "Tracker Closed"
 msgstr "Tracker Geschlossen"
 
-#: www/activity/index.php:127 www/activity/index.php:304
+#: www/activity/index.php:107 www/activity/index.php:283
 msgid "FRS Release"
 msgstr "FRS Freigabe/Version"
 
-#: www/activity/index.php:168
+#: www/activity/index.php:148
 #, fuzzy
 msgid "Invalid Data Passed to query"
-msgstr "Ungültiges Passwort:"
+msgstr "Ungültiges Paßwort:"
 
-#: www/activity/index.php:180 www/frs/reporting/downloads.php:96
+#: www/activity/index.php:160 www/frs/reporting/downloads.php:96
 #: www/project/stats/index.php:111 www/reporting/groupadded.php:61
 #: www/reporting/groupcum.php:60 www/reporting/projectact.php:65
 #: www/reporting/projecttime.php:76 www/reporting/siteact.php:65
@@ -9668,7 +9730,7 @@
 msgid "Start"
 msgstr "Start"
 
-#: www/activity/index.php:181 www/frs/reporting/downloads.php:98
+#: www/activity/index.php:161 www/frs/reporting/downloads.php:98
 #: www/project/stats/index.php:112 www/reporting/groupadded.php:62
 #: www/reporting/groupcum.php:61 www/reporting/projectact.php:66
 #: www/reporting/projecttime.php:77 www/reporting/siteact.php:66
@@ -9679,46 +9741,46 @@
 msgid "End"
 msgstr "Ende"
 
-#: www/activity/index.php:197 www/activity/index.php:260
+#: www/activity/index.php:175 www/activity/index.php:238
 msgid "No Activity Found"
 msgstr "Keine Aktivität gefunden"
 
-#: www/activity/index.php:264 www/reporting/projecttime.php:89
+#: www/activity/index.php:242 www/reporting/projecttime.php:89
 #: www/reporting/sitetime.php:88 www/reporting/sitetimebar.php:90
 msgid "Time"
 msgstr "Zeit"
 
-#: www/activity/index.php:266 www/pm/include/ProjectTaskHTML.class.php:154
+#: www/activity/index.php:244 www/pm/include/ProjectTaskHTML.class.php:154
 #: www/project/admin/project_admin_utils.php:147
 #: www/tracker/include/ArtifactHtml.class.php:47
 #: www/tracker/include/ArtifactTypeHtml.class.php:202
 msgid "By"
 msgstr "Von"
 
-#: www/activity/index.php:289
+#: www/activity/index.php:268
 msgid "Commit for Tracker Item"
 msgstr "Commit für das Tracker Element"
 
-#: www/activity/index.php:294 www/activity/index.php:299
+#: www/activity/index.php:273 www/activity/index.php:278
 #: www/tracker/taskmgr.php:103 www/tracker/taskmgr.php:157
-#: www/tracker/tracker.php:314
+#: www/tracker/tracker.php:321
 msgid "Tracker Item"
 msgstr "Tracker Element"
 
-#: www/activity/index.php:294 www/stats/site_stats_utils.php:288
+#: www/activity/index.php:273 www/stats/site_stats_utils.php:288
 #: www/stats/site_stats_utils.php:290 www/stats/site_stats_utils.php:292
 #: www/stats/site_stats_utils.php:294 www/stats/site_stats_utils.php:298
 msgid "Opened"
 msgstr "Offen"
 
-#: www/activity/index.php:299 www/reporting/usersummary.php:55
+#: www/activity/index.php:278 www/reporting/usersummary.php:55
 #: www/stats/site_stats_utils.php:289 www/stats/site_stats_utils.php:291
 #: www/stats/site_stats_utils.php:293 www/stats/site_stats_utils.php:295
 #: www/stats/site_stats_utils.php:299
 msgid "Closed"
 msgstr "Geschlossen"
 
-#: www/activity/index.php:309
+#: www/activity/index.php:288
 msgid "Forum Post "
 msgstr "Foreneintrag "
 
@@ -9852,7 +9914,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:262
+#: www/project/admin/users.php:263
 msgid "Reject"
 msgstr "Ablehnen"
 
@@ -10067,7 +10129,7 @@
 msgstr "Aktuelle Version"
 
 #: www/admin/globalroleedit.php:149 www/admin/search.php:90
-#: www/admin/unsubscribe.php:113 www/project/admin/users.php:314
+#: www/admin/unsubscribe.php:113 www/project/admin/users.php:315
 #: www/search/include/renderers/PeopleHtmlSearchRenderer.class.php:44
 #: www/top/topusers.php:63
 msgid "User name"
@@ -10110,7 +10172,7 @@
 msgstr "Einstellungen"
 
 #: www/admin/globalroleedit.php:254 www/admin/globalroleedit.php:256
-#: www/project/admin/users.php:452
+#: www/project/admin/users.php:453
 #, fuzzy
 msgid "Delete role"
 msgstr "Datei löschen"
@@ -10269,7 +10331,7 @@
 msgid "Edit Role"
 msgstr "Rolle bearbeiten"
 
-#: www/admin/index.php:94 www/project/admin/users.php:477
+#: www/admin/index.php:94 www/project/admin/users.php:478
 #, fuzzy
 msgid "Create Role"
 msgstr "Erstellen"
@@ -10483,8 +10545,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:268
-#: www/tracker/browse.php:583 www/tracker/query.php:195
+#: www/tracker/admin/form-addcanned.php:41 www/tracker/browse.php:273
+#: www/tracker/browse.php:660 www/tracker/query.php:195
 msgid "ID"
 msgstr "ID"
 
@@ -10572,7 +10634,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:599 www/tracker/item.php:210
+#: www/tracker/browse.php:684 www/tracker/item.php:201
 msgid "Submitted by"
 msgstr "Gepostet von"
 
@@ -10586,11 +10648,11 @@
 
 #: www/admin/pending-news.php:155 www/my/diary.php:185
 #: www/news/admin/index.php:143 www/news/submit.php:150
-#: www/pm/browse_task.php:424 www/pm/include/ProjectView.class.php:295
-#: www/pm/include/ProjectView.class.php:299
-#: www/pm/include/ProjectView.class.php:303
-#: www/pm/include/ProjectView.class.php:308 www/pm/include/pm_columns.php:43
-#: www/pm/templates/detail_template.php:7 www/tracker/item.php:137
+#: www/pm/browse_task.php:424 www/pm/include/ProjectView.class.php:326
+#: www/pm/include/ProjectView.class.php:330
+#: www/pm/include/ProjectView.class.php:334
+#: www/pm/include/ProjectView.class.php:339 www/pm/include/pm_columns.php:43
+#: www/pm/templates/detail_template.php:7 www/tracker/item.php:128
 msgid "Details"
 msgstr "Details"
 
@@ -10653,9 +10715,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:316
-#: www/project/admin/users.php:406 www/project/admin/users.php:494
-#: www/project/admin/users.php:518
+#: 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
 msgid "Action"
 msgstr "Aktion"
 
@@ -12430,10 +12492,6 @@
 msgid "Quick Jump To..."
 msgstr "Schnellwechsel nach…"
 
-#: www/include/Layout.class.php:1275
-msgid "Close"
-msgstr "Schließen"
-
 #: www/include/Layout.class.php:1277
 msgid "Maximise"
 msgstr "Maximieren"
@@ -12838,40 +12896,40 @@
 msgid "Forge Help Facility: %s"
 msgstr "Evolvis Hilfedienst: %s"
 
-#: www/include/html.php:355 www/include/html.php:488 www/include/html.php:750
+#: www/include/html.php:355 www/include/html.php:488 www/include/html.php:752
 #: www/pm/browse_task.php:550 www/pm/browse_task.php:575
-#: www/pm/browse_task.php:586 www/tracker/browse.php:745
-#: www/tracker/browse.php:753 www/tracker/browse.php:762
+#: www/pm/browse_task.php:586 www/tracker/browse.php:843
+#: www/tracker/browse.php:851 www/tracker/browse.php:860
 msgid "No Change"
 msgstr "Keine Änderung"
 
-#: www/include/html.php:753
+#: www/include/html.php:755
 msgid "Lowest"
 msgstr "Geringstes"
 
-#: www/include/html.php:757
+#: www/include/html.php:759
 msgid "Highest"
 msgstr "Höchstes"
 
-#: www/include/html.php:850
+#: www/include/html.php:852
 #, fuzzy, php-format
 msgid "Project access problem: %s"
 msgstr "Projekt Ressourcennutzung"
 
-#: www/include/html.php:852
+#: www/include/html.php:854
 #, fuzzy, php-format
 msgid "Project Problem: %s"
 msgstr "Projekt %s"
 
-#: www/include/html.php:905 www/my/bookmark_add.php:28
+#: www/include/html.php:907 www/my/bookmark_add.php:28
 msgid "My Personal Page"
 msgstr "Meine persönliche Seite"
 
-#: www/include/html.php:907 www/themes/evolvis/Theme.class.php:121
+#: www/include/html.php:909 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:915
+#: www/include/html.php:917
 #, fuzzy
 msgid ""
 "Select widgets to add to the User Summary page from a list of available "
@@ -12880,46 +12938,46 @@
 "Wähle Widgets die zur Projektaufstellung hinzugefügt werden aus einer Liste "
 "verfügbarer Widgets"
 
-#: www/include/html.php:919 www/include/project_home.php:82
+#: www/include/html.php:921 www/include/project_home.php:82
 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:922
+#: www/include/html.php:924
 #, fuzzy
 msgid "Trackers dashboard"
 msgstr "Tracker aktualisiert"
 
-#: www/include/html.php:924
+#: www/include/html.php:926
 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:927
+#: www/include/html.php:929
 msgid "Diary & Notes"
 msgstr "Terminkalender & Notizen"
 
-#: www/include/html.php:929
+#: www/include/html.php:931
 msgid "-tooltip:diary-and-notes"
 msgstr ""
 
-#: www/include/html.php:934
+#: www/include/html.php:936
 msgid "Change the password, SSH keys; configure account settings"
-msgstr "Passwort, SSH-Schlüssel ändern; Benutzerkonteneinstellungen ändern"
+msgstr "Paßwort, SSH-Schlüssel ändern; Benutzerkonteneinstellungen ändern"
 
-#: www/include/html.php:938 www/register/index.php:166
+#: www/include/html.php:940 www/register/index.php:166
 #: www/themes/evolvis/Theme.class.php:536
 msgid "Register Project"
 msgstr "Registriere Projekt"
 
-#: www/include/html.php:940 www/themes/evolvis/Theme.class.php:537
+#: www/include/html.php:942 www/themes/evolvis/Theme.class.php:537
 #, fuzzy
 msgid "Register a new Project on the forge"
 msgstr "Neues Projekt registrieren"
 
-#: www/include/html.php:1279 www/notepad.php:48
+#: www/include/html.php:1281 www/notepad.php:48
 msgid "FusionForge Notepad"
 msgstr "FusionForge Notizblock"
 
@@ -12941,7 +12999,7 @@
 "Wähle Widgets die zur Projektaufstellung hinzugefügt werden aus einer Liste "
 "verfügbarer Widgets"
 
-#: www/include/tool_reports.php:65 www/pm/include/ProjectView.class.php:356
+#: www/include/tool_reports.php:65 www/pm/include/ProjectView.class.php:387
 #: www/pm/index.php:102 www/reporting/usersummary.php:54
 #: www/tracker/ind.php:63
 msgid "Open"
@@ -13279,8 +13337,8 @@
 msgstr "Was ist neu in EvolvisForge 4.8"
 
 #: www/index_std.php:47
-msgid "New Funky Theme (Capgemini)."
-msgstr "Neue funky Themen (Capgemini)."
+msgid "New Evolvis Theme."
+msgstr "Neues Evolvis-Theme."
 
 #: www/index_std.php:48
 msgid ""
@@ -13346,6 +13404,20 @@
 msgid "Reorganised, modular Apache configuration."
 msgstr "Reorganisierte, modulare Apache Konfiguration"
 
+#: www/index_std.php:59
+msgid ""
+"Many improvements to the trackers: configurable display, workflow "
+"management, links between artifacts, better searches, and more"
+msgstr ""
+
+#: www/index_std.php:60
+msgid "Rewritten SCM subsystem, with new plugins for Bazaar, Darcs and Git"
+msgstr ""
+
+#: www/index_std.php:61
+msgid "Various new plugins: projectlabels, globalsearch, extratabs"
+msgstr ""
+
 #: www/mail/admin/deletelist.php:58
 msgid "Mailing List Successfully deleted"
 msgstr "Mailingliste erfolgreich gelöscht"
@@ -13358,7 +13430,7 @@
 #: www/mail/admin/index.php:127
 #, fuzzy
 msgid "Password reset requested"
-msgstr "Passwort (Wiederholung):"
+msgstr "Paßwort (Wiederholung):"
 
 #: www/mail/admin/index.php:139
 #, fuzzy, php-format
@@ -13492,16 +13564,16 @@
 #: www/my/dashboard.php:69 www/pm/browse_task.php:218
 #: www/pm/browse_task.php:412 www/pm/browse_task.php:576
 #: 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:269
-#: www/tracker/browse.php:595 www/tracker/browse.php:749
-#: www/tracker/item.php:162 www/tracker/query.php:196
+#: www/tracker/admin/form-customizelist.php:45 www/tracker/browse.php:274
+#: www/tracker/browse.php:678 www/tracker/browse.php:847
+#: www/tracker/item.php:153 www/tracker/query.php:196
 msgid "Priority"
 msgstr "Priorität"
 
 #: www/my/dashboard.php:71 www/pm/browse_task.php:410
 #: www/pm/browse_task.php:583 www/pm/templates/detail_template.php:30
-#: www/tracker/browse.php:597 www/tracker/browse.php:752
-#: www/tracker/item.php:176
+#: www/tracker/browse.php:681 www/tracker/browse.php:850
+#: www/tracker/item.php:167
 msgid "Assigned to"
 msgstr "Zugewiesen an"
 
@@ -13765,7 +13837,7 @@
 msgid "No News Items Found"
 msgstr "Keine Nachrichten gefunden"
 
-#: www/news/news_utils.php:185 www/pm/include/ProjectView.class.php:320
+#: www/news/news_utils.php:185 www/pm/include/ProjectView.class.php:351
 #: www/survey/include/SurveyHTML.class.php:652
 msgid "Comments"
 msgstr "Kommentar"
@@ -14492,8 +14564,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:271
-#: www/tracker/browse.php:589 www/tracker/query.php:198
+#: www/tracker/admin/form-customizelist.php:43 www/tracker/browse.php:276
+#: www/tracker/browse.php:669 www/tracker/query.php:198
 msgid "Open Date"
 msgstr "Eröffnet am"
 
@@ -14715,14 +14787,14 @@
 #: www/pm/browse_task.php:194 www/pm/browse_task.php:205
 #: 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:256
-#: www/tracker/browse.php:335 www/tracker/browse.php:342
+#: www/reporting/usersummary.php:53 www/tracker/browse.php:261
+#: www/tracker/browse.php:340 www/tracker/browse.php:347
 #: www/tracker/query.php:344
 msgid "Any"
 msgstr "Alle"
 
 #: www/pm/browse_task.php:196 www/pm/browse_task.php:547
-#: www/pm/ganttpage.php:58 www/tracker/browse.php:261
+#: www/pm/ganttpage.php:58 www/tracker/browse.php:266
 msgid "Unassigned"
 msgstr "Nicht zugeordnet"
 
@@ -14754,7 +14826,7 @@
 msgstr "Unterprojekt"
 
 #: www/pm/browse_task.php:295 www/pm/ganttpage.php:155
-#: www/tracker/browse.php:274 www/tracker/browse.php:442
+#: www/tracker/browse.php:279 www/tracker/browse.php:516
 #: www/tracker/query.php:201 www/tracker/query.php:341
 msgid "Assignee"
 msgstr "Bearbeiter"
@@ -14784,7 +14856,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:475
+#: www/pm/browse_task.php:351 www/tracker/browse.php:549
 #, php-format
 msgid "Displaying %d results."
 msgstr "Stelle %d Ergebnisse dar."
@@ -14837,7 +14909,7 @@
 msgid "Sub-Project"
 msgstr "Unterprojekt"
 
-#: www/pm/browse_task.php:531 www/tracker/browse.php:706
+#: www/pm/browse_task.php:531 www/tracker/browse.php:804
 msgid "Mass Update"
 msgstr "Massen-Update"
 
@@ -14849,7 +14921,7 @@
 msgid "Clear all"
 msgstr "Alle abwählen"
 
-#: www/pm/browse_task.php:570 www/tracker/browse.php:728
+#: www/pm/browse_task.php:570 www/tracker/browse.php:826
 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 "
@@ -14863,7 +14935,7 @@
 msgid "Subproject"
 msgstr "Unterprojekt"
 
-#: www/pm/browse_task.php:592 www/tracker/browse.php:769
+#: www/pm/browse_task.php:592 www/tracker/browse.php:867
 msgid "Mass update"
 msgstr "Massen-Update"
 
@@ -15013,26 +15085,26 @@
 "\"http://en.wikipedia.org/wiki/Comma-separated_values\">Comma Separated "
 "Values</a>) File. This format can be used to view tasks using MS Excel."
 msgstr ""
-"Diese Seite erlaubt Ihnen eine CVS-Datei zu nutzen um alle Aufgaben zu "
+"Diese Seite erlaubt Ihnen, eine CSV-Datei zu nutzen, um alle Aufgaben zu "
 "exportieren oder importieren (<a href=\"http://en.wikipedia.org/wiki/Comma-"
 "separated_values\">Comma Separated Values</a>). Dieses Format kann genutzt "
 "werden um Aufgaben in MS Excel zu betrachten."
 
 #: www/pm/csv.php:64
 msgid "Export tasks as a CSV file"
-msgstr "Aufgaben als CVS-Datei exportieren"
+msgstr "Aufgaben als CSV-Datei exportieren"
 
 #: www/pm/csv.php:66
 msgid "Selected CSV Format :"
-msgstr "Ausgewähltes CVS-Format:"
+msgstr "Ausgewähltes CSV-Format:"
 
 #: www/pm/csv.php:68
 msgid "Export CSV file"
-msgstr "CVS-Datei exportieren"
+msgstr "CSV-Datei exportieren"
 
 #: www/pm/csv.php:70
 msgid "Import tasks using a CSV file"
-msgstr "Aufgaben mit Hilfe einer CVS-Datei importieren "
+msgstr "Aufgaben mit Hilfe einer CSV-Datei importieren "
 
 #: www/pm/csv.php:72 www/pm/uploadcsv.php:46
 msgid "Choose a file in the proper .csv format for uploading."
@@ -15050,21 +15122,16 @@
 msgid "Yes, I want to delete this task"
 msgstr "Ja, ich möchte diese Aufgabe löschen"
 
-#: www/pm/downloadcsv.php:96 www/pm/gantt.php:35 www/tracker/taskmgr.php:62
+#: www/pm/downloadcsv.php:96 www/pm/gantt.php:31 www/tracker/taskmgr.php:62
 msgid "Could Not Get ProjectTaskFactory"
 msgstr "Konnte nicht auf ProjektTaskFaktory zugreifen"
 
-#: www/pm/gantt.php:25 www/pm/ganttofuser.php:33
-#: www/survey/admin/graphs.php:44
-msgid "Package JPGraph not installed"
-msgstr "Paket JPGraph wurde noch nicht installiert"
-
-#: www/pm/gantt.php:37
+#: www/pm/gantt.php:33
 #, fuzzy
 msgid "Error getting PTF: "
 msgstr "Fehler beim Suchen des Forums"
 
-#: www/pm/gantt.php:51
+#: www/pm/gantt.php:47
 #, fuzzy
 msgid "Error in PTF: "
 msgstr "Fehler beim Hinzufügen des VHOST:"
@@ -15122,7 +15189,7 @@
 
 #: www/pm/include/ProjectGroupHTML.class.php:91
 msgid "Import/Export CSV"
-msgstr "CVS importieren/exportieren"
+msgstr "CSV importieren/exportieren"
 
 #: www/pm/include/ProjectGroupHTML.class.php:93
 msgid "-tooltip:pm:imexportcsv"
@@ -15172,30 +15239,30 @@
 msgid "No Changes Have Been Made"
 msgstr "Es wurden keine Änderungen gemacht"
 
-#: www/pm/include/ProjectView.class.php:328
+#: www/pm/include/ProjectView.class.php:359
 msgid "No comments have been written."
 msgstr "Es wurden bislang keine Kommentare verfaßt."
 
-#: www/pm/include/ProjectView.class.php:444
+#: www/pm/include/ProjectView.class.php:475
 msgid "View Calendar"
 msgstr "Zeige Kalender"
 
-#: www/pm/include/ProjectView.class.php:509
+#: www/pm/include/ProjectView.class.php:540
 #: www/tracker/admin/form-addextrafield.php:60
 msgid "Copy"
 msgstr "Kopieren"
 
-#: www/pm/include/ProjectView.class.php:522
-#: www/pm/include/ProjectView.class.php:524
+#: www/pm/include/ProjectView.class.php:553
+#: www/pm/include/ProjectView.class.php:555
 msgid "Subscribe to task"
 msgstr "Task abonnieren"
 
-#: www/pm/include/ProjectView.class.php:534
-#: www/pm/include/ProjectView.class.php:536
+#: www/pm/include/ProjectView.class.php:565
+#: www/pm/include/ProjectView.class.php:567
 msgid "Delete this task"
 msgstr "Diese Aufgabe löschen"
 
-#: www/pm/include/ProjectView.class.php:563
+#: www/pm/include/ProjectView.class.php:594
 msgid "Add category"
 msgstr "Kategorie hinzufügen"
 
@@ -15240,7 +15307,7 @@
 "Wählen Sie ein Unterprojekt aus und Sie können Aufgaben dafür durchsuchen, "
 "ändern und hinzufügen."
 
-#: www/pm/pm_task.php:81 www/pm/templates/time_tracking.php:1
+#: www/pm/pm_task.php:84 www/pm/templates/time_tracking.php:1
 #: www/reporting/timeadd.php:102
 msgid "Time tracking"
 msgstr "Zeitverfolgung"
@@ -15389,7 +15456,7 @@
 msgid "Task Successfully Deleted"
 msgstr "Aufgabe erfolgreich gelöscht"
 
-#: www/pm/templates/detail_template.php:69 www/tracker/item.php:236
+#: www/pm/templates/detail_template.php:69 www/tracker/item.php:227
 msgid "Permalink"
 msgstr "Permalink"
 
@@ -15521,7 +15588,7 @@
 
 #: www/project/admin/database.php:209
 msgid "New Password"
-msgstr "Neues Passwort"
+msgstr "Neues Paßwort"
 
 #: www/project/admin/database.php:210
 msgid "Confirm New"
@@ -15540,8 +15607,8 @@
 msgstr ""
 "FEHLER - Datei muß größer als 20 bytes und kleiner als 256000 Bytes sein"
 
-#: www/project/admin/editimages.php:59 www/tracker/tracker.php:144
-#: www/tracker/tracker.php:393
+#: www/project/admin/editimages.php:59 www/tracker/tracker.php:151
+#: www/tracker/tracker.php:400
 #, fuzzy
 msgid "Invalid filename"
 msgstr "Ungültiger Dateiname."
@@ -15761,7 +15828,7 @@
 msgid "(send on all updates)"
 msgstr "(Bei allen Aktualisierungen senden)"
 
-#: www/project/admin/massadd.php:67 www/project/admin/users.php:297
+#: www/project/admin/massadd.php:67 www/project/admin/users.php:298
 msgid "Add Users From List"
 msgstr "Benutzer von der Liste hinzufügen"
 
@@ -15957,7 +16024,7 @@
 msgid "Could Not Get RoleObserver"
 msgstr "Konnte die Rolle nicht bekommen"
 
-#: www/project/admin/roleedit.php:141 www/project/admin/users.php:485
+#: www/project/admin/roleedit.php:141 www/project/admin/users.php:486
 msgid "Edit Observer"
 msgstr "Bearbeite Beobachter"
 
@@ -16105,7 +16172,7 @@
 msgid "Role not selected"
 msgstr "ablehnen ausgewählt"
 
-#: www/project/admin/users.php:114 www/project/admin/users.php:173
+#: www/project/admin/users.php:114 www/project/admin/users.php:174
 #, fuzzy
 msgid "Member Added Successfully"
 msgstr "Benutzer erfolgreich hinzugefügt"
@@ -16120,79 +16187,79 @@
 msgid "Member Updated Successfully"
 msgstr "Datei erfolgreich aktualisiert"
 
-#: www/project/admin/users.php:169 www/project/admin/users.php:183
+#: www/project/admin/users.php:169 www/project/admin/users.php:184
 #, fuzzy
 msgid "Error Getting GroupJoinRequest"
 msgstr "Fehler beim Erstellen des Gruppen-Objektes"
 
-#: www/project/admin/users.php:200
+#: www/project/admin/users.php:201
 #, fuzzy
 msgid "Role linked successfully"
 msgstr "JOB erfolgreich eingefügt"
 
-#: www/project/admin/users.php:215
+#: www/project/admin/users.php:216
 #, fuzzy
 msgid "Role unlinked successfully"
 msgstr "JOB erfolgreich eingefügt"
 
-#: www/project/admin/users.php:226
+#: www/project/admin/users.php:227
 #, fuzzy, php-format
 msgid "Members of %s"
 msgstr "Mitglieder"
 
-#: www/project/admin/users.php:238
+#: www/project/admin/users.php:239
 #, fuzzy
 msgid "Pending Membership Requests"
 msgstr "Anstehende Anfragen"
 
-#: www/project/admin/users.php:260
+#: www/project/admin/users.php:261
 msgid "Accept"
 msgstr "Annehmen"
 
-#: www/project/admin/users.php:271 www/project/admin/users.php:273
-#: www/project/admin/users.php:292
+#: www/project/admin/users.php:272 www/project/admin/users.php:274
+#: www/project/admin/users.php:293
 #, fuzzy
 msgid "Add Member"
 msgstr "Mitglieder"
 
-#: www/project/admin/users.php:303
+#: www/project/admin/users.php:304
 #, fuzzy
 msgid "Current Project Members"
 msgstr "[Zeige/Bearbeite Projekt-Mitglieder]"
 
-#: www/project/admin/users.php:372
+#: www/project/admin/users.php:373
 msgid "Grant extra role"
 msgstr "weitere Rolle erteilen"
 
-#: www/project/admin/users.php:392 www/tracker/admin/form-workflow.php:119
+#: www/project/admin/users.php:393 www/tracker/admin/form-workflow.php:119
 msgid "Edit Roles"
 msgstr "Rollen bearbeiten"
 
-#: www/project/admin/users.php:404 www/project/admin/users.php:493
-#: www/project/admin/users.php:517
+#: www/project/admin/users.php:405 www/project/admin/users.php:494
+#: www/project/admin/users.php:518
 #, fuzzy
 msgid "Role name"
 msgstr "Rollenname"
 
-#: www/project/admin/users.php:434
+#: www/project/admin/users.php:435
 #, fuzzy
 msgid "Edit Permissions"
 msgstr "Berechtigungen aktualisiert"
 
-#: www/project/admin/users.php:491
+#: www/project/admin/users.php:492
 msgid "Currently used external roles"
 msgstr "zur Zeit benutzte externe Rolle"
 
-#: www/project/admin/users.php:506
+#: www/project/admin/users.php:507
 #, fuzzy
 msgid "Unlink Role"
 msgstr "Rolle bearbeiten"
 
-#: www/project/admin/users.php:515
+#: www/project/admin/users.php:516
 msgid "Available external roles"
 msgstr "Verfügbare externe Rollen"
 
-#: www/project/admin/users.php:536
+#: www/project/admin/users.php:537
 #, fuzzy
 msgid "Link external role"
 msgstr "Interner Fehler"
@@ -17830,7 +17897,7 @@
 msgid "Paste the Code Here"
 msgstr "Fügen Sie den Code hier ein"
 
-#: www/soap/index.php:163
+#: www/soap/index.php:164
 msgid "en_US"
 msgstr "de_DE"
 
@@ -18951,17 +19018,17 @@
 msgid "Submitted By"
 msgstr "Gepostet von"
 
-#: www/tracker/admin/form-customizelist.php:48 www/tracker/browse.php:272
-#: www/tracker/browse.php:591 www/tracker/query.php:199
+#: www/tracker/admin/form-customizelist.php:48 www/tracker/browse.php:277
+#: www/tracker/browse.php:672 www/tracker/query.php:199
 msgid "Close Date"
 msgstr "Schließdatum"
 
-#: www/tracker/admin/form-customizelist.php:49 www/tracker/item.php:321
-#: www/tracker/item.php:332 www/tracker/query.php:383
+#: www/tracker/admin/form-customizelist.php:49 www/tracker/item.php:312
+#: www/tracker/item.php:323 www/tracker/query.php:383
 msgid "Detailed description"
 msgstr "Genaue Beschreibung"
 
-#: www/tracker/admin/form-customizelist.php:50 www/tracker/browse.php:601
+#: www/tracker/admin/form-customizelist.php:50 www/tracker/browse.php:687
 #, fuzzy
 msgid "Related tasks"
 msgstr "Verwandte Aufgaben"
@@ -19252,7 +19319,7 @@
 msgstr "Erlaube anonyme Beiträge"
 
 #: www/tracker/admin/index.php:68 www/tracker/admin/updates.php:170
-#: www/tracker/download.php:43 www/tracker/tracker.php:46
+#: www/tracker/download.php:43 www/tracker/tracker.php:53
 #, fuzzy
 msgid "ArtifactType could not be created"
 msgstr "Artefakt konnte nicht erzeugt werden"
@@ -19455,94 +19522,107 @@
 msgid "Element deleted"
 msgstr "Element aktualisiert"
 
-#: www/tracker/browse.php:156
+#: www/tracker/browse.php:158
 msgid "Query Name"
 msgstr "Name der Suchanfrage"
 
-#: www/tracker/browse.php:160 www/tracker/browse.php:420
+#: www/tracker/browse.php:162 www/tracker/browse.php:494
 msgid "Load"
 msgstr "Laden"
 
-#: www/tracker/browse.php:172
+#: www/tracker/browse.php:174
 #, fuzzy
 msgid "Deleted query successful."
 msgstr "Löschung Erfolgreich"
 
-#: www/tracker/browse.php:212
+#: www/tracker/browse.php:217
 #, fuzzy, php-format
 msgid "Saved query with name \"%s\"."
 msgstr "Gespeicherte Suchanfrage mit Name: "
 
-#: www/tracker/browse.php:273 www/tracker/query.php:200
+#: www/tracker/browse.php:278 www/tracker/query.php:200
 msgid "Submitter"
 msgstr "Sender"
 
-#: www/tracker/browse.php:290 www/tracker/query.php:217
+#: www/tracker/browse.php:295 www/tracker/query.php:217
 msgid "Ascending"
 msgstr "Aufsteigend"
 
-#: www/tracker/browse.php:291 www/tracker/query.php:218
+#: www/tracker/browse.php:296 www/tracker/query.php:218
 msgid "Descending"
 msgstr "Absteigend"
 
-#: www/tracker/browse.php:301 www/tracker/query.php:229
+#: www/tracker/browse.php:306 www/tracker/query.php:229
 msgid "Any changes"
 msgstr "Jede Änderung"
 
-#: www/tracker/browse.php:302 www/tracker/query.php:230
+#: www/tracker/browse.php:307 www/tracker/query.php:230
 msgid "Last 24H"
 msgstr "Letzten 24 h"
 
-#: www/tracker/browse.php:303 www/tracker/query.php:231
+#: www/tracker/browse.php:308 www/tracker/query.php:231
 msgid "Last 7days"
 msgstr "Letzten 7 Tage"
 
-#: www/tracker/browse.php:304 www/tracker/query.php:232
+#: www/tracker/browse.php:309 www/tracker/query.php:232
 msgid "Last 2weeks"
 msgstr "Letzte 2 Wochen"
 
-#: www/tracker/browse.php:305 www/tracker/query.php:233
+#: www/tracker/browse.php:310 www/tracker/query.php:233
 msgid "Last 1month"
 msgstr "Letzten Monat"
 
-#: www/tracker/browse.php:360
+#: www/tracker/browse.php:369
+msgid "Power Query [OLD]"
+msgstr "(alte) Powersuche"
+
+#: www/tracker/browse.php:421
+msgid "Power Query"
+msgstr "(alte) Powersuche"
+
+#: www/tracker/browse.php:423 www/tracker/browse.php:428
+#: www/tracker/query.php:252 www/tracker/query.php:256
+msgid "Build Query"
+msgstr "Suche erzeugen"
+
+#: www/tracker/browse.php:434
 #, fuzzy
 msgid "Advanced queries"
 msgstr "Erweiterte Suche"
 
-#: www/tracker/browse.php:380
+#: www/tracker/browse.php:454
 msgid "Select Query"
 msgstr "Suchanfrage wählen"
 
-#: www/tracker/browse.php:382
+#: www/tracker/browse.php:456
 msgid "Select One"
 msgstr "Eine auswählen"
 
-#: www/tracker/browse.php:393
+#: www/tracker/browse.php:467
 msgid "Tracker Queries"
 msgstr "Tracker-Suchanfragen"
 
-#: www/tracker/browse.php:410
+#: www/tracker/browse.php:484
 msgid "Private Queries"
 msgstr "Private Suchanfragen"
 
-#: www/tracker/browse.php:435
+#: www/tracker/browse.php:509
 msgid "Simple Filtering and Sorting"
 msgstr "Einfaches Filtern und Sortieren"
 
-#: www/tracker/browse.php:464 www/tracker/query.php:390
+#: www/tracker/browse.php:538 www/tracker/query.php:390
 msgid "Order by"
 msgstr "Sortieren nach"
 
-#: www/tracker/browse.php:467
+#: www/tracker/browse.php:541
 msgid "Quick Browse"
 msgstr "Schnellsuche"
 
-#: www/tracker/browse.php:492
+#: www/tracker/browse.php:566
 msgid "Default"
 msgstr "Standard"
 
-#: www/tracker/browse.php:493
+#: www/tracker/browse.php:567
 msgid ""
 "Viewing only opened records by default, use 'Advanced queries' or 'Simple "
 "Filtering and Sorting' to change."
@@ -19550,36 +19630,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:724
+#: www/tracker/browse.php:656
+#, php-format
+msgid "unknown #%d"
+msgstr "unbekannte Nr. %d"
+
+#: www/tracker/browse.php:690
+#, php-format
+msgid "unknown (\"%s\")"
+msgstr "unbekannt (\"%s\")"
+
+#: www/tracker/browse.php:822
 #, fuzzy
 msgid "Check  all"
 msgstr "Alle auswählen"
 
-#: www/tracker/browse.php:726
+#: www/tracker/browse.php:824
 #, fuzzy
 msgid "Clear  all"
 msgstr "Alle abwählen"
 
-#: www/tracker/browse.php:753
+#: www/tracker/browse.php:851
 #: www/tracker/include/ArtifactTypeHtml.class.php:656
 #: www/tracker/include/ArtifactTypeHtml.class.php:688
 msgid "Nobody"
 msgstr "Niemanden"
 
-#: www/tracker/browse.php:757
+#: www/tracker/browse.php:855
 msgid "Canned Response"
 msgstr "Vorgespeicherte Antwort"
 
-#: www/tracker/browse.php:774 www/tracker/browse.php:776
+#: www/tracker/browse.php:872 www/tracker/browse.php:874
 msgid "Caption"
 msgstr "Legende"
 
-#: www/tracker/browse.php:779
+#: www/tracker/browse.php:877
 #, php-format
 msgid "* Denotes requests > %1$s Days Old"
 msgstr "* Anfragen, die älter als %1$s Tage sind"
 
-#: www/tracker/browse.php:789
+#: www/tracker/browse.php:887
 msgid "No items found"
 msgstr "Keine Beiträge gefunden"
 
@@ -19601,10 +19691,10 @@
 msgstr "Ja, ich möchte dieses Produkt löschen"
 
 #: www/tracker/download.php:51 www/tracker/taskmgr.php:36
-#: www/tracker/tracker.php:87 www/tracker/tracker.php:283
-#: www/tracker/tracker.php:473 www/tracker/tracker.php:490
-#: www/tracker/tracker.php:519 www/tracker/tracker.php:540
-#: www/tracker/tracker.php:589
+#: www/tracker/tracker.php:94 www/tracker/tracker.php:290
+#: www/tracker/tracker.php:480 www/tracker/tracker.php:497
+#: www/tracker/tracker.php:526 www/tracker/tracker.php:547
+#: www/tracker/tracker.php:596
 msgid "Artifact Could Not Be Created"
 msgstr "Artefakt konnte nicht erzeugt werden"
 
@@ -19802,94 +19892,94 @@
 msgid "Could Not Get Artifact Object"
 msgstr "Konnte kein Foren-Objekt einholen"
 
-#: www/tracker/item.php:83
+#: www/tracker/item.php:84
 #, php-format
 msgid "%1$s %2$s: Submit New"
 msgstr "%1$s %2$s: Erstellen"
 
-#: www/tracker/item.php:198
+#: www/tracker/item.php:189
 msgid "New submission"
 msgstr "Neu Eingabe"
 
-#: www/tracker/item.php:201
+#: www/tracker/item.php:192
 msgid "Date Submitted"
 msgstr "Datum abgeschickt"
 
-#: www/tracker/item.php:206
+#: www/tracker/item.php:197
 msgid "Date Closed"
 msgstr "Datum geschlossen"
 
-#: www/tracker/item.php:219
+#: www/tracker/item.php:210
 msgid "Data Type"
 msgstr "Datentyp"
 
-#: www/tracker/item.php:246
+#: www/tracker/item.php:237
 msgid "Stop monitor"
 msgstr "Stoppe Beobachtung"
 
-#: www/tracker/item.php:274 www/tracker/item.php:396 www/tracker/query.php:265
+#: www/tracker/item.php:265 www/tracker/item.php:387 www/tracker/query.php:265
 msgid "Save Changes"
 msgstr "Änderungen speichern"
 
-#: www/tracker/item.php:281
+#: www/tracker/item.php:272
 #, fuzzy
 msgid "Debugging Functions"
 msgstr "Mathematische Funktionen"
 
-#: www/tracker/item.php:298
+#: www/tracker/item.php:289
 #, fuzzy
 msgid "Item Description"
 msgstr "Beschreibung"
 
-#: www/tracker/item.php:340 www/tracker/query.php:385
+#: www/tracker/item.php:331 www/tracker/query.php:385
 msgid "Followups"
 msgstr "Kommentare"
 
-#: www/tracker/item.php:341
+#: www/tracker/item.php:332
 msgid "No Followups Have Been Posted"
 msgstr "Es wurden bislang keine Kommentare verfaßt."
 
-#: www/tracker/item.php:355
+#: www/tracker/item.php:346
 msgid "Attach files to this submission"
 msgstr "Dateien an diesen Eintrag anhängen"
 
-#: www/tracker/item.php:363
+#: www/tracker/item.php:354
 msgid "Create an attachment"
 msgstr "Dateianhang erstellen"
 
-#: www/tracker/item.php:378
+#: www/tracker/item.php:369
 msgid "OR use a canned response"
 msgstr "ODER eine vorgespeicherte Antwort benutzen"
 
-#: www/tracker/item.php:393
+#: www/tracker/item.php:384
 msgid "indicates required fields."
 msgstr "zeigt Pflichtfelder an."
 
-#: www/tracker/item.php:403
+#: www/tracker/item.php:394
 msgid "Item Relationships"
 msgstr "Beziehungen zwischen Einträgen"
 
-#: www/tracker/item.php:412
+#: www/tracker/item.php:403
 msgid "You do not have sufficient privileges to view Task relations."
 msgstr "Du hast ungenügende Rechte, Aufgabenbeziehungen einzusehen."
 
-#: www/tracker/item.php:414
+#: www/tracker/item.php:405
 msgid "This project does not use Tasks."
 msgstr "Dieses Projekt benutzt Aufgaben nicht."
 
-#: www/tracker/item.php:420
+#: www/tracker/item.php:411
 msgid "Build Task Relation"
 msgstr "Erstelle Aufgabenverbindung"
 
-#: www/tracker/item.php:421
+#: www/tracker/item.php:412
 msgid "Related Tasks"
 msgstr "Verwandte Aufgaben"
 
-#: www/tracker/item.php:443
+#: www/tracker/item.php:434
 msgid "Instructions"
 msgstr "Anleitung"
 
-#: www/tracker/item.php:446
+#: www/tracker/item.php:437
 msgid "DO NOT enter passwords or confidential information in your message!"
 msgstr ""
 "Fügen Sie KEINE Paßwörter oder vertrauliche Informationen in Ihre Nachricht "
@@ -19914,10 +20004,6 @@
 msgid "Missing Build Query Action"
 msgstr "Keine Suche vorhanden"
 
-#: www/tracker/query.php:252 www/tracker/query.php:256
-msgid "Build Query"
-msgstr "Suche erzeugen"
-
 #: www/tracker/query.php:288 www/tracker/query.php:299
 msgid "Name and Save Query"
 msgstr "Suchanfrage benennen und speichern"
@@ -19991,7 +20077,7 @@
 msgstr "Bearbeiter"
 
 #: www/tracker/reporting/trackeract_graph.php:49
-#: www/tracker/reporting/trackerpie_graph.php:63 www/tracker/tracker.php:296
+#: www/tracker/reporting/trackerpie_graph.php:63 www/tracker/tracker.php:303
 msgid "Error: "
 msgstr "Fehler: "
 
@@ -20023,86 +20109,86 @@
 msgid "Create New Task"
 msgstr "Neue Aufgabe anlegen"
 
-#: www/tracker/tracker.php:136 www/tracker/tracker.php:387
+#: www/tracker/tracker.php:143 www/tracker/tracker.php:394
 #, fuzzy
 msgid "Could Not Create File Object"
 msgstr "Konnte kein Foren-Objekt einholen"
 
-#: www/tracker/tracker.php:150
+#: www/tracker/tracker.php:157
 msgid "Could Not Attach File to Item: "
 msgstr "Konnte Datei nicht an Element anhängen: "
 
-#: www/tracker/tracker.php:155
+#: www/tracker/tracker.php:162
 #, php-format
 msgid "Item [#%d] successfully created"
 msgstr "Element [#%d] erfolgreich angelegt"
 
-#: www/tracker/tracker.php:249
+#: www/tracker/tracker.php:256
 msgid "Updated Successfully"
 msgstr "Aktualisierung erfolgreich"
 
-#: www/tracker/tracker.php:296
+#: www/tracker/tracker.php:303
 #, fuzzy, php-format
 msgid "Could not get Project Task for %d"
 msgstr "Konnte kein Foren-Objekt einholen"
 
-#: www/tracker/tracker.php:324 www/tracker/tracker.php:343
+#: www/tracker/tracker.php:331 www/tracker/tracker.php:350
 msgid "Comment added"
 msgstr "Kommentar hinzugefügt"
 
-#: www/tracker/tracker.php:368
+#: www/tracker/tracker.php:375
 #, php-format
 msgid "ERROR: Skipping attachment %d: file is too large."
 msgstr "FEHLER: Überspringe Anhang %d: Datei ist zu groß "
 
-#: www/tracker/tracker.php:372
+#: www/tracker/tracker.php:379
 #, php-format
 msgid "ERROR: Skipping attachment %d: transfer interrupted."
 msgstr "FEHLER: Überspringe Anhang %d: Übermittlung unterbrochen"
 
-#: www/tracker/tracker.php:396
+#: www/tracker/tracker.php:403
 msgid "File Upload: Error"
 msgstr "Dateihochlade-Fehler"
 
-#: www/tracker/tracker.php:399
+#: www/tracker/tracker.php:406
 msgid "File Upload: Successful"
 msgstr "Datei hochladen: Erfolgreich"
 
-#: www/tracker/tracker.php:416
+#: www/tracker/tracker.php:423
 #, fuzzy
 msgid "Could Not Create File Object::"
 msgstr "Konnte kein Foren-Objekt einholen"
 
-#: www/tracker/tracker.php:421
+#: www/tracker/tracker.php:428
 msgid "File Delete:"
 msgstr "Datei löschen:"
 
-#: www/tracker/tracker.php:424
+#: www/tracker/tracker.php:431
 msgid "File Delete: Successful"
 msgstr "Datei löschen: Erfolgreich"
 
-#: www/tracker/tracker.php:436
+#: www/tracker/tracker.php:443
 #, php-format
 msgid "Item [#%d] successfully updated"
 msgstr "Element [#%d] erfolgreich aktualisiert"
 
-#: www/tracker/tracker.php:478 www/tracker/tracker.php:495
+#: www/tracker/tracker.php:485 www/tracker/tracker.php:502
 msgid "Monitoring Started"
 msgstr "Beobachtung gestartet"
 
-#: www/tracker/tracker.php:480 www/tracker/tracker.php:497
+#: www/tracker/tracker.php:487 www/tracker/tracker.php:504
 msgid "Monitoring Deactivated"
 msgstr "Beobachtung des Trackers deaktiviert."
 
-#: www/tracker/tracker.php:545
+#: www/tracker/tracker.php:552
 msgid "Confirmation failed. Artifact not deleted"
 msgstr "Bestätigung fehlgeschlagen. Produkt wurde nicht gelöscht"
 
-#: www/tracker/tracker.php:549
+#: www/tracker/tracker.php:556
 msgid "Artifact Delete Failed"
 msgstr "Löschen des Produktes fehlgeschlagen."
 
-#: www/tracker/tracker.php:551
+#: www/tracker/tracker.php:558
 msgid "Artifact Deleted Successfully"
 msgstr "Produkt erfolgreich gelöscht"
 

Modified: branches/messer-51/src/translations/fusionforge.pot
===================================================================
--- branches/messer-51/src/translations/fusionforge.pot	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/translations/fusionforge.pot	2012-01-19 15:25:17 UTC (rev 18052)
@@ -8,7 +8,7 @@
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-01-09 13:26+0100\n"
+"POT-Creation-Date: 2012-01-19 15:49+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"
@@ -21,7 +21,7 @@
 #: common/advanced_search/AdvancedSearch.class.php:92
 #: common/advanced_search/AdvancedSearch.class.php:97
 #: common/docman/views/search.php:51 common/include/Navigation.class.php:143
-#: common/include/Navigation.class.php:412
+#: common/include/Navigation.class.php:410
 #: plugins/globalsearch/common/globalsearch_stats_boxes.php:48
 #: www/pm/browse_task.php:300
 #: www/search/include/renderers/AdvancedSearchHtmlSearchRenderer.class.php:330
@@ -335,9 +335,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:220
-#: common/forum/ForumHTML.class.php:461 common/include/descriptive.php:130
-#: common/pm/ProjectTask.class.php:1197 common/tracker/Artifact.class.php:1511
+#: common/forum/ForumHTML.class.php:65 common/forum/ForumHTML.class.php:222
+#: common/forum/ForumHTML.class.php:463 common/include/descriptive.php:130
+#: common/pm/ProjectTask.class.php:1204 common/tracker/Artifact.class.php:1511
 #: common/tracker/Artifact.class.php:1513
 #: common/tracker/Artifact.class.php:1517
 #: common/tracker/Artifact.class.php:1519
@@ -377,15 +377,15 @@
 #: www/snippet/detail.php:80 www/snippet/detail.php:169
 #: www/soap/tracker/tracker.php:1131 www/softwaremap/full_list.php:169
 #: www/softwaremap/tag_cloud.php:176 www/softwaremap/trove_list.php:311
-#: www/stats/lastlogins.php:61 www/tracker/browse.php:635
-#: www/tracker/browse.php:650 www/tracker/downloadcsv.php:63
+#: www/stats/lastlogins.php:61 www/tracker/browse.php:733
+#: www/tracker/browse.php:748 www/tracker/downloadcsv.php:63
 #: www/tracker/downloadcsv.php:64 www/tracker/downloadcsv.php:65
 #: www/tracker/include/ArtifactHtml.class.php:60
 #: www/tracker/include/ArtifactHtml.class.php:69
 #: www/tracker/include/ArtifactTypeHtml.class.php:160
 #: www/tracker/include/ArtifactTypeHtml.class.php:161
-#: www/tracker/include/ArtifactTypeHtml.class.php:223 www/tracker/item.php:202
-#: www/tracker/item.php:207
+#: www/tracker/include/ArtifactTypeHtml.class.php:223 www/tracker/item.php:193
+#: www/tracker/item.php:198
 msgid "Y-m-d H:i"
 msgstr ""
 
@@ -450,7 +450,7 @@
 #: www/search/include/renderers/ProjectHtmlSearchRenderer.class.php:45
 #: www/snippet/submit.php:110 www/tracker/admin/form-updatetracker.php:52
 #: www/tracker/admin/ind.php:113 www/tracker/admin/ind.php:142
-#: www/tracker/browse.php:587 www/tracker/ind.php:63
+#: www/tracker/browse.php:666 www/tracker/ind.php:63
 msgid "Description"
 msgstr ""
 
@@ -472,8 +472,8 @@
 
 #: common/docman/include/utils.php:326 common/docman/views/editfile.php:132
 #: www/pm/browse_task.php:585 www/project/admin/database.php:208
-#: www/tracker/admin/form-customizelist.php:44 www/tracker/browse.php:445
-#: www/tracker/browse.php:593 www/tracker/browse.php:761
+#: www/tracker/admin/form-customizelist.php:44 www/tracker/browse.php:519
+#: www/tracker/browse.php:675 www/tracker/browse.php:859
 #: www/tracker/query.php:344
 msgid "State"
 msgstr ""
@@ -731,7 +731,7 @@
 #: www/tracker/admin/form-addextrafield.php:132
 #: www/tracker/admin/form-addextrafieldoption.php:101
 #: www/tracker/admin/form-updateextrafieldelement.php:60
-#: www/tracker/include/ArtifactTypeHtml.class.php:147 www/tracker/item.php:149
+#: www/tracker/include/ArtifactTypeHtml.class.php:147 www/tracker/item.php:140
 msgid "Status"
 msgstr ""
 
@@ -836,8 +836,8 @@
 #: common/include/rbac_texts.php:219
 #: common/widget/Widget_MyProjects.class.php:79
 #: plugins/mantisbt/www/index.php:49 www/include/Layout.class.php:694
-#: www/tracker/admin/ind.php:90 www/tracker/item.php:182
-#: www/tracker/item.php:383
+#: www/tracker/admin/ind.php:90 www/tracker/item.php:173
+#: www/tracker/item.php:374
 msgid "Admin"
 msgstr ""
 
@@ -895,9 +895,9 @@
 #: 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:168
-#: www/tracker/browse.php:421 www/tracker/deleteartifact.php:38
-#: www/tracker/item.php:265
+#: www/tracker/admin/tracker.php:66 www/tracker/browse.php:170
+#: www/tracker/browse.php:495 www/tracker/deleteartifact.php:38
+#: www/tracker/item.php:256
 msgid "Delete"
 msgstr ""
 
@@ -1003,7 +1003,7 @@
 
 #: common/forum/Forum.class.php:620 common/frs/FRSPackage.class.php:447
 #: common/frs/FRSRelease.class.php:356 common/include/Group.class.php:1652
-#: common/mail/MailingList.class.php:388 common/pm/ProjectGroup.class.php:376
+#: common/mail/MailingList.class.php:393 common/pm/ProjectGroup.class.php:376
 #: common/pm/ProjectTask.class.php:513 common/tracker/Artifact.class.php:489
 #: common/tracker/ArtifactExtraField.class.php:429
 #: common/tracker/ArtifactType.class.php:816
@@ -1083,8 +1083,8 @@
 msgid "Release"
 msgstr ""
 
-#: common/forum/ForumAdmin.class.php:357 common/forum/ForumHTML.class.php:329
-#: common/forum/ForumHTML.class.php:542
+#: common/forum/ForumAdmin.class.php:357 common/forum/ForumHTML.class.php:331
+#: common/forum/ForumHTML.class.php:544
 #: plugins/mailman/www/admin/index.php:186 plugins/mailman/www/index.php:67
 #: plugins/mailman/www/mailman_utils.php:74
 #: plugins/mailman/www/mailman_utils.php:181 www/account/editsshkeys.php:85
@@ -1196,8 +1196,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:270
-#: www/tracker/browse.php:585 www/tracker/item.php:304
+#: www/tracker/admin/form-customizelist.php:42 www/tracker/browse.php:275
+#: www/tracker/browse.php:663 www/tracker/item.php:295
 #: www/tracker/query.php:197 www/tracker/query.php:381
 msgid "Summary"
 msgstr ""
@@ -1210,29 +1210,29 @@
 msgid "Project"
 msgstr ""
 
-#: common/forum/ForumHTML.class.php:89
+#: common/forum/ForumHTML.class.php:91
 #: common/widget/Widget_ProjectLatestNews.class.php:42
 #: www/export/projnews.php:72 www/index_std.php:9
 msgid "Latest News"
 msgstr ""
 
-#: common/forum/ForumHTML.class.php:102
+#: common/forum/ForumHTML.class.php:104
 msgid "View Forums"
 msgstr ""
 
-#: common/forum/ForumHTML.class.php:104
+#: common/forum/ForumHTML.class.php:106
 msgid "-tooltip:forum:view"
 msgstr ""
 
-#: common/forum/ForumHTML.class.php:108
+#: common/forum/ForumHTML.class.php:110
 msgid "Discussion Forums:"
 msgstr ""
 
-#: common/forum/ForumHTML.class.php:110
+#: common/forum/ForumHTML.class.php:112
 msgid "-tooltip:forum:show"
 msgstr ""
 
-#: common/forum/ForumHTML.class.php:113 common/forum/ForumHTML.class.php:120
+#: common/forum/ForumHTML.class.php:115 common/forum/ForumHTML.class.php:122
 #: plugins/mailman/www/mailman_utils.php:208
 #: plugins/mailman/www/mailman_utils.php:211 www/frs/include/frs_utils.php:77
 #: www/mail/admin/index.php:285 www/mail/mail_utils.php:52
@@ -1245,64 +1245,64 @@
 msgid "Administration"
 msgstr ""
 
-#: common/forum/ForumHTML.class.php:115 common/forum/ForumHTML.class.php:122
+#: common/forum/ForumHTML.class.php:117 common/forum/ForumHTML.class.php:124
 msgid "-tooltip:forum:admin"
 msgstr ""
 
-#: common/forum/ForumHTML.class.php:139 www/forum/monitor.php:59
+#: common/forum/ForumHTML.class.php:141 www/forum/monitor.php:59
 msgid "Stop Monitoring"
 msgstr ""
 
-#: common/forum/ForumHTML.class.php:143 common/forum/ForumHTML.class.php:151
+#: common/forum/ForumHTML.class.php:145 common/forum/ForumHTML.class.php:153
 msgid "Monitor Forum"
 msgstr ""
 
-#: common/forum/ForumHTML.class.php:146
+#: common/forum/ForumHTML.class.php:148
 msgid "Save Place"
 msgstr ""
 
-#: common/forum/ForumHTML.class.php:156 common/forum/ForumHTML.class.php:157
+#: common/forum/ForumHTML.class.php:158 common/forum/ForumHTML.class.php:159
 msgid "Start New Thread"
 msgstr ""
 
-#: common/forum/ForumHTML.class.php:206
+#: common/forum/ForumHTML.class.php:208
 msgid "This is the content of the pending message"
 msgstr ""
 
-#: common/forum/ForumHTML.class.php:210 common/forum/ForumHTML.class.php:268
+#: common/forum/ForumHTML.class.php:212 common/forum/ForumHTML.class.php:270
 #: www/forum/message.php:126
 msgid "By:"
 msgstr ""
 
-#: common/forum/ForumHTML.class.php:267 www/forum/message.php:123
+#: common/forum/ForumHTML.class.php:269 www/forum/message.php:123
 msgid "reply"
 msgstr ""
 
-#: common/forum/ForumHTML.class.php:312
+#: common/forum/ForumHTML.class.php:314
 msgid "Current File"
 msgstr ""
 
-#: common/forum/ForumHTML.class.php:320 common/forum/ForumHTML.class.php:353
+#: common/forum/ForumHTML.class.php:322 common/forum/ForumHTML.class.php:355
 msgid "Use the \"Browse\" button to find the file you want to attach"
 msgstr ""
 
-#: common/forum/ForumHTML.class.php:323 common/forum/ForumHTML.class.php:356
+#: common/forum/ForumHTML.class.php:325 common/forum/ForumHTML.class.php:358
 msgid "File to upload"
 msgstr ""
 
-#: common/forum/ForumHTML.class.php:326
+#: common/forum/ForumHTML.class.php:328
 msgid "Warning: Uploaded file will replace current file"
 msgstr ""
 
-#: common/forum/ForumHTML.class.php:514 common/forum/ForumHTML.class.php:577
+#: common/forum/ForumHTML.class.php:516 common/forum/ForumHTML.class.php:579
 msgid "Subject:"
 msgstr ""
 
-#: common/forum/ForumHTML.class.php:517 common/forum/ForumHTML.class.php:580
+#: common/forum/ForumHTML.class.php:519 common/forum/ForumHTML.class.php:582
 msgid "Message:"
 msgstr ""
 
-#: common/forum/ForumHTML.class.php:543 common/widget/Widget.class.php:92
+#: common/forum/ForumHTML.class.php:545 common/widget/Widget.class.php:92
 #: plugins/globalsearch/common/globalsearch_edit_utils.php:106
 #: plugins/globalsearch/common/globalsearch_edit_utils.php:156
 #: www/admin/admin_table.php:58 www/admin/admin_table.php:155
@@ -1314,35 +1314,35 @@
 msgid "Cancel"
 msgstr ""
 
-#: common/forum/ForumHTML.class.php:597
+#: common/forum/ForumHTML.class.php:599
 msgid "HTML tags will display in your post as text"
 msgstr ""
 
-#: common/forum/ForumHTML.class.php:604
+#: common/forum/ForumHTML.class.php:606
 #, php-format
 msgid ""
 "You are posting anonymously because you are not <a href=\"%1$s\">logged in</"
 "a>"
 msgstr ""
 
-#: common/forum/ForumHTML.class.php:608
+#: common/forum/ForumHTML.class.php:610
 msgid "Post Comment"
 msgstr ""
 
-#: common/forum/ForumHTML.class.php:608
+#: common/forum/ForumHTML.class.php:610
 msgid "Anonymously"
 msgstr ""
 
-#: common/forum/ForumHTML.class.php:609
+#: common/forum/ForumHTML.class.php:611
 msgid "Receive followups via email"
 msgstr ""
 
-#: common/forum/ForumHTML.class.php:621
+#: common/forum/ForumHTML.class.php:623
 #, php-format
 msgid "You could post if you were <a href=\"%1$s\">logged in</a>."
 msgstr ""
 
-#: common/forum/ForumHTML.class.php:625
+#: common/forum/ForumHTML.class.php:627
 #, php-format
 msgid "Please <a href=\"%1$s\">log in</a>"
 msgstr ""
@@ -1522,7 +1522,7 @@
 msgstr ""
 
 #: common/include/Error.class.php:142 common/include/User.class.php:279
-#: www/tracker/tracker.php:96
+#: www/tracker/tracker.php:103
 msgid "Invalid Email Address"
 msgstr ""
 
@@ -2047,34 +2047,34 @@
 msgid "Project Features & Users Administration"
 msgstr ""
 
-#: common/include/Navigation.class.php:402 www/activity/index.php:85
-#: www/activity/index.php:94 www/activity/index.php:179
-#: www/activity/index.php:265 www/export/rss_project.php:97
+#: common/include/Navigation.class.php:401 www/activity/index.php:64
+#: www/activity/index.php:74 www/activity/index.php:159
+#: www/activity/index.php:243 www/export/rss_project.php:97
 #: www/project/stats/index.php:85
 msgid "Activity"
 msgstr ""
 
-#: common/include/Navigation.class.php:404 www/activity/index.php:87
+#: common/include/Navigation.class.php:403 www/activity/index.php:66
 #: www/project/stats/index.php:87
 msgid "-tooltip:Activity"
 msgstr ""
 
-#: common/include/Navigation.class.php:414
+#: common/include/Navigation.class.php:412
 msgid "Advanced Search in this Project"
 msgstr ""
 
-#: common/include/Navigation.class.php:422
+#: common/include/Navigation.class.php:420
 #: common/include/group_section_texts.php:28
 #: common/reporting/report_utils.php:147 plugins/blocks/www/index.php:167
 #: plugins/quota_management/www/quota_project.php:89
 msgid "Forums"
 msgstr ""
 
-#: common/include/Navigation.class.php:424
+#: common/include/Navigation.class.php:422
 msgid "-tooltip:Forums"
 msgstr ""
 
-#: common/include/Navigation.class.php:437 common/include/rbac_texts.php:142
+#: common/include/Navigation.class.php:435 common/include/rbac_texts.php:142
 #: common/include/rbac_texts.php:238 common/include/rbac_texts.php:240
 #: common/reporting/report_utils.php:143
 #: common/widget/Widget_ProjectPublicAreas.class.php:51
@@ -2083,19 +2083,19 @@
 msgid "Tracker"
 msgstr ""
 
-#: common/include/Navigation.class.php:439
+#: common/include/Navigation.class.php:437
 msgid "Bugtracker, Feature Requests, etc."
 msgstr ""
 
-#: common/include/Navigation.class.php:455 plugins/blocks/www/index.php:169
+#: common/include/Navigation.class.php:453 plugins/blocks/www/index.php:169
 msgid "Lists"
 msgstr ""
 
-#: common/include/Navigation.class.php:457
+#: common/include/Navigation.class.php:455
 msgid "Project Mailing Lists"
 msgstr ""
 
-#: common/include/Navigation.class.php:470
+#: common/include/Navigation.class.php:468
 #: common/include/group_section_texts.php:30 common/include/rbac_texts.php:143
 #: common/include/rbac_texts.php:233 common/include/rbac_texts.php:235
 #: common/reporting/report_utils.php:155 common/reporting/report_utils.php:193
@@ -2109,65 +2109,64 @@
 msgid "Tasks"
 msgstr ""
 
-#: common/include/Navigation.class.php:472
+#: common/include/Navigation.class.php:470
 msgid "Task and Time Tracking"
 msgstr ""
 
-#: common/include/Navigation.class.php:485
+#: common/include/Navigation.class.php:483
 #: common/reporting/report_utils.php:151 plugins/blocks/www/index.php:171
 #: www/reporting/projectact_graph.php:105
 msgid "Docs"
 msgstr ""
 
-#: common/include/Navigation.class.php:487
+#: common/include/Navigation.class.php:485
 msgid "Document Manager"
 msgstr ""
 
-#: common/include/Navigation.class.php:500
+#: common/include/Navigation.class.php:498
 #: common/widget/Widget_ProjectPublicAreas.class.php:154
 #: plugins/blocks/www/index.php:172
 msgid "Surveys"
 msgstr ""
 
-#: common/include/Navigation.class.php:502
+#: common/include/Navigation.class.php:500
 msgid "-tooltip:Surveys"
 msgstr ""
 
-#: common/include/Navigation.class.php:515
+#: common/include/Navigation.class.php:513
 #: common/include/group_section_texts.php:33 plugins/blocks/www/index.php:173
-#: plugins/quota_management/www/quota_project.php:75
-#: www/activity/index.php:117 www/activity/index.php:314
-#: www/admin/index.php:157 www/news/index.php:35
+#: plugins/quota_management/www/quota_project.php:75 www/activity/index.php:97
+#: www/activity/index.php:293 www/admin/index.php:157 www/news/index.php:35
 msgid "News"
 msgstr ""
 
-#: common/include/Navigation.class.php:517
+#: common/include/Navigation.class.php:515
 msgid "-tooltip:News"
 msgstr ""
 
-#: common/include/Navigation.class.php:530 common/include/rbac_texts.php:150
+#: common/include/Navigation.class.php:528 common/include/rbac_texts.php:150
 #: common/include/rbac_texts.php:247 common/include/rbac_texts.php:248
 #: plugins/blocks/www/index.php:174 www/stats/site_stats_utils.php:262
 #: www/stats/site_stats_utils.php:386 www/stats/site_stats_utils.php:441
 msgid "SCM"
 msgstr ""
 
-#: common/include/Navigation.class.php:532
+#: common/include/Navigation.class.php:530
 msgid "Source Code Management"
 msgstr ""
 
-#: common/include/Navigation.class.php:561
+#: common/include/Navigation.class.php:559
 #: common/include/group_section_texts.php:32 common/include/rbac_texts.php:152
 #: common/include/rbac_texts.php:244 plugins/blocks/www/index.php:175
 msgid "Files"
 msgstr ""
 
-#: common/include/Navigation.class.php:563 common/include/rbac_texts.php:162
+#: common/include/Navigation.class.php:561 common/include/rbac_texts.php:162
 #: common/include/rbac_texts.php:243
 msgid "File Release System"
 msgstr ""
 
-#: common/include/Navigation.class.php:630
+#: common/include/Navigation.class.php:628
 msgid "Show source"
 msgstr ""
 
@@ -2203,56 +2202,60 @@
 msgid "Any user logged in"
 msgstr ""
 
-#: common/include/SCMPlugin.class.php:120
+#: common/include/SCMPlugin.class.php:122
 msgid "Unimplemented SCM plugin."
 msgstr ""
 
-#: common/include/SCMPlugin.class.php:124
+#: common/include/SCMPlugin.class.php:126
 msgid "Instructions for anonymous access for unimplemented SCM plugin."
 msgstr ""
 
-#: common/include/SCMPlugin.class.php:128
+#: common/include/SCMPlugin.class.php:130
 msgid "Instructions for read-write access for unimplemented SCM plugin."
 msgstr ""
 
-#: common/include/SCMPlugin.class.php:132
+#: common/include/SCMPlugin.class.php:134
 msgid "Instructions for snapshot access for unimplemented SCM plugin."
 msgstr ""
 
-#: common/include/SCMPlugin.class.php:137
-#: common/include/SCMPlugin.class.php:151
+#: common/include/SCMPlugin.class.php:139
+#: common/include/SCMPlugin.class.php:153
 msgid "Repository Browser"
 msgstr ""
 
-#: common/include/SCMPlugin.class.php:139
-#: common/include/SCMPlugin.class.php:153
+#: common/include/SCMPlugin.class.php:141
+#: common/include/SCMPlugin.class.php:155
 msgid "Browsing the SCM tree is not yet implemented for this SCM plugin."
 msgstr ""
 
-#: common/include/SCMPlugin.class.php:143
+#: common/include/SCMPlugin.class.php:145
 msgid "Not implemented yet"
 msgstr ""
 
-#: common/include/SCMPlugin.class.php:160
+#: common/include/SCMPlugin.class.php:162
 #: plugins/scmcvs/common/CVSPlugin.class.php:148
 #: plugins/scmdarcs/common/DarcsPlugin.class.php:193
-#: plugins/scmsvn/common/SVNPlugin.class.php:193
+#: plugins/scmsvn/common/SVNPlugin.class.php:189
 msgid "Repository Statistics"
 msgstr ""
 
-#: common/include/SCMPlugin.class.php:162
+#: common/include/SCMPlugin.class.php:164
 msgid "Not implemented for this SCM plugin yet."
 msgstr ""
 
-#: common/include/SCMPlugin.class.php:196
+#: common/include/SCMPlugin.class.php:178
+msgid "Repository Information"
+msgstr ""
+
+#: common/include/SCMPlugin.class.php:197
 msgid "Repository History"
 msgstr ""
 
-#: common/include/SCMPlugin.class.php:197
+#: common/include/SCMPlugin.class.php:198
 msgid "Data about current and past states of the repository"
 msgstr ""
 
-#: common/include/SCMPlugin.class.php:228
+#: common/include/SCMPlugin.class.php:227
 msgid "Enable Anonymous Read Access"
 msgstr ""
 
@@ -2627,36 +2630,40 @@
 msgid "%s (Forum Message)"
 msgstr ""
 
-#: common/include/exit.php:32
+#: common/include/exit.php:41
 msgid "Exiting with error"
 msgstr ""
 
-#: common/include/exit.php:49
+#: common/include/exit.php:58
 msgid ""
 "Permission denied. This project's administrator will have to grant you "
 "permission to view this page."
 msgstr ""
 
-#: common/include/exit.php:68
+#: common/include/exit.php:71
+msgid "You are not logged in."
+msgstr ""
+
+#: common/include/exit.php:83
 msgid ""
 "Permission denied. No project was chosen, project does not exist or you "
 "can't access it."
 msgstr ""
 
-#: common/include/exit.php:80
+#: common/include/exit.php:97
 msgid "Missing required parameters : "
 msgstr ""
 
-#: common/include/exit.php:85
+#: common/include/exit.php:102
 #, php-format
 msgid "Missing required parameters."
 msgstr ""
 
-#: common/include/exit.php:103
+#: common/include/exit.php:120
 msgid "The Site Administrator has turned off this feature."
 msgstr ""
 
-#: common/include/exit.php:112
+#: common/include/exit.php:129
 msgid "You Attempted To Double-submit this item. Please avoid double-clicking."
 msgstr ""
 
@@ -2687,6 +2694,38 @@
 msgid "Documentations"
 msgstr ""
 
+#: common/include/jpgraph.php:33
+msgid "Package JPGraph not installed"
+msgstr ""
+
+#: common/include/jpgraph.php:48
+msgid "Cannot display error picture: called recursively! Backtrace:"
+msgstr ""
+
+#: common/include/jpgraph.php:49
+msgid "Cannot display error picture, headers already sent! Backtrace:"
+msgstr ""
+
+#: common/include/jpgraph.php:66
+#, php-format
+msgid "%s Error:"
+msgstr ""
+
+#: common/include/jpgraph.php:80
+msgid "A Forge error occured; maybe you’re not logged in or lack permissions."
+msgstr ""
+
+#: common/include/jpgraph.php:91
+msgid ""
+"A fatal JpGraph error occured; maybe your query did not yield any data "
+"points."
+msgstr ""
+
+#: common/include/jpgraph.php:93
+msgid ""
+"A non-fatal JpGraph error occured; we’re nevertheless halting execution."
+msgstr ""
+
 #: common/include/pre.php:281
 #, php-format
 msgid "Posted data is too large. %1$s exceeds the maximum size of %2$s"
@@ -3043,6 +3082,10 @@
 msgid "Error: a forum with the same email address already exists."
 msgstr ""
 
+#: common/include/utils.php:1500
+msgid "Internal Error: Could not read from random device"
+msgstr ""
+
 #: common/mail/MailingList.class.php:61
 #: common/mail/MailingListFactory.class.php:54
 #: common/survey/Survey.class.php:61 common/survey/SurveyQuestion.class.php:53
@@ -3108,7 +3151,7 @@
 msgid "Error Getting mailing list"
 msgstr ""
 
-#: common/mail/MailingList.class.php:383
+#: common/mail/MailingList.class.php:388
 msgid "Sorry, this mailing list is special and must not be deleted."
 msgstr ""
 
@@ -3136,7 +3179,7 @@
 msgid "Circular Dependency Detected'"
 msgstr ""
 
-#: common/pm/ProjectTask.class.php:1209
+#: common/pm/ProjectTask.class.php:1216
 #, php-format
 msgid "[%1$s - %2$s] [Task #%3$d] "
 msgstr ""
@@ -3387,7 +3430,7 @@
 msgstr ""
 
 #: common/tracker/Artifact.class.php:206 common/tracker/Artifact.class.php:749
-#: www/tracker/tracker.php:89 www/tracker/tracker.php:287
+#: www/tracker/tracker.php:96 www/tracker/tracker.php:294
 msgid ""
 "Artifact: This ArtifactType Does Not Allow Anonymous Submissions. Please "
 "Login."
@@ -3566,7 +3609,7 @@
 #: plugins/contribtracker/www/global_admin.php:452
 #: plugins/contribtracker/www/project_admin.php:193
 #: plugins/forumml/www/forumml_utils.php:603 plugins/forumml/www/index.php:126
-#: www/account/pending-resend.php:75 www/activity/index.php:191
+#: www/account/pending-resend.php:75 www/activity/index.php:169
 #: www/admin/admin_table.php:212 www/admin/cronman.php:37
 #: www/admin/globalroleedit.php:247 www/admin/index.php:152
 #: www/admin/pending-news.php:173 www/forum/admin/index.php:427
@@ -3574,8 +3617,8 @@
 #: www/my/bookmark_edit.php:63 www/news/admin/index.php:161
 #: www/news/submit.php:165 www/pm/admin/index.php:219
 #: www/pm/admin/index.php:264 www/pm/admin/index.php:300
-#: www/pm/deletetask.php:44 www/pm/include/ProjectView.class.php:210
-#: www/pm/include/ProjectView.class.php:214
+#: www/pm/deletetask.php:44 www/pm/include/ProjectView.class.php:234
+#: www/pm/include/ProjectView.class.php:238
 #: www/project/admin/editimages.php:237 www/project/admin/roledelete.php:85
 #: www/project/admin/roleedit.php:359 www/project/request.php:69
 #: www/register/index.php:280 www/survey/include/SurveyHTML.class.php:551
@@ -3597,13 +3640,13 @@
 msgstr ""
 
 #: common/widget/WidgetLayoutManager.class.php:242
-#: common/widget/WidgetLayoutManager.class.php:246 www/include/html.php:913
+#: common/widget/WidgetLayoutManager.class.php:246 www/include/html.php:915
 #: www/include/project_home.php:73 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:917
+#: common/widget/WidgetLayoutManager.class.php:247 www/include/html.php:919
 #: www/widgets/widgets.php:71
 msgid "Customize layout"
 msgstr ""
@@ -3641,7 +3684,7 @@
 
 #: common/widget/Widget_MyAdmin.class.php:71
 #, php-format
-msgid "Groups in <a href=\"%s\"><b>P</b> (pending) Status</a>"
+msgid "Projects in <a href=\"%s\"><b>P</b> (pending) Status</a>"
 msgstr ""
 
 #: common/widget/Widget_MyAdmin.class.php:92
@@ -3959,7 +4002,7 @@
 msgstr ""
 
 #: common/widget/Widget_ProjectLatestFileReleases.class.php:64
-#: www/tracker/include/ArtifactTypeHtml.class.php:789 www/tracker/item.php:249
+#: www/tracker/include/ArtifactTypeHtml.class.php:789 www/tracker/item.php:240
 msgid "Monitor"
 msgstr ""
 
@@ -4304,7 +4347,7 @@
 #: plugins/blocks/www/index.php:226
 #: plugins/scmcvs/common/CVSPlugin.class.php:151
 #: plugins/scmdarcs/common/DarcsPlugin.class.php:196
-#: plugins/scmsvn/common/SVNPlugin.class.php:196 www/admin/useredit.php:234
+#: plugins/scmsvn/common/SVNPlugin.class.php:192 www/admin/useredit.php:234
 #: www/project/admin/editimages.php:267 www/reporting/usersummary.php:101
 #: www/search/include/renderers/SkillHtmlSearchRenderer.class.php:44
 #: www/sendmessage.php:69 www/tracker/include/ArtifactTypeHtml.class.php:200
@@ -4389,7 +4432,7 @@
 msgstr ""
 
 #: plugins/contribtracker/common/ContribTrackerPlugin.class.php:112
-#: www/project/admin/massfinish.php:80 www/project/admin/users.php:315
+#: www/project/admin/massfinish.php:80 www/project/admin/users.php:316
 msgid "Role"
 msgstr ""
 
@@ -4401,7 +4444,7 @@
 #: plugins/contribtracker/common/ContribTrackerPlugin.class.php:132
 #: plugins/contribtracker/www/index.php:43
 #: plugins/contribtracker/www/project_admin.php:26
-#: plugins/contribtracker/www/project_admin.php:290 www/activity/index.php:36
+#: plugins/contribtracker/www/project_admin.php:290
 msgid "%Y-%m-%d"
 msgstr ""
 
@@ -5676,7 +5719,7 @@
 msgstr ""
 
 #: plugins/hudson/include/hudsonViews.class.php:59
-#: utils/fixscripts/populate_template_project.php:81
+#: utils/fixscripts/populate_template_project.php:110
 msgid "Help"
 msgstr ""
 
@@ -6002,8 +6045,8 @@
 
 #: plugins/mailman/include/mailmanPlugin.class.php:155
 #: www/admin/globalroleedit.php:150 www/admin/globalroleedit.php:165
-#: www/admin/globalroleedit.php:175 www/my/rmproject.php:92
-#: www/project/admin/users.php:359
+#: www/admin/globalroleedit.php:175 www/include/Layout.class.php:1275
+#: www/my/rmproject.php:92 www/project/admin/users.php:360
 msgid "Remove"
 msgstr ""
 
@@ -6025,7 +6068,8 @@
 msgstr ""
 
 #: plugins/mailman/include/mailmanPlugin.class.php:212
-#: utils/fixscripts/populate_template_project.php:189
+#: utils/fixscripts/populate_template_project.php:219
+#: utils/fixscripts/populate_template_project.php:226
 #, php-format
 msgid "ML: %s"
 msgstr ""
@@ -7096,7 +7140,7 @@
 #: plugins/quota_management/www/quota_project.php:249
 #: plugins/scmcvs/common/CVSPlugin.class.php:171
 #: plugins/scmdarcs/common/DarcsPlugin.class.php:216
-#: plugins/scmsvn/common/SVNPlugin.class.php:216 www/pm/index.php:103
+#: plugins/scmsvn/common/SVNPlugin.class.php:212 www/pm/index.php:103
 #: www/pm/templates/time_tracking.php:66 www/stats/site_stats_utils.php:285
 #: www/tracker/ind.php:63
 msgid "Total"
@@ -7188,10 +7232,10 @@
 
 #: plugins/scmbzr/common/BzrPlugin.class.php:108
 #: plugins/scmcvs/common/CVSPlugin.class.php:106
-#: plugins/scmgit/common/GitPlugin.class.php:136
-#: plugins/scmgit/common/GitPlugin.class.php:145
-#: plugins/scmsvn/common/SVNPlugin.class.php:152
-#: plugins/scmsvn/common/SVNPlugin.class.php:161
+#: plugins/scmgit/common/GitPlugin.class.php:132
+#: plugins/scmgit/common/GitPlugin.class.php:139
+#: plugins/scmsvn/common/SVNPlugin.class.php:150
+#: plugins/scmsvn/common/SVNPlugin.class.php:157
 msgid "developername"
 msgstr ""
 
@@ -7221,7 +7265,7 @@
 "%1$s</tt> VOB in your ClearCase Explorer."
 msgstr ""
 
-#: plugins/scmccase/common/CCasePlugin.class.php:111 www/tracker/item.php:439
+#: plugins/scmccase/common/CCasePlugin.class.php:111 www/tracker/item.php:430
 msgid "History"
 msgstr ""
 
@@ -7305,7 +7349,7 @@
 
 #: plugins/scmcvs/common/CVSPlugin.class.php:119
 #: plugins/scmdarcs/common/DarcsPlugin.class.php:154
-#: plugins/scmgit/common/GitPlugin.class.php:193
+#: plugins/scmgit/common/GitPlugin.class.php:185
 msgid "Download the nightly snapshot"
 msgstr ""
 
@@ -7326,16 +7370,16 @@
 
 #: plugins/scmcvs/common/CVSPlugin.class.php:152
 #: plugins/scmdarcs/common/DarcsPlugin.class.php:197
-#: plugins/scmsvn/common/SVNPlugin.class.php:197
+#: plugins/scmsvn/common/SVNPlugin.class.php:193
 #: www/stats/site_stats_utils.php:304
 msgid "Adds"
 msgstr ""
 
 #: plugins/scmcvs/common/CVSPlugin.class.php:153
 #: plugins/scmdarcs/common/DarcsPlugin.class.php:198
-#: plugins/scmsvn/common/SVNPlugin.class.php:198
-#: utils/fixscripts/populate_template_project.php:188
-#: www/activity/index.php:122 www/stats/site_stats_utils.php:303
+#: plugins/scmsvn/common/SVNPlugin.class.php:194
+#: utils/fixscripts/populate_template_project.php:218
+#: www/activity/index.php:102 www/stats/site_stats_utils.php:303
 msgid "Commits"
 msgstr ""
 
@@ -7425,17 +7469,17 @@
 "git-scm.com/</a>."
 msgstr ""
 
-#: plugins/scmgit/common/GitPlugin.class.php:70
+#: plugins/scmgit/common/GitPlugin.class.php:72
 msgid "Anonymous Git Access"
 msgstr ""
 
-#: plugins/scmgit/common/GitPlugin.class.php:72
+#: plugins/scmgit/common/GitPlugin.class.php:74
 msgid ""
 "This project's Git repository can be checked out through anonymous access "
 "with the following command."
 msgstr ""
 
-#: plugins/scmgit/common/GitPlugin.class.php:86
+#: plugins/scmgit/common/GitPlugin.class.php:87
 msgid "Developer's repository"
 msgstr ""
 
@@ -7449,8 +7493,8 @@
 msgstr[0] ""
 msgstr[1] ""
 
-#: plugins/scmgit/common/GitPlugin.class.php:112
-#: plugins/scmgit/common/GitPlugin.class.php:131
+#: plugins/scmgit/common/GitPlugin.class.php:113
+#: plugins/scmgit/common/GitPlugin.class.php:128
 msgid "Developer GIT Access via SSH"
 msgstr ""
 
@@ -7460,40 +7504,40 @@
 "installed on your client machine. Enter your site password when prompted."
 msgstr ""
 
-#: plugins/scmgit/common/GitPlugin.class.php:121
-#: plugins/scmgit/common/GitPlugin.class.php:140
+#: plugins/scmgit/common/GitPlugin.class.php:120
+#: plugins/scmgit/common/GitPlugin.class.php:135
 msgid "Developer GIT Access via HTTP"
 msgstr ""
 
-#: plugins/scmgit/common/GitPlugin.class.php:124
-#: plugins/scmgit/common/GitPlugin.class.php:143
+#: plugins/scmgit/common/GitPlugin.class.php:122
+#: plugins/scmgit/common/GitPlugin.class.php:137
 msgid ""
 "Only project developers can access the GIT tree via this method. Enter your "
 "site password when prompted."
 msgstr ""
 
-#: plugins/scmgit/common/GitPlugin.class.php:134
+#: plugins/scmgit/common/GitPlugin.class.php:130
 msgid ""
 "Only project developers can access the GIT tree via this method. SSH must be "
 "installed on your client machine. Substitute <i>developername</i> with the "
 "proper value. Enter your site password when prompted."
 msgstr ""
 
-#: plugins/scmgit/common/GitPlugin.class.php:157
+#: plugins/scmgit/common/GitPlugin.class.php:150
 msgid "Access to your personal repository"
 msgstr ""
 
-#: plugins/scmgit/common/GitPlugin.class.php:160
+#: plugins/scmgit/common/GitPlugin.class.php:152
 msgid ""
 "You have a personal repository for this project, accessible through SSH with "
 "the following method. Enter your site password when prompted."
 msgstr ""
 
-#: plugins/scmgit/common/GitPlugin.class.php:168
+#: plugins/scmgit/common/GitPlugin.class.php:159
 msgid "Request a personal repository"
 msgstr ""
 
-#: plugins/scmgit/common/GitPlugin.class.php:171
+#: plugins/scmgit/common/GitPlugin.class.php:161
 msgid ""
 "You can clone the project repository into a personal one into which you "
 "alone will be able to write.  Other members of the project will only have "
@@ -7502,23 +7546,27 @@
 "time before it is created (less than an hour in most situations)."
 msgstr ""
 
-#: plugins/scmgit/common/GitPlugin.class.php:174
+#: plugins/scmgit/common/GitPlugin.class.php:164
 #, php-format
 msgid "<a href=\"%s\">Request a personal repository</a>."
 msgstr ""
 
-#: plugins/scmgit/common/GitPlugin.class.php:217
+#: plugins/scmgit/common/GitPlugin.class.php:182
+msgid "Snapshots"
+msgstr ""
+
+#: plugins/scmgit/common/GitPlugin.class.php:209
 msgid "Git Repository Browser"
 msgstr ""
 
-#: plugins/scmgit/common/GitPlugin.class.php:219
+#: plugins/scmgit/common/GitPlugin.class.php:211
 msgid ""
 "Browsing the Git tree gives you a view into the current status of this "
 "project's code. You may also view the complete histories of any file in the "
 "repository."
 msgstr ""
 
-#: plugins/scmgit/common/GitPlugin.class.php:223
+#: plugins/scmgit/common/GitPlugin.class.php:215
 msgid "Browse Git Repository"
 msgstr ""
 
@@ -7567,33 +7615,33 @@
 "<a href=\"http://svnbook.red-bean.com/\">here</a>."
 msgstr ""
 
-#: plugins/scmsvn/common/SVNPlugin.class.php:100
+#: plugins/scmsvn/common/SVNPlugin.class.php:102
 msgid "Anonymous Subversion Access"
 msgstr ""
 
-#: plugins/scmsvn/common/SVNPlugin.class.php:102
+#: plugins/scmsvn/common/SVNPlugin.class.php:104
 msgid ""
 "This project's SVN repository can be checked out through anonymous access "
 "with the following command(s)."
 msgstr ""
 
-#: plugins/scmsvn/common/SVNPlugin.class.php:112
+#: plugins/scmsvn/common/SVNPlugin.class.php:114
 msgid "The password is "
 msgstr ""
 
-#: plugins/scmsvn/common/SVNPlugin.class.php:128
-#: plugins/scmsvn/common/SVNPlugin.class.php:147
+#: plugins/scmsvn/common/SVNPlugin.class.php:131
+#: plugins/scmsvn/common/SVNPlugin.class.php:146
 msgid "Developer Subversion Access via SSH"
 msgstr ""
 
-#: plugins/scmsvn/common/SVNPlugin.class.php:131
+#: plugins/scmsvn/common/SVNPlugin.class.php:133
 msgid ""
 "Only project developers can access the SVN tree via this method. SSH must be "
 "installed on your client machine. Enter your site password when prompted."
 msgstr ""
 
-#: plugins/scmsvn/common/SVNPlugin.class.php:137
-#: plugins/scmsvn/common/SVNPlugin.class.php:156
+#: plugins/scmsvn/common/SVNPlugin.class.php:138
+#: plugins/scmsvn/common/SVNPlugin.class.php:153
 msgid "Developer Subversion Access via DAV"
 msgstr ""
 
@@ -7603,32 +7651,32 @@
 "site password when prompted."
 msgstr ""
 
-#: plugins/scmsvn/common/SVNPlugin.class.php:150
+#: plugins/scmsvn/common/SVNPlugin.class.php:148
 msgid ""
 "Only project developers can access the SVN tree via this method. SSH must be "
 "installed on your client machine. Substitute <i>developername</i> with the "
 "proper values. Enter your site password when prompted."
 msgstr ""
 
-#: plugins/scmsvn/common/SVNPlugin.class.php:159
+#: plugins/scmsvn/common/SVNPlugin.class.php:155
 msgid ""
 "Only project developers can access the SVN tree via this method. Substitute "
 "<i>developername</i> with the proper values. Enter your site password when "
 "prompted."
 msgstr ""
 
-#: plugins/scmsvn/common/SVNPlugin.class.php:173
+#: plugins/scmsvn/common/SVNPlugin.class.php:169
 msgid "Subversion Repository Browser"
 msgstr ""
 
-#: plugins/scmsvn/common/SVNPlugin.class.php:175
+#: plugins/scmsvn/common/SVNPlugin.class.php:171
 msgid ""
 "Browsing the Subversion tree gives you a view into the current status of "
 "this project's code. You may also view the complete histories of any file in "
 "the repository."
 msgstr ""
 
-#: plugins/scmsvn/common/SVNPlugin.class.php:179
+#: plugins/scmsvn/common/SVNPlugin.class.php:175
 msgid "Browse Subversion Repository"
 msgstr ""
 
@@ -7636,84 +7684,88 @@
 msgid "Links to related SVN commits"
 msgstr ""
 
-#: utils/fixscripts/populate_template_project.php:40
+#: utils/fixscripts/populate_template_project.php:69
 #, php-format
 msgid "R%d: %s"
 msgstr ""
 
-#: utils/fixscripts/populate_template_project.php:54
+#: utils/fixscripts/populate_template_project.php:83
 msgid "Error creating ArtifactTypes object"
 msgstr ""
 
-#: utils/fixscripts/populate_template_project.php:59
-#: utils/fixscripts/populate_template_project.php:65
+#: utils/fixscripts/populate_template_project.php:88
+#: utils/fixscripts/populate_template_project.php:94
 #, php-format
 msgid "ATS%d: %s"
 msgstr ""
 
-#: utils/fixscripts/populate_template_project.php:74
+#: utils/fixscripts/populate_template_project.php:103
 msgid "Open-Discussion"
 msgstr ""
 
-#: utils/fixscripts/populate_template_project.php:74
+#: utils/fixscripts/populate_template_project.php:103
 msgid "General Discussion"
 msgstr ""
 
-#: utils/fixscripts/populate_template_project.php:75
-#: utils/fixscripts/populate_template_project.php:82
-#: utils/fixscripts/populate_template_project.php:89
+#: utils/fixscripts/populate_template_project.php:104
+#: utils/fixscripts/populate_template_project.php:111
+#: utils/fixscripts/populate_template_project.php:118
 #, php-format
 msgid "F%d: %s"
 msgstr ""
 
-#: utils/fixscripts/populate_template_project.php:81
+#: utils/fixscripts/populate_template_project.php:110
 msgid "Get Public Help"
 msgstr ""
 
-#: utils/fixscripts/populate_template_project.php:88
+#: utils/fixscripts/populate_template_project.php:117
 msgid "Developers-Discussion"
 msgstr ""
 
-#: utils/fixscripts/populate_template_project.php:88
+#: utils/fixscripts/populate_template_project.php:117
 msgid "Project Developer Discussion"
 msgstr ""
 
-#: utils/fixscripts/populate_template_project.php:98
+#: utils/fixscripts/populate_template_project.php:127
 msgid "Uncategorized Submissions"
 msgstr ""
 
-#: utils/fixscripts/populate_template_project.php:99
+#: utils/fixscripts/populate_template_project.php:128
 #, php-format
 msgid "DG: %s"
 msgstr ""
 
-#: utils/fixscripts/populate_template_project.php:109
+#: utils/fixscripts/populate_template_project.php:138
 #, php-format
 msgid "FRSP: %s"
 msgstr ""
 
-#: utils/fixscripts/populate_template_project.php:118
+#: utils/fixscripts/populate_template_project.php:147
 msgid "To Do"
 msgstr ""
 
-#: utils/fixscripts/populate_template_project.php:118
+#: utils/fixscripts/populate_template_project.php:147
 msgid "Things We Have To Do"
 msgstr ""
 
-#: utils/fixscripts/populate_template_project.php:119
-#: utils/fixscripts/populate_template_project.php:126
+#: utils/fixscripts/populate_template_project.php:148
+#: utils/fixscripts/populate_template_project.php:155
 #, php-format
 msgid "PG%d: %s"
 msgstr ""
 
-#: utils/fixscripts/populate_template_project.php:125
+#: utils/fixscripts/populate_template_project.php:154
 msgid "Next Release"
 msgstr ""
 
-#: utils/fixscripts/populate_template_project.php:125
+#: utils/fixscripts/populate_template_project.php:154
 msgid "Items For Our Next Release"
 msgstr ""
 
+#: utils/fixscripts/populate_template_project.php:225
+msgid "Discussion"
+msgstr ""
+
 #: www/404.php:26
 msgid "Requested Page not Found (Error 404)"
 msgstr ""
@@ -7944,7 +7996,7 @@
 msgstr ""
 
 #: www/account/index.php:101 www/account/index.php:106
-#: www/include/html.php:932
+#: www/include/html.php:934
 msgid "Account Maintenance"
 msgstr ""
 
@@ -8412,35 +8464,35 @@
 "activated for normal logins."
 msgstr ""
 
-#: www/activity/index.php:89 www/project/stats/index.php:89
+#: www/activity/index.php:68 www/project/stats/index.php:89
 msgid "Statistics"
 msgstr ""
 
-#: www/activity/index.php:91 www/project/stats/index.php:91
+#: www/activity/index.php:70 www/project/stats/index.php:91
 msgid "-tooltip:stats"
 msgstr ""
 
-#: www/activity/index.php:105
+#: www/activity/index.php:85
 msgid "Forum Post"
 msgstr ""
 
-#: www/activity/index.php:110
+#: www/activity/index.php:90
 msgid "Tracker Opened"
 msgstr ""
 
-#: www/activity/index.php:112
+#: www/activity/index.php:92
 msgid "Tracker Closed"
 msgstr ""
 
-#: www/activity/index.php:127 www/activity/index.php:304
+#: www/activity/index.php:107 www/activity/index.php:283
 msgid "FRS Release"
 msgstr ""
 
-#: www/activity/index.php:168
+#: www/activity/index.php:148
 msgid "Invalid Data Passed to query"
 msgstr ""
 
-#: www/activity/index.php:180 www/frs/reporting/downloads.php:96
+#: www/activity/index.php:160 www/frs/reporting/downloads.php:96
 #: www/project/stats/index.php:111 www/reporting/groupadded.php:61
 #: www/reporting/groupcum.php:60 www/reporting/projectact.php:65
 #: www/reporting/projecttime.php:76 www/reporting/siteact.php:65
@@ -8451,7 +8503,7 @@
 msgid "Start"
 msgstr ""
 
-#: www/activity/index.php:181 www/frs/reporting/downloads.php:98
+#: www/activity/index.php:161 www/frs/reporting/downloads.php:98
 #: www/project/stats/index.php:112 www/reporting/groupadded.php:62
 #: www/reporting/groupcum.php:61 www/reporting/projectact.php:66
 #: www/reporting/projecttime.php:77 www/reporting/siteact.php:66
@@ -8462,46 +8514,46 @@
 msgid "End"
 msgstr ""
 
-#: www/activity/index.php:197 www/activity/index.php:260
+#: www/activity/index.php:175 www/activity/index.php:238
 msgid "No Activity Found"
 msgstr ""
 
-#: www/activity/index.php:264 www/reporting/projecttime.php:89
+#: www/activity/index.php:242 www/reporting/projecttime.php:89
 #: www/reporting/sitetime.php:88 www/reporting/sitetimebar.php:90
 msgid "Time"
 msgstr ""
 
-#: www/activity/index.php:266 www/pm/include/ProjectTaskHTML.class.php:154
+#: www/activity/index.php:244 www/pm/include/ProjectTaskHTML.class.php:154
 #: www/project/admin/project_admin_utils.php:147
 #: www/tracker/include/ArtifactHtml.class.php:47
 #: www/tracker/include/ArtifactTypeHtml.class.php:202
 msgid "By"
 msgstr ""
 
-#: www/activity/index.php:289
+#: www/activity/index.php:268
 msgid "Commit for Tracker Item"
 msgstr ""
 
-#: www/activity/index.php:294 www/activity/index.php:299
+#: www/activity/index.php:273 www/activity/index.php:278
 #: www/tracker/taskmgr.php:103 www/tracker/taskmgr.php:157
-#: www/tracker/tracker.php:314
+#: www/tracker/tracker.php:321
 msgid "Tracker Item"
 msgstr ""
 
-#: www/activity/index.php:294 www/stats/site_stats_utils.php:288
+#: www/activity/index.php:273 www/stats/site_stats_utils.php:288
 #: www/stats/site_stats_utils.php:290 www/stats/site_stats_utils.php:292
 #: www/stats/site_stats_utils.php:294 www/stats/site_stats_utils.php:298
 msgid "Opened"
 msgstr ""
 
-#: www/activity/index.php:299 www/reporting/usersummary.php:55
+#: www/activity/index.php:278 www/reporting/usersummary.php:55
 #: www/stats/site_stats_utils.php:289 www/stats/site_stats_utils.php:291
 #: www/stats/site_stats_utils.php:293 www/stats/site_stats_utils.php:295
 #: www/stats/site_stats_utils.php:299
 msgid "Closed"
 msgstr ""
 
-#: www/activity/index.php:309
+#: www/activity/index.php:288
 msgid "Forum Post "
 msgstr ""
 
@@ -8628,7 +8680,7 @@
 msgstr ""
 
 #: www/admin/approve-pending.php:161 www/admin/pending-news.php:152
-#: www/project/admin/users.php:262
+#: www/project/admin/users.php:263
 msgid "Reject"
 msgstr ""
 
@@ -8833,7 +8885,7 @@
 msgstr ""
 
 #: www/admin/globalroleedit.php:149 www/admin/search.php:90
-#: www/admin/unsubscribe.php:113 www/project/admin/users.php:314
+#: www/admin/unsubscribe.php:113 www/project/admin/users.php:315
 #: www/search/include/renderers/PeopleHtmlSearchRenderer.class.php:44
 #: www/top/topusers.php:63
 msgid "User name"
@@ -8874,7 +8926,7 @@
 msgstr ""
 
 #: www/admin/globalroleedit.php:254 www/admin/globalroleedit.php:256
-#: www/project/admin/users.php:452
+#: www/project/admin/users.php:453
 msgid "Delete role"
 msgstr ""
 
@@ -9023,7 +9075,7 @@
 msgid "Edit Role"
 msgstr ""
 
-#: www/admin/index.php:94 www/project/admin/users.php:477
+#: www/admin/index.php:94 www/project/admin/users.php:478
 msgid "Create Role"
 msgstr ""
 
@@ -9224,8 +9276,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:268
-#: www/tracker/browse.php:583 www/tracker/query.php:195
+#: www/tracker/admin/form-addcanned.php:41 www/tracker/browse.php:273
+#: www/tracker/browse.php:660 www/tracker/query.php:195
 msgid "ID"
 msgstr ""
 
@@ -9307,7 +9359,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:599 www/tracker/item.php:210
+#: www/tracker/browse.php:684 www/tracker/item.php:201
 msgid "Submitted by"
 msgstr ""
 
@@ -9321,11 +9373,11 @@
 
 #: www/admin/pending-news.php:155 www/my/diary.php:185
 #: www/news/admin/index.php:143 www/news/submit.php:150
-#: www/pm/browse_task.php:424 www/pm/include/ProjectView.class.php:295
-#: www/pm/include/ProjectView.class.php:299
-#: www/pm/include/ProjectView.class.php:303
-#: www/pm/include/ProjectView.class.php:308 www/pm/include/pm_columns.php:43
-#: www/pm/templates/detail_template.php:7 www/tracker/item.php:137
+#: www/pm/browse_task.php:424 www/pm/include/ProjectView.class.php:326
+#: www/pm/include/ProjectView.class.php:330
+#: www/pm/include/ProjectView.class.php:334
+#: www/pm/include/ProjectView.class.php:339 www/pm/include/pm_columns.php:43
+#: www/pm/templates/detail_template.php:7 www/tracker/item.php:128
 msgid "Details"
 msgstr ""
 
@@ -9379,9 +9431,9 @@
 msgstr ""
 
 #: www/admin/pluginman.php:119 www/people/people_utils.php:158
-#: www/people/people_utils.php:299 www/project/admin/users.php:316
-#: www/project/admin/users.php:406 www/project/admin/users.php:494
-#: www/project/admin/users.php:518
+#: 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
 msgid "Action"
 msgstr ""
 
@@ -10985,10 +11037,6 @@
 msgid "Quick Jump To..."
 msgstr ""
 
-#: www/include/Layout.class.php:1275
-msgid "Close"
-msgstr ""
-
 #: www/include/Layout.class.php:1277
 msgid "Maximise"
 msgstr ""
@@ -11330,79 +11378,79 @@
 msgid "Forge Help Facility: %s"
 msgstr ""
 
-#: www/include/html.php:355 www/include/html.php:488 www/include/html.php:750
+#: www/include/html.php:355 www/include/html.php:488 www/include/html.php:752
 #: www/pm/browse_task.php:550 www/pm/browse_task.php:575
-#: www/pm/browse_task.php:586 www/tracker/browse.php:745
-#: www/tracker/browse.php:753 www/tracker/browse.php:762
+#: www/pm/browse_task.php:586 www/tracker/browse.php:843
+#: www/tracker/browse.php:851 www/tracker/browse.php:860
 msgid "No Change"
 msgstr ""
 
-#: www/include/html.php:753
+#: www/include/html.php:755
 msgid "Lowest"
 msgstr ""
 
-#: www/include/html.php:757
+#: www/include/html.php:759
 msgid "Highest"
 msgstr ""
 
-#: www/include/html.php:850
+#: www/include/html.php:852
 #, php-format
 msgid "Project access problem: %s"
 msgstr ""
 
-#: www/include/html.php:852
+#: www/include/html.php:854
 #, php-format
 msgid "Project Problem: %s"
 msgstr ""
 
-#: www/include/html.php:905 www/my/bookmark_add.php:28
+#: www/include/html.php:907 www/my/bookmark_add.php:28
 msgid "My Personal Page"
 msgstr ""
 
-#: www/include/html.php:907 www/themes/evolvis/Theme.class.php:121
+#: www/include/html.php:909 www/themes/evolvis/Theme.class.php:121
 msgid "Manage projects, assigned tasks, bugs, etc."
 msgstr ""
 
-#: www/include/html.php:915
+#: www/include/html.php:917
 msgid ""
 "Select widgets to add to the User Summary page from a list of available "
 "widgets"
 msgstr ""
 
-#: www/include/html.php:919 www/include/project_home.php:82
+#: www/include/html.php:921 www/include/project_home.php:82
 msgid "Customise number and sizes of columns to use for widgets"
 msgstr ""
 
-#: www/include/html.php:922
+#: www/include/html.php:924
 msgid "Trackers dashboard"
 msgstr ""
 
-#: www/include/html.php:924
+#: www/include/html.php:926
 msgid "Have an overview about all tracker items related to you"
 msgstr ""
 
-#: www/include/html.php:927
+#: www/include/html.php:929
 msgid "Diary & Notes"
 msgstr ""
 
-#: www/include/html.php:929
+#: www/include/html.php:931
 msgid "-tooltip:diary-and-notes"
 msgstr ""
 
-#: www/include/html.php:934
+#: www/include/html.php:936
 msgid "Change the password, SSH keys; configure account settings"
 msgstr ""
 
-#: www/include/html.php:938 www/register/index.php:166
+#: www/include/html.php:940 www/register/index.php:166
 #: www/themes/evolvis/Theme.class.php:536
 msgid "Register Project"
 msgstr ""
 
-#: www/include/html.php:940 www/themes/evolvis/Theme.class.php:537
+#: www/include/html.php:942 www/themes/evolvis/Theme.class.php:537
 msgid "Register a new Project on the forge"
 msgstr ""
 
-#: www/include/html.php:1279 www/notepad.php:48
+#: www/include/html.php:1281 www/notepad.php:48
 msgid "FusionForge Notepad"
 msgstr ""
 
@@ -11420,7 +11468,7 @@
 "widgets"
 msgstr ""
 
-#: www/include/tool_reports.php:65 www/pm/include/ProjectView.class.php:356
+#: www/include/tool_reports.php:65 www/pm/include/ProjectView.class.php:387
 #: www/pm/index.php:102 www/reporting/usersummary.php:54
 #: www/tracker/ind.php:63
 msgid "Open"
@@ -11690,7 +11738,7 @@
 msgstr ""
 
 #: www/index_std.php:47
-msgid "New Funky Theme (Capgemini)."
+msgid "New Evolvis Theme."
 msgstr ""
 
 #: www/index_std.php:48
@@ -11746,6 +11794,20 @@
 msgid "Reorganised, modular Apache configuration."
 msgstr ""
 
+#: www/index_std.php:59
+msgid ""
+"Many improvements to the trackers: configurable display, workflow "
+"management, links between artifacts, better searches, and more"
+msgstr ""
+
+#: www/index_std.php:60
+msgid "Rewritten SCM subsystem, with new plugins for Bazaar, Darcs and Git"
+msgstr ""
+
+#: www/index_std.php:61
+msgid "Various new plugins: projectlabels, globalsearch, extratabs"
+msgstr ""
+
 #: www/mail/admin/deletelist.php:58
 msgid "Mailing List Successfully deleted"
 msgstr ""
@@ -11876,16 +11938,16 @@
 #: www/my/dashboard.php:69 www/pm/browse_task.php:218
 #: www/pm/browse_task.php:412 www/pm/browse_task.php:576
 #: 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:269
-#: www/tracker/browse.php:595 www/tracker/browse.php:749
-#: www/tracker/item.php:162 www/tracker/query.php:196
+#: www/tracker/admin/form-customizelist.php:45 www/tracker/browse.php:274
+#: www/tracker/browse.php:678 www/tracker/browse.php:847
+#: www/tracker/item.php:153 www/tracker/query.php:196
 msgid "Priority"
 msgstr ""
 
 #: www/my/dashboard.php:71 www/pm/browse_task.php:410
 #: www/pm/browse_task.php:583 www/pm/templates/detail_template.php:30
-#: www/tracker/browse.php:597 www/tracker/browse.php:752
-#: www/tracker/item.php:176
+#: www/tracker/browse.php:681 www/tracker/browse.php:850
+#: www/tracker/item.php:167
 msgid "Assigned to"
 msgstr ""
 
@@ -12122,7 +12184,7 @@
 msgid "No News Items Found"
 msgstr ""
 
-#: www/news/news_utils.php:185 www/pm/include/ProjectView.class.php:320
+#: www/news/news_utils.php:185 www/pm/include/ProjectView.class.php:351
 #: www/survey/include/SurveyHTML.class.php:652
 msgid "Comments"
 msgstr ""
@@ -12759,8 +12821,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:271
-#: www/tracker/browse.php:589 www/tracker/query.php:198
+#: www/tracker/admin/form-customizelist.php:43 www/tracker/browse.php:276
+#: www/tracker/browse.php:669 www/tracker/query.php:198
 msgid "Open Date"
 msgstr ""
 
@@ -12947,14 +13009,14 @@
 #: www/pm/browse_task.php:194 www/pm/browse_task.php:205
 #: 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:256
-#: www/tracker/browse.php:335 www/tracker/browse.php:342
+#: www/reporting/usersummary.php:53 www/tracker/browse.php:261
+#: www/tracker/browse.php:340 www/tracker/browse.php:347
 #: www/tracker/query.php:344
 msgid "Any"
 msgstr ""
 
 #: www/pm/browse_task.php:196 www/pm/browse_task.php:547
-#: www/pm/ganttpage.php:58 www/tracker/browse.php:261
+#: www/pm/ganttpage.php:58 www/tracker/browse.php:266
 msgid "Unassigned"
 msgstr ""
 
@@ -12985,7 +13047,7 @@
 msgstr ""
 
 #: www/pm/browse_task.php:295 www/pm/ganttpage.php:155
-#: www/tracker/browse.php:274 www/tracker/browse.php:442
+#: www/tracker/browse.php:279 www/tracker/browse.php:516
 #: www/tracker/query.php:201 www/tracker/query.php:341
 msgid "Assignee"
 msgstr ""
@@ -13014,7 +13076,7 @@
 msgid "Add tasks using the link above"
 msgstr ""
 
-#: www/pm/browse_task.php:351 www/tracker/browse.php:475
+#: www/pm/browse_task.php:351 www/tracker/browse.php:549
 #, php-format
 msgid "Displaying %d results."
 msgstr ""
@@ -13061,7 +13123,7 @@
 msgid "Sub-Project"
 msgstr ""
 
-#: www/pm/browse_task.php:531 www/tracker/browse.php:706
+#: www/pm/browse_task.php:531 www/tracker/browse.php:804
 msgid "Mass Update"
 msgstr ""
 
@@ -13073,7 +13135,7 @@
 msgid "Clear all"
 msgstr ""
 
-#: www/pm/browse_task.php:570 www/tracker/browse.php:728
+#: www/pm/browse_task.php:570 www/tracker/browse.php:826
 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 "
@@ -13084,7 +13146,7 @@
 msgid "Subproject"
 msgstr ""
 
-#: www/pm/browse_task.php:592 www/tracker/browse.php:769
+#: www/pm/browse_task.php:592 www/tracker/browse.php:867
 msgid "Mass update"
 msgstr ""
 
@@ -13263,20 +13325,15 @@
 msgid "Yes, I want to delete this task"
 msgstr ""
 
-#: www/pm/downloadcsv.php:96 www/pm/gantt.php:35 www/tracker/taskmgr.php:62
+#: www/pm/downloadcsv.php:96 www/pm/gantt.php:31 www/tracker/taskmgr.php:62
 msgid "Could Not Get ProjectTaskFactory"
 msgstr ""
 
-#: www/pm/gantt.php:25 www/pm/ganttofuser.php:33
-#: www/survey/admin/graphs.php:44
-msgid "Package JPGraph not installed"
-msgstr ""
-
-#: www/pm/gantt.php:37
+#: www/pm/gantt.php:33
 msgid "Error getting PTF: "
 msgstr ""
 
-#: www/pm/gantt.php:51
+#: www/pm/gantt.php:47
 msgid "Error in PTF: "
 msgstr ""
 
@@ -13381,30 +13438,30 @@
 msgid "No Changes Have Been Made"
 msgstr ""
 
-#: www/pm/include/ProjectView.class.php:328
+#: www/pm/include/ProjectView.class.php:359
 msgid "No comments have been written."
 msgstr ""
 
-#: www/pm/include/ProjectView.class.php:444
+#: www/pm/include/ProjectView.class.php:475
 msgid "View Calendar"
 msgstr ""
 
-#: www/pm/include/ProjectView.class.php:509
+#: www/pm/include/ProjectView.class.php:540
 #: www/tracker/admin/form-addextrafield.php:60
 msgid "Copy"
 msgstr ""
 
-#: www/pm/include/ProjectView.class.php:522
-#: www/pm/include/ProjectView.class.php:524
+#: www/pm/include/ProjectView.class.php:553
+#: www/pm/include/ProjectView.class.php:555
 msgid "Subscribe to task"
 msgstr ""
 
-#: www/pm/include/ProjectView.class.php:534
-#: www/pm/include/ProjectView.class.php:536
+#: www/pm/include/ProjectView.class.php:565
+#: www/pm/include/ProjectView.class.php:567
 msgid "Delete this task"
 msgstr ""
 
-#: www/pm/include/ProjectView.class.php:563
+#: www/pm/include/ProjectView.class.php:594
 msgid "Add category"
 msgstr ""
 
@@ -13444,7 +13501,7 @@
 msgid "Choose a Subproject and you can browse/edit/add tasks to it."
 msgstr ""
 
-#: www/pm/pm_task.php:81 www/pm/templates/time_tracking.php:1
+#: www/pm/pm_task.php:84 www/pm/templates/time_tracking.php:1
 #: www/reporting/timeadd.php:102
 msgid "Time tracking"
 msgstr ""
@@ -13585,7 +13642,7 @@
 msgid "Task Successfully Deleted"
 msgstr ""
 
-#: www/pm/templates/detail_template.php:69 www/tracker/item.php:236
+#: www/pm/templates/detail_template.php:69 www/tracker/item.php:227
 msgid "Permalink"
 msgstr ""
 
@@ -13721,8 +13778,8 @@
 msgid "ERROR - file must be > 20 bytes and < 256000 bytes in length"
 msgstr ""
 
-#: www/project/admin/editimages.php:59 www/tracker/tracker.php:144
-#: www/tracker/tracker.php:393
+#: www/project/admin/editimages.php:59 www/tracker/tracker.php:151
+#: www/tracker/tracker.php:400
 msgid "Invalid filename"
 msgstr ""
 
@@ -13914,7 +13971,7 @@
 msgid "(send on all updates)"
 msgstr ""
 
-#: www/project/admin/massadd.php:67 www/project/admin/users.php:297
+#: www/project/admin/massadd.php:67 www/project/admin/users.php:298
 msgid "Add Users From List"
 msgstr ""
 
@@ -14076,7 +14133,7 @@
 msgid "Could Not Get RoleObserver"
 msgstr ""
 
-#: www/project/admin/roleedit.php:141 www/project/admin/users.php:485
+#: www/project/admin/roleedit.php:141 www/project/admin/users.php:486
 msgid "Edit Observer"
 msgstr ""
 
@@ -14198,7 +14255,7 @@
 msgid "Role not selected"
 msgstr ""
 
-#: www/project/admin/users.php:114 www/project/admin/users.php:173
+#: www/project/admin/users.php:114 www/project/admin/users.php:174
 msgid "Member Added Successfully"
 msgstr ""
 
@@ -14210,70 +14267,70 @@
 msgid "Member Updated Successfully"
 msgstr ""
 
-#: www/project/admin/users.php:169 www/project/admin/users.php:183
+#: www/project/admin/users.php:169 www/project/admin/users.php:184
 msgid "Error Getting GroupJoinRequest"
 msgstr ""
 
-#: www/project/admin/users.php:200
+#: www/project/admin/users.php:201
 msgid "Role linked successfully"
 msgstr ""
 
-#: www/project/admin/users.php:215
+#: www/project/admin/users.php:216
 msgid "Role unlinked successfully"
 msgstr ""
 
-#: www/project/admin/users.php:226
+#: www/project/admin/users.php:227
 #, php-format
 msgid "Members of %s"
 msgstr ""
 
-#: www/project/admin/users.php:238
+#: www/project/admin/users.php:239
 msgid "Pending Membership Requests"
 msgstr ""
 
-#: www/project/admin/users.php:260
+#: www/project/admin/users.php:261
 msgid "Accept"
 msgstr ""
 
-#: www/project/admin/users.php:271 www/project/admin/users.php:273
-#: www/project/admin/users.php:292
+#: www/project/admin/users.php:272 www/project/admin/users.php:274
+#: www/project/admin/users.php:293
 msgid "Add Member"
 msgstr ""
 
-#: www/project/admin/users.php:303
+#: www/project/admin/users.php:304
 msgid "Current Project Members"
 msgstr ""
 
-#: www/project/admin/users.php:372
+#: www/project/admin/users.php:373
 msgid "Grant extra role"
 msgstr ""
 
-#: www/project/admin/users.php:392 www/tracker/admin/form-workflow.php:119
+#: www/project/admin/users.php:393 www/tracker/admin/form-workflow.php:119
 msgid "Edit Roles"
 msgstr ""
 
-#: www/project/admin/users.php:404 www/project/admin/users.php:493
-#: www/project/admin/users.php:517
+#: www/project/admin/users.php:405 www/project/admin/users.php:494
+#: www/project/admin/users.php:518
 msgid "Role name"
 msgstr ""
 
-#: www/project/admin/users.php:434
+#: www/project/admin/users.php:435
 msgid "Edit Permissions"
 msgstr ""
 
-#: www/project/admin/users.php:491
+#: www/project/admin/users.php:492
 msgid "Currently used external roles"
 msgstr ""
 
-#: www/project/admin/users.php:506
+#: www/project/admin/users.php:507
 msgid "Unlink Role"
 msgstr ""
 
-#: www/project/admin/users.php:515
+#: www/project/admin/users.php:516
 msgid "Available external roles"
 msgstr ""
 
-#: www/project/admin/users.php:536
+#: www/project/admin/users.php:537
 msgid "Link external role"
 msgstr ""
 
@@ -15694,7 +15751,7 @@
 msgid "Paste the Code Here"
 msgstr ""
 
-#: www/soap/index.php:163
+#: www/soap/index.php:164
 msgid "en_US"
 msgstr ""
 
@@ -16717,17 +16774,17 @@
 msgid "Submitted By"
 msgstr ""
 
-#: www/tracker/admin/form-customizelist.php:48 www/tracker/browse.php:272
-#: www/tracker/browse.php:591 www/tracker/query.php:199
+#: www/tracker/admin/form-customizelist.php:48 www/tracker/browse.php:277
+#: www/tracker/browse.php:672 www/tracker/query.php:199
 msgid "Close Date"
 msgstr ""
 
-#: www/tracker/admin/form-customizelist.php:49 www/tracker/item.php:321
-#: www/tracker/item.php:332 www/tracker/query.php:383
+#: www/tracker/admin/form-customizelist.php:49 www/tracker/item.php:312
+#: www/tracker/item.php:323 www/tracker/query.php:383
 msgid "Detailed description"
 msgstr ""
 
-#: www/tracker/admin/form-customizelist.php:50 www/tracker/browse.php:601
+#: www/tracker/admin/form-customizelist.php:50 www/tracker/browse.php:687
 msgid "Related tasks"
 msgstr ""
 
@@ -16980,7 +17037,7 @@
 msgstr ""
 
 #: www/tracker/admin/index.php:68 www/tracker/admin/updates.php:170
-#: www/tracker/download.php:43 www/tracker/tracker.php:46
+#: www/tracker/download.php:43 www/tracker/tracker.php:53
 msgid "ArtifactType could not be created"
 msgstr ""
 
@@ -17162,125 +17219,148 @@
 msgid "Element deleted"
 msgstr ""
 
-#: www/tracker/browse.php:156
+#: www/tracker/browse.php:158
 msgid "Query Name"
 msgstr ""
 
-#: www/tracker/browse.php:160 www/tracker/browse.php:420
+#: www/tracker/browse.php:162 www/tracker/browse.php:494
 msgid "Load"
 msgstr ""
 
-#: www/tracker/browse.php:172
+#: www/tracker/browse.php:174
 msgid "Deleted query successful."
 msgstr ""
 
-#: www/tracker/browse.php:212
+#: www/tracker/browse.php:217
 #, php-format
 msgid "Saved query with name \"%s\"."
 msgstr ""
 
-#: www/tracker/browse.php:273 www/tracker/query.php:200
+#: www/tracker/browse.php:278 www/tracker/query.php:200
 msgid "Submitter"
 msgstr ""
 
-#: www/tracker/browse.php:290 www/tracker/query.php:217
+#: www/tracker/browse.php:295 www/tracker/query.php:217
 msgid "Ascending"
 msgstr ""
 
-#: www/tracker/browse.php:291 www/tracker/query.php:218
+#: www/tracker/browse.php:296 www/tracker/query.php:218
 msgid "Descending"
 msgstr ""
 
-#: www/tracker/browse.php:301 www/tracker/query.php:229
+#: www/tracker/browse.php:306 www/tracker/query.php:229
 msgid "Any changes"
 msgstr ""
 
-#: www/tracker/browse.php:302 www/tracker/query.php:230
+#: www/tracker/browse.php:307 www/tracker/query.php:230
 msgid "Last 24H"
 msgstr ""
 
-#: www/tracker/browse.php:303 www/tracker/query.php:231
+#: www/tracker/browse.php:308 www/tracker/query.php:231
 msgid "Last 7days"
 msgstr ""
 
-#: www/tracker/browse.php:304 www/tracker/query.php:232
+#: www/tracker/browse.php:309 www/tracker/query.php:232
 msgid "Last 2weeks"
 msgstr ""
 
-#: www/tracker/browse.php:305 www/tracker/query.php:233
+#: www/tracker/browse.php:310 www/tracker/query.php:233
 msgid "Last 1month"
 msgstr ""
 
-#: www/tracker/browse.php:360
+#: www/tracker/browse.php:369
+msgid "Power Query [OLD]"
+msgstr ""
+
+#: www/tracker/browse.php:421
+msgid "Power Query"
+msgstr ""
+
+#: www/tracker/browse.php:423 www/tracker/browse.php:428
+#: www/tracker/query.php:252 www/tracker/query.php:256
+msgid "Build Query"
+msgstr ""
+
+#: www/tracker/browse.php:434
 msgid "Advanced queries"
 msgstr ""
 
-#: www/tracker/browse.php:380
+#: www/tracker/browse.php:454
 msgid "Select Query"
 msgstr ""
 
-#: www/tracker/browse.php:382
+#: www/tracker/browse.php:456
 msgid "Select One"
 msgstr ""
 
-#: www/tracker/browse.php:393
+#: www/tracker/browse.php:467
 msgid "Tracker Queries"
 msgstr ""
 
-#: www/tracker/browse.php:410
+#: www/tracker/browse.php:484
 msgid "Private Queries"
 msgstr ""
 
-#: www/tracker/browse.php:435
+#: www/tracker/browse.php:509
 msgid "Simple Filtering and Sorting"
 msgstr ""
 
-#: www/tracker/browse.php:464 www/tracker/query.php:390
+#: www/tracker/browse.php:538 www/tracker/query.php:390
 msgid "Order by"
 msgstr ""
 
-#: www/tracker/browse.php:467
+#: www/tracker/browse.php:541
 msgid "Quick Browse"
 msgstr ""
 
-#: www/tracker/browse.php:492
+#: www/tracker/browse.php:566
 msgid "Default"
 msgstr ""
 
-#: www/tracker/browse.php:493
+#: www/tracker/browse.php:567
 msgid ""
 "Viewing only opened records by default, use 'Advanced queries' or 'Simple "
 "Filtering and Sorting' to change."
 msgstr ""
 
-#: www/tracker/browse.php:724
+#: www/tracker/browse.php:656
+#, php-format
+msgid "unknown #%d"
+msgstr ""
+
+#: www/tracker/browse.php:690
+#, php-format
+msgid "unknown (\"%s\")"
+msgstr ""
+
+#: www/tracker/browse.php:822
 msgid "Check  all"
 msgstr ""
 
-#: www/tracker/browse.php:726
+#: www/tracker/browse.php:824
 msgid "Clear  all"
 msgstr ""
 
-#: www/tracker/browse.php:753
+#: www/tracker/browse.php:851
 #: www/tracker/include/ArtifactTypeHtml.class.php:656
 #: www/tracker/include/ArtifactTypeHtml.class.php:688
 msgid "Nobody"
 msgstr ""
 
-#: www/tracker/browse.php:757
+#: www/tracker/browse.php:855
 msgid "Canned Response"
 msgstr ""
 
-#: www/tracker/browse.php:774 www/tracker/browse.php:776
+#: www/tracker/browse.php:872 www/tracker/browse.php:874
 msgid "Caption"
 msgstr ""
 
-#: www/tracker/browse.php:779
+#: www/tracker/browse.php:877
 #, php-format
 msgid "* Denotes requests > %1$s Days Old"
 msgstr ""
 
-#: www/tracker/browse.php:789
+#: www/tracker/browse.php:887
 msgid "No items found"
 msgstr ""
 
@@ -17301,10 +17381,10 @@
 msgstr ""
 
 #: www/tracker/download.php:51 www/tracker/taskmgr.php:36
-#: www/tracker/tracker.php:87 www/tracker/tracker.php:283
-#: www/tracker/tracker.php:473 www/tracker/tracker.php:490
-#: www/tracker/tracker.php:519 www/tracker/tracker.php:540
-#: www/tracker/tracker.php:589
+#: www/tracker/tracker.php:94 www/tracker/tracker.php:290
+#: www/tracker/tracker.php:480 www/tracker/tracker.php:497
+#: www/tracker/tracker.php:526 www/tracker/tracker.php:547
+#: www/tracker/tracker.php:596
 msgid "Artifact Could Not Be Created"
 msgstr ""
 
@@ -17480,92 +17560,92 @@
 msgid "Could Not Get Artifact Object"
 msgstr ""
 
-#: www/tracker/item.php:83
+#: www/tracker/item.php:84
 #, php-format
 msgid "%1$s %2$s: Submit New"
 msgstr ""
 
-#: www/tracker/item.php:198
+#: www/tracker/item.php:189
 msgid "New submission"
 msgstr ""
 
-#: www/tracker/item.php:201
+#: www/tracker/item.php:192
 msgid "Date Submitted"
 msgstr ""
 
-#: www/tracker/item.php:206
+#: www/tracker/item.php:197
 msgid "Date Closed"
 msgstr ""
 
-#: www/tracker/item.php:219
+#: www/tracker/item.php:210
 msgid "Data Type"
 msgstr ""
 
-#: www/tracker/item.php:246
+#: www/tracker/item.php:237
 msgid "Stop monitor"
 msgstr ""
 
-#: www/tracker/item.php:274 www/tracker/item.php:396 www/tracker/query.php:265
+#: www/tracker/item.php:265 www/tracker/item.php:387 www/tracker/query.php:265
 msgid "Save Changes"
 msgstr ""
 
-#: www/tracker/item.php:281
+#: www/tracker/item.php:272
 msgid "Debugging Functions"
 msgstr ""
 
-#: www/tracker/item.php:298
+#: www/tracker/item.php:289
 msgid "Item Description"
 msgstr ""
 
-#: www/tracker/item.php:340 www/tracker/query.php:385
+#: www/tracker/item.php:331 www/tracker/query.php:385
 msgid "Followups"
 msgstr ""
 
-#: www/tracker/item.php:341
+#: www/tracker/item.php:332
 msgid "No Followups Have Been Posted"
 msgstr ""
 
-#: www/tracker/item.php:355
+#: www/tracker/item.php:346
 msgid "Attach files to this submission"
 msgstr ""
 
-#: www/tracker/item.php:363
+#: www/tracker/item.php:354
 msgid "Create an attachment"
 msgstr ""
 
-#: www/tracker/item.php:378
+#: www/tracker/item.php:369
 msgid "OR use a canned response"
 msgstr ""
 
-#: www/tracker/item.php:393
+#: www/tracker/item.php:384
 msgid "indicates required fields."
 msgstr ""
 
-#: www/tracker/item.php:403
+#: www/tracker/item.php:394
 msgid "Item Relationships"
 msgstr ""
 
-#: www/tracker/item.php:412
+#: www/tracker/item.php:403
 msgid "You do not have sufficient privileges to view Task relations."
 msgstr ""
 
-#: www/tracker/item.php:414
+#: www/tracker/item.php:405
 msgid "This project does not use Tasks."
 msgstr ""
 
-#: www/tracker/item.php:420
+#: www/tracker/item.php:411
 msgid "Build Task Relation"
 msgstr ""
 
-#: www/tracker/item.php:421
+#: www/tracker/item.php:412
 msgid "Related Tasks"
 msgstr ""
 
-#: www/tracker/item.php:443
+#: www/tracker/item.php:434
 msgid "Instructions"
 msgstr ""
 
-#: www/tracker/item.php:446
+#: www/tracker/item.php:437
 msgid "DO NOT enter passwords or confidential information in your message!"
 msgstr ""
 
@@ -17585,10 +17665,6 @@
 msgid "Missing Build Query Action"
 msgstr ""
 
-#: www/tracker/query.php:252 www/tracker/query.php:256
-msgid "Build Query"
-msgstr ""
-
 #: www/tracker/query.php:288 www/tracker/query.php:299
 msgid "Name and Save Query"
 msgstr ""
@@ -17655,7 +17731,7 @@
 msgstr ""
 
 #: www/tracker/reporting/trackeract_graph.php:49
-#: www/tracker/reporting/trackerpie_graph.php:63 www/tracker/tracker.php:296
+#: www/tracker/reporting/trackerpie_graph.php:63 www/tracker/tracker.php:303
 msgid "Error: "
 msgstr ""
 
@@ -17683,84 +17759,84 @@
 msgid "Create New Task"
 msgstr ""
 
-#: www/tracker/tracker.php:136 www/tracker/tracker.php:387
+#: www/tracker/tracker.php:143 www/tracker/tracker.php:394
 msgid "Could Not Create File Object"
 msgstr ""
 
-#: www/tracker/tracker.php:150
+#: www/tracker/tracker.php:157
 msgid "Could Not Attach File to Item: "
 msgstr ""
 
-#: www/tracker/tracker.php:155
+#: www/tracker/tracker.php:162
 #, php-format
 msgid "Item [#%d] successfully created"
 msgstr ""
 
-#: www/tracker/tracker.php:249
+#: www/tracker/tracker.php:256
 msgid "Updated Successfully"
 msgstr ""
 
-#: www/tracker/tracker.php:296
+#: www/tracker/tracker.php:303
 #, php-format
 msgid "Could not get Project Task for %d"
 msgstr ""
 
-#: www/tracker/tracker.php:324 www/tracker/tracker.php:343
+#: www/tracker/tracker.php:331 www/tracker/tracker.php:350
 msgid "Comment added"
 msgstr ""
 
-#: www/tracker/tracker.php:368
+#: www/tracker/tracker.php:375
 #, php-format
 msgid "ERROR: Skipping attachment %d: file is too large."
 msgstr ""
 
-#: www/tracker/tracker.php:372
+#: www/tracker/tracker.php:379
 #, php-format
 msgid "ERROR: Skipping attachment %d: transfer interrupted."
 msgstr ""
 
-#: www/tracker/tracker.php:396
+#: www/tracker/tracker.php:403
 msgid "File Upload: Error"
 msgstr ""
 
-#: www/tracker/tracker.php:399
+#: www/tracker/tracker.php:406
 msgid "File Upload: Successful"
 msgstr ""
 
-#: www/tracker/tracker.php:416
+#: www/tracker/tracker.php:423
 msgid "Could Not Create File Object::"
 msgstr ""
 
-#: www/tracker/tracker.php:421
+#: www/tracker/tracker.php:428
 msgid "File Delete:"
 msgstr ""
 
-#: www/tracker/tracker.php:424
+#: www/tracker/tracker.php:431
 msgid "File Delete: Successful"
 msgstr ""
 
-#: www/tracker/tracker.php:436
+#: www/tracker/tracker.php:443
 #, php-format
 msgid "Item [#%d] successfully updated"
 msgstr ""
 
-#: www/tracker/tracker.php:478 www/tracker/tracker.php:495
+#: www/tracker/tracker.php:485 www/tracker/tracker.php:502
 msgid "Monitoring Started"
 msgstr ""
 
-#: www/tracker/tracker.php:480 www/tracker/tracker.php:497
+#: www/tracker/tracker.php:487 www/tracker/tracker.php:504
 msgid "Monitoring Deactivated"
 msgstr ""
 
-#: www/tracker/tracker.php:545
+#: www/tracker/tracker.php:552
 msgid "Confirmation failed. Artifact not deleted"
 msgstr ""
 
-#: www/tracker/tracker.php:549
+#: www/tracker/tracker.php:556
 msgid "Artifact Delete Failed"
 msgstr ""
 
-#: www/tracker/tracker.php:551
+#: www/tracker/tracker.php:558
 msgid "Artifact Deleted Successfully"
 msgstr ""
 

Modified: branches/messer-51/src/univention/call_evolvis.sh
===================================================================
--- branches/messer-51/src/univention/call_evolvis.sh	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/univention/call_evolvis.sh	2012-01-19 15:25:17 UTC (rev 18052)
@@ -1,11 +1,12 @@
-#!/bin/sh
+#!/bin/mksh
 #-
 # root at ucs:/root/call_evolvis.sh
 
 #echo "DEBUG: '$1' '$2' '$3' '$4' '$5' '$6' '$7'"
 
 for system in forge1.domain.com forge2.domain.org …; do
-	ssh -Tl root $system /bin/sh <<EOF
-/bin/mksh /usr/share/gforge/cronjobs/ldap2psql.sh '$1' '$2' '$3' '$4' '$5' '$6' '$7'
-EOF
+	ssh -Tl root $system /bin/mksh /usr/share/gforge/cronjobs/ldap2psql.sh \
+	    "'${1//\'/\'\\\'\'}'" "'${2//\'/\'\\\'\'}'" "'${3//\'/\'\\\'\'}'" \
+	    "'${4//\'/\'\\\'\'}'" "'${5//\'/\'\\\'\'}'" "'${6//\'/\'\\\'\'}'" \
+	    "'${7//\'/\'\\\'\'}'"
 done

Modified: branches/messer-51/src/univention/ldap2psql.sh
===================================================================
--- branches/messer-51/src/univention/ldap2psql.sh	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/univention/ldap2psql.sh	2012-01-19 15:25:17 UTC (rev 18052)
@@ -1,4 +1,4 @@
-# Copyright © 2009, 2010, 2011
+# Copyright © 2009, 2010, 2011, 2012
 #	Thorsten Glaser <t.glaser at tarent.de>
 #
 # Provided that these terms and disclaimer and all copyright notices
@@ -62,9 +62,16 @@
 
 # check if user already exists in database
 user_id=0
-res=$(sudo -u postgres psql -d gforge -A -F = -P x -c \
-    "SELECT user_id, confirm_hash FROM users WHERE user_name=$Euid;" 2>&-)
-eval $res
+confirm_hash=
+sudo -u postgres psql -d gforge -A -F = -P x -c \
+    "SELECT user_id, confirm_hash FROM users WHERE user_name=$Euid;" \
+    2>/dev/null |&
+while IFS= read -pr line; do
+	[[ $line = @(user_id|confirm_hash)=* ]] || continue
+	k=${line%%=*}
+	v=${line#*=}
+	eval $k=\$v
+done
 
 if (( user_id )); then
 	# check if database is newer

Modified: branches/messer-51/src/utils/fixscripts/populate_template_project.php
===================================================================
--- branches/messer-51/src/utils/fixscripts/populate_template_project.php	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/utils/fixscripts/populate_template_project.php	2012-01-19 15:25:17 UTC (rev 18052)
@@ -2,6 +2,8 @@
 <?php
 /**
  * Copyright 2010 Roland Mas
+ * 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
@@ -21,7 +23,7 @@
 
 require (dirname(__FILE__).'/../www/env.inc.php');
 require_once $gfcommon.'include/pre.php';
-			 
+
 $err='';
 
 // Plugins subsystem
@@ -31,6 +33,33 @@
 setup_plugin_manager () ;
 session_set_admin () ;
 
+function usage($rc=1) {
+	echo "Usage:\n";
+	echo "\t.../populate_template_project.php 5\n";
+	echo "\t.../populate_template_project.php new unixname groupname\n";
+	echo "The first syntax populates an existing group, with its ID given.\n";
+	echo "The second syntax creates a new template froup.\n";
+	exit($rc);
+}
+
+function hasmailinglist($project, $listname) {
+	$mlFactory = new MailingListFactory($project);
+	if (!$mlFactory || !is_object($mlFactory) || $mlFactory->isError()) {
+		return false;
+	}
+	$mlArray = $mlFactory->getMailingLists();
+	if ($mlFactory->isError()) {
+		return false;
+	}
+	$listname = $project->getUnixName() . '-' . $listname;
+	foreach ($mlArray as $mlEntry) {
+		if ($mlEntry->getName() == $listname) {
+			return true;
+		}
+	}
+	return false;
+}
+
 function populateProject($project) {
 	db_begin();
 	$role = new Role($project);
@@ -92,7 +121,7 @@
 			return false;
 		}
 	}
-               
+
 	if (forge_get_config('use_docman')) {
 		$dg = new DocumentGroup($project);
 		if (!$dg->create(_('Uncategorized Submissions'))) {
@@ -134,16 +163,16 @@
 	$rl = RoleLoggedIn::getInstance() ;
 	$ra->linkProject ($project) ;
 	$rl->linkProject ($project) ;
-	
+
 	$ra->setSetting ('project_read', $project->getID(), 1) ;
 	$rl->setSetting ('project_read', $project->getID(), 1) ;
-	
+
 	$ra->setSetting ('frs', $project->getID(), 1) ;
 	$rl->setSetting ('frs', $project->getID(), 1) ;
-	
+
 	$ra->setSetting ('docman', $project->getID(), 1) ;
 	$rl->setSetting ('docman', $project->getID(), 1) ;
-	
+
 	$ff = new ForumFactory ($project) ;
 	foreach ($ff->getAllForumIds() as $fid) {
 		$f = forum_get_object ($fid) ;
@@ -185,12 +214,20 @@
 
 	if (forge_get_config('use_mail')) {
 		$mlist = new MailingList($project);
-		if (!$mlist->create('commits',_('Commits'),1,session_get_user()->getID())) {
+		if (!hasmailinglist($project, 'commits') &&
+		    !$mlist->create('commits',_('Commits'),1,session_get_user()->getID())) {
 			$project->setError(sprintf(_('ML: %s'),$mlist->getErrorMessage()));
 			db_rollback();
 			setup_gettext_from_context();
 			return false;
 		}
+		if (!hasmailinglist($project, 'discuss') &&
+		    !$mlist->create('discuss',_('Discussion'),1,session_get_user()->getID())) {
+			$project->setError(sprintf(_('ML: %s'),$mlist->getErrorMessage()));
+			db_rollback();
+			setup_gettext_from_context();
+			return false;
+		}
 	}
 	$project->normalizeAllRoles () ;
 
@@ -198,11 +235,52 @@
 
 	return true;
 }
- 
-$project = group_get_object(5);
 
-if (!populateProject($project)) {
-	echo "Error when populating template project!\n";
-	exit(1);
+if (count($argv) < 2) {
+	usage();
+} else if (in_array($argv[1], array('-h', '-?', '--help'))) {
+	usage(0);
+} else if (count($argv) == 2) {
+	if (!($gid = util_nat0($argv[1]))) {
+		usage();
+	}
+	if (!($project = group_get_object($gid))) {
+		printf("Group #%d not found!\n", $gid);
+		usage();
+	}
+	if (!populateProject($project)) {
+		printf("Error: could not populate new group: %s\n",
+		    $project->getErrorMessage());
+		exit(1);
+	}
+} else if (count($argv) == 4 && $argv[1] == "new") {
+	db_begin();
+	$project = new Group();
+	$desc = sprintf("Template project %s (%s) populated on %s",
+	    $argv[2], $argv[3], date("r"));
+	if (!$project->create(session_get_user(), $argv[3], $argv[2],
+	    $desc, $desc)) {
+		db_rollback();
+		printf("Error: could not create group: %s\n",
+		    $project->getErrorMessage());
+		exit(1);
+	}
+	if (!$project->setAsTemplate(true)) {
+		db_rollback();
+		printf("Error: could not mark group as template: %s\n",
+		    db_error());
+		exit(1);
+	}
+	if (!populateProject($project)) {
+		printf("Error: could not populate new group: %s\n",
+		    $project->getErrorMessage());
+		exit(1);
+	}
+	db_commit();
+} else {
+	usage();
 }
-?>
+
+printf("Group #%d %s (%s) populated successfully.\n", $project->getID(),
+    $project->getUnixName(), $project->getPublicName());
+exit(0);

Modified: branches/messer-51/src/utils/include.pl
===================================================================
--- branches/messer-51/src/utils/include.pl	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/utils/include.pl	2012-01-19 15:25:17 UTC (rev 18052)
@@ -102,3 +102,24 @@
 		    " in function " . $call_details[3] . "\n";
 	}
 }
+
+#############################
+# Compatibility functions.
+#############################
+sub util_make_url {
+	my ($path) = @_;
+	my $url;
+
+	if (($sys_use_ssl eq 'true') || ($sys_use_ssl eq '1')) {
+		$url = 'https://';
+	} else {
+		$url = 'http://';
+	}
+
+	$url .= $sys_default_domain . $sys_urlprefix;
+	$url =~ s,/$,,;
+	$path =~ s,^/,,;
+	$url .= '/' . $path;
+
+	return $url;
+}

Modified: branches/messer-51/src/www/account/change_email.php
===================================================================
--- branches/messer-51/src/www/account/change_email.php	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/www/account/change_email.php	2012-01-19 15:25:17 UTC (rev 18052)
@@ -38,7 +38,7 @@
 		exit_error(_('Invalid email address.'),'my');
 	}
 
-	$confirm_hash = substr(md5($GLOBALS['session_ser'] . time()),0,16);
+	$confirm_hash = substr(md5(util_randbytes()),0,16);
 
 	$u =& user_get_object(user_getid());
 	if (!$u || !is_object($u)) {

Modified: branches/messer-51/src/www/activity/index.php
===================================================================
--- branches/messer-51/src/www/activity/index.php	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/www/activity/index.php	2012-01-19 15:25:17 UTC (rev 18052)
@@ -5,7 +5,8 @@
  * Copyright 1999 dtype
  * Copyright 2006 (c) GForge, LLC
  * Copyright 2010 (c) Franck Villaume
- * http://fusionforge.org/
+ * Copyright © 2012
+ *	Thorsten “mirabilos” 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
@@ -25,52 +26,30 @@
 
 require_once('../env.inc.php');
 require_once $gfcommon.'include/pre.php';
+require_once $gfcommon.'include/datepick.php';
 
 $group_id = getIntFromRequest("group_id");
-$received_begin = getStringFromRequest("start_date");
-$received_end = getStringFromRequest("end_date");
 $show=getArrayFromRequest("show");
+$begin = datepick_parse(getStringFromRequest("start_date"));
+$end = datepick_parse(getStringFromRequest("end_date"));
 
 session_require_perm ('project_read', $group_id) ;
 
-$date_format = _('%Y-%m-%d') ;
-
-if (!$received_begin || $received_begin==0) {
+if (!$begin) {
 	$begin = (time()-(30*86400));
-	$rendered_begin = strftime($date_format, $begin) ;
-} else {
-	$tmp = strptime ($received_begin, $date_format);
-	if (!$tmp) {
-		$begin = (time()-(30*86400));
-		$rendered_begin = strftime($date_format, $begin) ;
-	} else {
-		$begin = mktime (0,0,0,$tmp['tm_mon']+1,$tmp['tm_mday'],$tmp['tm_year'] + 1900);
-		$rendered_begin = $received_begin ;
-	}
 }
-
-if (!$received_end || $received_end==0) {
+if (!$end) {
 	$end = time() ;
-	$rendered_end = strftime($date_format, $end) ;
-} else {
-	$tmp = strptime ($received_end, $date_format);
-	if (!$tmp) {
-		$end = time() ;
-		$rendered_end = strftime($date_format, $end) ;
-	} else {
-		$end = mktime (0,0,0,$tmp['tm_mon']+1,$tmp['tm_mday'],$tmp['tm_year'] + 1900);
-		$rendered_end = $received_end ;
-	}
 }
-
 if ($begin > $end) {
 	$tmp=$end;
 	$end=$begin;
 	$begin=$tmp;
-	$tmp=$rendered_end;
-	$rendered_end=$rendered_begin;
-	$rendered_begin=$tmp;
 }
+/* align with start of the day */
+$begin = datepick_parse(datepick_format($begin));
+/* align with end of the day */
+$end = datepick_parse(datepick_format($end)) + 86399;
 
 if (!$group_id) {
 	exit_no_group();
@@ -90,6 +69,7 @@
 $activity_submenu[1][] = '/project/stats/?group_id=' . $group_id;
 $activity_submenu[2][] = _('-tooltip:stats');
 
+datepick_prepare();
 site_project_header(array(
 	'title' => _('Activity'),
 	'group' => $group_id,
@@ -183,10 +163,8 @@
 	</tr>
 	<tr>
 		<td><?php echo $multiselect; ?></td>
-		<td valign="top"><input name="start_date"
-			value="<?php echo $rendered_begin; ?>" size="10" maxlength="10" /></td>
-		<td valign="top"><input name="end_date"
-			value="<?php echo $rendered_end; ?>" size="10" maxlength="10" /></td>
+		<td valign="top"><?php datepick_emit("start_date", datepick_format($begin)); ?></td>
+		<td valign="top"><?php datepick_emit("end_date", datepick_format($end)); ?></td>
 		<td valign="top"><input type="submit" name="submit"
 			value="<?php echo _('Submit'); ?>" /></td>
 	</tr>
@@ -277,11 +255,12 @@
 				echo $HTML->listTableTop($theader);
 				$header_written = true;
 			}
-			if ($last_day != strftime($date_format,$arr['activity_date'])) {
+			$last_day2 = datepick_format($arr['activity_date']);
+			if ($last_day != $last_day2) {
 				//	echo $HTML->listTableBottom($theader);
-				echo '<tr class="tableheading"><td colspan="3">'.strftime($date_format,$arr['activity_date']).'</td></tr>';
+				echo '<tr class="tableheading"><td colspan="3">'.$last_day2.'</td></tr>';
 				//	echo $HTML->listTableTop($theader);
-				$last_day=strftime($date_format,$arr['activity_date']);
+				$last_day = $last_day2;
 			}
 			switch (@$arr['section']) {
 				case 'commit': {

Modified: branches/messer-51/src/www/admin/approve-pending.php
===================================================================
--- branches/messer-51/src/www/admin/approve-pending.php	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/www/admin/approve-pending.php	2012-01-19 15:25:17 UTC (rev 18052)
@@ -108,7 +108,7 @@
 site_admin_header(array('title'=>_('Approving Pending Projects')), 'approve_projects');
 
 // get current information
-$res_grp = db_query_params("SELECT * FROM groups WHERE status='P'", array(), $LIMIT);
+$res_grp = db_query_params("SELECT * FROM groups WHERE status='P' AND is_template!=1", array(), $LIMIT);
 
 $rows = db_numrows($res_grp);
 

Modified: branches/messer-51/src/www/include/Layout.class.php
===================================================================
--- branches/messer-51/src/www/include/Layout.class.php	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/www/include/Layout.class.php	2012-01-19 15:25:17 UTC (rev 18052)
@@ -1272,7 +1272,7 @@
 		echo '<div class="widget_titlebar ' . ($readonly ? '' : 'widget_titlebar_handle') . "\">\n";
 		echo '<div class="widget_titlebar_title">' . $widget->getTitle() . "</div>\n";
 		if (!$readonly) {
-			echo '<div class="widget_titlebar_close"><a href="/widgets/updatelayout.php?owner='. $owner_type.$owner_id .'&action=widget&name['. $widget->id .'][remove]='. $widget->getInstanceId() .'&column_id='. $column_id .'&layout_id='. $layout_id .'">'. $this->getPicto('ic/close.png', _('Close'), 'Close', '16', '16') . "</a></div>\n";
+			echo '<div class="widget_titlebar_close"><a href="/widgets/updatelayout.php?owner='. $owner_type.$owner_id .'&action=widget&name['. $widget->id .'][remove]='. $widget->getInstanceId() .'&column_id='. $column_id .'&layout_id='. $layout_id .'">'. $this->getPicto('ic/close.png', _('Remove'), 'Remove', '16', '16') . "</a></div>\n";
 			if ($is_minimized) {
 				echo '<div class="widget_titlebar_maximize"><a href="/widgets/updatelayout.php?owner='. $owner_type.$owner_id .'&action=maximize&name['. $widget->id .']='. $widget->getInstanceId() .'&column_id='. $column_id .'&layout_id='. $layout_id .'">'. $this->getPicto($this->_getTogglePlusForWidgets(), _('Maximise'), 'Maximise', '16', '16') . "</a></div>\n";
 			} else {

Modified: branches/messer-51/src/www/include/html.php
===================================================================
--- branches/messer-51/src/www/include/html.php	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/www/include/html.php	2012-01-19 15:25:17 UTC (rev 18052)
@@ -679,6 +679,7 @@
 			'type' => 'checkbox',
 			'name' => $name,
 			'value' => 100,
+			'onclick' => 'tryCall(' . $tagId . ', 0)',
 			'checked' => $ischecked ? false : 'checked',
 		    )) . $text_100)) . "\n";
 	}
@@ -695,6 +696,7 @@
 			'type' => 'checkbox',
 			'name' => $name,
 			'value' => $values[$i],
+			'onclick' => 'tryCall(' . $tagId . ', ' . ($i + 1) . ')',
 			'checked' => (in_array($values[$i], $checked_array)) ?
 			    'checked' : false,
 		    )) . $texts[$i])) . "\n";

Modified: branches/messer-51/src/www/index_std.php
===================================================================
--- branches/messer-51/src/www/index_std.php	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/www/index_std.php	2012-01-19 15:25:17 UTC (rev 18052)
@@ -44,7 +44,7 @@
 <h3><?php print _("What's new in EvolvisForge"); ?></h3>
 <ul>
 <li><?php print _('Based on FusionForge 5.1.'); ?></li>
-<li><?php print _('New Funky Theme (Capgemini).'); ?></li>
+<li><?php print _('New Evolvis Theme.'); ?></li>
 <li><?php print _('New UI and features for the document manager (download as zip, locking, referencing documents by URL) (Capgemini).'); ?></li>
 <li><?php print _('New progress bar displaying completion state of trackers using a custom status field.'); ?></li>
 <li><?php print _('Improved sorting in trackers (Alcatel-Lucent).'); ?></li>
@@ -55,6 +55,10 @@
 <li><?php print _('Template projects: there can be several of them, and users registering new projects can pick which template to clone from for their new projects (Coclico).'); ?></li>
 <li><?php print _('Simplified configuration system, using standard *.ini files.'); ?></li>
 <li><?php print _('Reorganised, modular Apache configuration.'); ?></li>
+<!-- FF 5.0 -->
+<li><?php print _('Many improvements to the trackers: configurable display, workflow management, links between artifacts, better searches, and more'); ?></li>
+<li><?php print _('Rewritten SCM subsystem, with new plugins for Bazaar, Darcs and Git'); ?></li>
+<li><?php print _('Various new plugins: projectlabels, globalsearch, extratabs'); ?></li>
 </ul>
 
 <?php

Modified: branches/messer-51/src/www/js/common.js
===================================================================
--- branches/messer-51/src/www/js/common.js	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/www/js/common.js	2012-01-19 15:25:17 UTC (rev 18052)
@@ -1,8 +1,10 @@
 /*-
  * common ECMAscript functions for FusionForge
  *
- * Copyright © 2011
+ * Copyright © 2011, 2012
  *	Thorsten Glaser <t.glaser at tarent.de>
+ * Copyright © 2012
+ *	Patrick Apel <p.apel at tarent.de>
  * (and others)
  * All rights reserved.
  *
@@ -22,7 +24,54 @@
  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 
+var checkboxIndex_;
 
+function tryCall(methodSignatur, checkboxIndex) {
+	try {
+		checkboxIndex_ = checkboxIndex;
+		methodSignatur.call();
+	} catch (e) {
+		return false;
+	}
+}
+
+function depentAssignee() {
+	/*XXX TODO: merge with depentTask */
+
+	var checkboxes = document.getElementsByName('assigned_to[]');
+	var checkboxRange = checkboxes.length;
+
+	if (checkboxes[0].checked && this.checkboxIndex_ == 0) {
+		// checkboxes[0] has the value "none" (100)
+		for (var i = 1; i < checkboxRange; i++) {
+			checkboxes[i].checked = false;
+		}
+	}
+
+	if (checkboxes[0].checked && this.checkboxIndex_ != 0) {
+		checkboxes[0].checked = false;
+	}
+}
+
+function depentTask() {
+	/*XXX TODO: merge with depentAssignee */
+
+	var checkboxes = document.getElementsByName('dependent_on[]');
+	var checkboxRange = checkboxes.length;
+
+	if (checkboxes[0].checked && this.checkboxIndex_ == 0) {
+		// checkboxes[0] has the value "none" (100)
+		for (var i = 1; i < checkboxRange; i++) {
+			checkboxes[i].checked = false;
+		}
+	}
+
+	if (checkboxes[0].checked && this.checkboxIndex_ != 0) {
+		checkboxes[0].checked = false;
+	}
+}
+
+
 function MM_goToURL() { //v3.0
 	var i, args=MM_goToURL.arguments; document.MM_returnValue = false;
 	for (i=0; i<(args.length-1); i+=2) eval(args[i]+".location='"+args[i+1]+"'");

Modified: branches/messer-51/src/www/mail/admin/index.php
===================================================================
--- branches/messer-51/src/www/mail/admin/index.php	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/www/mail/admin/index.php	2012-01-19 15:25:17 UTC (rev 18052)
@@ -287,10 +287,10 @@
 					echo '</td>';
 					echo '<td style="text-align:center">';
 					if($currentList->getStatus() == MAIL__MAILING_LIST_IS_CONFIGURED) {
-						print '<a href="'.getStringFromServer('PHP_SELF').'?group_id='.$group_id.'&group_list_id='.$currentList->getID().'&reset_pw=1">'._('Reset admin password').'</a></td>' ;
+						print '<a href="'.getStringFromServer('PHP_SELF').'?group_id='.$group_id.'&group_list_id='.$currentList->getID().'&reset_pw=1">'._('Reset admin password').'</a>';
 
 					}
-					echo '</tr>';
+					echo "</td></tr>\n";
 				}
 			}
 			echo $HTML->listTableBottom();

Modified: branches/messer-51/src/www/pm/gantt.php
===================================================================
--- branches/messer-51/src/www/pm/gantt.php	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/www/pm/gantt.php	2012-01-19 15:25:17 UTC (rev 18052)
@@ -21,11 +21,7 @@
  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 
-if (!file_exists(forge_get_config('jpgraph_path').'/jpgraph.php')) {
-	exit_error(_('Package JPGraph not installed'),'pm');
-}
-
-require_once(forge_get_config('jpgraph_path').'/jpgraph.php');
+require_once $gfcommon.'include/jpgraph.php';
 require_once(forge_get_config('jpgraph_path').'/jpgraph_gantt.php');
 require_once $gfcommon.'pm/ProjectTaskFactory.class.php';
 require_once $gfwww.'include/unicode.php';

Modified: branches/messer-51/src/www/pm/ganttofuser.php
===================================================================
--- branches/messer-51/src/www/pm/ganttofuser.php	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/www/pm/ganttofuser.php	2012-01-19 15:25:17 UTC (rev 18052)
@@ -21,18 +21,12 @@
  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 
-
 require_once('../env.inc.php');
 require_once $gfcommon.'include/pre.php';
-require_once(forge_get_config('jpgraph_path').'/jpgraph.php');
+require_once $gfcommon.'include/jpgraph.php';
 require_once(forge_get_config('jpgraph_path').'/jpgraph_gantt.php');
 require_once $gfcommon.'pm/ProjectTasksForUser.class.php';
 
-
-if (!file_exists(forge_get_config('jpgraph_path').'/jpgraph.php')) {
-	exit_error(_('Package JPGraph not installed'),'pm');
-}
-
 if (!session_loggedin()) {
     exit_not_logged_in();
 }

Modified: branches/messer-51/src/www/pm/include/ProjectTaskHTML.class.php
===================================================================
--- branches/messer-51/src/www/pm/include/ProjectTaskHTML.class.php	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/www/pm/include/ProjectTaskHTML.class.php	2012-01-19 15:25:17 UTC (rev 18052)
@@ -65,7 +65,7 @@
 		case 'select':
 			return html_build_multiple_select_box_from_arrays($tech_id_arr,$tech_name_arr,$name,$arr2);
 		case 'checkbox':
-			return html_build_multiple_checkbox_from_arrays($tech_id_arr,$tech_name_arr,$name,$arr2,$tagId);
+			return html_build_multiple_checkbox_from_arrays($tech_id_arr,$tech_name_arr,$name,$arr2,true,'none',$tagId);
 		}
 	}
 

Modified: branches/messer-51/src/www/pm/include/ProjectView.class.php
===================================================================
--- branches/messer-51/src/www/pm/include/ProjectView.class.php	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/www/pm/include/ProjectView.class.php	2012-01-19 15:25:17 UTC (rev 18052)
@@ -27,6 +27,7 @@
 require_once $gfcommon.'include/datepick.php';
 require_once $gfcommon.'include/utils.php';
 require_once $gfcommon.'include/descriptive.php';
+require_once $gfwww.'include/html.php';
 
 class ProjectView {
 
@@ -51,6 +52,10 @@
 	private $cSort;
 
 	private $_;
+	
+	private $relatedArtifactId;
+	
+	private $relatedArtifactSummary;
 
 	private function setUri($uri) {
 		$this->uri = $uri;
@@ -120,19 +125,35 @@
 		$this->projectModel = $pmModel;
 	}
 
-	public function getProjectModel() {
+	private function getProjectModel() {
 		return $this->projectModel;
 	}
 
-	public function setCSort($cSort) {
+	private function setCSort($cSort) {
 		$this->cSort = $cSort;
 	}
 
-	public function getCSort() {
+	private function getCSort() {
 		return $this->cSort;
 	}
+	
+	private function setRelatedArtifactId($related_artifact_id) {
+		$this->relatedArtifactId = $related_artifact_id;
+	}
+	
+	private function getRelatedArtifactId() {
+		return $this->relatedArtifactId;
+	}
+	
+	private function setRelatedArtifactSummary($relatedArtifactSummary) {
+		$this->relatedArtifactSummary = $relatedArtifactSummary;
+	}
+	
+	private function getRelatedArtifactSummary() {
+		return $this->relatedArtifactSummary;
+	}
 
-	function __construct($uri, $pg, $pt, $pageView, $boolManager, $HTML, $pmModel, $cSort) {
+	function __construct($uri, $pg, $pt, $pageView, $boolManager, $HTML, $pmModel, $cSort, $related_artifact_id, $related_artifact_summary) {
 		global $gfwww;
 
 		$this->setUri($uri);
@@ -145,6 +166,9 @@
 		$this->setProjectModel($pmModel);
 		$this->setCSort($cSort);
 
+		$this->setRelatedArtifactId($related_artifact_id);
+		$this->setRelatedArtifactSummary($related_artifact_summary);
+		
 		$this->setTemplateDir($gfwww.'pm/templates/');
 	}
 
@@ -226,7 +250,7 @@
 			$nameFunc = null;
 			break;
 		case 'postaddtask':
-			$nameFunc = array('func' => 'postaddtask', 'showFunc' => 'postmodtask');
+			$nameFunc = array('func' => 'postaddtask', 'showFunc' => 'postmodtask', 'add_artifact_id[]' => $this->getRelatedArtifactId());
 			break;
 		default:
 			$nameFunc = null;
@@ -259,8 +283,15 @@
 		case 'detailtask':
 			return emit_summary($this->getProjectTaskHTML());
 		case 'postaddtask':
-			return emit_summary_field(NULL,
+		
+			$id = $this->getRelatedArtifactId();
+			if(!empty($id)) {
+				return html_build_textbox('summary', $this->getRelatedArtifactSummary(), 'summary', 'summary');
+			} else {
+				return emit_summary_field(NULL,
 			    'summary', 'summary', 'summary');
+			}
+			    
 		default:
 			return '';	    
 		}

Modified: branches/messer-51/src/www/pm/pm_task.php
===================================================================
--- branches/messer-51/src/www/pm/pm_task.php	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/www/pm/pm_task.php	2012-01-19 15:25:17 UTC (rev 18052)
@@ -38,6 +38,9 @@
 
 $pageView = getStringFromRequest('func');
 
+$related_artifact_id = getIntFromRequest('related_artifact_id');
+$related_artifact_summary = getStringFromRequest('related_artifact_summary');
+
 $headerArray = array(
 	'title' => sprintf('[#%d] %s', $pt->getID(), $pt->getSummary()),
 	'pagename' => 'pm_modtask',
@@ -51,7 +54,7 @@
 
 pm_header($headerArray);
 
-session_require_login(); //Needed for?
+session_require_login();
 
 $boolManager = false;
 if (forge_check_perm ('pm', $pg->getID(), 'manager')) {
@@ -70,7 +73,7 @@
 	$pageView = 'postmodtask';
 }
 
-$pmController = new ProjectController($uri, $pg, $pt, $pageView, $boolManager, $HTML, $sort_comments_chronologically);
+$pmController = new ProjectController($uri, $pg, $pt, $pageView, $boolManager, $HTML, $sort_comments_chronologically, $related_artifact_id, $related_artifact_summary);
 echo $pmController->display();
 
 /* Implements the theme and includes the pm_controller.php that implements the view in this file */

Modified: branches/messer-51/src/www/pm/postuploadcsv.php
===================================================================
--- branches/messer-51/src/www/pm/postuploadcsv.php	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/www/pm/postuploadcsv.php	2012-01-19 15:25:17 UTC (rev 18052)
@@ -107,9 +107,8 @@
 					'dependenton'=>$dependentOn,
 					'notes'=>$cols[11]);
 		}
-		$res=&pm_import_tasks($group_project_id, $tasks);
-
 	}
+	$res=&pm_import_tasks($group_project_id, $tasks);
 } else {
 	$res['errormessage'] = 'Parameter error';
 }

Modified: branches/messer-51/src/www/pm/task.php
===================================================================
--- branches/messer-51/src/www/pm/task.php	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/www/pm/task.php	2012-01-19 15:25:17 UTC (rev 18052)
@@ -124,7 +124,7 @@
 	case 'postaddtask' : {
 		session_require_perm ('pm', $pg->getID(), 'manager') ;
 
-		$add_artifact_id = getIntFromRequest('add_artifact_id');
+		$add_artifact_id = getArrayFromRequest('add_artifact_id');
 
 		$pt = new ProjectTask($pg);
 		if (!$pt || !is_object($pt)) {

Modified: branches/messer-51/src/www/project/admin/users.php
===================================================================
--- branches/messer-51/src/www/project/admin/users.php	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/www/project/admin/users.php	2012-01-19 15:25:17 UTC (rev 18052)
@@ -168,6 +168,7 @@
 				if (!$gjr || !is_object($gjr) || $gjr->isError()) {
 					$error_msg = _('Error Getting GroupJoinRequest');
 				} else {
+					$gjr->send_accept_mail();
 					$gjr->delete(true);
 				}
 				$feedback = _("Member Added Successfully");

Modified: branches/messer-51/src/www/reporting/groupadded_graph.php
===================================================================
--- branches/messer-51/src/www/reporting/groupadded_graph.php	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/www/reporting/groupadded_graph.php	2012-01-19 15:25:17 UTC (rev 18052)
@@ -23,7 +23,7 @@
 
 require_once('../env.inc.php');
 require_once $gfcommon.'include/pre.php';
-require_once(forge_get_config('jpgraph_path').'/jpgraph.php');
+require_once $gfcommon.'include/jpgraph.php';
 require_once(forge_get_config('jpgraph_path').'/jpgraph_line.php');
 require_once $gfcommon.'reporting/ReportGroupAdded.class.php';
 

Modified: branches/messer-51/src/www/reporting/groupcum_graph.php
===================================================================
--- branches/messer-51/src/www/reporting/groupcum_graph.php	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/www/reporting/groupcum_graph.php	2012-01-19 15:25:17 UTC (rev 18052)
@@ -22,7 +22,7 @@
 
 require_once('../env.inc.php');
 require_once $gfcommon.'include/pre.php';
-require_once(forge_get_config('jpgraph_path').'/jpgraph.php');
+require_once $gfcommon.'include/jpgraph.php';
 require_once(forge_get_config('jpgraph_path').'/jpgraph_line.php');
 require_once $gfcommon.'reporting/ReportGroupCum.class.php';
 

Modified: branches/messer-51/src/www/reporting/projectact_graph.php
===================================================================
--- branches/messer-51/src/www/reporting/projectact_graph.php	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/www/reporting/projectact_graph.php	2012-01-19 15:25:17 UTC (rev 18052)
@@ -22,7 +22,7 @@
 
 require_once('../env.inc.php');
 require_once $gfcommon.'include/pre.php';
-require_once(forge_get_config('jpgraph_path').'/jpgraph.php');
+require_once $gfcommon.'include/jpgraph.php';
 require_once(forge_get_config('jpgraph_path').'/jpgraph_line.php');
 require_once $gfcommon.'reporting/ReportProjectAct.class.php';
 require_once $gfwww.'include/unicode.php';
@@ -175,8 +175,8 @@
 		$interval = REPORT_MONTH_SPAN;
 	}
 	
-	print "start: $start ".date('r',$start)."<br>";
-	print "  end: $end ".date('r', $end)."<br>";
+	//print "start: $start ".date('r',$start)."<br>";
+	//print "  end: $end ".date('r', $end)."<br>";
 	
 	$sum = array();
 	$starting_date = $start;

Modified: branches/messer-51/src/www/reporting/projecttime_graph.php
===================================================================
--- branches/messer-51/src/www/reporting/projecttime_graph.php	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/www/reporting/projecttime_graph.php	2012-01-19 15:25:17 UTC (rev 18052)
@@ -22,7 +22,7 @@
 
 require_once('../env.inc.php');
 require_once $gfcommon.'include/pre.php';
-require_once(forge_get_config('jpgraph_path').'/jpgraph.php');
+require_once $gfcommon.'include/jpgraph.php';
 require_once(forge_get_config('jpgraph_path').'/jpgraph_pie.php');
 require_once(forge_get_config('jpgraph_path').'/jpgraph_pie3d.php');
 require_once $gfcommon.'reporting/ReportProjectTime.class.php';

Modified: branches/messer-51/src/www/reporting/siteact_graph.php
===================================================================
--- branches/messer-51/src/www/reporting/siteact_graph.php	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/www/reporting/siteact_graph.php	2012-01-19 15:25:17 UTC (rev 18052)
@@ -22,7 +22,7 @@
 
 require_once('../env.inc.php');
 require_once $gfcommon.'include/pre.php';
-require_once(forge_get_config('jpgraph_path').'/jpgraph.php');
+require_once $gfcommon.'include/jpgraph.php';
 require_once(forge_get_config('jpgraph_path').'/jpgraph_line.php');
 require_once $gfcommon.'reporting/ReportSiteAct.class.php';
 require_once $gfwww.'include/unicode.php';

Modified: branches/messer-51/src/www/reporting/sitetime_graph.php
===================================================================
--- branches/messer-51/src/www/reporting/sitetime_graph.php	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/www/reporting/sitetime_graph.php	2012-01-19 15:25:17 UTC (rev 18052)
@@ -22,7 +22,7 @@
 
 require_once('../env.inc.php');
 require_once $gfcommon.'include/pre.php';
-require_once(forge_get_config('jpgraph_path').'/jpgraph.php');
+require_once $gfcommon.'include/jpgraph.php';
 require_once(forge_get_config('jpgraph_path').'/jpgraph_pie.php');
 require_once(forge_get_config('jpgraph_path').'/jpgraph_pie3d.php');
 require_once $gfcommon.'reporting/ReportSiteTime.class.php';

Modified: branches/messer-51/src/www/reporting/sitetimebar_graph.php
===================================================================
--- branches/messer-51/src/www/reporting/sitetimebar_graph.php	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/www/reporting/sitetimebar_graph.php	2012-01-19 15:25:17 UTC (rev 18052)
@@ -23,7 +23,7 @@
 
 require_once('../env.inc.php');
 require_once $gfcommon.'include/pre.php';
-require_once(forge_get_config('jpgraph_path').'/jpgraph.php');
+require_once $gfcommon.'include/jpgraph.php';
 require_once(forge_get_config('jpgraph_path').'/jpgraph_bar.php');
 require_once $gfcommon.'reporting/Report.class.php';
 

Modified: branches/messer-51/src/www/reporting/toolspie_graph.php
===================================================================
--- branches/messer-51/src/www/reporting/toolspie_graph.php	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/www/reporting/toolspie_graph.php	2012-01-19 15:25:17 UTC (rev 18052)
@@ -22,7 +22,7 @@
 
 require_once('../env.inc.php');
 require_once $gfcommon.'include/pre.php';
-require_once(forge_get_config('jpgraph_path').'/jpgraph.php');
+require_once $gfcommon.'include/jpgraph.php';
 require_once(forge_get_config('jpgraph_path').'/jpgraph_pie.php');
 require_once(forge_get_config('jpgraph_path').'/jpgraph_pie3d.php');
 require_once $gfcommon.'reporting/Report.class.php';

Modified: branches/messer-51/src/www/reporting/trackerpie_graph.php
===================================================================
--- branches/messer-51/src/www/reporting/trackerpie_graph.php	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/www/reporting/trackerpie_graph.php	2012-01-19 15:25:17 UTC (rev 18052)
@@ -23,7 +23,7 @@
 
 require_once('../env.inc.php');
 require_once $gfcommon.'include/pre.php';
-require_once(forge_get_config('jpgraph_path').'/jpgraph.php');
+require_once $gfcommon.'include/jpgraph.php';
 require_once(forge_get_config('jpgraph_path').'/jpgraph_pie.php');
 require_once(forge_get_config('jpgraph_path').'/jpgraph_pie3d.php');
 require_once $gfcommon.'reporting/Report.class.php';

Modified: branches/messer-51/src/www/reporting/useract_graph.php
===================================================================
--- branches/messer-51/src/www/reporting/useract_graph.php	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/www/reporting/useract_graph.php	2012-01-19 15:25:17 UTC (rev 18052)
@@ -22,7 +22,7 @@
 
 require_once('../env.inc.php');
 require_once $gfcommon.'include/pre.php';
-require_once(forge_get_config('jpgraph_path').'/jpgraph.php');
+require_once $gfcommon.'include/jpgraph.php';
 require_once(forge_get_config('jpgraph_path').'/jpgraph_line.php');
 require_once $gfcommon.'reporting/ReportUserAct.class.php';
 require_once $gfwww.'include/unicode.php';

Modified: branches/messer-51/src/www/reporting/useradded_graph.php
===================================================================
--- branches/messer-51/src/www/reporting/useradded_graph.php	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/www/reporting/useradded_graph.php	2012-01-19 15:25:17 UTC (rev 18052)
@@ -23,7 +23,7 @@
 
 require_once('../env.inc.php');
 require_once $gfcommon.'include/pre.php';
-require_once(forge_get_config('jpgraph_path').'/jpgraph.php');
+require_once $gfcommon.'include/jpgraph.php';
 require_once(forge_get_config('jpgraph_path').'/jpgraph_line.php');
 require_once $gfcommon.'reporting/ReportUserAdded.class.php';
 

Modified: branches/messer-51/src/www/reporting/usercum_graph.php
===================================================================
--- branches/messer-51/src/www/reporting/usercum_graph.php	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/www/reporting/usercum_graph.php	2012-01-19 15:25:17 UTC (rev 18052)
@@ -23,7 +23,7 @@
 
 require_once('../env.inc.php');
 require_once $gfcommon.'include/pre.php';
-require_once(forge_get_config('jpgraph_path').'/jpgraph.php');
+require_once $gfcommon.'include/jpgraph.php';
 require_once(forge_get_config('jpgraph_path').'/jpgraph_line.php');
 require_once $gfcommon.'reporting/ReportUserCum.class.php';
 

Modified: branches/messer-51/src/www/reporting/usertime_graph.php
===================================================================
--- branches/messer-51/src/www/reporting/usertime_graph.php	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/www/reporting/usertime_graph.php	2012-01-19 15:25:17 UTC (rev 18052)
@@ -23,7 +23,7 @@
 
 require_once('../env.inc.php');
 require_once $gfcommon.'include/pre.php';
-require_once(forge_get_config('jpgraph_path').'/jpgraph.php');
+require_once $gfcommon.'include/jpgraph.php';
 require_once(forge_get_config('jpgraph_path').'/jpgraph_pie.php');
 require_once(forge_get_config('jpgraph_path').'/jpgraph_pie3d.php');
 require_once $gfcommon.'reporting/ReportUserTime.class.php';

Modified: branches/messer-51/src/www/scm/reporting/commits_graph.php
===================================================================
--- branches/messer-51/src/www/scm/reporting/commits_graph.php	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/www/scm/reporting/commits_graph.php	2012-01-19 15:25:17 UTC (rev 18052)
@@ -23,7 +23,7 @@
 
 require_once('../../env.inc.php');
 require_once $gfcommon.'include/pre.php';
-require_once(forge_get_config('jpgraph_path').'/jpgraph.php');
+require_once $gfcommon.'include/jpgraph.php';
 require_once(forge_get_config('jpgraph_path').'/jpgraph_pie.php');
 require_once(forge_get_config('jpgraph_path').'/jpgraph_pie3d.php');
 require_once $gfcommon.'reporting/Report.class.php';

Modified: branches/messer-51/src/www/scm/reporting/commitstime_graph.php
===================================================================
--- branches/messer-51/src/www/scm/reporting/commitstime_graph.php	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/www/scm/reporting/commitstime_graph.php	2012-01-19 15:25:17 UTC (rev 18052)
@@ -23,7 +23,7 @@
 
 require_once('../../env.inc.php');
 require_once $gfcommon.'include/pre.php';
-require_once(forge_get_config('jpgraph_path').'/jpgraph.php');
+require_once $gfcommon.'include/jpgraph.php';
 require_once(forge_get_config('jpgraph_path').'/jpgraph_line.php');
 require_once $gfcommon.'reporting/ReportUserAdded.class.php';
 
@@ -50,7 +50,6 @@
 	WHERE group_id=$1
 	GROUP BY month ORDER BY month ASC',
 			array ($group_id));
-echo db_error();
 
 $report->labels=util_result_column_to_array($res,0);
 $report->setData($res,1);

Modified: branches/messer-51/src/www/soap/index.php
===================================================================
--- branches/messer-51/src/www/soap/index.php	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/www/soap/index.php	2012-01-19 15:25:17 UTC (rev 18052)
@@ -10,6 +10,7 @@
 require_once $gfcommon.'include/FusionForge.class.php';
 
 ini_set('memory_limit','32M');
+sysdebug_off();
 
 $uri = 'http://'.forge_get_config('web_host');
 // FusionForge

Modified: branches/messer-51/src/www/survey/admin/graphs.php
===================================================================
--- branches/messer-51/src/www/survey/admin/graphs.php	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/www/survey/admin/graphs.php	2012-01-19 15:25:17 UTC (rev 18052)
@@ -38,14 +38,8 @@
 require_once('../../env.inc.php');
 require_once $gfcommon.'include/pre.php';
 
-// Check if we have jpgraph
-if (!file_exists(forge_get_config('jpgraph_path').'/jpgraph.php')) {
-    //# TODO: Need to show the message as a image file
-    exit_error(_('Package JPGraph not installed'),'surveys');
-}
-
 // Read jPGraph libraries.
-require_once forge_get_config('jpgraph_path').'/jpgraph.php';
+require_once $gfcommon.'include/jpgraph.php';
 require_once forge_get_config('jpgraph_path').'/jpgraph_line.php';
 require_once forge_get_config('jpgraph_path').'/jpgraph_bar.php';
 require_once forge_get_config('jpgraph_path').'/jpgraph_pie.php';

Modified: branches/messer-51/src/www/themes/evolvis/images/logo_internal_repo.png
===================================================================
--- branches/messer-51/src/www/themes/evolvis/images/logo_internal_repo.png	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/www/themes/evolvis/images/logo_internal_repo.png	2012-01-19 15:25:17 UTC (rev 18052)
@@ -1,69 +1,78 @@
 ‰PNG
 
    
-IHDR  Ê   ,   åöø÷   sRGB ®Îé    IDATxÚíyœÕÔùÿß¹3É¸Ö¥*‚ÕB*uã(Eô§~õ§Ö­j­[ëöUªV´Z—j]«u¡¨ukõçVµZWp;Z$ØÅD at T” @`&¿?Îs{3™ÜýÞa°ù¼^yÁ$¹'gIžýyŽEð»88Øؘ	LîþæúAHŠ)R¤H±šÂª‚IîÜ*pÛ[Àq®¼šNuŠ)R¤ø¯a”žcïÜô(áö¥À]?x"î)R¤Hñ­g”žc»À«@CäôÛÀÀT`$°°Aäú
-Àuý`Z:å)R¤H‘â[Ë(Å'9ø~äôo\?øm½WgDN½
-ì˜ú,;ÍSÆõƒö:¶ßàúA[:ÓÝcÎ<Ƕ ÊýäÛëíúÁ7é
-¥Hѽåh`RäÔ\?0µÅÞ)$<2¸—>!á/Àá‘ûèúÁdsŸ¡ažaa¸„s ñwáâé«€0Ú˜`¤m€!@ï··cü¯Ó+aþBø.Ž Ú€ó]?¸½†cjþ
-ì¼\äúÁ˶Õ•c·‡À™›·€ª<Çì
-L̾?uzö ΆO‡º~°¼†íŸœ‰qGLpýàÊwðk`Màà×VTяò¾o)Ç "ï||
-|
-Ì&»~0%%Ÿ)RF™üm
-Ì gv}Ìõƒ}ÞZ‡¾KWØŸ !ˆ†á?øjñ[€^¶¾6rý`é+`7-¶§ó†eqÒð…ÁK]À ‡×3ÉTØÌ7ÀeÀ•å/ñó>9 C\?ø¨Fc»	8>rêM׶)³A2?£€Æ
-»²¸¸ØõƒeŒãdéCg¹~pEÞ…&`°~äô¹®\R£ö‡“éè²æúÁ?‹ü®Ÿ0¨(#;Ôõƒ{+ìǏËM«Ò{Àծܜ’Ñßv”Å\?˜	Ü9µ—ç؃V}{}„õö²ÚÛþ>e>\?€Ý€Ÿ ƒ]?Xz?44-¶ïËÃ$¶	C^ôš{_R¯A{ŽÝÇsì+€b|ª™*š[C4Ã{Ž½S¿;,ö·
-]£ñõ~;=Ôsì!¥jžcŸ¼Œ©‚I"þ×Àt±H”‹cb—5_Ö#cLà„¶ÿó“D¾‹bøŸmïð
-Þ‰-=Ç~	¸¿L`à&ϱoëHŠÿ}ŒÒslÇsìí=Ç!šW‰i¤Ûoñâϱ¸&r~ µ¢ý‰)köÝÚõƒù®ÜíúÁçSÖé3`S§÷m˜`Ÿ,>^$dY‡v­ð¯¹÷ñu`’=€—1&°Æ6=xÑsìCJ¼F¹15$ú=cç–Ë\›x
-¸èUÃùÙ˜ä9ö/ÊX«žÀ¶±Ó›ëÖá[HZïxŽ½uÚß=á\)Öƒ¾%ž+( ;ÖaÞN.NIiŠÿFé9¶å9ö‘žc?|1½
-¼á9ö¥rÛ«SPT²Ä²ƒ±x/r~;«½mºçØ3¼–^7z-ödkEû<ŒÜóÕж—ë#{/
-šÃ31þa—á
-¯5÷Ú´Æc>ø^æÓÆ{Ž= „{'%œæ9ö:u"Ê/»~°´„ßž
-ìZÇwî*ϱ7+c>Ë9_1\?ø8³Ü£ÂÙÀF	—žî¢ïüà»ulÿôR­)R¬ŽhŒ|̃€[1þº$œ
-4a‚
-²X	0|K'÷ÉŒlljŸvdD›Z›'´÷%axÈð/—¿°5,gQpÕ”–^ó­Ðºc¦jÊd¬€_ÕH›^ ­%À»ÀÀ²"Ä{}!<IÄoM`ð‹tçeyfŸXÛ£»«êèsAÿ]žËÆ/5ãw,„˜ ‘$ózàϱGÖ3Ú·BL¢s1Àïë°³\?x¿Þò{p\žËïcÌës€ÖÖt°}bך€ë0n–)¾ŒÒsìõ€g
-óÜ×
-üIþÿ}:šõægÿ3bɒϦ¶´Œ$\v>ðŒß-Žx²8q¸¿löÇÞß‚SCÂ÷3½—:|Þ²»¼fûD,~(wï[+F‰	
-‰›[Ûäü®,*“ý!q
-i?ϱwwý`R
-f¹çØØ+0WÌ(=Ç^ßÈå3JÑ<’Öìàl×”Ù—ñ˜HÙ(vÂøÙþÒ;‡‰Sb;{Žm‹¿½–þ¤.SÒ³WbüáwU¦Ò[,Mñ5é9vS5Ѹ)RtWd<ÇÎ`üQ&ù!ð¿¢]:€íúÁâ3:+r_»—ÿ`øÂ…‹\?øeۊ̦Xœb…ü‘0|*Äú3Vøëö¶ö-]?Ø{øÂ`öÍÍ-–Ñbw±°Ž%è}¤èUÑ’w‡50µI߇'\ºÜõƒ±å2IavO ?Í0Ž%j0[•Á*I„qð¯"óc‘ìúÕõƒãÊe’2?ÿ-#é·?è†ßƒÆLj¢ ªxïšòü¾«åà„s׺~pg%iMb¾? ˆ/S&™âÛ¬QŽÜȹÉÀ>qÂè9öšÀÃt4Í>éúÁ¬¤†G,YòK¸¡Ð×g–ŸCˆ“ýÛjÇ3ÿ±>"üÏ7Üô¶1íT›Ï¶u‚6ù&h¥b¸~0KŠ+\»4´D
-&ŽÓõ¿+ìR’™ï™ˆâ¦@¿Ø¹ÅÀéUÎÏϱ/€NïÂàîö1¸~ðçد»$hùOVØì:睶‰§+d]x¨Êyš!éM‰âMŒï?Å· J©cµ6­õ•éŒÆ
-¿ŸìæúAà9öîÀ0 ¿0Òíèh–›œ\郟‡Æ°“#ºâ#Ã-}Ýè©í{cýçÂÜ­«g’À3ÍõƒÖ´”|=¤‚óžçØcv]‰æ²¥h…ù'óÌÏ;•hÚI]+QÓ阔‡QÖRÃ÷\?ðë=ϱû’ìN™U¡â9ϱ×6výàÝ:ë=íó\nÅøU?fj­?IIyM1V¾Ï@Ê(…QF	äÝÂ$·Ã¤ä3~
-ì•O›,ýúõܤÝÊ¥dÂð:€i}û®»ÜjûQäÖ×j4Ö$FP«`Š¤vyŽÝ£„Ê.“èl±&)¼\l$EÍ>½ŠççÄsý=Ç^Óõƒ¯ºÙ71‘Îé[zŽ½±DÆÖ‚Qv•Ù5ß»×,BqµÌ2ÀÀÕ{§”ÈT'çi­½”¤w‰Æ¹&wàY­õŸ¾ícÎ -‘¿çÊ¿N&y°U±Š"ÅÐÖØØ!6loz`ES[ÇüÆ0¼©FcuÎ-©QÛIí4P¸,X”0DZƒhµ Êo»~0§ÂùY\ÇùÎ¦Þî€bªHQ­Vé9vÉ~ñ‰]1Ò&\Úï[FÇÆ S”R§¦l¬K°&p°î‹Fù°žüÕF^°φÌÚÁ²‡ðšEF»þ’šÔbµÚV.'“™™ý{eÓÊ^†/Z›`…3BÂ×]Ù³ßò5x㳊V7éÉe|´Ì¶FW¨M¦È1—vϱŸ"'Æå–kE碋H6ÕדñŠ»HR¥žÂäKIç ¦r¬0ÜOªŒþ­¿££	°&5뇘ªOýåüåJ©ç´Öo¦orU-sœn`a”³äïÃ=Ǿ@¢×.«çƒ·´¾Ò×· ~Ϭ}ñm™•ç7´7^ᢌenÕw±Ö÷{D
-ÚY³
-Âì{Ž=E>ú8a.™QJØ~R	½Iék^6&%0ÊQžc7º~°²J
-ÿ¹2Û¨÷%0ÊF`9ÊÕ’?Çøïn*±ˆEµX¦µŽût?¦*¥îÅà_“¶va%ãJ‘ƒÖz^:?˜g€lÙµ€Vϱ`‘ïþZ­}vÅ2¯9|ËÚÀ
-Ã3&÷ë9iÄW­oÃòÑ]4þ#ä¨Jeò“e¹av!¹lÝék^£Œ£ÁZN±þUéŸÌâa{Ô¨½uåpqžcÿ¸®’‚÷5"ê_(¥.Æä3C	AtQ(¥za,i_k­«\SJY˜ˆÑPk½ ÊvZ0.‘/«é›RÊa~!àk­»…¦¨”ê+s¿XÆØ^ƒ6ûˆ…áëjæ?‰Qþø%¹(DK:?JŽ‹<Ç>Êõƒgj>S™Ìc„áÂQ6iÈd^ñZìýÜ…•mÕÍðU£é^¿™çØ›¹~ðaæ’8^vý`	)ÊÕòçxŽý6#sÇ”Ê(¥ÒÕÆ«šQº~°Âsì1&þíkÜüº˜ ³­é\„¿+—¨”ꩵn- at L›Ó0ù C#çgÓ€ëµÖÏa<g—Zk}¦RjSà\L³~r߇˜t»KµÖo•Hè‡aêPïN$~D)õ)&ç2­õGEÚÈÈØN—µ‰Æ;´É8ŸÔZ?ðû;€M€ZëÑ‘óÁ«è˜î´·RJ'tãr­õ“	m¯‡ÉÅßWž‘Åb¥Ô³ÀµZëç‹ŒïqLu¨yZëÄច)b²ITÒZ·*¥N”Ówj­o-aú÷
-?œ3ÐÉH)º|SÌú¨Z¿Ý3.½¬èB­MÈKžc>¥¥×SS[zÝì5÷¾ø_Žã¬†ô¶Mn
-”.PN IwÐ^¾íZeµëñA­¶Q+“Y.ÁT€º±^kYN±û: jþ-D§”ÚS†ñ:ç:o"üi¥ÔUJ©yšéÙx`$°RjgÌv‚GÓ1 at m3Ì1¯(¥Šjô¢{³Kìòz˜èøw”RÇh£	x³KÌöt. ß ýú9ùs_ÝÈø¢h‘sߏõkd±^BßöÁDÒŸc’H?÷žSJݬ”*´#ÍNòŒJ©"(›Ðf¶—#¿'Úz1üS(d$ðAF>¤ç1	ç;ˆ$r±4ND˼ÉsìÖòí>ÚéqPÿˆ]ZÇ
-­1ah‡þzeØ:a5#²_Pbh»Ì¾ô’ÌeR¶nHÊ(ëÎ(‡yŽ½öê(¸¸~ð¥ë?v”HË/áú“›Xè(†k=ÇÞv
-o«Èÿ¿ÖZ/ÌÃDFc˜²A‹¯aêW 
-\	¶²D+%ía]aJ-ò
-j,ÕŒú)¥Æ`p`“¬ˆ•éaç’ ëÜ¢”:,OSWGÜ,ö—sûaJ4N *IËš!ó5>&䟝pLo7L¡‹,㞎)ö²ŸÐÊèÞ¼Ç7–П&y3e½N•yû{v.µÖsÉÅ{lž  Ä×ÂŽÍjàÀmQs&‰à!I^¿
-c–Í.Ð8Y¸ša;ß÷CP¯;öi¡©éÚ¿ÓM‡LuzÝ<Ü_ö|7'®ŸŠIã,×>-ó·働b×ëg&™]‹–­KQÔ"ÐJG¿oFæúž"‚K#É;°¬rÁE‚oþ,Gɐë‹v7Oè!fÇwåxDó8-rê¹<÷­ÜI.šó$àƘ¿î^¥ÔxLIÏm#”RãµÖ…¢”³ÂÁ•ÀY‘ö&)¥®þ Œ ¸L)5)î#TJm+Ì0‹ó´ÖÑ\Þ¿+¥.n"·gí•RÏj­?‹ølÌŇ€[@hÓ‹Bk=KÆà’«‰<Mk}Y‘5ê…ñ•gùÍ£À!Zë¨%à©4Aî;V)õP’ù6‚
-ä¸8^ku3Å72¸‘\ZÔq˜r•ù°¹úÝOj­çtڏñ_Žã´·kóƒ0Ûç¬$W”|wϱרupíøÁÕÏÃu}[z¶BF„°„`‚(C븈„V+\îúÁ¸n¬ÁôÅÔ_Õ0Êg*©å™"ÇPd£ãxÄè˜bŒ’ä²u+ëðþvå|´ŠÔ>ø»çØOÑÙ½]3ÉAB݈ôižÛO‰á´Öò0ƒÙJ©£0¦ÔQv)&Ti­•ÐV;ð¿J©ÒÇmE»{0vë؈™ðÞ“̶µ8F)µÌs3fã‰#·mž¥—Àcù˜¤´×
-jjד«58Pk½<¡O·(¥¶Š(gã(^:òmàð”&aö ”:EkO«Ž€¹9+!çtèæÞ#VÒúA»•yÓk±¯’Ó×`Æ[+43jŠW{÷è3µ¥_ÿ5Öê½A[¯Ö—†ûKÏwý¥ÇX·dM?–ÅÈ°ûv#Bô1tØÏ3‹=ŠHúÕ”­KQ¾ðRŠŸ2Éì:Ùõƒ¯WÕ@<Ç®µŸÿÜ$Qº¼Rjräø§RjÆl¼OD9¢€ö—%~íg!Íið¸ü¹c_e>í%Ž+òá¬FœMg	0ú,.‹1 (¢Q££JôÅuŠüÿÊ$&ÁÕä*Jí¢”*¶·ï%¥DñÊ=Ùâ5=É“í ”Z›Ü‰s€':1JË
-' kaÑ‹Ðì-çúÁ|ÌþŒ=ž£êÖâÃíá9öžcOmìÑ°8WÌÛ™
-AYžcoh´H^Ë>7„õ§:öݝ²zŽÝPÅÏ'V@˜¿‡ñ“Ä‘¨£à9v±¿»R6bÿ Xà9öÃU¾ŸqI>N Ö󻆱&0%{l¬¹þ0°…Öúž<Äo Æl0=!'3	Ù¢:o£·<Q¤­G"L,ÞÖPr~»wµÖoiëArÅ!¶TJEƒ‡f‘«¦5¸Y̤«¬£±-÷ahsé³R¬ÿåXin0ácóÜóSŒyà6­utܸy9{{vq	Áš‰"->­ÁÇ»;f/¤jM‘°®¥s	µ¶*›d†èWC‚tð[ ŸçاU ALÂloցzŽÝßõƒÏòü&I›,µl]±ù©•`’¯ß"º7¦av˜éŸ ¼LËó¬Ò²u±¾ôÅäfÍqûb|\µ¨Í¹L˜DSì|‹ÌY-1‡\yÍ,ØˆœÿX	óÌQ¼e´R¤ ¢mðNžûæe‰iâ¿B)õ&j#¥T&’3¸IäÖ¢ÅݵÖmJ©y˜Ô#K„ˆ·#×~#ZY–«”šü
-l¤‹htµF?r¼ËK|7fGþ¿qûZ‰ì‡\ÂÜ}¡”z¸5D)5Bk=9vÛ±íü?i$Qrÿ˜
-ÿ'€×›{Ž&²kH†óªüxw	°‚ ›”åU½8¶¨AˆqBo,/ÅÏ€*hJ'ŒÑ*¢Uî^#m2i~¾[£%I"ŸïúÁÂîÌ%ÅÇ›4—…Ìá»Ñ±!˜é«`£"L2‹±5j{Ã&¹‚äøÕâf­õˆÈñ]Ñ()ÌÚPJšç÷kÇú}p	GTØP„‰—‚,ìÑn¡cåOÊl+þ{DÁKÇ”™A˜8“‰À¥Ô=âßí
-Dû7·ÄbÑñ5¸o~ŢѴq3øΡê)­õì$FÕ&µëó ÂLCt?¯Ú3Ë*Ž¤”ú’Òq»®G…©l/Ìsmצ{Ž½pdTírcØ$Fð½
-‹GÇ”ÁDtõ‰]:¨¼„Ži9	³”­Û¹Ff¾¤ùÙJö!­Ûç1Ý­HšË=ÇÎgHZ«g]?h_}Ž~«ìšnU§5ÑU›7k­—h­¯¡4‹k¤˜ 	Âfô=¿¶Ì£Píئ»õs.Ïc%ëQb[Mù¬lZëv­õDS=óMÌJtð†-ÕmÌUÞñÅÐ^Á{ób„ö¬”ŠZÍŽ
-gÑß5摺Þ˜ÚÜûûaæ4–ËG|Õ1aY|ë J¨a9.ÆP.uýàœ°ƒ0Ð(‘¾­Ê{[¤Ïè˜×Âäòü²ŠvOËì^©°½§èœZ°Gž:£»Ñ¹l]@eeëfaòé¢ &˜«âª+žc¯KrbóêÂ(ŸÆøâ¬AÛ‹Xô«Mû$´ñäªè¸ëó%r7µù{ϱ÷ª4*Úsì>tPYekªµ¾K*¯ì#‚öïÈ¥.d± ¦…œVÃ.lXâ}ÙØŽ¥ZëÏ#çý
-ÚÚ0Ïï£óòÆ*ø'	!Bܱ¢!÷¤˜¼¬µžQÇ%ŠZÖSJ5Jo!lTl|UâFŒK¢Æ{³Rª“ÞfºÇ£?ˆj”ŸÆ¥E+lûZ/Ì]±Fp½|(kyŽý+ϱߒ럁çØïyŽ}^’C_4“(ùƒëçxŽÝÓsì{Ž}’çØ7xŽý
-ÆAe’7Qe0„„·'íWwªçØãÅ·T±°=Ç>Ü¾lq)êê
-»z/ƒ$Z0噢Ïo"—¶ÅC•”­¢™¤Íé9öžc¯WAý‘0í$­ôUVH0[RùÆ“$_2ŠŸÑÙ¥°“h½ªðׄs{wzŽý
-Öt{YӍ»ÑšžN®²Ø/”R[Ç®GËÇÕ:¸¥¿Rªàvz¢µd‘™„‹Å&ÏÑLg– L´i­_ÖZŸ‡),“ÝCÔŽ0‡ºiþäL©
-1&˜Ñyx¯Ýú9ÓtÖüz¸`‚xVæÓ(ßÂäìlë9vË0?ø`jKŸíÛöa
-ðüs<ÇÞF˜Vœ 4b|Z¿òû×îˆ\ß)fZÈ\…)¡—· 'Ô('ðLíÅƘ°p"p´D~(Ä­	ek>ûù}®̬¤ƒ®Ìöû9:çïÝæ9öÏD:î	l“G­Fó>
-Sµ"þáì9ö‡˜êÅvŒ€ñ‹¬ŸçúóÏE,(zŽ]‹"ÜßH?ž/ò~ÝFç ©w¥&ìJsR媇˨ù[< Â\ÜTüà@ϱßÇìRL¸Z[ÖtC’Ó´Þ nXÔZÏPJý?±|d€ßIÐZÏ’º«›k*¥öÒZ?^£Ç[2—…¤~šOëÖZ(Á9ëc}Fª3+aVÁy½ÜÀ­õ2¥Ôµ˜˜
-(³ˆ|‚†^ŠëêE™#0Ád熊öÆç=µïË"	è:.¢éCjÁFÆ­äl´ÀÞc¾pÉ›ˆ^¤É'é\‡0Ž¾ÀížcoáúÁÙ“E‘ò™>ùÂZ%λ~ðºçØ—ç%\î%/͐*ó¹|¨ÕàŽFiQ<ñyU$µ»~ð¾çØãÈíÄEÆѽe
-˜ÓÑU®i-«C+ïY¡à«¿arâšñfNÈ®å*ÕˆEÀz0árOLzÂÐ*³ø©l½ªp‰t
-ÀJ©ÁZë(SºS%L˜çc•aòn«„€‘Ó”R·'™%3êÚIʹ¼SÔL-Òç’ž);cœ‘ïÝ*±¯Y•Å'Ìõ\rîˆRÒïŒ0Ê”RWHÑ9?"ˆ=¨µþ¦NïˍäªMˆ|OK¢ÈD>¨)˜hÔ·äXxÀsìƒ<ÇþŽø
-¯ÇØo³÷<"ÚàöBhˆ\›ì#; RwöÚÛärÿÎÄD{z˜º
-!ÜÀõƒêP]æ·Ô/q0ªŒ?
-™Ë¼2§Ô`¾n ~9!&mfV÷wóÛ.ÀlZóWÅðH
-æ2¬v^\?xˆâIñÕà|׺´t]’V‰q[déZ|½n"”³	ð’TÌÉÇ ·PJ]M²é:ŽÁ˜Z®ýbm8˜˜ƒMåÔãZë×~=¹T©÷)¥ìX[늜U,>Å!J©'”Rûä+*®”Z367ÿ¨`®£&ߝ”R)n0	X†›/)¥6‰õ«Q)u¹2žË1þæz½/¹]g¢ïAâæìqËñ2qÙ´‰­1AI8Ûõƒh•ˆ)b;)f‚/å®&‹6’]Àë]?˜Ar]ÌzIØ+<ÇÞ8G¤¸5jú=àצנ­žcï/½Ôî]?x¬Ï=ÇÞc†½;1”‰w€_¸~ðb™óðo:Fd×+(’£ëúÁ=Ç‘BKyŽ¬à29áÜ”
-Ú‡I±:Î`•âcàäZ¼w5ÂŘàŒpRê"­õ;B—)¥ö¡|#LÞå+J©©²V‘ËÏÜ4¢a³Ð¼(´1À{J©DŒÉïì¢ÏÊC´çJÓ{…>þXÐËWÇPŒ©?kÉ[‚)Û$(>{Ê1O)5M¬L³å;(JH߈¥¤Ò@³+D+³DAZ®”ú<ò©µþ«Œ/TJ‰XGøÊ›J©W„YmˆqÍEýÞgh­ß¬óû2Ž&óù˜bêäÕ(…|ñÅ#f¿Ë2Iϱ÷÷{¢çØc¥ñt´A¯ì,AQézlµ©U0ƒe®üãç›Huù™Ó1áÖƒk)UKÁ€‘À]äß
-ÑЏÀø†kõì•®\%û#öÙƒ/ì¶å0ɘ©ªÞ©·”h6<AÍÜ÷,Ær©Z”¬sý`Zì{\™Oê-aMYÓj°[°u7b’h­ßh€´J­õLL~d–Z˜àžÃ1î’“ÿ‰0ÉeßX`&ýMŒŸú`0Ž0Éw€Ú“Rký€hS_È©õD™8Ø;Â$?vË£™FwyY_æ	˜²xç‰ù³¯X$î~RÅfÉ·
-³Ìš¯³±˱F‚Æ¿SD«ï‹É'ýÊ2Éo€cµÖ×wÁ+s·»=_Dn^uÙsìÃDÃÜ1¦y¾ìâúA›ä’͉LÊž®<%¿L´ÑOA®,ñûPL¥÷,~îúÁÍ«ú“Ò-„q)¢Ee‹C(ÇÌz÷{L¥ÿ
-1ûƒ~-’â‡ÀÔ.x~&x)ëÏZ£ˆ©pŽoUP!(éù›b"j]¯´U$ÚûË™Cy_v”{CŒûcY“©µ.¤ ÏÛ[Ñýª4•Óf‹¬é 9š‹¬éüìš×ûSJíI.Wó9É+åw›“‹oÃlt¼"á¾aˆv¦²&.b®¬å3˜¤óÅ	¿]—\…™IZë1z¦׵Π »IDATNè@î^‹ÀZëE%ö¿ŸX-Æ`üßð¥0ÛÇ€»
-ðȆÃÙ=!	Ã]ãcŸ©;!«içiãDQpÚ´Ö¿-ÒßuÄⳑ<+Ë+ÑZÿ+áþ&Ç|_¡%ëˆà5“Šu[,}&é™ãä›[¨µ¾¶Ê÷lšÐýØ<ߦØV	T³|P½eñ§º~ȵ>Bˆö0Òõƒ7d[žm€i®,÷»Æ-ª¾»ëiMÒ)R¬6Hb”鬬–ë8Œ\¼ÊÓZëÝóÝÛX‚ÉfyKDK<—œOÒ&ŠŸr’ëž0Ô!˜ª÷Q&ùTÊ$S¤H‘"Å*B4Æf|¡kð°	bnȦ3ÀD®¶zŽýf´x>ݘœÆ)R¤H‘¢«µÉ=1Æ`Ìя֕Qº~Ð.Q’wѱÊCO’óþ>Ƹfcè)R¤H‘¢ÞŒ±	3ÓC”º(¯º¢XPS¦<³ƒ1Îì|u—`¢¤Ü”I¦H‘"EŠ.D_L:Ì}˜ Õlñ´Ö·ûqc­z!»#üÙsì»0WC1A@ŸaòŠ^ô“)R¤H‘bU¡e{%ÖäþÿæÒ¬Dtb    IEND®B`‚
\ No newline at end of file
+IHDR  Ê   ,   åöø÷   sRGB ®Îé    IDATxÚíw¼Eùÿß{n˦Þ#5&+QJ"åGGŠŠ)¢H¤ˆTøDPÚ€”
+j ¡!¡%”@–do;g̳œ½{÷ôso"žÏ뵯ÜìٝyúóŒE
+ð»	88ØØX ÌnþêúAH
+4Ð@
+ü—ªIî	\Œ*rÙ<àמnu
+4Ð@ÿ3ŒÒsìC€i at k—¯wýà¾Æp7ÐÏØx½1
+4ÐÀ*e”žc»ÀÓ@SìôÀ}Àl`<p °aì÷nÀuý`NcÈè' ìœt
+“
+40ðŒR|’³€ÏÅNÿÌõƒŸ§\{)pzìÔÓÀ.
+ŸeŸqʸ~ëÇö›\?È~Š‡p+``0ØI³ÕrÌ<Ƕ *]²ö»~ðqcÕ4ÐÀêÍ(÷fÄNýÆõƒI ³Ûí]CÂc!s·»tå}Bþ»þ®Ì4׆᩶†+Èð4ßí.]>w0+Œ´°=0¸Èå9Œyo&héõj˜¿¾_ ÇYà\×nªã; þì<\àúÁ“U¶ÕlŒ–cX‘ËCà-›yÀkµ
+žc¾Læà;ÀµòMšEÀi˜@²jž³/ða¸÷G»~ÐUÇorpÆ1ÙõƒK˼ï$à§ÀÀÀ·\?计­2ß·–cT‰9Ë€Å2Æ3]?˜Õ Ÿ
+4eúÛx…¼Ùõ^ט·6CWvÛo!aSÓØϸ|ž0 gm€€]?XùÔ†Ø-Ëí¹Àæ)yβøÞØ¥ÁÀ GW3ÉTÙÌÇÀ¯€K+!^âç½3v* ¶wýàµ:½ÛõÀ‰±SÏ»~°C…mŒ’ñÙKQ5X	\\èúAGïñ}éC„ƒ98XxØ
+\\*ó­’ç´ õc§Ïvýàuúc™ôvYŒqýàŸ%î.*ÎÈŽvý Zaàp£Íj|¥—Ë]?˜Ò £
+|ÚQspý`pCìÔþžcê	††ëdå²›µöu]?€=¯Ûº~°òvhjYnÿ© “Ø!yÜ1øýõÒžcñûàŸŸj¦†æ†‰føoϱw­à¾¯&þoÇ×éý_Oœí9ööåjžcŸ<L¨I"þ§À\±HTŠo%þ‚çØ ïû‹ s¥üþ5À©â9ãLà¤:N»o'˜dÔ×R80EÛ;¦Š9±µçØO ·×I‚1y_ï9ö5bi ÿ=Fé9¶ã9öΞcÍ+ÂéΟ]¾ü=,®ˆßÜêÎÝ7k¡Û¹~ðŽë·º~ðÞ¬µ‡¬»™3x*&ð"ÂkÀã„tôj×
+â|b?0ÉVàIŒ	¬¹ŽMo<î9öQe^ÿJʹ	uêËx -q®KƺÔøXÀÀÀ :ŽÏÀϱ¿SÞVúÒ&šb[~ããŽ1æÑ“gäüùò~?ª¢ißcϱ·«Óûï“r®ëÁÐ2Ï»1ÁNõÆ÷€¤´ÿFé9¶å9öqžc?¼/¦¢§ç<ǾH.{ZLAq†eçcñrìüNV.;×sìW¼öA×yíöL«;·Âãb×|l5e÷wý`üà‚aÈÄ£­ðšgFÚ¬Îï|.ðÙ~O¸Ösìu˸vFʹ1žc¯ÝODùI×V–qï)Àý8ç.ó{‹"¿Ÿ³6X AÒæ§Å»¹ð³@;Æ_!'š=¿ïø
+­%¯`–ûÖA8Û
+Ø8å§h_|¦Û?­\kE
+ü7¢9¶˜G7bÌXi88hÁD軈•3‡dÆ7·ä¦‡½Ñ–„Ö–)í}@5öƒ®— ¶ƒ.>
+.›Õ>è+´~1Sµd2ÖIUjikl‘¶V /¯%˜áúBxÒˆßÀdàÿ•èΓòÌ!‰¶÷n­ñU÷.“1§ô_ø9Àø¥^Áø‹a]L€Hšy}ð{ϱǧù|˜$sð^€Û:{øWO–s·~¢Fu„l)ߪ'voc*~cîÿÆ´^I”èúИ üº¾ÇB×þÓßÜsì	"|¤á?2foe|Ómå’ø­¸Jƽ>ŒÒsìõ€‡
+\×	üNþþ½ÍzïDŒ[±âÝÙííã	;ÎÅD$Ú)m…À}–ÅwÇúoÌrìC,8%$üOfpÇ)cuÜ⍰¿‹ÅäêƒêÅ(1A!IskVΟçúÁG¡/HjH{Ž½ë3Šh0]žckŒ-I˜«f”žc¯oäŽÊ¥hißìà,×–TØ—Ý0Q©£?íŠñ³ý1ež},ÿÄq~°Ø¡)oøè0š¥%óÐâßl6Æœ¹'&Mä$àŒ	¹¥¦9cJŒc7ϱmñ·×Sß1 at k<íÙ=ø-U¤©KSò›Ž÷»¥–hÜX]‘ñ;ƒñ_Ä™ä|‘ÈwÃFØ®\">£'Ì]Óã
+Ž]ºô#×~˜íÎl†ÅÉVÈo	ÃB¬?`…?Íes[»~ð•±Kƒ7ž1¢Ý2ZìîÖD‚Álj^/y·IXC©½ØoÃøµ’¸ØõƒI•2Iav÷_Í0‰qej0}[”kWG¸øW‰ñ±H÷aÝèúÁ	•2IŸÓJ»÷ó´õ¹"ˆ]—…×µ,lmb¨e†de‘3Œ¯P4u0+Lj658“â) š¾9˜ƒ
+<§Üy×Ràþb”Û¦œ»Òõƒ›«Ikóý¡	LêNƒI6ð©Õ(' nìÜLà€$aô{
+à.z›fïwý`aZÃãV¬x—\Sìá]™®Ÿæ#­žùÃz¼Oªå£
+Ԛ϶]Š6ù.&h¥j¸~°PŠ+œ—øit·O/`âú,ðï*»”fæ{¨¢¸0<qn9&/±–ñYâ9öyÐg.¤ðgÉE¹̸yXÛþ#bbCOÒf1eˆû¦qì&À‡bé-m7ðWJ˜Œ]?øØs직ÝS´üû«‚qôÍ;ÍŠg f]øKßôIoºW´úç1¾ÿ>PJMÖ²ZëK#bˆL<ü~°§ëçØQµ“‘ÂHw¢·YîàûÕ>øQhs|?¦+Þ=棕Ï™û
+Ö'?¼½]íLÒxæ¸~ÐY‡¶Ó’¯·/ƒà¼ì9öëBÜ“„¹bF)ZaUþÉãób5švZ×Jh:Æ'ýà‹b©h±`Y°òsf˱¬—–AêàèDö!ðÆ—Ú
+l)ÑUeöuFFYO
+ßsýÀïïÅí9öPÒÝ)kmÛõƒG<Ç^ØÄõƒ—úXïì\àçNŒ_õu`ÖúÍ)¯+&ÉúìÆä$7e‚@Þ*Lr'LŠ@!à2`ÿBÚd9>¼mÓœ•O?È„áU s†]§ËÊ~)vé3uz×4FP¯`Š´vFyŽÝZFe—ô
+¶Ø“^)vÒ¢f\Åã3?åÜHϱ×pýàCŒßºG4¯?s€³pôËÙ_ÈôNÓ›2´mÆÞË:¢ ?‹àb¢°[DÃ^ýŒ̺–ŸLwØÚsìM$2¶Œr Ì®…æÞzGWË,LPU`?LúO9Lu:pŽÖÚ£Ð8· aþ°ÖúwŸöwÎ`Âì?ÑÞä_§“œlSª¢H)d››{E†¹–ç º[²½óÃðú:½kZúŠ:µÖN¥}baNâ‹¢
+Ôƒ(¿àúÁ[UŽÏò~>Ì…í˜(Ó(ŠúLþµ3ùMÐMö¶†MÀo0~²Ïc‚±ŽÆøŒÂD».n¸
+N§ü"éÿ$½ªOÅZ¥çØí¤ûŧÄâ!miÊOÊèØ`–Rꔬ)‡û¿¢Q¾¬'ÿ´‘Ç,³ óùXáòž±Èh×_Q—Z¬V¶§‹LfAôÿž–žA†/Z›b… BÂg]¿ãáOù7x㳊«M­˜\Æ{*lkï*µÉǼž—wÞ/Ùû˜Õhw™Œ?üó¯åBç–ÎŽÔòɽ[4eºEC¼D$ÛCƒ0æÖm0õP#Td:vý ç9öCB’ĸÒrm{Ñ·¨ÇG¤›êûÿ”~Äq¤J= cÿÅɇÂp߬1ú·Zü’Þ&ÀVLjÖ0UŸFÊù‹•Rh­Ÿo𲚰·Œqc‹£|ã8Æsìó$zíWýùàåíO
+õíu¿gÖAÀµÙLϹM¹æ+!ü(cY§Yýû±Ö÷{\ÚY£©ß÷{–,ú$a.›QJØ~Z	½«Û¤{¢;Ë/VvÑ“ÏYÜãkÜQ„†à©ÌÉÁø§zrì’ͱyS/žó0U,"?…½
+ÆGù¯»8#…Qîå9v³ë=5jøTØF­øS
+£l‘£R-ù=Œopp}™E,jE‡Ö:éÓ}˜­”º
+)½&ZúüjÞ«<´Ö‹£ÐwÁ<De×6:=Ç^‚ID¾øslí³ÇB:¼ácXÖ¾ Vž>sxÛŒqv¾ ]{Ðû+G¡\&?#…QVZfwÒËÖ=¶ºMºY=YFX--Î…_·–˜q¢ÝAæ4ƒî‚ñ¯dsÌêɱaÆ¢5ØóLÀÔ˜À§meþ^É§¬•Q&1ÁZI±þU韌ð{aûÖ©½uäp3=Çþ5pU5ïëDÔßWJ]H>X«¢
+AJ©AKÚ2­úkJ)Kær¨µ^Rc;í—ȵôM)åˆ0¿ðµÖ«…¦¨”*c¿\Þ1W‡6‡ˆ…aY-ãŸÆ(ÿ ü|¢%ßKŽ<Çþ†ëÕ}¤2™{	Ã}…£lÚ”É<åµÛ»K«Ûj5ÇDŒN§oxýžcoáúÁü
+Ì%I<éúÁŠ:¿×ƘÀŸ'H÷żžéÌrÁàVölmšâúÁß1»¨¬C"}ãvËåÓ:{Î};òî,Û6YìÐÜÄ+:·Â˜â"sÜ­"”d0³5Áõƒ·<Ç~¾),Êe”Réj“UÍ(]?èöû0Œ‰ç:7¿&èl;úáHÄã%6WJµi­;‹ÓÀ©“ýèØù…óÿÕZë‡K0ž»¢O­µ>C)µp6¦‚Ùp¹n¾~i­ç•IèLjð·±ø¥ÔbL:ί´Ö¯•h##ïvš|›x¼CVÞó!àN­õƒ)÷ÿØèÖZï;?¸ŒÞéN_QJé”n\¬µ¾?¥íõ0¹øÉ3",WJ=\©µ~´ÄûýSj‘Öú«ÂpŒÉ›Þ4.i­;•RG ß•Ó7k­o,ã;ŒÄl×godÄô}zç¢Å±¦˜õ7ê=»,]yXñµ!OxŽýÞ¬öAÌn4Å1øÂ9ŽÃ*Ñäfi镐„öiT—cö‡¬s9[°YÓ'šá“ä˨õòÙÖÜ5Én-4Ç=]YîíêṞܾ"!'#.ë¹öŒ~ø¯Ökµ
+™å
+L¨)˜ §zã¸2ŠÝ÷'âVÑ :¥Ô_öyôÍuÞTøƒJ©Ë”R­šiÅÔì ”Ú
+“|<½s‘·À§=¥”*©Ñ‹fìaÌþ퉟×ÃDÇ¿¨”úV‘6Z0eoÁ(Ø$ýú6…s_ÝØûÅÑ.ç>—è×ø”c½”¾€‰¤?%Á$‘~<¢”š¢”*¶#Í®òŒqJ©ÍEP:;¥Í¦‰î9S´õRø&¦PÈxàÕŒ,¤G1	ç_IäBòN"-ózϱ¿PÏÙ}d›i="„$~ZÛ
+­	ah€þ´'ìœü_Æ$ߧÌÐvÿB	èe™Ë¤lÝöýÌ(‡ˆ	oMŒOq_úÖE-‰E¹0ݲ¦h©w“R”|Ǧ_n1óýž®,—­ìæÐ31þÉ(h£?LI…ŠÖ¯µ	.•0Ë\?ø¶°oˆ´ü˜®e˜ÜÄbG)\é9öŽ«èõ¶‰ý½Lk½´ ÙÀ->ƒ©_}(&júL°•%ÚX9iëSj—5<IªI@¤
+îUJM(ÂàÎÃ&Y1+ÓéÂ<Î& Ö
+Ü ”új¦.1¸…""çÆ”hœŒñåWŠWd¼®Mùg¥³ï·'¦ÐEĸçbŠ½,´2¾7ï	Àueô§Eæñ(`|¯SdÜþ¥Öúmòñ[RbÃa¤#
+˜Ú77‰TðI^¿L̲Ñ:S>\Ý°“ïû!¨gûÔÐÔtÙç"‹£f;ƒ¦Œõ;]Íäb1iüØõƒÅÞ;]l{”Y?3ÍìZ²l]…8SèýÑ&æöšL¦$FqÚ‚°¼¯q´˜(ŸM{èPokæålŽù¹FL|-kúÑ߁Nzû}32ÖÓJ.ͤïÀ²Ê«$øær”
+)¹¾|¯Óé»yB«˜ÿ=ï#šÇ©±S¸nMàfòќ߮KøënSJ]+ózGàX¥ÔµZëbQÊ‘pp)ðãX{3”RWaÒ˜NíæWJ©I¡RjGa†ÎÑZÇsyÿ¦”º¸žüžµ¿UJ=¬µ~7Aࣘ‹ù€[Dh˜”ÐKBk½PÞÁ%_yŽÖúW%¾Ñ Œ¯<â7÷ Gi­ã–€k¤"Ðd¹n¢Rê/iæÛ6”ãVàD­uÜÍ”ÜÈà:òiQ'`ÊUžäëw߯µ~«Ï~Œÿr'—Öã¯b¶Ïé!_”|ϱ‡Õ;¸Ç‚~pù£pÕÐöÁ{[!ãBØÂC…à†Ö	1	­^¸Øõƒ3W&›FD‡bê¯ê*åCÕÔò,€5„I쎉R&RÙ¹	I0b×
+ó|³-Û'‰úKr!Y at wg9¬­àpicZ‚!~üǝ3§kcë&¸dH+7uöðz6Ä‚>—ÍÍìo†"ï•b~Vâö´²u=ý0’ÁvŠÔ¾ ø›çØÐ×½Ó 3ÉQBݘôQËOŽ	ᓵ֓0ƒ7”RßÁ­I”…ÝK	UZ르•~ ”'}ÜQ´»äš™3Þ–`’Q[=À·”R;É8Àl<q~ì²-#z	Ü[ˆIJ{²6G’¯õp˜Öº+¥O7(¥¶‰)ggRºtäÀ1e(Í¡~sàP¥ÔÉZëBZu¼ Ì”ˆ åuèƒÇõÐùjÎÊ<ïµÛ—Éé+0	㝀šŠuÅÓƒ[‡Ìn>rØšƒ7Ìê|b¬¿ò\×_ù-Ëâ†ÈôcYŒ¯GqôÕ˜½NïRle™_k,[W.>þO4æŘj8>&Øå¬Øu‰´ø5à8‘€¯:lYÇ'&Ú1ÍfÊ-Î…µ¬ãP¹v:½«Èìì5uXÛ»`ÊÖmÜ”á»…)C[¹qXÛ3ôYªõS¦™]gº~°lUÍ/ϱëíç?;Í@ÔOÝ?Q)53vüS)µc6> &ˆ[Dû‹ˆ_NLœÅ4§9Àßå¿»ñUÒ^’¸¤ Ž4â(%,Âè#ü*Á€âˆûè÷*Ó78"ö÷¥iL2†Ëc´`w¥T©½}QN¯\¯i£@¶ƒRj-ò[$¾ÜׇQZV8X‹A„fo9×ÞÁäµµm£êÖcá¶zŽ}¬çس›[›–‡a÷;a6\д.ô{#£EòLôÜÖŸíØÃVw†ç9vS
+·O¯‚0ã'I¢Þ…¢E`üÆkTx{SѦÞFÚ
+ìõf.üDz·-£’ÞÝÕÛ¹ðàJ1‰Eh–IÜòPW¶9^•g°eÑl
+èÚOc”ëzŽ]jãïÕÆ?)±¿
+,ñû®çgR’O¨õ<ÇÙ¯±!&0%:vÂø¶#Ül¥µžV€ømŽ1ÌMÉÉLÃó1ëF±Æ{"bZwÇÖO²­Ñäýv/i­Ÿ+Ñ֝ä‹Cl­”Š-$_Mk{`Š˜IW„YÇc[n/ÁÐÞ¦wÌJ©þWb¥¹)Æ„'¸æëB· ¦j­³QŠÔòööèã‚5;EZ,®ÃâÝG´’‘Ì|‡M–PËÖðØ43Äð:¤cŸÃ=Ǿ8µ
+
+b&y¾#ô{¤ëï¸'M›,·l]©ñ)$˜Ì•É<^´ÈÃD>ãÛ;Kîý-°iv¹¡£›‰ƒZØ£¥‰ë2=¼‘±L`É⢸ðë/µ6õ°j1G˜þÈáeNy°JËÖ%ú2“_™ã’oTÚœÂ$ZçÛeÌꉷȗ׌hÄÆäýÇJ˜g¡ˆâ­ãý“"¥gh£€\·("¦Eˆ·Rê]Ì|ßX)•‰ån»´dqw­uV)µã×·d½¼ûíg¢•EÌ`¢RêÌî9›Ët× NÃáä#x»ÊœoÄþÞ¤ÈuÄöC.cìÞWJ݉‰¯Ø^)5NktáLŒ)Ÿ¤‘Ä5ÊCÚÃï žѶ7±]CÂ0\TãâÝC$À‘EvºWbPºj$zIlU'‚´9Æ	½‰LŠobJ²U
+òŽV	­rŸ:i“iãó™"×_/l”ˆ?–|ÕÙ"é}3êËcÝY^Íæh¶,N•”Ð́}1æ×50‘µ7Ê8d™·Tˆ7m,‹™Ã÷¤w9B0¦ëÙ«àöŠ1É“êÔöF)L²›ôøµbŠÖz\ìøŒh”?fí w(¥Ž.pÿZ‰~YÆvÖ-ÁÄËAÄ[cÚ-ô®±üf…m%ïGŒIôN™…‰3™,QJMÿî@ Þ¿·Ë,v¿E®{§Šâ	ñhÚ¤|·˜Põ€Öú4F×&µë‹ ÂLS|?Âs™Žª#)¥¾ä=ôÞ®ëa*;ó\Ëõƒ¹žcoƒñs}¢áÖ¸1l#øl•ÅÇãï”ÁDt
+IütD„y½ÓrŠf)[·[Ì|i㳍ìCš†•g{Ô¿mD˜‰Kõ3›Û-Þ~3òZ6G†¸ÍökiŠÃ2~wb|Nã0Á@²z m,wñ»5"í[=ìúAnôýúæ–n#k«V¤/xe 6oÖZ¯ÐZ_!ÂX„+¤˜ )Âf|ž_YáQ¬vlK™]Žû9»
+XÉZËl«¥•MkÓZÿF4Õ1Á0'¬DGÏIÐR#[ÅXµ”iEÌU1o4pàH¥TÜjvb\8‹ß×\@êz`öˆÁŸÃ0¯±„\<îÃÞ	ËâóXXRF
+Ë3å"×~’ ¾(4N¤§ÖøÁ^é3þÎkbry~XC»§`VOUÙÞôM-Ø·@Ñ=é[¶. º²u1ùtq0ÌU¨êÊØÐì¯bJÇ-&±ÕŒáƒþñÛŽîµîêÊòÏžû´6Ó†œ=¸åžû?Ên€ÉÝ]cƵ„aÞÈꃍòۋضbø§¥M¤´qÿªè¸ëïHän2jóמcï_mT´çØCè _c
+­õ-Ryå ´I>u!Â’„rj»°Q™×E±+µÖïÅÎûU´µQû{™Å*ø;	'BÜDѐaRLžÔZ¿ÒŸ(îÒYO)Õ,¼Å°q©÷«×a\C0fØ)J©vŒ	Ìtß×('¥E+Ì.‹ow®–…²¦çØ?ò{žü¾<Ç~ÙsìsÒú¢™Ä‰Èo\?ø‰çØmžcî9ö÷<ǾÆsì§Äl·FÂÌ7£F¢ÑIúž„§xŽ}­ø–*!¶çا’ß—-)E]^eWo£oD;¦<Süù-äÓvâøK5eë„h¦i³ÇyŽ}³çØëÔ§ÉÄŠj,‰õñKíëÑ£ÛšÛš€Ù?bY­–õ¤¼Ó‘¢AþS-ä0ê·½W]˜
+&76‰ïI¾dߤ¯K¡“h½ªðç”sû7{Ž½ALrgÄÒ|GO¯¢w<|e±ï(¥¶Kü/Wïà–‘J©¢Ûé‰Ö)"Š›—z˜<kݘfº a"«µ~Rk}¦°LTÑÊŽ1‡~ÓüÉ›R›L°âãðr?tëäMÓ‘ùõÀñôÒ(çarö vô»}Œ¼:»}Èι0;¦	ýâ[žcï L+Iš1>­€yŽ}²ë¿ý¾k´\†)¡W7 'Õ)'ðd16'„…ïÇKtà|!nÅL(Ê»²ŸÿÉõƒÕtÐõƒ7<Ç~„¾ù{S=Çþ¦HÇmÀ$ÐZ4ïSE³K.üc€#=Çž©Îñ‰ÿã?Ùܐ«‚îîgzr Ãδ[~yh[sãY`ãŒÅ›3¼q2"MàQ9Ú(¯Àužc×£÷ÇҏGK̯©ô
+šÚxIjÂöñJ«\uW5ûwˆ0—4
+8Ìsìÿ`ò\K	WkÉ7݈ô4­ç€kVÅj­_QJýŸX>2Àψ¥Nh­JÝÕ-€5”Rûk­ÿ^§Ç[2–Ť¾^HëÖZÏ—àœõ1>{«3+a¤à<[i`ŽÖºC)u%&¦*,"Ÿ¢¡—ãºz\ÆL0ÙÙEÑ¢ý‚ñyÏî‡ùò‘tŒ•‚ñô¡>­8ø‘¼¶¸Ësì	c—®x±Ñ‹4y?}ë&1¸Ésì­\?8+Æ`"„1I¡¹á]Q‘ϯWâ¼ëÏzŽ}pNÊσdÒl_ãcÞ“…Z~ŸÂ(-J'>/¤†¤v×þã9ö™äwbˆ£ãèŽGò™¦{·4ñj6DzÞÈ…»®CÇÒ8,¡ÂŽeñq.fYǧ|ÓÎ
+¹
+øj  ›IDATºZÏêPež¾ú+Ægšô×nAñԁè[®RX¬;S~nä'Œ®ñ1ÝÀ×e£èU…_ˆ@צ”ÚVkgJWcªä€©óh¢2L!Âm•0rªRê¦4“¢ä`Æ];i9—7cŠzƒ©EúHÚ3egŒÓÍ­2ûѨoV1Öo“wG”“.xsŒQž¤”º¬HŠÎ¹1AìN­õÇý4_®#_åhrl
+<(ˆH5½º~0:OŽ5;<Ç>Âsì
+Äoxµ˜Ù¢kîmpg!4wÄ~› ; RwôÛäsÿÎÀD{z˜HÇ;…nèúÁyu¬.áçô_â`¯
+vü(f.ó*¼'N®Ãx]C…fî[›Ø´)C70§'˼žÞ>öІ4Yº~°°‚w|Õsl»³é, \•ÂÝÔž?Ö:.®ü…ÒIñµà\×´t]šV‰q[Dt-ù½®'”³)ð„TÌ)Ä ·RJ]Nºé:‰m1µ\‡'Úp01›É©¿k­ÓŠe\M¾Üã—€?)¥ìD[ëˆ)¯Ò;ÿà(¥Ô}J©
+WJ­‘›T1Öq“ï®J©CK7˜	,C„Í'”R›&úÕ¬”º|Ï.Œ¿¹¿æ‹G~×™ø<HÝœ=éc9Q.J›Ø´†³\?ˆW‰˜%&±ï%L0×J¹«™¢Dð0àj×^!½.fIØÝžcïüD¤¸Ö:5ý2p”ësëÐÇNϱ†^n÷ù®Ü[‡g‡žcï1ÞO‘>Ñ-‹SµpìòNæeCföä™1ÕtÂ0d~6da.Ìnáê£Ž+‡Ó;"»?ÐM‰]×~ë9ö˜˜ZÎ|8®‚KZ©¾jRgέý4ú€U‹×ï×cÞÕ	b‚32ÀJ©´Ö/ÆLŽ‰P¾1&ïò)¥ÔlùV¯‘ÏÏÜ,¦a”²Ð<.´	ÀËJ©ÇDØ“ß92&Dÿ¸ Ñ~[êœÞ&ôñpa at Ob\£1¦þÈ’·S¶-HQ|ö“c‘RjŽX™Þu¼¹(!Cc–’jÍ.­Ì©K)õ^l¡µþ³¼_¨”:±¶ð•ç•RO	³Úãš‹û½O×Z?ßÏóe2½Mæï`Š©SP£bð>Æóx‰ü2b’žcâ9ötϱ'I×ÒÛ½°›EÄ¥ëIµ¦fÔÀ:\?øÆÏ—,ŸV)æb­·­§T-Æ·Px4DC?ã®×³{\?¸LûÝ÷Ù°us†£ÛŒt[gWÝLíèfZg68yEç’å!|
+Ï£òî_Sßí³ÒpC™fÓ„Ѽ]äšå˜@.U’u®ÌI¬ÇžBRoßô§±oZ–cb¶[˜$Zë—b`­Rk½ “CÜsÆ]ò}àÀ“ì ôƘôç1~ê#EÀ<2Æ$_>_lOJ­õ¢M½/§Öeâ,Ì&“|
+س€fw_¬/ó$LY¼sÄü9T,·_«a³ä…YFæë(vc9†¥hü»Æ´ú¡˜ð3¥_“ü˜¨µ¾z ¦Ì4zo;wS¡ˆÜ‚ê²çØ_
+s—„æù°»ëYÉ%{+6(û¹~ð€Ü¯h£‹Q®¬ðûhL:A„o»~0eU/0‰ ÝJçö%´¨¨8ô|9ôƒy8Ù¿
+1•þ7ÂT­Y&’â|`ö <¿	¼ù³úTìÉ…!OöäÖ¾he×>R"_ÆdY˪xþf˜€ˆz×+í‰ööJÆPæË.²¸7Âø·_—o2Ûõƒ¥ý0?¿"„èö"Uš*i³]¾é(9F”0ÿ¾#Bá<àõþžsJ©ýÈçj>"ùoåÜ·%ùñ,f£ãî”ëÆ#ÚE˜Ê0L\ÄÛò-Â$/O¹wòffh­'H4ê70uB7áî±ܬµþ¨Ìþ«ÅŒÿÛ>f{/pK± Ùp8Úr”0ܵ1>ö70¹Ê“#M»@ß'«µþy‰þ®-ŸåY¯¸[ký¯”ë3˜󃄖¬-‚×BL*ÖÔDúLÚ3Ï”5·Tk}eólŽÐýزЦØVj„,¨Áòñg»~ÈoC„QFÌÆ»~ðœl˳0Çõƒ.ϱ[1>ÐxQõ}\?x>-*ß|ªHÓ-"iÞŠ	šéiQÿíHc”Qù¯üŽcÈÇ«<¨µÞ§ÐµÍe˜l>¢@`‰h‰g“÷I:ÀtñSÎpýÀ†º=¦ê}œI>Ð`’Ÿ:,‹Ãn"‘덡i V3Äcl®-vas6YÌ
+Q:ú˜ÈÕNϱŸÁ쑶~âž÷19
+|:ñ>y_K
+4ÐÀê¦M0cŽ¾§_¥ë9‰’¼…ÞUÚHÏû{
+˜àš¡h h ¿c&f¦U”º8¯º¤TPS¦<³#1ÎìBuW`¢¤Ü“l h` 1“ó'LjT<ä­uÉ”µæzõBvGøƒçØ·`"®Fc‚€ÞÅä=&é'
+4Ð@
+4°ªÃDÙN¥ÌšÜÿPžñöçÎ¾Ê    IEND®B`‚
\ No newline at end of file

Modified: branches/messer-51/src/www/tracker/browse.php
===================================================================
--- branches/messer-51/src/www/tracker/browse.php	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/www/tracker/browse.php	2012-01-19 15:25:17 UTC (rev 18052)
@@ -161,7 +161,7 @@
 if (getIntFromRequest('load_request')) {
 	if (getStringFromRequest('load_query') === _('Load')) {
 		$sql = "SELECT query, name FROM AdvancedQuery WHERE id = $1;";
-		$result = db_query_params($sql, array(getIntFromRequest('saved_advanced_querys')));
+		$result = db_query_params($sql, array(getIntFromRequest('saved_advanced_queries')));
 
 		$curSearchArr = db_fetch_array($result);
 
@@ -169,7 +169,7 @@
 		$queryName = $curSearchArr['name'];
 	} else if (getStringFromRequest('load_query') === _('Delete')) {
 		if (AdvancedSearch::deleteUserQuery(user_getid(),
-		    getIntFromRequest('saved_advanced_querys'),
+		    getIntFromRequest('saved_advanced_queries'),
 		    getIntFromRequest('atid'))) {
 			$feedback .= _('Deleted query successful.');
 		}
@@ -182,9 +182,9 @@
 	AStokenizer::$DFIProvider = new FusionForgeDFIProvider();
 
 	$parser->setParam('tracker_id', getIntFromRequest('atid'));
-        $parser->setParam('_sort_col', $_adv_sort_col);
-        $parser->setParam('_sort_ord', $_adv_sort_ord);
-        
+	$parser->setParam('_sort_col', $_adv_sort_col);
+	$parser->setParam('_sort_ord', $_adv_sort_ord);
+
 	$art_arr = $parser->parse($curSearch, $ath);
 
 	if ($art_arr === false) {
@@ -361,9 +361,9 @@
 print "</div>\n"; // end of about
 
 echo '<div id="tabber" class="tabber">';
-////////////////////////////////////
-// OLD POWERQUERYS BEGIN
-////////////////////////////////////
+////////////////////////////
+// OLD POWERQUERIES BEGIN //
+////////////////////////////
 echo '
 
 	<div class="tabbertab" title="'._('Power Query [OLD]').'">';
@@ -428,9 +428,9 @@
 	<a href="/tracker/?atid='. $ath->getID().'&group_id='.$group_id.'&func=query">'._('Build Query').'</a></strong>';
 }
 echo '</div>';
-////////////////////////////////////
-// OLD POWERQUERYS END
-////////////////////////////////////
+//////////////////////////
+// OLD POWERQUERIES END //
+//////////////////////////
 echo '<div class="tabbertab'.($set == 'advanced' ? ' tabbertabdefault' : '').'" title="'._('Advanced queries').'">';
 
 if (session_loggedin()) {
@@ -452,10 +452,10 @@
 
 <form id="load_query_form" name="load_query_form" method="post" action="<?php echo getStringFromServer('PHP_SELF').'?group_id='.$group_id.'&atid='.$ath->getID().'&search=true'; ?>">
 <?php echo _('Select Query'); ?>:
-<select name="saved_advanced_querys">
+<select name="saved_advanced_queries">
 	<option value="100"><?php echo _('Select One'); ?></option>
 <?php
-	//Get all global querys. This includes System and Tracker querys.
+	// Get all global queries. This includes System and Tracker queries.
 	$sql = "SELECT aq.id, aq.name FROM AdvancedQuery as aq, artifact_group_has_query as aghq
 			WHERE (aghq.group_artifact_id = $1 AND aq.id = aghq.query_id)";
 
@@ -471,7 +471,7 @@
 	}
 	echo html_ac($sptr);
 
-	//Get all global querys. This includes System and Tracker querys. //global? --mirabilos
+	//Get all global queries. This includes System and Tracker queries. //global? --mirabilos
 	$sql = "SELECT aq.id, aq.name FROM AdvancedQuery as aq, user_has_query as uhq
 			WHERE (uhq.user_id = $1 AND aq.id = uhq.query_id AND uhq.group_artifact_id = $2)";
 
@@ -647,50 +647,62 @@
 	}
 
 	$browse_fields = explode(',', "id,".$ath->getBrowseList());
-	$title_arr=array();
+	$title_arr = array();
+	$links_arr = array();
 	foreach ($browse_fields as $f) {
-		$title='<a href="'.getStringFromServer('PHP_SELF').
-                                 '?group_id='.$group_id.'&atid='.$ath->getID().
-                                 '&_sort_col='.$f.'&_sort_ord=';
-                                 
-                        if($_sort_ord == 'DESC') {
-                            $title .= 'ASC';
-                        } else {
-                            $title .= 'DESC';
-                        }
-                
-                $title .= '&set=advanced&search=true&advanced_search='.$curSearch.'">';
 		if (intval($f) > 0) {
-                        $title .= $ath->getExtraFieldName($f);
-		} else {
-			if ($f == 'id')
-				$title.=_('ID');
-			if ($f == 'summary')
-				$title.=_('Summary');
-			if ($f == 'details')
-				$title.=_('Description');
-			if ($f == 'open_date')
-				$title.=_('Open Date');
-			if ($f == 'close_date')
-				$title.=_('Close Date');
-			if ($f == 'status_id')
-				$title.=_('State');
-			if ($f == 'priority')
-				$title.=_('Priority');
-			if ($f == 'assigned_to')
-				$title.=_('Assigned to');
-			if ($f == 'submitted_by')
-				$title.=_('Submitted by');
-			if ($f == 'related_tasks')
-				$title.=_('Related tasks');
+			$title = $ath->getExtraFieldName($f);
+			if (!$title) {
+				$title = sprintf(_('unknown #%d'), $f);
+			}
+		} else switch ($f) {
+		case 'id':
+			$title = _('ID');
+			break;
+		case 'summary':
+			$title = _('Summary');
+			break;
+		case 'details':
+			$title = _('Description');
+			break;
+		case 'open_date':
+			$title = _('Open Date');
+			break;
+		case 'close_date':
+			$title = _('Close Date');
+			break;
+		case 'status_id':
+			$title = _('State');
+			break;
+		case 'priority':
+			$title = _('Priority');
+			break;
+		case 'assigned_to':
+			$title = _('Assigned to');
+			break;
+		case 'submitted_by':
+			$title = _('Submitted by');
+			break;
+		case 'related_tasks':
+			$title = _('Related tasks');
+			break;
+		default:
+			$title = sprintf(_('unknown ("%s")'), $f);
 		}
-                
-                $title .= '</a>';
+		$links_arr[] = util_gethref(false, array(
+			'group_id' => $group_id,
+			'atid' => $ath->getID(),
+			'_sort_col' => $f,
+			'_sort_ord' => ($_sort_ord == 'DESC' ? 'ASC' : 'DESC'),
+			'set' => 'advanced',
+			'search' => 'true',
+			'advanced_search' => $curSearch,
+		    ), false);
 		$title_arr[] = $title;
 	}
 
 	if ($art_cnt) {
-		echo $GLOBALS['HTML']->listTableTop ($title_arr);
+		echo $GLOBALS['HTML']->listTableTop($title_arr, $links_arr);
 	}
 
 	$then=(time()-$ath->getDuePeriod());
@@ -785,7 +797,6 @@
 		echo $GLOBALS['HTML']->listTableBottom();
 	}
 
-        
 	/*
 		Mass Update Code
 	*/

Modified: branches/messer-51/src/www/tracker/item.php
===================================================================
--- branches/messer-51/src/www/tracker/item.php	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/www/tracker/item.php	2012-01-19 15:25:17 UTC (rev 18052)
@@ -2,8 +2,9 @@
 /*-
  * Tracker Item detail view / modification interface for FusionForge
  *
- * Copyright © 2011
+ * Copyright © 2011, 2012
  *	Thorsten “mirabilos” Glaser <t.glaser at tarent.de>
+ * Copyright © 2011
  *	Katja Hapke <k.hapke at tarent.de>
  * Copyright © 2011
  *	Alain Peyrat – Alcatel-Lucent
@@ -102,17 +103,7 @@
 		$p['aid'] = $aid;
 		$p['artifact_id'] = $aid;
 	}
-	/* make link */
-	$selfurl = getStringFromServer('PHP_SELF');
-	$sep = '?';
-	foreach ($p as $k => $v) {
-		$selfurl .= $sep . $k . '=' . $v;
-		$sep = '&';
-	}
-	if ($return_encoded) {
-		$selfurl = htmlspecialchars($selfurl);
-	}
-	return $selfurl;
+	return util_gethref(false, $p, $return_encoded);
 }
 
 function gettipspan($idpart, $content) {

Modified: branches/messer-51/src/www/tracker/reporting/trackeract_graph.php
===================================================================
--- branches/messer-51/src/www/tracker/reporting/trackeract_graph.php	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/www/tracker/reporting/trackeract_graph.php	2012-01-19 15:25:17 UTC (rev 18052)
@@ -25,7 +25,7 @@
 
 require_once('../../env.inc.php');
 require_once $gfcommon.'include/pre.php';
-require_once(forge_get_config('jpgraph_path').'/jpgraph.php');
+require_once $gfcommon.'include/jpgraph.php';
 require_once(forge_get_config('jpgraph_path').'/jpgraph_line.php');
 require_once $gfcommon.'reporting/ReportTrackerAct.class.php';
 
@@ -46,7 +46,7 @@
         if($group->isPermissionDeniedError()) {
                 exit_permission_denied($group->getErrorMessage());
         } else {
-                exit_error(_('Error: ' . , $group->getErrorMessage(), 'tracker');
+                exit_error(_('Error: ') . $group->getErrorMessage(), 'tracker');
         }
 }
 
@@ -59,8 +59,7 @@
 //	Check for error, such as license key problem
 //
 if ($report->isError()) {
-	echo $report->getErrorMessage();
-	exit;
+	exit_error($report->getErrorMessage(), 'tracker');
 }
 
 // Create the graph. These two calls are always required

Modified: branches/messer-51/src/www/tracker/reporting/trackerpie_graph.php
===================================================================
--- branches/messer-51/src/www/tracker/reporting/trackerpie_graph.php	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/www/tracker/reporting/trackerpie_graph.php	2012-01-19 15:25:17 UTC (rev 18052)
@@ -25,7 +25,7 @@
 
 require_once('../../env.inc.php');
 require_once $gfcommon.'include/pre.php';
-require_once(forge_get_config('jpgraph_path').'/jpgraph.php');
+require_once $gfcommon.'include/jpgraph.php';
 require_once(forge_get_config('jpgraph_path').'/jpgraph_pie.php');
 require_once(forge_get_config('jpgraph_path').'/jpgraph_pie3d.php');
 require_once $gfcommon.'reporting/Report.class.php';
@@ -39,6 +39,7 @@
 $SPAN = getIntFromRequest('SPAN', REPORT_TYPE_MONTHLY);
 $start = getIntFromRequest('start');
 $end = getIntFromRequest('end');
+
 //
 //	Create Report
 //
@@ -48,8 +49,7 @@
 //	Check for error, such as license key problem
 //
 if ($report->isError()) {
-	echo $report->getErrorMessage();
-	exit;
+	exit_error($report->getErrorMessage(), 'tracker');
 }
 
 $group = group_get_object($group_id);
@@ -60,7 +60,7 @@
         if($group->isPermissionDeniedError()) {
                 exit_permission_denied($group->getErrorMessage());
         } else {
-                exit_error(_('Error: ' . , $group->getErrorMessage(), 'tracker');
+                exit_error(_('Error: ') . $group->getErrorMessage(), 'tracker');
         }
 }
 

Modified: branches/messer-51/src/www/tracker/search.php
===================================================================
--- branches/messer-51/src/www/tracker/search.php	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/www/tracker/search.php	2012-01-19 15:25:17 UTC (rev 18052)
@@ -47,16 +47,14 @@
 
 $reducedAutoComplete = array();
 
-if(strlen(end($words)) > 1) {
-    //Remove all elements that aren't matching the current input
-    foreach($autoComplete as $curWord) {
-        if(strpos($curWord, end($words)) !== FALSE) {
-            $reducedAutoComplete[] = $curWord;
-        }
-    }
-    echo minijson_encode($reducedAutoComplete);
+if (strlen(end($words)) > 1) {
+	// Remove all elements that aren't matching the current input
+	foreach ($autoComplete as $curWord) {
+		if (strpos($curWord, end($words)) !== FALSE) {
+			$reducedAutoComplete[] = $curWord;
+		}
+	}
+	echo minijson_encode($reducedAutoComplete);
+} else {
+	echo minijson_encode($autoComplete);
 }
-else {
-    echo minijson_encode($autoComplete);
-}
-

Modified: branches/messer-51/src/www/tracker/tracker.php
===================================================================
--- branches/messer-51/src/www/tracker/tracker.php	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/www/tracker/tracker.php	2012-01-19 15:25:17 UTC (rev 18052)
@@ -25,6 +25,13 @@
 //
 //	get the Group object
 //
+
+$group_id = getIntFromRequest('group_id');
+$group_project_id = getIntFromRequest('group_project_id');
+$func = getStringFromRequest('addtask');
+$related_artifact_id = getIntFromRequest('related_artifact_id');
+$related_artifact_summary = getStringFromRequest('related_artifact_id');
+
 $group =& group_get_object($group_id);
 if (!$group || !is_object($group)) {
 	exit_no_group();

Modified: branches/messer-51/src/www/widgets/updatelayout.php
===================================================================
--- branches/messer-51/src/www/widgets/updatelayout.php	2012-01-19 15:24:44 UTC (rev 18051)
+++ branches/messer-51/src/www/widgets/updatelayout.php	2012-01-19 15:25:17 UTC (rev 18052)
@@ -76,7 +76,9 @@
                                 switch($action) {
                                     case 'remove':
                                         $instance_id = (int)$param[$name][$action];
-                                        $lm->removeWidget($owner_id, $owner_type, $layout_id, $name, $instance_id, $widget);
+                                        if(forge_check_perm ('project_admin', $owner_id, NULL)) {
+                                               $lm->removeWidget($owner_id, $owner_type, $layout_id, $name, $instance_id, $widget);
+                                        }
                                         break;
                                     case 'add':
                                     default:



More information about the evolvis-commits mailing list