[Rt-commit] r4611 - in rt/branches/3.7-EXPERIMENTAL: . bin etc html/Admin/CustomFields html/Elements html/NoAuth/css/3.5-default html/Prefs html/REST/1.0/Forms/ticket html/REST/1.0/search html/Search html/Search/Elements html/Ticket html/Ticket/Elements html/Tools html/User/Elements html/Widgets html/Widgets/Form lib/RT lib/RT/I18N lib/t/regression sbin

ruz at bestpractical.com ruz at bestpractical.com
Wed Mar 1 10:45:03 EST 2006


Author: ruz
Date: Wed Mar  1 10:11:03 2006
New Revision: 4611

Added:
   rt/branches/3.7-EXPERIMENTAL/html/Prefs/Other.html
   rt/branches/3.7-EXPERIMENTAL/html/Widgets/Form/
   rt/branches/3.7-EXPERIMENTAL/html/Widgets/Form/Boolean
   rt/branches/3.7-EXPERIMENTAL/html/Widgets/Form/Integer
   rt/branches/3.7-EXPERIMENTAL/html/Widgets/Form/Select
Removed:
   rt/branches/3.7-EXPERIMENTAL/html/Elements/TitleBox
   rt/branches/3.7-EXPERIMENTAL/html/Elements/TitleBoxEnd
Modified:
   rt/branches/3.7-EXPERIMENTAL/   (props changed)
   rt/branches/3.7-EXPERIMENTAL/README
   rt/branches/3.7-EXPERIMENTAL/bin/rt.in
   rt/branches/3.7-EXPERIMENTAL/bin/webmux.pl.in
   rt/branches/3.7-EXPERIMENTAL/configure.ac
   rt/branches/3.7-EXPERIMENTAL/etc/RT_Config.pm.in
   rt/branches/3.7-EXPERIMENTAL/html/Admin/CustomFields/Modify.html
   rt/branches/3.7-EXPERIMENTAL/html/Elements/Header
   rt/branches/3.7-EXPERIMENTAL/html/Elements/MessageBox
   rt/branches/3.7-EXPERIMENTAL/html/Elements/PageLayout
   rt/branches/3.7-EXPERIMENTAL/html/Elements/QuickCreate
   rt/branches/3.7-EXPERIMENTAL/html/Elements/ShowCustomFields
   rt/branches/3.7-EXPERIMENTAL/html/Elements/TitleBoxStart
   rt/branches/3.7-EXPERIMENTAL/html/NoAuth/css/3.5-default/misc.css
   rt/branches/3.7-EXPERIMENTAL/html/REST/1.0/Forms/ticket/default
   rt/branches/3.7-EXPERIMENTAL/html/REST/1.0/Forms/ticket/history
   rt/branches/3.7-EXPERIMENTAL/html/REST/1.0/search/ticket
   rt/branches/3.7-EXPERIMENTAL/html/Search/Build.html
   rt/branches/3.7-EXPERIMENTAL/html/Search/Elements/BuildFormatString
   rt/branches/3.7-EXPERIMENTAL/html/Search/Elements/PickCFs
   rt/branches/3.7-EXPERIMENTAL/html/Search/Results.html
   rt/branches/3.7-EXPERIMENTAL/html/Search/Results.rdf
   rt/branches/3.7-EXPERIMENTAL/html/Ticket/Create.html
   rt/branches/3.7-EXPERIMENTAL/html/Ticket/Elements/ShowHistory
   rt/branches/3.7-EXPERIMENTAL/html/Ticket/Elements/ShowRequestor
   rt/branches/3.7-EXPERIMENTAL/html/Ticket/Elements/ShowSummary
   rt/branches/3.7-EXPERIMENTAL/html/Ticket/Elements/ShowTransactionAttachments
   rt/branches/3.7-EXPERIMENTAL/html/Ticket/Modify.html
   rt/branches/3.7-EXPERIMENTAL/html/Ticket/ModifyAll.html
   rt/branches/3.7-EXPERIMENTAL/html/Ticket/ModifyDates.html
   rt/branches/3.7-EXPERIMENTAL/html/Ticket/ModifyLinks.html
   rt/branches/3.7-EXPERIMENTAL/html/Ticket/ModifyPeople.html
   rt/branches/3.7-EXPERIMENTAL/html/Ticket/Update.html
   rt/branches/3.7-EXPERIMENTAL/html/Tools/Offline.html
   rt/branches/3.7-EXPERIMENTAL/html/User/Elements/Tabs
   rt/branches/3.7-EXPERIMENTAL/html/Widgets/TitleBoxStart
   rt/branches/3.7-EXPERIMENTAL/lib/RT/Attribute_Overlay.pm
   rt/branches/3.7-EXPERIMENTAL/lib/RT/Config.pm
   rt/branches/3.7-EXPERIMENTAL/lib/RT/CurrentUser.pm
   rt/branches/3.7-EXPERIMENTAL/lib/RT/CustomField_Overlay.pm
   rt/branches/3.7-EXPERIMENTAL/lib/RT/Date.pm
   rt/branches/3.7-EXPERIMENTAL/lib/RT/I18N/de.po
   rt/branches/3.7-EXPERIMENTAL/lib/RT/Interface/Web.pm
   rt/branches/3.7-EXPERIMENTAL/lib/RT/Record.pm
   rt/branches/3.7-EXPERIMENTAL/lib/RT/Tickets_Overlay.pm
   rt/branches/3.7-EXPERIMENTAL/lib/RT/Tickets_Overlay_SQL.pm
   rt/branches/3.7-EXPERIMENTAL/lib/RT/User_Overlay.pm
   rt/branches/3.7-EXPERIMENTAL/lib/t/regression/06mailgateway.t
   rt/branches/3.7-EXPERIMENTAL/lib/t/regression/09-api-date.t
   rt/branches/3.7-EXPERIMENTAL/lib/t/regression/17custom_search.t
   rt/branches/3.7-EXPERIMENTAL/lib/t/regression/25scrip_order.t
   rt/branches/3.7-EXPERIMENTAL/releng.cnf
   rt/branches/3.7-EXPERIMENTAL/sbin/rt-clean-sessions.in
   rt/branches/3.7-EXPERIMENTAL/sbin/rt-setup-database.in
   rt/branches/3.7-EXPERIMENTAL/sbin/rt-test-dependencies.in

Log:
 r1860 at cubic-pc:  cubic | 2006-02-25 01:40:17 +0300
  r1859 at cubic-pc:  cubic | 2006-02-25 01:39:38 +0300
  * describe MessageBoxHeight in config
  * generic input widgets:
  ** Boolean
  ** Integer
  ** Select
  * make config options customizable per user
 


Modified: rt/branches/3.7-EXPERIMENTAL/README
==============================================================================

Modified: rt/branches/3.7-EXPERIMENTAL/bin/rt.in
==============================================================================

Modified: rt/branches/3.7-EXPERIMENTAL/bin/webmux.pl.in
==============================================================================

Modified: rt/branches/3.7-EXPERIMENTAL/configure.ac
==============================================================================

Modified: rt/branches/3.7-EXPERIMENTAL/etc/RT_Config.pm.in
==============================================================================
--- rt/branches/3.7-EXPERIMENTAL/etc/RT_Config.pm.in	(original)
+++ rt/branches/3.7-EXPERIMENTAL/etc/RT_Config.pm.in	Wed Mar  1 10:11:03 2006
@@ -349,11 +349,12 @@
 # authentication.
 Set($WebNoAuthRegex, qr{^ (?:/+NoAuth/ | /+REST/\d+\.\d+/NoAuth/) }x );
 
-# For message boxes, set the entry box width and what type of wrapping
+# For message boxes, set the entry box width, height and what type of wrapping
 # to use.
 #
-# Default width: 72
-Set($MessageBoxWidth , 72);
+# Default width: 72, height: 15
+Set($MessageBoxWidth, 72);
+Set($MessageBoxHeight, 15);
 
 # Default wrapping: "HARD"  (choices "SOFT", "HARD")
 Set($MessageBoxWrap, "HARD");

Modified: rt/branches/3.7-EXPERIMENTAL/html/Admin/CustomFields/Modify.html
==============================================================================

Modified: rt/branches/3.7-EXPERIMENTAL/html/Elements/Header
==============================================================================
--- rt/branches/3.7-EXPERIMENTAL/html/Elements/Header	(original)
+++ rt/branches/3.7-EXPERIMENTAL/html/Elements/Header	Wed Mar  1 10:11:03 2006
@@ -54,7 +54,7 @@
     <meta http-equiv="refresh" content="<%$Refresh%>" />
 % }
     <link rel="shortcut icon" href="<%RT->Config->Get('WebImagesURL')%>/favicon.png" type="image/png" />
-    <link rel="stylesheet" href="<%RT->Config->Get('WebPath')%>/NoAuth/css/<% RT->Config->Get('WebDefaultStylesheet') %>/main.css" type="text/css" media="all" />
+    <link rel="stylesheet" href="<%RT->Config->Get('WebPath')%>/NoAuth/css/<% RT->Config->Get( 'WebDefaultStylesheet', $session{'CurrentUser'} ) %>/main.css" type="text/css" media="all" />
     <link rel="stylesheet" href="<%RT->Config->Get('WebPath')%>/NoAuth/css/print.css" type="text/css" media="print" />
 % if ($RSSAutoDiscovery) {
     <link rel="alternate" href="<%$RSSAutoDiscovery%>" type="application/rss+xml" title="RSS RT Search" />

Modified: rt/branches/3.7-EXPERIMENTAL/html/Elements/MessageBox
==============================================================================
--- rt/branches/3.7-EXPERIMENTAL/html/Elements/MessageBox	(original)
+++ rt/branches/3.7-EXPERIMENTAL/html/Elements/MessageBox	Wed Mar  1 10:11:03 2006
@@ -43,7 +43,7 @@
 %# those contributions and any derivatives thereof.
 %# 
 %# END BPS TAGGED BLOCK }}}
-<textarea class="messagebox" cols="<%$Width%>" rows="<%$Height%>" wrap="<%$Wrap%>" name="<%$Name%>"><& /Elements/Callback, %ARGS &><% $Default %><%$message%><%$IncludeSignature ? $signature : ''%></textarea>
+<textarea class="messagebox" cols="<% $Width %>" rows="<% $Height %>" wrap="<% $Wrap %>" name="<% $Name %>"><& /Elements/Callback, %ARGS &><% $Default %><% $message %><% $signature %></textarea>
 <%INIT>
 
 my $message = '';
@@ -55,18 +55,18 @@
 }
 
 my $signature = '';
