Sven Schöling [Mon, 16 Aug 2010 09:11:19 +0000 (11:11 +0200)]
Neue Option in LXDebug: LXDebug->WARN.
Sämtliche Perl warnings die auftreten, werden jetzt über einen
Sighandler an LXDebug weitergeleitet, und werden, sofern gewünscht,
in das LxOffice Log geschrieben.
Das ganze soll später dazu dienen, inkrementell die Module von warnings zu
befreien, und später dann das Programm im globalen -w Modus laufen lassen zu
können.
Moritz Bunkus [Mon, 16 Aug 2010 07:51:06 +0000 (09:51 +0200)]
Vertretermodus: Immer bisherigen Vertreter anzeigen & nur wahlweise ändern
Neues Verhalten in der Kundenmaske: Wird ein Kunde neu angelegt, so
muss ein Vertreter ausgewählt werden.
Wird ein bestehender Kunde bearbeitet, so wird der Name des bisher für
ihn ausgewählten Vertreters immer angezeigt. Zusätzlich hat der
Bearbeiter die Möglichkeit, den Vertreter über die Drop-Down-Box der
aktuell gültigen Kunden zu ändern. Wird hier kein Vertreter
ausgewählt, so bleibt der bisherige Vertreter bestehen.
Sven Schöling [Fri, 13 Aug 2010 14:23:09 +0000 (16:23 +0200)]
selectall_hashref_query umgestellt auf die DBI funktion selectall_arrayref.
Mit einem bestimmten Parameter tut diese genau das gleiche wie die
selectall_hashref, was zur Folge hat, das ein Großteil des Overheads der
Datenbankkommunikation gespart oder nach XS ausgelagert wird. Grosse Requests
mit sehr viel Datenbankzugriff (Schwalfenberg Fall) sind gut 25% schneller
damit.
Der Slice Parameter sollte mindestens auf Debian Sarge und darauf basierenden
Distributionen funktionieren, davor habe ich nicht nachgeschaut.
Falscher Ansatz. Die Rückübersetzung von Strings ist ein alter Ansatz der auf
genau diesem Grund nicht mehr genommen werdne soll. Besser ist hier submit und
action zu entkoppeln. Siehe nächsten Commit.
Sven Donath [Wed, 11 Aug 2010 23:19:19 +0000 (01:19 +0200)]
Seitliches Menü mit den Icons des XUL-Menüs in 24x24 versehen.
Reparatur an XUL-Menü nach "Programm->Program"-Änderung.
Anführungszeichen in kopf.pl und Vorwärts-Link.
Falls die 24x24-Icons okay sind, können die alten Icons (direkt unterhalb images/) gelöscht werden.
Sven Donath [Wed, 11 Aug 2010 15:36:34 +0000 (17:36 +0200)]
message_ok und message_error CSS-Styles eingefügt. Msg-Ausgabe etwas repariert. Hat noch Potential.
Nachtrag zum vorigen Commit: Die Bezeichnung des seitlichen Menüs habe ich von 'Alt (seitlich)' auf 'Links (HTML)' geändert,
weil das in der Dropdown-Box logischer ist.
Die Dropdown-Box heißt jetzt 'Menü-Variante' statt 'Menüsetup'.
Sven Donath [Wed, 11 Aug 2010 11:51:31 +0000 (13:51 +0200)]
Im seitlichen Meü sind jetzt auch die Icons klickbar (a href), um eine Sektion wie "Stammdaten" oder "Programm" zu öffnen.
Unter "Programm" heißt "Benutzereinstellungen" jetzt "Einstellungen". Das ist logischer. Denkbar wäre auch so etwas wie "Mein Lx-Office".
Unter "Programm" findet man jetzt zusätzlich den "Administrationsbereich". Grund ist die Tatsache, dass man sonst nach erfolgreicher Installation
den Punkt "System" nicht sehen kann, da man keinen Zugriff darauf hat. Der Admin-Bereich ist sowieso Passwort geschützt.
Sven Donath [Mon, 9 Aug 2010 16:18:18 +0000 (18:18 +0200)]
Kosmetik und Anmeldung mit "en" ermöglicht
Fehlerausgabe war "anmeldung not defined in locale/en/all"
Das sollte besser in dem login-Template für alle Sprachen geregelt werden.
Z.B. mit "OK" als Button-Beschriftung für alle Sprachen.
Moritz Bunkus [Tue, 3 Aug 2010 12:44:03 +0000 (14:44 +0200)]
Dirty hack: Test "Läuft OO?" erfolgreich, wenn Testscript "1" ausgibt
Grund: OpenOffice bzw. der UNO-Connector stürzt gerne beim Beenden mit
einem segmentation fault ab, auch wenn die Verbindung selber in
Ordnung war. Also zusätzlich zum Exit code eine Statusausgabe des
Scripts benutzen.
Moritz Bunkus [Tue, 3 Aug 2010 12:24:08 +0000 (14:24 +0200)]
Dirty hack: Konvertierung ODT -> PDF als "OK" ansehen, wenn PDF existiert
Grund: OpenOffice bzw. der UNO-Connector stürzt gerne nach
erfolgreicher Konviertierung mit einem segmentation fault ab. Das PDF
ist in so einem Fall aber vollständig.
Sven Schöling [Fri, 23 Jul 2010 10:01:36 +0000 (12:01 +0200)]
locale->text prüft jetzt auf bool statt auf exists.
$::locale->text hat seit einiger Zeit keinen Fallback mehr auf die interne
Version, was die Englische Lokalisierung unbenutzbar macht. Diese Patch ist ein
Quifix, das eigentliche Problem ist, dass die englische Lokalisierung nahezu
nicht vorhanden ist.
Bisher wurde auf ein explizites exists geprüft, da aber das locales script
mittlerweile alle Daten in einer grossen Datei hät, sind potentiell auch alle
Keys belegt.
Mit dieser Version wird die englische Version wie bisher angezeigt, dafür sind
"leere" Lokalisierungen nicht mehr möglich, weil sie zurückfallen auf die
interne Repräsentation.
sonst hat die Lieferscheinnummer in der Rechnungsmaske ein
Leerzeichen am Ende, wenn man eine Rechnung aus einem oder
mehreren Lieferscheinen aus dem Lieferscheinbericht erstellt.
Sven Schöling [Wed, 21 Jul 2010 15:39:46 +0000 (17:39 +0200)]
CVar Inputfelder auf Templateblöcke umgeschrieben.
Bei großen Belegen, sprich 50 Zeilen steigt der Aufwand für die CVars im Moment
in der dritten Potenz. Das führt dazu dass selbst auf schnellen Servern die
Requests unhaltbar langsam sind.
Ab jetzt werden für Belege die CVars nicht mehr vorgrendert, sondern zur
Laufzeit gerendert, und dann mit einem vorkompilierten Template, dass im
Speicher eingebunden wird.
Die anderen beiden Templates sind davon nicht betroffen.
Sven Schöling [Wed, 21 Jul 2010 10:29:15 +0000 (12:29 +0200)]
DEBIAN paket generator ein wenig eingedampft.
Verzeichnisstruktur wird jetzt beim packen erzeugt, alle benötigten Dateien liegen unter DEBIAN/files.
Verseion wird jetzt aus der VERSION Datei von Lx-Office geholt.
Moritz Bunkus [Mon, 1 Feb 2010 13:54:54 +0000 (14:54 +0100)]
Funktionsnamensauflösung gefixt
Hintergrund. "my $abc = ... if ..." bewirkt, dass zuerst das "if"
ausgeführt wird. Schlägt das "if" fehl, so wird die Zuweisung nicht
ausgeführt. Somit bleibt der Wert in $abc vom vorherigen Aufruf
derselben Funktion erhalten.
Moritz Bunkus [Mon, 1 Feb 2010 13:21:52 +0000 (14:21 +0100)]
Funktionsnamensauflösung gefixt
Nicht einfach nur die Übersetzungstabelle umdrehen, weil es mehrere
Originalbegriffe mit derselben Übersetzung gibt. Also zur Laufzeit
überprüfen, welcher der Originalbegriffe als Funktionsname in dem
Moment des Aufrufes in Frage kommt, sprich welche Funktion in 'main::'
in dem Moment definiert ist.