Moritz Bunkus [Fri, 10 Feb 2017 12:26:07 +0000 (13:26 +0100)]
Tests: Datenbank-Meldungen immer in English zurückgeben
Die Sprache, in der z.B. Fehlermeldungen von der Datenbank geliefert
werden, wird beim Erstellen des PostgreSQL-Clusters festgelegt. Dies ist
bei vielen Standardinstallationen Deutsch, da meinst nur
»--locale=de_DE.UTF-8« gesagt wird, und damit auch LC_MESSAGES gesetzt
wird.
Für Tests ist das ungünstig, weil sich diese darauf verlassen können
müssen, dass die Fehlermeldungen immer in einer bestimmten Sprache
sind. Unsere Tests vergleichen Fehlermeldungen mit den erwarteten
Mustern, und diese sind in Englisch.
Daher die Nachrichten-Locale Datenbankverbindungen von sowohl Auth- als
auch Hauptdatenbank am Anfang der Tests auf Englisch setzen.
Moritz Bunkus [Fri, 10 Feb 2017 12:13:52 +0000 (13:13 +0100)]
Template-Syntax-Test: eigenes Compile-Cache-Verzeichnis für Tests
CACHE_SIZE=0 sollte eigentlich dafür sorgen, dass das Template-Modul die
compilierten Templates nicht cachet. Das funktioniert aber wohl
nicht.
Daher ein eigenes Cache-Verzeichnis dafür definieren, um
Dateizugriffsprobleme wegen Berechtigungen zu vermeiden:
»users/templates-cache« wird normalerweise vom Webserveruser erzeugt und
beschrieben, die darin liegenden Dateien haben mode 0600. Tests werden
hingegen als normale User ausgeführt und haben damit nicht mal
Leserechte auf die Dateien in »users/templates-cache«.
G. Richardson [Fri, 20 Jan 2017 10:08:06 +0000 (11:08 +0100)]
console - login explizit in myconfig setzen, für Testdatenbank
Wenn man sich für die Testdatenbank einen Mandanten anlegt um sich an
der Oberfläche die generierten Testdaten anzuschauen, und die
Datenerstellung dort auch per console vorbereitet:
Moritz Bunkus [Mon, 6 Feb 2017 08:12:55 +0000 (09:12 +0100)]
Mailer: nur Adress-Anteil als Absender im SMTP-Dialog verwenden & nicht encodieren
Der SMTP-Dialog nutzt beim MAIL FROM nur den Adress-Anteil einer
E-Mail-Adresse:
MAIL FROM:<user@the.doma.in>
Daher sollte auch nur dieser Anteil übergeben werden, auch wenn in
$self->{from} potenziell eine komplette Adresse steht.
Da dieser Adress-Anteil ausschließlich aus ASCII-Zeichen besteht, muss
er dann auch nicht encodiert werden. Das macht die Strings im Log
leserlicher, und vermutlich sind MIME-Q-/-B-Encodings auch im
SMTP-Standard eigentlich nicht erlaubt (siehe RFC 5321).
Diese Änderung fügt einen Syntax-Fehler ein:
syntax error at /home/bernd/kivi/SL/Controller/DownloadZip.pm line 67, near ")) "
/home/bernd/kivi/SL/Controller/DownloadZip.pm had compilation errors.
Moritz Bunkus [Wed, 1 Feb 2017 11:51:32 +0000 (12:51 +0100)]
SimpleSystemSetting: Controller für die ganzen trivialen CRUD-Masken im System-Menü
Die Masken und Controller für sehr viele der Einstellungen im
System-Menü folgenden Schema F: es sind simple CRUD-Controller.
Sinnvoller wäre es, diesen ganzen Code in einem einzigen CRUD-Controller
zu vereinheitlichen und die Unterschiede nur anhand eines übergebenen
Typen-Parameters auszudrücken. Genau hierfür ist der
SimpleSystemSetting-Controller gedacht, und er macht mit Unterstützung
für Preisgruppen den Anfang. Andere Typen folgen.
G. Richardson [Wed, 1 Feb 2017 08:22:22 +0000 (09:22 +0100)]
SL::Dev::Part - create_assembly und create_assortment überarbeitet
create_assembly wie create_assortment erweitert, so daß man direkt beim
Erstellen die Erzeugnisbestandteile als Assembly-Objekte im param
assembly_items übergeben kann.
Refactoring, kein clonen wenn mehrere Bestandteile automatisch erstellt
werden.
Martin Helmling [Tue, 17 Jan 2017 15:34:40 +0000 (16:34 +0100)]
Link History zu EmailJournal
Einträge in History mit addition MAILED haben nun nicht die Rechnungsnummer sondern die ID des Emailjournals
in snumber stehen, also emailjournal_${journal_id}
Martin Helmling [Tue, 17 Jan 2017 14:36:51 +0000 (15:36 +0100)]
Eigenes Recht für E-Mail-Journal
-E-Mail Journal Icon hinzugefügt
-Recht für E-Mail Journal hinzugefügt, von "productivity" abgeleitet
-Recht für Zugriff auf mails von Mitarbeitern von "admin" abgeleitet
-Das Recht "email_journal" im EmailJournal - Controller eingebaut
Dateimanagement: PDF Buchungsjournal mit Anhängen der Buchungen
Optinal kann beim Erzeugen eines PDF alle an den einzelnen Buchungen
angehängte PDF-Belege/Dokumente angehängt werden.
In der HTML/CSV/PDF-Tabelle gibt es eine weitere Spalte über die Anzahl der Belege.
Somit kann gesehen werden wo noch Belege fehlen.
Die Spalte wird implizit dazugeschaltet wenn "Beleg" in der Liste miterscheinen soll.
Die zusätzlichen Methoden ist in einem Helper ausgelagert.
Martin Helmling [Tue, 19 Apr 2016 10:39:43 +0000 (12:39 +0200)]
Dateimanagement: Massendruck
Der Massendruck per BackgroundJob nutzt nun das FileManagement
Die erzeugten Dateien werden ggf. mit PDF Anhängen erweitert
und entsprechend abgespeichert.
Per Flag kann dem massendruck mitgeteilt werden,
dass eine leere Seite ggf hinzugefügt wird
(Template in templates/print/Standard/emptyPage.pdf o.ä.),
damit nächster Lieferschein auf neuem Blatt beginnt.
pdfinfo wird beim installationscheck gesucht,
leere Seite in Druckvorlagen
Vereinheitlichen der HTML -> PDF Konvertierung
Der HASH "variable_content_types" wird an unterschiedlichsten Stellen mit
unterschiedlichen oder unvollständiger Information befüllt.
Offene Rechnungen durch "amount ne paid" suchen, damit negativer amount auch berücksichtigt wird.
bei Gutschriften muss der Betrag negiert werden (noch wo?)