From c6dd542b51ae9549ad42a54f9023b905412bbab9 Mon Sep 17 00:00:00 2001 From: Moritz Bunkus Date: Tue, 15 Dec 2015 14:18:48 +0100 Subject: [PATCH] =?utf8?q?Task-Server:=20Mandantenf=C3=A4higkeit?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- SL/Controller/Admin.pm | 9 ++ SL/DB/MetaSetup/AuthClient.pm | 24 +++-- SL/DBConnect/Cache.pm | 5 + config/kivitendo.conf.default | 6 -- doc/UPGRADE | 13 +++ doc/dokumentation.xml | 47 ++++----- doc/html/ch01.html | 2 +- doc/html/ch02s04.html | 6 +- doc/html/ch02s06.html | 4 +- doc/html/ch02s07.html | 29 +++--- doc/html/ch02s08.html | 2 +- doc/html/ch03s03.html | 4 +- doc/html/ch04.html | 32 +++--- doc/html/index.html | 4 +- doc/kivitendo-Dokumentation.pdf | Bin 685759 -> 687109 bytes locale/de/all | 3 + scripts/task_server.pl | 106 ++++++++++++++------ sql/Pg-upgrade2-auth/client_task_server.sql | 5 + templates/webpages/admin/edit_client.html | 7 ++ templates/webpages/admin/edit_user.html | 14 ++- 20 files changed, 206 insertions(+), 116 deletions(-) create mode 100644 sql/Pg-upgrade2-auth/client_task_server.sql diff --git a/SL/Controller/Admin.pm b/SL/Controller/Admin.pm index d0082b1e3..1c0f25e0c 100644 --- a/SL/Controller/Admin.pm +++ b/SL/Controller/Admin.pm @@ -6,6 +6,7 @@ use parent qw(SL::Controller::Base); use IO::Dir; use List::Util qw(first); +use List::UtilsBy qw(sort_by); use SL::Common (); use SL::DB::AuthUser; @@ -672,4 +673,12 @@ sub authenticate_root { return undef; } +sub is_user_used_for_task_server { + my ($self, $user) = @_; + + return undef if !$user; + return join ', ', sort_by { lc } map { $_->name } @{ SL::DB::Manager::AuthClient->get_all(where => [ task_server_user_id => $user->id ]) }; +} + + 1; diff --git a/SL/DB/MetaSetup/AuthClient.pm b/SL/DB/MetaSetup/AuthClient.pm index 5e9d59e04..4d88887e0 100644 --- a/SL/DB/MetaSetup/AuthClient.pm +++ b/SL/DB/MetaSetup/AuthClient.pm @@ -10,14 +10,15 @@ __PACKAGE__->meta->table('clients'); __PACKAGE__->meta->schema('auth'); __PACKAGE__->meta->columns( - dbhost => { type => 'text', not_null => 1 }, - dbname => { type => 'text', not_null => 1 }, - dbpasswd => { type => 'text', not_null => 1 }, - dbport => { type => 'integer', default => 5432, not_null => 1 }, - dbuser => { type => 'text', not_null => 1 }, - id => { type => 'serial', not_null => 1 }, - is_default => { type => 'boolean', default => 'false', not_null => 1 }, - name => { type => 'text', not_null => 1 }, + dbhost => { type => 'text', not_null => 1 }, + dbname => { type => 'text', not_null => 1 }, + dbpasswd => { type => 'text', not_null => 1 }, + dbport => { type => 'integer', default => 5432, not_null => 1 }, + dbuser => { type => 'text', not_null => 1 }, + id => { type => 'serial', not_null => 1 }, + is_default => { type => 'boolean', default => 'false', not_null => 1 }, + name => { type => 'text', not_null => 1 }, + task_server_user_id => { type => 'integer' }, ); __PACKAGE__->meta->primary_key_columns([ 'id' ]); @@ -27,5 +28,12 @@ __PACKAGE__->meta->unique_keys( [ 'name' ], ); +__PACKAGE__->meta->foreign_keys( + task_server_user => { + class => 'SL::DB::AuthUser', + key_columns => { task_server_user_id => 'id' }, + }, +); + 1; ; diff --git a/SL/DBConnect/Cache.pm b/SL/DBConnect/Cache.pm index 7e4633b69..c133e8a3d 100644 --- a/SL/DBConnect/Cache.pm +++ b/SL/DBConnect/Cache.pm @@ -43,6 +43,11 @@ sub clear { %cache = (); } +sub disconnect_all_and_clear { + $_->disconnect for values %cache; + %cache = (); +} + sub _args2str { my (@args) = @_; diff --git a/config/kivitendo.conf.default b/config/kivitendo.conf.default index 0ff2aa176..4242d65b1 100644 --- a/config/kivitendo.conf.default +++ b/config/kivitendo.conf.default @@ -146,12 +146,6 @@ openofficeorg_daemon = 1 openofficeorg_daemon_port = 2002 [task_server] -# kivitendo client (either its name or its database ID) for database -# access (both 'client' and 'login' are required) -client = -# kivitendo user (login) name to use for certain jobs (both 'client' -# and 'login' are required) -login = # Set to 1 for debug messages in /tmp/kivitendo-debug.log debug = 0 # Chose a system user the daemon should run under when started as root. diff --git a/doc/UPGRADE b/doc/UPGRADE index 29b436fc2..0a6310d34 100644 --- a/doc/UPGRADE +++ b/doc/UPGRADE @@ -14,6 +14,19 @@ Upgrade auf v????? aktualisiert. Für Benutzer der empfohlenen FastCGI Anbindung ändert sich nichts. +* Der Task-Server ist nun mandantenfähig. Für jeden Mandanten, für den + der Task-Server laufen soll, muss in der Administrationsoberfläche + in der Konfiguration des Mandanten hinterlegt werden, welchen + kivitendo-Benutzer der Task-Server nutzen soll. Ist bei einem + Mandanten kein Benutzer hinterlegt, so ignoriert der Task-Server + diesen Mandanten. + + Im Gegenzug wurden die beiden Konfigurations-Einstellungen »client« + und »login« aus dem Abschnitt [task_server] entfernt. Der + Task-Server prüft beim Starten allerdings, ob diese Einstellungen + noch existieren und verweigert den Start mit einer hilfreichen + Fehlermeldung, solange sie noch vorhanden sind. + Upgrade auf v3.3.0 ================== diff --git a/doc/dokumentation.xml b/doc/dokumentation.xml index 2570e8ee6..976d0b1e3 100644 --- a/doc/dokumentation.xml +++ b/doc/dokumentation.xml @@ -419,10 +419,8 @@ password = kivitendo bringt eine eigene Komponente zur zeitgesteuerten Ausführung bestimmter Aufgaben mit, den Taskserver. Er wird u.a. für Features wie die wiederkehrenden Rechnungen benötigt, erledigt aber auch andere erforderliche Aufgaben - und muss daher in Betrieb genommen werden. Der Taskserver benötigt zwei Konfigurationseinstellungen, die unter - [task_server] anzugeben sind: ein Mandant (entweder der Mandantenname oder eine Datenbank-ID, Variable - client), aus dem die Datenbankkonfiguration entnommen wird, sowie ein Login (Variable login) - eines Benutzers, der für gewisse Dinge wie die Rechnungserstellung als Verkäufer eingetragen wird. + und muss daher in Betrieb genommen werden. Seine Einrichtung wird im Abschnitt Task-Server + genauer beschrieben. Für Entwickler finden sich unter [debug] wichtige Funktionen, um die Fehlersuche zu erleichtern. @@ -789,6 +787,12 @@ Alias /url/for/kivitendo-erp-fcgid/ /path/to/kivitendo-erp/ + Der Task-Server muss einmalig global in der Konfigurationsdatei konfiguriert werden. Danach wird er für jeden Mandanten, für den + er laufen soll, in der Adminsitrationsmaske eingeschaltet. + + Beachten Sie, dass der Task-Server in den Boot-Vorgang Ihres Servers integriert werden muss, damit er automatisch gestartet + wird. Dies kann kivitendo nicht für Sie erledigen. + Verfügbare und notwendige Konfigurationsoptionen @@ -798,28 +802,6 @@ Alias /url/for/kivitendo-erp-fcgid/ /path/to/kivitendo-erp/ - - client - - - Name oder Datenbank-ID eines vorhandenen kivitendo-Mandanten, der benutzt wird, um die zu verwendende - Datenbankverbindung auszulesen. Der Mandant muss in der Administration angelegt werden. Diese Option muss angegeben - werden. - - Diese Option kam mit Release v3.x.0 hinzu und muss daher in Konfigurationen, die von älteren Versionen aktualisiert - wurden, ergänzt werden. - - - - - login - - - gültiger kivitendo-Benutzername, der z.B. als Verkäufer beim Erzeugen wiederkehrender Rechnungen benötigt wird. Der - Benutzer muss in der Administration angelegt werden. Diese Option muss angegeben werden. - - - run_as @@ -830,7 +812,7 @@ Alias /url/for/kivitendo-erp-fcgid/ /path/to/kivitendo-erp/). Daher - ist es sinnvoll, hier denselben Systembenutzer einzutragen, + ist es erforderlich, hier denselben Systembenutzer einzutragen, unter dem auch der Webserver läuft. @@ -845,6 +827,17 @@ Alias /url/for/kivitendo-erp-fcgid/ /path/to/kivitendo-erp/ + + Konfiguration der Mandanten für den Task-Server + + Ist der Task-Server grundlegend konfiguriert, so muss anschließend jeder Mandant, für den der Task-Server laufen soll, + einmalig konfiguriert werden. Dazu kann in der Maske zum Bearbeiten von Mandanten im Administrationsbereich eine + kivitendo-Benutzerkennung ausgewählt werden, unter der der Task-Server seine Arbeit verrichtet. + + Ist in dieser Einstellung keine Benutzerkennung ausgewählt, so wird der Task-Server für diesen Mandanten keine Aufgaben + ausführen. + + Automatisches Starten des Task-Servers beim Booten diff --git a/doc/html/ch01.html b/doc/html/ch01.html index 60cd5ddb8..270dd8a69 100644 --- a/doc/html/ch01.html +++ b/doc/html/ch01.html @@ -1,6 +1,6 @@ - Kapitel 1. Aktuelle Hinweise

Kapitel 1. Aktuelle Hinweise

Aktuelle Installations- und Konfigurationshinweise gibt es:

  • im Community-Forum: https://forum.kivitendo.org:32443 + Kapitel 1. Aktuelle Hinweise

    Kapitel 1. Aktuelle Hinweise

    Aktuelle Installations- und Konfigurationshinweise gibt es:

    \ No newline at end of file diff --git a/doc/html/ch02s04.html b/doc/html/ch02s04.html index 119870fe1..6487b02bd 100644 --- a/doc/html/ch02s04.html +++ b/doc/html/ch02s04.html @@ -61,10 +61,8 @@ password =

    Nutzt man wiederkehrende Rechnungen, kann man unter [periodic_invoices] den Login eines Benutzers angeben, der nach Erstellung der Rechnungen eine entsprechende E-Mail mit Informationen über die erstellten Rechnungen bekommt.

    kivitendo bringt eine eigene Komponente zur zeitgesteuerten Ausführung bestimmter Aufgaben mit, den Taskserver. Er wird u.a. für Features wie die wiederkehrenden Rechnungen benötigt, erledigt aber auch andere erforderliche Aufgaben - und muss daher in Betrieb genommen werden. Der Taskserver benötigt zwei Konfigurationseinstellungen, die unter - [task_server] anzugeben sind: ein Mandant (entweder der Mandantenname oder eine Datenbank-ID, Variable - client), aus dem die Datenbankkonfiguration entnommen wird, sowie ein Login (Variable login) - eines Benutzers, der für gewisse Dinge wie die Rechnungserstellung als Verkäufer eingetragen wird.

    Für Entwickler finden sich unter [debug] + und muss daher in Betrieb genommen werden. Seine Einrichtung wird im Abschnitt Task-Server + genauer beschrieben.

    Für Entwickler finden sich unter [debug] wichtige Funktionen, um die Fehlersuche zu erleichtern.

2.4.3. Versionen vor 2.6.3

In älteren kivitendo Versionen gab es im Verzeichnis config die Dateien authentication.pl und diff --git a/doc/html/ch02s06.html b/doc/html/ch02s06.html index 5f3334d71..47f29d80b 100644 --- a/doc/html/ch02s06.html +++ b/doc/html/ch02s06.html @@ -1,6 +1,6 @@ - 2.6. Webserver-Konfiguration

2.6. Webserver-Konfiguration

2.6.1. Grundkonfiguration mittels CGI

[Anmerkung]Anmerkung

Für einen deutlichen Performanceschub sorgt die Ausführung + 2.6. Webserver-Konfiguration

2.6. Webserver-Konfiguration

2.6.1. Grundkonfiguration mittels CGI

[Anmerkung]Anmerkung

Für einen deutlichen Performanceschub sorgt die Ausführung mittels FastCGI/FCGI. Die Einrichtung wird ausführlich im Abschnitt Konfiguration für FastCGI/FCGI beschrieben.

Der Zugriff auf das Programmverzeichnis muss in der Apache Webserverkonfigurationsdatei httpd.conf eingestellt @@ -105,7 +105,7 @@ AliasMatch ^/url/for/kivitendo-erp-fcgid/[^/]+\.pl /path/to/kivitendo-erp/dispat Alias /url/for/kivitendo-erp-fcgid/ /path/to/kivitendo-erp/

Dann ist unter /url/for/kivitendo-erp/ die normale Version erreichbar, und unter /url/for/kivitendo-erp-fcgid/ die - FastCGI-Version.

2.6.3. Weitergehende Konfiguration

Für einen deutlichen Sicherheitsmehrwert sorgt die Ausführung von kivitendo + FastCGI-Version.

2.6.3. Weitergehende Konfiguration

Für einen deutlichen Sicherheitsmehrwert sorgt die Ausführung von kivitendo nur über https-verschlüsselten Verbindungen, sowie weiteren Zusatzmassnahmen, wie beispielsweise Basic Authenticate. Die Konfigurationsmöglichkeiten sprengen allerdings den Rahmen dieser Anleitung, hier ein diff --git a/doc/html/ch02s07.html b/doc/html/ch02s07.html index 35a8228cd..d3c8e1266 100644 --- a/doc/html/ch02s07.html +++ b/doc/html/ch02s07.html @@ -2,34 +2,31 @@ 2.7. Der Task-Server

2.7. Der Task-Server

Der Task-Server ist ein Prozess, der im Hintergrund läuft, in regelmäßigen Abständen nach abzuarbeitenden Aufgaben sucht und diese zu festgelegten Zeitpunkten abarbeitet (ähnlich wie Cron). Dieser Prozess wird u.a. für die Erzeugung der wiederkehrenden - Rechnungen und weitere essenzielle Aufgaben benutzt.

2.7.1. Verfügbare und notwendige Konfigurationsoptionen

Die Konfiguration erfolgt über den Abschnitt + Rechnungen und weitere essenzielle Aufgaben benutzt.

Der Task-Server muss einmalig global in der Konfigurationsdatei konfiguriert werden. Danach wird er für jeden Mandanten, für den + er laufen soll, in der Adminsitrationsmaske eingeschaltet.

Beachten Sie, dass der Task-Server in den Boot-Vorgang Ihres Servers integriert werden muss, damit er automatisch gestartet + wird. Dies kann kivitendo nicht für Sie erledigen.

2.7.1. Verfügbare und notwendige Konfigurationsoptionen

Die Konfiguration erfolgt über den Abschnitt [task_server] in der Datei config/kivitendo.conf. Die dort verfügbaren Optionen sind:

- client -

Name oder Datenbank-ID eines vorhandenen kivitendo-Mandanten, der benutzt wird, um die zu verwendende - Datenbankverbindung auszulesen. Der Mandant muss in der Administration angelegt werden. Diese Option muss angegeben - werden.

Diese Option kam mit Release v3.x.0 hinzu und muss daher in Konfigurationen, die von älteren Versionen aktualisiert - wurden, ergänzt werden.

- login -

gültiger kivitendo-Benutzername, der z.B. als Verkäufer beim Erzeugen wiederkehrender Rechnungen benötigt wird. Der - Benutzer muss in der Administration angelegt werden. Diese Option muss angegeben werden.

run_as

Wird der Server vom Systembenutzer root gestartet, so wechselt er auf den mit run_as angegebenen Systembenutzer. Der Systembenutzer muss dieselben Lese- und Schreibrechte haben, wie auch der Webserverbenutzer (siehe see Manuelle Installation des Programmpaketes). Daher - ist es sinnvoll, hier denselben Systembenutzer einzutragen, + ist es erforderlich, hier denselben Systembenutzer einzutragen, unter dem auch der Webserver läuft.

debug -

Schaltet Debug-Informationen an und aus.

2.7.2. Automatisches Starten des Task-Servers beim Booten

Der Task-Server verhält sich von seinen Optionen her wie ein +

Schaltet Debug-Informationen an und aus.

2.7.2. Konfiguration der Mandanten für den Task-Server

Ist der Task-Server grundlegend konfiguriert, so muss anschließend jeder Mandant, für den der Task-Server laufen soll, + einmalig konfiguriert werden. Dazu kann in der Maske zum Bearbeiten von Mandanten im Administrationsbereich eine + kivitendo-Benutzerkennung ausgewählt werden, unter der der Task-Server seine Arbeit verrichtet.

Ist in dieser Einstellung keine Benutzerkennung ausgewählt, so wird der Task-Server für diesen Mandanten keine Aufgaben + ausführen.

2.7.3. Automatisches Starten des Task-Servers beim Booten

Der Task-Server verhält sich von seinen Optionen her wie ein reguläres SystemV-kompatibles Boot-Script. Außerdem wechselt er beim Starten automatisch in das kivitendo-Installationsverzeichnis.

Deshalb ist es möglich, ihn durch Setzen eines symbolischen Links aus einem der Runlevel-Verzeichnisse heraus in den Boot-Prozess einzubinden. Da das bei neueren Linux-Distributionen aber nicht zwangsläufig funktioniert, werden auch Start-Scripte mitgeliefert, die - anstelle eines symbolischen Links verwendet werden können.

2.7.2.1. SystemV-basierende Systeme (z.B. Debian, ältere OpenSUSE, ältere Fedora Core)

Kopieren Sie die Datei + anstelle eines symbolischen Links verwendet werden können.

2.7.3.1. SystemV-basierende Systeme (z.B. Debian, ältere OpenSUSE, ältere Fedora Core)

Kopieren Sie die Datei scripts/boot/system-v/kivitendo-task-server nach /etc/init.d/kivitendo-task-server. Passen Sie in der kopierten Datei den Pfad zum Task-Server an (Zeile @@ -37,17 +34,17 @@ Boot-Prozess ein. Dies ist distributionsabhängig:

  • Debian-basierende Systeme:

    update-rc.d kivitendo-task-server defaults
     # Nur bei Debian Squeeze und neuer:
     insserv kivitendo-task-server
  • Ältere OpenSUSE und ältere Fedora Core:

    chkconfig --add kivitendo-task-server

Danach kann der Task-Server mit dem folgenden Befehl gestartet - werden:

/etc/init.d/kivitendo-task-server start

2.7.2.2. Upstart-basierende Systeme (z.B. Ubuntu)

Kopieren Sie die Datei + werden:

/etc/init.d/kivitendo-task-server start

2.7.3.2. Upstart-basierende Systeme (z.B. Ubuntu)

Kopieren Sie die Datei scripts/boot/upstart/kivitendo-task-server.conf nach /etc/init/kivitendo-task-server.conf. Passen Sie in der kopierten Datei den Pfad zum Task-Server an (Zeile exec ....).

Danach kann der Task-Server mit dem folgenden Befehl gestartet - werden:

service kivitendo-task-server start

2.7.2.3. systemd-basierende Systeme (z.B. neure OpenSUSE, neuere Fedora Core)

Verlinken Sie die Datei scripts/boot/systemd/kivitendo-task-server.service nach + werden:

service kivitendo-task-server start

2.7.3.3. systemd-basierende Systeme (z.B. neure OpenSUSE, neuere Fedora Core)

Verlinken Sie die Datei scripts/boot/systemd/kivitendo-task-server.service nach /etc/systemd/system/. Passen Sie in der kopierten Datei den Pfad zum Task-Server an (Zeile ExecStart=.... und ExecStop=...). Binden Sie das Script in den Boot-Prozess ein.

Alle hierzu benötigten Befehle sehen so aus:

cd /var/www/kivitendo-erp/scripts/boot/systemd
 ln -s $(pwd)/kivitendo-task-server.service /etc/systemd/system/

Danach kann der Task-Server mit dem folgenden Befehl gestartet - werden:

systemctl start kivitendo-task-server.service

2.7.3. Wie der Task-Server gestartet und beendet wird

Der Task-Server wird wie folgt kontrolliert:

./scripts/task_server.pl Befehl

+ werden:

systemctl start kivitendo-task-server.service

2.7.4. Wie der Task-Server gestartet und beendet wird

Der Task-Server wird wie folgt kontrolliert:

./scripts/task_server.pl Befehl

Befehl ist dabei eine der folgenden Optionen:

  • start startet eine neue Instanz des @@ -60,7 +57,7 @@ ln -s $(pwd)/kivitendo-task-server.service /etc/systemd/system/

    Danach k status berichtet, ob der Task-Server läuft.

Der Task-Server wechselt beim Starten automatisch in das kivitendo-Installationsverzeichnis.

Dieselben Optionen können auch für die SystemV-basierenden - Runlevel-Scripte benutzt werden (siehe oben).

2.7.4. Task-Server mit mehreren Mandanten

Beim Task-Server werden der zu verwendende Mandant und Login-Name des Benutzers, unter dem der Task-Server laufen soll, in die + Runlevel-Scripte benutzt werden (siehe oben).

2.7.5. Task-Server mit mehreren Mandanten

Beim Task-Server werden der zu verwendende Mandant und Login-Name des Benutzers, unter dem der Task-Server laufen soll, in die Konfigurationsdatei geschrieben. Hat man mehrere Mandanten, muss man auch mehrere Konfigurationsdateien anlegen.

Die Konfigurationsdatei ist eine Kopie der Datei kivitendo.conf, wo in der Kategorie [task_server] die gewünschten Werte für client und login eingetragen werden.

Der alternative Task-Server wird dann mit folgendem Befehl gestartet:

./scripts/task_server.pl -c config/DATEINAME.conf
\ No newline at end of file diff --git a/doc/html/ch02s08.html b/doc/html/ch02s08.html index e62e24de3..a797c78b6 100644 --- a/doc/html/ch02s08.html +++ b/doc/html/ch02s08.html @@ -43,7 +43,7 @@ [authentication].

Sollen die Benutzerpasswörter in der Authentifizierungsdatenbank gespeichert werden, so muss der Parameter module den Wert DB enthalten. In diesem Fall können sowohl - der Administrator als auch die Benutzer selber ihre Psaswörter in + der Administrator als auch die Benutzer selber ihre Passwörter in kivitendo ändern.

Soll hingegen ein externer LDAP- oder Active-Directory-Server benutzt werden, so muss der Parameter module auf LDAP gesetzt werden. In diesem Fall müssen diff --git a/doc/html/ch03s03.html b/doc/html/ch03s03.html index d1274f478..356eded7a 100644 --- a/doc/html/ch03s03.html +++ b/doc/html/ch03s03.html @@ -121,7 +121,7 @@ template_meta.language.description

Beschreibung der verwendeten Sprache

template_meta.language.template_code -

Vorlagenürzel der verwendeten Sprache, identisch mit dem +

Vorlagenkürzel der verwendeten Sprache, identisch mit dem Kürzel das im Dateinamen verwendetet wird.

template_meta.language.output_numberformat

Zahlenformat der verwendeten Sprache in der Form @@ -574,7 +574,7 @@ invdate

Rechnungsdatum

invnumber -

Rechnungsnummer

3.3.10. Variablen in anderen Vorlagen

3.3.10.1. Einführung

Die Variablen in anderen Vorlagen sind ähnlich wie in der +

Rechnungsnummer

3.3.10. Variablen in anderen Vorlagen

3.3.10.1. Einführung

Die Variablen in anderen Vorlagen sind ähnlich wie in der Rechnung. Allerdings heißen die Variablen, die mit inv beginnen, jetzt anders. Bei den Angeboten fangen sie mit quo für "quotation" an: diff --git a/doc/html/ch04.html b/doc/html/ch04.html index 6df5000c2..5dbb3ffb4 100644 --- a/doc/html/ch04.html +++ b/doc/html/ch04.html @@ -1,6 +1,6 @@ - Kapitel 4. Entwicklerdokumentation

Kapitel 4. Entwicklerdokumentation

4.1. Globale Variablen

4.1.1. Wie sehen globale Variablen in Perl aus?

Globale Variablen liegen in einem speziellen namespace namens + Kapitel 4. Entwicklerdokumentation

Kapitel 4. Entwicklerdokumentation

4.1. Globale Variablen

4.1.1. Wie sehen globale Variablen in Perl aus?

Globale Variablen liegen in einem speziellen namespace namens "main", der von überall erreichbar ist. Darüber hinaus sind bareword globs global und die meisten speziellen Variablen sind... speziell.

Daraus ergeben sich folgende Formen:

@@ -25,7 +25,7 @@ $PACKAGE::form.

local $form

Alle Änderungen an $form werden am Ende - des scopes zurückgesetzt

4.1.2. Warum sind globale Variablen ein Problem?

Das erste Problem ist FCGI™.

+ des scopes zurückgesetzt

4.1.2. Warum sind globale Variablen ein Problem?

Das erste Problem ist FCGI™.

SQL-Ledger™ hat fast alles im globalen namespace abgelegt, und erwartet, dass es da auch wiederzufinden ist. Unter FCGI™ müssen diese Sachen aber wieder @@ -39,7 +39,7 @@ dies hat, seit der Einführung, u.a. schon so manche langwierige Bug-Suche verkürzt. Da globale Variablen aber implizit mit Package angegeben werden, werden die nicht geprüft, und somit kann sich - schnell ein Tippfehler einschleichen.

4.1.3. Kanonische globale Variablen

Um dieses Problem im Griff zu halten gibt es einige wenige + schnell ein Tippfehler einschleichen.

4.1.3. Kanonische globale Variablen

Um dieses Problem im Griff zu halten gibt es einige wenige globale Variablen, die kanonisch sind, d.h. sie haben bestimmte vorgegebenen Eigenschaften, und alles andere sollte anderweitig umhergereicht werden.

Diese Variablen sind im Moment die folgenden neun:

  • @@ -62,7 +62,7 @@ $::request

Damit diese nicht erneut als Müllhalde missbraucht werden, im Folgenden eine kurze Erläuterung der bestimmten vorgegebenen - Eigenschaften (Konventionen):

4.1.3.1. $::form

  • Ist ein Objekt der Klasse + Eigenschaften (Konventionen):

    4.1.3.1. $::form

    • Ist ein Objekt der Klasse "Form"

    • Wird nach jedem Request gelöscht

    • Muss auch in Tests und Konsolenscripts vorhanden sein.

    • Enthält am Anfang eines Requests die Requestparameter vom User

    • Kann zwar intern über Requestgrenzen ein Datenbankhandle @@ -110,7 +110,7 @@ push @{ $form->{TEMPLATE_ARRAYS}{number} }, $form->{"partnumber_$i"}; push @{ $form->{TEMPLATE_ARRAYS}{description} }, $form->{"description_$i"}; # ... -}

    4.1.3.2. %::myconfig

    • Das einzige Hash unter den globalen Variablen

    • Wird spätestens benötigt wenn auf die Datenbank +}

    4.1.3.2. %::myconfig

    • Das einzige Hash unter den globalen Variablen

    • Wird spätestens benötigt wenn auf die Datenbank zugegriffen wird

    • Wird bei jedem Request neu erstellt.

    • Enthält die Userdaten des aktuellen Logins

    • Sollte nicht ohne Filterung irgendwo gedumpt werden oder extern serialisiert werden, weil da auch der Datenbankzugriff für diesen user drinsteht.

    • Enthält unter anderem Listenbegrenzung vclimit, @@ -122,10 +122,10 @@ überwiegend die Daten, die sich unter Programm -> Einstellungen befinden, bzw. die Informationen über den Benutzer die über die - Administrator-Schnittstelle eingegeben wurden.

    4.1.3.3. $::locale

    • Objekt der Klasse "Locale"

    • Wird pro Request erstellt

    • Muss auch für Tests und Scripte immer verfügbar + Administrator-Schnittstelle eingegeben wurden.

    4.1.3.3. $::locale

    • Objekt der Klasse "Locale"

    • Wird pro Request erstellt

    • Muss auch für Tests und Scripte immer verfügbar sein.

    • Cached intern über Requestgrenzen hinweg benutzte Locales

    Lokalisierung für den aktuellen User. Alle Übersetzungen, - Zahlen- und Datumsformatierungen laufen über dieses Objekt.

    4.1.3.4. $::lxdebug

    • Objekt der Klasse "LXDebug"

    • Wird global gecached

    • Muss immer verfügbar sein, in nahezu allen + Zahlen- und Datumsformatierungen laufen über dieses Objekt.

    4.1.3.4. $::lxdebug

    • Objekt der Klasse "LXDebug"

    • Wird global gecached

    • Muss immer verfügbar sein, in nahezu allen Funktionen

    $::lxdebug stellt Debuggingfunktionen bereit, wie "enter_sub" und @@ -135,14 +135,14 @@ "message" und "dump" mit denen man flott Informationen ins Log (tmp/kivitendo-debug.log) packen kann.

    Beispielsweise so:

    $main::lxdebug->message(0, 'Meine Konfig:' . Dumper (%::myconfig));
    -$main::lxdebug->message(0, 'Wer bin ich? Kunde oder Lieferant:' . $form->{vc});

    4.1.3.5. $::auth

    • Objekt der Klasse "SL::Auth"

    • Wird global gecached

    • Hat eine permanente DB Verbindung zur Authdatenbank

    • Wird nach jedem Request resettet.

    +$main::lxdebug->message(0, 'Wer bin ich? Kunde oder Lieferant:' . $form->{vc});

    4.1.3.5. $::auth

    • Objekt der Klasse "SL::Auth"

    • Wird global gecached

    • Hat eine permanente DB Verbindung zur Authdatenbank

    • Wird nach jedem Request resettet.

    $::auth stellt Funktionen bereit um die Rechte des aktuellen Users abzufragen. Obwohl diese Informationen vom aktuellen User abhängen wird das Objekt aus Geschwindigkeitsgründen nur einmal angelegt und dann nach jedem Request kurz resettet.

    Dieses Objekt kapselt auch den gerade aktiven Mandanten. Dessen Einstellungen können über $::auth->client abgefragt werden; Rückgabewert ist ein Hash mit den Werten aus der Tabelle - auth.clients.

    4.1.3.6. $::lx_office_conf

    • Objekt der Klasse + auth.clients.

    4.1.3.6. $::lx_office_conf

    • Objekt der Klasse "SL::LxOfficeConf"

    • Global gecached

    • Repräsentation der config/kivitendo.conf[.default]-Dateien

    Globale Konfiguration. Configdateien werden zum Start gelesen und danach nicht mehr angefasst. Es ist derzeit nicht geplant, dass @@ -152,16 +152,16 @@ $main::lxdebug->message(0, 'Wer bin ich? Kunde oder Lieferant:' . $form->{ file_name = /tmp/kivitendo-debug.log

    ist der Key file im Programm als $::lx_office_conf->{debug}{file} erreichbar.

    [Warnung]Warnung

    Zugriff auf die Konfiguration erfolgt im Moment über - Hashkeys, sind also nicht gegen Tippfehler abgesichert.

    4.1.3.7. $::instance_conf

    • Objekt der Klasse + Hashkeys, sind also nicht gegen Tippfehler abgesichert.

4.1.3.7. $::instance_conf

  • Objekt der Klasse "SL::InstanceConfiguration"

  • wird pro Request neu erstellt

Funktioniert wie $::lx_office_conf, speichert aber Daten die von der Instanz abhängig sind. Eine Instanz ist hier eine Mandantendatenbank. Beispielsweise überprüft

$::instance_conf->get_inventory_system eq 'perpetual'

- ob die berüchtigte Bestandsmethode zur Anwendung kommt.

4.1.3.8. $::dispatcher

  • Objekt der Klasse + ob die berüchtigte Bestandsmethode zur Anwendung kommt.

4.1.3.8. $::dispatcher

  • Objekt der Klasse "SL::Dispatcher"

  • wird pro Serverprozess erstellt.

  • enthält Informationen über die technische Verbindung zum Server

Der dritte Punkt ist auch der einzige Grund warum das Objekt global gespeichert wird. Wird vermutlich irgendwann in einem anderen - Objekt untergebracht.

4.1.3.9. $::request

  • Hashref (evtl später Objekt)

  • Wird pro Request neu initialisiert.

  • Keine Unterstruktur garantiert.

+ Objekt untergebracht.

4.1.3.9. $::request

  • Hashref (evtl später Objekt)

  • Wird pro Request neu initialisiert.

  • Keine Unterstruktur garantiert.

$::request ist ein generischer Platz um Daten "für den aktuellen Request" abzulegen. Sollte nicht für action at a distance benutzt werden, sondern um lokales memoizing zu @@ -174,20 +174,20 @@ file_name = /tmp/kivitendo-debug.log

ist der Key f $::request

  • Muss ich von anderen Teilen des Programms lesend drauf zugreifen? Dann $::request, aber Zugriff über - Wrappermethode

  • 4.1.4. Ehemalige globale Variablen

    Die folgenden Variablen waren einmal im Programm, und wurden - entfernt.

    4.1.4.1. $::cgi

    • war nötig, weil cookie Methoden nicht als + Wrappermethode

    4.1.4. Ehemalige globale Variablen

    Die folgenden Variablen waren einmal im Programm, und wurden + entfernt.

    4.1.4.1. $::cgi

    • war nötig, weil cookie Methoden nicht als Klassenfunktionen funktionieren

    • Aufruf als Klasse erzeugt Dummyobjekt was im Klassennamespace gehalten wird und über Requestgrenzen leaked

    • liegt jetzt unter $::request->{cgi} -

    4.1.4.2. $::all_units

    • war nötig, weil einige Funktionen in Schleifen zum Teil +

    4.1.4.2. $::all_units

    • war nötig, weil einige Funktionen in Schleifen zum Teil ein paar hundert mal pro Request eine Liste der Einheiten brauchen, und de als Parameter durch einen Riesenstack von Funktionen geschleift werden müssten.

    • Liegt jetzt unter $::request->{cache}{all_units}

    • Wird nur in AM->retrieve_all_units() gesetzt oder - gelesen.

    4.1.4.3. %::called_subs

    • wurde benutzt um callsub deep recursions + gelesen.

    4.1.4.3. %::called_subs

    • wurde benutzt um callsub deep recursions abzufangen.

    • Wurde entfernt, weil callsub nur einen Bruchteil der möglichen Rekursioenen darstellt, und da nie welche auftreten.

    • komplette recursion protection wurde entfernt.

    \ No newline at end of file diff --git a/doc/html/index.html b/doc/html/index.html index b6d658d2b..b37a9d543 100644 --- a/doc/html/index.html +++ b/doc/html/index.html @@ -1,9 +1,9 @@ - kivitendo 3.3.0: Installation, Konfiguration, Entwicklung

    kivitendo 3.3.0: Installation, Konfiguration, Entwicklung


    Inhaltsverzeichnis

    1. Aktuelle Hinweise
    2. Installation und Grundkonfiguration
    2.1. Übersicht
    2.2. Benötigte Software und Pakete
    2.2.1. Betriebssystem
    2.2.2. Benötigte Perl-Pakete installieren
    2.3. Manuelle Installation des Programmpaketes
    2.4. kivitendo-Konfigurationsdatei
    2.4.1. Einführung
    2.4.2. Abschnitte und Parameter
    2.4.3. Versionen vor 2.6.3
    2.5. Anpassung der PostgreSQL-Konfiguration
    2.5.1. Zeichensätze/die Verwendung von Unicode/UTF-8
    2.5.2. Änderungen an Konfigurationsdateien
    2.5.3. Erweiterung für servergespeicherte Prozeduren
    2.5.4. Datenbankbenutzer anlegen
    2.6. Webserver-Konfiguration
    2.6.1. Grundkonfiguration mittels CGI
    2.6.2. Konfiguration für FastCGI/FCGI
    2.6.3. Weitergehende Konfiguration
    2.7. Der Task-Server
    2.7.1. Verfügbare und notwendige Konfigurationsoptionen
    2.7.2. Automatisches Starten des Task-Servers beim Booten
    2.7.3. Wie der Task-Server gestartet und beendet wird
    2.7.4. Task-Server mit mehreren Mandanten
    2.8. Benutzerauthentifizierung und Administratorpasswort
    2.8.1. Grundlagen zur Benutzerauthentifizierung
    2.8.2. Administratorpasswort
    2.8.3. Authentifizierungsdatenbank
    2.8.4. Passwortüberprüfung
    2.8.5. Name des Session-Cookies
    2.8.6. Anlegen der Authentifizierungsdatenbank
    2.9. Mandanten-, Benutzer- und Gruppenverwaltung
    2.9.1. Zusammenhänge
    2.9.2. Mandanten, Benutzer und Gruppen
    2.9.3. Datenbanken anlegen
    2.9.4. Gruppen anlegen
    2.9.5. Benutzer anlegen
    2.9.6. Mandanten anlegen
    2.10. Drucker- und Systemverwaltung
    2.10.1. Druckeradministration
    2.10.2. System sperren / entsperren
    2.11. E-Mail-Versand aus kivitendo heraus
    2.11.1. Versand über lokalen E-Mail-Server
    2.11.2. Versand über einen SMTP-Server
    2.12. Drucken mit kivitendo
    2.12.1. Vorlagenverzeichnis anlegen
    2.12.2. Der Druckvorlagensatz RB
    2.12.3. f-tex
    2.12.4. Der Druckvorlagensatz rev-odt
    2.12.5. Allgemeine Hinweise zu LaTeX Vorlagen
    2.13. OpenDocument-Vorlagen
    2.14. Konfiguration zur Einnahmenüberschussrechnung/Bilanzierung: + kivitendo 3.3.0: Installation, Konfiguration, Entwicklung

    kivitendo 3.3.0: Installation, Konfiguration, Entwicklung


    Inhaltsverzeichnis

    1. Aktuelle Hinweise
    2. Installation und Grundkonfiguration
    2.1. Übersicht
    2.2. Benötigte Software und Pakete
    2.2.1. Betriebssystem
    2.2.2. Benötigte Perl-Pakete installieren
    2.3. Manuelle Installation des Programmpaketes
    2.4. kivitendo-Konfigurationsdatei
    2.4.1. Einführung
    2.4.2. Abschnitte und Parameter
    2.4.3. Versionen vor 2.6.3
    2.5. Anpassung der PostgreSQL-Konfiguration
    2.5.1. Zeichensätze/die Verwendung von Unicode/UTF-8
    2.5.2. Änderungen an Konfigurationsdateien
    2.5.3. Erweiterung für servergespeicherte Prozeduren
    2.5.4. Datenbankbenutzer anlegen
    2.6. Webserver-Konfiguration
    2.6.1. Grundkonfiguration mittels CGI
    2.6.2. Konfiguration für FastCGI/FCGI
    2.6.3. Weitergehende Konfiguration
    2.7. Der Task-Server
    2.7.1. Verfügbare und notwendige Konfigurationsoptionen
    2.7.2. Konfiguration der Mandanten für den Task-Server
    2.7.3. Automatisches Starten des Task-Servers beim Booten
    2.7.4. Wie der Task-Server gestartet und beendet wird
    2.7.5. Task-Server mit mehreren Mandanten
    2.8. Benutzerauthentifizierung und Administratorpasswort
    2.8.1. Grundlagen zur Benutzerauthentifizierung
    2.8.2. Administratorpasswort
    2.8.3. Authentifizierungsdatenbank
    2.8.4. Passwortüberprüfung
    2.8.5. Name des Session-Cookies
    2.8.6. Anlegen der Authentifizierungsdatenbank
    2.9. Mandanten-, Benutzer- und Gruppenverwaltung
    2.9.1. Zusammenhänge
    2.9.2. Mandanten, Benutzer und Gruppen
    2.9.3. Datenbanken anlegen
    2.9.4. Gruppen anlegen
    2.9.5. Benutzer anlegen
    2.9.6. Mandanten anlegen
    2.10. Drucker- und Systemverwaltung
    2.10.1. Druckeradministration
    2.10.2. System sperren / entsperren
    2.11. E-Mail-Versand aus kivitendo heraus
    2.11.1. Versand über lokalen E-Mail-Server
    2.11.2. Versand über einen SMTP-Server
    2.12. Drucken mit kivitendo
    2.12.1. Vorlagenverzeichnis anlegen
    2.12.2. Der Druckvorlagensatz RB
    2.12.3. f-tex
    2.12.4. Der Druckvorlagensatz rev-odt
    2.12.5. Allgemeine Hinweise zu LaTeX Vorlagen
    2.13. OpenDocument-Vorlagen
    2.14. Konfiguration zur Einnahmenüberschussrechnung/Bilanzierung: EUR
    2.14.1. Einführung
    2.14.2. Konfigurationsparameter
    2.14.3. Festlegen der Parameter
    2.14.4. Bemerkungen zur Bestandsmethode
    2.14.5. Bekannte Probleme
    2.15. SKR04 19% Umstellung für innergemeinschaftlichen Erwerb
    2.15.1. Einführung
    2.15.2. Konto 3804 manuell anlegen
    2.16. Verhalten des Bilanzberichts
    2.17. Einstellungen pro Mandant
    2.18. kivitendo ERP verwenden
    3. Features und Funktionen
    3.1. Wiederkehrende Rechnungen
    3.1.1. Einführung
    3.1.2. Konfiguration
    3.1.3. Spezielle Variablen
    3.1.4. Auflisten
    3.1.5. Erzeugung der eigentlichen Rechnungen
    3.1.6. Erste Rechnung für aktuellen Monat erstellen
    3.2. Bankerweiterung
    3.2.1. Einführung
    3.3. Dokumentenvorlagen und verfügbare Variablen
    3.3.1. Einführung
    3.3.2. Variablen ausgeben
    3.3.3. Verwendung in Druckbefehlen
    3.3.4. Anfang und Ende der Tags verändern
    3.3.5. Zuordnung von den Dateinamen zu den Funktionen
    3.3.6. Sprache, Drucker und E-Mail
    3.3.7. Allgemeine Variablen, die in allen Vorlagen vorhanden sind
    3.3.8. Variablen in Rechnungen
    3.3.9. Variablen in Mahnungen und Rechnungen über Mahngebühren
    3.3.10. Variablen in anderen Vorlagen
    3.3.11. Blöcke, bedingte Anweisungen und Schleifen
    3.3.12. Markup-Code zur Textformatierung innerhalb von - Formularen
    3.4. Excel-Vorlagen
    3.4.1. Zusammenfassung
    3.4.2. Bedienung
    3.4.3. Variablensyntax
    3.4.4. Einschränkungen
    3.5. Mandantenkonfiguration Lager
    4. Entwicklerdokumentation
    4.1. Globale Variablen
    4.1.1. Wie sehen globale Variablen in Perl aus?
    4.1.2. Warum sind globale Variablen ein Problem?
    4.1.3. Kanonische globale Variablen
    4.1.4. Ehemalige globale Variablen
    4.2. Entwicklung unter FastCGI
    4.2.1. Allgemeines
    4.2.2. Programmende und Ausnahmen
    4.2.3. Globale Variablen
    4.2.4. Performance und Statistiken
    4.3. SQL-Upgradedateien
    4.3.1. Einführung
    4.3.2. Format der Kontrollinformationen
    4.3.3. Format von in Perl geschriebenen Datenbankupgradescripten
    4.3.4. Hilfsscript dbupgrade2_tool.pl
    4.4. Translations and languages
    4.4.1. Introduction
    4.4.2. Character set
    4.4.3. File structure
    4.5. Die kivitendo-Test-Suite
    4.5.1. Einführung
    4.5.2. Voraussetzungen
    4.5.3. + Formularen
    3.4. Excel-Vorlagen
    3.4.1. Zusammenfassung
    3.4.2. Bedienung
    3.4.3. Variablensyntax
    3.4.4. Einschränkungen
    3.5. Mandantenkonfiguration Lager
    4. Entwicklerdokumentation
    4.1. Globale Variablen
    4.1.1. Wie sehen globale Variablen in Perl aus?
    4.1.2. Warum sind globale Variablen ein Problem?
    4.1.3. Kanonische globale Variablen
    4.1.4. Ehemalige globale Variablen
    4.2. Entwicklung unter FastCGI
    4.2.1. Allgemeines
    4.2.2. Programmende und Ausnahmen
    4.2.3. Globale Variablen
    4.2.4. Performance und Statistiken
    4.3. SQL-Upgradedateien
    4.3.1. Einführung
    4.3.2. Format der Kontrollinformationen
    4.3.3. Format von in Perl geschriebenen Datenbankupgradescripten
    4.3.4. Hilfsscript dbupgrade2_tool.pl
    4.4. Translations and languages
    4.4.1. Introduction
    4.4.2. Character set
    4.4.3. File structure
    4.5. Die kivitendo-Test-Suite
    4.5.1. Einführung
    4.5.2. Voraussetzungen
    4.5.3. Existierende Tests ausführen
    4.5.4. Bedeutung der verschiedenen Test-Scripte diff --git a/doc/kivitendo-Dokumentation.pdf b/doc/kivitendo-Dokumentation.pdf index 17030387d6ed866a591a7081c836e3c8e8257e2b..b880133355a5661e6bcef143754263ca133b4432 100644 GIT binary patch delta 116943 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 z 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 delta 118481 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 = { 'Do not check for duplicates' => 'Nicht nach Dubletten suchen', 'Do not link to a project.' => 'Nicht mit einem Projekt verknüpfen.', 'Do not modify this position' => 'Diese Position nicht verändern', + 'Do not run the task server for this client' => 'Task-Server nicht für diesen Mandanten ausführen', 'Do not set default buchungsgruppe' => 'Nie Standardbuchungsgruppe setzen', 'Do not set this bin' => 'Diesen Lagerplatz nicht setzen', 'Do not set this comment' => 'Diesen Kommentar nicht setzen', @@ -2261,6 +2262,7 @@ $self->{texts} = { 'Rule for vendor must not be empty' => 'Eine Lieferantenbedingung darf nicht leer sein', 'Run JavaScript unit tests' => 'JavaScript-Unit-Tests ausführen', 'Run at' => 'Ausgeführt um', + 'Run task server for this client with the following user' => 'Task-Server für diesen Mandanten mit der folgenden BenutzerIn ausführen', 'Run tests' => 'Tests ausführen', 'SAVED' => 'Gespeichert', 'SAVED FOR DUNNING' => 'Gespeichert', @@ -2893,6 +2895,7 @@ $self->{texts} = { 'The unit in row %d has been used in the meantime and cannot be changed anymore.' => 'Die Einheit in Zeile %d wurde in der Zwischenzeit benutzt und kann nicht mehr geändert werden.', 'The units have been saved.' => 'Die Einheiten wurden gespeichert.', 'The user can chose which client to connect to during login.' => 'Bei der Anmeldung kann der Benutzer auswählen, welchen Mandanten er benutzen möchte.', + 'The user cannot be deleted as it is used in the following clients: #1' => 'Die BenutzerIn kann nicht gelöscht werden, da sie für die folgenden Mandanten benötigt wird: #1', 'The user could not be deleted.' => 'Der Benutzer konnte nicht gelöscht werden.', 'The user group could not be deleted.' => 'Die Benutzergurppe konnte nicht gelöscht werden.', 'The user group has been created.' => 'Die Benutzergruppe wurde erstellt.', diff --git a/scripts/task_server.pl b/scripts/task_server.pl index 661c19a76..1bcb719c9 100755 --- a/scripts/task_server.pl +++ b/scripts/task_server.pl @@ -32,6 +32,7 @@ use File::Spec; use List::Util qw(first); use POSIX qw(setuid setgid); use SL::Auth; +use SL::DB::AuthClient; use SL::DB::BackgroundJob; use SL::BackgroundJob::ALL; use SL::Form; @@ -48,14 +49,17 @@ our %lx_office_conf; sub debug { return if !$lx_office_conf{task_server}->{debug}; - $::lxdebug->message(0, @_); + $::lxdebug->message(LXDebug::DEBUG1(), join(' ', "task server:", @_)); +} + +sub enabled_clients { + return SL::DB::Manager::AuthClient->get_all(where => [ '!task_server_user_id' => undef ]); } sub initialize_kivitendo { - chdir $exe_dir; + my ($client) = @_; - my $login = $lx_office_conf{task_server}->{login}; - my $client = $lx_office_conf{task_server}->{client}; + chdir $exe_dir; package main; @@ -64,7 +68,13 @@ sub initialize_kivitendo { $::locale = Locale->new($::lx_office_conf{system}->{language}); $::form = Form->new; $::auth = SL::Auth->new; - die "No client configured or no client found with the name/ID '$client'" unless $::auth->set_client($client); + + return if !$client; + + $::auth->set_client($client->id); + + $::form->{__ERROR_HANDLER} = sub { die @_ }; + $::instance_conf = SL::InstanceConfiguration->new; $::request = SL::Request->new( cgi => CGI->new({}), @@ -76,10 +86,10 @@ sub initialize_kivitendo { $::auth->restore_session; $::auth->create_or_refresh_session; + my $login = $client->task_server_user->login; + die "cannot find user $login" unless %::myconfig = $::auth->read_user(login => $login); die "cannot find locale for user $login" unless $::locale = Locale->new($::myconfig{countrycode} || $::lx_office_conf{system}->{language}); - - $::form->{__ERROR_HANDLER} = sub { die @_ }; } sub cleanup_kivitendo { @@ -93,7 +103,13 @@ sub cleanup_kivitendo { $::form = undef; $::myconfig = (); $::request = undef; + $::auth = undef; +} + +sub clean_before_sleeping { Form::disconnect_standard_dbh; + SL::DBConnect::Cache->disconnect_all_and_clear; + SL::DB->db_cache->clear; } sub drop_privileges { @@ -155,17 +171,23 @@ sub notify_on_failure { $params{client} = $::auth->client; - my $body; - $template->process($cfg->{email_template}, \%params, \$body); - - Mailer->new( - from => $cfg->{email_from}, - to => $email_to, - subject => $cfg->{email_subject}, - content_type => 'text/plain', - charset => 'utf-8', - message => Encode::decode('utf-8', $body), - )->send; + eval { + my $body; + $template->process($cfg->{email_template}, \%params, \$body); + + Mailer->new( + from => $cfg->{email_from}, + to => $email_to, + subject => $cfg->{email_subject}, + content_type => 'text/plain', + charset => 'utf-8', + message => Encode::decode('utf-8', $body), + )->send; + + 1; + } or do { + debug("Sending a failure notification failed with an exception: $@"); + }; } sub gd_preconfig { @@ -173,31 +195,49 @@ sub gd_preconfig { SL::LxOfficeConf->read($self->{configfile}); - die "Missing section [task_server] in config file" unless $lx_office_conf{task_server}; - die "Missing key 'login' in section [task_server] in config file" unless $lx_office_conf{task_server}->{login}; - die "Missing key 'client' in section [task_server] in config file" unless $lx_office_conf{task_server}->{client}; + die "Missing section [task_server] in config file" unless $lx_office_conf{task_server}; + + if ($lx_office_conf{task_server}->{login} || $lx_office_conf{task_server}->{client}) { + print STDERR <id . " (" . $client->name . ")"); - debug("Retrieving jobs"); + my $ok = eval { + initialize_kivitendo($client); my $jobs = SL::DB::Manager::BackgroundJob->get_all_need_to_run; - debug(" Found: " . join(' ', map { $_->package_name } @{ $jobs })) if @{ $jobs }; + if (@{ $jobs }) { + debug(" Executing the following jobs: " . join(' ', map { $_->package_name } @{ $jobs })); + } else { + debug(" No jobs to execute found"); + } foreach my $job (@{ $jobs }) { # Provide fresh global variables in case legacy code modifies # them somehow. - initialize_kivitendo(); + initialize_kivitendo($client); my $history = $job->run; @@ -214,9 +254,17 @@ sub gd_run { } cleanup_kivitendo(); + } +} + +sub gd_run { + while (1) { + run_once_for_all_clients(); debug("Sleeping"); + clean_before_sleeping(); + my $seconds = 60 - (localtime)[0]; if (!eval { local $SIG{'ALRM'} = sub { diff --git a/sql/Pg-upgrade2-auth/client_task_server.sql b/sql/Pg-upgrade2-auth/client_task_server.sql new file mode 100644 index 000000000..e636dbf0a --- /dev/null +++ b/sql/Pg-upgrade2-auth/client_task_server.sql @@ -0,0 +1,5 @@ +-- @tag: client_task_server +-- @description: Einstellungen, um eine Task-Server-Instanz für mehrere Mandanten laufen zu lassen +-- @depends: release_3_3_0 +ALTER TABLE auth.clients ADD COLUMN task_server_user_id INTEGER; +ALTER TABLE auth.clients ADD FOREIGN KEY (task_server_user_id) REFERENCES auth.user (id); diff --git a/templates/webpages/admin/edit_client.html b/templates/webpages/admin/edit_client.html index 1fe42a1e9..01363b854 100644 --- a/templates/webpages/admin/edit_client.html +++ b/templates/webpages/admin/edit_client.html @@ -49,6 +49,13 @@ [% L.input_tag("client.dbpasswd", SELF.client.dbpasswd, class="contains_dbsettings", type="password") %] + + + [% LxERP.t8("Run task server for this client with the following user") %] + + [% L.select_tag("client.task_server_user_id", SELF.all_users, with_empty=1, empty_title=LxERP.t8("Do not run the task server for this client"), title_key="login", default=SELF.client.task_server_user_id) %] + +

    diff --git a/templates/webpages/admin/edit_user.html b/templates/webpages/admin/edit_user.html index 3a8f12959..8b3bde11e 100644 --- a/templates/webpages/admin/edit_user.html +++ b/templates/webpages/admin/edit_user.html @@ -1,5 +1,5 @@ [%- USE HTML %] -[%- USE L %][%- USE LxERP -%] +[%- USE L %][%- USE LxERP -%][%- USE JavaScript -%] [%- INCLUDE 'common/flash.html' %] @@ -157,7 +157,7 @@ [% L.button_tag("submit_with_action('save_user')", LxERP.t8("Save")) %] [% IF SELF.user.id %] [% L.button_tag("save_as_new()", LxERP.t8("Save as new")) %] - [% L.button_tag("submit_with_action('delete_user')", LxERP.t8("Delete"), confirm=LxERP.t8("Are you sure?")) %] + [% L.button_tag("submit_delete()", LxERP.t8("Delete"), confirm=LxERP.t8("Are you sure?")) %] [%- END %]

    @@ -170,6 +170,16 @@ $("#form").submit(); } + function submit_delete() { +[% SET used_for_task_server_in_clients = SELF.is_user_used_for_task_server(SELF.user) %] +[% IF used_for_task_server_in_clients %] + alert('[% LxERP.t8('The user cannot be deleted as it is used in the following clients: #1', used_for_task_server_in_clients) | js %]'); + return false; +[% ELSE %] + submit_with_action('delete_user'); +[% END %] + } + function save_as_new() { $("#user_id").val(""); submit_with_action("save_user"); -- 2.20.1