Merge branch 'template_locales'
authorSven Schöling <s.schoeling@linet-services.de>
Mon, 12 Jul 2010 14:13:05 +0000 (16:13 +0200)
committerSven Schöling <s.schoeling@linet-services.de>
Mon, 12 Jul 2010 14:13:05 +0000 (16:13 +0200)
Conflicts:
templates/webpages/admin/edit_user_master.html
templates/webpages/admin/list_users_de.html
templates/webpages/is/form_header_master.html

1  2 
locale/de/all
locale/de/ap
locale/de/ar
locale/de/ir
locale/de/is
templates/webpages/admin/edit_user.html
templates/webpages/is/form_header.html

diff --combined locale/de/all
@@@ -183,7 -183,7 +183,7 @@@ $self->{texts} = 
    'Ap aging on %s'              => 'Offene Verbindlichkeiten zum %s',
    'Application Error. No Format given' => 'Fehler in der Anwendung. Das Ausgabeformat fehlt.',
    'Application Error. Wrong Format' => 'Fehler in der Anwendung. Falsches Format: ',
-   'Applying [% HTML.escape(file) %]:' => 'F&uuml;hre [% HTML.escape(file) %] aus:',
+   'Applying #1:'                => 'Führe #1 aus:',
    'Approximately #1 prices will be updated.' => 'Ungefähr #1 Preise werden aktualisiert.',
    'Apr'                         => 'Apr',
    'April'                       => 'April',
    'General ledger corrections'  => 'Korrekturen im Hauptbuch',
    'Generic Tax Report'          => 'USTVA Bericht',
    'Given Name'                  => 'Vorname',
 +  'Go one step back'            => 'Einen Schritt zur&uuml;ck',
    'Greeting'                    => 'Anrede',
    'Greetings'                   => 'Anreden',
    'Group'                       => 'Warengruppe',
    'Groups'                      => 'Warengruppen',
    'HTML'                        => 'HTML',
    'HTML Templates'              => 'HTML-Vorlagen',
 +  'Hardcopy'                    => 'Seite drucken',
    'Has serial number'           => 'Hat eine Serienummer',
    'Header'                      => 'Überschrift',
    'Heading'                     => 'Überschrift',
    'IV'                          => 'IV',
    'If the automatic creation of invoices for fees and interest is switched on for a dunning level then the following accounts will be used for the invoice.' => 'Wenn das automatische Erstellen einer Rechnung &uuml;ber Mahngeb&uuml;hren und Zinsen f&uuml;r ein Mahnlevel aktiviert ist, so werden die folgenden Konten f&uuml;r die Rechnung benutzt.',
    'If the database user listed above does not have the right to create a database then enter the name and password of the superuser below:' => 'Falls der oben genannte Datenbankbenutzer nicht die Berechtigung zum Anlegen neuer Datenbanken hat, so k&ouml;nnen Sie hier den Namen und das Passwort des Datenbankadministratoraccounts angeben:',
-   'If you chose to let Lx-Office do the migration then Lx-Office will also remove the old member file after creating a backup copy of it in the directory &quot;[% HTML.escape(backupdir) %]&quot;.' => 'Falls Sie sich entscheiden, Lx-Office die Migration durchf&uuml;hren zu lassen, so wird Lx-Office ein Backup der alten Dateien im Verzeichnis &quot;[% HTML.escape(backupdir) %]&quot; erstellen und die Dateien anschlie&szlig;end l&ouml;schen.',
+   'If you chose to let Lx-Office do the migration then Lx-Office will also remove the old member file after creating a backup copy of it in the directory &quot;#1&quot;.' => 'Falls Sie sich entscheiden, Lx-Office die Migration durchführen zu lassen, so wird Lx-Office ein Backup der alten Dateien im Verzeichnis "#1" erstellen und die Dateien anschließend löschen.',
    'If you enter values for the part number and / or part description then only those bins containing parts whose part number or part description match your input will be shown.' => 'Wenn Sie f&uuml;r die Artikelnummer und / oder die Beschreibung etwas eingeben, so werden nur die Lagerpl&auml;tze angezeigt, in denen Waren eingelagert sind, die Ihre Suchbegriffe enthalten.',
    'If you see this message, you most likely just setup your LX-Office and haven\'t added any entry types. If this is the case, the option is accessible for administrators in the System menu.' => 'Wenn Sie diese Meldung sehen haben Sie wahrscheinlich ein frisches LX-Office Setup und noch keine Buchungsgruppen eingerichtet. Ein Administrator kann dies im Systemmen&uuml; erledigen.',
    'If you want to change any of these parameters then press the &quot;Back&quot; button, edit the file &quot;config/authentication.pl&quot; and login into the admin module again.' => 'Wenn Sie einen der Parameter &auml;ndern wollen, so dr&uuml;cken Sie auf den &quot;Zur&uuml;ck&quot;-Button, bearbeiten Sie die Datei &quot;config/authentication.pl&quot;, und melden Sie sich erneut im Administrationsbereich an.',
    'Login'                       => 'Anmeldung',
    'Login Name'                  => 'Benutzername',
    'Login name missing!'         => 'Loginname fehlt.',
 -  'Logout'                      => 'Abmeldung',
 +  'Logout'                      => 'Abmelden',
    'Long Dates'                  => 'Lange Monatsnamen',
    'Long Description'            => 'Langtext',
    'Lx-Office 2.4.0 introduces two new concepts: tax zones and Buchungsgruppen.' => 'Lx-Office 2.4.0 f&uuml;hrt zwei neue Konzepte ein: Steuerzonen und Buchungsgruppen.',
    'Lx-Office can fix these problems automatically.' => 'Lx-Office kann solche Probleme automatisch beheben.',
    'Lx-Office has been switched to group-based access restrictions.' => 'Lx-Office wurde auf eine gruppenbasierte Benutzerzugriffsverwaltung umgestellt.',
    'Lx-Office has found one or more problems in the general ledger.' => 'Lx-Office hat ein oder mehrere Probleme im Hauptbuch gefunden.',
-   'Lx-Office is about to update the database <b>[% HTML.escape(dbname) %]</b>. You should create a backup of the database before proceeding because the backup might not be reversible.' => 'Lx-Office wird gleich die Datenbank <b>[% HTML.escape(dbname) %]</b> aktualisieren. Sie sollten eine Sicherungskopie der Datenbank erstellen, bevor Sie fortfahren, da die Aktualisierung unter Umst&auml;nden nicht umkehrbar ist.',
+   'Lx-Office is about to update the database <b>#1</b>.' => 'Lx-Office wird gleich die Datenbank <b>#1</b> aktualisieren.',
    'Lx-Office is now able to manage warehouses instead of just tracking the amount of goods in your system.' => 'Lx-Office enth&auml;lt jetzt auch echte Lagerverwaultung anstatt reiner Mengenz&auml;hlung.',
    'Lx-Office website'           => 'Lx-Office-Webseite',
    'MAILED'                      => 'Gesendet',
    'Make'                        => 'Lieferant',
    'Manage license keys'         => 'Lizenzschl&uuml;ssel verwalten',
    'Mandantennummer'             => 'Mandantennummer',
 +  'Mandatory Departments'       => 'Benutzer muss Abteilungen vergeben',
    'Mar'                         => 'März',
    'March'                       => 'März',
    'Margins'                     => 'Seitenr&auml;nder',
    'Module name'                 => 'Modulname',
    'Monat'                       => 'Monat',
    'Monthly'                     => 'monatlich',
