Lokalisierung für Fehlermeldungen und Doku ergänzt
get_article, um Rückgabewert erweitert, falls kein Produkt gefunden wurde
Toten Code entfernt
Shopware6 Connector. Initiale Version
TODOS s.a. POD
Shop: Not Yet Implemented Errors falls eine Shopware6 Config gespeichert wird
Shop:update_part um POD und Beispiel Code erweitert
Webshop speichern: Zumindestens etwas mehr Eingabevalidierung, vor DB-Fehlern
ShopPart::get_images um Parameter binary anstatt base64 erweitert
Shop: Erweiterung für Dateityp im Dateinamen auf letzten . begrenzen
Hilft zwar nicht bei .tar.gz, aber erstmal besser als vorher
Shop: shop_trans_id darf auch alphanumerisch sein (e030amdf)
Shop: Base Class get_one_order etwas ausführlicher dokumentiert
Shop: Bestellungen abholen, korrekten Variablennamen für Fehlermeldung
ShopConnector::Base POD Doku was die Schnittstelle erwartet
typo in POD
Shopware6: ALL toten Kode entfernt
shop_connector_class_by_connector wird nirgends aufgerufendie info ist redundant mit shop_connector_class_by_name
Shopware6: Neue Shopschnittstelle hinzugefügt
Einrückungen entsprechend gesetzt
Merge pull request #34 from kivitendo/warengruppen_pflichtfeld
Mandantenkonfiguration - Warengruppe als Pflichtfeld
Merge pull request #33 from kivitendo/f-send-emails-as-html
F send emails as html
Kann nun konfiguriert werden.
MassRecordCreationAndPrinting - MassInvoiceCreatePrint: Auftrag schliessen
MassRecordCreationAndPrinting: Shopstatus setzen
OrderController: Wiederkehrende Rechnungen: vorbelegte E-Mail-Texte setzen falls leer
Vorher wurde nur geprüft, ob die Konfiguration schon gesetzt wurde. Sollte ein Kunde im Nachhinein auf E-Mail-Versand umstelle ist das Verhalten jetzt komfortabler
E-Mails als HTML verschicken: Mail-Body wiederkehrende RGs: Variablenersetzung
Vorbelegte E-Mail-Texte für wiederkehrende Rechnungen genau wie in oe.pl
Rechnungssuche: Filter für Ship via und Shipping Point
Inventory-Import keine Spalte target_qty
Kosmetik Inventory Import
CSV Lagerbewegungs-Import: Numberformat für Fließkommazahlen (qty)
Swiss QR-Bill: QR-Code in Printablauf nur für Formname "Rechnung" erzeugen
Swiss QR-Bill: QrBill.pm: Skalierung Schweizerkreuz angepasst
Swiss QR-Bill: QrBill.pm: Ändere Parameter für Imager::QRCode Instanziierung
Swiss QR-Bill: Variante IBAN ohne Referenz in Druckablauf und Mandantenkonfiguration hinzugefügt
Swiss QR-Bill: QrBill.pm: Füge Variante IBAN ohne Referenz hinzu
Swiss QR-Bill: Datenbankupgrade Mandantenkonfiguration: Varianten einstellbar machen
E-Mails als HTML verschicken: Versand wiederkehrender Rechnungen
E-Mails als HTML verschicken: Versand in Einkaufs-/Verkaufsbelegen
E-Mails als HTML verschicken: Bearbeiten Benutzer-Signatur (Admin-Bereich)
E-Mails als HTML verschicken: Bearbeiten Firmensignatur
SL::HTML::Util: Helferfunktion zur Wandlung von Text nach HTML
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 LaTeXdann stolpert.
Bisher gab es zwei Implementationen dieses Codes:...
Order-Controller: abweichende Rechnungsadresse nur bei Kunden behandeln
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...
Swiss QR-Bill: Datenbankupgrade Mandantenkonfiguration
Swiss QR-Bill: QrBill.pm Modul
Rebase von 38 Commits.
Swiss QR-Bill: Controller für BankAccount Datenfelder
Swiss QR-Bill: Datenbankupgrade BankAccount
- Felder bank_account_id und use_for_qrbill hinzugefügt
Presenter: eine Instanz der doppelten Funktion restricted_html entfernt
SL::File: auch bei get_all_count Durckvariante berücksichtigen
Auftrags-Controller: DMS: Druck-Variante berücksichtigen
Files: Druckvariante beim Drucken speichern und bei E-Mail darauf prüfen, …
… um festzustellen, welcher letzte Belegausdruck für die Variante relrevantist.
Files: Druckvariante abspeichern können: sql und rose
DMS: Webdav-Backend: Dateizeit mit lokaler Zeitzone holen
DMS: Webdav-Backend: unbenutztes Modul SL::Webdav nicht einbinden.
Auch, wenn es schön wäre, wann das hier benutzt würde ;)
DMS: Webdav-Backend: Root-Pfad nicht erraten, sondern holen
copy_file_to_webdav_folder: Übergebenen Anhang-Name berücksichtigen
Kosmetik: Einrückung
Auftrags-Controller: Email/DMS falls kein Dokument vorhanden, eines erstellen, …
… wenn die Policy sagt, dass der letzte Ausdruck mitgeschickt werden soll
Revert "get_webdav: Zeitstempel vor dem letzten . setzen"
This reverts commit 1a5f8c48c797b02bf12daaa7fda04b8d5347a6b3.
Merge branch 'f-cvar-htmlfield'
Lohnbuchhaltungsimport: Leere Werte für Abteilungen abfangen
Order-Controller: Unterstützung für Drucken & E-Mailen von HTML-Vorlagen
Form: get_history sql escaping
SL::DB::Employee::auth_user: holt korrespondierendes Objekt aus auth.users
Convenience-Funktion, um einfacher an Config-Werteheranzukommen. Beispiel:
foreach my $employee (@{ SL::DB::Manager::Employee->get_all }) { my $email = $employee->auth_user->get_config_value('email');...
invoice_type: Gutschriften bleiben Gutschriften auch wenn die storniert wurden
Andernfalls liefert invoice_type den Typ 'Rechnung' was definitiv falsch ist.
Auftrags-Controller: kivi.Validator.js vor kivi.Order.js einbinden, …
damit die Datumseingabe angepasst wird, bevor es bei onchange zum Servergeschickt wird.
Warenstammdaten: EAN: Leerzeichen trimmen
get_webdav: Zeitstempel vor dem letzten . setzen
und nicht aus der Nummer und anderen Infos zusammenbauen
F:B:Webdav $path enthält Pfad + Datei, entsprechend vereinheitlicht
_convert_pdf_to_png: Mehr Warnungen - quotemeta für Dateinamen mit whitespace
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
Auswahl Druckvorlagen: mobile_webpages und pdf nicht anbieten
RecordLinks: Typo in Modulname SL::DB
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-Tagzu setzen, z.B. die Klasse oder einen Inline-Style. Beispiel:
[% L.checkbox_tag('awesome', value=1, label='This is awesome', label_class="red") %]
Benutzerdef. Var. als HTML-Feld: Breite & Höhe in Pixeln angeben
E-Mail-Versand: CC: nur kivi-Benutzer mit hinterlegter E-Mail-Adresse anzeigen
E-Mail-Versand: CC: kivi-Benutzer sortieren
Kosmetik
CSV-Import von zusätzlichen Rechnungsadressen
Benutzerdef. Var. als HTML-Feld: Druckunterstützung
Kosmetik: Einrückung/Anordnung
Benutzerdef. Var. als HTML-Feld: Projekte
Benutzerdef. Var. als HTML-Feld: Pflichtenhefte
Benutzerdef. Var. als HTML-Feld: Kunden-/Lieferantenstammdaten-Controller
Betrifft Typen für Kunden-/Lieferantenstammdaten, Ansprechpersonen undLieferadressen.
Benutzerdef. Var. als HTML-Feld: CSV-Import
Benutzerdef. Var. als HTML-Feld: allgemeine Infrastruktur
SL::HTML::Strip: immer Leerzeichen zwischen Textenteilen lassen
L/Presenter: Funktion zum Entfernen aller HTML-Tags
L/Presenter: Funktion zum Säubern von HTML von unerwünschten Tags
Order-Controller: PDF-Handling-Funktionen in Objektmethoden umgewandelt
Erlaubt die einfachere Wiederverwendung, wenn man z.B. mit Mixins fürKundenanpassungen arbeiten möchte.
Zusätzliche Rechnungsadressen: beim Ausdruck als Variablen verfügbar machen
Zusätzliche Rechnungsadressen: in Verkaufsbelegmasken auswählbar
Zusätzliche Rechnungsadressen: in Kundenstammdaten bearbeiten
Zusätzliche Rechnungsadressen: Datenbankupgrade, MetaSetup, Rose-Models
Ein-/Verkauf: Belegnummern von uns erzeugter Belege nicht ändern können
Für Belege, die auf unserer Seite erzeugt werden, kann nun verhindertwerden, dass die Belegnummer manuell angepasst bzw. gesetztwird. Statt dessen wird sie immer vom System beim ersten Speichern...
Drucken: Variablen in Positionen interpolieren
Alle Variablen, die in Schleifen ausgegebenwerden (z.B. Artikelbeschreibung, Langtext, aber auch die Steuern)werden nun ebenfalls der Interpolation unterzogen, sodassz.B. in wiederkehrenden Rechnungen <%current_quarter%> in...
Auftrag: Projekt automatisch in verknüpftem Pflichtenheft eintragen
Pflichtenhefte: bei Pflichtenheft → Angebot → Auftrag auch PH mit Auftrag verknüpfen
SEPA: aktuell von Kreditinstituten unterstützte Formatversionen nutzen
Lieferplan: Geschwindigkeitssteigerung durch »NOT EXISTS« anstelle von »NOT IN«
Auftragzentrische verknüpfte Belege: Leere Ergebnismengen berücksichtigen
Falls keine Aufträge gefunden werden, auch keinen Aufruf