Moritz Bunkus [Wed, 12 Jan 2022 11:22:51 +0000 (12:22 +0100)]
E-Mails als HTML verschicken: Versand in Einkaufs-/Verkaufsbelegen
Moritz Bunkus [Wed, 12 Jan 2022 10:58:46 +0000 (11:58 +0100)]
E-Mails als HTML verschicken: im E-Mail-Journal als HTML anzeigen
Moritz Bunkus [Wed, 12 Jan 2022 10:50:49 +0000 (11:50 +0100)]
E-Mails als HTML verschicken: Bearbeiten wiederkehrende Rechnungen
Moritz Bunkus [Wed, 12 Jan 2022 10:41:20 +0000 (11:41 +0100)]
E-Mails als HTML verschicken: Bearbeiten Benutzer-Signatur (Admin-Bereich)
Moritz Bunkus [Wed, 12 Jan 2022 10:38:24 +0000 (11:38 +0100)]
E-Mails als HTML verschicken: Bearbeiten Benutzer-Signatur
Moritz Bunkus [Wed, 12 Jan 2022 10:25:42 +0000 (11:25 +0100)]
E-Mails als HTML verschicken: Bearbeiten Firmensignatur
Moritz Bunkus [Wed, 12 Jan 2022 10:22:33 +0000 (11:22 +0100)]
E-Mails als HTML verschicken: Bearbeiten vordefinierter E-Mail-Texte
Moritz Bunkus [Wed, 12 Jan 2022 10:21:56 +0000 (11:21 +0100)]
E-Mails als HTML verschicken: Konvertierung relevanter Datenbankfelder
Moritz Bunkus [Wed, 12 Jan 2022 10:21:30 +0000 (11:21 +0100)]
SL::HTML::Util: Helferfunktion zur Wandlung von Text nach HTML
Moritz Bunkus [Tue, 11 Jan 2022 14:09:45 +0000 (15:09 +0100)]
KiviLatex-Plugin: HTML-zu-LaTeX-Wandlung aus SL::Template::LaTeX verwenden
Die Umwandlung von HTML zu LaTeX ist komplex. Es gibt viele Randfälle,
in denen ein falsch platziertes \newline übrig bleibt, über das LaTeX
dann stolpert.
Bisher gab es zwei Implementationen dieses Codes:
1. Im Modul für alte Vorlagen, SL::Template::LaTeX::_format_html
2. Im Modul für neue Vorlagen (inklusive Pflichtenheft),
SL::Template::Plugin::KiviLatex::filter_html
Erstere war deutlich besser getestet und hat deutlich mehr Randfälle
abgedeckt.
Mit dieser Änderung gibt es nur noch eine Implementation in
SL::Template::LaTeX. Diese wird auch von
SL::Template::Plugin::KiviLatex direkt aufgerufen.
Moritz Bunkus [Mon, 10 Jan 2022 16:05:12 +0000 (17:05 +0100)]
Order-Controller: abweichende Rechnungsadresse nur bei Kunden behandeln
Moritz Bunkus [Mon, 10 Jan 2022 16:00:19 +0000 (17:00 +0100)]
Lieferantenstammdaten: Tab »Abweichende Rechnungsadressen« nicht anzeigen
Cem Aydin [Thu, 23 Dec 2021 22:32:24 +0000 (23:32 +0100)]
Dokumentation: Schweizer QR-Rechnung hinzugefügt
- Abschnitt "Schweizer QR-Rechnung mit OpenDocument Vorlagen"
hinzugefügt
- Perl Abhängigkeiten ergänzt: libimager-perl, libimager-qrcode-perl,
- Imager, Imager::QRCode eingetragen
- DocBook Tip Bild für HTML Ausgabe hinzugefügt
- HTML und PDF neu erzeugt
Cem Aydin [Thu, 23 Dec 2021 21:51:36 +0000 (22:51 +0100)]
Swiss QR-Bill: In Druckablauf OpenDocument/OASIS integrieren
- Feature in Mandantenkonfiguration einschaltbar
- Aufruf zum Erzeugen von QR-Code PNG (Steven Schubiger)
- Vorlage hinzugefügt (rev-odt/invoice_qr.odt)
- PNG Bild CH-Kreuz hinzugefügt
- Übersetzungen hinzugefügt, locales Script ausgeführt de/en
- changelog Eintrag
Cem Aydin [Wed, 15 Dec 2021 15:53:08 +0000 (16:53 +0100)]
Swiss QR-Bill: Datenbankupgrade Mandantenkonfiguration
Steven Schubiger [Thu, 28 Jan 2021 13:35:09 +0000 (14:35 +0100)]
Swiss QR-Bill: QrBill.pm Modul
Rebase von 38 Commits.
Cem Aydin [Wed, 15 Dec 2021 15:52:16 +0000 (16:52 +0100)]
Swiss QR-Bill: Controller für BankAccount Datenfelder
Cem Aydin [Wed, 15 Dec 2021 15:38:28 +0000 (16:38 +0100)]
Swiss QR-Bill: Datenbankupgrade BankAccount
- Felder bank_account_id und use_for_qrbill hinzugefügt
Moritz Bunkus [Mon, 20 Dec 2021 12:54:06 +0000 (13:54 +0100)]
Presenter: eine Instanz der doppelten Funktion restricted_html entfernt
Bernd Bleßmann [Mon, 20 Dec 2021 09:52:49 +0000 (10:52 +0100)]
SL::File: auch bei get_all_count Durckvariante berücksichtigen
Bernd Bleßmann [Mon, 6 Dec 2021 11:31:11 +0000 (12:31 +0100)]
Auftrags-Controller: DMS: Druck-Variante berücksichtigen
Bernd Bleßmann [Mon, 6 Dec 2021 11:55:06 +0000 (12:55 +0100)]
E-Mail-Dialog: Druck-Optionen auch für Policy "letzten Ausdruck mitschicken", …
… da diese Option nun auch den ersten Ausdruck erzeugen kann, falls noch keiner
vorhanden ist.
Bernd Bleßmann [Mon, 6 Dec 2021 11:28:33 +0000 (12:28 +0100)]
Files: Druckvariante beim Drucken speichern und bei E-Mail darauf prüfen, …
… um festzustellen, welcher letzte Belegausdruck für die Variante relrevant
ist.
Bernd Bleßmann [Fri, 3 Dec 2021 16:34:55 +0000 (17:34 +0100)]
Files: Druckvariante abspeichern können: sql und rose
Bernd Bleßmann [Mon, 6 Dec 2021 10:25:22 +0000 (11:25 +0100)]
DMS: Webdav-Backend: Dateizeit mit lokaler Zeitzone holen
Bernd Bleßmann [Fri, 17 Dec 2021 15:20:42 +0000 (16:20 +0100)]
DMS: Webdav-Backend: unbenutztes Modul SL::Webdav nicht einbinden.
Auch, wenn es schön wäre, wann das hier benutzt würde ;)
Bernd Bleßmann [Fri, 3 Dec 2021 16:14:28 +0000 (17:14 +0100)]
DMS: Webdav-Backend: Root-Pfad nicht erraten, sondern holen
Bernd Bleßmann [Fri, 3 Dec 2021 13:29:42 +0000 (14:29 +0100)]
copy_file_to_webdav_folder: Übergebenen Anhang-Name berücksichtigen
Bernd Bleßmann [Fri, 17 Dec 2021 15:15:21 +0000 (16:15 +0100)]
Kosmetik: Einrückung
Bernd Bleßmann [Wed, 1 Dec 2021 12:42:49 +0000 (13:42 +0100)]
Auftrags-Controller: Email/DMS falls kein Dokument vorhanden, eines erstellen, …
… wenn die Policy sagt, dass der letzte Ausdruck mitgeschickt werden soll
Bernd Bleßmann [Mon, 6 Dec 2021 14:00:23 +0000 (15:00 +0100)]
Übersetzung zu: 1 Version erstellen anstatt leere E-Mail verschicken, exakter beschrieben
Jan Büren [Mon, 29 Nov 2021 07:42:24 +0000 (08:42 +0100)]
1 Version erstellen anstatt leere E-Mail verschicken, exakter beschrieben
Bernd Bleßmann [Mon, 6 Dec 2021 13:55:21 +0000 (14:55 +0100)]
DMS attachment_policy, falls kein Dokument vorhanden, erste Version erstellen
angepasster commit von Jan
Jan Büren [Fri, 19 Nov 2021 12:06:05 +0000 (13:06 +0100)]
Standardmäßig nur die alte Version des Belegs zum E-Mail-Versand erlauben
Jan Büren [Mon, 20 Dec 2021 09:41:49 +0000 (10:41 +0100)]
PayPostingImport: Testfall zu
d32410ac096b angepasst
Bernd Bleßmann [Fri, 17 Dec 2021 15:37:29 +0000 (16:37 +0100)]
locales-Lauf en
Jan Büren [Mon, 20 Dec 2021 08:18:17 +0000 (09:18 +0100)]
Revert "get_webdav: Zeitstempel vor dem letzten . setzen"
This reverts commit
1a5f8c48c797b02bf12daaa7fda04b8d5347a6b3.
Moritz Bunkus [Fri, 17 Dec 2021 14:13:09 +0000 (15:13 +0100)]
Merge branch 'f-cvar-htmlfield'
Jan Büren [Fri, 10 Dec 2021 13:49:46 +0000 (14:49 +0100)]
Lohnbuchhaltungsimport: Leere Werte für Abteilungen abfangen
Moritz Bunkus [Fri, 10 Dec 2021 09:52:10 +0000 (10:52 +0100)]
Order-Controller: Unterstützung für Drucken & E-Mailen von HTML-Vorlagen
Sven Schöling [Fri, 26 Nov 2021 08:50:37 +0000 (09:50 +0100)]
ca: escape script in form
Sven Schöling [Fri, 26 Nov 2021 09:08:53 +0000 (10:08 +0100)]
ct: db in template escapen
Sven Schöling [Fri, 26 Nov 2021 09:18:50 +0000 (10:18 +0100)]
datev templates escaping
Sven Schöling [Sun, 5 Dec 2021 18:16:52 +0000 (19:16 +0100)]
Form: get_history sql escaping
Moritz Bunkus [Mon, 29 Nov 2021 15:18:12 +0000 (16:18 +0100)]
locales: fehlende Übersetzung ergänzt
Moritz Bunkus [Mon, 29 Nov 2021 15:09:28 +0000 (16:09 +0100)]
Verkaufsrechnungen direkt als Factur-X/ZUGFeRD-XML exportieren können
Moritz Bunkus [Fri, 26 Nov 2021 16:37:40 +0000 (17:37 +0100)]
SL::DB::Employee::auth_user: holt korrespondierendes Objekt aus auth.users
Convenience-Funktion, um einfacher an Config-Werte
heranzukommen. Beispiel:
foreach my $employee (@{ SL::DB::Manager::Employee->get_all }) {
my $email = $employee->auth_user->get_config_value('email');
do_stuff_with($email);
}
Moritz Bunkus [Fri, 26 Nov 2021 10:48:39 +0000 (11:48 +0100)]
t/run.sh: mehrere Argumente als einzelne Tests ausführen
Moritz Bunkus [Fri, 26 Nov 2021 10:13:46 +0000 (11:13 +0100)]
Wiederkehrende Rechnungen bearbeiten: Buttons in Popup oben anzeigen
Ansonsten muss man immer scrollen, um sie zu sehen, und damit ist
nicht unbedingt offensichtlich, dass man auf »Übernehmen« klicken
muss, damit die Änderungen im Popup auch wirklich übernommen werden.
Jan Büren [Fri, 26 Nov 2021 10:09:57 +0000 (11:09 +0100)]
invoice_type: Gutschriften bleiben Gutschriften auch wenn die storniert wurden
Andernfalls liefert invoice_type den Typ 'Rechnung' was definitiv falsch ist.
Bernd Bleßmann [Thu, 25 Nov 2021 15:35:27 +0000 (16:35 +0100)]
Auftrags-Controller: Neuberechnung nur anfordern, wenn form valide ist.
Sonst führen z.B. falsche Datumsformate zu Fehlermeldungen bei der Berechnung.
Bernd Bleßmann [Thu, 25 Nov 2021 15:26:19 +0000 (16:26 +0100)]
Auftrags-Controller: kivi.Validator.js vor kivi.Order.js einbinden, …
damit die Datumseingabe angepasst wird, bevor es bei onchange zum Server
geschickt wird.
Werner Hahn [Thu, 25 Nov 2021 15:34:00 +0000 (16:34 +0100)]
Part: trimmed_whitespaces auch bei Artikelnr, drawing, microfiche, image
Bernd Bleßmann [Thu, 25 Nov 2021 15:10:57 +0000 (16:10 +0100)]
Warenstammdaten: EAN: Leerzeichen trimmen
Bernd Bleßmann [Thu, 25 Nov 2021 15:10:12 +0000 (16:10 +0100)]
js-Validator: Leerzeichen trimmen können
Jan Büren [Tue, 23 Nov 2021 11:20:36 +0000 (12:20 +0100)]
get_webdav: Zeitstempel vor dem letzten . setzen
und nicht aus der Nummer und anderen Infos zusammenbauen
Jan Büren [Tue, 23 Nov 2021 11:19:29 +0000 (12:19 +0100)]
F:B:Webdav $path enthält Pfad + Datei, entsprechend vereinheitlicht
Jan Büren [Tue, 23 Nov 2021 11:14:00 +0000 (12:14 +0100)]
_convert_pdf_to_png: Mehr Warnungen - quotemeta für Dateinamen mit whitespace
Jan Büren [Tue, 23 Nov 2021 10:01:46 +0000 (11:01 +0100)]
S:F:B:Webdav.pm Pfad auch ausgeben, damit man weiß, was fehlt
Ferner für boolean enabled Rückgabewert direkt von get_doc_webdav ausgeben
Marei Peischl [Mon, 22 Nov 2021 13:33:26 +0000 (13:33 +0000)]
Merge pull request #32 from kivitendo/marei-fix-faketable
marei: fix bug concerning misisng linebreaks in \FakeTable
Marei (peiTeX) [Mon, 22 Nov 2021 13:25:39 +0000 (14:25 +0100)]
marei: fix bug concerning misisng linebreaks in \FakeTable
Bernd Bleßmann [Mon, 22 Nov 2021 09:45:15 +0000 (10:45 +0100)]
Auswahl Druckvorlagen: mobile_webpages und pdf nicht anbieten
Jan Büren [Fri, 19 Nov 2021 12:02:11 +0000 (13:02 +0100)]
typo im Funktionsaufruf
Bernd Bleßmann [Mon, 15 Nov 2021 12:35:00 +0000 (13:35 +0100)]
RecordLinks: Typo in Modulname SL::DB
Bernd Bleßmann [Mon, 15 Nov 2021 09:21:03 +0000 (10:21 +0100)]
locales-Lauf en
Moritz Bunkus [Mon, 15 Nov 2021 09:09:19 +0000 (10:09 +0100)]
P.radio_button/checkbox_tag: label_xyz-Attribute als xzy an Label-Tag durchreichen
Damit ist es möglich, beliebige Attribute auf dem erzeugten Label-Tag
zu setzen, z.B. die Klasse oder einen Inline-Style. Beispiel:
[% L.checkbox_tag('awesome', value=1, label='This is awesome', label_class="red") %]
Moritz Bunkus [Fri, 12 Nov 2021 16:28:02 +0000 (17:28 +0100)]
Benutzerdef. Var. als HTML-Feld: Breite & Höhe in Pixeln angeben
Bernd Bleßmann [Fri, 12 Nov 2021 11:09:18 +0000 (12:09 +0100)]
E-Mail-Versand: CC: nur kivi-Benutzer mit hinterlegter E-Mail-Adresse anzeigen
Bernd Bleßmann [Fri, 12 Nov 2021 11:02:59 +0000 (12:02 +0100)]
E-Mail-Versand: CC: kivi-Benutzer sortieren
Bernd Bleßmann [Fri, 12 Nov 2021 10:59:20 +0000 (11:59 +0100)]
Kosmetik
Moritz Bunkus [Thu, 11 Nov 2021 15:37:24 +0000 (16:37 +0100)]
CSV-Import von zusätzlichen Rechnungsadressen
Moritz Bunkus [Fri, 29 Oct 2021 10:35:03 +0000 (12:35 +0200)]
CSV-Import: Button »Download Beispieldatei« immer anzeigen
Moritz Bunkus [Wed, 10 Nov 2021 14:53:41 +0000 (15:53 +0100)]
Benutzerdef. Var. als HTML-Feld: Druckunterstützung
Moritz Bunkus [Wed, 10 Nov 2021 14:23:51 +0000 (15:23 +0100)]
Kosmetik: Einrückung/Anordnung
Moritz Bunkus [Wed, 10 Nov 2021 13:46:03 +0000 (14:46 +0100)]
Benutzerdef. Var. als HTML-Feld: Projekte
Moritz Bunkus [Wed, 10 Nov 2021 13:42:55 +0000 (14:42 +0100)]
Benutzerdef. Var. als HTML-Feld: Pflichtenhefte
Moritz Bunkus [Wed, 10 Nov 2021 13:42:27 +0000 (14:42 +0100)]
Benutzerdef. Var. als HTML-Feld: Kunden-/Lieferantenstammdaten-Controller
Betrifft Typen für Kunden-/Lieferantenstammdaten, Ansprechpersonen und
Lieferadressen.
Moritz Bunkus [Wed, 10 Nov 2021 13:42:14 +0000 (14:42 +0100)]
Benutzerdef. Var. als HTML-Feld: CSV-Import
Moritz Bunkus [Wed, 10 Nov 2021 13:41:57 +0000 (14:41 +0100)]
Benutzerdef. Var. als HTML-Feld: allgemeine Infrastruktur
Moritz Bunkus [Wed, 10 Nov 2021 13:40:28 +0000 (14:40 +0100)]
Benutzerdef. Var. als HTML-Feld: Verwaltung
Moritz Bunkus [Wed, 10 Nov 2021 13:05:18 +0000 (14:05 +0100)]
SL::HTML::Strip: immer Leerzeichen zwischen Textenteilen lassen
Moritz Bunkus [Wed, 10 Nov 2021 12:58:48 +0000 (13:58 +0100)]
L/Presenter: Funktion zum Entfernen aller HTML-Tags
Moritz Bunkus [Wed, 10 Nov 2021 12:29:09 +0000 (13:29 +0100)]
L/Presenter: Funktion zum Säubern von HTML von unerwünschten Tags
Moritz Bunkus [Mon, 8 Nov 2021 16:08:16 +0000 (17:08 +0100)]
englische Locales
Moritz Bunkus [Thu, 28 Oct 2021 10:13:19 +0000 (12:13 +0200)]
Order-Controller: PDF-Handling-Funktionen in Objektmethoden umgewandelt
Erlaubt die einfachere Wiederverwendung, wenn man z.B. mit Mixins für
Kundenanpassungen arbeiten möchte.
Moritz Bunkus [Thu, 28 Oct 2021 08:40:21 +0000 (10:40 +0200)]
kivi.js: Helfsfunktion zum Formatieren eines JS-Calls als CURL-Aufruf
Nützlich, wenn man mehrfach von der Kommandozeile aus eine
Controller-Funktion aufrufen will, ohne jedes Mal zur Maus greifen zu
müssen. Aufruf grob so:
var data = $('#form').serializeArray();
data.push({ name: 'action', value: 'Order/frobnicate' });
console.log(kivi.call_as_curl({ data: data }));
Moritz Bunkus [Mon, 25 Oct 2021 15:13:04 +0000 (17:13 +0200)]
Dokumentation: HTML- & PDF-Versionen neu gebaut
Moritz Bunkus [Mon, 25 Oct 2021 15:12:34 +0000 (17:12 +0200)]
Dokumentation: mehrere Strukturfehler behoben
Moritz Bunkus [Mon, 25 Oct 2021 15:11:42 +0000 (17:11 +0200)]
Zusätzliche Rechnungsadressen: Dokumentation
Moritz Bunkus [Mon, 25 Oct 2021 14:53:39 +0000 (16:53 +0200)]
Zusätzliche Rechnungsadressen: beim Ausdruck als Variablen verfügbar machen
Moritz Bunkus [Mon, 25 Oct 2021 13:48:23 +0000 (15:48 +0200)]
Zusätzliche Rechnungsadressen: in Verkaufsbelegmasken auswählbar
Moritz Bunkus [Mon, 25 Oct 2021 12:52:09 +0000 (14:52 +0200)]
Zusätzliche Rechnungsadressen: in Kundenstammdaten bearbeiten
Moritz Bunkus [Mon, 25 Oct 2021 12:51:33 +0000 (14:51 +0200)]
Zusätzliche Rechnungsadressen: Datenbankupgrade, MetaSetup, Rose-Models
Moritz Bunkus [Fri, 22 Oct 2021 15:40:00 +0000 (17:40 +0200)]
Ein-/Verkauf: Belegnummern von uns erzeugter Belege nicht ändern können
Für Belege, die auf unserer Seite erzeugt werden, kann nun verhindert
werden, dass die Belegnummer manuell angepasst bzw. gesetzt
wird. Statt dessen wird sie immer vom System beim ersten Speichern
vergeben und beim späteren Bearbeiten nur noch read-only angezeigt.
Betrifft alle Verkaufsbelege sowie Preisanfragen & Lieferantenaufträge
im Einkaufsbereich.
Moritz Bunkus [Thu, 14 Feb 2019 13:48:38 +0000 (14:48 +0100)]
Drucken: Variablen in Positionen interpolieren
Alle Variablen, die in Schleifen ausgegeben
werden (z.B. Artikelbeschreibung, Langtext, aber auch die Steuern)
werden nun ebenfalls der Interpolation unterzogen, sodass
z.B. in wiederkehrenden Rechnungen <%current_quarter%> in
Artikelbeschreibungen genutzt werden kann — aber auch Belegfelder.
Moritz Bunkus [Fri, 8 Jul 2016 13:42:29 +0000 (15:42 +0200)]
Auftrag: Projekt automatisch in verknüpftem Pflichtenheft eintragen
Moritz Bunkus [Fri, 22 Oct 2021 10:30:57 +0000 (12:30 +0200)]
Pflichtenhefte: bei Pflichtenheft → Angebot → Auftrag auch PH mit Auftrag verknüpfen
Moritz Bunkus [Tue, 9 Nov 2021 15:34:45 +0000 (16:34 +0100)]
SEPA: aktuell von Kreditinstituten unterstützte Formatversionen nutzen
Bernd Bleßmann [Fri, 22 Oct 2021 13:13:12 +0000 (15:13 +0200)]
Lieferplan: Geschwindigkeitssteigerung durch »NOT EXISTS« anstelle von »NOT IN«
Jan Büren [Fri, 22 Oct 2021 12:07:58 +0000 (14:07 +0200)]
Auftragzentrische verknüpfte Belege: Leere Ergebnismengen berücksichtigen
Falls keine Aufträge gefunden werden, auch keinen Aufruf