+   'More than one #1 found matching, please be more specific.' => 'Mehr als ein #1 wurde gefunden, bitte geben Sie den Namen genauer an.',
    'More than one control file with the tag \'%s\' exist.' => 'Es gibt mehr als eine Kontrolldatei mit dem Tag \'%s\'.',
    'Multi mode not supported.'   => 'Multimodus wird nicht unterstützt.',
    'Multibyte Encoding'          => 'Schriftsatz',
    'National Expenses'           => 'Aufwand Inland',
    'National Revenues'           => 'Erl&ouml;se Inland',
    'Netto Terms'                 => 'Zahlungsziel netto',
-   'New Buchungsgruppe [% loop.count %]' => 'Neue Buchungsgruppe [% loop.count %]',
+   'New Buchungsgruppe #1'       => 'Neue Buchungsgruppe #1',
    'New Templates'               => 'neue Vorlagen',
 +  'New Win/Tab'                 => 'Neues Fenster',
    'New assembly'                => 'Neues Erzeugnis',
    'New bank account'            => 'Neues Bankkonto',
    'New contact'                 => 'Neuer Ansprechpartner',
    'Only due follow-ups'         => 'Nur f&auml;llige Wiedervorlagen',
    'Open'                        => 'Offen',
    'Open Amount'                 => 'Offener Betrag',
 +  'Open a further Lx-Office Window or Tab' => 'Neues Fenster bzw. Tab &ouml;ffnen',
    'Open amount'                 => 'offener Betrag',
    'OpenDocument/OASIS'          => 'OpenDocument/OASIS',
    'Openings'                    => 'Öffnungszeiten',
    'Please enter the login for the new user.' => 'Bitte geben Sie das Login für den neuen Benutzer ein.',
    'Please enter the name of the database that will be used as the template for the new database:' => 'Bitte geben Sie den Namen der Datenbank an, die als Vorlage f&uuml;r die neue Datenbank benutzt wird:',
    'Please enter the name of the dataset you want to restore the backup in.' => 'Bitte geben Sie den Namen der Datenbank ein, in der Sie die Sicherung wiederherstellen wollen.',
-   'Please enter the taxnumber in the administration menu userpreferences' => 'Bitte bei den Einstellungen des aktuellen Benutzers im Administrationsmodul
-   angeben.',
+   'Please enter the taxnumber in the administration menu user preferences' => 'Bitte bei den Einstellungen des aktuellen Benutzers im Administrationsmodul angeben.',
    'Please enter values'         => 'Bitte Werte eingeben',
    'Please insert object dimensions below.' => 'Bitte geben Sie die Abmessungen unten ein',
    'Please insert your language values below' => 'Bitte die Übersetzungen unten eintragen',
    'The creation of the authentication database failed:' => 'Das Anlegen der Authentifizierungsdatenbank schlug fehl:',
    'The custom variable has been deleted.' => 'Die benutzerdefinierte Variable wurde gel&ouml;scht.',
    'The custom variable has been saved.' => 'Die benutzerdefinierte Variable wurde gespeichert.',
-   'The database [% HTML.escape(db) %] has been successfully deleted.' => 'Die Datenbank [% HTML.escape(db) %] wurde erfolgreich gel&ouml;scht.',
+   'The database #1 has been successfully deleted.' => 'Die Datenbank #1 wurde erfolgreich gelöscht.',
    'The database for user management and authentication does not exist. You can create let Lx-Office create it with the following parameters:' => 'Die Datenbank zur Verwaltung der Benutzerdaten und zur Authentifizierung existiert nicht. Sie k&ouml;nnen Lx-Office diese Datenbank mit den folgenden Parametern anlegen lassen:',
-   'The database update/creation did not succeed. The file [% HTML.escape(file) %] contained the following error:' => 'Die Datenbankaktualisierung/erstellung schlug fehl. Die Datei [% HTML.escape(file) %] enthielt den folgenden Fehler:',
+   'The database update/creation did not succeed. The file #1 contained the following error:' => 'Die Datenbankaktualisierung/erstellung schlug fehl. Die Datei #1 enthielt den folgenden Fehler:',
    'The database upgrade for the introduction of Buchungsgruppen is now complete.' => 'Das Datenbankupgrade f&uuml;r die Einf&uuml;hrung von Buchungsgruppen ist jetzt beendet.',
    'The database upgrade for the introduction of units is now complete.' => 'Das Datenbankupgrade zwecks Einf&uuml;hrung von Einheiten ist nun beendet.',
-   'The dataset [% HTML.escape(db) %] has been successfully created.' => 'Die Datenbank [% HTML.escape(db) %] wurde erfolgreich angelegt.',
-   'The dataset backup has been sent via email to [% HTML.escape(to) %].' => 'Die Datenbanksicherung wurde per Email an [% HTML.escape(to) %] verschickt.',
+   'The dataset #1 has been successfully created.' => 'Die Datenbank #1 wurde erfolgreich angelegt.',
+   'The dataset backup has been sent via email to #1.' => 'Die Datenbanksicherung wurde per Email an #1 verschickt.',
    'The dataset has to exist before a restoration can be started.' => 'Die Datenbank muss vor der Wiederherstellung bereits angelegt worden sein.',
    'The dataset name is missing.' => 'Der Datenbankname fehlt.',
    'The default value depends on the variable type:' => 'Die Bedeutung des Standardwertes h&auml;ngt vom Variablentypen ab:',
    'The name is missing in row %d.' => 'Der Name fehlt in Zeile %d.',
    'The name is missing.'        => 'Der Name fehlt.',
    'The name must only consist of letters, numbers and underscores and start with a letter.' => 'Der Name darf nur aus Buchstaben (keine Umlaute), Ziffern und Unterstrichen bestehen und muss mit einem Buchstaben beginnen.',