-if ($IncludeSignature && $session{'CurrentUser'}->UserObj->Signature) {
-	$signature = "-- \n".$session{'CurrentUser'}->UserObj->Signature;
+if ($IncludeSignature and my $text = $session{'CurrentUser'}->UserObj->Signature) {
+	$signature = "-- \n". $text;
 }
 
 </%INIT>
 <%ARGS>
 $QuoteTransaction => undef
-$Name => 'Content'
-$Default => ''
-$Width => RT->Config->Get('MessageBoxWidth') || 72
-$Height => RT->Config->Get('MessageBoxHeight') || 15
-$Wrap => RT->Config->Get('MessageBoxWrap') || 'HARD'
+$Name             => 'Content'
+$Default          => ''
+$Width            => RT->Config->Get('MessageBoxWidth', $session{'CurrentUser'} ) || 72
+$Height           => RT->Config->Get('MessageBoxHeight', $session{'CurrentUser'} ) || 15
+$Wrap             => RT->Config->Get('MessageBoxWrap') || 'HARD'
 $IncludeSignature => 1
 </%ARGS>
 

Modified: rt/branches/3.7-EXPERIMENTAL/html/Elements/PageLayout
==============================================================================
--- rt/branches/3.7-EXPERIMENTAL/html/Elements/PageLayout	(original)
+++ rt/branches/3.7-EXPERIMENTAL/html/Elements/PageLayout	Wed Mar  1 10:11:03 2006
@@ -174,7 +174,7 @@
 
 my ($menu_depth, $almost_last, $page_tabs);
 
-if (RT->Config->Get('WebDefaultStylesheet') ne '3.4-compat') {
+if (RT->Config->Get( 'WebDefaultStylesheet', $session{'CurrentUser'} ) ne '3.4-compat') {
     ($menu_depth, $almost_last) = @{$m->comp('.menu_recurse', data => $toptabs)};
 
     if (defined $almost_last->{subtabs} and %{$almost_last->{subtabs}}) {

Modified: rt/branches/3.7-EXPERIMENTAL/html/Elements/QuickCreate
==============================================================================

Modified: rt/branches/3.7-EXPERIMENTAL/html/Elements/ShowCustomFields
==============================================================================

Modified: rt/branches/3.7-EXPERIMENTAL/html/Elements/TitleBoxStart
==============================================================================

Modified: rt/branches/3.7-EXPERIMENTAL/html/NoAuth/css/3.5-default/misc.css
==============================================================================

Added: rt/branches/3.7-EXPERIMENTAL/html/Prefs/Other.html
==============================================================================
--- (empty file)
+++ rt/branches/3.7-EXPERIMENTAL/html/Prefs/Other.html	Wed Mar  1 10:11:03 2006
@@ -0,0 +1,56 @@
+<& /Elements/Header, Title => $title &>
+<& /User/Elements/Tabs, 
+    current_tab => 'Prefs/Other.html',
+    Title => $title,
+&>
+<& /Elements/ListActions, actions => \@results &>
+
+<form method="post" action="Other.html">
+% foreach my $section( RT->Config->Sections ) {
+<&|/Widgets/TitleBox, title => loc( $section ) &>
+% foreach my $option( RT->Config->Options( Section => $section ) ) {
+% my $meta = RT->Config->Meta( $option );
+<& $meta->{'Widget'},
+    Empty        => 1,
+    %{ $meta->{'WidgetArguments'} },
+    Name         => $option,
+    EmptyValue   => scalar RT->Config->Get( $option ),
+    CurrentValue => $preferences->{ $option },
+&>
+% }
+</&>
+% }
+
+<& /Elements/Submit, Name => 'Update', Value => loc('Save changes') &>
+</form>
+<%INIT>
+my @results;
+my $title = loc("Other preferences");
+
+my $UserObj = $session{'CurrentUser'}->UserObj;
+my $preferences = $UserObj->Preferences( $RT::System );
+
+if ( $Update ) {
+    foreach my $option( RT->Config->Options ) {
+        my $meta = RT->Config->Meta( $option );
+        my $value = $m->comp('/Widgets/'. $meta->{'Widget'} .":Process",
+            Arguments    => \%ARGS,
+            Empty        => 1,
+            %{ $meta->{'WidgetArguments'} },
+            Name         => $option,
+            EmptyValue   => scalar RT->Config->Get( $option ),
+            CurrentValue => $preferences->{ $option },
+        );
+        if ( defined $value ) {
+            $preferences->{ $option } = $value;
+        } else {
+            delete $preferences->{ $option };
+        }
+    }
+    $UserObj->SetPreferences( $RT::System, $preferences );
+}
+</%INIT>
+<%ARGS>
+$Update => 0,
+$User   => undef,
+</%ARGS>

Modified: rt/branches/3.7-EXPERIMENTAL/html/REST/1.0/Forms/ticket/default
==============================================================================

Modified: rt/branches/3.7-EXPERIMENTAL/html/REST/1.0/Forms/ticket/history
==============================================================================

Modified: rt/branches/3.7-EXPERIMENTAL/html/REST/1.0/search/ticket
==============================================================================
--- rt/branches/3.7-EXPERIMENTAL/html/REST/1.0/search/ticket	(original)
+++ rt/branches/3.7-EXPERIMENTAL/html/REST/1.0/search/ticket	Wed Mar  1 10:11:03 2006
@@ -123,7 +123,7 @@
     }
     else {
 	my $id = $ticket->Id;
-        my $d = $m->comp(RT->Config->Get('WebPath')."/REST/1.0/Forms/ticket/default", id => $id, format => $format, fields => \%fields);
+        my $d = $m->comp('/REST/1.0/Forms/ticket/default', id => $id, format => $format, fields => \%fields);
         my ($c, $o, $k, $e) = @$d;
 	push @output, [ $c, $o, $k ];
     }

Modified: rt/branches/3.7-EXPERIMENTAL/html/Search/Build.html
==============================================================================

Modified: rt/branches/3.7-EXPERIMENTAL/html/Search/Elements/BuildFormatString
==============================================================================

Modified: rt/branches/3.7-EXPERIMENTAL/html/Search/Elements/PickCFs
==============================================================================

Modified: rt/branches/3.7-EXPERIMENTAL/html/Search/Results.html
==============================================================================
--- rt/branches/3.7-EXPERIMENTAL/html/Search/Results.html	(original)
+++ rt/branches/3.7-EXPERIMENTAL/html/Search/Results.html	Wed Mar  1 10:11:03 2006
@@ -76,14 +76,15 @@
 </div>
 <div align="right">
 <& Elements/ResultViews,
-QueryString => $QueryString,
-Query => $Query,
-Format => $Format,
-Rows => $Rows,
-OrderBy => $OrderBy,
-Order => $Order,
-RSSFeedURL => $RSSFeedURL,
-ShortQueryString => $ShortQueryString &>
+    QueryString => $QueryString,
+    Query => $Query,
+    Format => $Format,
+    Rows => $Rows,
+    OrderBy => $OrderBy,
+    Order => $Order,
+    RSSFeedURL => $RSSFeedURL,
+    ShortQueryString => $ShortQueryString,
+&>
 <& /Elements/Callback, _CallbackName => 'SearchActions', QueryString => $QueryString&>
 </div>
 <%INIT>

Modified: rt/branches/3.7-EXPERIMENTAL/html/Search/Results.rdf
==============================================================================

Modified: rt/branches/3.7-EXPERIMENTAL/html/Ticket/Create.html
==============================================================================
--- rt/branches/3.7-EXPERIMENTAL/html/Ticket/Create.html	(original)
+++ rt/branches/3.7-EXPERIMENTAL/html/Ticket/Create.html	Wed Mar  1 10:11:03 2006
@@ -52,7 +52,7 @@
     actions => $actions &>
 <form action="<%RT->Config->Get('WebPath')%>/Ticket/Create.html" method="post" enctype="multipart/form-data" name="TicketCreate">
 <input type="hidden" class="hidden" name="id" value="new" />
-<& /Elements/Callback, _CallbackName => 'FormStart',ARGSRef =>\%ARGS &>
+<& /Elements/Callback, _CallbackName => 'FormStart', ARGSRef => \%ARGS &>
 
 <div id="Ticket-Create-basics">
 <a name="basics"></a>

Modified: rt/branches/3.7-EXPERIMENTAL/html/Ticket/Elements/ShowHistory
==============================================================================
--- rt/branches/3.7-EXPERIMENTAL/html/Ticket/Elements/ShowHistory	(original)
+++ rt/branches/3.7-EXPERIMENTAL/html/Ticket/Elements/ShowHistory	Wed Mar  1 10:11:03 2006
@@ -136,8 +136,7 @@
 }
 
 
-my $OldestFirst = RT->Config->Get('OldestTransactionsFirst')? 1: 0;
-$OldestFirst = $session{'CurrentUser'}->UserObj->Preferences( OldestTransactionsFirst => $OldestFirst );
+my $OldestFirst = RT->Config->Get( 'OldestTransactionsFirst', $session{'CurrentUser'} );
 $OldestFirst = $OldestFirst? 'ASC': 'DESC';
 $Transactions->OrderByCols( { FIELD => 'Created',
                               ORDER => $OldestFirst },

Modified: rt/branches/3.7-EXPERIMENTAL/html/Ticket/Elements/ShowRequestor
==============================================================================

Modified: rt/branches/3.7-EXPERIMENTAL/html/Ticket/Elements/ShowSummary
==============================================================================

Modified: rt/branches/3.7-EXPERIMENTAL/html/Ticket/Elements/ShowTransactionAttachments
==============================================================================
--- rt/branches/3.7-EXPERIMENTAL/html/Ticket/Elements/ShowTransactionAttachments	(original)
+++ rt/branches/3.7-EXPERIMENTAL/html/Ticket/Elements/ShowTransactionAttachments	Wed Mar  1 10:11:03 2006
@@ -74,7 +74,8 @@
 
     # If it's text
     if (   $message->ContentType =~ m{^(text|message)}i
-        && (!RT->Config->Get('MaxInlineBody') || $size <= RT->Config->Get('MaxInlineBody')) )
+        && (   !RT->Config->Get( 'MaxInlineBody', $session{'CurrentUser'} )
+            || $size <= RT->Config->Get('MaxInlineBody', $session{'CurrentUser'} ) ) )
     {
 
         if (

Modified: rt/branches/3.7-EXPERIMENTAL/html/Ticket/Modify.html
==============================================================================
--- rt/branches/3.7-EXPERIMENTAL/html/Ticket/Modify.html	(original)
+++ rt/branches/3.7-EXPERIMENTAL/html/Ticket/Modify.html	Wed Mar  1 10:11:03 2006
@@ -50,8 +50,8 @@
 
 <& /Elements/ListActions, actions => \@results &>
 <form method="post" action="Modify.html" enctype="multipart/form-data">
-<& /Elements/Callback, _CallbackName => 'FormStart',ARGSRef =>\%ARGS &>
-<input type="hidden" class="hidden" name="id" value="<%$TicketObj->Id%>" />
+<& /Elements/Callback, _CallbackName => 'FormStart', ARGSRef => \%ARGS &>
+<input type="hidden" class="hidden" name="id" value="<% $TicketObj->Id %>" />
 <&| /Widgets/TitleBox, title => loc('Modify ticket #[_1]',$TicketObj->Id) &>
 <& Elements/EditBasics, TicketObj => $TicketObj &>
 <& Elements/EditCustomFields, TicketObj => $TicketObj &>

Modified: rt/branches/3.7-EXPERIMENTAL/html/Ticket/ModifyAll.html
==============================================================================
--- rt/branches/3.7-EXPERIMENTAL/html/Ticket/ModifyAll.html	(original)
+++ rt/branches/3.7-EXPERIMENTAL/html/Ticket/ModifyAll.html	Wed Mar  1 10:11:03 2006
@@ -52,9 +52,10 @@
 <& /Elements/ListActions, actions => \@results &>
 
 <form method="post" action="ModifyAll.html" enctype="multipart/form-data">
-<& /Elements/Callback, _CallbackName => 'FormStart',ARGSRef =>\%ARGS &>
+<& /Elements/Callback, _CallbackName => 'FormStart', ARGSRef => \%ARGS &>
 <input type="hidden" class="hidden" name="id" value="<%$Ticket->Id%>" />
 
+
 <&| /Widgets/TitleBox, title => loc('Modify ticket # [_1]', $Ticket->Id) &>
 <& Elements/EditBasics, TicketObj => $Ticket &>
 <& Elements/EditCustomFields, TicketObj => $Ticket &>

Modified: rt/branches/3.7-EXPERIMENTAL/html/Ticket/ModifyDates.html
==============================================================================
--- rt/branches/3.7-EXPERIMENTAL/html/Ticket/ModifyDates.html	(original)
+++ rt/branches/3.7-EXPERIMENTAL/html/Ticket/ModifyDates.html	Wed Mar  1 10:11:03 2006
@@ -52,9 +52,10 @@
 <& /Elements/ListActions, actions => \@results &>
 
 <form method="post" action="ModifyDates.html">
-<& /Elements/Callback, _CallbackName => 'FormStart',ARGSRef =>\%ARGS &>
+<& /Elements/Callback, _CallbackName => 'FormStart', ARGSRef => \%ARGS &>
 <input type="hidden" class="hidden" name="id" value="<%$TicketObj->Id%>" />
 <&| /Widgets/TitleBox,title => loc('Modify dates for ticket # [_1]', $TicketObj->Id) &>
+<& Elements/EditDates, TicketObj => $TicketObj &>
 </&>
 <& /Elements/Submit, Label => loc('Save Changes') &>
 </form>

Modified: rt/branches/3.7-EXPERIMENTAL/html/Ticket/ModifyLinks.html
==============================================================================
--- rt/branches/3.7-EXPERIMENTAL/html/Ticket/ModifyLinks.html	(original)
+++ rt/branches/3.7-EXPERIMENTAL/html/Ticket/ModifyLinks.html	Wed Mar  1 10:11:03 2006
@@ -53,9 +53,8 @@
 
 <form action="ModifyLinks.html" method="post">
 <input type="hidden" class="hidden" name="id" value="<%$Ticket->id%>" />
-<& /Elements/Callback, _CallbackName => 'FormStart',ARGSRef =>\%ARGS &>
+<& /Elements/Callback, _CallbackName => 'FormStart', ARGSRef => \%ARGS &>
 <&| /Widgets/TitleBox, title => loc('Edit Links') &>
-
 <& /Elements/EditLinks, Object => $Ticket, Merge => 1 &>
 </&>
 <& /Elements/Submit, Label => loc('Save Changes') &>

Modified: rt/branches/3.7-EXPERIMENTAL/html/Ticket/ModifyPeople.html
==============================================================================
--- rt/branches/3.7-EXPERIMENTAL/html/Ticket/ModifyPeople.html	(original)
+++ rt/branches/3.7-EXPERIMENTAL/html/Ticket/ModifyPeople.html	Wed Mar  1 10:11:03 2006
@@ -53,8 +53,9 @@
 
 <form method="post" action="ModifyPeople.html">
 <input type="hidden" class="hidden" name="id" value="<%$Ticket->Id%>" />
-<& /Elements/Callback, _CallbackName => 'FormStart',ARGSRef =>\%ARGS &>
+<& /Elements/Callback, _CallbackName => 'FormStart', ARGSRef => \%ARGS &>
 <&| /Widgets/TitleBox, title => loc('Modify people related to ticket #[_1]', $Ticket->Id),   width => "100%", color=> "#333399" &>
+<& Elements/EditPeople, Ticket => $Ticket, UserField => $UserField, UserString => $UserString, UserOp => $UserOp, GroupString => $GroupString, GroupOp => $GroupOp, GroupField => $GroupField &>
 </&>
 <& /Elements/Submit, Label => loc('Save Changes'), Caption => loc("If you've updated anything above, be sure to"), color => "#333399" &>
 </form>

Modified: rt/branches/3.7-EXPERIMENTAL/html/Ticket/Update.html
==============================================================================
--- rt/branches/3.7-EXPERIMENTAL/html/Ticket/Update.html	(original)
+++ rt/branches/3.7-EXPERIMENTAL/html/Ticket/Update.html	Wed Mar  1 10:11:03 2006
@@ -50,7 +50,7 @@
 
 <form action="Update.html" name="TicketUpdate"
     method="post" enctype="multipart/form-data">
-<& /Elements/Callback, _CallbackName => 'FormStart',ARGSRef =>\%ARGS &>
+<& /Elements/Callback, _CallbackName => 'FormStart', ARGSRef => \%ARGS &>
 <input type="hidden" class="hidden" name="QuoteTransaction" value="<% $ARGS{QuoteTransaction} %>" />
 <input type="hidden" class="hidden" name="DefaultStatus" value="<% $DefaultStatus %>" />
 <input type="hidden" class="hidden" name="Action" value="<% $ARGS{Action} %>" />

Modified: rt/branches/3.7-EXPERIMENTAL/html/Tools/Offline.html
==============================================================================
--- rt/branches/3.7-EXPERIMENTAL/html/Tools/Offline.html	(original)
+++ rt/branches/3.7-EXPERIMENTAL/html/Tools/Offline.html	Wed Mar  1 10:11:03 2006
@@ -78,7 +78,7 @@
 <&|/l&>Template</&>:
 </td>
 <td colspan="2">
-<textarea name="string" cols="80" rows="30"><%$string%></textarea>
+<textarea name="string" cols="80" rows="30"><% $string %></textarea>
 </td>
 </tr>
 <tr><td class="label">

Modified: rt/branches/3.7-EXPERIMENTAL/html/User/Elements/Tabs
==============================================================================
--- rt/branches/3.7-EXPERIMENTAL/html/User/Elements/Tabs	(original)
+++ rt/branches/3.7-EXPERIMENTAL/html/User/Elements/Tabs	Wed Mar  1 10:11:03 2006
@@ -65,6 +65,9 @@
 	       r => { title => loc('RT at a glance'),
 			   path => 'Prefs/MyRT.html',
 			 },
+	       t => { title => loc('Other'),
+			   path => 'Prefs/Other.html',
+			 },
 	     };
 
   # Now let callbacks add their extra tabs

Added: rt/branches/3.7-EXPERIMENTAL/html/Widgets/Form/Boolean
==============================================================================
--- (empty file)
+++ rt/branches/3.7-EXPERIMENTAL/html/Widgets/Form/Boolean	Wed Mar  1 10:11:03 2006
@@ -0,0 +1,25 @@
+<div id="form-box-<% lc $Name %>">
+<span class="description"><% $Description %></span>:
+<input type="checkbox" name="Boolean-<% $Name %>" <% $CurrentValue && 'checked' %>" />
+</div>
+<%INIT>
+</%INIT>
+<%ARGS>
+$Name         => undef,
+$Description  => undef,
+
+$CurrentValue => 0,
+</%ARGS>
+
+<%METHOD Process>
+<%ARGS>
+$Arguments    => {},
+
+$Name         => undef,
+$CurrentValue => 0,
+</%ARGS>
+<%INIT>
+return $Arguments->{ "Boolean-$Name" }? 1: 0;
+</%INIT>
+</%METHOD>
+

Added: rt/branches/3.7-EXPERIMENTAL/html/Widgets/Form/Integer
==============================================================================
--- (empty file)
+++ rt/branches/3.7-EXPERIMENTAL/html/Widgets/Form/Integer	Wed Mar  1 10:11:03 2006
@@ -0,0 +1,37 @@
+<div id="form-box-<% lc $Name %>">
+<span class="description"><% $Description %></span>:
+<input type="text" name="Integer-<% $Name %>" value="<% $CurrentValue || '' %>" />
+% if ( $Empty ) {
+<span class="comment"><% $EmptyLabel %></span>
+% }
+</div>
+<%INIT>
+</%INIT>
+<%ARGS>
+$Name         => undef,
+$Description  => undef,
+
+$CurrentValue => '',
+
+$Empty        => 0,
+$EmptyValue   => 0,
+$EmptyLabel   => loc( 'Leave value empty to enable default value which is [_1]', $EmptyValue ),
+</%ARGS>
+
+<%METHOD Process>
+<%ARGS>
+$Arguments    => {},
+
+$Name         => undef,
+$CurrentValue => '',
+$Empty        => 0,
+</%ARGS>
+<%INIT>
+my $value = $Arguments->{ "Integer-$Name" };
+if ( !defined $value || $value eq '' ) {
+    return $CurrentValue unless $Empty;
+    return undef;
+}
+return $value;
+</%INIT>
+</%METHOD>

Added: rt/branches/3.7-EXPERIMENTAL/html/Widgets/Form/Select
==============================================================================
--- (empty file)
+++ rt/branches/3.7-EXPERIMENTAL/html/Widgets/Form/Select	Wed Mar  1 10:11:03 2006
@@ -0,0 +1,87 @@
+<div id="form-box-<% lc $Name %>">
+<% $Description %>:
+<select name="Select-<% $Name %>">
+
+% if ( $Empty ) {
+% my $selected = '';
+% $selected = 'selected' unless @CurrentValue;
+<option value="__empty_value__" <% $selected %>><% $EmptyLabel %></option>
+% }
+
+% foreach my $v( @Values ) {
+% my $selected = '';
+% $selected = 'selected' if delete $CurrentValue{ $v };
+<option value="<% $v %>" <% $selected %>><% $ValuesLabel{ $v } || $v %></option>
+% }
+
+% if ( $Alternative ) {
+%     my $selected = '';
+%     $selected = 'selected' if keys %CurrentValue;
+<option value="__alternative_value__" <% $selected %>><% $AlternativeLabel %></option>
+% }
+
+</select>
+% if ( $Alternative ) {
+<input type="text" class="alternative" name="Select-Alternative-<% $Name %>" value="<% join ', ', @CurrentValue %>" />
+% }
+</div>
+<%INIT>
+my %CurrentValue = map {$_ => 1} grep defined, @CurrentValue;
+</%INIT>
+<%ARGS>
+$Name             => '',
+$Description      => undef,
+
+ at Values           => (),
+%ValuesLabel      => (),
+ at CurrentValue     => (),
+
+$Empty            => 1,
+ at EmptyValue       => (),
+$EmptyLabel       => loc('use default ([_1])', join ', ', @EmptyValue),
+
+$Alternative      => 0,
+$AlternativeLabel => loc('other...'),
+
+$Multiple         => 0,
+</%ARGS>
+
+<%METHOD Process>
+<%ARGS>
+$Arguments        => {},
+
+$Name             => undef,
+
+ at Values           => (),
+%ValuesLabel      => (),
+ at CurrentValue     => (),
+
+$Empty            => 1,
+$Alternative      => 0,
+$Multiple         => 0,
+</%ARGS>
+<%INIT>
+my $value = $Arguments->{ "Select-$Name" };
+if( !defined $value || $value eq '__empty_value__' ) {
+    return [ @CurrentValue ] unless $Empty;
+    return undef;
+}
+$value = [$value] unless ref $value;
+
+if ( $Alternative ) {
+    my $alt = $Arguments->{ "Select-Alternative-$Name" };
+    if( $Multiple ) {
+        push @$value, split /\s*,\s*/, $alt;
+    } else {
+        push @$value, $alt;
+    }
+}
+
+splice @$value, 1 unless $Multiple;
+
+# XXX: check values
+
+return $value->[0] unless $Multiple;
+return $value;
+</%INIT>
+</%METHOD>

Modified: rt/branches/3.7-EXPERIMENTAL/html/Widgets/TitleBoxStart
==============================================================================
--- rt/branches/3.7-EXPERIMENTAL/html/Widgets/TitleBoxStart	(original)
+++ rt/branches/3.7-EXPERIMENTAL/html/Widgets/TitleBoxStart	Wed Mar  1 10:11:03 2006
@@ -51,7 +51,7 @@
     <span class="left"><% $title_href && qq[<a href="$title_href">] | n %><% $title |n %><% $title_href && "</a>" |n%></span>
     <span class="right"><% $titleright_href && qq[<a href="$titleright_href">] | n %><% $titleright |n %><% $titleright_href && "</a>" |n%></span>
   </div>
-  <div class="titlebox-content <% $bodyclass %>" id="<%$tid%>">
+  <div class="titlebox-content <% $bodyclass %>" id="<% $tid %>">
 
 <%ARGS>
 $width => undef

Modified: rt/branches/3.7-EXPERIMENTAL/lib/RT/Attribute_Overlay.pm
==============================================================================
--- rt/branches/3.7-EXPERIMENTAL/lib/RT/Attribute_Overlay.pm	(original)
+++ rt/branches/3.7-EXPERIMENTAL/lib/RT/Attribute_Overlay.pm	Wed Mar  1 10:11:03 2006
@@ -269,17 +269,17 @@
 sub SetContent {
     my $self = shift;
     my $content = shift;
-    
+
     # Call __Value to avoid ACL check.
-    if ($self->__Value('ContentType') eq 'storable') {
-    # We eval the serialization because it will lose on a coderef.
-    eval  {$content = $self->_SerializeContent($content); };
-    if ($@) {
-        $RT::Logger->error("For some reason, content couldn't be frozen");
-        return(0, $@);
-    }
+    if ( $self->__Value('ContentType') eq 'storable' ) {
+        # We eval the serialization because it will lose on a coderef.
+        $content = eval { $self->_SerializeContent($content) };
+        if ($@) {
+            $RT::Logger->error("Content couldn't be frozen: $@");
+            return(0, "Content couldn't be frozen");
+        }
     }
-    return ($self->SUPER::SetContent($content));
+    return $self->SUPER::SetContent( $content );
 }
 
 =head2 SubValue KEY

Modified: rt/branches/3.7-EXPERIMENTAL/lib/RT/Config.pm
==============================================================================
--- rt/branches/3.7-EXPERIMENTAL/lib/RT/Config.pm	(original)
+++ rt/branches/3.7-EXPERIMENTAL/lib/RT/Config.pm	Wed Mar  1 10:11:03 2006
@@ -49,7 +49,66 @@
 
 =cut
 
-my %META = ();
+our %META = (
+    WebDefaultStylesheet => {
+        Section         => 'General',
+        Overridable     => 1,
+        Widget          => '/Widgets/Form/Select',
+        WidgetArguments => {
+            Description => 'Interface style',
+            Values      => [qw(3.5-default 3.4-compat)],
+            Mutiple     => 0,
+            Alternative => 0,
+        },
+    },
+    MessageBoxWidth => {
+        Section         => 'General',
+        Overridable     => 1,
+        Widget          => '/Widgets/Form/Integer',
+        WidgetArguments => {
+            Description => 'Message boxes width',
+        },
+    },
+    MessageBoxHeight => {
+        Section         => 'General',
+        Overridable     => 1,
+        Widget          => '/Widgets/Form/Integer',
+        WidgetArguments => {
+            Description => 'Message boxes height',
+        },
+    },
+    MaxInlineBody => {
+        Section         => 'Tickets view',
+        Overridable     => 1,
+        Widget          => '/Widgets/Form/Integer',
+        WidgetArguments => {
+            Description => 'Max size of message(bytes) that would be inlined into history',
+        },
+    },
+    OldestTransactionsFirst => {
+        Section         => 'Tickets view',
+        Overridable     => 1,
+        Widget          => '/Widgets/Form/Boolean',
+        WidgetArguments => {
+            Description => 'Show oldest transactions first',
+        },
+    },
+    DateTimeFormat      => {
+        Section         => 'Date and time',
+        Overridable     => 1,
+        Widget          => '/Widgets/Form/Select',
+        WidgetArguments => {
+            Description => 'Date and time output format',
+            Values      => [qw(DefaultFormat RFC2822 ISO W3CDTF)],
+            ValuesLabel => {
+                DefaultFormat => 'Default (Tue Dec 25 21:59:12 1995)',
+                RFC2822       => 'RFC (Tue, 25 Dec 1995 21:59:12 -0300)',
+                ISO           => 'ISO (1995-11-25 21:59:12)',
+                W3CDTF        => 'W3C (1995-11-25T21:59:12Z)',
+            },
+        },
+    },
+);
 my %OPTIONS = ();
 
 =head1 METHODS
@@ -74,6 +133,18 @@
     return;
 }
 
+=head2 InitConfig
+
+=cut
+
+sub InitConfig
+{
+    my $self = shift;
+    my %args = (File => '', @_);
+    $args{'File'} =~ s/(?<=Config)(?=\.pm$)/Meta/;
+    return 1;
+}
+
 =head2 LoadConfigs
 
 Load all configs. First of all load RT's config then load
@@ -86,6 +157,7 @@
 {
     my $self = shift;
     my @configs = $self->Configs;
+    $self->InitConfig( File => $_ ) foreach @configs;
     $self->LoadConfig( File => $_ ) foreach @configs;
     return;
 }
@@ -139,7 +211,7 @@
                 Extension  => $is_ext,
             );
         };
-        local @INC = ($RT::LocalEtcPath, $RT::EtcPath);
+        local @INC = ($RT::LocalEtcPath, $RT::EtcPath, @INC);
         require $args{'File'};
     };
     if( $@ ) {
@@ -185,16 +257,25 @@
 {
     my $self = shift;
     my $name = shift;
-    return unless exists $OPTIONS{$name};
-    return $OPTIONS{$name} unless wantarray;
+    my $user = shift;
+    return unless exists $OPTIONS{ $name };
 
-    my $type = $META{$name}->{'Type'} || 'SCALAR';
+    my $res;
+    if ( $user && $META{ $name }->{'Overridable'} ) {
+        $user = $user->UserObj if $user->isa('RT::CurrentUser');
+        my $prefs = $user->Preferences( $RT::System );
+        $res = $prefs->{ $name } if $prefs;
+    }
+    $res = $OPTIONS{ $name } unless defined $res;
+    return $res unless wantarray;
+
+    my $type = $META{ $name }->{'Type'} || 'SCALAR';
     if( $type eq 'ARRAY' ) {
-        return @{ $OPTIONS{$name} };
+        return @{ $res };
     } elsif( $type eq 'HASH' ) {
-        return %{ $OPTIONS{$name} };
+        return %{ $res };
     }
-    return $OPTIONS{$name};
+    return $res;
 }
 
 =head2 Set
@@ -236,26 +317,30 @@
         @_
     );
 
-    unless( $args{'File'} ) {
-        ($args{'Package'},$args{'File'},$args{'Line'}) = caller(1);
+    unless ( $args{'File'} ) {
+        ($args{'Package'}, $args{'File'}, $args{'Line'}) = caller(1);
     }
 
     my $opt = $args{'Option'};
+
     my $type;
     my $name = $self->__GetNameByRef( $opt );
     if( $name ) {
         $type = ref $opt;
         $name =~ s/.*:://;
     } else {
-        $type = $META{$name}->{'Type'} || 'SCALAR';
         $name = $$opt;
+        $type = $META{ $name }->{'Type'} || 'SCALAR';
     }
 
-    return 1 if exists $OPTIONS{$name} && !$args{'SiteConfig'};
+    return 1 if exists $OPTIONS{ $name } && !$args{'SiteConfig'};
 
-    $META{$name}->{'Type'} = $type;
+    $META{ $name }->{'Type'} = $type;
+    foreach ( qw(Package File Line SiteConfig Extension) ) {
+        $META{ $name }->{'Source'}->{$_} = $args{$_};
+    }
     $self->Set( $name, @{ $args{'Value'} } );
-    
+
     return 1;
 }
 
@@ -302,4 +387,48 @@
     return '';
 }
 
+=head2 Metadata
+
+
+=head2 Meta
+
+=cut
+
+sub Meta {
+    return $META{$_[1]};
+}
+
+sub Sections {
+    my $self = shift;
+    my %seen;
+    return sort
+           grep !$seen{$_}++,
+           map $_->{'Section'} || 'General',
+           values %META;
+}
+
+sub Options {
+    my $self = shift;
+    my %args = ( Section => undef, Overridable => 1, @_ );
+    my @res = sort keys %META;
+    @res = grep( ( $META{$_}->{'Section'} || 'General' ) eq $args{'Section'}, @res ) if defined $args{'Section'};
+    if ( defined $args{'Overridable'} ) {
+        @res = grep( ( $META{$_}->{'Overridable'} || 0 ) == $args{'Overridable'}, @res );
+    }
+    return @res;
+}
+
+=head3 Type
+
+=cut
+
+sub Type {
+    my $self = shift;
+    my $name = shift;
+}
+
+=head3 IsOverridable
+
+=cut
+
 1;

Modified: rt/branches/3.7-EXPERIMENTAL/lib/RT/CurrentUser.pm
==============================================================================
--- rt/branches/3.7-EXPERIMENTAL/lib/RT/CurrentUser.pm	(original)
+++ rt/branches/3.7-EXPERIMENTAL/lib/RT/CurrentUser.pm	Wed Mar  1 10:11:03 2006
@@ -70,8 +70,8 @@
 
 package RT::CurrentUser;
 
-use RT::Record;
 use RT::I18N;
+use RT::User;
 
 use strict;
 use base qw/RT::Record/;
@@ -88,7 +88,7 @@
 
     $self->{'table'} = "Users";
 
-    if ( defined($User) ) {
+    if ( defined $User ) {
 
         if (   UNIVERSAL::isa( $User, 'RT::User' )
             || UNIVERSAL::isa( $User, 'RT::CurrentUser' ) )
@@ -96,16 +96,16 @@
             $self->Load( $User->id );
 
         }
-        elsif ( ref($User) ) {
+        elsif ( ref $User ) {
             $RT::Logger->crit(
                 "RT::CurrentUser->new() called with a bogus argument: $User");
         }
         else {
-            $self->Load($User);
+            $self->Load( $User );
         }
     }
 
-    $self->_BuildTableAttributes();
+    $self->_BuildTableAttributes;
 
 }
 # }}}
@@ -132,20 +132,19 @@
 
 =head2 UserObj
 
-  Returns the RT::User object associated with this CurrentUser object.
+Returns the RT::User object associated with this CurrentUser object.
 
 =cut
 
 sub UserObj {
     my $self = shift;
-    
-	use RT::User;
-	my $user = RT::User->new($self);
-
-	unless ($user->Load($self->Id)) {
-	    $RT::Logger->err($self->loc("Couldn't load [_1] from the users database.\n", $self->Id));
-	}
-    return ($user);
+
+    my $user = RT::User->new( $self );
+
+    unless ( $user->Load( $self->Id ) ) {
+        $RT::Logger->err($self->loc("Couldn't load [_1] from the users database.\n", $self->Id));
+    }
+    return $user;
 }
 # }}}
 
