Neues Feature: Chartpicker
Praktisch komplett analog zum Partpicker, danke Sven für diePionierleistung!
Es gibt natürlich ein paar Unterschiede bei den Filteroptionen, z.B.kann man im Popup nur bebuchte Konten anzeigen lassen, oder dieErgebnisliste nach der Kontenart einschränken. Es wird auch immer nur...
CustomerVendor: Picker nach Art von PartPicker
- reinit_widgets fähig- Tab und Enter atomar- unterstützt onChange und set_item:CustomerVendorPicker trigger- unterstützt fat_set_item
L.radio_button_tag: id erhalten wenn sie schon vorher gesetzt ist.
L: Eindeutige ids für radio_tag wiederhergestellt.
Die waren in da2fecb453416b3731a896ab6d35e9992be3d9eb kaputtgegangen.
L: Parameterextraktion dreier Funktionen gefixt
Template übergibt Hash-Parameter als Hash-Ref, nicht direkt als Hash.
KiviLatex-Template-Plugin: leere Listen entfernen
Das sind Einträge, die im HTML so aussehen: <ul> </ul> LaTeX schmeißtbeim Äquivalent (\begin{itemize} \end{itemize}) Fehler. Kann z.B. viaCopy & Paste aus LibreOffice passieren.
KiviLatex-Plugin: Dokumentation ergänzt
KiviLatex-Plugin: \uline{…} aus ulem-Package für »Unterstrichen« nutzen
Das Standard-\underline{…} setzt den Text in eine \hbox. Nebenwirkungist, dass der Text darin weder der Silbentrennung noch dem Wortumbruchunterworfen wird.
Plugin LxLatex in KiviLatex umbenannt
Template-Plugin LxLatex: neue Funktion filter_html()
Konvertiert HTML nach LaTeX.
Pflichtenhefte: Unterstützung für an Textblöcke angehängte Bilder
areainput implementierung von cetaq übernommen
L-Plugin: Hilfsfunktion is_rdbo($obj) zum Testen ob $obj von einem RDBO ableitet
customer_picker: name leer lassen, damit es nicht mit assign_attributes kollidiert
L.pm um for_submit erweitert und in Kundenvorlage erweitert: #2386
Code von Sven übernommen. Ohne das for_submit wurde bei abgewähltenCheckboxen nichts übertragen (auch keine 0), so daß Rose die Spalte auchnicht aktualisiert hat. Dies wurde durch das Hinfügen von Hiddens...
BackgroundJobHistory getmodels
BackgroundJob models
Erste Version GetModels rewrite
known bugs:disable pagination funktioniert nichtcompiletime optimizations werden noch nicht benutztdoku fehlt
Template: as_list-Methode zum Forçieren vom Listenkontext
jqModal-Dialoge durch jQuery-UI-Dialoge ersetzen
Javascript escape nach Ecmascript Spec.
Es gab einen Eckfall mit CR wo das kaputt gegangen ist, Spec kenntnoch als weitere Randfälle TAB, VT, ' und BS
JavaScript-Plugin: Carriage returns escapen
ClientJS: automatisch Date- und Partpicker nach AJAX-Request initialisieren
Doku, picker nach Presenter verschoben
Part Picker
L.date_tag: Möglichkeit, "class" zu setzen
Unterstützung für andere Datenbankencodings als Unicode/UTF-8 entfernt
Möglichkeit die Paginating Links auf ein DOM Element zu senden
L.sortable_element: beliebige POST-Parameter mit 'params' übergeben können
client_js.js: Funktionen in namespace kivi verschoben
L.radio_button_tag: value="" ermöglichen
Data::Dumper immer via 'use' und nicht 'require' einbinden
Ist schließlich ein Core-Modul.
SL::Template::LaTeX: Funktion zum Parsen & PDF erzeugen aus einem .tex mit nur einem Funktionsaufruf
_hashify: verallgemeinert, getestet, nach SL::Util verschoben (und das dabei erfunden)
Erste Version Template Toolkit Druck
L-Plugin und Presenter: Erzeugung "ID"-Attribute mittels "no_id => 1" unterdrückbar
L: neue Funktion ajax_submit_tag()
L.button_tag: Support für 'confirm' & Doku
L/Presenter: mehrere Funktionen aus L in Presenter verschoben
Presenter-Template-Plugin: bei nicht existierenden Funktionen warnen
L.select_tag: Unterstützung für Nutzung von <optgroup>s
L: "truncate" und "simple_format" in Presenter verschoben
Lokalisierungsdateien jquery-ui hinzugefügt
Fixt #2179.
Alten Code entfernt (MultiColumnIterator)
L: hidden_tag(): Parameterübergabe gefixt
Refactoring: DHTML-Tab-Dialog durch Variante aus jQuery-UI ersetzt
Refactoring: Parameterredesign SL::Controller::Base::render und SL::Presenter::render
Conflicts: SL/Controller/FinancialControllingReport.pm SL/Controller/ProjectType.pm
SL::Presenter -- die neue Präsentationsschicht
customer_autocomplete
Javascript war nicht in der Lage mehr als ein Feld zu handhaben. Es istjetzt ausgelagert in ein Javascript und wird nur bei Bedarf geladen.
Lx-Office heißt nun kivitendo
Refactoring: In Rückgabewert vom Paginated-DB-Helfer 'cur' in 'page' umbenennen
Dient Konsistenz der Eingangs- und Ausgangsparameter.
Dadurch entfällt auch das Hin- und Herbenennen imPaginated-Controller-Helfer/im L-Plugin.
value_title_sub in L.select_tag richtig verarbeiten.
Parameter "empty_label" von L.select_tag nicht als HTML-Attribut ausgeben.
Merge branch 'master' of vc.linet-services.de:public/lx-office-erp
Den Confirm-Text unter SL::Template::Plugin::L::submit_tag escapen
SL::Template::Plugin::L::_J ums escaping von ' und \ erweitert
SL::Template::Plugin::L::select_tag und SL::Template::Plugin::L::options_for_select fusionieren.
Sorted-Controller-Helper: Spaltentitle nicht direkt in make_sorted() übersetzen
Hintergrund ist der, dass ansonsten die Übersetzung nur einmalpassiert, nämlich dann, wenn das Modul compiliert wird. Für normalesCGI funktioniert das:
- Zuerst wird der Dispatcher geladen und ausgeführt. Der analysiert...
L.img_tag
weil L.html_tag aus templates heraus nicht in der lage ist undef als content zu übergeben
Controller-Helfer zum Paginaten von Listen
Controller-Helfer für das halbautomatische Sortieren von Listenansichten
L.truncate: Funktion zum intelligenten Verkürzen eines Strings
Kosmetik: white space removal
Helferfunktion L.yes_no_tag()
Implementiert die Standard-"Ja/Nein"-Selectbox via L.select_tag(...,L.options_for_select())
Waren und Lieferanten als benutzerdefinierte Variablen hinzugefügt.
Mit einfachen vendor_ und part_selectoren im L-Plugin, die dasselect_tag verwenden. vc_limit wird nicht berücksichtigt und dasganze ist nur rudimentär getestet.
L.areainput_tag: cols als parameter akzeptieren.
L.date_tag: kalenderpicker nicht anzeigen, wenn das Feld readonly ist.
L.date_tag: dem img tag kein onchange mitgeben falls übergeben.
L: HTML Attribute ohne Wert korrekt generieren.
Onlinehilfe als modale Overlays.
L.online_help_tag produziert jetzt nicht mehr ein Popup sondern ein modales Overlay.Im template muss leider im Moment noch ein Ziel dafür eingebunden werden mit:
[% PROCESS 'common/help_overlay.html' %]
Layouthelper: Automatisch generierte ids müssen mit einem alphabetischen Zeichen anfangen.
Bei date_tag die Kalender Orientierung nicht als html Attribut ausgeben.
button_tag nicht als input_tag implementieren
Hintergrund: button tags brauchen im standard kein id oder name Attribut, inputtags aber schon. Die input_tag Implementierung forciert korrekterweise id undname, so dass die leer sind, wenn ein button_tag ohne geschrieben wird.
texarea tags müssen immer numerische Werte in cols und rows haben.
Wir verwenden kein XHTML sondern HTML, also contentlose tags nicht mit /> zumachen.
fehlendes strict
L.date_tag kann jetzt auch mit DateTime objekten umgehen
customer_picker
testpage ist zu Dokumentationszwecken noch dabei, aber nicht mehr durch actionerreichbar.
Fixes vom portieren
JSON Filter.
Funktionen die Listen zurückgeben kommen in Template::Plugins als arrayref an. -.-
checkall attribut in L.checkbox_tag
Eine Warnung unterdrücken.
Per default Drag&Drop nur auf Item mit Klasse 'dragdrop' zulassen
Automatisches Neu-Einfärben nach Drag&Drop
Verbesserte Kompatibilität mit Opera, FireFox, InternetExplorer bei Drag & Drop
Wenn Textauswahl mit ".disableSelection()" deaktiviert ist, so kannman bei den genannten Browsern Text-Eingabefelder nicht mehranklicken.
Statt dessen sind nun nur noch die Pfeile drag&drop-bar, der Rest der...
Dokumentationsupdate
Helfer-Layout-Funktion zum Sortieren von Listen mittels JavaScript + AJAX
HTML.uri() muss Strings zuerst von Perls internem Encoding nach UTF-8 wandeln
Fix für Bug 1641.
Always test your code, Moritz...
Konstruktue "my ($foo) = shift" durch eindeutigere Konstrukte ersetzt
Leaks in SL::Template::Plugin::T8
Filter werden in Template::Toolkit in einer anonymen Closure einfach im Kontextverlinkt. Dadurch geht jedes Filter Objekt verloren und leakt. Diese Änderungcacht das T8 Filterobjekt, da es sowieso statisch ist. Das beschränkt die Leaks...
Auf Romans Anregen - Ein simples POD basiertes Hilfesystem
So funktionierts:- 1. Hilfe in eine pod Datei schreiben- 2. Pod Datei nach doc/online/<lang>/<tag>.html legen, wobei <lang> der countrycode der locale ist, und <tag> ein /[a-zA-Z0-9_]+/ Identifier ist....
options_for_select: Default "0" ermöglichen
Fehler beim Mergen: Schließende } versehentlich entfernt
Helferfunktionen für AJAX-Aufrufe/DOM-Modifikationen mit jQuery: Elemente ersetzen
HTML-Attribut 'disabled' entfernen, wenn es existiert aber undefiniert ist
Ansonsten erschwert es das Setzen sehr...
tabbed ids müssen statisch vergebbar sein, sonst funktioniert persistent mode nicht.