-   'The old file containing the user information is still present (&quot;[% HTML.escape(memberfile) %]&quot;). Do you want to migrate these users into the database? If not then you will not be able to log in with any of the users present in the old file. ' => 'Die alte Datei mit den Benutzerdaten existiert in dieser Installation noch immer (&quot;[% HTML.escape(memberfile) %]&quot;). Wollen Sie diese Benutzer in die neue Authentifizierungsdatenbank migrieren lassen? Falls nicht, so werden Sie sich nicht mehr mit den Benutzerdaten aus der alten Mitgliedsdatei anmelden k&ouml;nnen.',
+   'The old file containing the user information is still present (&quot;#1&quot;). Do you want to migrate these users into the database? If not then you will not be able to log in with any of the users present in the old file.' => 'Die alte Datei mit den Benutzerdaten existiert in dieser Installation noch immer (&quot;#1&quot;). Wollen Sie diese Benutzer in die neue Authentifizierungsdatenbank migrieren lassen? Falls nicht, so werden Sie sich nicht mehr mit den Benutzerdaten aus der alten Mitgliedsdatei anmelden können.',
    'The option field is empty.'  => 'Das Optionsfeld ist leer.',
    'The parts for this delivery order have already been transferred in.' => 'Die Artikel dieses Lieferscheins wurden bereits eingelagert.',
    'The parts for this delivery order have already been transferred out.' => 'Die Artikel dieses Lieferscheins wurden bereits ausgelagert.',
    'The pg_dump process could not be started.' => 'Der pg_dump-Prozess konnte nicht gestartet werden.',
    'The pg_restore process could not be started.' => 'Der pg_restore-Prozess konnte nicht gestartet werden.',
    'The preferred one is to install packages provided by your operating system distribution (e.g. Debian or RPM packages).' => 'Die bevorzugte Art, ein Perl-Modul zu installieren, ist durch Installation eines von Ihrem Betriebssystem zur Verf&uuml;gung gestellten Paketes (z.B. Debian-Pakete oder RPM).',
-   'The program\'s exit code was [% HTML.escape(retval) %] (&quot;0&quot; usually means that everything went OK).' => 'Der Exitcode des Programms war [% HTML.escape(retval) %] (&quot;0&quot; bedeutet normalerweise, dass die Wiederherstellung erfolgreich war).',
+   'The program\'s exit code was #1 (&quot;0&quot; usually means that everything went OK).' => 'Der Exitcode des Programms war #1 (&quot;0&quot; bedeutet normalerweise, dass die Wiederherstellung erfolgreich war).',
    'The project has been added.' => 'Das Projekt wurde erfasst.',
    'The project has been saved.' => 'Das Projekt wurde gespeichert.',
    'The restoration process has started. Here\'s the output of the &quot;pg_restore&quot; command:' => 'Der Wiederherstellungsprozess wurde gestartet. Hier ist die Ausgabe des &quot;pg_restore&quot;-Programmes:',
    'This could have happened for two reasons:' => 'Dies kann aus zwei Gründen geschehen sein:',
    'This customer number is already in use.' => 'Diese Kundennummer wird bereits verwendet.',
    'This group will be called &quot;Full Access&quot;.' => 'Diese Gruppe wird &quot;Vollzugriff&quot; genannt.',
-   'This installation uses an unknown chart of accounts (&quot;[% HTML.escape(coa) %]&quot;). This database upgrade cannot create standard buchungsgruppen automatically.' => 'Diese Installation benutzt einen unbekannten Kontenrahmen (&quot;[% HTML.escape(coa) %]&quot;). Dieses Datenbankupgrade kann die Standardbuchungsgruppen nicht automatisch anlegen.',
+   'This installation uses an unknown chart of accounts (&quot;#1&quot;). This database upgrade cannot create standard buchungsgruppen automatically.' => 'Diese Installation benutzt einen unbekannten Kontenrahmen (&quot;#1&quot;). Dieses Datenbankupgrade kann die Standardbuchungsgruppen nicht automatisch anlegen.',
    'This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!' => 'In diesem Schritt werden bestehende Datenbanken gesucht. Es werden noch keine &Auml;nderungen vorgenommen!',
    'This list is capped at 15 items to keep it fast. If you need a full list, please use reports.' => 'Diese Liste ist auf 15 Zeilen begrenzt. Wenn Sie eine vollständige Liste benötigen, erstellen Sie bitte einen Bericht.',
    'This means that the user has created an AP transaction and chosen a taxkey for sales taxes, or that he has created an AR transaction and chosen a taxkey for input taxes.' => 'Das bedeutet, dass ein Benutzer eine Kreditorenbuchung angelegt und in ihr einen Umsatzsteuer-Steuerschlüssel verwendet oder eine Debitorenbuchung mit Vorsteuer-Steuerschlüssel angelegt hat.',
    'To (email)'                  => 'An',
    'To (time)'                   => 'Bis',
    'To Date'                     => 'Bis',
-   'To add a user to a group edit a name, change the login name and save. A new user with the same variables will then be saved under the new login name.' => 'Um einer Gruppe einen neuen Benutzer hinzuzuf&uuml;gen, passen Sie die Daten eines Benutzers an, und drücken Sie "als neu speichern". Unter dem neuen Namen wird dann ein Benutzer mit denselben Gruppenrechten angelegt.',
+   'To add a user to a group edit a name, change the login name and save.  A new user with the same variables will then be saved under the new login name.' => 'Um einer Gruppe einen neuen Benutzer hinzuzufügen, ändern und speichern Sie am einfachsten einen bestehen den Zugriffsnamen. Unter dem neuen Namen wird dann ein Benutzer mit denselben Einstellungen angelegt.',
    'Top'                         => 'Oben',
    'Top (CSS)'                   => 'Oben (mit CSS)',
    'Top (CSS) new'               => 'Oben (mit CSS, neu)',
    'You have to create new Buchungsgruppen for all the combinations of inventory, income and expense accounts that have been used already.' => 'Sie m&uuml;ssen neue Buchungsgruppen f&uuml;r alle Kombinationen aus Inventar-, Erl&ouml;s- und Aufwandskonto, die bereits benutzt wurden.',
    'You have to enter a company name in your user preferences (see the "Program" menu, "Preferences").' => 'Sie müssen einen Firmennamen in Ihren Benutzereinstellungen angeben (siehe "Programm"-Menü, "Benuztereinstellungen).',
    'You have to fill in at least an account number, the bank code, the IBAN and the BIC.' => 'Sie müssen zumindest die Kontonummer, die Bankleitzahl, die IBAN und den BIC angeben.',
 +  'You have to specify a department.' => 'Sie müssen eine Abteilung wählen.',
    'You have to specify an execution date for each antry.' => 'Sie müssen für jeden zu buchenden Eintrag ein Ausführungsdatum angeben.',
    'You must chose a user.'      => 'Sie m&uuml;ssen einen Benutzer ausw&auml;hlen.',
+   'You should create a backup of the database before proceeding because the backup might not be reversible.' => 'Sie sollten eine Sicherungskopie der Datenbank erstellen, bevor Sie fortfahren, da die Aktualisierung unter Umständen nicht umkehrbar ist.',
    'You will now be forwarded to the administration panel.' => 'Sie werden nun zum Administrationsbereich weitergeleitet.',
    'You\'re not editing a file.' => 'Sie bearbeiten momentan keine Datei.',
    'You\'ve already chosen the following limitations:' => 'Sie haben bereits die folgenden Einschr&auml;nkungen vorgenommen:',
    'disposed'                    => 'Entsorgung',
    'done'                        => 'erledigt',
    'down'                        => 'runter',
 -  'drucken'                     => 'drucken',
    'dunning_list'                => 'mahnungsliste',
    'eMail Send?'                 => 'eMail-Versand?',
    'eMail?'                      => 'eMail?',
    'logout'                      => 'abmelden',
    'male'                        => 'männlich',
    'mark as paid'                => 'als bezahlt markieren',