@@ -153,8 +152,8 @@
 
 =head2 PrincipalObj
 
-    Returns this user's principal object.  this is just a helper routine for
-    $self->UserObj->PrincipalObj
+Returns this user's principal object.  this is just a helper routine for
+$self->UserObj->PrincipalObj
 
 =cut
 
@@ -171,8 +170,8 @@
 
 =head2 PrincipalId
 
-    Returns this user's principal Id.  this is just a helper routine for
-    $self->UserObj->PrincipalId
+Returns this user's principal Id.  this is just a helper routine for
+$self->UserObj->PrincipalId
 
 =cut
 
@@ -181,14 +180,11 @@
     return($self->UserObj->PrincipalId);
 }
 
-
 # }}}
 
-
 # {{{ sub _Accessible 
 
-
- sub _CoreAccessible  {
+sub _CoreAccessible  {
      {
          Name           => { 'read' => 1 },
            Gecos        => { 'read' => 1 },
@@ -214,10 +210,9 @@
     my $self = shift;
     my $identifier = shift;
 
-    $identifier = RT::User::CanonicalizeEmailAddress(undef, $identifier);
-        
-    $self->LoadByCol("EmailAddress",$identifier);
-    
+    $identifier = RT::User::CanonicalizeEmailAddress( undef, $identifier );
+
+    return $self->LoadByCol( "EmailAddress", $identifier );
 }
 # }}}
 
@@ -232,10 +227,7 @@
 
 sub LoadByGecos  {
     my $self = shift;
-    my $identifier = shift;
-        
-    $self->LoadByCol("Gecos",$identifier);
-    
+    return $self->LoadByCol( "Gecos", shift );
 }
 # }}}
 
@@ -250,9 +242,7 @@
 
 sub LoadByName {
     my $self = shift;
-    my $identifier = shift;
-    $self->LoadByCol("Name",$identifier);
-    
+    return $self->LoadByCol( "Name", shift );
 }
 # }}}
 
@@ -267,24 +257,23 @@
 
 =cut
 
-sub Load  {
-  my $self = shift;
-  my $identifier = shift;
-
-  #if it's an int, load by id. otherwise, load by name.
-  if ($identifier !~ /\D/) {
-    $self->SUPER::LoadById($identifier);
-  }
-
-  elsif (UNIVERSAL::isa($identifier,"RT::User")) {
-         # DWIM if they pass a user in
-         $self->SUPER::LoadById($identifier->Id);
-  } 
-  else {
-      # This is a bit dangerous, we might get false authen if somebody
-      # uses ambigous userids or real names:
-      $self->LoadByCol("Name",$identifier);
-  }
+sub Load {
+    my $self = shift;
+    my $identifier = shift;
+  
+    #if it's an int, load by id. otherwise, load by name.
+    if ( $identifier !~ /\D/ ) {
+        return $self->SUPER::LoadById( $identifier );
+    }
+    elsif ( UNIVERSAL::isa( $identifier, 'RT::User' ) ) {
+        # DWIM if they pass a user in
+        return $self->SUPER::LoadById( $identifier->Id );
+    } 
+    else {
+        # This is a bit dangerous, we might get false authen if somebody
+        # uses ambigous userids or real names:
+        return $self->LoadByCol( "Name", $identifier );
+    }
 }
 
 # }}}
@@ -302,10 +291,8 @@
 =cut
 
 sub IsPassword { 
-  my $self = shift;
-  my $value = shift;
-  
-  return ($self->UserObj->IsPassword($value)); 
+    my $self = shift;
+    return $self->UserObj->IsPassword( shift );
 }
 
 # }}}
@@ -321,7 +308,7 @@
 
 sub Privileged {
     my $self = shift;
-    return ($self->UserObj->Privileged());
+    return $self->UserObj->Privileged;
 }
 
 # }}}
@@ -336,8 +323,8 @@
 =cut
 
 sub HasRight {
-  my $self = shift;
-  return ($self->UserObj->HasRight(@_));
+    my $self = shift;
+    return ($self->UserObj->HasRight(@_));
 }
 
 # }}}
@@ -365,24 +352,25 @@
 
 sub LanguageHandle {
     my $self = shift;
-    if (   ( !defined $self->{'LangHandle'} )
-        || ( !UNIVERSAL::can( $self->{'LangHandle'}, 'maketext' ) )
-        || (@_) ) {
-        if ( !$RT::SystemUser or ($self->id || 0) == $RT::SystemUser->id() ) {
+    if (   !defined $self->{'LangHandle'}
+        || !UNIVERSAL::can( $self->{'LangHandle'}, 'maketext' )
+        || @_ )
+    {
+        if ( !$RT::SystemUser or ($self->id || 0) == $RT::SystemUser->id ) {
             @_ = qw(en-US);
         }
 
-        elsif ( $self->Lang ) {
-            push @_, $self->Lang;
+        elsif ( my $lang = $self->Lang ) {
+            push @_, $lang;
         }
         $self->{'LangHandle'} = RT::I18N->get_handle(@_);
     }
 
     # Fall back to english.
     unless ( $self->{'LangHandle'} ) {
-        die "We couldn't get a dictionary. Nye mogu naidti slovar. No puedo encontrar dictionario.";
+        die "We couldn't get a dictionary. Ne mogu naidti slovar. No puedo encontrar dictionario.";
     }
-    return ( $self->{'LangHandle'} );
+    return $self->{'LangHandle'};
 }
 
 sub loc {
@@ -392,9 +380,9 @@
     my $handle = $self->LanguageHandle;
 
     if (@_ == 1) {
-	# pre-scan the lexicon hashes to return _AUTO keys verbatim,
-	# to keep locstrings containing '[' and '~' from tripping over Maketext
-	return $_[0] unless grep exists $_->{$_[0]}, @{ $handle->_lex_refs };
+        # pre-scan the lexicon hashes to return _AUTO keys verbatim,
+        # to keep locstrings containing '[' and '~' from tripping over Maketext
+        return $_[0] unless grep exists $_->{$_[0]}, @{ $handle->_lex_refs };
     }
 
     return $handle->maketext(@_);
@@ -402,13 +390,12 @@
 
 sub loc_fuzzy {
     my $self = shift;
-    return '' if (!$_[0] ||  $_[0] eq '');
+    return '' if !defined $_[0] || $_[0] eq '';
 
     # XXX: work around perl's deficiency when matching utf8 data
     return $_[0] if Encode::is_utf8($_[0]);
-    my $result = $self->LanguageHandle->maketext_fuzzy(@_);
 
-    return($result);
+    return $self->LanguageHandle->maketext_fuzzy( @_ );
 }
 # }}}
 
@@ -433,9 +420,9 @@
 If both $nonce and $created are specified, validate $password against:
 
     encode_base64(sha1(
-	$nonce .
-	$created .
-	sha1_hex( "$username:$realm:$server_pass" )
+        $nonce .
+        $created .
+        sha1_hex( "$username:$realm:$server_pass" )
     ))
 
 where $server_pass is the md5_hex(password) digest stored in the
@@ -454,9 +441,9 @@
     my $username = $self->UserObj->Name or return;
     my $server_pass = $self->UserObj->__Value('Password') or return;
     my $auth_digest = MIME::Base64::encode_base64(Digest::SHA1::sha1(
-	$nonce .
-	$created .
-	Digest::MD5::md5_hex("$username:$realm:$server_pass")
+        $nonce .
+        $created .
+        Digest::MD5::md5_hex("$username:$realm:$server_pass")
     ));
 
     chomp($password);
@@ -474,4 +461,3 @@
 die $@ if ($@ && $@ !~ qr{^Can't locate RT/CurrentUser_Local.pm});
 
 1;
- 

Modified: rt/branches/3.7-EXPERIMENTAL/lib/RT/CustomField_Overlay.pm
==============================================================================

Modified: rt/branches/3.7-EXPERIMENTAL/lib/RT/Date.pm
==============================================================================
--- rt/branches/3.7-EXPERIMENTAL/lib/RT/Date.pm	(original)
+++ rt/branches/3.7-EXPERIMENTAL/lib/RT/Date.pm	Wed Mar  1 10:11:03 2006
@@ -73,8 +73,6 @@
 
 use Time::Local;
 
-use RT::Base;
-
 use strict;
 use warnings;
 use base qw/RT::Base/;
@@ -413,11 +411,10 @@
 
 sub AsString {
     my $self = shift;
-
-    return ($self->loc("Not set")) if ($self->Unix <= 0);
+    return $self->loc("Not set") if $self->Unix <= 0;
 
     my %args = (@_);
-    my $format = RT->Config->Get('DateTimeFormat') || 'DefaultFormat';
+    my $format = RT->Config->Get( 'DateTimeFormat', $self->CurrentUser ) || 'DefaultFormat';
     $format = { Format => $format } unless ref $format;
     %args = (%$format, %args);
 
@@ -658,12 +655,13 @@
     my $self = shift;
     my %args = ( Date => 1,
                  Time => 1,
-                 Timezone => 'GMT',
+                 Timezone => '',
                  Seconds => 1,
                  @_,
                );
        #  0    1    2     3     4    5     6     7      8      9
-    my ($sec,$min,$hour,$mday,$mon,$year,$wday,$ydaym,$isdst,$offset) = $self->Localtime($args{'Timezone'});
+    my ($sec,$min,$hour,$mday,$mon,$year,$wday,$ydaym,$isdst,$offset) =
+                            $self->Localtime($args{'Timezone'});
 
     #the month needs incrementing, as gmtime returns 0-11
     $mon++;
@@ -757,11 +755,11 @@
     my $unix = $self->Unix;
     $unix = 0 if $unix < 0;
     
-    local $ENV{'TZ'} = $tz;
     my @local;
     if ($tz eq 'GMT' or $tz eq 'UTC') {
         @local = gmtime($unix);
     } else {
+        local $ENV{'TZ'} = $tz;
         @local = localtime($unix);
     }
     $local[5] += 1900; # change year to 4+ digits format
@@ -801,12 +799,11 @@
 
 sub Timezone {
     my $self = shift;
-    my $context = lc(shift);
+    my $context = lc(shift || 'utc');
 
     $context = 'utc' unless $context =~ /^(?:utc|server|user)$/;
 
     my $tz;
-
     if( $context eq 'user' ) {
         $tz = $self->CurrentUser->UserObj->Timezone;
     } elsif( $context eq 'server') {

Modified: rt/branches/3.7-EXPERIMENTAL/lib/RT/I18N/de.po
==============================================================================
--- rt/branches/3.7-EXPERIMENTAL/lib/RT/I18N/de.po	(original)
+++ rt/branches/3.7-EXPERIMENTAL/lib/RT/I18N/de.po	Wed Mar  1 10:11:03 2006
@@ -1,9 +1,9 @@
 msgid ""
 msgstr ""
-"Project-Id-Version: \n"
-"POT-Creation-Date: \n"
-"PO-Revision-Date: 2006-01-23 15:50+0100\n"
-"Last-Translator: Torsten Brumm <tob at brummix.de>\n"
+"Project-Id-Version: RT 3.5.x\n"
+"POT-Creation-Date: 2002-06-22 06:06+0200\n"
+"PO-Revision-Date: 2005-10-03 13:43-0400\n"
+"Last-Translator: Karsten Konrad <karsten.konrad at uni-graz.at>\n"
 "Language-Team: rt-devel <rt-devel at lists.fsck.com>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=iso-8859-1\n"
@@ -25,6 +25,7 @@
 msgid "$1"
 msgstr ""
 
+#: lib/RT/Record.pm:930
 #. ($label)
 #: lib/RT/Record.pm:930
 msgid "$prefix %1"
@@ -45,6 +46,7 @@
 msgid "%1 %2 %3 %4:%5:%6 %7"
 msgstr "%1 %3. %2 %7, %4:%5:%6"
 
+#: lib/RT/Record.pm:1675 lib/RT/Transaction_Overlay.pm:635 lib/RT/Transaction_Overlay.pm:678
 #. ($cf->Name, $new_value->Content)
 #. ($field, $self->NewValue)
 #. ($self->Field, $principal->Object->Name)
@@ -59,6 +61,7 @@
 msgid "%1 %2 ago"
 msgstr "vor %1 %2"
 
+#: lib/RT/Record.pm:1682 lib/RT/Transaction_Overlay.pm:642
 #. ($cf->Name, $old_content,                $new_value->Content)
 #. ($field, $self->OldValue, $self->NewValue)
 #: lib/RT/Record.pm:1682
@@ -66,6 +69,7 @@
 msgid "%1 %2 changed to %3"
 msgstr "%1 %2 geändert in %3"
 
+#: lib/RT/Record.pm:1679 lib/RT/Transaction_Overlay.pm:638 lib/RT/Transaction_Overlay.pm:684
 #. ($cf->Name, $old_value->Content)
 #. ($field, $self->OldValue)
 #. ($self->Field, $principal->Object->Name)
@@ -75,6 +79,7 @@
 msgid "%1 %2 deleted"
 msgstr "%1 %2 gelöscht"
 
+#: html/Admin/Elements/EditScrips:65 html/Admin/Elements/ListGlobalScrips:64 html/Ticket/Elements/PreviewScrips:99
 #. (loc($scrip->ConditionObj->Name), loc($scrip->ActionObj->Name), loc($scrip->TemplateObj->Name))
 #: html/Admin/Elements/EditScrips:65
 #: html/Admin/Elements/ListGlobalScrips:64
@@ -87,15 +92,11 @@
 msgid "%1 (%2) by %3"
 msgstr "%1 (%2) von %3"
 
+#: html/SelfService/Update.html:60 html/Ticket/Elements/EditBasics:102 html/Ticket/Update.html:61 html/Ticket/Update.html:63 html/Tools/MyDay.html:65
 #. (loc($DefaultStatus))
 #. (loc($Ticket->Status()))
 #. (loc($TicketObj->Status))
 #. ($TicketObj->OwnerObj->Name())
-#: html/SelfService/Update.html:60
-#: html/Ticket/Elements/EditBasics:102
-#: html/Ticket/Update.html:61
-#: html/Ticket/Update.html:63
-#: html/Tools/MyDay.html:65
 msgid "%1 (Unchanged)"
 msgstr "%1 (Unverändert)"
 
@@ -128,8 +129,14 @@
 msgid "%1 - Specify the search module you want to use"
 msgstr "%1 - Gibt an, welches Search-Modul benutzt werden soll"
 
-#. ('&#187;&#124;&#171;',
+     $RT::VERSION, 
+     '2005', 
+    '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
 #: html/Elements/Footer:61
+#. ('&#187;&#124;&#171;', 
+     $RT::VERSION, 
+     '2005', 
+    '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
 msgid "%1 RT %2 Copyright 1996-%3 %4."
 msgstr "%1 RT %2 Alle Rechte vorbehalten 1996-%3 %4."
 
@@ -138,6 +145,7 @@
 msgid "%1 ScripAction loaded"
 msgstr "ScripAction %1 geladen"
 
+#: lib/RT/Record.pm:1712
 #. ($args{'Value'}, $cf->Name)
 #: lib/RT/Record.pm:1712
 msgid "%1 added as a value for %2"
@@ -166,6 +174,7 @@
 msgid "%1 changed from %2 to %3"
 msgstr "%1 von %2 in %3 geändert"
 
+#: html/Search/Build.html:206
 #. ($Description)
 #: html/Search/Build.html:206
 msgid "%1 copy"
@@ -175,6 +184,7 @@
 msgid "%1 could not be set to %2."
 msgstr "%1 konnte nicht auf %2 gesetzt werden."
 
+#: lib/RT/Ticket_Overlay.pm:2726
 #. ($self)
 #: lib/RT/Ticket_Overlay.pm:2726
 msgid "%1 couldn't set status to resolved. RT's Database may be inconsistent."
@@ -190,10 +200,10 @@
 msgid "%1 deleted"
 msgstr "%1 gelöscht"
 
-#. ($Query, $PrimaryGroupBy)
 #: html/Search/Chart:71
+#. ($Query, $PrimaryGroupBy)
 msgid "%1 grouped by %2"
-msgstr "%1 gruppiert durch %2"
+msgstr ""
 
 #: etc/initialdata:593
 msgid "%1 highest priority tickets I own"
@@ -209,6 +219,7 @@
 msgid "%1 is no longer a %2 for this queue."
 msgstr "%1 ist kein %2 dieses Bereichs mehr."
 
+#: html/Ticket/Elements/ShowBasics:58 html/Ticket/Elements/ShowBasics:64 html/Ticket/Elements/ShowBasics:69
 #. ($Ticket->TimeEstimated)
 #. ($Ticket->TimeWorked)
 #. ($Ticket->TimeLeft)
@@ -267,6 +278,7 @@
 msgid "%1k"
 msgstr "%1k"
 
+#: lib/RT/Ticket_Overlay.pm:1119
 #. ($args{'Status'})
 #: lib/RT/Ticket_Overlay.pm:1119
 #: html/Admin/Elements/EditCustomFieldValues:50
@@ -325,19 +337,19 @@
 
 #: html/Ticket/Update.html:91
 msgid "(Sends a blind carbon-copy of this update to a comma-delimited list of email addresses. Does <strong>not</strong> change who will receive future updates.)"
-msgstr "(Sendet ein Blind Carbon Copy - BCC Update and eine mit Komma separierte Liste von Mail Adressen. Zukünftige Update werden <strong>nicht</strong> übermittelt.)"
+msgstr ""
 
 #: html/Ticket/Create.html:101
 msgid "(Sends a carbon-copy of this update to a comma-delimited list of administrative email addresses. These people <strong>will</strong> receive future updates.)"
-msgstr "(Sendet ein Carbon Copy - CC Update and eine mit Komma separierte Liste von Mail Adressen. Zukünftige Update <strong>werden</strong> ebenfalls übermittelt.)"
+msgstr ""
 
 #: html/Ticket/Update.html:87
 msgid "(Sends a carbon-copy of this update to a comma-delimited list of email addresses. Does <strong>not</strong> change who will receive future updates.)"
-msgstr "(Sendet ein Carbon Copy - CC Update and eine mit Komma separierte Liste von Mail Adressen. Zukünftige Update werden <strong>nicht</strong> übermittelt.)"
+msgstr ""
 
 #: html/Ticket/Create.html:91
 msgid "(Sends a carbon-copy of this update to a comma-delimited list of email addresses. These people <strong>will</strong> receive future updates.)"
-msgstr "(Sendet ein Carbon Copy - CC Update and eine mit Komma separierte Liste von Mail Adressen. Zukünftige Update <strong>werden</strong> ebenfalls übermittelt.)"
+msgstr ""
 
 #: html/Admin/Elements/EditScrip:102
 msgid "(Use these fields when you choose 'User Defined' for a condition or action)"
@@ -352,11 +364,7 @@
 msgid "(no name listed)"
 msgstr "(kein Name gelistet)"
 
-#: html/Admin/Elements/SelectRights:72
-#: html/Elements/EditCustomFieldSelect:70
-#: html/Elements/SelectCustomFieldValue:51
-#: html/Elements/ShowCustomFields:65
-#: lib/RT/Transaction_Overlay.pm:579
+#: html/Admin/Elements/SelectRights:72 html/Elements/EditCustomFieldSelect:70 html/Elements/SelectCustomFieldValue:51 html/Elements/ShowCustomFields:65 lib/RT/Transaction_Overlay.pm:579
 msgid "(no value)"
 msgstr "(kein Wert)"
 
@@ -364,8 +372,7 @@
 msgid "(no values)"
 msgstr "(keine Werte)"
 
-#: html/Elements/EditLinks:132
-#: html/Ticket/Elements/BulkLinks:49
+#: html/Elements/EditLinks:132 html/Ticket/Elements/BulkLinks:49
 msgid "(only one ticket)"
 msgstr "(nur eine Anfrage)"
 
@@ -387,7 +394,7 @@
 
 #: html/Ticket/Elements/Reminders:86
 msgid "(yyyy/mm/dd)"
-msgstr "(jjjj/mm/tt)"
+msgstr ""
 
 #: html/Elements/EditCustomFieldSelect:58
 msgid "-"
@@ -409,14 +416,13 @@
 msgid "<%$field%>"
 msgstr "<%$field%>"
 
-#. ($m->scomp('/Elements/SelectNewTicketQueue'))
 #: html/Elements/CreateTicket:47
+#. ($m->scomp('/Elements/SelectNewTicketQueue'))
 msgid "<input type=\"submit\" class=\"button\" value=\"New ticket in\" />&nbsp;%1"
-msgstr "<input type=\"submit\" class=\"button\" value=\"Neues Ticket in\" />&nbsp;%1"
+msgstr ""
 
+#: docs/design_docs/string-extraction-guide.txt:54 lib/RT/StyleGuide.pod:787
 #. ($m->scomp('/Elements/SelectNewTicketQueue'))
-#: docs/design_docs/string-extraction-guide.txt:54
-#: lib/RT/StyleGuide.pod:787
 msgid "<input type=\"submit\" value=\"New ticket in\">&nbsp;%1"
 msgstr "<input type=\"submit\" value=\"Neue Anfrage in\">&nbsp;%1"
 
@@ -486,8 +492,7 @@
 msgid "Add Criteria"
 msgstr "Kriterium hinzufügen"
 
-#: html/Ticket/Create.html:145
-#: html/Ticket/Update.html:117
+#: html/Ticket/Create.html:145 html/Ticket/Update.html:117
 msgid "Add More Files"
 msgstr "Weitere Dateien anhängen"
 
@@ -507,10 +512,9 @@
 msgid "Add additional criteria"
 msgstr "zusätzliches Kriterium hinzufügen"
 
-#: html/Search/Build.html:109
-#: html/Search/Build.html:94
+#: html/Search/Build.html:109 html/Search/Build.html:94
 msgid "Add and Search"
-msgstr "Hinzufügen und Suchen"
+msgstr ""
 
 #: html/Search/Bulk.html:124
 msgid "Add comments or replies to selected tickets"
@@ -528,11 +532,11 @@
 
 #: html/Search/Build.html:85
 msgid "Add these terms to your search"
-msgstr "Diese Bedingungen zur Suche hinzufügen"
+msgstr ""
 
 #: html/Search/Bulk.html:159
 msgid "Add values"
-msgstr "Werte hinzufügen"
+msgstr ""
 
 #: lib/RT/CustomField_Overlay.pm:108
 msgid "Add, delete and modify custom field values for objects"
@@ -543,6 +547,7 @@
 msgid "Added principal as a %1 for this queue"
 msgstr "Rolle wurde als %1 für diesen Bereich hinzugefügt"
 
+#: lib/RT/Ticket_Overlay.pm:1417
 #. ($self->loc($args{'Type'}))
 #: lib/RT/Ticket_Overlay.pm:1417
 msgid "Added principal as a %1 for this ticket"
@@ -656,6 +661,7 @@
 msgid "Approval"
 msgstr "Freigabe"
 
+#: html/Approvals/Display.html:65 html/Approvals/Elements/ShowDependency:63 html/Approvals/index.html:86
 #. ($Ticket->Id, $Ticket->Subject)
 #. ($ticket->id, $msg)
 #. ($link->BaseObj->Id, $link->BaseObj->Subject)
@@ -708,21 +714,15 @@
 msgid "AssignCustomFields"
 msgstr "BenutzerdefiniertesFeldZuweisen"
 
-#: html/Search/Bulk.html:142
-#: html/SelfService/Update.html:87
-#: html/Ticket/ModifyAll.html:115
-#: html/Ticket/Update.html:117
+#: html/Search/Bulk.html:142 html/SelfService/Update.html:87 html/Ticket/ModifyAll.html:115 html/Ticket/Update.html:117
 msgid "Attach"
 msgstr "Anhängen"
 
-#: html/SelfService/Create.html:92
-#: html/Ticket/Create.html:141
+#: html/SelfService/Create.html:92 html/Ticket/Create.html:141
 msgid "Attach file"
 msgstr "Datei anhängen"
 
-#: html/SelfService/Update.html:75
-#: html/Ticket/Create.html:129
-#: html/Ticket/Update.html:95
+#: html/SelfService/Update.html:75 html/Ticket/Create.html:129 html/Ticket/Update.html:95
 msgid "Attached file"
 msgstr "Dateianhang"
 
@@ -763,14 +763,9 @@
 
 #: html/Widgets/SelectionBox:186
 msgid "Available"
-msgstr "Verfügbar"
+msgstr ""
 
-#: html/Admin/Elements/CustomFieldTabs:65
-#: html/Admin/Elements/GroupTabs:60
-#: html/Admin/Elements/QueueTabs:60
-#: html/Admin/Elements/UserTabs:58
-#: html/Ticket/Elements/Tabs:113
-#: html/User/Elements/GroupTabs:59
+#: html/Admin/Elements/CustomFieldTabs:65 html/Admin/Elements/GroupTabs:60 html/Admin/Elements/QueueTabs:60 html/Admin/Elements/UserTabs:58 html/Ticket/Elements/Tabs:113 html/User/Elements/GroupTabs:59
 msgid "Basics"
 msgstr "Grundlagen"
 
@@ -809,14 +804,13 @@
 msgid "Bookmarkable link"
 msgstr "Speicherbarer Link"
 
-#: html/Ticket/Elements/ShowHistory:60
-#: html/Ticket/Elements/ShowHistory:65
+#: html/Ticket/Elements/ShowHistory:60 html/Ticket/Elements/ShowHistory:65
 msgid "Brief headers"
 msgstr "Kurze Kopfzeilen"
 
 #: html/Ticket/Elements/Tabs:220
 msgid "Bulk Update"
-msgstr "Massen Update"
+msgstr ""
 
 #: NOT FOUND IN SOURCE
 msgid "Bulk ticket update"
@@ -851,29 +845,21 @@
 msgid "Can't save this search"
 msgstr "Kann diese Suche nicht speichern"
 
-#: lib/RT/Record.pm:1270
-#: lib/RT/Record.pm:1348
+#: lib/RT/Record.pm:1270 lib/RT/Record.pm:1348
 msgid "Can't specifiy both base and target"
 msgstr "Sie können Basis und Ziel nicht gleichzeitig angeben"
 
+#: html/autohandler:166
 #. ($msg)
 #: html/autohandler:166
 msgid "Cannot create user: %1"
 msgstr "Kann Benutzer nicht anlegen: %1"
 
-#: html/Admin/Elements/AddCustomFieldValue:62
-#: html/Admin/Elements/EditCustomFieldValues:58
+#: html/Admin/Elements/AddCustomFieldValue:62 html/Admin/Elements/EditCustomFieldValues:58
 msgid "Category"
-msgstr "Kategorie"
+msgstr ""
 
-#: etc/initialdata:50
-#: html/Admin/Queues/People.html:65
-#: html/SelfService/Create.html:71
-#: html/Ticket/Create.html:86
-#: html/Ticket/Elements/EditPeople:72
-#: html/Ticket/Elements/ShowPeople:56
-#: html/Ticket/Update.html:84
-#: lib/RT/ACE_Overlay.pm:113
+#: etc/initialdata:50 html/Admin/Queues/People.html:65 html/SelfService/Create.html:71 html/Ticket/Create.html:86 html/Ticket/Elements/EditPeople:72 html/Ticket/Elements/ShowPeople:56 html/Ticket/Update.html:84 lib/RT/ACE_Overlay.pm:113
 msgid "Cc"
 msgstr "CC"
 
@@ -885,9 +871,7 @@
 msgid "Check All"
 msgstr "Alle auswählen"
 
-#: html/SelfService/Update.html:78
-#: html/Ticket/Create.html:132
-#: html/Ticket/Update.html:98
+#: html/SelfService/Update.html:78 html/Ticket/Create.html:132 html/Ticket/Update.html:98
 msgid "Check box to delete"
 msgstr "Zum Löschen anwählen"
 
@@ -895,21 +879,15 @@
 msgid "Check box to revoke right"
 msgstr "Zum Entziehen einer Berechtigung anwählen"
 
-#: html/Elements/EditLinks:148
-#: html/Elements/EditLinks:85
-#: html/Elements/ShowLinks:78
-#: html/Ticket/Create.html:221
-#: html/Ticket/Elements/BulkLinks:64
+#: html/Elements/EditLinks:148 html/Elements/EditLinks:85 html/Elements/ShowLinks:78 html/Ticket/Create.html:221 html/Ticket/Elements/BulkLinks:64
 msgid "Children"
 msgstr "Kinder"
 
-#: html/NoAuth/js/util.js:70
-#: html/NoAuth/js/util.js:88
+#: html/NoAuth/js/util.js:70 html/NoAuth/js/util.js:88
 msgid "Choose a date"
-msgstr "Datum auswählen"
+msgstr ""
 
-#: html/Admin/Users/Modify.html:156
-#: html/User/Prefs.html:141
+#: html/Admin/Users/Modify.html:156 html/User/Prefs.html:141
 msgid "City"
 msgstr "Stadt"
 
@@ -919,7 +897,7 @@
 
 #: html/Helpers/CalPopup.html:6
 msgid "Close window"
-msgstr "Fenster schliessen"
+msgstr ""
 
 #: html/Ticket/Elements/ShowDates:68
 msgid "Closed"
@@ -932,18 +910,17 @@
 
 #: lib/RT/CustomField_Overlay.pm:89
 msgid "Combobox: Select or enter multiple values"
-msgstr "Combobox: Selektiere oder gebe mehrere Werte ein"
+msgstr ""
 
 #: lib/RT/CustomField_Overlay.pm:90
 msgid "Combobox: Select or enter one value"
-msgstr "Combobox: Selektiere oder gib einen Wert ein"
+msgstr ""
 
 #: lib/RT/CustomField_Overlay.pm:91
 msgid "Combobox: Select or enter up to %1 values"
-msgstr "Combobox: Selektiere oder gib bis zu %1 Werte ein"
+msgstr ""
 
-#: html/Ticket/Elements/ShowTransaction:189
-#: html/Ticket/Elements/Tabs:178
+#: html/Ticket/Elements/ShowTransaction:189 html/Ticket/Elements/Tabs:178
 msgid "Comment"
 msgstr "Kommentar"
 
@@ -959,8 +936,7 @@
 msgid "CommentOnTicket"
 msgstr "AnfrageKommentieren"
 
-#: html/Ticket/ModifyAll.html:91
-#: html/Ticket/Update.html:76
+#: html/Ticket/ModifyAll.html:91 html/Ticket/Update.html:76
 msgid "Comments (Not sent to requestors)"
 msgstr "Kommentare (werden nicht an Klienten geschickt)"
 
@@ -968,8 +944,7 @@
 msgid "Comments (not sent to requestors)"
 msgstr "Kommentare (werden nicht an Klienten geschickt)"
 
-#: html/Admin/Users/Modify.html:224
-#: html/Ticket/Elements/ShowRequestor:66
+#: html/Admin/Users/Modify.html:224 html/Ticket/Elements/ShowRequestor:66
 msgid "Comments about this user"
 msgstr "Kommentare zu diesem Benutzer"
 
@@ -1027,17 +1002,17 @@
 msgid "Could not add new custom field value. "
 msgstr "Konnte keinen neuen benutzerdefinierten Wert hinzufügen"
 
+#: lib/RT/Record.pm:1650
 #. (, $value_msg)
 #: lib/RT/Record.pm:1650
 msgid "Could not add new custom field value. %1 "
 msgstr "Konnte kein neuen benutzerdefinierten Wert hinzufügen. %1 "
 
-#: lib/RT/Ticket_Overlay.pm:2987
-#: lib/RT/Ticket_Overlay.pm:2995
-#: lib/RT/Ticket_Overlay.pm:3012
+#: lib/RT/Ticket_Overlay.pm:2987 lib/RT/Ticket_Overlay.pm:2995 lib/RT/Ticket_Overlay.pm:3012
 msgid "Could not change owner. "
 msgstr "Konnte den Besitzer nicht ändern. "
 
+#: html/Admin/CustomFields/Modify.html:135
 #. ($msg)
 #: html/Admin/CustomFields/Modify.html:135
 msgid "Could not create CustomField"
@@ -1060,8 +1035,7 @@
 msgid "Could not create template: %1"
 msgstr "Konnte Vorlage nicht anlegen: %1"
 
-#: lib/RT/Ticket_Overlay.pm:1052
-#: lib/RT/Ticket_Overlay.pm:397
+#: lib/RT/Ticket_Overlay.pm:1052 lib/RT/Ticket_Overlay.pm:397
 msgid "Could not create ticket. Queue not set"
 msgstr "Konnte Anfrage nicht anlegen. Bereich nicht angegeben"
 
@@ -1076,13 +1050,11 @@
 msgid "Could not create user"
 msgstr "Konnte Benutzer nicht anlegen"
 
-#: lib/RT/Queue_Overlay.pm:738
-#: lib/RT/Ticket_Overlay.pm:1385
+#: lib/RT/Queue_Overlay.pm:738 lib/RT/Ticket_Overlay.pm:1385
 msgid "Could not find or create that user"
 msgstr "Konnte diesen Benutzer nicht finden oder anlegen"
 
-#: lib/RT/Queue_Overlay.pm:799
-#: lib/RT/Ticket_Overlay.pm:1466
+#: lib/RT/Queue_Overlay.pm:799 lib/RT/Ticket_Overlay.pm:1466
 msgid "Could not find that principal"
 msgstr "Konnte diese Rolle nicht finden"
 
@@ -1110,6 +1082,7 @@
 msgid "Could not make that principal a %1 for this queue"
 msgstr "Konnte diese Rolle nicht zu einen %1 dieses Bereichs machen"
 
+#: lib/RT/Ticket_Overlay.pm:1406
 #. ($self->loc($args{'Type'}))
 #: lib/RT/Ticket_Overlay.pm:1406
 msgid "Could not make that principal a %1 for this ticket"
@@ -1128,6 +1101,7 @@
 msgid "Couldn't add member to group"
 msgstr "Konnte Benutzer nicht der Gruppe hinzufügen"
 
+#: lib/RT/Record.pm:1709 lib/RT/Record.pm:1761
 #. ($Msg)
 #: lib/RT/Record.pm:1709
 #: lib/RT/Record.pm:1761
@@ -1196,11 +1170,13 @@
 msgid "Couldn't load ticket '%1'"
 msgstr "Konnte das Anfrage '%1' nicht laden"
 
+#: lib/RT/Ticket_Overlay.pm:2595
 #. ($args{'Base'})
 #: lib/RT/Ticket_Overlay.pm:2595
 msgid "Couldn't resolve base '%1' into a URI."
 msgstr "Basis '%1' kann nicht zu einer URI aufgelöst werden."
 
+#: lib/RT/Ticket_Overlay.pm:2594
 #. ($args{'Target'})
 #: lib/RT/Ticket_Overlay.pm:2594
 msgid "Couldn't resolve target '%1' into a URI."
@@ -1211,13 +1187,7 @@
 msgid "Country"
 msgstr "Land"
 
-#: html/Admin/Elements/CreateUserCalled:47
-#: html/Admin/Elements/EditCustomField:84
-#: html/Admin/Elements/EditScrip:132
-#: html/Admin/Queues/Template.html:66
-#: html/Elements/QuickCreate:65
-#: html/Ticket/Create.html:166
-#: html/Ticket/Create.html:233
+#: html/Admin/Elements/CreateUserCalled:47 html/Admin/Elements/EditCustomField:84 html/Admin/Elements/EditScrip:132 html/Admin/Queues/Template.html:66 html/Elements/QuickCreate:65 html/Ticket/Create.html:166 html/Ticket/Create.html:233
 msgid "Create"
 msgstr "Erstellen"
 
@@ -1225,8 +1195,7 @@
 msgid "Create Tickets"
 msgstr "Erstelle Anfragen"
 
-#: html/Admin/CustomFields/Modify.html:124
-#: html/Admin/Elements/EditCustomField:96
+#: html/Admin/CustomFields/Modify.html:124 html/Admin/Elements/EditCustomField:96
 msgid "Create a CustomField"
 msgstr "Erstelle ein benutzerdefiniertes Feld"
 
@@ -1245,9 +1214,7 @@
 msgid "Create a new personal group"
 msgstr "Erstelle eine neue persönliche Gruppe"
 
-#: html/Ticket/Create.html:47
-#: html/Ticket/Create.html:51
-#: html/Ticket/Create.html:58
+#: html/Ticket/Create.html:47 html/Ticket/Create.html:51 html/Ticket/Create.html:58
 msgid "Create a new ticket"
 msgstr "Erstelle eine neue Anfrage"
 
@@ -1311,12 +1278,11 @@
 msgid "CreateTicket"
 msgstr "AnfrageErstellen"
 
-#: html/Elements/SelectDateType:47
-#: html/Ticket/Elements/ShowDates:48
-#: lib/RT/Ticket_Overlay.pm:1146
+#: html/Elements/SelectDateType:47 html/Ticket/Elements/ShowDates:48 lib/RT/Ticket_Overlay.pm:1146
 msgid "Created"
 msgstr "Angelegt"
 
+#: html/Admin/CustomFields/Modify.html:137 html/Admin/Elements/EditCustomField:117
 #. ($CustomFieldObj->Name())
 #: html/Admin/CustomFields/Modify.html:137
 #: html/Admin/Elements/EditCustomField:117
@@ -1325,11 +1291,11 @@
 
 #: html/Tools/Reports/Elements/Tabs:63
 msgid "Created in a date range"
-msgstr "Erstellt in einem Zeitraum"
+msgstr ""
 
 #: html/Tools/Reports/CreatedByDates.html:7
 msgid "Created tickets in period, grouped by status"
-msgstr "Erstellte Tickets einer Periode, sortiert nach Status"
+msgstr ""
 
 #: html/Search/Elements/PickBasics:102
 msgid "Creator"
@@ -1354,22 +1320,17 @@
 
 #: html/Search/Elements/EditQuery:47
 msgid "Current search"
-msgstr "Aktuelle Suche"
+msgstr ""
 
-#: html/Admin/Queues/People.html:62
-#: html/Ticket/Elements/EditPeople:66
+#: html/Admin/Queues/People.html:62 html/Ticket/Elements/EditPeople:66
 msgid "Current watchers"
 msgstr "Aktuelle Beobachter"
 
-#: html/Admin/Elements/SystemTabs:61
-#: html/Admin/Elements/Tabs:62
-#: html/Admin/Global/index.html:71
-#: html/Admin/Users/Modify.html:208
-#: html/Admin/index.html:77
-#: html/Ticket/Elements/ShowSummary:56
+#: html/Admin/Elements/SystemTabs:61 html/Admin/Elements/Tabs:62 html/Admin/Global/index.html:71 html/Admin/Users/Modify.html:208 html/Admin/index.html:77 html/Ticket/Elements/ShowSummary:56
 msgid "Custom Fields"
 msgstr "Benutzerdefinierte Felder"
 
+#: html/Admin/CustomFields/index.html:60
 #. ($lookup)
 #: html/Admin/CustomFields/index.html:60
 msgid "Custom Fields for %1"
@@ -1387,16 +1348,19 @@
 msgid "Custom condition"
 msgstr "Benutzerdefinierte Bedingung"
 
+#: lib/RT/Tickets_Overlay.pm:2194
 #. ($CF->Name)
 #: lib/RT/Tickets_Overlay.pm:2194
 msgid "Custom field %1 has a value."
 msgstr "Benutzerdefiniertes Feld %1 hat einen Wert."
 
+#: lib/RT/Tickets_Overlay.pm:2190
 #. ($CF->Name)
 #: lib/RT/Tickets_Overlay.pm:2190
 msgid "Custom field %1 has no value."
 msgstr "Benutzerdefiniertes Feld %1 hat keinen Wert."
 
+#: lib/RT/Record.pm:1583 lib/RT/Record.pm:1744
 #. ($args{'Field'})
 #: lib/RT/Record.pm:1583
 #: lib/RT/Record.pm:1744
@@ -1407,6 +1371,7 @@
 msgid "Custom field not found"
 msgstr "Benutzerdefiniertes Feld nicht gefunden"
 
+#: lib/RT/CustomField_Overlay.pm:1144
 #. ($args{'Content'}, $self->Name)
 #: lib/RT/CustomField_Overlay.pm:1144
 msgid "Custom field value %1 could not be found for custom field %2"
@@ -1420,8 +1385,7 @@
 msgid "Custom field value could not be found"
 msgstr "Wert des benutzerdefinierten Feldes konnte nicht gefunden werden"
 
-#: lib/RT/CustomField_Overlay.pm:1152
-#: lib/RT/CustomField_Overlay.pm:411
+#: lib/RT/CustomField_Overlay.pm:1152 lib/RT/CustomField_Overlay.pm:411
 msgid "Custom field value deleted"
 msgstr "Wert des benutzerdefinierten Feldes gelöscht"
 
@@ -1431,17 +1395,11 @@
 msgid "CustomField"
 msgstr "BenutzerdefiniertesFeld"
 
-#: html/Prefs/MyRT.html:70
-#: html/Prefs/Quicksearch.html:70
-#: html/Prefs/Search.html:75
+#: html/Prefs/MyRT.html:70 html/Prefs/Quicksearch.html:70 html/Prefs/Search.html:75
 msgid "Customize"
-msgstr "Anpassen"
+msgstr ""
 
-#: html/SelfService/Display.html:61
-#: html/Ticket/Create.html:201
-#: html/Ticket/Elements/ShowSummary:81
-#: html/Ticket/Elements/Tabs:116
-#: html/Ticket/ModifyAll.html:65
+#: html/SelfService/Display.html:61 html/Ticket/Create.html:201 html/Ticket/Elements/ShowSummary:81 html/Ticket/Elements/Tabs:116 html/Ticket/ModifyAll.html:65
 msgid "Dates"
 msgstr "Datumsangaben"
 
@@ -1498,11 +1456,7 @@
 msgid "Delegation"
 msgstr "Rechteweitergabe"
 
-#: html/Admin/Elements/EditScrips:75
-#: html/Search/Elements/EditFormat:103
-#: html/Search/Elements/EditQuery:57
-#: html/Search/Elements/EditSearches:63
-#: html/Widgets/SelectionBox:205
+#: html/Admin/Elements/EditScrips:75 html/Search/Elements/EditFormat:103 html/Search/Elements/EditQuery:57 html/Search/Elements/EditSearches:63 html/Widgets/SelectionBox:205
 msgid "Delete"
 msgstr "Löschen"
 
@@ -1525,7 +1479,7 @@
 
 #: html/Search/Bulk.html:160
 msgid "Delete values"
-msgstr "Werte löschen"
+msgstr ""
 
 #: lib/RT/Queue_Overlay.pm:115
 msgid "DeleteTicket"
@@ -1552,12 +1506,7 @@
 msgid "Deny"
 msgstr "Ablehnen"
 
-#: html/Elements/EditLinks:140
-#: html/Elements/EditLinks:66
-#: html/Elements/ShowLinks:58
-#: html/Ticket/Create.html:219
-#: html/Ticket/Elements/BulkLinks:56
-#: html/Ticket/Elements/ShowDependencies:53
+#: html/Elements/EditLinks:140 html/Elements/EditLinks:66 html/Elements/ShowLinks:58 html/Ticket/Create.html:219 html/Ticket/Elements/BulkLinks:56 html/Ticket/Elements/ShowDependencies:53
 msgid "Depended on by"
 msgstr "Ist Voraussetzung von"
 
@@ -1581,13 +1530,7 @@
 msgid "Dependency on %1 deleted"
 msgstr "Setzt %1 nicht mehr voraus "
 
-#: html/Elements/EditLinks:136
-#: html/Elements/EditLinks:57
-#: html/Elements/SelectLinkType:48
-#: html/Elements/ShowLinks:48
-#: html/Ticket/Create.html:218
-#: html/Ticket/Elements/BulkLinks:52
-#: html/Ticket/Elements/ShowDependencies:46
+#: html/Elements/EditLinks:136 html/Elements/EditLinks:57 html/Elements/SelectLinkType:48 html/Elements/ShowLinks:48 html/Ticket/Create.html:218 html/Ticket/Elements/BulkLinks:52 html/Ticket/Elements/ShowDependencies:46
 msgid "Depends on"
 msgstr "Voraussetzungen"
 
@@ -1596,8 +1539,7 @@
 msgid "Descending"
 msgstr "absteigend"
 
-#: html/SelfService/Create.html:100
-#: html/Ticket/Create.html:150
+#: html/SelfService/Create.html:100 html/Ticket/Create.html:150
 msgid "Describe the issue below"
 msgstr "Beschreiben Sie hier das Problem"
 
@@ -1668,25 +1610,19 @@
 msgid "Download as a tab-delimited file"
 msgstr "Als Tabulator separierte Datei speichern"
 
-#: html/Elements/SelectDateType:53
-#: html/Ticket/Create.html:207
-#: html/Ticket/Elements/EditDates:66
-#: html/Ticket/Elements/Reminders:86
-#: html/Ticket/Elements/ShowDates:64
-#: lib/RT/Ticket_Overlay.pm:1150
+#: html/Elements/SelectDateType:53 html/Ticket/Create.html:207 html/Ticket/Elements/EditDates:66 html/Ticket/Elements/Reminders:86 html/Ticket/Elements/ShowDates:64 lib/RT/Ticket_Overlay.pm:1150
 msgid "Due"
 msgstr "Fällig"
 
-#: html/Elements/Quicksearch:48
-#: html/Elements/ShowSearch:49
-#: html/index.html:76
+#: html/Elements/Quicksearch:48 html/Elements/ShowSearch:49 html/index.html:76
 msgid "Edit"
-msgstr "Ändere"
+msgstr ""
 
 #: html/Search/Bulk.html:149
 msgid "Edit Custom Fields"
-msgstr "Benutzerdefinierte Felder verändern"
+msgstr ""
 
+#: html/Admin/Elements/ObjectCustomFields:92 html/Admin/Queues/CustomFields.html:64 html/Admin/Users/CustomFields.html:64
 #. ($Object->Name)
 #: html/Admin/Elements/ObjectCustomFields:92
 #: html/Admin/Queues/CustomFields.html:64
@@ -1707,8 +1643,7 @@
 msgid "Edit Custom Fields for tickets in all queues"
 msgstr "Benutzerdefinierte Felder von Tickets in allen Stapeln verändern"
 
-#: html/Search/Bulk.html:189
-#: html/Ticket/ModifyLinks.html:57
+#: html/Search/Bulk.html:189 html/Ticket/ModifyLinks.html:57
 msgid "Edit Links"
 msgstr "Bearbeite Beziehungen"
 
@@ -1718,9 +1653,8 @@
 
 #: html/Ticket/Elements/Tabs:207
 msgid "Edit Search"
-msgstr "Suche editieren"
+msgstr ""
 
-#. ($QueueObj->Name)
 #: html/Admin/Queues/Templates.html:63
 msgid "Edit Templates for queue %1"
 msgstr "Bearbeite Vorlagen für den Bereich %1"
@@ -1743,6 +1677,7 @@
 msgid "Editing Configuration for queue %1"
 msgstr "Bearbeite Konfiguration für den Bereich %1"
 
+#: html/Admin/CustomFields/Modify.html:141 html/Admin/Elements/EditCustomField:120
 #. ($CustomFieldObj->Name())
 #: html/Admin/CustomFields/Modify.html:141
 #: html/Admin/Elements/EditCustomField:120
@@ -1759,8 +1694,7 @@
 msgid "Editing membership for personal group %1"
 msgstr "Bearbeite Mitgliedschaft der persönlichen Gruppe %1"
 
-#: lib/RT/Record.pm:1285
-#: lib/RT/Record.pm:1362
+#: lib/RT/Record.pm:1285 lib/RT/Record.pm:1362
 msgid "Either base or target must be specified"
 msgstr "Es muss entweder eine Basis oder ein Ziel angegeben werden"
 
@@ -1774,9 +1708,8 @@
 msgid "Email address in use"
 msgstr "E-Mail-Adresse bereits in Gebrauch"
 
-# ## muss das überhaupt übersetzt werden???
-#: html/Admin/CustomFields/Modify.html:98
-#: html/Admin/Elements/EditCustomField:72
+# ## muss das überhaupt übersetzt werden???
+#: html/Admin/CustomFields/Modify.html:98 html/Admin/Elements/EditCustomField:72
 msgid "Enabled (Unchecking this box disables this custom field)"
 msgstr "Aktiviert (Abwählen deaktiviert dieses benutzerdefinierte Feld)"
 
@@ -1801,6 +1734,7 @@
 msgid "Enabled status %1"
 msgstr "Status aktiviert: %1"
 
+#: html/Admin/CustomFields/Modify.html:159 html/Admin/Queues/Modify.html:162
 #. (loc_fuzzy($msg))
 #: html/Admin/CustomFields/Modify.html:159
 #: html/Admin/Queues/Modify.html:162
@@ -1823,8 +1757,7 @@
 msgid "Enter queues or URIs to link queues to. Separate multiple entries with spaces."
 msgstr "Gib Stapel oder URI's ein um zu anderen Stapeln zu verlinken. Trenne mehrere Einträge mit Leerzeichen."
 
-#: html/Elements/EditLinks:119
-#: html/Search/Bulk.html:190
+#: html/Elements/EditLinks:119 html/Search/Bulk.html:190
 msgid "Enter tickets or URIs to link tickets to. Separate multiple entries with spaces."
 msgstr "Gib Anfragen oder URI's ein um zu anderen Anfragen zu verlinken. Trenne mehrere Einträge mit Leerzeichen."
 
@@ -1832,9 +1765,7 @@
 msgid "Enter up to %1 values"
 msgstr "Gib bis zu %1 Werte ein"
 
-#: html/Elements/Login:67
-#: html/SelfService/Error.html:46
-#: html/SelfService/Error.html:47
+#: html/Elements/Login:67 html/SelfService/Error.html:46 html/SelfService/Error.html:47
 msgid "Error"
 msgstr "Fehler"
 
@@ -1930,10 +1861,7 @@
 msgid "Fill in up to %1 wikitext areas"
 msgstr "Schreibe bis zu %1 Wikitext Bereiche"
 
-#: html/Search/Elements/PickBasics:149
-#: html/Ticket/Create.html:180
-#: html/Ticket/Elements/EditBasics:92
-#: lib/RT/Tickets_Overlay.pm:1616
+#: html/Search/Elements/PickBasics:149 html/Ticket/Create.html:180 html/Ticket/Elements/EditBasics:92 lib/RT/Tickets_Overlay.pm:1616
 msgid "Final Priority"
 msgstr "Endpriorität"
 
@@ -1979,6 +1907,7 @@
 msgid "Format"
 msgstr "Format"
 
+#: html/Search/Results.html:142
 #. ($ticketcount)
 #: html/Search/Results.html:142
 msgid "Found %quant(%1,ticket)"
@@ -1996,8 +1925,7 @@
 msgid "Fri."
 msgstr "Fr."
 
-#: html/Ticket/Elements/ShowHistory:62
-#: html/Ticket/Elements/ShowHistory:68
+#: html/Ticket/Elements/ShowHistory:62 html/Ticket/Elements/ShowHistory:68
 msgid "Full headers"
 msgstr "Alle Kopfzeilen"
 
@@ -2028,22 +1956,11 @@
 msgid "Global template: %1"
 msgstr "Globale Vorlage: %1"
 
-#: html/Admin/CustomFields/index.html:80
-#: html/Search/Results.html:95
-#: html/Tools/Offline.html:91
+#: html/Admin/CustomFields/index.html:80 html/Search/Results.html:95 html/Tools/Offline.html:91
 msgid "Go"
 msgstr "Start"
 
-#: html/Admin/Groups/index.html:67
-#: html/Admin/Groups/index.html:73
-#: html/Admin/Queues/People.html:80
-#: html/Admin/Queues/People.html:84
-#: html/Admin/Queues/index.html:66
-#: html/Admin/Users/index.html:73
-#: html/Elements/RefreshHomepage:48
-#: html/Search/Results.html:77
-#: html/Ticket/Elements/EditPeople:53
-#: html/Ticket/Elements/EditPeople:57
+#: html/Admin/Groups/index.html:67 html/Admin/Groups/index.html:73 html/Admin/Queues/People.html:80 html/Admin/Queues/People.html:84 html/Admin/Queues/index.html:66 html/Admin/Users/index.html:73 html/Elements/RefreshHomepage:48 html/Search/Results.html:77 html/Ticket/Elements/EditPeople:53 html/Ticket/Elements/EditPeople:57
 msgid "Go!"
 msgstr "Los!"
 
@@ -2083,24 +2000,11 @@
 msgid "Group has no such member"
 msgstr "Gruppe hat kein solches Mitglied"
 
-#: lib/RT/Group_Overlay.pm:971
-#: lib/RT/Queue_Overlay.pm:745
-#: lib/RT/Queue_Overlay.pm:805
-#: lib/RT/Ticket_Overlay.pm:1392
-#: lib/RT/Ticket_Overlay.pm:1472
+#: lib/RT/Group_Overlay.pm:971 lib/RT/Queue_Overlay.pm:745 lib/RT/Queue_Overlay.pm:805 lib/RT/Ticket_Overlay.pm:1392 lib/RT/Ticket_Overlay.pm:1472
 msgid "Group not found"
 msgstr "Gruppe nicht gefunden"
 
-#: html/Admin/Elements/GlobalCustomFieldTabs:59
-#: html/Admin/Elements/SelectNewGroupMembers:56
-#: html/Admin/Elements/Tabs:56
-#: html/Admin/Global/CustomFields/index.html:69
-#: html/Admin/Groups/Members.html:85
-#: html/Admin/Queues/People.html:104
-#: html/Admin/Users/Memberships.html:53
-#: html/Admin/index.html:67
-#: html/User/Groups/Members.html:88
-#: lib/RT/CustomField_Overlay.pm:1191
+#: html/Admin/Elements/GlobalCustomFieldTabs:59 html/Admin/Elements/SelectNewGroupMembers:56 html/Admin/Elements/Tabs:56 html/Admin/Global/CustomFields/index.html:69 html/Admin/Groups/Members.html:85 html/Admin/Queues/People.html:104 html/Admin/Users/Memberships.html:53 html/Admin/index.html:67 html/User/Groups/Members.html:88 lib/RT/CustomField_Overlay.pm:1191
 msgid "Groups"
 msgstr "Gruppen"
 
@@ -2149,9 +2053,8 @@
 
 #: html/Elements/SelectTimeUnits:48
 msgid "Hours"
-msgstr "Stunden"
+msgstr ""
 
-#. (6)
 #: lib/RT/Base.pm:110
 msgid "I have %quant(%1,concrete mixer)."
 msgstr "Ich habe %quant(%1, Betonmischer)"
@@ -2160,8 +2063,7 @@
 msgid "I'm lost"
 msgstr "Ich bin verwirrt"
 
-#: html/Ticket/Elements/ShowBasics:48
-#: lib/RT/Tickets_Overlay.pm:1541
+#: html/Ticket/Elements/ShowBasics:48 lib/RT/Tickets_Overlay.pm:1541
 msgid "Id"
 msgstr "Nr."
 
@@ -2225,13 +2127,11 @@
 msgid "Incomplete query"
 msgstr "Unvollständige Anfrage"
 
-#: html/Search/Elements/PickBasics:148
-#: lib/RT/Tickets_Overlay.pm:1591
+#: html/Search/Elements/PickBasics:148 lib/RT/Tickets_Overlay.pm:1591
 msgid "Initial Priority"
 msgstr "Anfängliche Priorität"
 
-#: lib/RT/Ticket_Overlay.pm:1140
-#: lib/RT/Ticket_Overlay.pm:1142
+#: lib/RT/Ticket_Overlay.pm:1140 lib/RT/Ticket_Overlay.pm:1142
 msgid "InitialPriority"
 msgstr "AnfänglichePriorität"
 
@@ -2239,17 +2139,17 @@
 msgid "Input error"
 msgstr "Eingabefehler"
 
+#: html/Elements/ValidateCustomFields:23 lib/RT/CustomField_Overlay.pm:1008
 #. ($self->FriendlyPattern)
 #. ($CF->FriendlyPattern)
-#: html/Elements/ValidateCustomFields:23
-#: lib/RT/CustomField_Overlay.pm:1008
 msgid "Input must match %1"
-msgstr "Eingabe muss mit %1 übereinstimmen"
+msgstr ""
 
 #: lib/RT/Ticket_Overlay.pm:3437
 msgid "Internal Error"
 msgstr "Interner Fehler"
 
+#: lib/RT/Record.pm:309
 #. ($id->{error_message})
 #: lib/RT/Record.pm:309
 msgid "Internal Error: %1"
@@ -2267,14 +2167,12 @@
 msgid "Invalid data"
 msgstr "Ungültige Daten"
 
+#: lib/RT/CustomField_Overlay.pm:202 lib/RT/CustomField_Overlay.pm:666
 #. ($msg)
-#: lib/RT/CustomField_Overlay.pm:202
-#: lib/RT/CustomField_Overlay.pm:666
 msgid "Invalid pattern: %1"
-msgstr "Ungültiges Muster: %1"
+msgstr ""
 
-#: lib/RT/Scrip_Overlay.pm:158
-#: lib/RT/Template_Overlay.pm:276
+#: lib/RT/Scrip_Overlay.pm:158 lib/RT/Template_Overlay.pm:276
 msgid "Invalid queue"
 msgstr "Ungültiger Bereich"
 
@@ -2285,6 +2183,7 @@
 msgid "Invalid right"
 msgstr "Ungültiges Recht"
 
+#: lib/RT/Record.pm:284
 #. ($key)
 #: lib/RT/Record.pm:284
 msgid "Invalid value for %1"
@@ -2388,11 +2287,13 @@
 msgid "Link could not be created"
 msgstr "Beziehung konnte nicht erstellt werden"
 
+#: lib/RT/Record.pm:1316
 #. ($TransString)
 #: lib/RT/Record.pm:1316
 msgid "Link created (%1)"
 msgstr "Beziehung erstellt (%1)"
 
+#: lib/RT/Record.pm:1377
 #. ($TransString)
 #: lib/RT/Record.pm:1377
 msgid "Link deleted (%1)"
@@ -2408,10 +2309,7 @@
 msgid "Link ticket #%1"
 msgstr "Verweise auf Anfrage #%1"
 
-#: html/Ticket/Create.html:214
-#: html/Ticket/Elements/ShowSummary:87
-#: html/Ticket/Elements/Tabs:120
-#: html/Ticket/ModifyAll.html:78
+#: html/Ticket/Create.html:214 html/Ticket/Elements/ShowSummary:87 html/Ticket/Elements/Tabs:120 html/Ticket/ModifyAll.html:78
 msgid "Links"
 msgstr "Beziehungen"
 
@@ -2450,16 +2348,12 @@
 "Log-Verzeichnis %1 nicht gefunden oder kein Schreibzugriff.\\n"
 " RT kann nicht starten."
 
-#. ("<span>".$session{'CurrentUser'}->Name."</span>")
 #: html/Elements/Header:82
+#. ("<span>".$session{'CurrentUser'}->Name."</span>")
 msgid "Logged in as %1"
 msgstr "Angemeldet als %1"
 
-#: docs/design_docs/string-extraction-guide.txt:71
-#: html/Elements/Login:57
-#: html/Elements/Login:73
-#: html/Elements/Login:89
-#: lib/RT/StyleGuide.pod:797
+#: docs/design_docs/string-extraction-guide.txt:71 html/Elements/Login:57 html/Elements/Login:73 html/Elements/Login:89 lib/RT/StyleGuide.pod:797
 msgid "Login"
 msgstr "Anmelden"
 
@@ -2605,8 +2499,7 @@
 msgid "Merge failed. Couldn't set Status"
 msgstr "Vereinigung fehlgeschlagen. Konnte Status nicht setzen"
 
-#: html/Elements/EditLinks:131
-#: html/Ticket/Elements/BulkLinks:48
+#: html/Elements/EditLinks:131 html/Ticket/Elements/BulkLinks:48
 msgid "Merge into"
 msgstr "Vereinigen mit"
 
@@ -2615,8 +2508,7 @@
 msgid "Merged into %1"
 msgstr "Vereinigt mit %1"
 
-#: html/Search/Bulk.html:143
-#: html/Ticket/Update.html:119
+#: html/Search/Bulk.html:143 html/Ticket/Update.html:119
 msgid "Message"
 msgstr "Nachricht"
 
@@ -2634,7 +2526,7 @@
 
 #: html/Elements/SelectTimeUnits:47
 msgid "Minutes"
-msgstr "Minuten"
+msgstr ""
 
 #: html/Search/Build.html:645
 msgid "Mismatched parentheses"
@@ -2901,6 +2793,7 @@
 msgid "Mon."
 msgstr "Mo."
 
+#: html/Ticket/Elements/ShowRequestor:61
 #. ($name)
 #: html/Ticket/Elements/ShowRequestor:61
 msgid "More about %1"
@@ -2922,6 +2815,7 @@
 msgid "Must specify 'Name' attribute"
 msgstr "Sie müssen eine Angabe bei 'Name' machen"
 
+#: html/SelfService/Elements/MyRequests:69
 #. ($friendly_status)
 #: html/SelfService/Elements/MyRequests:69
 msgid "My %1 tickets"
@@ -2938,14 +2832,7 @@
 msgid "My saved searches"
 msgstr "Meine gespeicherten Suchanfragen"
 
-#: html/Admin/CustomFields/Modify.html:58
-#: html/Admin/Elements/AddCustomFieldValue:53
-#: html/Admin/Elements/EditCustomField:55
-#: html/Admin/Elements/EditCustomFieldValues:55
-#: html/Admin/Elements/ModifyTemplate:49
-#: html/Admin/Groups/Modify.html:65
-#: html/Search/Bulk.html:158
-#: html/User/Groups/Modify.html:65
+#: html/Admin/CustomFields/Modify.html:58 html/Admin/Elements/AddCustomFieldValue:53 html/Admin/Elements/EditCustomField:55 html/Admin/Elements/EditCustomFieldValues:55 html/Admin/Elements/ModifyTemplate:49 html/Admin/Groups/Modify.html:65 html/Search/Bulk.html:158 html/User/Groups/Modify.html:65
 msgid "Name"
 msgstr "Name"
 
@@ -2980,10 +2867,9 @@
 
 #: html/Ticket/Elements/Tabs:205
 msgid "New Search"
-msgstr "Neue Suche"
+msgstr ""
 
-#: html/Admin/Elements/CustomFieldTabs:93
-#: html/Admin/Queues/CustomField.html:73
+#: html/Admin/Elements/CustomFieldTabs:93 html/Admin/Queues/CustomField.html:73
 msgid "New custom field"
 msgstr "Neues benutzerdefiniertes Feld"
 
@@ -3006,7 +2892,7 @@
 
 #: html/Ticket/Elements/Reminders:71
 msgid "New reminder:"
-msgstr "Neue Wiedervorlage"
+msgstr ""
 
 #: html/Admin/Elements/SelectRights:65
 msgid "New rights"
@@ -3047,8 +2933,7 @@
 msgid "New watchers"
 msgstr "Neue Beobachter"
 
-#: html/Helpers/CalPopup.html:13
-#: html/Ticket/Elements/Tabs:92
+#: html/Helpers/CalPopup.html:13 html/Ticket/Elements/Tabs:92
 msgid "Next"
 msgstr "Nächste"
 
@@ -3065,8 +2950,7 @@
 msgid "No Class defined"
 msgstr "Keine Klasse definiert"
 
-#: html/Admin/CustomFields/Modify.html:140
-#: html/Admin/Elements/EditCustomField:119
+#: html/Admin/CustomFields/Modify.html:140 html/Admin/Elements/EditCustomField:119
 msgid "No CustomField"
 msgstr "Kein benutzerdefiniertes Feld"
 
@@ -3109,6 +2993,7 @@
 msgid "No comment entered about this user"
 msgstr "Kein Kommentar zu diesem Benutzer angegeben"
 
+#: lib/RT/Action/Generic.pm:179 lib/RT/Condition/Generic.pm:198 lib/RT/Search/ActiveTicketsInQueue.pm:78 lib/RT/Search/Generic.pm:135 lib/RT/Search/Googleish.pm:78
 #. (ref $self)
 #: lib/RT/Action/Generic.pm:179
 #: lib/RT/Condition/Generic.pm:198
@@ -3138,6 +3023,7 @@
 msgid "No permission to create queues"
 msgstr "Keine Erlaubnis Bereiche anzulegen"
 
+#: lib/RT/Ticket_Overlay.pm:410
 #. ($QueueObj->Name)
 #: lib/RT/Ticket_Overlay.pm:410
 msgid "No permission to create tickets in the queue '%1'"
@@ -3155,8 +3041,7 @@
 msgid "No permission to view update ticket"
 msgstr "Kein Recht dieses Anfrage zu aktualisieren"
 
-#: lib/RT/Queue_Overlay.pm:792
-#: lib/RT/Ticket_Overlay.pm:1451
+#: lib/RT/Queue_Overlay.pm:792 lib/RT/Ticket_Overlay.pm:1451
 msgid "No principal specified"
 msgstr "Keine Rolle angegeben"
 
@@ -3392,19 +3277,19 @@
 msgid "On Transaction"
 msgstr "Bei einer Transaktion"
 
-#. ("<input size='15' value='".( $created_after->Unix >0 && $created_after->ISO)."' name='CreatedAfter' id='CreatedAfter'>")
 #: html/Approvals/Elements/PendingMyApproval:70
+#. ("<input size='15' value='".( $created_after->Unix >0 && $created_after->ISO)."' name='CreatedAfter' id='CreatedAfter'>")
 msgid "Only show approvals for requests created after %1"
 msgstr "Zeige nur Freigaben für nach dem %1 erstelle Anfragen"
 
-#. ("<input size='15' value='".($created_before->Unix > 0 &&$created_before->ISO)."' name='CreatedBefore' id='CreatedBefore'>")
 #: html/Approvals/Elements/PendingMyApproval:68
+#. ("<input size='15' value='".($created_before->Unix > 0 &&$created_before->ISO)."' name='CreatedBefore' id='CreatedBefore'>")
 msgid "Only show approvals for requests created before %1"
 msgstr "Zeige nur Freigaben für vor dem %1 erstellte Anfragen"
 
 #: html/Admin/CustomFields/index.html:75
 msgid "Only show custom fields for:"
-msgstr "Nur Benutzerdefinierte Felder anzeigen für:"
+msgstr ""
 
 #: NOT FOUND IN SOURCE
 msgid "Open"
@@ -3424,7 +3309,7 @@
 
 #: html/Prefs/MyRT.html:62
 msgid "Options"
-msgstr "Optionen"
+msgstr ""
 
 #: html/Search/Elements/DisplayOptions:56
 msgid "Order by"
@@ -3435,6 +3320,7 @@
 msgid "Organization"
 msgstr "Organisation"
 
+#: html/Approvals/Elements/Approve:53
 #. ($approving->Id, $approving->Subject)
 #: html/Approvals/Elements/Approve:53
 msgid "Originating ticket: #%1"
@@ -3460,19 +3346,7 @@
 msgid "OwnTicket"
 msgstr "EigeneAnfrage"
 
-#: etc/initialdata:38
-#: html/Elements/QuickCreate:56
-#: html/Search/Elements/PickBasics:101
-#: html/SelfService/Elements/MyRequests:51
-#: html/Ticket/Create.html:70
-#: html/Ticket/Elements/EditBasics:61
-#: html/Ticket/Elements/EditPeople:64
-#: html/Ticket/Elements/EditPeople:65
-#: html/Ticket/Elements/Reminders:82
-#: html/Ticket/Elements/ShowPeople:48
-#: html/Ticket/Update.html:62
-#: lib/RT/ACE_Overlay.pm:111
-#: lib/RT/Tickets_Overlay.pm:1781
+#: etc/initialdata:38 html/Elements/QuickCreate:56 html/Search/Elements/PickBasics:101 html/SelfService/Elements/MyRequests:51 html/Ticket/Create.html:70 html/Ticket/Elements/EditBasics:61 html/Ticket/Elements/EditPeople:64 html/Ticket/Elements/EditPeople:65 html/Ticket/Elements/Reminders:82 html/Ticket/Elements/ShowPeople:48 html/Ticket/Update.html:62 lib/RT/ACE_Overlay.pm:111 lib/RT/Tickets_Overlay.pm:1781
 msgid "Owner"
 msgstr "Besitzer"
 
@@ -3495,16 +3369,11 @@
 msgid "Pager"
 msgstr "Pager"
 
-#: html/Elements/EditLinks:144
-#: html/Elements/EditLinks:76
-#: html/Elements/ShowLinks:68
-#: html/Ticket/Create.html:220
-#: html/Ticket/Elements/BulkLinks:60
+#: html/Elements/EditLinks:144 html/Elements/EditLinks:76 html/Elements/ShowLinks:68 html/Ticket/Create.html:220 html/Ticket/Elements/BulkLinks:60
 msgid "Parents"
 msgstr "Eltern"
 
-#: html/Elements/Login:84
-#: html/User/Prefs.html:105
+#: html/Elements/Login:84 html/User/Prefs.html:105
 msgid "Password"
 msgstr "Passwort"
 
@@ -3512,8 +3381,7 @@
 msgid "Password Reminder"
 msgstr "Passworterinnerung"
 
-#: lib/RT/Transaction_Overlay.pm:769
-#: lib/RT/User_Overlay.pm:1044
+#: lib/RT/Transaction_Overlay.pm:769 lib/RT/User_Overlay.pm:1044
 msgid "Password changed"
 msgstr "Passwort geändert"
 
@@ -3548,9 +3416,7 @@
 msgid "Passwords do not match. Your password has not been changed"
 msgstr "Passwörter verschieden, keine Änderung"
 
-#: html/Ticket/Elements/ShowSummary:62
-#: html/Ticket/Elements/Tabs:119
-#: html/Ticket/ModifyAll.html:72
+#: html/Ticket/Elements/ShowSummary:62 html/Ticket/Elements/Tabs:119 html/Ticket/ModifyAll.html:72
 msgid "People"
 msgstr "Personen"
 
@@ -3562,94 +3428,7 @@
 msgid "Perl configuration"
 msgstr "Perl Konfiguration"
 
-#: lib/RT/ACE_Overlay.pm:262
-#: lib/RT/ACE_Overlay.pm:268
-#: lib/RT/ACE_Overlay.pm:594
-#: lib/RT/ACE_Overlay.pm:604
-#: lib/RT/ACE_Overlay.pm:614
-#: lib/RT/ACE_Overlay.pm:679
-#: lib/RT/Attribute_Overlay.pm:158
-#: lib/RT/Attribute_Overlay.pm:164
-#: lib/RT/Attribute_Overlay.pm:405
-#: lib/RT/Attribute_Overlay.pm:414
-#: lib/RT/Attribute_Overlay.pm:427
-#: lib/RT/CurrentUser.pm:117
-#: lib/RT/CurrentUser.pm:126
-#: lib/RT/CustomField_Overlay.pm:1004
-#: lib/RT/CustomField_Overlay.pm:1125
-#: lib/RT/CustomField_Overlay.pm:167
-#: lib/RT/CustomField_Overlay.pm:184
-#: lib/RT/CustomField_Overlay.pm:195
-#: lib/RT/CustomField_Overlay.pm:369
-#: lib/RT/CustomField_Overlay.pm:397
-#: lib/RT/CustomField_Overlay.pm:751
-#: lib/RT/CustomField_Overlay.pm:924
-#: lib/RT/CustomField_Overlay.pm:959
-#: lib/RT/Group_Overlay.pm:1125
-#: lib/RT/Group_Overlay.pm:1129
-#: lib/RT/Group_Overlay.pm:1138
-#: lib/RT/Group_Overlay.pm:1248
-#: lib/RT/Group_Overlay.pm:1252
-#: lib/RT/Group_Overlay.pm:1258
-#: lib/RT/Group_Overlay.pm:453
-#: lib/RT/Group_Overlay.pm:550
-#: lib/RT/Group_Overlay.pm:628
-#: lib/RT/Group_Overlay.pm:636
-#: lib/RT/Group_Overlay.pm:734
-#: lib/RT/Group_Overlay.pm:738
-#: lib/RT/Group_Overlay.pm:744
-#: lib/RT/Group_Overlay.pm:930
-#: lib/RT/Group_Overlay.pm:934
-#: lib/RT/Group_Overlay.pm:947
-#: lib/RT/Queue_Overlay.pm:1051
-#: lib/RT/Queue_Overlay.pm:141
-#: lib/RT/Queue_Overlay.pm:159
-#: lib/RT/Queue_Overlay.pm:654
-#: lib/RT/Queue_Overlay.pm:664
-#: lib/RT/Queue_Overlay.pm:678
-#: lib/RT/Queue_Overlay.pm:816
-#: lib/RT/Queue_Overlay.pm:825
-#: lib/RT/Queue_Overlay.pm:838
-#: lib/RT/Scrip_Overlay.pm:150
-#: lib/RT/Scrip_Overlay.pm:161
-#: lib/RT/Scrip_Overlay.pm:226
-#: lib/RT/Scrip_Overlay.pm:540
-#: lib/RT/Template_Overlay.pm:112
-#: lib/RT/Template_Overlay.pm:118
-#: lib/RT/Template_Overlay.pm:309
-#: lib/RT/Ticket_Overlay.pm:1319
-#: lib/RT/Ticket_Overlay.pm:1329
-#: lib/RT/Ticket_Overlay.pm:1343
-#: lib/RT/Ticket_Overlay.pm:1484
-#: lib/RT/Ticket_Overlay.pm:1494
-#: lib/RT/Ticket_Overlay.pm:1508
-#: lib/RT/Ticket_Overlay.pm:1625
-#: lib/RT/Ticket_Overlay.pm:1945
-#: lib/RT/Ticket_Overlay.pm:2083
-#: lib/RT/Ticket_Overlay.pm:2253
-#: lib/RT/Ticket_Overlay.pm:2303
-#: lib/RT/Ticket_Overlay.pm:2457
-#: lib/RT/Ticket_Overlay.pm:2560
-#: lib/RT/Ticket_Overlay.pm:2608
-#: lib/RT/Ticket_Overlay.pm:2687
-#: lib/RT/Ticket_Overlay.pm:2701
-#: lib/RT/Ticket_Overlay.pm:2925
-#: lib/RT/Ticket_Overlay.pm:2935
-#: lib/RT/Ticket_Overlay.pm:2940
-#: lib/RT/Ticket_Overlay.pm:3163
-#: lib/RT/Ticket_Overlay.pm:3167
-#: lib/RT/Ticket_Overlay.pm:3310
-#: lib/RT/Ticket_Overlay.pm:3431
-#: lib/RT/Transaction_Overlay.pm:504
-#: lib/RT/Transaction_Overlay.pm:511
-#: lib/RT/Transaction_Overlay.pm:539
-#: lib/RT/Transaction_Overlay.pm:546
-#: lib/RT/User_Overlay.pm:1031
-#: lib/RT/User_Overlay.pm:1182
-#: lib/RT/User_Overlay.pm:1886
-#: lib/RT/User_Overlay.pm:370
-#: lib/RT/User_Overlay.pm:736
-#: lib/RT/User_Overlay.pm:775
+#: lib/RT/ACE_Overlay.pm:262 lib/RT/ACE_Overlay.pm:268 lib/RT/ACE_Overlay.pm:594 lib/RT/ACE_Overlay.pm:604 lib/RT/ACE_Overlay.pm:614 lib/RT/ACE_Overlay.pm:679 lib/RT/Attribute_Overlay.pm:158 lib/RT/Attribute_Overlay.pm:164 lib/RT/Attribute_Overlay.pm:405 lib/RT/Attribute_Overlay.pm:414 lib/RT/Attribute_Overlay.pm:427 lib/RT/CurrentUser.pm:117 lib/RT/CurrentUser.pm:126 lib/RT/CustomField_Overlay.pm:1004 lib/RT/CustomField_Overlay.pm:1125 lib/RT/CustomField_Overlay.pm:167 lib/RT/CustomField_Overlay.pm:184 lib/RT/CustomField_Overlay.pm:195 lib/RT/CustomField_Overlay.pm:369 lib/RT/CustomField_Overlay.pm:397 lib/RT/CustomField_Overlay.pm:751 lib/RT/CustomField_Overlay.pm:924 lib/RT/CustomField_Overlay.pm:959 lib/RT/Group_Overlay.pm:1125 lib/RT/Group_Overlay.pm:1129 lib/RT/Group_Overlay.pm:1138 lib/RT/Group_Overlay.pm:1248 lib/RT/Group_Overlay.pm:1252 lib/RT/Group_Overlay.pm:1258 lib/RT/Group_Overlay.pm:453 lib/RT/Group_Overlay.pm:550 lib/RT/Group_Overlay.pm:628 lib/RT/Group_Overlay.pm:636 lib/RT/Group_Overlay.pm:734 lib/RT/Group_Overlay.pm:738 lib/RT/Group_Overlay.pm:744 lib/RT/Group_Overlay.pm:930 lib/RT/Group_Overlay.pm:934 lib/RT/Group_Overlay.pm:947 lib/RT/Queue_Overlay.pm:1051 lib/RT/Queue_Overlay.pm:141 lib/RT/Queue_Overlay.pm:159 lib/RT/Queue_Overlay.pm:654 lib/RT/Queue_Overlay.pm:664 lib/RT/Queue_Overlay.pm:678 lib/RT/Queue_Overlay.pm:816 lib/RT/Queue_Overlay.pm:825 lib/RT/Queue_Overlay.pm:838 lib/RT/Scrip_Overlay.pm:150 lib/RT/Scrip_Overlay.pm:161 lib/RT/Scrip_Overlay.pm:226 lib/RT/Scrip_Overlay.pm:540 lib/RT/Template_Overlay.pm:112 lib/RT/Template_Overlay.pm:118 lib/RT/Template_Overlay.pm:309 lib/RT/Ticket_Overlay.pm:1319 lib/RT/Ticket_Overlay.pm:1329 lib/RT/Ticket_Overlay.pm:1343 lib/RT/Ticket_Overlay.pm:1484 lib/RT/Ticket_Overlay.pm:1494 lib/RT/Ticket_Overlay.pm:1508 lib/RT/Ticket_Overlay.pm:1625 lib/RT/Ticket_Overlay.pm:1945 lib/RT/Ticket_Overlay.pm:2083 lib/RT/Ticket_Overlay.pm:2253 lib/RT/Ticket_Overlay.pm:2303 lib/RT/Ticket_Overlay.pm:2457 lib/RT/Ticket_Overlay.pm:2560 lib/RT/Ticket_Overlay.pm:2608 lib/RT/Ticket_Overlay.pm:2687 lib/RT/Ticket_Overlay.pm:2701 lib/RT/Ticket_Overlay.pm:2925 lib/RT/Ticket_Overlay.pm:2935 lib/RT/Ticket_Overlay.pm:2940 lib/RT/Ticket_Overlay.pm:3163 lib/RT/Ticket_Overlay.pm:3167 lib/RT/Ticket_Overlay.pm:3310 lib/RT/Ticket_Overlay.pm:3431 lib/RT/Transaction_Overlay.pm:504 lib/RT/Transaction_Overlay.pm:511 lib/RT/Transaction_Overlay.pm:539 lib/RT/Transaction_Overlay.pm:546 lib/RT/User_Overlay.pm:1031 lib/RT/User_Overlay.pm:1182 lib/RT/User_Overlay.pm:1886 lib/RT/User_Overlay.pm:370 lib/RT/User_Overlay.pm:736 lib/RT/User_Overlay.pm:775
 msgid "Permission Denied"
 msgstr "Zugriff verweigert"
 
@@ -3671,12 +3450,7 @@
 msgid "Phone numbers"
 msgstr "Telefonnummern"
 
-#: html/Elements/Header:87
-#: html/Elements/Tabs:91
-#: html/SelfService/Elements/Tabs:75
-#: html/SelfService/Prefs.html:46
-#: html/User/Prefs.html:46
-#: html/User/Prefs.html:49
+#: html/Elements/Header:87 html/Elements/Tabs:91 html/SelfService/Elements/Tabs:75 html/SelfService/Prefs.html:46 html/User/Prefs.html:46 html/User/Prefs.html:49
 msgid "Preferences"
 msgstr "Voreinstellungen"
 
@@ -3684,8 +3458,7 @@
 msgid "Prepare Stubbed"
 msgstr "Prepare Stumpf ausgeführt"
 
-#: html/Helpers/CalPopup.html:11
-#: html/Ticket/Elements/Tabs:84
+#: html/Helpers/CalPopup.html:11 html/Ticket/Elements/Tabs:84
 msgid "Prev"
 msgstr "Vorherige"
 
@@ -3700,11 +3473,7 @@
 msgid "Principal %1 not found."
 msgstr "Rolle %1 nicht gefunden."
 
-#: html/Search/Elements/PickBasics:147
-#: html/Ticket/Create.html:179
-#: html/Ticket/Elements/EditBasics:87
-#: html/Ticket/Elements/ShowBasics:72
-#: lib/RT/Tickets_Overlay.pm:1565
+#: html/Search/Elements/PickBasics:147 html/Ticket/Create.html:179 html/Ticket/Elements/EditBasics:87 html/Ticket/Elements/ShowBasics:72 lib/RT/Tickets_Overlay.pm:1565
 msgid "Priority"
 msgstr "Priorität"
 
@@ -3745,18 +3514,7 @@
 msgid "Query Builder"
 msgstr "Suche erstellen"
 
-#: html/Elements/QueueSummary:48
-#: html/Elements/QuickCreate:54
-#: html/Search/Elements/PickBasics:71
-#: html/SelfService/Create.html:54
-#: html/Ticket/Create.html:60
-#: html/Ticket/Elements/EditBasics:57
-#: html/Ticket/Elements/ShowBasics:76
-#: html/Tools/Reports/CreatedByDates.html:40
-#: html/Tools/Reports/ResolvedByDates.html:41
-#: html/Tools/Reports/ResolvedByOwner.html:21
-#: html/User/Elements/DelegateRights:101
-#: lib/RT/Tickets_Overlay.pm:1392
+#: html/Elements/QueueSummary:48 html/Elements/QuickCreate:54 html/Search/Elements/PickBasics:71 html/SelfService/Create.html:54 html/Ticket/Create.html:60 html/Ticket/Elements/EditBasics:57 html/Ticket/Elements/ShowBasics:76 html/Tools/Reports/CreatedByDates.html:40 html/Tools/Reports/ResolvedByDates.html:41 html/Tools/Reports/ResolvedByOwner.html:21 html/User/Elements/DelegateRights:101 lib/RT/Tickets_Overlay.pm:1392
 msgid "Queue"
 msgstr "Bereich"
 
@@ -3782,8 +3540,7 @@
 msgid "Queue could not be created"
 msgstr "Bereich konnte nicht angelegt werden"
 
-#: html/Ticket/Create.html:242
-#: lib/t/regression/01ticket_link_searching.t:17
+#: html/Ticket/Create.html:242 lib/t/regression/01ticket_link_searching.t:17
 msgid "Queue could not be loaded."
 msgstr "Bereich konnte nicht geladen werden"
 
@@ -3793,8 +3550,7 @@
 msgid "Queue created"
 msgstr "Bereich angelegt"
 
-#: html/SelfService/Display.html:95
-#: lib/RT/CustomField_Overlay.pm:192
+#: html/SelfService/Display.html:95 lib/RT/CustomField_Overlay.pm:192
 msgid "Queue not found"
 msgstr "Bereich nicht gefunden"
 
@@ -3805,15 +3561,13 @@
 
 #: html/Elements/MyAdminQueues:46
 msgid "Queues I administer"
-msgstr "Stapel die ich verwalte"
+msgstr ""
 
 #: html/Elements/MySupportQueues:46
 msgid "Queues I'm an AdminCc for"
-msgstr "Stapel in denen ich AdminCc bin"
+msgstr ""
 
-#: html/Elements/Quicksearch:47
-#: html/Prefs/Elements/Tabs:58
-#: html/Prefs/Quicksearch.html:70
+#: html/Elements/Quicksearch:47 html/Prefs/Elements/Tabs:58 html/Prefs/Quicksearch.html:70
 msgid "Quick search"
 msgstr "Schnellsuche"
 
@@ -3840,8 +3594,7 @@
 msgid "RT Administration"
 msgstr "RT Administration"
 
-#: html/Elements/Error:63
-#: html/SelfService/Error.html:62
+#: html/Elements/Error:63 html/SelfService/Error.html:62
 msgid "RT Error"
 msgstr "RT Fehler"
 
@@ -3849,11 +3602,7 @@
 msgid "RT Variables"
 msgstr "RT Variablen"
 
-#: html/Prefs/MyRT.html:58
-#: html/Prefs/MyRT.html:70
-#: html/User/Elements/Tabs:65
-#: html/index.html:1
-#: html/index.html:75
+#: html/Prefs/MyRT.html:58 html/Prefs/MyRT.html:70 html/User/Elements/Tabs:65 html/index.html:1 html/index.html:75
 msgid "RT at a glance"
 msgstr "RT auf einen Blick"
 
@@ -3861,6 +3610,7 @@
 msgid "RT couldn't store your session."
 msgstr "RT konnte die Session nicht speichern"
 
+#: html/Elements/Logo:49 html/Elements/PageLayout:179
 #. ($RT::rtname)
 #: html/Elements/Logo:49
 #: html/Elements/PageLayout:179
@@ -3869,10 +3619,9 @@
 
 #: html/Search/Simple.html:60
 msgid "RT will look for anything else you enter in ticket subjects."
-msgstr "RT wird nach allem suchen was in einem Anfragen Betreff steht."
+msgstr ""
 
-#: html/Admin/Users/Modify.html:79
-#: html/User/Prefs.html:69
+#: html/Admin/Users/Modify.html:79 html/User/Prefs.html:69
 msgid "Real Name"
 msgstr "Echter Name"
 
@@ -3896,20 +3645,11 @@
 msgid "Reference to %1 deleted"
 msgstr "Referenz auf %1 gelöscht"
 
-#: html/Elements/EditLinks:103
-#: html/Elements/EditLinks:156
-#: html/Elements/ShowLinks:92
-#: html/Ticket/Create.html:223
-#: html/Ticket/Elements/BulkLinks:72
+#: html/Elements/EditLinks:103 html/Elements/EditLinks:156 html/Elements/ShowLinks:92 html/Ticket/Create.html:223 html/Ticket/Elements/BulkLinks:72
 msgid "Referred to by"
 msgstr "Referenziert von"
 
-#: html/Elements/EditLinks:152
-#: html/Elements/EditLinks:94
-#: html/Elements/SelectLinkType:49
-#: html/Elements/ShowLinks:82
-#: html/Ticket/Create.html:222
-#: html/Ticket/Elements/BulkLinks:68
+#: html/Elements/EditLinks:152 html/Elements/EditLinks:94 html/Elements/SelectLinkType:49 html/Elements/ShowLinks:82 html/Ticket/Create.html:222 html/Ticket/Elements/BulkLinks:68
 msgid "Refers to"
 msgstr "Bezieht sich auf"
 
@@ -3918,37 +3658,34 @@
 msgid "Refresh this page every %1 minutes."
 msgstr "Seite alle %1 Minuten aktualisieren."
 
-#. ($ticket->Subject)
 #: lib/RT/Transaction_Overlay.pm:799
+#. ($ticket->Subject)
 msgid "Reminder '%1' added"
-msgstr "Wiedervorlage '%1' zugefügt"
+msgstr ""
 
-#. ($ticket->Subject)
 #: lib/RT/Transaction_Overlay.pm:812
+#. ($ticket->Subject)
 msgid "Reminder '%1' completed"
-msgstr "Wiedervorlage '%1' abgeschlossen"
+msgstr ""
 
-#. ($ticket->Subject)
 #: lib/RT/Transaction_Overlay.pm:805
+#. ($ticket->Subject)
 msgid "Reminder '%1' reopened"
-msgstr "Wiedervorlage '%1' erneut geöffnet"
+msgstr ""
 
-#. ($Ticket->Id)
 #: html/Ticket/Reminders.html:46
+#. ($Ticket->Id)
 msgid "Reminder ticket #%1"
-msgstr "Wiedervorlage Anfrage #%1"
+msgstr ""
 
-#: html/Elements/MyReminders:49
-#: html/Ticket/Elements/ShowSummary:73
-#: html/Ticket/Elements/Tabs:122
-#: html/Ticket/Reminders.html:52
+#: html/Elements/MyReminders:49 html/Ticket/Elements/ShowSummary:73 html/Ticket/Elements/Tabs:122 html/Ticket/Reminders.html:52
 msgid "Reminders"
-msgstr "Wiedervorlage"
+msgstr ""
 
-#. ($Ticket->Id)
 #: html/Ticket/Reminders.html:50
+#. ($Ticket->Id)
 msgid "Reminders for ticket #%1"
-msgstr "Wiedervorlage für Anfrage #%1"
+msgstr ""
 
 #: html/Search/Bulk.html:94
 msgid "Remove AdminCc"
@@ -3962,8 +3699,7 @@
 msgid "Remove Requestor"
 msgstr "Entferne Klient"
 
-#: html/Ticket/Elements/ShowTransaction:178
-#: html/Ticket/Elements/Tabs:147
+#: html/Ticket/Elements/ShowTransaction:178 html/Ticket/Elements/Tabs:147
 msgid "Reply"
 msgstr "Antworten"
 
@@ -3971,9 +3707,7 @@
 msgid "Reply Address"
 msgstr "Antwort Adresse"
 
-#: html/Search/Bulk.html:129
-#: html/Ticket/ModifyAll.html:94
-#: html/Ticket/Update.html:79
+#: html/Search/Bulk.html:129 html/Ticket/ModifyAll.html:94 html/Ticket/Update.html:79
 msgid "Reply to requestors"
 msgstr "Antwort an Klienten"
 
@@ -3987,17 +3721,13 @@
 
 #: html/Tools/Elements/Tabs:59
 msgid "Reports"
-msgstr "Auswertungen"
+msgstr ""
 
-#: etc/initialdata:44
-#: lib/RT/ACE_Overlay.pm:112
+#: etc/initialdata:44 lib/RT/ACE_Overlay.pm:112
 msgid "Requestor"
 msgstr "Klient"
 
-#: html/SelfService/Create.html:63
-#: html/Ticket/Create.html:78
-#: html/Ticket/Elements/EditPeople:69
-#: html/Ticket/Elements/ShowPeople:52
+#: html/SelfService/Create.html:63 html/Ticket/Create.html:78 html/Ticket/Elements/EditPeople:69 html/Ticket/Elements/ShowPeople:52
 msgid "Requestors"
 msgstr "Klienten"
 
@@ -4023,35 +3753,33 @@
 msgid "Resolve"
 msgstr "Erledigen"
 
+#: html/Ticket/Update.html:157
 #. ($TicketObj->id, $TicketObj->Subject)
 #: html/Ticket/Update.html:157
 msgid "Resolve ticket #%1 (%2)"
 msgstr "Erledige Anfrage #%1 (%2)"
 
-#: etc/initialdata:323
-#: html/Elements/SelectDateType:49
-#: lib/RT/Ticket_Overlay.pm:1149
+#: etc/initialdata:323 html/Elements/SelectDateType:49 lib/RT/Ticket_Overlay.pm:1149
 msgid "Resolved"
 msgstr "Erledigt"
 
 #: html/Tools/Reports/Elements/Tabs:55
 msgid "Resolved by owner"
-msgstr "Gelöst durch Besitzer"
+msgstr ""
 
 #: html/Tools/Reports/Elements/Tabs:59
 msgid "Resolved in date range"
-msgstr "Gelöst in Zeitraum"
+msgstr ""
 
 #: html/Tools/Reports/ResolvedByDates.html:7
 msgid "Resolved tickets in period, grouped by owner"
-msgstr "Erledigte Tickets in einer Zeitspanne, gruppiert nach Besitzer"
+msgstr ""
 
 #: html/Tools/Reports/ResolvedByOwner.html:5
 msgid "Resolved tickets, grouped by owner"
-msgstr "Erledigte Tickets, sortiert nach Besitzer"
+msgstr ""
 
-#: html/Elements/ListActions:47
-#: html/Search/Elements/NewListActions:47
+#: html/Elements/ListActions:47 html/Search/Elements/NewListActions:47
 msgid "Results"
 msgstr "Ergebnisse"
 
@@ -4117,7 +3845,7 @@
 
 #: html/Prefs/MyRT.html:64
 msgid "Rows per box"
-msgstr "Reihen pro Fenster"
+msgstr ""
 
 #: html/Search/Elements/DisplayOptions:84
 msgid "Rows per page"
@@ -4127,28 +3855,12 @@
 msgid "Sat."
 msgstr "Sa."
 
-#: html/Prefs/MyRT.html:64
-#: html/Prefs/Quicksearch.html:64
-#: html/Prefs/Search.html:69
-#: html/Search/Elements/EditSearches:70
+#: html/Prefs/MyRT.html:64 html/Prefs/Quicksearch.html:64 html/Prefs/Search.html:69 html/Prefs/Search.html:69 html/Search/Elements/EditSearches:70 html/Widgets/SelectionBox:212
 #: html/Widgets/SelectionBox:212
 msgid "Save"
 msgstr "Speichern"
 
-#: html/Admin/Global/Template.html:67
-#: html/Admin/Groups/Modify.html:88
-#: html/Admin/Queues/Modify.html:111
-#: html/Admin/Queues/People.html:126
-#: html/Admin/Users/Modify.html:238
-#: html/Prefs/Quicksearch.html:64
-#: html/Prefs/SearchOptions.html:63
-#: html/SelfService/Prefs.html:58
-#: html/Ticket/Modify.html:60
-#: html/Ticket/ModifyAll.html:127
-#: html/Ticket/ModifyDates.html:59
-#: html/Ticket/ModifyLinks.html:60
-#: html/Ticket/ModifyPeople.html:59
-#: html/User/Groups/Modify.html:77
+#: html/Admin/Global/Template.html:67 html/Admin/Groups/Modify.html:88 html/Admin/Queues/Modify.html:111 html/Admin/Queues/People.html:126 html/Admin/Users/Modify.html:238 html/Prefs/Quicksearch.html:64 html/Prefs/SearchOptions.html:63 html/SelfService/Prefs.html:58 html/Ticket/Modify.html:60 html/Ticket/ModifyAll.html:127 html/Ticket/ModifyDates.html:59 html/Ticket/ModifyLinks.html:60 html/Ticket/ModifyPeople.html:59 html/User/Groups/Modify.html:77
 msgid "Save Changes"
 msgstr "Änderungen Sichern"
 
@@ -4200,15 +3912,13 @@
 msgid "Scrips which apply to all queues"
 msgstr "Auf alle Bereiche angewandte Scrips"
 
-#: html/Elements/SimpleSearch:48
-#: html/Search/Simple.html:65
+#: html/Elements/SimpleSearch:48 html/Search/Simple.html:65
 msgid "Search"
 msgstr "Suchen"
 
-#: html/Prefs/SearchOptions.html:47
-#: html/Prefs/SearchOptions.html:50
+#: html/Prefs/SearchOptions.html:47 html/Prefs/SearchOptions.html:50
 msgid "Search Preferences"
-msgstr "Such Einstellungen"
+msgstr ""
 
 #: lib/RT/SavedSearch.pm:116
 msgid "Search attribute load failure"
@@ -4220,29 +3930,30 @@
 
 #: html/Search/Simple.html:69
 msgid "Search for tickets"
-msgstr "Suche nach Anfragen"
+msgstr ""
 
 #: html/Search/Simple.html:57
-msgid "Search for tickets. Enter <strong>id</strong> numbers,<strong>queues</strong> by name"
-msgstr "Suche nach Tickets. Eingabe <strong>id</strong> Nummer,<strong>Stapel</strong> nach Name"
+msgid "Search for tickets. Enter <strong>id</strong> numbers,<strong>queues</strong> by name,
+Owners by <strong>username</strong> and Requestors by <strong>email address</strong>.
+RT will look for anything else you enter in ticket bodies and attachments."
+msgstr ""
 
 #: html/User/Elements/Tabs:62
 msgid "Search options"
-msgstr "Such Optionen"
+msgstr ""
 
-#. ($PrimaryGroupBy)
 #: html/Search/Chart.html:7
+#. ($PrimaryGroupBy)
 msgid "Search results grouped by %1"
-msgstr "Suchergebnis gruppiert nach %1"
+msgstr ""
 
-#. ($msg)
 #: lib/RT/SavedSearch.pm:194
 msgid "Search update: %1"
 msgstr "Suche erneuern: %1"
 
 #: html/Search/Simple.html:59
 msgid "Searching the full text of every ticket can take a long time, but if you need to do it, you can search for any word in full ticket history for any word by typing <b>fulltext:<i>word</i></b>."
-msgstr "Die Suche nach Volltexten in jedem Ticket kann sehr lange dauern, aber wenn Du es benötigst, kannst Du nach jedem Wort in jedem Ticketverlauf suchen indem Du <b>fulltext:<i>Wort</i></b> eingibst."
+msgstr ""
 
 #: bin/rt-crontool:213
 msgid "Security:"
@@ -4342,12 +4053,9 @@
 
 #: html/Prefs/Quicksearch.html:53
 msgid "Select queues to be displayed on the \"RT at a glance\" page"
-msgstr "Wähle Stapel aus, welche auf der \"RT at a glance\" Seite angezeigt werden"
+msgstr ""
 
-#: html/Admin/Global/Scrip.html:58
-#: html/Admin/Global/Scrips.html:57
-#: html/Admin/Queues/Scrip.html:61
-#: html/Admin/Queues/Scrips.html:73
+#: html/Admin/Global/Scrip.html:58 html/Admin/Global/Scrips.html:57 html/Admin/Queues/Scrip.html:61 html/Admin/Queues/Scrips.html:73
 msgid "Select scrip"
 msgstr "Wählen Sie ein Scrip aus"
 
@@ -4376,7 +4084,7 @@
 
 #: html/Widgets/SelectionBox:210
 msgid "Selections modified. Please save your changes"
-msgstr "Auswahl wurde geändert. Bitte speichere Deine Änderungen"
+msgstr ""
 
 #: etc/initialdata:121
 msgid "Send mail to all watchers"
@@ -4517,7 +4225,7 @@
 
 #: html/Elements/Tabs:68
 msgid "Simple Search"
-msgstr "Vereinfachte Suche"
+msgstr ""
 
 #: html/Admin/Elements/SelectSingleOrMultiple:47
 msgid "Single"
@@ -4550,10 +4258,7 @@
 msgid "Started"
 msgstr "Begonnen"
 
-#: html/Elements/SelectDateType:52
-#: html/Ticket/Create.html:206
-#: html/Ticket/Elements/EditDates:48
-#: html/Ticket/Elements/ShowDates:52
+#: html/Elements/SelectDateType:52 html/Ticket/Create.html:206 html/Ticket/Elements/EditDates:48 html/Ticket/Elements/ShowDates:52
 msgid "Starts"
 msgstr "Beginnt"
 
@@ -4562,15 +4267,7 @@
 msgid "State"
 msgstr "Staat"
 
-#: html/Search/Elements/PickBasics:87
-#: html/SelfService/Elements/MyRequests:50
-#: html/SelfService/Update.html:57
-#: html/Ticket/Create.html:64
-#: html/Ticket/Elements/EditBasics:53
-#: html/Ticket/Elements/ShowBasics:52
-#: html/Ticket/Update.html:59
-#: lib/RT/Ticket_Overlay.pm:1143
-#: lib/RT/Tickets_Overlay.pm:1425
+#: html/Search/Elements/PickBasics:87 html/SelfService/Elements/MyRequests:50 html/SelfService/Update.html:57 html/Ticket/Create.html:64 html/Ticket/Elements/EditBasics:53 html/Ticket/Elements/ShowBasics:52 html/Ticket/Update.html:59 lib/RT/Ticket_Overlay.pm:1143 lib/RT/Tickets_Overlay.pm:1425
 msgid "Status"
 msgstr "Status"
 
@@ -4603,19 +4300,7 @@
 msgid "Style"
 msgstr "Darstellung"
 
-#: html/Elements/QuickCreate:52
-#: html/Elements/SelectAttachmentField:47
-#: html/Search/Bulk.html:132
-#: html/SelfService/Create.html:79
-#: html/SelfService/Elements/MyRequests:49
-#: html/SelfService/Update.html:65
-#: html/Ticket/Create.html:106
-#: html/Ticket/Elements/EditBasics:48
-#: html/Ticket/Elements/Reminders:78
-#: html/Ticket/ModifyAll.html:100
-#: html/Ticket/Update.html:83
-#: lib/RT/Ticket_Overlay.pm:1139
-#: lib/RT/Tickets_Overlay.pm:1507
+#: html/Elements/QuickCreate:52 html/Elements/SelectAttachmentField:47 html/Search/Bulk.html:132 html/SelfService/Create.html:79 html/SelfService/Elements/MyRequests:49 html/SelfService/Update.html:65 html/Ticket/Create.html:106 html/Ticket/Elements/EditBasics:48 html/Ticket/Elements/Reminders:78 html/Ticket/ModifyAll.html:100 html/Ticket/Update.html:83 lib/RT/Ticket_Overlay.pm:1139 lib/RT/Tickets_Overlay.pm:1507
 msgid "Subject"
 msgstr "Betreff"
 
@@ -4700,9 +4385,7 @@
 msgid "TEST_STRING"
 msgstr "TEST_STRING"
 
-#: etc/initialdata:603
-#: html/Search/Elements/EditFormat:72
-#: html/Ticket/Elements/Tabs:168
+#: etc/initialdata:603 html/Search/Elements/EditFormat:72 html/Ticket/Elements/Tabs:168
 msgid "Take"
 msgstr "Übernehmen"
 
@@ -4751,8 +4434,7 @@
 msgid "Text"
 msgstr "Text"
 
-#: lib/RT/CustomField_Overlay.pm:931
-#: lib/RT/Record.pm:935
+#: lib/RT/CustomField_Overlay.pm:931 lib/RT/Record.pm:935
 msgid "That is already the current value"
 msgstr "Das ist bereits der aktuelle Wert"
 
@@ -4774,6 +4456,7 @@
 msgid "That principal is already a %1 for this queue"
 msgstr "Diese Rolle ist bereits ein %1 dieses Bereichs"
 
+#: lib/RT/Ticket_Overlay.pm:1397
 #. ($self->loc($args{'Type'}))
 #: lib/RT/Ticket_Overlay.pm:1397
 msgid "That principal is already a %1 for this ticket"
@@ -4824,9 +4507,7 @@
 msgid "That's not a numerical id"
 msgstr "Dies ist keine numerische ID"
 
-#: html/SelfService/Display.html:53
-#: html/Ticket/Create.html:175
-#: html/Ticket/Elements/ShowSummary:49
+#: html/SelfService/Display.html:53 html/Ticket/Create.html:175 html/Ticket/Elements/ShowSummary:49
 msgid "The Basics"
 msgstr "Grundlagen"
 
@@ -4878,6 +4559,7 @@
 msgid "This transaction appears to have no content"
 msgstr "Diese Transaktion scheint keinen Inhalt zu haben"
 
+#: html/Ticket/Elements/ShowRequestor:69
 #. ($rows)
 #: html/Ticket/Elements/ShowRequestor:69
 msgid "This user's %1 highest priority tickets"
@@ -4909,14 +4591,15 @@
 msgid "Ticket %1"
 msgstr "Anfrage %1"
 
+#: lib/RT/Ticket_Overlay.pm:732 lib/RT/Ticket_Overlay.pm:752
 #. ($self->Id, $QueueObj->Name)
 #: lib/RT/Ticket_Overlay.pm:732
 #: lib/RT/Ticket_Overlay.pm:752
 msgid "Ticket %1 created in queue '%2'"
 msgstr "Anfrage %1 wurde im Bereich '%2' angelegt"
 
-#. ($Ticket->Id, $_)
 #: html/Search/Bulk.html:365
+#. ($Ticket->Id, $_)
 msgid "Ticket %1: %2"
 msgstr "Anfrage %1: %2"
 
@@ -4934,9 +4617,7 @@
 msgid "Ticket Resolved"
 msgstr "Anfrage erledigt"
 
-#: html/Admin/Elements/GlobalCustomFieldTabs:69
-#: html/Admin/Global/CustomFields/index.html:81
-#: lib/RT/CustomField_Overlay.pm:1188
+#: html/Admin/Elements/GlobalCustomFieldTabs:69 html/Admin/Global/CustomFields/index.html:81 lib/RT/CustomField_Overlay.pm:1188
 msgid "Ticket Transactions"
 msgstr "Anfrage Transaktion"
 
@@ -4948,10 +4629,7 @@
 msgid "Ticket content type"
 msgstr "Art des Inhalts der Anfrage"
 
-#: lib/RT/Ticket_Overlay.pm:594
-#: lib/RT/Ticket_Overlay.pm:608
-#: lib/RT/Ticket_Overlay.pm:619
-#: lib/RT/Ticket_Overlay.pm:740
+#: lib/RT/Ticket_Overlay.pm:594 lib/RT/Ticket_Overlay.pm:608 lib/RT/Ticket_Overlay.pm:619 lib/RT/Ticket_Overlay.pm:740
 msgid "Ticket could not be created due to an internal error"
 msgstr "Anfrage konnte aufgrund eines internen Fehlers nicht angelegt werden"
 
@@ -4968,49 +4646,39 @@
 msgid "TicketSQL search module"
 msgstr "TicketSQL Suchmodul"
 
-#: html/Admin/Elements/GlobalCustomFieldTabs:64
-#: html/Admin/Global/CustomFields/index.html:75
-#: html/Elements/Tabs:71
-#: html/Search/Elements/Chart:52
-#: lib/RT/CustomField_Overlay.pm:1187
+#: html/Admin/Elements/GlobalCustomFieldTabs:64 html/Admin/Global/CustomFields/index.html:75 html/Elements/Tabs:71 html/Search/Elements/Chart:52 lib/RT/CustomField_Overlay.pm:1187
 msgid "Tickets"
 msgstr "Anfragen"
 
 #: html/Tools/Reports/CreatedByDates.html:41
 msgid "Tickets created after"
-msgstr "Anfragen erstellt nach"
+msgstr ""
 
 #: html/Tools/Reports/CreatedByDates.html:43
 msgid "Tickets created before"
-msgstr "Anfragen erstellt vor"
+msgstr ""
 
 #: html/Tools/Reports/ResolvedByDates.html:42
 msgid "Tickets resolved after"
-msgstr "Anfragen gelöst nach"
+msgstr ""
 
 #: html/Tools/Reports/ResolvedByDates.html:44
 msgid "Tickets resolved before"
-msgstr "Anfragen gelöst vor"
+msgstr ""
 
 #: html/Approvals/Elements/ShowDependency:48
 msgid "Tickets which depend on this approval:"
 msgstr "Anfragen, die von dieser Freigabe abhängen:"
 
-#: html/Search/Elements/PickBasics:134
-#: html/Ticket/Create.html:181
-#: html/Ticket/Elements/EditBasics:67
+#: html/Search/Elements/PickBasics:134 html/Ticket/Create.html:181 html/Ticket/Elements/EditBasics:67
 msgid "Time Estimated"
 msgstr "Geschätzte Zeit"
 
-#: html/Search/Elements/PickBasics:135
-#: html/Ticket/Create.html:194
-#: html/Ticket/Elements/EditBasics:80
+#: html/Search/Elements/PickBasics:135 html/Ticket/Create.html:194 html/Ticket/Elements/EditBasics:80
 msgid "Time Left"
 msgstr "Verbleibende Zeit"
 
-#: html/Search/Elements/PickBasics:133
-#: html/Ticket/Create.html:187
-#: html/Ticket/Elements/EditBasics:73
+#: html/Search/Elements/PickBasics:133 html/Ticket/Create.html:187 html/Ticket/Elements/EditBasics:73
 msgid "Time Worked"
 msgstr "Arbeitszeit"
 
@@ -5034,6 +4702,7 @@
 msgid "Title"
 msgstr "Titel"
 
+#: html/Elements/Footer:68
 #. ('<a href="mailto:sales at bestpractical.com">sales at bestpractical.com</a>')
 #: html/Elements/Footer:68
 msgid "To inquire about support, training, custom development or licensing, please contact %1."
@@ -5043,17 +4712,13 @@
 msgid "Told"
 msgstr "Eingegangen"
 
-#: html/Admin/Elements/Tabs:68
-#: html/Admin/index.html:88
-#: html/Elements/Tabs:74
-#: html/Tools/index.html:46
-#: html/Tools/index.html:49
+#: html/Admin/Elements/Tabs:68 html/Admin/index.html:88 html/Elements/Tabs:74 html/Tools/index.html:46 html/Tools/index.html:49
 msgid "Tools"
 msgstr "Werkzeuge"
 
 #: html/Search/Elements/Chart:73
 msgid "Total"
-msgstr "Summe"
+msgstr ""
 
 #: etc/initialdata:252
 msgid "Transaction"
@@ -5084,13 +4749,7 @@
 msgid "Tue."
 msgstr "Di."
 
-#: html/Admin/CustomFields/Modify.html:66
-#: html/Admin/Elements/EditCustomField:65
-#: html/Ticket/Elements/AddWatchers:54
-#: html/Ticket/Elements/AddWatchers:65
-#: html/Ticket/Elements/AddWatchers:75
-#: lib/RT/Ticket_Overlay.pm:1145
-#: lib/RT/Tickets_Overlay.pm:1479
+#: html/Admin/CustomFields/Modify.html:66 html/Admin/Elements/EditCustomField:65 html/Ticket/Elements/AddWatchers:54 html/Ticket/Elements/AddWatchers:65 html/Ticket/Elements/AddWatchers:75 lib/RT/Ticket_Overlay.pm:1145 lib/RT/Tickets_Overlay.pm:1479
 msgid "Type"
 msgstr "Typ"
 
@@ -5102,6 +4761,7 @@
 msgid "Unix login"
 msgstr "Unix Login"
 
+#: lib/RT/Attachment_Overlay.pm:290 lib/RT/Record.pm:851
 #. ($self->ContentEncoding)
 #. ($ContentEncoding)
 #: lib/RT/Attachment_Overlay.pm:290
@@ -5137,9 +4797,7 @@
 msgid "Untaken"
 msgstr "Zurückgegeben"
 
-#: html/Elements/RT__Ticket/ColumnMap:299
-#: html/Search/Bulk.html:194
-#: html/Search/Bulk.html:75
+#: html/Elements/RT__Ticket/ColumnMap:299 html/Search/Bulk.html:194 html/Search/Bulk.html:75
 msgid "Update"
 msgstr "Aktualisieren"
 
@@ -5151,14 +4809,11 @@
 msgid "Update Ticket"
 msgstr "Anfrage Aktualisieren"
 
-#: html/Search/Bulk.html:126
-#: html/Ticket/ModifyAll.html:87
-#: html/Ticket/Update.html:73
+#: html/Search/Bulk.html:126 html/Ticket/ModifyAll.html:87 html/Ticket/Update.html:73
 msgid "Update Type"
 msgstr "Aktualisierungtyp"
 
-#: html/Search/Bulk.html:200
-#: html/Search/Results.html:81
+#: html/Search/Bulk.html:200 html/Search/Results.html:81
 msgid "Update multiple tickets"
 msgstr "Mehrere Anfragen aktualisieren"
 
@@ -5181,6 +4836,7 @@
 msgid "Update ticket #%1"
 msgstr "Aktualisiere Anfrage #%1"
 
+#: html/Ticket/Update.html:159
 #. ($TicketObj->id, $TicketObj->Subject)
 #: html/Ticket/Update.html:159
 msgid "Update ticket #%1 (%2)"
@@ -5191,9 +4847,7 @@
 msgid "Update type was neither correspondence nor comment."
 msgstr "Aktualisierungstyp war weder Korrespondenz noch Kommentar."
 
-#: html/Elements/SelectDateType:54
-#: html/Ticket/Elements/ShowDates:72
-#: lib/RT/Ticket_Overlay.pm:1148
+#: html/Elements/SelectDateType:54 html/Ticket/Elements/ShowDates:72 lib/RT/Ticket_Overlay.pm:1148
 msgid "Updated"
 msgstr "Aktualisiert"
 
@@ -5233,6 +4887,7 @@
 msgid "Use other RT administrative tools"
 msgstr "Benutze andere administrative RT Tools"
 
+#: lib/RT/Ticket_Overlay.pm:497
 #. ($args{'Owner'})
 #: lib/RT/Ticket_Overlay.pm:497
 msgid "User '%1' could not be found."
@@ -5255,11 +4910,12 @@
 msgid "User Rights"
 msgstr "Benutzerrechte"
 
-#. ($CustomFieldObj->Name, $class, $Object->id)
 #: lib/RT/Interface/Web.pm:1279
+#. ($CustomFieldObj->Name, $class, $Object->id)
 msgid "User asked for an unknown update type for custom field %1 for %2 object #%3"
 msgstr "Benutzer hat einen unbekannten Aktualisierungstyp für das benutzerdefinierte Feld %1 bei %2-Objekt #%3 verlangt"
 
+#: html/Admin/Users/Modify.html:292
 #. ($msg)
 #: html/Admin/Users/Modify.html:292
 msgid "User could not be created: %1"
@@ -5285,21 +4941,11 @@
 msgid "User-defined groups"
 msgstr "Benutzerdefinierte Gruppe"
 
-#: html/Admin/Users/Modify.html:69
-#: html/Elements/Login:79
-#: html/Ticket/Elements/AddWatchers:56
+#: html/Admin/Users/Modify.html:69 html/Elements/Login:79 html/Ticket/Elements/AddWatchers:56
 msgid "Username"
 msgstr "Benutzername"
 
-#: html/Admin/Elements/GlobalCustomFieldTabs:55
-#: html/Admin/Elements/SelectNewGroupMembers:47
-#: html/Admin/Elements/Tabs:53
-#: html/Admin/Global/CustomFields/index.html:64
-#: html/Admin/Groups/Members.html:76
-#: html/Admin/Queues/People.html:89
-#: html/Admin/index.html:62
-#: html/User/Groups/Members.html:79
-#: lib/RT/CustomField_Overlay.pm:1189
+#: html/Admin/Elements/GlobalCustomFieldTabs:55 html/Admin/Elements/SelectNewGroupMembers:47 html/Admin/Elements/Tabs:53 html/Admin/Global/CustomFields/index.html:64 html/Admin/Groups/Members.html:76 html/Admin/Queues/People.html:89 html/Admin/index.html:62 html/User/Groups/Members.html:79 lib/RT/CustomField_Overlay.pm:1189
 msgid "Users"
 msgstr "Benutzer"
 
@@ -5313,10 +4959,9 @@
 
 #: html/Admin/CustomFields/Modify.html:80
 msgid "Validation"
-msgstr "Validierung"
+msgstr ""
 
-#: html/Admin/CustomFields/Modify.html:104
-#: html/Admin/Elements/EditCustomField:78
+#: html/Admin/CustomFields/Modify.html:104 html/Admin/Elements/EditCustomField:78
 msgid "Values"
 msgstr "Werte"
 
@@ -5407,14 +5052,13 @@
 msgid "You already own this ticket"
 msgstr "Sie sind bereits Besitzer dieser Anfrage"
 
-#: html/autohandler:176
-#: html/autohandler:184
+#: html/autohandler:176 html/autohandler:184
 msgid "You are not an authorized user"
 msgstr "Sie sind kein autorisierter Benutzer"
 
 #: html/Prefs/Search.html:56
 msgid "You can also edit the predefined search itself"
-msgstr "Du kannst die vordefinierte Such auch selbst editieren"
+msgstr ""
 
 #: lib/RT/Ticket_Overlay.pm:2961
 msgid "You can only reassign tickets that you own or that are unowned"
@@ -5482,7 +5126,7 @@
 
 #: html/Search/Results.html:86
 msgid "chart"
-msgstr "Diagramm"
+msgstr ""
 
 #: html/SelfService/Closed.html:49
 msgid "closed"
@@ -5535,10 +5179,7 @@
 msgid "error: nothing to delete"
 msgstr "Fehler: Nichts zu löschen"
 
-#: html/Search/Build.html:351
-#: html/Search/Build.html:370
-#: html/Search/Build.html:392
-#: html/Search/Build.html:421
+#: html/Search/Build.html:351 html/Search/Build.html:370 html/Search/Build.html:392 html/Search/Build.html:421
 msgid "error: nothing to move"
 msgstr "Fehler: Nichts zu bewegen"
 
@@ -5556,10 +5197,10 @@
 msgid "group '%1'"
 msgstr "Gruppe '%1'"
 
-#. ($m->scomp('Elements/SelectGroupBy', Name => 'PrimaryGroupBy'))
 #: html/Search/Results.html:92
+#. ($m->scomp('Elements/SelectGroupBy', Name => 'PrimaryGroupBy'))
 msgid "grouped by %1"
-msgstr "sortiert nach %1"
+msgstr ""
 
 #: lib/RT/Date.pm:338
 msgid "hours"
@@ -5569,23 +5210,11 @@
 msgid "id"
 msgstr "ID"
 
-#: html/Elements/SelectBoolean:53
-#: html/Elements/SelectCustomFieldOperator:59
-#: html/Elements/SelectMatch:57
-#: html/Search/Elements/PickBasics:162
-#: html/Search/Elements/PickBasics:74
-#: html/Search/Elements/PickBasics:90
-#: html/Search/Elements/PickCFs:53
+#: html/Elements/SelectBoolean:53 html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectMatch:57 html/Search/Elements/PickBasics:162 html/Search/Elements/PickBasics:74 html/Search/Elements/PickBasics:90 html/Search/Elements/PickCFs:53
 msgid "is"
 msgstr "ist"
 
-#: html/Elements/SelectBoolean:57
-#: html/Elements/SelectCustomFieldOperator:59
-#: html/Elements/SelectMatch:58
-#: html/Search/Elements/PickBasics:163
-#: html/Search/Elements/PickBasics:75
-#: html/Search/Elements/PickBasics:91
-#: html/Search/Elements/PickCFs:54
+#: html/Elements/SelectBoolean:57 html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectMatch:58 html/Search/Elements/PickBasics:163 html/Search/Elements/PickBasics:75 html/Search/Elements/PickBasics:91 html/Search/Elements/PickCFs:54
 msgid "isn't"
 msgstr "ist nicht"
 
@@ -5614,8 +5243,7 @@
 msgid "new"
 msgstr "neu"
 
-#: html/Admin/Elements/PickCustomFields:64
-#: html/Admin/Elements/PickObjects:65
+#: html/Admin/Elements/PickCustomFields:64 html/Admin/Elements/PickObjects:65
 msgid "no name"
 msgstr "kein Name"
 
@@ -5632,8 +5260,7 @@
 msgid "not equal to"
 msgstr "ungleich"
 
-#: html/SelfService/Elements/MyRequests:82
-#: lib/RT/Queue_Overlay.pm:84
+#: html/SelfService/Elements/MyRequests:82 lib/RT/Queue_Overlay.pm:84
 msgid "open"
 msgstr "offen"
 
@@ -5671,16 +5298,15 @@
 msgid "stalled"
 msgstr "zurückgestellt"
 
-#. ($m->scomp('Elements/SelectChartType', Name => 'ChartStyle'))
 #: html/Search/Results.html:93
+#. ($m->scomp('Elements/SelectChartType', Name => 'ChartStyle'))
 msgid "style: %1"
-msgstr "Darstellung: %1"
+msgstr ""
 
 #: html/Prefs/MyRT.html:80
 msgid "summary rows"
-msgstr "Ergebnisreihen"
+msgstr ""
 
-#. ($self->Type)
 #: lib/RT/Group_Overlay.pm:230
 msgid "system %1"
 msgstr "System %1"
@@ -5690,8 +5316,7 @@
 msgid "system group '%1'"
 msgstr "Systemgruppe '%1'"
 
-#: html/Elements/Error:64
-#: html/SelfService/Error.html:63
+#: html/Elements/Error:64 html/SelfService/Error.html:63
 msgid "the calling component did not specify why"
 msgstr "die aufrufende Komponente gab nicht an warum"
 

Modified: rt/branches/3.7-EXPERIMENTAL/lib/RT/Interface/Web.pm
==============================================================================
--- rt/branches/3.7-EXPERIMENTAL/lib/RT/Interface/Web.pm	(original)
+++ rt/branches/3.7-EXPERIMENTAL/lib/RT/Interface/Web.pm	Wed Mar  1 10:11:03 2006
@@ -1576,15 +1576,9 @@
 =cut
 
 sub _parse_saved_search {
-    my $spec = shift;
-    if ($spec  !~ /^(.*?)-(\d+)-SavedSearch-(\d+)$/ ) {
-        return;
-    }
-    my $obj_type  = $1;
-    my $obj_id    = $2;
-    my $search_id = $3;
-
-    return (_load_container_object ($obj_type, $obj_id), $search_id);
+    my $spec = shift || '';
+    return unless $spec =~ /^(.*?)-(\d+)-SavedSearch-(\d+)$/;
+    return (_load_container_object ($1, $2), $3);
 }
 
 eval "require RT::Interface::Web_Vendor";

Modified: rt/branches/3.7-EXPERIMENTAL/lib/RT/Record.pm
==============================================================================

Modified: rt/branches/3.7-EXPERIMENTAL/lib/RT/Tickets_Overlay.pm
==============================================================================
--- rt/branches/3.7-EXPERIMENTAL/lib/RT/Tickets_Overlay.pm	(original)
+++ rt/branches/3.7-EXPERIMENTAL/lib/RT/Tickets_Overlay.pm	Wed Mar  1 10:11:03 2006
@@ -1163,7 +1163,7 @@
 
 
 =head2 _CustomFieldDecipher
-
+ 
 Try and turn a CF descriptor into (cfid, cfname) object pair.
 
 =cut
@@ -1198,8 +1198,6 @@
  
 }
  
-
-
 =head2 _CustomFieldJoin
 
 Factor out the Join of custom fields so we can use it for sorting too
@@ -1324,7 +1322,7 @@
     my $cfkey = $cfid ? $cfid : "$queue.$field";
     my ($TicketCFs, $CFs) = $self->_CustomFieldJoin( $cfkey, $cfid, $field );
 
-    $self->_OpenParen;
+     $self->_OpenParen;
 
     unless ($cfid) {
         $self->SUPER::Limit(
@@ -1335,7 +1333,7 @@
         );
     }
     
-    $self->_OpenParen if $null_columns_ok;
+     $self->_OpenParen if $null_columns_ok;
     
     $self->_SQLLimit(
         ALIAS      => $TicketCFs,

Modified: rt/branches/3.7-EXPERIMENTAL/lib/RT/Tickets_Overlay_SQL.pm
==============================================================================
--- rt/branches/3.7-EXPERIMENTAL/lib/RT/Tickets_Overlay_SQL.pm	(original)
+++ rt/branches/3.7-EXPERIMENTAL/lib/RT/Tickets_Overlay_SQL.pm	Wed Mar  1 10:11:03 2006
@@ -191,6 +191,12 @@
         }
         die "Unknown field '$key' in '$string'" unless $class;
 
+        $self->{_sql_localdepth} = 0;
+
+        unless( $dispatch{ $class } ) {
+            die "No dispatch method for class '$class'"
+        }
+        my $sub = $dispatch{ $class };
 
         unless( $dispatch{ $class } ) {
             die "No dispatch method for class '$class'"

Modified: rt/branches/3.7-EXPERIMENTAL/lib/RT/User_Overlay.pm
==============================================================================
--- rt/branches/3.7-EXPERIMENTAL/lib/RT/User_Overlay.pm	(original)
+++ rt/branches/3.7-EXPERIMENTAL/lib/RT/User_Overlay.pm	Wed Mar  1 10:11:03 2006
@@ -1632,7 +1632,7 @@
 sub _PrefName {
     my $name = shift;
     if (ref $name) {
-	$name = ref ($name).'-'.$name->Id;
+        $name = ref($name).'-'.$name->Id;
     }
 
     return 'Pref-'.$name;
@@ -1653,24 +1653,23 @@
     my $name = _PrefName (shift);
     my $default = shift;
 
-    my $attr = RT::Attribute->new ($self->CurrentUser);
-    $attr->LoadByNameAndObject (Object => $self, Name => $name);
+    my $attr = RT::Attribute->new( $self->CurrentUser );
+    $attr->LoadByNameAndObject( Object => $self, Name => $name );
 
     my $content = $attr->Id ? $attr->Content : undef;
-    if (ref ($content) eq 'HASH') {
-	if (ref ($default) eq 'HASH') {
-	    for (keys %$default) {
-		exists $content->{$_} or $content->{$_} = $default->{$_};
-	    }
-	}
-	elsif (defined $default) {
-	    $RT::Logger->error("Preferences $name for user".$self->Id." is hash but default is not");
-	}
-	return $content;
+    unless ( ref $content eq 'HASH' ) {
+        return defined $content ? $content : $default;
     }
-    else {
-	return defined $content ? $content : $default;
+
+    if (ref $default eq 'HASH') {
+        for (keys %$default) {
+            exists $content->{$_} or $content->{$_} = $default->{$_};
+        }
     }
+    elsif (defined $default) {
+        $RT::Logger->error("Preferences $name for user".$self->Id." is hash but default is not");
+    }
+    return $content;
 }
 
 # }}}
@@ -1684,16 +1683,16 @@
 =cut
 
 sub SetPreferences {
-    my $self  = shift;
-    my $name = _PrefName (shift);
+    my $self = shift;
+    my $name = _PrefName( shift );
     my $value = shift;
-    my $attr = RT::Attribute->new ($self->CurrentUser);
-    $attr->LoadByNameAndObject (Object => $self, Name => $name);
-    if ($attr->Id) {
-	return $attr->SetContent ($value);
+    my $attr = RT::Attribute->new( $self->CurrentUser );
+    $attr->LoadByNameAndObject( Object => $self, Name => $name );
+    if ( $attr->Id ) {
+        return $attr->SetContent( $value );
     }
     else {
-	return $self->AddAttribute ( Name => $name, Content => $value );
+        return $self->AddAttribute( Name => $name, Content => $value );
     }
 }
 

Modified: rt/branches/3.7-EXPERIMENTAL/lib/t/regression/06mailgateway.t
==============================================================================

Modified: rt/branches/3.7-EXPERIMENTAL/lib/t/regression/09-api-date.t
==============================================================================
--- rt/branches/3.7-EXPERIMENTAL/lib/t/regression/09-api-date.t	(original)
+++ rt/branches/3.7-EXPERIMENTAL/lib/t/regression/09-api-date.t	Wed Mar  1 10:11:03 2006
@@ -81,7 +81,7 @@
 {
     my $date = RT::Date->new($RT::SystemUser);
     is($date->Unix, 0, "new date returns 0 in Unix format");
-    is($date->Get, '1970-01-01 00:00:00', "default is ISO format"); 
+    is($date->Get, '1970-01-01 00:00:00', "default is ISO format");
     is($date->Get(Format =>'SomeBadFormat'),
        '1970-01-01 00:00:00',
        "don't know format, return ISO format");

Modified: rt/branches/3.7-EXPERIMENTAL/lib/t/regression/17custom_search.t
==============================================================================

Modified: rt/branches/3.7-EXPERIMENTAL/lib/t/regression/25scrip_order.t
==============================================================================

Modified: rt/branches/3.7-EXPERIMENTAL/releng.cnf
==============================================================================
--- rt/branches/3.7-EXPERIMENTAL/releng.cnf	(original)
+++ rt/branches/3.7-EXPERIMENTAL/releng.cnf	Wed Mar  1 10:11:03 2006
@@ -1,7 +1,7 @@
 PRODUCT			        = rt
-TAG			            = 3.6.0pre0
+TAG			            = 3.7.0pre0
 CANONICAL_REPO		    = svn+ssh://svn.bestpractical.com/svn/bps-public/rt/
 TAGS		            = tags/
-TRUNK	                = branches/3.5-TESTING
+TRUNK	                = branches/3.7-EXPERIMENTAL
 TMP_DIR			        = /tmp
 RELEASE_DIR		        = /home/ftp/pub/rt/devel

Modified: rt/branches/3.7-EXPERIMENTAL/sbin/rt-clean-sessions.in
==============================================================================
--- rt/branches/3.7-EXPERIMENTAL/sbin/rt-clean-sessions.in	(original)
+++ rt/branches/3.7-EXPERIMENTAL/sbin/rt-clean-sessions.in	Wed Mar  1 10:11:03 2006
@@ -1,21 +1,49 @@
 #!@PERL@
 
+=head1 NAME
+
+rt-clean-sessions - clean old and duplicate RT sessions
+
+=head1 USAGE
+
+    rt-clean-sessions [--debug] [--older <NUM>[H|D|M|Y]]
+
+    rt-clean sessions
+    rt-clean sessions --debug
+    rt-clean sessions --older 10D
+    rt-clean sessions --debug --older 1M
+
+=head1 DESCRIPTION
+
+Script cleans RT sessions from DB or dir with sessions data.
+Leaves in DB only one session per RT user and sessions that aren't older
+than specified(see options).
+
+Script is safe because data in the sessions is temporary and can be deleted.
+
+=head1 OPTIONS
+
+=head2 older
+
+Date interval in the C<< <NUM>[<unit>] >> format. Default unit is D(ays),
+H(our), M(onth) and Y(ear) are also supported.
+
+For exmaple: C<rt-clean sessions --older 1M> would delete all sessions that are
+older than 1 month.
+
+=head2 debug
+
+Turn on debug output.
+
+=cut
+
 use strict;
 use warnings;
 use lib ("@LOCAL_LIB_PATH@", "@RT_LIB_PATH@");
 
 use Getopt::Long;
 my %opt;
-GetOptions( \%opt, "older=s", "debug", "help");
-
-
-if ( $opt{help} ) {
-    require Pod::Usage;
-    import Pod::Usage;
-    pod2usage("RT Session cleanup tool\n");
-    exit 1;    
-}
-
+GetOptions( \%opt, "older=s", "debug" );
 
 if( $opt{'older'} ) {
     unless( $opt{'older'} =~ /^\s*([0-9]+)\s*(H|D|M|Y)?$/i ) {
@@ -58,41 +86,3 @@
 RT::Interface::Web::Session->ClearByUser;
 
 exit(0);
-
-=head1 NAME
-
-rt-clean-sessions - clean old and duplicate RT sessions
-
-=head1 USAGE
-
-    rt-clean-sessions [--debug] [--older <NUM>[H|D|M|Y]]
-
-    rt-clean sessions
-    rt-clean sessions --debug
-    rt-clean sessions --older 10D
-    rt-clean sessions --debug --older 1M
-
-=head1 DESCRIPTION
-
-Script cleans RT sessions from DB or dir with sessions data.
-Leaves in DB only one session per RT user and sessions that aren't older
-than specified(see options).
-
-Script is safe because data in the sessions is temporary and can be deleted.
-
-=head1 OPTIONS
-
-=head2 older
-
-Date interval in the C<< <NUM>[<unit>] >> format. Default unit is D(ays),
-H(our), M(onth) and Y(ear) are also supported.
-
-For exmaple: C<rt-clean sessions --older 1M> would delete all sessions that are
-older than 1 month.
-
-=head2 debug
-
-Turn on debug output.
-
-=cut
-

Modified: rt/branches/3.7-EXPERIMENTAL/sbin/rt-setup-database.in
==============================================================================
--- rt/branches/3.7-EXPERIMENTAL/sbin/rt-setup-database.in	(original)
+++ rt/branches/3.7-EXPERIMENTAL/sbin/rt-setup-database.in	Wed Mar  1 10:11:03 2006
@@ -82,6 +82,7 @@
 my $db_host = RT->Config->Get('DatabaseHost') || '';
 my $db_name = RT->Config->Get('DatabaseName') || '';
 my $db_user = RT->Config->Get('DatabaseUser') || '';
+my $db_pass = RT->Config->Get('DatabasePassword') || '';
 
 if ( $args{'prompt-for-dba-password'} ) {
     $args{'dba-password'} = get_dba_password();
@@ -127,12 +128,11 @@
 
         $dbh->disconnect;
 
-        if ($RT::DatabaseType eq "Oracle") {
-        $RT::DatabasePassword = $RT::DatabasePassword; #Warning avidance
-        $dbh = DBI->connect( $Handle->DSN, ${RT::DatabaseUser}, ${RT::DatabasePassword} ) || die $DBI::errstr;
-        } else {
-        
-        $dbh = DBI->connect( $Handle->DSN, $args{'dba'}, $args{'dba-password'} ) || die $DBI::errstr;
+        if ($db_type eq "Oracle") {
+            $dbh = DBI->connect( $Handle->DSN, $db_user, $db_pass ) || die $DBI::errstr;
+        }
+        else {
+            $dbh = DBI->connect( $Handle->DSN, $args{'dba'}, $args{'dba-password'} ) || die $DBI::errstr;
         }
     }
     print "Now populating database schema.\n";

Modified: rt/branches/3.7-EXPERIMENTAL/sbin/rt-test-dependencies.in
==============================================================================


More information about the Rt-commit mailing list