my ($path, $number);
- $form->{WEBDAV} = {};
+ $form->{WEBDAV} = [];
if ($form->{type} eq "sales_quotation") {
($path, $number) = ("angebote", $form->{quonumber});
$base_path =~ s|/$||;
if (opendir $dir, $path) {
- foreach my $file (readdir $dir) {
+ foreach my $file (sort { lc $a cmp lc $b } readdir $dir) {
next if (($file eq '.') || ($file eq '..'));
my $fname = $file;
$fname =~ s|.*/||;
- my $physical_file = "$path/$file";
+ my $is_directory = -d "$path/$file";
$file = join('/', map { $form->escape($_) } grep { $_ } split m|/+|, "$path/$file");
- $file .= '/' if (-d $physical_file);
+ $file .= '/' if ($is_directory);
- $form->{WEBDAV}->{$fname} = ($ENV{"HTTPS"} ? "https://" : "http://") . $ENV{'SERVER_NAME'} . "/$base_path/$file";
+ push @{ $form->{WEBDAV} }, {
+ 'name' => $fname,
+ 'link' => ($ENV{"HTTPS"} ? "https://" : "http://") . $ENV{'SERVER_NAME'} . "/$base_path/$file",
+ 'type' => $is_directory ? $main::locale->text('Directory') : $main::locale->text('File'),
+ };
}
closedir $dir;
<td align=left width=30%><b>Dateiname</b></td>
<td align=left width=70%><b>Webdavlink</b></td>
|;
- foreach $file (keys %{ $form->{WEBDAV} }) {
+ foreach $file (@{ $form->{WEBDAV} }) {
$webdav_list .= qq|
<tr>
- <td align=left>$file</td>
- <td align=left><a href="$form->{WEBDAV}{$file}">$form->{WEBDAV}{$file}</a></td>
+ <td align="left">$file->{name}</td>
+ <td align="left"><a href="$file->{link}">$file->{type}</a></td>
</tr>
|;
}
<td align="left" width="30%"><b>Dateiname</b></td>
<td align="left" width="70%"><b>Webdavlink</b></td>
|;
- foreach $file (keys %{ $form->{WEBDAV} }) {
+ foreach $file (@{ $form->{WEBDAV} }) {
$webdav_list .= qq|
<tr>
- <td align="left">$file</td>
- <td align="left"><a href="$form->{WEBDAV}{$file}">$form->{WEBDAV}{$file}</a></td>
+ <td align="left">$file->{name}</td>
+ <td align="left"><a href="$file->{link}">$file->{type}</a></td>
</tr>
|;
}
<td align=left width=30%><b>Dateiname</b></td>
<td align=left width=70%><b>Webdavlink</b></td>
|;
- foreach $file (keys %{ $form->{WEBDAV} }) {
+ foreach $file (@{ $form->{WEBDAV} }) {
$webdav_list .= qq|
<tr>
- <td align=left>$file</td>
- <td align=left><a href="$form->{WEBDAV}{$file}">$form->{WEBDAV}{$file}</a></td>
+ <td align="left">$file->{name}</td>
+ <td align="left"><a href="$file->{link}">$file->{type}</a></td>
</tr>
|;
}
'Dataset upgrade' => 'Datenbankaktualisierung',
'Delete Dataset' => 'Datenbank löschen',
'Dependency loop detected:' => 'Schleife in den Abhängigkeiten entdeckt:',
+ 'Directory' => 'Verzeichnis',
'ELSE' => 'Zusatz',
'Edit User' => 'Benutzerdaten bearbeiten',
'Enter longdescription' => 'Langtext eingeben',
'Error in database control file \'%s\': %s' => 'Fehler in Datenbankupgradekontrolldatei \'%s\': %s',
+ 'File' => 'Datei',
'File locked!' => 'Datei gesperrt!',
'History' => 'Historie',
'Incorrect Password!' => 'Ungültiges Passwort!',
'Difference' => 'Differenz',
'Dimension unit' => 'Maßeinheit',
'Dimension units' => 'Maßeinheiten',
+ 'Directory' => 'Verzeichnis',
'Discount' => 'Rabatt',
'Display' => 'Anzeigen',
'Display file' => 'Datei anzeigen',
'Feb' => 'Feb',
'February' => 'Februar',
'Fee' => 'Gebühr',
+ 'File' => 'Datei',
'File locked!' => 'Datei gesperrt!',
'Files created by Lx-Office\'s "Backup Dataset" function are such files.' => 'Dateien, die von Lx-Office\' Funktion "Datenbank sichern" erstellt wurden, erfüllen diese Kriterien.',
'Folgekonto' => 'Folgekonto',
'Dependency loop detected:' => 'Schleife in den Abhängigkeiten entdeckt:',
'Description' => 'Beschreibung',
'Description missing!' => 'Beschreibung fehlt.',
+ 'Directory' => 'Verzeichnis',
'Discount' => 'Rabatt',
'Dropdown Limit' => 'Auswahllistenbegrenzung',
'E-mail' => 'eMail',
'Expenses EU with UStId' => 'Aufwand EU m. UStId',
'Expenses EU without UStId' => 'Erlöse EU o. UStId',
'Fax' => 'Fax',
+ 'File' => 'Datei',
'Foreign Exchange Gain' => 'Wechselkurserträge',
'Foreign Exchange Loss' => 'Wechselkursaufwendungen',
'Foreign Expenses' => 'Aufwand Ausland',
'DUNNING STARTED' => 'Mahnprozess gestartet',
'Dataset upgrade' => 'Datenbankaktualisierung',
'Dependency loop detected:' => 'Schleife in den Abhängigkeiten entdeckt:',
+ 'Directory' => 'Verzeichnis',
'ELSE' => 'Zusatz',
'Edit templates' => 'Vorlage bearbeiten',
'Edit the stylesheet' => 'Stilvorlage bearbeiten',
'Enter longdescription' => 'Langtext eingeben',
'Error in database control file \'%s\': %s' => 'Fehler in Datenbankupgradekontrolldatei \'%s\': %s',
+ 'File' => 'Datei',
'History' => 'Historie',
'Income Statement' => 'GuV',
'Invoice' => 'Rechnung',
'Department' => 'Abteilung',
'Dependency loop detected:' => 'Schleife in den Abhängigkeiten entdeckt:',
'Description' => 'Beschreibung',
+ 'Directory' => 'Verzeichnis',
'Draft saved.' => 'Entwurf gespeichert.',
'Due Date' => 'Fälligkeitsdatum',
'Due Date missing!' => 'Fälligkeitsdatum fehlt!',
'Falsches Datumsformat!' => 'Falsches Datumsformat!',
'Feb' => 'Feb',
'February' => 'Februar',
+ 'File' => 'Datei',
'From' => 'Von',
'History' => 'Historie',
'ID' => 'Buchungsnummer',
'Department' => 'Abteilung',
'Dependency loop detected:' => 'Schleife in den Abhängigkeiten entdeckt:',
'Description' => 'Beschreibung',
+ 'Directory' => 'Verzeichnis',
'Draft saved.' => 'Entwurf gespeichert.',
'Due Date' => 'Fälligkeitsdatum',
'Due Date missing!' => 'Fälligkeitsdatum fehlt!',
'Falsches Datumsformat!' => 'Falsches Datumsformat!',
'Feb' => 'Feb',
'February' => 'Februar',
+ 'File' => 'Datei',
'From' => 'Von',
'History' => 'Historie',
'ID' => 'Buchungsnummer',
'Dataset upgrade' => 'Datenbankaktualisierung',
'Dependency loop detected:' => 'Schleife in den Abhängigkeiten entdeckt:',
'Description' => 'Beschreibung',
+ 'Directory' => 'Verzeichnis',
'ELSE' => 'Zusatz',
'Enter longdescription' => 'Langtext eingeben',
'Error in database control file \'%s\': %s' => 'Fehler in Datenbankupgradekontrolldatei \'%s\': %s',
+ 'File' => 'Datei',
'History' => 'Historie',
'Invoice' => 'Rechnung',
'MAILED' => 'Gesendet',
'Dataset upgrade' => 'Datenbankaktualisierung',
'Date' => 'Datum',
'Dependency loop detected:' => 'Schleife in den Abhängigkeiten entdeckt:',
+ 'Directory' => 'Verzeichnis',
'ELSE' => 'Zusatz',
'Enter longdescription' => 'Langtext eingeben',
'Error in database control file \'%s\': %s' => 'Fehler in Datenbankupgradekontrolldatei \'%s\': %s',
'Falsches Datumsformat!' => 'Falsches Datumsformat!',
+ 'File' => 'Datei',
'From' => 'Von',
'History' => 'Historie',
'Invoice' => 'Rechnung',
'Department' => 'Abteilung',
'Dependency loop detected:' => 'Schleife in den Abhängigkeiten entdeckt:',
'Description' => 'Beschreibung',
+ 'Directory' => 'Verzeichnis',
'ELSE' => 'Zusatz',
'Error in database control file \'%s\': %s' => 'Fehler in Datenbankupgradekontrolldatei \'%s\': %s',
'Feb' => 'Feb',
'February' => 'Februar',
+ 'File' => 'Datei',
'From' => 'Von',
'Include in Report' => 'In Bericht aufnehmen',
'Invoice' => 'Rechnung',
'DUNNING STARTED' => 'Mahnprozess gestartet',
'Dataset upgrade' => 'Datenbankaktualisierung',
'Dependency loop detected:' => 'Schleife in den Abhängigkeiten entdeckt:',
+ 'Directory' => 'Verzeichnis',
'ELSE' => 'Zusatz',
'Enter longdescription' => 'Langtext eingeben',
'Error in database control file \'%s\': %s' => 'Fehler in Datenbankupgradekontrolldatei \'%s\': %s',
+ 'File' => 'Datei',
'History' => 'Historie',
'Invoice' => 'Rechnung',
'MAILED' => 'Gesendet',
'Dependency loop detected:' => 'Schleife in den Abhängigkeiten entdeckt:',
'Deposit' => 'Gutschrift',
'Description' => 'Beschreibung',
+ 'Directory' => 'Verzeichnis',
'Due' => 'Fällig',
'ELSE' => 'Zusatz',
'Enter longdescription' => 'Langtext eingeben',
'Exchangerate' => 'Wechselkurs',
'Exchangerate missing!' => 'Es fehlt der Wechselkurs!',
'Falsches Datumsformat!' => 'Falsches Datumsformat!',
+ 'File' => 'Datei',
'History' => 'Historie',
'Invoice' => 'Rechnung',
'Invoices' => 'Rechnungen',
'Department' => 'Abteilung',
'Dependency loop detected:' => 'Schleife in den Abhängigkeiten entdeckt:',
'Description' => 'Beschreibung',
+ 'Directory' => 'Verzeichnis',
'Discount' => 'Rabatt',
'E-mail' => 'eMail',
'ELSE' => 'Zusatz',
'Enter longdescription' => 'Langtext eingeben',
'Error in database control file \'%s\': %s' => 'Fehler in Datenbankupgradekontrolldatei \'%s\': %s',
'Fax' => 'Fax',
+ 'File' => 'Datei',
'From' => 'Von',
'Given Name' => 'Vorname',
'Greeting' => 'Anrede',
'Datum von' => 'Datum von',
'December' => 'Dezember',
'Dependency loop detected:' => 'Schleife in den Abhängigkeiten entdeckt:',
+ 'Directory' => 'Verzeichnis',
'ELSE' => 'Zusatz',
'Enter longdescription' => 'Langtext eingeben',
'Error in database control file \'%s\': %s' => 'Fehler in Datenbankupgradekontrolldatei \'%s\': %s',
'Export Buchungsdaten' => 'Export Buchungsdaten',
'Export Stammdaten' => 'Export Stammdaten',
'February' => 'Februar',
+ 'File' => 'Datei',
'History' => 'Historie',
'I' => 'I',
'II' => 'II',
'Department' => 'Abteilung',
'Dependency loop detected:' => 'Schleife in den Abhängigkeiten entdeckt:',
'Description' => 'Beschreibung',
+ 'Directory' => 'Verzeichnis',
'Discount' => 'Rabatt',
'Dunning Date' => 'Mahndatum',
'Dunning Description missing in row ' => 'Mahnstufenbeschreibung fehlt in Zeile ',
'Fax' => 'Fax',
'Feb' => 'Feb',
'February' => 'Februar',
+ 'File' => 'Datei',
'Group' => 'Warengruppe',
'History' => 'Historie',
'In-line' => 'im Text',
'Dataset upgrade' => 'Datenbankaktualisierung',
'Delete drafts' => 'Entwürfe löschen',
'Dependency loop detected:' => 'Schleife in den Abhängigkeiten entdeckt:',
+ 'Directory' => 'Verzeichnis',
'Draft saved.' => 'Entwurf gespeichert.',
'ELSE' => 'Zusatz',
'Enter longdescription' => 'Langtext eingeben',
'Error in database control file \'%s\': %s' => 'Fehler in Datenbankupgradekontrolldatei \'%s\': %s',
+ 'File' => 'Datei',
'History' => 'Historie',
'Invoice' => 'Rechnung',
'MAILED' => 'Gesendet',
'Dependency loop detected:' => 'Schleife in den Abhängigkeiten entdeckt:',
'Description' => 'Beschreibung',
'Description missing!' => 'Beschreibung fehlt.',
+ 'Directory' => 'Verzeichnis',
'ELSE' => 'Zusatz',
'Edit General Ledger Transaction' => 'Buchung im Hauptbuch bearbeiten',
'Empty transaction!' => 'Buchung ist leer!',
'Falsches Datumsformat!' => 'Falsches Datumsformat!',
'Feb' => 'Feb',
'February' => 'Februar',
+ 'File' => 'Datei',
'From' => 'Von',
'History' => 'Historie',
'ID' => 'Buchungsnummer',
'Department' => 'Abteilung',
'Dependency loop detected:' => 'Schleife in den Abhängigkeiten entdeckt:',
'Description must not be empty!' => 'Beschreibung darf nicht leer sein',
+ 'Directory' => 'Verzeichnis',
'Discount' => 'Rabatt',
'Drawing' => 'Zeichnung',
'E-mail' => 'eMail',
'Fax' => 'Fax',
'Feb' => 'Feb',
'February' => 'Februar',
+ 'File' => 'Datei',
'Formula' => 'Formel',
'From' => 'Von',
'Group' => 'Warengruppe',
$self->{texts} = {
'At least one Perl module that Lx-Office ERP requires for running is not installed on your system.' => 'Mindestes ein Perl-Modul, das Lx-Office ERP zur Ausführung benötigt, ist auf Ihrem System nicht installiert.',
+ 'Directory' => 'Verzeichnis',
+ 'File' => 'Datei',
'Here\'s an example command line:' => 'Hier ist eine Kommandozeile, die als Beispiel dient:',
'Module home page' => 'Modul-Webseite',
'Module name' => 'Modulname',
'Delivery Date' => 'Lieferdatum',
'Department' => 'Abteilung',
'Dependency loop detected:' => 'Schleife in den Abhängigkeiten entdeckt:',
+ 'Directory' => 'Verzeichnis',
'Discount' => 'Rabatt',
'E-mail' => 'eMail',
'E-mail address missing!' => 'E-Mail-Adresse fehlt!',
'Fax' => 'Fax',
'Feb' => 'Feb',
'February' => 'Februar',
+ 'File' => 'Datei',
'Group' => 'Warengruppe',
'History' => 'Historie',
'In-line' => 'im Text',
'Department' => 'Abteilung',
'Dependency loop detected:' => 'Schleife in den Abhängigkeiten entdeckt:',
'Description' => 'Beschreibung',
+ 'Directory' => 'Verzeichnis',
'Discount' => 'Rabatt',
'Draft saved.' => 'Entwurf gespeichert.',
'Due Date' => 'Fälligkeitsdatum',
'Fax' => 'Fax',
'Feb' => 'Feb',
'February' => 'Februar',
+ 'File' => 'Datei',
'Group' => 'Warengruppe',
'History' => 'Historie',
'In-line' => 'im Text',
'Department' => 'Abteilung',
'Dependency loop detected:' => 'Schleife in den Abhängigkeiten entdeckt:',
'Description' => 'Beschreibung',
+ 'Directory' => 'Verzeichnis',
'Discount' => 'Rabatt',
'Draft saved.' => 'Entwurf gespeichert.',
'Due Date' => 'Fälligkeitsdatum',
'Fax' => 'Fax',
'Feb' => 'Feb',
'February' => 'Februar',
+ 'File' => 'Datei',
'Group' => 'Warengruppe',
'History' => 'Historie',
'In-line' => 'im Text',
'Dataset upgrade' => 'Datenbankaktualisierung',
'Dependency loop detected:' => 'Schleife in den Abhängigkeiten entdeckt:',
'Description' => 'Beschreibung',
+ 'Directory' => 'Verzeichnis',
'ELSE' => 'Zusatz',
'Enter longdescription' => 'Langtext eingeben',
'Error in database control file \'%s\': %s' => 'Fehler in Datenbankupgradekontrolldatei \'%s\': %s',
'Expired licenses' => 'Abgelaufene Lizenzen',
'Expiring in x month(s)' => 'Die in x Monat(en) ablaufen',
+ 'File' => 'Datei',
'History' => 'Historie',
'Include in Report' => 'In Bericht aufnehmen',
'Invoice' => 'Rechnung',
'Dataset' => 'Datenbank',
'Dataset upgrade' => 'Datenbankaktualisierung',
'Dependency loop detected:' => 'Schleife in den Abhängigkeiten entdeckt:',
+ 'Directory' => 'Verzeichnis',
'ELSE' => 'Zusatz',
'Enter longdescription' => 'Langtext eingeben',
'Error in database control file \'%s\': %s' => 'Fehler in Datenbankupgradekontrolldatei \'%s\': %s',
+ 'File' => 'Datei',
'History' => 'Historie',
'Incorrect username or password!' => 'Ungültiger Benutzername oder falsches Passwort!',
'Invoice' => 'Rechnung',
'Department' => 'Abteilung',
'Dependency loop detected:' => 'Schleife in den Abhängigkeiten entdeckt:',
'Description' => 'Beschreibung',
+ 'Directory' => 'Verzeichnis',
'Discount' => 'Rabatt',
'Dunning Amount' => 'gemahnter Betrag',
'E-mail' => 'eMail',
'Fax' => 'Fax',
'Feb' => 'Feb',
'February' => 'Februar',
+ 'File' => 'Datei',
'From' => 'Von',
'Group' => 'Warengruppe',
'History' => 'Historie',
'Delete' => 'Löschen',
'Dependency loop detected:' => 'Schleife in den Abhängigkeiten entdeckt:',
'Description' => 'Beschreibung',
+ 'Directory' => 'Verzeichnis',
'ELSE' => 'Zusatz',
'Edit Group' => 'Warengruppe editieren',
'Edit Pricegroup' => 'Preisgruppe bearbeiten',
'Edit Project' => 'Projekt bearbeiten',
'Enter longdescription' => 'Langtext eingeben',
'Error in database control file \'%s\': %s' => 'Fehler in Datenbankupgradekontrolldatei \'%s\': %s',
+ 'File' => 'Datei',
'Group' => 'Warengruppe',
'Group deleted!' => 'Warengruppe gelöscht!',
'Group missing!' => 'Warengruppe fehlt!',
'Deposit' => 'Gutschrift',
'Description' => 'Beschreibung',
'Difference' => 'Differenz',
+ 'Directory' => 'Verzeichnis',
'Done' => 'Fertig',
'ELSE' => 'Zusatz',
'Enter longdescription' => 'Langtext eingeben',
'Error in database control file \'%s\': %s' => 'Fehler in Datenbankupgradekontrolldatei \'%s\': %s',
'Exchangerate Difference' => 'Wechselkursunterschied',
'Falsches Datumsformat!' => 'Falsches Datumsformat!',
+ 'File' => 'Datei',
'From' => 'Von',
'History' => 'Historie',
'Increase' => 'Erhöhen',
'DUNNING STARTED' => 'Mahnprozess gestartet',
'Dataset upgrade' => 'Datenbankaktualisierung',
'Dependency loop detected:' => 'Schleife in den Abhängigkeiten entdeckt:',
+ 'Directory' => 'Verzeichnis',
'ELSE' => 'Zusatz',
'Error in database control file \'%s\': %s' => 'Fehler in Datenbankupgradekontrolldatei \'%s\': %s',
+ 'File' => 'Datei',
'Invoice' => 'Rechnung',
'MAILED' => 'Gesendet',
'Missing \'description\' field.' => 'Fehlendes Feld \'description\'.',
'Department' => 'Abteilung',
'Dependency loop detected:' => 'Schleife in den Abhängigkeiten entdeckt:',
'Description' => 'Beschreibung',
+ 'Directory' => 'Verzeichnis',
'Due' => 'Fällig',
'E-mail' => 'eMail',
'E-mail Statement to' => 'Fälligkeitsabrechnung als eMail an',
'Falsches Datumsformat!' => 'Falsches Datumsformat!',
'Feb' => 'Feb',
'February' => 'Februar',
+ 'File' => 'Datei',
'Free report period' => 'Freier Zeitraum',
'From' => 'Von',
'HTML' => 'HTML',
'December' => 'Dezember',
'Dependency loop detected:' => 'Schleife in den Abhängigkeiten entdeckt:',
'Description' => 'Beschreibung',
+ 'Directory' => 'Verzeichnis',
'ELSE' => 'Zusatz',
'ELSTER Export (Taxbird)' => 'ELSTER-Export nach Taxbird',
'ELSTER Export (Winston)' => 'ELSTER Export nach Winston',
'Error in database control file \'%s\': %s' => 'Fehler in Datenbankupgradekontrolldatei \'%s\': %s',
'Feb' => 'Feb',
'February' => 'Februar',
+ 'File' => 'Datei',
'History' => 'Historie',
'Invoice' => 'Rechnung',
'Jan' => 'Jan',