-   'master'                      => 'de',
    'missing'                     => 'Fehlbestand',
    'month'                       => 'Monatliche Abgabe',
    'new Window'                  => 'neues Fenster',
diff --combined locale/de/ap
@@@ -150,6 -150,7 +150,7 @@@ $self->{texts} = 
    'Missing amount'              => 'Fehlbetrag',
    'Missing parameter #1 in call to sub #2.' => 'Fehlernder Parameter \'#1\' in Funktionsaufruf \'#2\'.',
    'Missing parameter (at least one of #1) in call to sub #2.' => 'Fehlernder Parameter (mindestens einer aus \'#1\') in Funktionsaufruf \'#2\'.',
+   'More than one #1 found matching, please be more specific.' => 'Mehr als ein #1 wurde gefunden, bitte geben Sie den Namen genauer an.',
    'More than one control file with the tag \'%s\' exist.' => 'Es gibt mehr als eine Kontrolldatei mit dem Tag \'%s\'.',
    'Name'                        => 'Name',
    'No'                          => 'Nein',
    'Warehouse management'        => 'Lagerverwaltung/Bestandsveränderung',
    'Yes'                         => 'Ja',
    'You do not have the permissions to access this function.' => 'Sie verf&uuml;gen nicht &uuml;ber die notwendigen Rechte, um auf diese Funktion zuzugreifen.',
 +  'You have to specify a department.' => 'Sie müssen eine Abteilung wählen.',
    'Your PostgreSQL installationen uses UTF-8 as its encoding. Therefore you have to configure Lx-Office to use UTF-8 as well.' => 'Ihre PostgreSQL-Installation benutzt UTF-8 als Zeichensatz. Sie müssen deshalb Lx-Office so konfigurieren, dass es ebenfalls UTF-8 als Zeichensatz benutzt.',
    'Zero amount posting!'        => 'Buchung ohne Wert',
    '[email]'                     => '[email]',
diff --combined locale/de/ar
@@@ -154,6 -154,7 +154,7 @@@ $self->{texts} = 
    'Missing amount'              => 'Fehlbetrag',
    'Missing parameter #1 in call to sub #2.' => 'Fehlernder Parameter \'#1\' in Funktionsaufruf \'#2\'.',
    'Missing parameter (at least one of #1) in call to sub #2.' => 'Fehlernder Parameter (mindestens einer aus \'#1\') in Funktionsaufruf \'#2\'.',
+   'More than one #1 found matching, please be more specific.' => 'Mehr als ein #1 wurde gefunden, bitte geben Sie den Namen genauer an.',
    'More than one control file with the tag \'%s\' exist.' => 'Es gibt mehr als eine Kontrolldatei mit dem Tag \'%s\'.',
    'Name'                        => 'Name',
    'No'                          => 'Nein',
    'Warehouse management'        => 'Lagerverwaltung/Bestandsveränderung',
    'Yes'                         => 'Ja',
    'You do not have the permissions to access this function.' => 'Sie verf&uuml;gen nicht &uuml;ber die notwendigen Rechte, um auf diese Funktion zuzugreifen.',
 +  'You have to specify a department.' => 'Sie müssen eine Abteilung wählen.',
    'Your PostgreSQL installationen uses UTF-8 as its encoding. Therefore you have to configure Lx-Office to use UTF-8 as well.' => 'Ihre PostgreSQL-Installation benutzt UTF-8 als Zeichensatz. Sie müssen deshalb Lx-Office so konfigurieren, dass es ebenfalls UTF-8 als Zeichensatz benutzt.',
    'Zero amount posting!'        => 'Buchung ohne Wert',
    '[email]'                     => '[email]',
diff --combined locale/de/ir
@@@ -148,6 -148,7 +148,7 @@@ $self->{texts} = 
    'Missing \'tag\' field.'      => 'Fehlendes Feld \'tag\'.',
    'Missing parameter #1 in call to sub #2.' => 'Fehlernder Parameter \'#1\' in Funktionsaufruf \'#2\'.',
    'Missing parameter (at least one of #1) in call to sub #2.' => 'Fehlernder Parameter (mindestens einer aus \'#1\') in Funktionsaufruf \'#2\'.',
+   'More than one #1 found matching, please be more specific.' => 'Mehr als ein #1 wurde gefunden, bitte geben Sie den Namen genauer an.',
    'More than one control file with the tag \'%s\' exist.' => 'Es gibt mehr als eine Kontrolldatei mit dem Tag \'%s\'.',
    'Name'                        => 'Name',
    'No'                          => 'Nein',
    'Warehouse management'        => 'Lagerverwaltung/Bestandsveränderung',
    'Yes'                         => 'Ja',
    'You do not have the permissions to access this function.' => 'Sie verf&uuml;gen nicht &uuml;ber die notwendigen Rechte, um auf diese Funktion zuzugreifen.',
 +  'You have to specify a department.' => 'Sie müssen eine Abteilung wählen.',
    'Your PostgreSQL installationen uses UTF-8 as its encoding. Therefore you have to configure Lx-Office to use UTF-8 as well.' => 'Ihre PostgreSQL-Installation benutzt UTF-8 als Zeichensatz. Sie müssen deshalb Lx-Office so konfigurieren, dass es ebenfalls UTF-8 als Zeichensatz benutzt.',
    'Zipcode'                     => 'PLZ',
    '[email]'                     => '[email]',
diff --combined locale/de/is
@@@ -153,6 -153,7 +153,7 @@@ $self->{texts} = 
    'Missing \'tag\' field.'      => 'Fehlendes Feld \'tag\'.',
    'Missing parameter #1 in call to sub #2.' => 'Fehlernder Parameter \'#1\' in Funktionsaufruf \'#2\'.',
    'Missing parameter (at least one of #1) in call to sub #2.' => 'Fehlernder Parameter (mindestens einer aus \'#1\') in Funktionsaufruf \'#2\'.',
+   'More than one #1 found matching, please be more specific.' => 'Mehr als ein #1 wurde gefunden, bitte geben Sie den Namen genauer an.',
    'More than one control file with the tag \'%s\' exist.' => 'Es gibt mehr als eine Kontrolldatei mit dem Tag \'%s\'.',
    'Name'                        => 'Name',
    'No'                          => 'Nein',
    'Warehouse management'        => 'Lagerverwaltung/Bestandsveränderung',
    'Yes'                         => 'Ja',
    'You do not have the permissions to access this function.' => 'Sie verf&uuml;gen nicht &uuml;ber die notwendigen Rechte, um auf diese Funktion zuzugreifen.',
 +  'You have to specify a department.' => 'Sie müssen eine Abteilung wählen.',
    'Your PostgreSQL installationen uses UTF-8 as its encoding. Therefore you have to configure Lx-Office to use UTF-8 as well.' => 'Ihre PostgreSQL-Installation benutzt UTF-8 als Zeichensatz. Sie müssen deshalb Lx-Office so konfigurieren, dass es ebenfalls UTF-8 als Zeichensatz benutzt.',
    'Zipcode'                     => 'PLZ',
    '[email]'                     => '[email]',
