Moritz Bunkus [Wed, 6 Apr 2016 14:45:50 +0000 (16:45 +0200)]
SL::Controller->send_file: trueish zurückgeben
send_file meldet Fehler (z.B. »kann Datei nicht öffnen«) durch
croak(). Im Erfolgsfall sollte die Funktion aber regulär einen wahren
Wert zurückgeben, um ordentlich in eval{} benutzt werden zu können.
Moritz Bunkus [Fri, 17 Jul 2015 16:16:14 +0000 (18:16 +0200)]
SL::DB::Object: clone_and_reset unter Umgehung von itime, mtime
Moritz Bunkus [Wed, 6 Apr 2016 12:26:17 +0000 (14:26 +0200)]
CVar: Shipto-CVars beim Clonen mit clonen
Moritz Bunkus [Wed, 6 Apr 2016 12:16:17 +0000 (14:16 +0200)]
SL::DB::Invoice->new_from: individuelle Lieferadressen richtig behandeln
Individuelle Lieferadressen werden nur von shipto.trans_id zu ar.id
verlinkt, nicht aber in ar.shipto_id. Die Implementation ist analog zu
SL::DB::DeliveryOrder->new_from.
Moritz Bunkus [Wed, 6 Apr 2016 11:59:31 +0000 (13:59 +0200)]
DeliveryOrder->new_from: kein $custom_shipto-Objekt zurückgeben
Falls das Quellobjekt eine individuelle Lieferadresse besaß, wurden bei
new_from() zwei Objekte zurückgegeben: das neue Lieferscheinobjekt und
ein Clone der individuellen Lieferadresse. Diese waren nicht verknüpft.
Der Aufrufer musste daher zuerst das Lieferscheinobjekt speichern,
dessen ID beim gecloneten Lieferadressenobjekt hinterlegen und das
anschließend speichern.
Dies ist umständlich und fehlerträchtig. So hat z.B. der einzige
bisherige Nutzer dieses Interfaces,
SL::DB::Order->convert_to_delivery_order, das bereits falsch gemacht und
vergessen, beim Lieferadressenobjekt die ID des neuen
Lieferscheinobjektes einzutragen. Somit wurden Lieferadressen erzeugt,
die keinerlei Verknüpfung hatten.
Das geänderte Interface hinterlegt das Objekt für die individuelle
Lieferadresse schlicht in $new_delivery_order->custom_shipto. Dort wird
das Objekt gespeichert, wenn der Lieferschein selber gespeichert wird.
Moritz Bunkus [Wed, 6 Apr 2016 11:58:04 +0000 (13:58 +0200)]
Shipto: Methode zum Clonen in SL::DB::Shipto und nicht in DeliveryOrder->new_from
Moritz Bunkus [Tue, 5 Apr 2016 14:45:12 +0000 (16:45 +0200)]
CVar: Dokumentation um Lieferadressen-CVars ergänzt
Moritz Bunkus [Tue, 5 Apr 2016 14:22:01 +0000 (16:22 +0200)]
CVars: Lieferadressen-CVars bei Ein-/Verkaufsbelegen benutzen können
Moritz Bunkus [Tue, 5 Apr 2016 12:13:21 +0000 (14:13 +0200)]
CVar-Helfer: cvars_by_config nach Config-Reihenfolge sortiert zurückgeben
Moritz Bunkus [Tue, 5 Apr 2016 10:43:53 +0000 (12:43 +0200)]
CVars: Lieferadressen-CVars in Stammdaten bearbeiten
Moritz Bunkus [Mon, 4 Apr 2016 14:06:18 +0000 (16:06 +0200)]
CVars: Konfigurationen für Lieferadressen anlegen können
Moritz Bunkus [Tue, 5 Apr 2016 10:43:21 +0000 (12:43 +0200)]
CustomerVendor: CVar-Aufbereitungs- und -Speicher-Code in eigene Subs ausgelagert
Moritz Bunkus [Wed, 6 Apr 2016 11:53:25 +0000 (13:53 +0200)]
Revert "Bugfix zu manuelle Lieferadresse im Auftrag wird nicht in wiederkehrende Rechung übernommen"
This reverts commit
f46afb13bacfe1d838cb4a7a5b5b58e8145ff4b1.
Wird durch einen folgenden Commit besser implementiert, nämlich direkt
in der Umwandlungsroutine von Auftragsobjekten zu Rechnungsobjekten.
Martin Helmling mh@waldpark.octosoft.eu [Mon, 4 Apr 2016 17:10:03 +0000 (19:10 +0200)]
PDF::Table - fehlerhafte Headerbearbeitung ab Seite 2
ab Seite 2 werden die benötigten Weiten der Spalten um die Zahl der Headerzeilen
nach hinten verschoben. Dann kommt es zu fehlenden Zeilenumbrüchen in manchen Zellen
Da Pushen von leerem Array führt zu diesem Fehler, d.h. es wird doppelt gepushed.
Dieser Fehler war schon in der alten PDF::Table
Moritz Bunkus [Mon, 4 Apr 2016 15:28:31 +0000 (17:28 +0200)]
JS: Debugcode entfernt
Moritz Bunkus [Mon, 4 Apr 2016 15:16:39 +0000 (17:16 +0200)]
JS: weniger getElementById nutzen
Moritz Bunkus [Mon, 4 Apr 2016 15:13:05 +0000 (17:13 +0200)]
JS: einige jshint-Warnungen bzgl. Vergleichsoperatoren gefixt
Moritz Bunkus [Mon, 4 Apr 2016 15:12:05 +0000 (17:12 +0200)]
JS: ineffizienten Funktionsaufruf gefixt (von jshint)
Moritz Bunkus [Mon, 4 Apr 2016 15:11:41 +0000 (17:11 +0200)]
JS: fehlende Klammern bei Konstruktor-Aufruf gefixt (von jshint)
Moritz Bunkus [Mon, 4 Apr 2016 15:10:31 +0000 (17:10 +0200)]
JS: einige Scope-Fehler gefixt (von jshint)
Variablengültigheit hängt nicht von {} ab, sondern gelten immer für die
ganze Funktion. Daher ergibt mehrfachess »var xyz« innerhalb einer
Funktion keinen Sinn.
Moritz Bunkus [Mon, 4 Apr 2016 15:09:33 +0000 (17:09 +0200)]
jshint-Konfigurationsdatei hinzugefügt
Diverse Stile, die bei kivitendo verwendet werden, benötigen manuelle
Einstellungen.
Moritz Bunkus [Mon, 4 Apr 2016 14:20:31 +0000 (16:20 +0200)]
Kunden-/Lieferantenstammdaten: Feldbeschriftungen einheitlich rechtsbündig anzeigen
Rolf Fluehmann [Mon, 4 Apr 2016 11:47:46 +0000 (13:47 +0200)]
Reapply "country_mode entfernt."
Mit mit neuem Autor neu.
Sven Schöling [Mon, 4 Apr 2016 11:46:16 +0000 (13:46 +0200)]
Revert "country_mode entfernt."
Originalcommit:
b05b5075ac0f3cbb0823c2f513cdbcacfb17bede.
Sven Schöling [Mon, 4 Apr 2016 11:39:32 +0000 (13:39 +0200)]
Reapply "Form: round_amount precision support"
Und mit neuer Autorschaft neu.
Sven Schöling [Mon, 4 Apr 2016 11:38:54 +0000 (13:38 +0200)]
Revert "Form: round_amount precision support"
Originalcommit:
73a78da630ce363f70062447dd82a8a0ece8cd89
Moritz Bunkus [Fri, 1 Apr 2016 15:19:46 +0000 (17:19 +0200)]
Einkaufs-/Verkaufssuchen: bei Textfeldern führende/anhängende Whitespaces entfernen
Sven Schöling [Fri, 1 Apr 2016 14:54:21 +0000 (16:54 +0200)]
ParseFilter: neuer Filter "trim"
Ausserdem autotrim bei substr, head und tail Filtern
Moritz Bunkus [Fri, 1 Apr 2016 14:41:49 +0000 (16:41 +0200)]
trim-Funktion zum Entfernen führender und anhängender Whitespaces
Moritz Bunkus [Fri, 1 Apr 2016 15:12:52 +0000 (17:12 +0200)]
ReportGenerator: Unterstützung für raw_header_data-Attribut in Spaltendefinitionen
Zuerst wurde dieses Attribut in Anlehnung an das Attribut bei den
Positionszeilen "raw_data" genannt. Leider kollidiert "raw_data" mit der
Benutzung des ReportGenerators aus dem Controller-Helfer-Modul
SL::Controller::ReportGenerator. Dieser verwendet "raw_data" in den
Spaltendefinitionen bereits für Defaults für die Erzeugung der
Positionszeilen.
Daher nun die Umbenennung des neuen Attributes nach "raw_header_data".
Sven Schöling [Fri, 1 Apr 2016 11:13:44 +0000 (13:13 +0200)]
TopQuickSearch: Bei CustomerVendor redirects immer db mitgeben
Moritz Bunkus [Fri, 1 Apr 2016 09:13:16 +0000 (11:13 +0200)]
QuickSearch: nicht anzeigen, wenn Datenbankupgrades eingespielt werden müssen
QuickSearch hat seine Konfiguration in gewissen Spalten in der
Datenbank. Um auf diese zugreifen zu können, müssen die dazugehörigen
Datenbankupgrades bereits eingespielt worden sein.
Da das Menü und damit die QuickSearch-Items auch während des Einspielens
der Upgrades angezeigt werden, kann es also dazu führen, dass die
Spalten noch nicht existieren. Daher wird QuickSearch nun komplett
deaktiviert, solange ausstehende Datenbankupgrades existieren.
Moritz Bunkus [Fri, 1 Apr 2016 08:34:41 +0000 (10:34 +0200)]
Rechnungen: Massenausdruck aus alter Rechnungssuche heraus
Moritz Bunkus [Fri, 1 Apr 2016 08:28:41 +0000 (10:28 +0200)]
Presenter: hidden_tag, javascript, checkbox_tag von L → Presenter::Tag verschoben
Damit sind diese Funktionen auch direkt aus Perl-Code verfügbar, und man
muss nicht mehr das unsägliche CGI benutzen, um Checkboxen zu rendern.
Moritz Bunkus [Fri, 1 Apr 2016 08:27:28 +0000 (10:27 +0200)]
ReportGenerator: Unterstützung für raw_data-Attribut in Spaltendefinitionen
Analog zu Zellendaten: ist bei einer Spaltenüberschrift raw_data
gesetzt, so wird das ausgegeben. Nur andernfalls werden die Attribute
link, text und der Sortier-Indikator ausgegeben.
Damit ist es z.B. möglich, in der Spaltenüberschrift eine
»Check-All«-Checkbox zu rendern.
Moritz Bunkus [Fri, 1 Apr 2016 07:39:29 +0000 (09:39 +0200)]
SL::DB::Note: Funktion trans_object zum Auslesen des referenzierten Objekts
Ein Note-Objekt hängt immer an einem anderen Datenbankobject, das über
trans_module+trans_id referenziert wird. Diese Funktion entscheidet
anhand von trans_module, welche Rose-Klasse zu instantiieren ist, holt
das entsprechende Objekt aus der Datenbank und gibt es zurück.
Auch bei polymorphen Objekten wie Kunden/Lieferanten (für trans_module
== ct) wird das richtige getan.
Moritz Bunkus [Fri, 1 Apr 2016 07:34:42 +0000 (09:34 +0200)]
CustomerVendor-Presenter: neue Funktion customer_vendor()
Damit der Aufrufer nicht im Vorfeld entscheiden muss, ob $object ein
Kunde oder ein Lieferant ist.
Moritz Bunkus [Thu, 31 Mar 2016 13:31:32 +0000 (15:31 +0200)]
S:D:FollowUp: Namen der Relationen created_by…/created_for… eindeutig gemacht
Die Spalten heißen leider created_by und created_for_user. Damit es bei
der Benutzung nicht zu Verwirrungen zwischen Spaltennamen und den Namen
der Relationships kommt, werden die Relationshipnamen schlicht eindeutig
umbenannt.
Bisher hat kein Rose-Code diese Relationships genutzt. Nur der
CustomerVendor-Controller hat die Spaltennamen benutzt.
Sven Schöling [Wed, 30 Mar 2016 17:10:41 +0000 (19:10 +0200)]
.mailmap für git-shortlog -s
3 commits konnte ich nicht zuordnen:
- digifoto <digifoto@kivitendo.digifoto24.com>
- root <root@test.cine-logistics.de>
- root <root@vc-kivi.vitracom.org>
Sven Schöling [Wed, 30 Mar 2016 09:29:34 +0000 (11:29 +0200)]
DBUpgrade2: may_fail für reine sql Queries auch honorieren.
Moritz Bunkus [Tue, 29 Mar 2016 14:24:54 +0000 (16:24 +0200)]
LXDebug: beim Request-Timer auch die aufgerufene Controller+Action loggen
G. Richardson [Sat, 26 Mar 2016 16:20:07 +0000 (17:20 +0100)]
TopQuickSearch für Kunden und Lieferanten
G. Richardson [Sat, 26 Mar 2016 10:54:32 +0000 (11:54 +0100)]
Whitespace in Kontennamen filtern
Beim Speichern von Konten in der Kontenbeschreibung mehrere
aufeinanderfolgende Leerzeichen mit einem Leerzeichen ersetzen.
Siehe Ticket 148.
G. Richardson [Sat, 26 Mar 2016 10:53:52 +0000 (11:53 +0100)]
Konten speichern - Refaktoring von ->{link}
G. Richardson [Sat, 26 Mar 2016 10:50:40 +0000 (11:50 +0100)]
Fehler beim Öffnen von Konten behoben
Jedes Konto hat einen taxkey Eintrag, aber es gibt nicht immer ein
Steuerautomatikkonto.
Sven Schöling [Thu, 24 Mar 2016 13:15:47 +0000 (14:15 +0100)]
TopQuickSearch: Auftrag, Angebot, Lieferauftrag, Preisanfrage
Sven Schöling [Thu, 24 Mar 2016 13:14:22 +0000 (14:14 +0100)]
oe.pl: Schnellsuche analog zu all:substr:multi::ilike
G. Richardson [Tue, 22 Mar 2016 20:13:53 +0000 (21:13 +0100)]
Typos und spellcheck.t
Sven Schöling [Tue, 22 Mar 2016 17:00:17 +0000 (18:00 +0100)]
TopQuickSearch: Doku
Sven Schöling [Tue, 22 Mar 2016 14:18:51 +0000 (15:18 +0100)]
TopQuickSearch: Konfiguration in client_config
Sven Schöling [Mon, 21 Mar 2016 17:50:05 +0000 (18:50 +0100)]
TopQuickSearch: qw() -> liste, zum einfachen auskommentieren
Sven Schöling [Mon, 21 Mar 2016 17:49:24 +0000 (18:49 +0100)]
TopQuickSearch: locales aufgeräumt, debug entfernt
Sven Schöling [Mon, 21 Mar 2016 17:47:26 +0000 (18:47 +0100)]
TopQuickSearch: Alle Part Varianten for free
Sven Schöling [Mon, 21 Mar 2016 16:41:42 +0000 (17:41 +0100)]
TopQuickSearch: GL controller kann weg
Sven Schöling [Mon, 21 Mar 2016 16:40:56 +0000 (17:40 +0100)]
TopQuickSearch: javascript jshint
Sven Schöling [Mon, 21 Mar 2016 16:33:13 +0000 (17:33 +0100)]
TopQuickSearch: zwei nicht mehr benötigte javascripte
Sven Schöling [Tue, 23 Feb 2016 10:46:27 +0000 (11:46 +0100)]
TopQuickSearch: erste version
Sven Schöling [Thu, 18 Feb 2016 16:16:09 +0000 (17:16 +0100)]
Erzeugnissuche
Sven Schöling [Tue, 22 Mar 2016 12:06:01 +0000 (13:06 +0100)]
warnings: besseres sanitizing in Form::calculate_tax
Sven Schöling [Tue, 22 Mar 2016 12:02:43 +0000 (13:02 +0100)]
Form::round_amount: nicht initialisierte Variable $places
Sven Schöling [Tue, 22 Mar 2016 12:01:33 +0000 (13:01 +0100)]
warnings: nicht initialisierte Variable in Helper/Sorted
Sven Schöling [Tue, 22 Mar 2016 12:00:58 +0000 (13:00 +0100)]
warnings: nicht initialisierte Variable in Helper/Payment
Sven Schöling [Tue, 22 Mar 2016 12:00:17 +0000 (13:00 +0100)]
warnings: diverse nicht initialisierte hash keys in CsvImport
Sven Schöling [Tue, 22 Mar 2016 11:59:33 +0000 (12:59 +0100)]
CsvImport/ARTransactions: fehlerhafter check auf undefinierte tax_id
Sven Schöling [Tue, 22 Mar 2016 11:58:48 +0000 (12:58 +0100)]
warnings: SL::Controller::CsvImport::num_imported auf 0 initalisieren
Sven Schöling [Mon, 21 Mar 2016 17:13:41 +0000 (18:13 +0100)]
Typo: Englische locales waren kaputtgegangen
G. Richardson [Thu, 17 Mar 2016 14:50:47 +0000 (15:50 +0100)]
Beschriftung im Lieferwertbericht korrigiert
G. Richardson [Tue, 15 Mar 2016 16:27:23 +0000 (17:27 +0100)]
Konteneinstellungen - richtiges Konto in ACCOUNT_TAXKEYS
Ging beim Refactorn im letzten Commit kaputt. Wird accno überhaupt
benutzt?
G. Richardson [Tue, 15 Mar 2016 14:07:44 +0000 (15:07 +0100)]
Konten neu anlegen repariert
get_account wurde nicht nur für das Laden bestehender Konten verwendet,
sondern auch für das Füllen von anderen form-Variablen, z.B. für
Steuerschlüssel.
Bei der Gelegenheit auch etwas Rose geübt und refactored.
Sven Schöling [Tue, 15 Mar 2016 11:10:07 +0000 (12:10 +0100)]
Erfolgsrechnung: Korrekte Beschriftung in Kontenmasken
G. Richardson [Sat, 12 Mar 2016 14:15:17 +0000 (15:15 +0100)]
UPGRADE aktualisiert
Jan Büren [Fri, 11 Mar 2016 16:31:36 +0000 (17:31 +0100)]
Erfolgsrechnung aus Menü entfernt
Jan Büren [Fri, 11 Mar 2016 16:27:37 +0000 (17:27 +0100)]
Typo-Fehler in Ausgabe gefixt
ein typischer richardson-commit
G. Richardson [Fri, 11 Mar 2016 16:16:50 +0000 (17:16 +0100)]
Typos in Doku
Jan Büren [Fri, 11 Mar 2016 16:12:51 +0000 (17:12 +0100)]
Ausgabe der Dokumentation aktualisiert (mosus änderungen)
G. Richardson [Fri, 11 Mar 2016 16:05:36 +0000 (17:05 +0100)]
MetaSetup AuthSessionContent
G. Richardson [Fri, 11 Mar 2016 15:52:57 +0000 (16:52 +0100)]
MetaSetup Default whitespace
G. Richardson [Fri, 11 Mar 2016 15:35:54 +0000 (16:35 +0100)]
changelog: Memory-Limits
Moritz Bunkus [Fri, 11 Mar 2016 15:08:44 +0000 (16:08 +0100)]
Dokumentation: Update Instruktionen für openSUSE, Fedora
G. Richardson [Fri, 11 Mar 2016 13:12:55 +0000 (14:12 +0100)]
Changelog - mehr Änderungen nachgetragen
G. Richardson [Fri, 11 Mar 2016 12:52:53 +0000 (13:52 +0100)]
Changelog - Task-Server ist nun mandantenfähig
G. Richardson [Fri, 11 Mar 2016 12:46:38 +0000 (13:46 +0100)]
SQL release Upgrade Skripte für 3.4.0
Jan Büren [Fri, 11 Mar 2016 12:38:38 +0000 (13:38 +0100)]
changelog - ein bugfix mehr
G. Richardson [Fri, 11 Mar 2016 12:23:36 +0000 (13:23 +0100)]
Bugfixes im changelog aktualisiert
Bernd Bleßmann [Tue, 8 Mar 2016 14:23:31 +0000 (15:23 +0100)]
Auftrags-Controller: changelog
Bernd Bleßmann [Mon, 7 Mar 2016 22:41:48 +0000 (23:41 +0100)]
Auftrags-Controller: Link zum neuen Controller aus Auftragsliste (zum Testen).
Bernd Bleßmann [Mon, 7 Mar 2016 22:38:07 +0000 (23:38 +0100)]
Auftrags-Controller: Menüeinträge
Bernd Bleßmann [Mon, 7 Mar 2016 11:37:42 +0000 (12:37 +0100)]
Auftrags-Controller: POD - hauptsächlich Todos
Bernd Bleßmann [Mon, 29 Feb 2016 20:31:18 +0000 (21:31 +0100)]
Auftrags-Controller: unbenutzte action "update" entfernt.
Bernd Bleßmann [Wed, 27 Jan 2016 15:27:05 +0000 (16:27 +0100)]
Auftrags-Controller: Warnung beim Speichern mit doppelten Artikeln.
In der Mandantenkonfiguration (Features) abschaltbar.
Bernd Bleßmann [Fri, 12 Feb 2016 16:25:17 +0000 (17:25 +0100)]
Auftrags-Controller: javascript-Code in eigene Datei auslagern
Bernd Bleßmann [Wed, 10 Feb 2016 12:02:13 +0000 (13:02 +0100)]
Auftrags-Controller: event bindings nicht mehrfach hinzufügen.
Dazu event handler für die Positions-Zeilen mit run_once_for registrieren und
in eine eigene Funktion init_row_handlers() ausgelagert. Damit kann
init_row_handlers() gefahrlos immer nach dem Hinzufügen neuer Positionen
aufgerufen werden, ohne einen Handler mehrmals zu registrieren.
Bernd Bleßmann [Mon, 1 Feb 2016 15:45:22 +0000 (16:45 +0100)]
Auftrags-Controller: Preisfaktor berücksichtigen
Bernd Bleßmann [Wed, 6 Jan 2016 12:00:57 +0000 (13:00 +0100)]
Auftrags-Controller: Mehrfach-Artikelauswahl: Verbesserungen
- ungültige Artikel nicht anzeigen.
- Artikel nicht mehrfach hinzufügen, wenn ausversehen mehrfach Enter gedrückt
oder der Weiter-Knopf mehrfach angeklickt wird.
Bernd Bleßmann [Mon, 25 Jan 2016 12:59:39 +0000 (13:59 +0100)]
Auftrags-Controller: Verknüpfte Belege als Tab
Bernd Bleßmann [Sat, 16 Jan 2016 22:04:27 +0000 (23:04 +0100)]
Auftrags-Controller: Druck-Möglichkeit mit Options
Todos/Anmerkungen
- im Moment werden nur PDF/Bildschirm und PDF/Drucker unterstützt
- Sprache kann die Vorlage steuern, aber nicht das Hinzufügen von übersetzten
Artikeln
- es kann sicher noch mehr ausgelagert werden, entweder in den
PrintOptions-Helper oder in einen PrintOptions-Controller, der
dann auch noch mehr machen könnte
- E-Mail ist nicht berücksichtigt bzw. wird im Controller getrennt behandelt
Bernd Bleßmann [Mon, 7 Mar 2016 21:51:45 +0000 (22:51 +0100)]
Auftrags-Controller: serializeArray und push statt serialize und += auf Strings
Bernd Bleßmann [Tue, 8 Mar 2016 13:19:43 +0000 (14:19 +0100)]
Auftrags-Controller: longdescription
Bernd Bleßmann [Tue, 22 Dec 2015 10:43:08 +0000 (11:43 +0100)]
Auftrags-Controller: Sortieren der Positionen
Bernd Bleßmann [Fri, 18 Dec 2015 10:32:43 +0000 (11:32 +0100)]
Auftrags-Controller: Positions-Spalte anzeigen und renummerieren bei Änderungen.