index 0000000,81eb1ea..b302780
mode 000000,100644..100644
--- /dev/null
@@@ -1,0 -1,282 +1,289 @@@
+ [%- USE T8 %]
+ [% USE HTML %]<body class="admin">
+  <script type="text/javascript" src="js/common.js"></script>
+  <script type="text/javascript" src="js/jquery.js"></script>
+  <script type="text/javascript">
+   <!--
+       function open_connection_test_window() {
+         // host name port user passwd
+         var url = "admin.pl?INPUT_ENCODING=UTF-8&action=test_db_connection&" +
+           "dbhost="   + encodeURIComponent(get_input_value("dbhost"))   + "&" +
+           "dbport="   + encodeURIComponent(get_input_value("dbport"))   + "&" +
+           "dbname="   + encodeURIComponent(get_input_value("dbname"))   + "&" +
+           "dbuser="   + encodeURIComponent(get_input_value("dbuser"))   + "&" +
+           "dbpasswd=" + encodeURIComponent(get_input_value("dbpasswd")) + "&";
+         var parm = centerParms(400,300) + ",width=400,height=300,status=yes,scrollbars=yes";
+         window.open(url, "_new_generic", parm);
+       }
+     -->
+  </script>
+  <form name="Form" id="Form" method="post" action="admin.pl">
+   <div class="listtop" width="100%">[% title %]</div>
+   <table width="100%">
+    <tr valign="top">
+     <td>
+      <table>
+       <tr>
+        <th align="right">[% 'Login' | $T8 %]</th>
+        <td>
+         [%- IF edit %]
+          <input type="hidden" name="login" value="[% HTML.escape(myc_login) %]">[% HTML.escape(myc_login) %]
+         [%- ELSE %]
+          <input name="login" value="[% HTML.escape(myc_login) %]">
+         [%- END %]
+        </td>
+       </tr>
+       <tr>
+        <th align="right">[% 'Password' | $T8 %]</th>
+        <td>[% IF CAN_CHANGE_PASSWORD %]<input type="password" name="new_password" size="8" value="********">[% ELSE %]********[% END %]</td>
+       </tr>
+       <tr>
+        <th align="right">[% 'Name' | $T8 %]</th>
+        <td><input name="name" size="15" value="[% HTML.escape(myc_name) %]"></td>
+       </tr>
+       <tr>
+        <th align="right">[% 'E-mail' | $T8 %]</th>
+        <td><input name="email" size="30" value="[% HTML.escape(myc_email) %]"></td>
+       </tr>
+       <tr valign="top">
+        <th align="right">[% 'Signature' | $T8 %]</th>
+        <td><textarea name="signature" rows="3" cols="35">[% HTML.escape(myc_signature) %]</textarea></td>
+       </tr>
+       <tr>
+        <th align="right">[% 'Phone' | $T8 %]</th>
+        <td><input name="tel" size="14" value="[% HTML.escape(myc_tel) %]"></td>
+       </tr>
+       <tr>
+        <th align="right">[% 'Fax' | $T8 %]</th>
+        <td><input name="fax" size="14" value="[% HTML.escape(myc_fax) %]"></td>
+       </tr>
+       <tr>
+        <th align="right">[% 'Company' | $T8 %]</th>
+        <td><input name="company" size="35" value="[% HTML.escape(myc_company) %]"></td>
+       </tr>
+       <tr valign="top">
+        <th align="right">[% 'Address' | $T8 %]</th>
+        <td><textarea name="address" rows="4" cols="35">[% HTML.escape(myc_address) %]</textarea></td>
+       </tr>
+       <tr valign="top">
+        <th align="right">[% 'Tax number' | $T8 %]</th>
+        <td><input name="taxnumber" size="14" value="[% HTML.escape(myc_taxnumber) %]"></td>
+       </tr>
+       <tr valign="top">
+        <th align="right">[% 'Ust-IDNr' | $T8 %]</th>
+        <td><input name="co_ustid" size="14" value="[% HTML.escape(myc_co_ustid) %]"></td>
+       </tr>
+       <tr valign="top">
+        <th align="right">[% 'DUNS-Nr' | $T8 %]</th>
+        <td><input name="duns" size="14" value="[% HTML.escape(myc_duns) %]"></td>
+       </tr>
+      </table>
+     </td>
+     <td>
+      <table>
+       <tr>
+        <th align="right">[% 'Date Format' | $T8 %]</th>
+        <td>
+         <select name="dateformat">
+          [% FOREACH row = ALL_DATEFORMATS %]<option [% IF row.selected %]selected[% END %]>[% HTML.escape(row.format) %]</option>
+          [% END %]
+         </select>
+        </td>
+       </tr>
+       <tr>
+        <th align="right">[% 'Number Format' | $T8 %]</th>
+        <td>
+         <select name="numberformat">
+          [% FOREACH row = ALL_NUMBERFORMATS %]<option [% IF row.selected %]selected[% END %]>[% HTML.escape(row.format) %]</option>
+          [% END %]
+         </select>
+        </td>
+       </tr>
+       <tr>
+        <th align="right">[% 'Dropdown Limit' | $T8 %]</th>
+        <td><input name="vclimit" value="[% HTML.escape(myc_vclimit) %]"></td>
+       </tr>
+       <tr>
+        <th align="right">[% 'Language' | $T8 %]</th>
+        <td>
+         <select name="countrycode">
+          [% FOREACH row = ALL_COUNTRYCODES %]<option value="[% HTML.escape(row.value) %]" [% IF row.selected %]selected[% END %]>[% HTML.escape(row.name) %]</option>
+          [% END %]
+         </select>
+        </td>
+       </tr>
+       <tr>
+        <th align="right">[% 'Stylesheet' | $T8 %]</th>
+        <td>
+         <select name="userstylesheet">
+          [% FOREACH row = ALL_STYLESHEETS %]<option [% IF row.selected %]selected[% END %]>[% HTML.escape(row.name) %]</option>
+          [% END %]
+         </select>
+        </td>
+       </tr>
+       <tr>
+        <th align="right">[% 'Printer' | $T8 %]</th>
+        <td><input name="printer" size="20" value="[% HTML.escape(myc_printer) %]"></td>
+       </tr>
+       <tr>
+        <th align="right">[% 'Use Templates' | $T8 %]</th>
+        <td>
+         <select name="usetemplates">
+          [% FOREACH row = ALL_TEMPLATES %]<option [% IF row.selected %]selected[% END %]>[% HTML.escape(row.name) %]</option>
+          [% END %]
+         </select>
+        </td>
+       </tr>
+       <tr>
+        <th align="right">[% 'New Templates' | $T8 %]</th>
+        <td><input name="newtemplates"></td>
+       </tr>
+       <tr>
+        <th align="right">[% 'Setup Templates' | $T8 %]</th>
+        <td>
+         <select name="mastertemplates">
+          [% FOREACH row = ALL_MASTER_TEMPLATES %]<option [% IF row.selected %]selected[% END %]>[% HTML.escape(row.name) %]</option>
+          [% END %]
+         </select>
+        </td>
+       </tr>
+       <tr>
+        <th align="right">[% 'Setup Menu' | $T8 %]</th>
+        <td>
+         <select name="menustyle">
+          <option value="v3"[% IF menustyle_v3 %] selected[% END %]>[% 'Top (CSS)' | $T8 %]</option>
+          <option value="v4"[% IF menustyle_v4 %] selected[% END %]>[% 'Top (CSS) new' | $T8 %]</option>
+          <option value="neu"[% IF menustyle_neu %] selected[% END %]>[% 'Top (Javascript)' | $T8 %]</option>
+          <option value="xml"[% IF menustyle_xml %] selected[% END %]>[% 'Top (XUL; only for Mozilla Firefox)' | $T8 %]</option>
+          <option value="old"[% IF menustyle_old %] selected[% END %]>[% 'Old (on the side)' | $T8 %]</option>
+         </select>
+        </td>
+       </tr>
++      <tr>
++       <th align='right'>[% 'Mandatory Departments' | $T8 %]</th>
++       <td>
++        <input type='radio' name='mandatory_departments' value='0' [% IF !myc_mandatory_departments %] checked[% END %]> [% 'No' | $T8 %]
++        <input type='radio' name='mandatory_departments' value='1' [% IF  myc_mandatory_departments %] checked[% END %]> [% 'Yes' | $T8 %]
++       </td>
++      </tr>
+       <input type="hidden" name="templates" value="[% HTML.escape(myc_templates) %]">
+      </table>
+     </td>
+    </tr>
+    <tr class="listheading">
+     <th colspan="2">[% 'Database' | $T8 %]</th>
+    </tr>
+    <tr>
+     <td colspan="2">
+      <table>
+       <tr>
+        <th align="right">[% 'Driver' | $T8 %]</th>
+        <td>PostgreSQL</td>
+        <th align="right">[% 'Host' | $T8 %]</th>
+        <td><input name="dbhost" size="30" value="[% HTML.escape(myc_dbhost) %]"></td>
+       </tr>
+       <tr>
+        <th align="right">[% 'Dataset' | $T8 %]</th>
+        <td><input name="dbname" size="15" value="[% HTML.escape(myc_dbname) %]"></td>
+        <th align="right">[% 'Port' | $T8 %]</th>
+        <td><input name="dbport" size="4" value="[% HTML.escape(myc_dbport) %]"></td>
+       </tr>
+       <tr>
+        <th align="right">[% 'User' | $T8 %]</th>
+        <td><input name="dbuser" size="15" value="[% HTML.escape(myc_dbuser) %]"></td>
+        <th align="right">[% 'Password' | $T8 %]</th>
+        <td><input name="dbpasswd" type="password" size="10" value="[% HTML.escape(myc_dbpasswd) %]"></td>
+       </tr>
+       <tr>
+        <td colspan="2"><input type="button" class="submit" onclick="open_connection_test_window();" value="[% 'Test connection' | $T8 %]"></td>
+       </tr>
+      </table>
+     </td>
+    </tr>
+    [% IF edit %]
+    <tr><td colspan="2"><hr size="3" noshade></td></tr>
+    <tr class="listheading">
+     <th colspan="2">[% 'Group membership' | $T8 %]</th>
+    </tr>
+    <tr>
+     <td colspan="2">[% 'The user is a member in the following group(s):' | $T8 %]</td>
+    </tr>
+    <tr>
+     <td colspan="2">[% FOREACH row = GROUPS %]<a href="admin.pl?action=edit_group&group_id=[% HTML.url(row.id) %]">[% HTML.escape(row.name) %]</a>
+      [% UNLESS loop.last %] | [% END %][% END %]</td>
+    </tr>
+    [% END %]
+    <tr><td colspan="2"><hr size="3" noshade></td></tr>
+   </table>
+   <input name="callback" type="hidden" value="admin.pl?action=list_users">
+   <input type="hidden" name="action" value="dispatcher">
+   <input type="submit" class="submit" name="action_save_user" value="[% 'Save' | $T8 %]">
+   [% IF edit %]
+    [% FOREACH row = GROUPS %]
+     <input type="hidden" name="new_user_group_ids[]" value="[% HTML.escape(row.id) %]">
+    [% END %]
+    <input type="hidden" name="new_user_login" id="new_user_login" value="">
+    <input type="hidden" name="action_save_user_as_new" id="action_save_user_as_new" value="">
+    <input type="button" class="submit" id="save_as_new_button" value="[% 'Save as new' | $T8 %]">
+    <input type="submit" class="submit" name="action_delete_user" value="[% 'Delete' | $T8 %]">
+    <input type="hidden" name="edit" value="1">
+   [% END %]
+  </form>
+  <script type="text/javascript">
+   <!--
+     $(document).ready(function() {
+       $("#save_as_new_button").click(function() {
+         var new_user_login = prompt('[% 'Please enter the login for the new user.' | $T8 %]', '');
+         if (!new_user_login || (new_user_login == ''))
+           return;
+         $("#action_save_user_as_new").attr('value', '1');
+         $("#new_user_login").attr('value', new_user_login);
+         $("#Form").submit();
+       });
+     });
+     -->
+  </script>
+ </body>
+ </html>
index 0000000,0595413..919f37b
mode 000000,100644..100644
--- /dev/null
@@@ -1,0 -1,315 +1,315 @@@
 -<p>[% saved_message %]</p>
 -
+ [%- USE T8 %]
+ [%- USE HTML %]
+ [%- USE LxERP %]
+ [%- SET follow_up_trans_info = invnumber _ ' (' _ customer_name _ ')' %]
+ <body>
+ <script type="text/javascript" src="js/common.js"></script>
+ <script type="text/javascript" src="js/delivery_customer_selection.js"></script>
+ <script type="text/javascript" src="js/vendor_selection.js"></script>
+ <script type="text/javascript" src="js/calculate_qty.js"></script>
+ <script type="text/javascript" src="js/follow_up.js"></script>
+ <script type="text/javascript" src="js/customer_or_vendor_selection.js"></script>
+ <form method="post" name="invoice" action="[% script %]">
+ [%- FOREACH key = HIDDENS %]
+ <input type="hidden" name="[% HTML.escape(key) %]" value="[% HTML.escape($key)  %]">
+ [%- END %]
+ <input type="hidden" name="follow_up_trans_id_1" value="[% id %]">
+ <input type="hidden" name="follow_up_trans_type_1" value="sales_invoice">
+ <input type="hidden" name="follow_up_trans_info_1" value="[% HTML.escape(follow_up_trans_info) %]">
+ <input type="hidden" name="follow_up_rowcount" value="1">
+ <input type="hidden" name="lizenzen" value="[% lizenzen %]">
+ <p><div class="listtop" width="100%">[% title %]</div></p>
++<p>[% saved_message %]</p>
++
+ <table width="100%">
+   <tr>
+     <td valign="top">
+       <table>
+         <tr>
+           <th align="right">[% 'Customer' | $T8 %]</th>
+           <td>
+             [%- INCLUDE 'generic/multibox.html'
+                  name          = 'customer',
+                  style         = 'width: 250px',
+                  DATA          = ALL_CUSTOMERS,
+                  id_sub        = 'vc_keys',
+                  label_key     = 'name',
+                  select        = vc_select,
+                  limit         = vclimit,
+                  allow_textbox = 1,
+                  onChange      = "document.getElementById('update_button').click();" -%]
+             <input type="button" value="[% 'Details (one letter abbreviation)' | $T8 %]" onclick="show_vc_details('[% HTML.escape(vc) %]')">
+           </td>
+           <input type="hidden" name="customer_klass" value="[% HTML.escape(customer_klass) %]">
+           <input type="hidden" name="customer_id" value="[% HTML.escape(customer_id) %]">
+           <input type="hidden" name="oldcustomer" value="[% HTML.escape(oldcustomer) %]">
+           <input type="hidden" name="selectcustomer" value="[% HTML.escape(selectcustomer) %]">
+         </tr>
+ [%- IF ALL_CONTACTS.size %]
+         <tr>
+           <th align="right">[% 'Contact Person' | $T8 %]</th>
+           <td>
+             [%- INCLUDE 'generic/multibox.html'
+                  name       = 'cp_id',
+                  style      = 'width: 250px',
+                  DATA       = ALL_CONTACTS,
+                  id_key     = 'cp_id',
+                  label_sub  = 'contact_labels',
+                  show_empty = 1 -%]
+           </td>
+         </tr>
+ [%- END %]
+ [%- IF ALL_SHIPTO.size %]
+         <tr>
+           <th align="right">[% 'Shipping Address' | $T8 %]</th>
+           <td>
+             [%- INCLUDE 'generic/multibox.html'
+                  name       = 'shipto_id',
+                  style      = 'width: 250px',
+                  DATA       = ALL_SHIPTO,
+                  id_key     = 'shipto_id',
+                  label_sub  = 'shipto_labels',
+                  show_empty = 1,
+                  onChange   = "document.getElementById('update_button').click();" -%]
+           </td>
+         </tr>
+ [%- END %]
+         <tr>
+           <td align="right">[% 'Credit Limit' | $T8 %]</td>
+           <td>
+             [% LxERP.format_amount(creditlimit, 0, '0') %]; [% 'Remaining' | $T8 %]
+             <span class="plus[% IF is_credit_remaining_negativ %]0[% ELSE %]1[% END %]">[% LxERP.format_amount(creditremaining,0 ,'0') %]</span>
+           </td>
+         </tr>
+ [%- IF max_dunning_level %]
+         <tr>
+           <th align="right">[% 'Max. Dunning Level' | $T8 %]:</th>
+           <td>
+             <b>[% max_dunning_level %]</b>; [% 'Dunning Amount' | $T8 %]: <b>[% LxERP.format_amount(dunning_amount,2) %]</b>
+           </td>
+         </tr>
+ [%- END %]
+ [%- IF business %]
+         <tr>
+           <th align="right">[% 'Customer type' | $T8 %]</th>
+           <td>[% business %]; [% 'Trade Discount' | $T8 %] [% LxERP.format_amount(tradediscount * 100) %] %</td>
+         </tr>
+ [%- END %]
+         <tr>
+           <th align="right" nowrap>[% 'Record in' | $T8 %]</th>
+           <td colspan="3"><select name="AR" style="width:250px;">[% selectAR %]</select></td>
+           <input type="hidden" name="selectAR" value="[% selectAR %]">
+         </tr>
+         <tr>
+           <th align="right">[% 'Steuersatz' | $T8 %]</th>
+           <td>
+             [%- INCLUDE 'generic/multibox.html'
+                  name       = 'taxzone_id'
+                  stype      = '250px'
+                  DATA       = ALL_TAXZONES
+                  id_key     = 'id'
+                  readonly   = (id ? 1 : 0)
+                  label_key  = 'description' -%]
+           </td>
+   [%- IF id %]
+           <input type='hidden' name='taxzone_id' value='[% taxzone_id %]'>
+   [%- END %]
+         </tr>
+ [%- IF all_departments %]
+         <tr>
+           <th align="right" nowrap>[% 'Department' | $T8 %]</th>
+           <td colspan="3">
+             [%- INCLUDE 'generic/multibox.html'
+                  name       = 'department_id',
+                  style      = 'width: 250px',
+                  DATA       = all_departments,
+                  id_key     = 'id',
+                  label_sub  = 'department_labels',
+                  show_empty = 1 -%]
+           </td>
+         </tr>
+ [%- END %]
+ [%- IF currencies %]
+         <tr>
+           <th align="right">[% 'Currency' | $T8 %]</th>
+           <td>[% currencies %]</td>
+         </tr>
+ [%- END %]
+         <input type="hidden" name="fxgain_accno" value="[% fxgain_accno %]">
+         <input type="hidden" name="fxloss_accno" value="[% fxloss_accno %]">
+ [%- IF show_exchangerate %]
+         <tr>
+           <th align="right">[% 'Exchangerate' | $T8 %]</th>
+           <td>
+            [%- IF forex %]
+             [% LxERP.format_amount(exchangerate, 2) %]
+            [%- ELSE %]
+             <input name="exchangerate" size="10" value="[% HTML.escape(LxERP.format_amount(exchangerate)) %]">
+            [%- END %]
+           </td>
+         </tr>
+ [%- END %]
+         <tr>
+           <th align="right" nowrap>[% 'Shipping Point' | $T8 %]</th>
+           <td colspan="3"><input size='35' name="shippingpoint" value="[% HTML.escape(shippingpoint) %]"></td>
+         </tr>
+         <tr>
+           <th align="right" nowrap>[% 'Ship via' | $T8 %]</th>
+           <td colspan="3"><input size='35' name="shipvia" value="[% HTML.escape(shipvia) %]"></td>
+         </tr>
+         <tr>
+           <th align="right">[% 'Transaction description' | $T8 %]</th>
+           <td colspan="3"><input size='35' name="transaction_description" value="[% HTML.escape(transaction_description) %]"></td>
+         </tr>
+       </table>
+     </td>
+     <td align="right" valign="top">
+       <table>
+         <tr>
+           <th align="right">[% 'Employee' | $T8 %]</th>
+           <td>
+             [%- INCLUDE 'generic/multibox.html'
+                  name       = 'employee_id',
+                  DATA       = ALL_EMPLOYEES,
+                  id_key     = 'id',
+                  label_sub  = 'sales_employee_labels' -%]
+           </td>
+         </tr>
+ [%- IF ALL_SALESMEN.size %]
+         <tr>
+           <th align="right">[% 'Salesman' | $T8 %]</th>
+           <td>
+             [%- INCLUDE 'generic/multibox.html'
+                  name       = 'salesman_id',
+                  default    = salesman_id ? salesman_id : employee_id,
+                  DATA       = ALL_SALESMEN,
+                  id_key     = 'id',
+                  label_sub  = 'sales_employee_labels' -%]
+           </td>
+         </tr>
+ [%- END %]
+ [%- IF is_type_credit_note %]
+         <tr>
+           <th align="right" nowrap>[% 'Credit Note Number' | $T8 %]</th>
+           <td colspan="3"><input size='11' name="invnumber" value="[% HTML.escape(invnumber) %]"></td>
+         </tr>
+         <tr>
+           <th align="right">[% 'Credit Note Date' | $T8 %]</th>
+           <td nowrap>
+             <input name="invdate" id="invdate" size="11" title="[% dateformat %]" value="[% invdate %]" onBlur="check_right_date_format(this)">
+             <input type="button" name="invdate_button" id="trigger1" value="[% 'button' | $T8 %]">
+           </td>
+         </tr>
+ [%- ELSE %]
+         <tr>
+           <th align="right" nowrap>[% 'Invoice Number' | $T8 %]</th>
+           <td colspan="3"><input size='11' name="invnumber" value="[% HTML.escape(invnumber) %]"></td>
+         </tr>
+         <tr>
+           <th align="right">[% 'Invoice Date' | $T8 %]</th>
+           <td nowrap>
+             <input name="invdate" id="invdate" size="11" title="[% dateformat %]" value="[% invdate %]" onBlur="check_right_date_format(this)">
+             <input type="button" name="invdate_button" id="trigger1" value="[% 'button' | $T8 %]">
+           </td>
+         </tr>
+         <tr>
+           <th align="right">[% 'Due Date' | $T8 %]</th>
+           <td width="13">
+             <input name="duedate" id="duedate" size="11" title="[% dateformat %]" value="[% duedate %]" onBlur="check_right_date_format(this)">
+             <input type="button" name="duedate_button" id="trigger2" value="[% 'button' | $T8 %]">
+           </td>
+         </tr>
+         <tr>
+         <th align="right" nowrap>[% 'Delivery Order Number' | $T8 %]</th>
+           <td colspan="3"><input size='11' name="donumber" value="[% HTML.escape(donumber) %]"></td>
+         </tr>
+         <tr>
+           <th align="right">[% 'Delivery Date' | $T8 %]</th>
+             <td width="13">
+               <input name="deliverydate" id="deliverydate" size="11" title="[% dateformat %]" value="[% deliverydate %]" onBlur="check_right_date_format(this)">
+               <input type="button" name="deliverydate_button" id="trigger3" value="[% 'button' | $T8 %]">
+             </td>
+         </tr>
+ [%- END %]
+         <tr>
+           <th align="right" nowrap>[% 'Order Number' | $T8 %]</th>
+           <td colspan="3"><input size='11' name="ordnumber" value="[% HTML.escape(ordnumber) %]"></td>
+         </tr>
+         <tr>
+           <th align="right" nowrap>[% 'Order Date' | $T8 %]</th>
+           <td><input name="orddate" id="orddate" size="11" title="[% dateformat %]" value="[% orddate %]" onBlur="check_right_date_format(this)">
+           <input type="button" name="b_orddate" id="trigger_orddate" value="?"></td>
+         </tr>
+         <tr>
+           <th align="right" nowrap>[% 'Quotation Number' | $T8 %]</th>
+           <td colspan="3"><input size='11' name="quonumber" value="[% HTML.escape(quonumber) %]"></td>
+         </tr>
+         <tr>
+           <th align="right" nowrap>[% 'Quotation Date' | $T8 %]</th>
+           <td><input name="quodate" id="quodate" size="11" title="[% dateformat %]" value="[% quodate %]" onBlur="check_right_date_format(this)">
+            <input type="button" name="b_quodate" id="trigger_quodate" value="?"></td>
+         </tr>
+         <tr>
+           <th align="right" nowrap>[% 'Customer Order Number' | $T8 %]</th>
+           <td colspan="3"><input size='11' name="cusordnumber" value="[% HTML.escape(cusordnumber) %]"></td>
+         </tr>
+         <tr>
+           <th align="right" nowrap>[% 'Project Number' | $T8 %]</th>
+           <td>
+             [%- INCLUDE 'generic/multibox.html'
+                  name       = 'globalproject_id',
+                  DATA       = ALL_PROJECTS,
+                  id_key     = 'id',
+                  label_key  = 'projectnumber',
+                  show_empty = 1,
+                  onChange   = "document.getElementById('update_button').click();" -%]
+           </td>
+         </tr>
+       </table>
+     </td>
+   </tr>
+ </table>
+     </td>
+   </tr>
+   <tr>
+     <td>
+     </td>
+   </tr>
+   <script type="text/javascript" src="js/show_form_details.js"></script>
+   <script type="text/javascript" src="js/show_vc_details.js"></script>
+   <script type="text/javascript" src="js/show_history.js"></script>
+   <script type="text/javascript">
+    <!--
+      Calendar.setup({ inputField : "invdate",      ifFormat :"[% myconfig_jsc_dateformat %]", align : "BL", button : "trigger1" });
+ [% IF !is_type_credit_note %]
+      Calendar.setup({ inputField : "duedate",      ifFormat :"[% myconfig_jsc_dateformat %]", align : "BL", button : "trigger2" });
+      Calendar.setup({ inputField : "deliverydate", ifFormat :"[% myconfig_jsc_dateformat %]", align : "BL", button : "trigger3" });
+ [% END %]
+      Calendar.setup({ inputField : "orddate", ifFormat :"[% myconfig_jsc_dateformat %]", align : "BL", button : "trigger_orddate" });
+      Calendar.setup({ inputField : "quodate", ifFormat :"[% myconfig_jsc_dateformat %]", align : "BL", button : "trigger_quodate" });
+      $('document').ready(function(){
+ [% IF resubmit && is_format_html %]
+        window.open('about:blank','Beleg');
+        document.invoice.target = 'Beleg';
+        document.invoice.submit();
+ [% ELSIF resubmit %]
+        document.invoice.submit();
+ [% ELSIF creditwarning != '' %]
+        alert('[% 'Credit Limit exceeded!!!' | $T8 %]');
+ [% ELSE %]
+        focus();
+ [% END %]
+        setupDateFormat('[% dateformat %]', '[% 'Falsches Datumsformat!' | $T8 %]');
+        setupPoints('[% numberformat %]', '[% 'wrongformat' | $T8 %]');
+      });
+    //-->
+   </script>
+   <input type="hidden" name="webdav" value="[% webdav %]">