8
0
Fork 0

add 3.3.1.0 ioncube PHP 5.6-7.0

Dieser Commit ist enthalten in:
Daniel Seifert 2021-03-16 10:10:19 +01:00
Ursprung be11ec2932
Commit fa92195c95
Signiert von: DanielS
GPG-Schlüssel-ID: 8A7C4C6ED1915C6F
323 geänderte Dateien mit 27221 neuen und 18684 gelöschten Zeilen

Datei anzeigen

@ -17,7 +17,7 @@
{
"name": "D3 Data Development (Inh. Thomas Dartsch)",
"email": "info@shopmodule.com",
"homepage": "http://www.d3data.de",
"homepage": "https://www.d3data.de",
"role": "Owner"
}
],
@ -34,10 +34,12 @@
"require": {
"php": "5.6 - 7.0", "ext-ionCube-Loader": "*",
"oxid-esales/oxideshop-ce": "6.0 - 6.3",
"d3/modcfg": "^5.3.1.000",
"d3/modcfg": "^5.3.6.000",
"league/flysystem": "^1.0",
"splitbrain/php-cli": "^1.1",
"html2text/html2text": "^4.2"
"html2text/html2text": "^4.2",
"d3/oxid-sql-logger": "^1.2.2",
"ext-mbstring": "*"
},
"require-dev": {
"mikey179/vfsstream": "^1.4"
@ -48,7 +50,9 @@
},
"autoload": {
"psr-4": {
"D3\\Ordermanager\\": "../../../source/modules/d3/ordermanager"
"D3\\Ordermanager\\": "../../../source/modules/d3/ordermanager",
"D3\\Ordermanager\\publicDir\\": "../../../source/modules/d3/ordermanager/public",
"D3\\Ordermanager\\tests\\unit\\publicDir\\": "../../../source/modules/d3/ordermanager/tests/unit/public"
}
},
"bin": ["src/bin/d3_ordermanager_cron"]

Datei anzeigen

@ -2,6 +2,38 @@
title: Changelog
---
## 3.3.1.0 - (2021-03-10)
** Hinweis für kleinere Versions-Upgrades: Es gibt einige rückwärts-inkompatible Änderungen an dieser Version. **
### Added
- erweiterte Konfigurationsprüfung integriert
- Ausführungsabbruch mit passenden Fehlermeldungen bei Konfigurationsfehlern eingefügt
- Debugausgaben werden auch bei Konsolenausführung gezeigt
- statische Auswahllisten sind erweiterbar
- Prüfung und Behandlung von Kompilierungsfehlern aufgrund fehlerhafter Smarty-Codes
- Abfangen leerer Inhalte auf Grund von falsch encodeten Templatedateien
- Profiling für CLI und GUI integriert
- Historyeinträge können optional angelegt werden
### Changed
- Bedingungen- und Aktioneninterfaces aktualisiert
- Response-Script für automatische Ausführung als abgekündigt markiert
- Exportdateinamen wird für gültige Dateinamen überarbeitet
- Modul verwendet strict types
- Remark anlegen optimiert
### Fixed
- Bedingung "gesetzte Rechnungsnummer" korrigiert
- Endlosschleifen bei Ausführung von finalizeOrder- und orderSave-Trigger verhindert
- Ordnernamen, die nicht aus Übersetzungen kommen, zeigen keine Fehlermeldung
- nicht generierbare Statusmails korrigiert
- Debugmodus verwendet SQL-Logger für optimierte Anzeige
- nicht geladenes Manager-Objekt im Admincontroller korrigiert
- "Einträge als erledigt markieren" ignoriert "Einträge nicht als erledigt markieren"-Option
---
## 3.3.0.0 - (2020-08-20)
### Added

Datei anzeigen

@ -1,9 +1,9 @@
{
"title": "<i class='fab fa-d3 d3fa-color-blue'></i> Auftragsmanager",
"moduleversion": "3.3.0.0",
"moduleversion": "3.3.1.0",
"titledesc": "für den Oxid eShop",
"author": "D³ Data Development",
"moduledate": "20.08.2020",
"moduledate": "09.03.2021",
"editors": "",
"tagline": "",
"image": "",
@ -65,6 +65,7 @@
"modulename" : "<i class='fab fa-d3 d3fa-color-blue'></i> Auftragsmanager",
"menutitle" : "<i class='fab fa-d3 d3fa-color-blue'></i> Auftragsmanager",
"modulefolder" : "ordermanager",
"metadataident" : "d3ordermanager",
"modcfgident" : "d3_ordermanager",
"composerident" : "d3/ordermanager"
},

Datei anzeigen

@ -6,9 +6,9 @@ Das Modul **{$modulename}** erhalten Sie in verschiedenen Editionen mit untersch
## Funktionsumfang
| | Free-Edition | Standard-Edition | Premium-Edition |
| | Free-Edition | Standard-Edition | Premium-Edition |
|-----------------------------------|:-------------:|:-----------------:|:-----------------:|
| Anzahl möglicher Aufgaben | 5 | 25 | beliebig |
| Anzahl möglicher Aufgaben | 5 | 25 | beliebig |
| vor-Ausführung-Script möglich | | | X |
| nach-Ausführung-Script möglich | | | X |
@ -23,53 +23,53 @@ Das Modul **{$modulename}** erhalten Sie in verschiedenen Editionen mit untersch
## Bedingungen
| | Free-Edition | Standard-Edition | Premium-Edition |
| | Free-Edition | Standard-Edition | Premium-Edition |
|---------------------------------------------------|:-------------:|:-----------------:|:-----------------:|
| ab (inklusive) Bestellnummer | X | X | X |
| bis (inklusive) Bestellnummer | X | X | X |
| Zeitraum (1) | X | X | X |
| Zeitraum (2) | X | X | X |
| nicht gesetztes... | X | X | X |
| aus diesen Wochentagen | X | X | X |
| bei diesen Zahlarten | X | X | X |
| bei diesen Versandarten | X | X | X |
| bei gesetztem Trackingcode | X | X | X |
| bei stornierter Bestellung | X | X | X |
| bei nicht stornierter Bestellung | X | X | X |
| bei stornierten Artikeln innerhalb der Bestellung | X | X | X |
| Bestellsumme | X | X | X |
| hat Rechnungsnummer erhalten | X | X | X |
| Transaktionsstatus | X | X | X |
| bei verwendeter Währung | X | X | X |
| bei verwendeter Sprache | X | X | X |
| in einem der Ordner | X | X | X |
| nicht in einem der Ordner | X | X | X |
| enthält selektierte Artikel (1) | X | X | X |
| enthält selektierte Artikel (2) | X | X | X |
| enthält nicht selektierte Artikel (1) | X | X | X |
| enthält nicht selektierte Artikel (2) | X | X | X |
| Suchmuster zur Filterung der Mailadresse | X | X | X |
| Liefer- bzw. Rechnungsadresse aus Land | X | X | X |
| Kunde ist in Gruppe | X | X | X |
| Kunde ist nicht in Gruppe | X | X | X |
| Methode des Auftragslistenobjekts ausführen | | | X |
| Bestellungsfeld auf Wert prüfen | | | X |
| andere Aufgabe | | | X |
| ab (inklusive) Bestellnummer | X | X | X |
| bis (inklusive) Bestellnummer | X | X | X |
| Zeitraum (1) | X | X | X |
| Zeitraum (2) | X | X | X |
| nicht gesetztes... | X | X | X |
| aus diesen Wochentagen | X | X | X |
| bei diesen Zahlarten | X | X | X |
| bei diesen Versandarten | X | X | X |
| bei gesetztem Trackingcode | X | X | X |
| bei stornierter Bestellung | X | X | X |
| bei nicht stornierter Bestellung | X | X | X |
| bei stornierten Artikeln innerhalb der Bestellung | X | X | X |
| Bestellsumme | X | X | X |
| hat Rechnungsnummer erhalten | X | X | X |
| Transaktionsstatus | X | X | X |
| bei verwendeter Währung | X | X | X |
| bei verwendeter Sprache | X | X | X |
| in einem der Ordner | X | X | X |
| nicht in einem der Ordner | X | X | X |
| enthält selektierte Artikel (1) | X | X | X |
| enthält selektierte Artikel (2) | X | X | X |
| enthält nicht selektierte Artikel (1) | X | X | X |
| enthält nicht selektierte Artikel (2) | X | X | X |
| Suchmuster zur Filterung der Mailadresse | X | X | X |
| Liefer- bzw. Rechnungsadresse aus Land | X | X | X |
| Kunde ist in Gruppe | X | X | X |
| Kunde ist nicht in Gruppe | X | X | X |
| Methode des Auftragslistenobjekts ausführen | | | X |
| Bestellungsfeld auf Wert prüfen | | | X |
| andere Aufgabe | | | X |
## Aktionen
| | Free-Edition | Standard-Edition | Premium-Edition |
| | Free-Edition | Standard-Edition | Premium-Edition |
|-----------------------------------------------|:-------------:|:-----------------:|:-----------------:|
| E-Mail senden | X | X | X |
| Aufträge in Ordner verschieben | X | X | X |
| Aufträge stornieren | | X | X |
| Versendet-am Datum setzen | | X | X |
| Bezahlt-am Datum setzen | | X | X |
| Versandkosten ändern | | X | X |
| Rabatte ändern | | X | X |
| PDF generieren (aus OXID Invoice PDF) | | X | X |
| PDF generieren (aus (D3) PDF Dokumente) | | X | X |
| Feld mit Wert füllen | | | X |
| Kundengruppe zuordnen / entfernen | | X | X |
| Export in Liste | | X | X |
| Individualaktionen / -bedingungen definieren | | | X |
| E-Mail senden | X | X | X |
| Aufträge in Ordner verschieben | X | X | X |
| Aufträge stornieren | | X | X |
| Versendet-am Datum setzen | | X | X |
| Bezahlt-am Datum setzen | | X | X |
| Versandkosten ändern | | X | X |
| Rabatte ändern | | X | X |
| PDF generieren (aus OXID Invoice PDF) | | X | X |
| PDF generieren (aus (D3) PDF Dokumente) | | X | X |
| Feld mit Wert füllen | | | X |
| Kundengruppe zuordnen / entfernen | | X | X |
| Export in Liste | | X | X |
| Individualaktionen / -bedingungen definieren | | | X |

Datei anzeigen

@ -3,20 +3,24 @@ title: Systemanforderungen
---
* PHP Version
* 5.6.x bis 7.3.x
* 5.6.x bis 7.1.x
* PHP Decoder
* installierter ionCube Loader
* Shopversionen / -editionen
* OXID eShop Community Edition (CE), Professional Edition (PE) oder Enterprise Edition (EE) in Compilation Version
* Shopeditionen
* OXID eShop Community Edition (CE)
* OXID eShop Professional Edition (PE)
* OXID eShop Enterprise Edition (EE)
* OXID eShop B2B Edition
* Shopversionen
* OXID eShop in Compilation Version
* 6.0.x
* 6.1.x
* 6.2.x
* Themes
* Das Modul benötigt keine Einbindung ins Frontend und ist damit von diesen Themes unabhängig.
* (D3) Modul-Connector ([kostenfrei bei D3 erhältlich](https://www.oxidmodule.com/connector/)) ab Version 5.3.1.0
* (D3) Modul-Connector ([kostenfrei bei D3 erhältlich](https://www.oxidmodule.com/connector/)) ab Version 5.3.6.0
* Installation via [Composer](https://getcomposer.org)
* mindestens ein freier Cronjob zur automatischen Ausführung angelegter Aufgaben (optional)
Beachten Sie, dass die Ihnen vorliegende Modulversion entsprechend für **PHP 5.6**, **PHP 7.0**, **PHP 7.1**, **PHP 7.2** oder **PHP 7.3** sowie dem auf Ihrem Server vorhandenen Decoder (**ionCube Loader**) kompatibel ist. Im Zweifelsfall kontaktieren Sie uns und nennen den für Ihren Shop genutzten Decoder und die PHP-Version.
Beachten Sie, dass die Ihnen vorliegende Modulversion entsprechend für Ihre genutzte PHP-Version sowie dem auf Ihrem Server vorhandenen Decoder (**ionCube Loader**) kompatibel ist. Im Zweifelsfall kontaktieren Sie uns und nennen den für Ihren Shop genutzten Decoder und die PHP-Version.
Kontrollieren Sie bitte auch, ob diese Modulversion für die von Ihnen eingesetzte Shopedition (Community Edition (CE), Professional Edition (PE) oder Enterprise Edition (EE)) ausgelegt ist.

Datei anzeigen

@ -2,18 +2,18 @@
title: Kompatibilität mit anderen Modulen
---
Der **{$modulename}** integriert die Erweiterung "PDF Dokumente" von (D3) Data Development, sofern diese im Shop installiert wurde. Diese Integration wurde für die Version 1.0.0 des "PDF Dokumente"-Moduls entwickelt.
Das Modul **{$modulename}** integriert die Erweiterung "PDF Dokumente" von (D3) Data Development, sofern diese im Shop installiert wurde. Diese Integration wurde für die Version 1.0.0 des "PDF Dokumente"-Moduls entwickelt.
Der **{$modulename}** ist natürlich auch ohne das "PDF Dokumente"-Modul einsetzbar, kann jedoch dann keine PDF-Exporte verwenden.
Das Modul **{$modulename}** ist natürlich auch ohne das "PDF Dokumente"-Modul einsetzbar, kann jedoch dann keine PDF-Exporte verwenden.
---
Der **{$modulename}** integriert die Erweiterung "Invoice PDF" von OXID eSales AG, sofern diese im Shop installiert wurde. Diese Integration wurde für die Version 2.0.0 des "Invoice PDF"-Moduls entwickelt.
Das Modul **{$modulename}** integriert die Erweiterung "Invoice PDF" von OXID eSales AG, sofern diese im Shop installiert wurde. Diese Integration wurde für die Version 2.0.0 des "Invoice PDF"-Moduls entwickelt.
Der **{$modulename}** ist natürlich auch ohne das "Invoice PDF"-Modul einsetzbar, kann jedoch dann keine PDF-Exporte verwenden.
Das Modul **{$modulename}** ist natürlich auch ohne das "Invoice PDF"-Modul einsetzbar, kann jedoch dann keine PDF-Exporte verwenden.
---
Der **{$modulename}** integriert die Erweiterung "WYSIWYG Editor + Mediathek" von OXID eSales AG & digidesk - media solutions, sofern diese im Shop installiert wurde. Diese Integration wurde für die Version 2.2.0 des "WYSIWYG Editor + Mediathek"-Moduls entwickelt.
Das Modul **{$modulename}** integriert die Erweiterung "WYSIWYG Editor + Mediathek" von OXID eSales AG & digidesk - media solutions, sofern diese im Shop installiert wurde. Diese Integration wurde für die Version 2.2.0 des "WYSIWYG Editor + Mediathek"-Moduls entwickelt.
Der **{$modulename}** ist natürlich auch ohne das "WYSIWYG Editor + Mediathek"-Modul einsetzbar.
Das Modul **{$modulename}** ist natürlich auch ohne das "WYSIWYG Editor + Mediathek"-Modul einsetzbar.

Datei anzeigen

@ -2,12 +2,14 @@
title: Modul zur Installation hinzufügen
---
### **auf der Kommandozeile**
Führen Sie in der Konsole im Hauptverzeichnis Ihres Shops (oberhalb des `source`- und `vendor`-Verzeichnisses) diesen Befehl aus, um das Modul **{$modulename}** zur Installation hinzuzufügen:
```bash
php composer require {$composerident}:^{$moduleversion} --update-no-dev
```
> [!] Achten Sie darauf, dass die Installation über Composer mit derselben PHP-Version erfolgt, in der auch Ihr Shop installiert ist. Sie erhalten sonst unpassende Modulpakete.
> [!] Achten Sie darauf, dass Composer für die Installation die selbe PHP-Version verwendet, in der auch Ihr Shop ausgeführt wird. Sie erhalten sonst möglicherweise unpassende Modulpakete.
> [i] Benötigt Ihre Installation einen anderen Aufruf von Composer, ändern Sie den Befehl bitte entsprechend ab. Für weitere Optionen dieses Befehls lesen Sie bitte die [Dokumentation von Composer](https://getcomposer.org/doc/03-cli.md#require).

Datei anzeigen

@ -2,6 +2,18 @@
title: Modul im Shop aktivieren
---
### **im Adminbereich**
Aktivieren Sie das Modul über den Shopadmin unter [ Erweiterungen ] -> [ Module ]. Klicken Sie nach Auswahl von [ {$menutitle} ] auf den Button [ Aktivieren ].
> [!] **Enterprise Editon**: Achten Sie darauf, dass das Modul in weiteren Shops (Mall) ebenfalls aktiviert werden muss, um dessen Funktion dort auch zu nutzen.
### **oder auf der Kommandozeile**
Alternativ können Sie die Modulaktivierung auch auf der Kommandozeile (CLI) im Hauptverzeichnis Ihres Shops (oberhalb des `source`- und `vendor`-Verzeichnisses) durchführen.
```bash
./vendor/bin/oe-console oe:module:activate {$metadataident}
```
> [!] **Enterprise Edition**: Achten Sie darauf, dass das Modul in weiteren Shops (Mall) ebenfalls aktiviert werden muss, um dessen Funktion dort auch zu nutzen.
> [i] **Enterprise Edition**: Zur Aktivierung in einem bestimmten Shopmandanten verwenden Sie das `--shop-id`-Argument (`...oe-console --shop-id 1 oe:module...`)

Datei anzeigen

@ -2,10 +2,20 @@
title: Shopanpassungen installieren
---
### **im Adminbereich**
Direkt nach der Modulaktivierung startet der Assistent, der Sie durch die Shopanpassung führt. Darin können Sie verschiedene Optionen der Installation wählen.
Den Installationsassistenten finden Sie auch unter den Menüpunkten [ Admin ] -> [ (D3) Module ] -> [ Modul-Connector ] -> [ Modulverwaltung ] -> [ Modulinstallation ].
Bei tiefgreifenden Änderungen an Ihrem Shop (z.B. Hinzufügen weiterer Sprachen oder Mandanten) rufen Sie den Installationsassistenten bitte erneut auf, um dann eventuell notwendige Nacharbeiten für das Modul ausführen zu lassen.
Möchten Sie die Änderungen manuell installieren, können Sie sich über diesen Assistenten ebenfalls eine Checkliste erstellen.
Möchten Sie die Änderungen manuell installieren, können Sie sich über diesen Assistenten ebenfalls eine Checkliste erstellen.
### **oder auf der Kommandozeile**
Der Installationsassistent steht Ihnen ebenfalls auf der Kommandozeile (CLI) zur Verfügung. Führen Sie diesen Befehl im Hauptverzeichnis Ihres Shops (oberhalb des `source`- und `vendor`-Verzeichnisses) aus:
```bash
./vendor/bin/d3modules_install
```

Datei anzeigen

@ -2,8 +2,20 @@
title: TMP-Ordner leeren
---
### **im Adminbereich**
Leeren Sie das Verzeichnis `tmp` über [ Admin ] -> [ (D3) Module ] -> [ Modul-Connector ] -> [ TMP leeren ]. Markieren Sie [ komplett leeren ] und klicken auf [ TMP leeren ].
Sofern die Views nicht automatisch aktualisiert werden, führen Sie dies noch durch.
> [i] Erfordert Ihre Installation eine andere Vorgehensweise zum Leeren des Caches oder zum Aktualisieren der Datenbank-Viewtabellen, führen Sie diese bitte aus.
### **oder auf der Kommandozeile**
Alle TMP-leeren-Aktionen stehen Ihnen ebenfalls auf der Kommandozeile (CLI) zur Verfügung. Führen Sie diesen Befehl im Hauptverzeichnis Ihres Shops (oberhalb des `source`- und `vendor`-Verzeichnisses) aus:
```bash
./vendor/bin/d3cleartmp
```
> [i] Erfordert Ihre Installation eine andere Vorgehensweise zum Leeren des Caches oder zum Aktualisieren der Datenbank-Viewtabellen, führen Sie diese bitte aus.
> [i] Beim Kommandozeilenaufruf werden Ihnen weitere Optionen gezeigt, mit denen Sie die Aktion gezielt steuern können.

Datei anzeigen

@ -2,6 +2,8 @@
title: Lizenzschlüssel eintragen
---
### **im Adminbereich**
Das Modul verwendet Lizenzschlüssel, um die Lizenzverwaltung für Sie und auch für uns einfacher zu gestalten. Hierbei haben Sie je nach Modul die Wahl zwischen einer kostenfreien Testlizenz und einer Lizenz für den Einsatz im Livebetrieb.
Speziell der **{$modulename}** wird in unterschiedlichen (teilweise kostenfreien) Editionen für den Livebetrieb angeboten. Besuchen Sie unseren [Moduleshop](https://www.oxidmodule.com/), um mehr darüber zu erfahren.

Datei anzeigen

@ -4,8 +4,13 @@ Title: Schnellstart per Composer
## Schnellstart per Composer
### **auf der Kommandozeile**
```bash
php composer require {$composerident}:^{$moduleversion} --update-no-dev
./vendor/bin/oe-console oe:module:activate {$metadataident}
./vendor/bin/d3modules_install
./vendor/bin/d3cleartmp
```
Detailliertere Angaben zur Installation entnehmen Sie bitte den folgenden Seiten.

Datei anzeigen

@ -2,7 +2,7 @@
title: Wann kann ein Update ausgeführt werden?
---
Die Updatenaweisungen können verwendet werden, wenn dieses Modul schon früher mit Hilfe von Composer installiert wurde.
Die Updateanweisungen können verwendet werden, wenn dieses Modul schon früher mit Hilfe von Composer installiert wurde.
Wurde die Installation bisher noch nicht durchgeführt oder die Installation wurde **nicht** über Composer
durchgeführt (weil das Modul dies z.B. früher nicht unterstützte), verwenden Sie bitte die Beschreibung unter [Neuinstallation](../020_Neuinstallation/_index.md).

Datei anzeigen

@ -2,4 +2,18 @@
title: Modul deaktivieren
---
Deaktivieren Sie das Modul über den Shopadmin unter [ Erweiterungen ] -> [ Module ]. Klicken Sie nach Auswahl von [ {$menutitle} ] auf den Button [ Deaktivieren ].
### **im Adminbereich**
Deaktivieren Sie das Modul unter [ Erweiterungen ] -> [ Module ]. Klicken Sie nach Auswahl von [ {$menutitle} ] auf den Button [ Deaktivieren ].
### **oder auf der Kommandozeile**
Alternativ können Sie die Moduldeaktivierung auch über die Kommandozeile (CLI) im Hauptverzeichnis Ihres Shops (oberhalb des `source`- und `vendor`-Verzeichnisses) durchführen.
```bash
./vendor/bin/oe-console oe:module:deactivate {$metadataident}
```
> [!] **Enterprise Edition**: Achten Sie darauf, dass das Modul in allen weiteren Shops (Mall) ebenfalls deaktiviert werden muss.
> [i] **Enterprise Edition**: Zur Deaktivierung in einem bestimmten Shopmandanten verwenden Sie das `--shop-id`-Argument (`...oe-console --shop-id 1 oe:module...`)

Datei anzeigen

@ -2,6 +2,8 @@
title: Dateien erneuern
---
### **auf der Kommandozeile**
Starten Sie die Konsole Ihres Webservers und wechseln in das Hauptverzeichnis Ihres
Shops (oberhalb des `source`- und `vendor`-Verzeichnisses). Führen Sie dort diesen Befehl aus:
@ -11,6 +13,6 @@ php composer require {$composerident}:^{$moduleversion} --update-no-dev
Im weiteren Ablauf werden Sie gefragt, ob die Moduldateien überschrieben werden sollen. Bestätigen Sie dies für den Eintrag `{$composerident}`.
> [!] Achten Sie darauf, dass die Installation über Composer mit derselben PHP-Version erfolgt, in der auch Ihr Shop installiert ist. Sie erhalten sonst unpassende Modulpakete.
> [!] Achten Sie darauf, dass Composer für die Installation die selbe PHP-Version verwendet, in der auch Ihr Shop ausgeführt wird. Sie erhalten sonst möglicherweise unpassende Modulpakete.
> [i] Benötigt Ihre Installation einen anderen Aufruf von Composer, ändern Sie den Befehl bitte entsprechend ab. Für weitere Optionen dieses Befehls lesen Sie bitte die [Dokumentation von Composer](https://getcomposer.org/doc/03-cli.md#require).

Datei anzeigen

@ -2,4 +2,18 @@
title: Modulinformationen aktualisieren
---
Wechseln Sie im Adminbereich zu [ Erweiterungen ] -> [ Module ]. Klicken Sie nach Auswahl von [ {$menutitle} ] auf den Button [ Aktivieren ].
### **im Adminbereich**
Wechseln Sie im Adminbereich zu [ Erweiterungen ] -> [ Module ]. Klicken Sie nach Auswahl von [ {$menutitle} ] auf den Button [ Aktivieren ].
### **oder auf der Kommandozeile**
Alternativ können Sie die Modulaktivierung auch über die Kommandozeile (CLI) im Hauptverzeichnis Ihres Shops (oberhalb des `source`- und `vendor`-Verzeichnisses) durchführen.
```bash
./vendor/bin/oe-console oe:module:activate {$metadataident}
```
> [!] **Enterprise Edition**: Achten Sie darauf, dass das Modul in weiteren Shops (Mall) ebenfalls aktiviert werden muss, um dessen Funktion dort auch zu nutzen.
> [i] **Enterprise Edition**: Zur Aktivierung in einem bestimmten Shopmandanten verwenden Sie das `--shop-id`-Argument (`...oe-console --shop-id 1 oe:module...`)

Datei anzeigen

@ -2,10 +2,20 @@
title: Shopanpassungen installieren
---
### **im Adminbereich**
Ob Shopanpassungen notwendig sind, ist von der Versionsänderung des Moduls abhängig.
Möglicherweise sehen Sie nach dem Neuaktivieren des Moduls den Installationsassistent, der Sie durch die Änderungen führt. Folgen Sie dann den einzelnen Schritten. Möchten Sie die Änderungen manuell installieren, können Sie sich über diesen Assistenten ebenfalls eine Checkliste erstellen.
Wird der Assistent nicht gezeigt (Sie sehen wieder die Modulübersicht), waren keine Anpassungen am Shop notwendig.
Ob erforderliche Updates ausgeführt werden sollen, können Sie jederzeit im Adminbereich unter [ (D3) Module ] -> [ Modul-Connector ] -> [ Modulverwaltung ] -> [ Modulinstallation ] prüfen.
Ob erforderliche Updates ausgeführt werden sollen, können Sie jederzeit im Adminbereich unter [ (D3) Module ] -> [ Modul-Connector ] -> [ Modulverwaltung ] -> [ Modulinstallation ] prüfen.
### **oder auf der Kommandozeile**
Der Installationsassistent steht Ihnen ebenfalls auf der Kommandozeile (CLI) zur Verfügung. Führen Sie diesen Befehl im Hauptverzeichnis Ihres Shops (oberhalb des `source`- und `vendor`-Verzeichnisses) aus:
```bash
./vendor/bin/d3modules_install
```

Datei anzeigen

@ -2,8 +2,20 @@
title: TMP-Ordner leeren
---
### **im Adminbereich**
Leeren Sie das Verzeichnis `tmp` über [ Admin ] -> [ (D3) Module ] -> [ Modul-Connector ] -> [ TMP leeren ]. Markieren Sie [ komplett leeren ] und klicken auf [ TMP leeren ].
Sofern die Views nicht automatisch aktualisiert werden, führen Sie dies noch durch.
> [i] Erfordert Ihre Installation eine andere Vorgehensweise zum Leeren des Caches oder zum Aktualisieren der Datenbank-Viewtabellen, führen Sie diese bitte aus.
### **oder auf der Kommandozeile**
Alle TMP-leeren-Aktionen stehen Ihnen ebenfalls auf der Kommandozeile (CLI) zur Verfügung. Führen Sie diesen Befehl im Hauptverzeichnis Ihres Shops (oberhalb des `source`- und `vendor`-Verzeichnisses) aus:
```bash
./vendor/bin/d3cleartmp
```
> [i] Erfordert Ihre Installation eine andere Vorgehensweise zum Leeren des Caches oder zum Aktualisieren der Datenbank-Viewtabellen, führen Sie diese bitte aus.
> [i] Beim Kommandozeilenaufruf werden Ihnen weitere Optionen gezeigt, mit denen Sie die Aktion gezielt steuern können.

Datei anzeigen

@ -2,4 +2,6 @@
title: Lizenzschlüssel aktualisieren
---
### **im Adminbereich**
Wird für die neue Modulversion ein aktualisierter Lizenzschlüssel benötigt, tragen Sie diesen im Adminbereich unter [ (D3) Module ] -> [ Modul-Connector ] -> [ Modulverwaltung ] ein. Klappen Sie dazu den Eintrag des jeweiligen Moduls aus und starten den Lizenzassistent.

Datei anzeigen

@ -4,8 +4,8 @@ title: Schnellstart
Das Modul **{$modulename}** bringt einen umfangreichen Adminbereich mit, in dem Sie die Konfigurationseinstellungen des Moduls setzen können. Über das Menü [ (D3) Module ] -> [{$menutitle}] -> [Einstellungen] erreichen Sie die Einstellseiten. Arbeiten Sie idealerweise die Optionen einmal durch. Hinweise zu den einzelnen Einstellungen finden Sie in dem dahinter stehenden Fragezeichenfeld. Durch einen Klick darauf öffnet sich der Hinweistext.
Richten Sie nun die Aufgaben ein, die der „Auftragsmanager“ für Sie durchführen soll. In der Standardinstallation finden Sie einige Aufgaben als Beispiel vorbereitet. Darin können Sie sich die möglichen Konfigurationen ansehen, diese auf Ihre Bedürfnisse anpassen und auch neue Aufgaben anlegen.
Richten Sie nun die Aufgaben ein, die der "Auftragsmanager" für Sie durchführen soll. In der Standardinstallation finden Sie einige Aufgaben als Beispiel vorbereitet. Darin können Sie sich die möglichen Konfigurationen ansehen, diese auf Ihre Bedürfnisse anpassen und auch neue Aufgaben anlegen.
Testen Sie die Aufgaben mit dem modulweiten Debug-Schalter ([ (D3) Module ] -> [ Auftragsmanager ] -> [ Einstellungen ]) und / oder der Mailsende-Option an jeder Aufgabe ([ (D3) Module ] -> [ Auftragsmanager ] -> [ Aufgaben ] -> [ Stamm ]). Diese Optionen sind genauer im jeweils dahinter stehenden Fragezeichenfeld erklärt. Aktivieren Sie die Ausführung der Aufgaben bitte erst, wenn Sie sicher sind, dass alle Optionen richtig sind. Wir übernehmen keine Gewährleistung für evtl. falsche oder verlorene Daten bei fehlerhaft eingestellten Aufgaben.
Weitere Details zur Einrichtung des „Auftragsmanagers“ entnehmen Sie bitte dessen [Handbuch zum Modul](../manual/010_Handbuch.md).
Weitere Details zur Einrichtung des "Auftragsmanagers" entnehmen Sie bitte dessen [Handbuch zum Modul](../manual/010_Handbuch.md).

Datei anzeigen

@ -2,5 +2,18 @@
title: Modul deaktivieren
---
Deaktivieren Sie das Modul **{$modulename}** über den Shopadmin [ Erweiterungen ] -> [ Module ]. Klicken Sie nach Auswahl von [ {$menutitle} ] auf den Button [ Deaktivieren ].
### **im Adminbereich**
Deaktivieren Sie das Modul unter [ Erweiterungen ] -> [ Module ]. Klicken Sie nach Auswahl von [ {$menutitle} ] auf den Button [ Deaktivieren ].
### **oder auf der Kommandozeile**
Alternativ können Sie die Moduldeaktivierung auch über die Kommandozeile (CLI) im Hauptverzeichnis Ihres Shops (oberhalb des `source`- und `vendor`-Verzeichnisses) durchführen.
```bash
./vendor/bin/oe-console oe:module:deactivate {$metadataident}
```
> [!] **Enterprise Edition**: Achten Sie darauf, dass das Modul in allen weiteren Shops (Mall) ebenfalls deaktiviert werden muss.
> [i] **Enterprise Edition**: Zur Deaktivierung in einem bestimmten Shopmandanten verwenden Sie das `--shop-id`-Argument (`...oe-console --shop-id 1 oe:module...`)

Datei anzeigen

@ -2,12 +2,12 @@
title: Modul aus der Installation entfernen
---
### **auf der Kommandozeile**
Starten Sie die Konsole Ihres Webservers und wechseln in das Hauptverzeichnis Ihres Shops (oberhalb des `source`- und `vendor`-Verzeichnisses). Führen Sie Sie dort diesen Befehl aus:
```Bash
php composer remove {$composerident} --no-update
```
> [!] Achten Sie darauf, dass die Installation über Composer mit derselben PHP-Version erfolgt, in der auch Ihr Shop installiert ist. Sie erhalten sonst unpassende Modulpakete.
> [i] Benötigt Ihre Installation einen anderen Aufruf von Composer, ändern Sie den Befehl bitte entsprechend ab. Für weitere Optionen dieses Befehls lesen Sie bitte die [Dokumentation von Composer](https://getcomposer.org/doc/03-cli.md#require).
> [i] Benötigt Ihre Installation einen anderen Aufruf von Composer, ändern Sie den Befehl bitte entsprechend ab. Für weitere Optionen dieses Befehls lesen Sie bitte die [Dokumentation von Composer](https://getcomposer.org/doc/03-cli.md#remove).

Datei anzeigen

@ -6,6 +6,5 @@ Löschen Sie den Ordner `{$modulefolder}` und seine enthaltenen Elemente aus dem
Bestätigen Sie anschließend im Shopadmin unter [ Erweiterungen ] -> [ Module ] -> [ Installierte Shop-Module ] die Nachricht:
> Es gibt registrierte Erweiterungen im eShop, deren Verzeichnis nicht vorhanden ist.
>
> Es gibt registrierte Erweiterungen im eShop, deren Verzeichnis nicht vorhanden ist.
> Möchten Sie alle Modulinformationen einschließlich Konfigurationseinstellungen und Blockinformationen für Templates löschen?

Datei anzeigen

@ -2,8 +2,20 @@
title: TMP-Ordner leeren
---
### **im Adminbereich**
Leeren Sie das Verzeichnis `tmp` über [ Admin ] -> [ (D3) Module ] -> [ Modul-Connector ] -> [ TMP leeren ]. Markieren Sie [ komplett leeren ] und klicken auf [ TMP leeren ].
Sofern die Views nicht automatisch aktualisiert werden, führen Sie dies noch durch.
> [i] Erfordert Ihre Installation eine andere Vorgehensweise zum Leeren des Caches oder zum Aktualisieren der Datenbank-Viewtabellen, führen Sie diese bitte aus.
### **oder auf der Kommandozeile**
Alle TMP-leeren-Aktionen stehen Ihnen ebenfalls auf der Kommandozeile (CLI) zur Verfügung. Führen Sie diesen Befehl im Hauptverzeichnis Ihres Shops (oberhalb des `source`- und `vendor`-Verzeichnisses) aus:
```bash
./vendor/bin/d3cleartmp
```
> [i] Erfordert Ihre Installation eine andere Vorgehensweise zum Leeren des Caches oder zum Aktualisieren der Datenbank-Viewtabellen, führen Sie diese bitte aus.
> [i] Beim Kommandozeilenaufruf werden Ihnen weitere Optionen gezeigt, mit denen Sie die Aktion gezielt steuern können.

Datei anzeigen

@ -8,4 +8,4 @@ Setzen Sie das [ Modul aktiv ]: Ohne den Aktiv-Haken können Sie das Modul zwar
Über [ Debug aktiv ] lassen sich Informationen während der Ausführung des Moduls ausgeben, die Ihnen und uns nützliche Hinweise zu einer möglichen Fehlersuche geben. Im Normalbetrieb sollte dieser Haken nicht gesetzt sein, da sonst die Aktionen nicht ausgeführt werden.
In der [ Logging ]-Auswahl stellen Sie ein, ob und wie viele Protokollinformationen der Auftragsmanager mitschreiben soll. Die Daten helfen uns bei einer möglichen Ursachensuche, wenn die Auftragsabarbeitung doch einmal nicht wie gewünscht arbeiten sollte. Die Protokolleinträge werden ausschließlich in Ihrer Installation abgelegt. Treffen Sie bei der Entscheidung den Kompromiss zwischen einem ausreichenden Protokoll und dem Speicherplatzbedarf. Im Regelfall ist die Einstellung „Fehler mitschreiben“ ausreichend.
In der [ Logging ]-Auswahl stellen Sie ein, ob und wie viele Protokollinformationen der Auftragsmanager mitschreiben soll. Die Daten helfen uns bei einer möglichen Ursachensuche, wenn die Auftragsabarbeitung doch einmal nicht wie gewünscht arbeiten sollte. Die Protokolleinträge werden ausschließlich in Ihrer Installation abgelegt. Treffen Sie bei der Entscheidung den Kompromiss zwischen einem ausreichenden Protokoll und dem Speicherplatzbedarf. Im Regelfall ist die Einstellung "Fehler mitschreiben" ausreichend.

Datei anzeigen

@ -8,4 +8,10 @@ Setzen Sie hier die Cronjob-Ausführung aktiv, wenn Sie die automatische Abarbei
Tragen Sie auch die Anzahl der Bestellungen ein, die pro Cronjob-Aufruf abgearbeitet werden dürfen. Die Menge ist begrenzt, da auch ein Cronjob nur eine vom Server vorgegebene Zeit zur Abarbeitung hat. Jede Bestellung benötigt ebenfalls etwas Zeit. Je nach Anzahl der aufgelaufenen Bestellungen und der auszuführenden Aufgaben sollte diese Anzahl justiert werden. Reicht die maximal nutzbare Anzahl der Bestellungen nicht aus, lassen Sie den Cronjob einfach mehrmals laufen (z.B. alle 2 Stunden).
Das Cronjob-Skript können Sie (und jeder Andere auch) zur Einrichtung oder zur Kontrolle im Browser aufrufen. Neben den serverseitigen Sicherheitsmaßnahmen sollten Sie hier ein Passwort vergeben, mit dem das Skript ausschließlich gestartet werden kann. Ohne das Passwort verweigert der Auftragsmanager seine Arbeit. So stellen Sie sicher, dass kein Unbefugter diese Ausführung startet.
### Scriptaufruf über externe URL (abgekündigt für automatische Ausführung)
Das manuell ausführbare Cronjob-Skript können Sie (und jeder Andere auch) zur Einrichtung oder zur Kontrolle im Browser aufrufen. Neben den serverseitigen Sicherheitsmaßnahmen sollten Sie hier ein Passwort vergeben, mit dem das Skript ausschließlich gestartet werden kann. Ohne das Passwort verweigert der Auftragsmanager seine Arbeit. So stellen Sie sicher, dass kein Unbefugter diese Ausführung startet. Dieses Script ist abgekündigt und sollte für die automatische Ausführung nicht mehr verwendet werden. Bitte verwenden Sie statt dessen das Konsolenscript.
### Scriptaufruf über Konsolenbefehl
Das automatisiert aufrufbare Cronscript lässt sich nur vom Server aus direkt aufrufen und benötigt daher kein Passwort. Rufen Sie `./vendor/bin/d3_ordermanager_cron` im Shop-Root-Ordner auf, um weitere Informationen zu den Ausführungsmöglichkeiten zu erhalten. Neben dem Ausführungsstart können Sie sich darüber auch Statusinformation zu den Aufgaben oder der Installation abfragen.

Datei anzeigen

@ -6,9 +6,9 @@ Der Auftragsmanager stellt verschiedene Cronjobs zur Verfügung. Je nach Einrich
Für jeden verfügbaren Cronjob sehen Sie in den Einstellungen die für Einrichtung benötigten Informationen:
Den Link mit allen erforderlichen Parametern für den manuellen Aufruf des Bearbeitungsskripts finden Sie in der Zeile „externer Link“. Über den blauen Button können Sie die Ausführung in einem neuen Browser-Tab sofort starten.
Den Shellaufruf mit allen erforderlichen Parametern des Ausführungsskripts finden Sie in der Zeile "interner Cronaufruf". Direkt darunter finden Sie die Möglichkeit, passende Shell-Scripte für die Einrichtung Ihrer Cronjobs zu erstellen.
Direkt darunter finden Sie den Link, den Sie für die Einrichtung des Cronjobs benötigen. Dort ist das Passwort nicht nötigt, da Ihr Server die Identifizierung selbst durchführen kann.
Mit dem "externen Link" können Sie die Ausführung manuell im Browser starten. Beachten Sie, dass dieser Link nicht für Cronjobaufrufe verwendet werden kann. Über den blauen Button können Sie die Ausführung in einem neuen Browser-Tab sofort starten. Dieser Link ist abgekündigt und wird in Zukunft entfernt werden. Ändern Sie Ihre Cronjobs bitte auf den "internen Link" ab.
Nachfolgend wird ebenfalls die Zeit gezeigt, zu der dieser Cronjob das letzte Mal erfolgreich gestartet wurde. Haben Sie Zweifel an der Cronjob-Einrichtung bei Ihrem Provider, können Sie dies hier kontrollieren.

Datei anzeigen

@ -6,7 +6,7 @@ Haben Sie die Bedingungen gesetzt, setzen Sie nun die Aktionen, die ausschließl
Auch hier verzichten wir in diesem Handbuch auf die Auflistung der Aktionen, da diese normalerweise selbsterklärend sind. Im Folgenden sind nun Besonderheiten aufgeführt, auf die Sie speziell achten sollten:
Beachten Sie, dass die Aktion „Löschen von Bestellungen“ nicht rückgängig gemacht werden kann. Lassen Sie bei solchen Aktionen erst während eines Testzeitraums die Infomails zusenden, mit denen Sie prüfen können, ob die Löschaktionen auch die richtigen Bestellungen betreffen. Wir übernehmen keine Gewährleistung bei Datenverlust auf Grund von unzureichend geprüften Aufgaben.
Beachten Sie, dass die Aktion "Löschen von Bestellungen" nicht rückgängig gemacht werden kann. Lassen Sie bei solchen Aktionen erst während eines Testzeitraums die Infomails zusenden, mit denen Sie prüfen können, ob die Löschaktionen auch die richtigen Bestellungen betreffen. Wir übernehmen keine Gewährleistung bei Datenverlust auf Grund von unzureichend geprüften Aufgaben.
Alle Aktionen, die sich auf Währungsmengen beziehen (z.B. Versandkosten oder Rabatte), verwenden die Angabe immer in der Shop-Hauptwährung. Rechnen Sie Angaben in Fremdwährung für die Aktionen daher bitte immer um.
@ -15,20 +15,20 @@ vorgenommen.
Beim Versand von Mails können Sie als Quelle Ihres Mailinhalts CMS-Bausteine aus Ihrem Shop oder komplette Templatedateien verwenden. In beiden Möglichkeiten haben Sie die folgenden Variablen zur Verfügung, um die Mail zu individualisieren:
| Variable | Inhalt |
| Variable | Inhalt |
|-------------------|-----------------------------------------------------------------------------------------------------------------------|
| $oShop | enthält das Shop-Objekt und alle seine Möglichkeiten |
| $shop | enthält das Shop-Objekt und alle seine Möglichkeiten |
| $oViewConf | enthält das Shop-Objekt und alle seine Möglichkeiten |
| $oOrder | enthält das Bestellungen-Objekt und alle seine Möglichkeiten |
| $order | enthält das Bestellungen-Objekt und alle seine Möglichkeiten |
| $oUser | enthält das Benutzer-Objekt und alle seine Möglichkeiten |
| $user | enthält das Benutzer-Objekt und alle seine Möglichkeiten |
| $shopTemplateDir | enthält das Verzeichnis zum Template |
| $charset | enthält den Zeichensatz für die Mail |
| $basket | enthält das Warenkorb-Objekt und alle seine Möglichkeiten (erfordert, dass alle Artikel noch im Stamm vorhanden sind) |
| $payment | enthält das Bezahlarten-Objekt und alle seine Möglichkeiten |
| $oDelSet | enthält das Versandarten-Objekt und alle seine Möglichkeiten |
| $currency | enthält das Währungs-Objekt und alle seine Möglichkeiten |
| $oShop | enthält das Shop-Objekt und alle seine Möglichkeiten |
| $shop | enthält das Shop-Objekt und alle seine Möglichkeiten |
| $oViewConf | enthält das Shop-Objekt und alle seine Möglichkeiten |
| $oOrder | enthält das Bestellungen-Objekt und alle seine Möglichkeiten |
| $order | enthält das Bestellungen-Objekt und alle seine Möglichkeiten |
| $oUser | enthält das Benutzer-Objekt und alle seine Möglichkeiten |
| $user | enthält das Benutzer-Objekt und alle seine Möglichkeiten |
| $shopTemplateDir | enthält das Verzeichnis zum Template |
| $charset | enthält den Zeichensatz für die Mail |
| $basket | enthält das Warenkorb-Objekt und alle seine Möglichkeiten (erfordert, dass alle Artikel noch im Stamm vorhanden sind) |
| $payment | enthält das Bezahlarten-Objekt und alle seine Möglichkeiten |
| $oDelSet | enthält das Versandarten-Objekt und alle seine Möglichkeiten |
| $currency | enthält das Währungs-Objekt und alle seine Möglichkeiten |
Legen Sie die Templatedateien im auszuwählenden Ordner ab.

Datei anzeigen

@ -2,7 +2,7 @@
title: Cronjobs für unterschiedlich zu steuernde Aufgaben
---
Neu angelegte Aufgaben oder Aufgaben, denen Sie keine spezielle Cronjob-ID zugewiesen haben, erhalten standardmäßig immer die Cronjob-ID „0“ (Null). Noch nicht zugeordnete oder neu angelegte Aufgaben können Sie gesamt über diese Cronjob-ID steuern. Hierfür können Sie mit den in den Modul-Grundeinstellungen angezeigten Daten einen Cronjob einrichten, der diese Aufgaben automatisch ausführt.
Neu angelegte Aufgaben oder Aufgaben, denen Sie keine spezielle Cronjob-ID zugewiesen haben, erhalten standardmäßig immer die Cronjob-ID "0" (Null). Noch nicht zugeordnete oder neu angelegte Aufgaben können Sie gesamt über diese Cronjob-ID steuern. Hierfür können Sie mit den in den Modul-Grundeinstellungen angezeigten Daten einen Cronjob einrichten, der diese Aufgaben automatisch ausführt.
Häufig ist es jedoch der Fall, dass bestimmte Aufgaben nur zu besonderen Zeiten gestartet werden sollen. Beispiele sind:
@ -14,4 +14,4 @@ Weisen Sie dann diesen speziellen Aufgaben jeweils eine eigene Cronjob-ID zu. Di
Sobald Sie die Cronjob-ID an der Aufgabe gespeichert haben, werden Ihnen in den Grundeinstellungen des Moduls alle Informationen gezeigt, die Sie für die Einrichtung dieses zusätzlichen Cronjobs benötigen. An diesem Cronjob können Sie nun auch die neuen Ausführungszeiten direkt einstellen. Sofern Ihr Provider dies erfordert, legen Sie für jeden Cronjob eine separate .sh-Datei an (siehe [Aufgaben automatisch ausführen](050_Aufgaben_automatisch_ausfuehren.md)).
Vorherige Modulversionen verwendeten noch keine Cronjob-ID. Wird der Cronjob ohne ID aufgerufen, verwendet dieser automatisch die ID „0“ (Null). Eine Umarbeitung der bisherigen Einstellungen ist nicht nötig.
Vorherige Modulversionen verwendeten noch keine Cronjob-ID. Wird der Cronjob ohne ID aufgerufen, verwendet dieser automatisch die ID "0" (Null). Eine Umarbeitung der bisherigen Einstellungen ist nicht nötig.

Datei anzeigen

@ -72,16 +72,48 @@
<div class="Page__header">
<h1><a href="../changelog/Changelog.html">Changelog</a></h1>
<span class="ModifiedDate">
20.08.2020 </span>
16.03.2021 </span>
</div>
<div class="s-content">
<h2 id="page_3-3-0-0-2020-08-20">3.3.0.0 - (2020-08-20)</h2>
<h2 id="page_3-3-1-0-2021-03-10">3.3.1.0 - (2021-03-10)</h2>
<p>** Hinweis für kleinere Versions-Upgrades: Es gibt einige rückwärts-inkompatible Änderungen an dieser Version. **</p>
<h3 id="page_Added">Added</h3>
<ul>
<li>erweiterte Konfigurationsprüfung integriert</li>
<li>Ausführungsabbruch mit passenden Fehlermeldungen bei Konfigurationsfehlern eingefügt</li>
<li>Debugausgaben werden auch bei Konsolenausführung gezeigt</li>
<li>statische Auswahllisten sind erweiterbar</li>
<li>Prüfung und Behandlung von Kompilierungsfehlern aufgrund fehlerhafter Smarty-Codes</li>
<li>Abfangen leerer Inhalte auf Grund von falsch encodeten Templatedateien</li>
<li>Profiling für CLI und GUI integriert</li>
<li>Historyeinträge können optional angelegt werden</li>
</ul>
<h3 id="page_Changed">Changed</h3>
<ul>
<li>Bedingungen- und Aktioneninterfaces aktualisiert</li>
<li>Response-Script für automatische Ausführung als abgekündigt markiert</li>
<li>Exportdateinamen wird für gültige Dateinamen überarbeitet</li>
<li>Modul verwendet strict types</li>
<li>Remark anlegen optimiert</li>
</ul>
<h3 id="page_Fixed">Fixed</h3>
<ul>
<li>Bedingung &quot;gesetzte Rechnungsnummer&quot; korrigiert</li>
<li>Endlosschleifen bei Ausführung von finalizeOrder- und orderSave-Trigger verhindert</li>
<li>Ordnernamen, die nicht aus Übersetzungen kommen, zeigen keine Fehlermeldung</li>
<li>nicht generierbare Statusmails korrigiert</li>
<li>Debugmodus verwendet SQL-Logger für optimierte Anzeige</li>
<li>nicht geladenes Manager-Objekt im Admincontroller korrigiert</li>
<li>&quot;Einträge als erledigt markieren&quot; ignoriert &quot;Einträge nicht als erledigt markieren&quot;-Option</li>
</ul>
<hr />
<h2 id="page_3-3-0-0-2020-08-20">3.3.0.0 - (2020-08-20)</h2>
<h3 id="page_Added-2">Added</h3>
<ul>
<li>PDF-Dokumente können optional aus D³ PDF Dokumente Modul sowie auch aus OXID PDF Invoice Modul generiert werden</li>
</ul>
<h3 id="page_Changed">Changed</h3>
<h3 id="page_Changed-2">Changed</h3>
<ul>
<li>OXID Invoice PDF Modul ist keine Anforderung mehr</li>
<li>jeder ausgeführte Task wird auf Abbrüche kontrolliert, um Folgetasks weiter ausführen zu können</li>
@ -90,7 +122,7 @@
<li>Währung der Bestellung wird im Maileditor geladen, um passende Formatierung zu verwenden</li>
<li>umfangreicher Setupschritt wird nur noch einmalig ausgeführt</li>
</ul>
<h3 id="page_Fixed">Fixed</h3>
<h3 id="page_Fixed-2">Fixed</h3>
<ul>
<li>Dateinamen der PDF-Dokumente werden auf ungültige Zeichen geprüft und korrigiert</li>
<li>RemarkHandler verliert Informationen beim Ausführen von Cronjobs</li>

Datei anzeigen

@ -72,7 +72,7 @@
<div class="Page__header">
<h1><a href="../editions/Editionen.html">Editionen</a></h1>
<span class="ModifiedDate">
20.08.2020 </span>
16.03.2021 </span>
</div>
<div class="s-content">

Datei anzeigen

@ -48,8 +48,8 @@
<div class="details">
<div>Autor: D³ Data Development</div> <div>Stand: 20.08.2020</div>
<div>Version: 3.3.0.0</div>
<div>Autor: D³ Data Development</div> <div>Stand: 09.03.2021</div>
<div>Version: 3.3.1.0</div>
</div>
</div>

Datei anzeigen

@ -72,18 +72,18 @@
<div class="Page__header">
<h1><a href="../../installation/Anforderungen/Systemanforderungen.html">Anforderungen</a> <svg class="Page__header--separator" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 477.175 477.175"><path d="M360.73 229.075l-225.1-225.1c-5.3-5.3-13.8-5.3-19.1 0s-5.3 13.8 0 19.1l215.5 215.5-215.5 215.5c-5.3 5.3-5.3 13.8 0 19.1 2.6 2.6 6.1 4 9.5 4 3.4 0 6.9-1.3 9.5-4l225.1-225.1c5.3-5.2 5.3-13.8.1-19z"/></svg> <a href="../../installation/Anforderungen/Kompatibilitaet_mit_anderen_Modulen.html">Kompatibilität mit anderen Modulen</a></h1>
<span class="ModifiedDate">
20.08.2020 </span>
16.03.2021 </span>
</div>
<div class="s-content">
<p>Der <strong><i class='fab fa-d3 d3fa-color-blue'></i> Auftragsmanager</strong> integriert die Erweiterung &quot;PDF Dokumente&quot; von <i class='fab fa-d3 d3fa-color-blue'></i> Data Development, sofern diese im Shop installiert wurde. Diese Integration wurde für die Version 1.0.0 des &quot;PDF Dokumente&quot;-Moduls entwickelt.</p>
<p>Der <strong><i class='fab fa-d3 d3fa-color-blue'></i> Auftragsmanager</strong> ist natürlich auch ohne das &quot;PDF Dokumente&quot;-Modul einsetzbar, kann jedoch dann keine PDF-Exporte verwenden.</p>
<p>Das Modul <strong><i class='fab fa-d3 d3fa-color-blue'></i> Auftragsmanager</strong> integriert die Erweiterung &quot;PDF Dokumente&quot; von <i class='fab fa-d3 d3fa-color-blue'></i> Data Development, sofern diese im Shop installiert wurde. Diese Integration wurde für die Version 1.0.0 des &quot;PDF Dokumente&quot;-Moduls entwickelt.</p>
<p>Das Modul <strong><i class='fab fa-d3 d3fa-color-blue'></i> Auftragsmanager</strong> ist natürlich auch ohne das &quot;PDF Dokumente&quot;-Modul einsetzbar, kann jedoch dann keine PDF-Exporte verwenden.</p>
<hr />
<p>Der <strong><i class='fab fa-d3 d3fa-color-blue'></i> Auftragsmanager</strong> integriert die Erweiterung &quot;Invoice PDF&quot; von OXID eSales AG, sofern diese im Shop installiert wurde. Diese Integration wurde für die Version 2.0.0 des &quot;Invoice PDF&quot;-Moduls entwickelt.</p>
<p>Der <strong><i class='fab fa-d3 d3fa-color-blue'></i> Auftragsmanager</strong> ist natürlich auch ohne das &quot;Invoice PDF&quot;-Modul einsetzbar, kann jedoch dann keine PDF-Exporte verwenden.</p>
<p>Das Modul <strong><i class='fab fa-d3 d3fa-color-blue'></i> Auftragsmanager</strong> integriert die Erweiterung &quot;Invoice PDF&quot; von OXID eSales AG, sofern diese im Shop installiert wurde. Diese Integration wurde für die Version 2.0.0 des &quot;Invoice PDF&quot;-Moduls entwickelt.</p>
<p>Das Modul <strong><i class='fab fa-d3 d3fa-color-blue'></i> Auftragsmanager</strong> ist natürlich auch ohne das &quot;Invoice PDF&quot;-Modul einsetzbar, kann jedoch dann keine PDF-Exporte verwenden.</p>
<hr />
<p>Der <strong><i class='fab fa-d3 d3fa-color-blue'></i> Auftragsmanager</strong> integriert die Erweiterung &quot;WYSIWYG Editor + Mediathek&quot; von OXID eSales AG &amp; digidesk - media solutions, sofern diese im Shop installiert wurde. Diese Integration wurde für die Version 2.2.0 des &quot;WYSIWYG Editor + Mediathek&quot;-Moduls entwickelt.</p>
<p>Der <strong><i class='fab fa-d3 d3fa-color-blue'></i> Auftragsmanager</strong> ist natürlich auch ohne das &quot;WYSIWYG Editor + Mediathek&quot;-Modul einsetzbar.</p>
<p>Das Modul <strong><i class='fab fa-d3 d3fa-color-blue'></i> Auftragsmanager</strong> integriert die Erweiterung &quot;WYSIWYG Editor + Mediathek&quot; von OXID eSales AG &amp; digidesk - media solutions, sofern diese im Shop installiert wurde. Diese Integration wurde für die Version 2.2.0 des &quot;WYSIWYG Editor + Mediathek&quot;-Moduls entwickelt.</p>
<p>Das Modul <strong><i class='fab fa-d3 d3fa-color-blue'></i> Auftragsmanager</strong> ist natürlich auch ohne das &quot;WYSIWYG Editor + Mediathek&quot;-Modul einsetzbar.</p>
</div>
<nav>

Datei anzeigen

@ -72,14 +72,14 @@
<div class="Page__header">
<h1><a href="../../installation/Anforderungen/Systemanforderungen.html">Anforderungen</a> <svg class="Page__header--separator" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 477.175 477.175"><path d="M360.73 229.075l-225.1-225.1c-5.3-5.3-13.8-5.3-19.1 0s-5.3 13.8 0 19.1l215.5 215.5-215.5 215.5c-5.3 5.3-5.3 13.8 0 19.1 2.6 2.6 6.1 4 9.5 4 3.4 0 6.9-1.3 9.5-4l225.1-225.1c5.3-5.2 5.3-13.8.1-19z"/></svg> <a href="../../installation/Anforderungen/Systemanforderungen.html">Systemanforderungen</a></h1>
<span class="ModifiedDate">
20.08.2020 </span>
16.03.2021 </span>
</div>
<div class="s-content">
<ul>
<li>PHP Version
<ul>
<li>5.6.x bis 7.3.x</li>
<li>5.6.x bis 7.1.x</li>
</ul>
</li>
<li>PHP Decoder
@ -87,13 +87,20 @@
<li>installierter ionCube Loader</li>
</ul>
</li>
<li>Shopversionen / -editionen
<li>Shopeditionen
<ul>
<li>OXID eShop Community Edition (CE), Professional Edition (PE) oder Enterprise Edition (EE) in Compilation Version
<li>OXID eShop Community Edition (CE)</li>
<li>OXID eShop Professional Edition (PE)</li>
<li>OXID eShop Enterprise Edition (EE)</li>
<li>OXID eShop B2B Edition</li>
</ul>
</li>
<li>Shopversionen
<ul>
<li>OXID eShop in Compilation Version
<ul>
<li>6.0.x</li>
<li>6.1.x</li>
<li>6.2.x</li>
</ul>
</li>
</ul>
@ -104,12 +111,12 @@
</ul>
</li>
<li>
<i class='fab fa-d3 d3fa-color-blue'></i> Modul-Connector (<a href="https://www.oxidmodule.com/connector/" class="Link--external">kostenfrei bei D3 erhältlich</a>) ab Version 5.3.1.0</li>
<i class='fab fa-d3 d3fa-color-blue'></i> Modul-Connector (<a href="https://www.oxidmodule.com/connector/" class="Link--external">kostenfrei bei D3 erhältlich</a>) ab Version 5.3.6.0</li>
<li>Installation via <a href="https://getcomposer.org" class="Link--external">Composer</a>
</li>
<li>mindestens ein freier Cronjob zur automatischen Ausführung angelegter Aufgaben (optional)</li>
</ul>
<p>Beachten Sie, dass die Ihnen vorliegende Modulversion entsprechend für <strong>PHP 5.6</strong>, <strong>PHP 7.0</strong>, <strong>PHP 7.1</strong>, <strong>PHP 7.2</strong> oder <strong>PHP 7.3</strong> sowie dem auf Ihrem Server vorhandenen Decoder (<strong>ionCube Loader</strong>) kompatibel ist. Im Zweifelsfall kontaktieren Sie uns und nennen den für Ihren Shop genutzten Decoder und die PHP-Version.</p>
<p>Beachten Sie, dass die Ihnen vorliegende Modulversion entsprechend für Ihre genutzte PHP-Version sowie dem auf Ihrem Server vorhandenen Decoder (<strong>ionCube Loader</strong>) kompatibel ist. Im Zweifelsfall kontaktieren Sie uns und nennen den für Ihren Shop genutzten Decoder und die PHP-Version.</p>
<p>Kontrollieren Sie bitte auch, ob diese Modulversion für die von Ihnen eingesetzte Shopedition (Community Edition (CE), Professional Edition (PE) oder Enterprise Edition (EE)) ausgelegt ist.</p>
</div>

Datei anzeigen

@ -72,7 +72,7 @@
<div class="Page__header">
<h1><a href="../../installation/Anforderungen/Systemanforderungen.html">Anforderungen</a> <svg class="Page__header--separator" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 477.175 477.175"><path d="M360.73 229.075l-225.1-225.1c-5.3-5.3-13.8-5.3-19.1 0s-5.3 13.8 0 19.1l215.5 215.5-215.5 215.5c-5.3 5.3-5.3 13.8 0 19.1 2.6 2.6 6.1 4 9.5 4 3.4 0 6.9-1.3 9.5-4l225.1-225.1c5.3-5.2 5.3-13.8.1-19z"/></svg> <a href="../../installation/Anforderungen/Vorbereitungen.html">Vorbereitungen</a></h1>
<span class="ModifiedDate">
20.08.2020 </span>
16.03.2021 </span>
</div>
<div class="s-content">

Datei anzeigen

@ -72,15 +72,15 @@
<div class="Page__header">
<h1><a href="../../installation/Deinstallation/Modulerweiterungen_deaktivieren_und_entfernen.html">Deinstallation</a> <svg class="Page__header--separator" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 477.175 477.175"><path d="M360.73 229.075l-225.1-225.1c-5.3-5.3-13.8-5.3-19.1 0s-5.3 13.8 0 19.1l215.5 215.5-215.5 215.5c-5.3 5.3-5.3 13.8 0 19.1 2.6 2.6 6.1 4 9.5 4 3.4 0 6.9-1.3 9.5-4l225.1-225.1c5.3-5.2 5.3-13.8.1-19z"/></svg> <a href="../../installation/Deinstallation/Dateien_loeschen.html">Dateien löschen</a></h1>
<span class="ModifiedDate">
20.08.2020 </span>
16.03.2021 </span>
</div>
<div class="s-content">
<p>Löschen Sie den Ordner <code>ordermanager</code> und seine enthaltenen Elemente aus dem Verzeichnis <code>source/modules/d3</code> Ihres Shops.</p>
<p>Bestätigen Sie anschließend im Shopadmin unter <span class="navi_element">Erweiterungen</span> -&gt; <span class="navi_element">Module</span> -&gt; <span class="navi_element">Installierte Shop-Module</span> die Nachricht:</p>
<blockquote>
<p>Es gibt registrierte Erweiterungen im eShop, deren Verzeichnis nicht vorhanden ist.</p>
<p>Möchten Sie alle Modulinformationen einschließlich Konfigurationseinstellungen und Blockinformationen für Templates löschen?</p>
<p>Es gibt registrierte Erweiterungen im eShop, deren Verzeichnis nicht vorhanden ist.
Möchten Sie alle Modulinformationen einschließlich Konfigurationseinstellungen und Blockinformationen für Templates löschen?</p>
</blockquote>
</div>

Datei anzeigen

@ -72,7 +72,7 @@
<div class="Page__header">
<h1><a href="../../installation/Deinstallation/Modulerweiterungen_deaktivieren_und_entfernen.html">Deinstallation</a> <svg class="Page__header--separator" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 477.175 477.175"><path d="M360.73 229.075l-225.1-225.1c-5.3-5.3-13.8-5.3-19.1 0s-5.3 13.8 0 19.1l215.5 215.5-215.5 215.5c-5.3 5.3-5.3 13.8 0 19.1 2.6 2.6 6.1 4 9.5 4 3.4 0 6.9-1.3 9.5-4l225.1-225.1c5.3-5.2 5.3-13.8.1-19z"/></svg> <a href="../../installation/Deinstallation/Datenbank_bereinigen.html">Datenbank bereinigen</a></h1>
<span class="ModifiedDate">
20.08.2020 </span>
16.03.2021 </span>
</div>
<div class="s-content">

Datei anzeigen

@ -72,18 +72,16 @@
<div class="Page__header">
<h1><a href="../../installation/Deinstallation/Modulerweiterungen_deaktivieren_und_entfernen.html">Deinstallation</a> <svg class="Page__header--separator" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 477.175 477.175"><path d="M360.73 229.075l-225.1-225.1c-5.3-5.3-13.8-5.3-19.1 0s-5.3 13.8 0 19.1l215.5 215.5-215.5 215.5c-5.3 5.3-5.3 13.8 0 19.1 2.6 2.6 6.1 4 9.5 4 3.4 0 6.9-1.3 9.5-4l225.1-225.1c5.3-5.2 5.3-13.8.1-19z"/></svg> <a href="../../installation/Deinstallation/Modul_aus_der_Installation_entfernen.html">Modul aus der Installation entfernen</a></h1>
<span class="ModifiedDate">
20.08.2020 </span>
16.03.2021 </span>
</div>
<div class="s-content">
<p>Starten Sie die Konsole Ihres Webservers und wechseln in das Hauptverzeichnis Ihres Shops (oberhalb des <code>source</code>- und <code>vendor</code>-Verzeichnisses). Führen Sie Sie dort diesen Befehl aus:</p>
<h3 id="page_auf-der-Kommandozeile"><strong>auf der Kommandozeile</strong></h3>
<p>Starten Sie die Konsole Ihres Webservers und wechseln in das Hauptverzeichnis Ihres Shops (oberhalb des <code>source</code>- und <code>vendor</code>-Verzeichnisses). Führen Sie Sie dort diesen Befehl aus:</p>
<pre><code class="language-Bash">php composer remove d3/ordermanager --no-update
</code></pre>
<blockquote class="alert alert-warning">
<i class='fas fa-exclamation-triangle'></i> <p> Achten Sie darauf, dass die Installation über Composer mit derselben PHP-Version erfolgt, in der auch Ihr Shop installiert ist. Sie erhalten sonst unpassende Modulpakete.</p>
</blockquote>
<blockquote class="alert alert-info">
<i class='fas fa-info-circle'></i> <p> Benötigt Ihre Installation einen anderen Aufruf von Composer, ändern Sie den Befehl bitte entsprechend ab. Für weitere Optionen dieses Befehls lesen Sie bitte die <a href="https://getcomposer.org/doc/03-cli.md#require" class="Link--external">Dokumentation von Composer</a>.</p>
<i class='fas fa-info-circle'></i> <p> Benötigt Ihre Installation einen anderen Aufruf von Composer, ändern Sie den Befehl bitte entsprechend ab. Für weitere Optionen dieses Befehls lesen Sie bitte die <a href="https://getcomposer.org/doc/03-cli.md#remove" class="Link--external">Dokumentation von Composer</a>.</p>
</blockquote>
</div>

Datei anzeigen

@ -72,11 +72,22 @@
<div class="Page__header">
<h1><a href="../../installation/Deinstallation/Modulerweiterungen_deaktivieren_und_entfernen.html">Deinstallation</a> <svg class="Page__header--separator" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 477.175 477.175"><path d="M360.73 229.075l-225.1-225.1c-5.3-5.3-13.8-5.3-19.1 0s-5.3 13.8 0 19.1l215.5 215.5-215.5 215.5c-5.3 5.3-5.3 13.8 0 19.1 2.6 2.6 6.1 4 9.5 4 3.4 0 6.9-1.3 9.5-4l225.1-225.1c5.3-5.2 5.3-13.8.1-19z"/></svg> <a href="../../installation/Deinstallation/Modul_deaktivieren.html">Modul deaktivieren</a></h1>
<span class="ModifiedDate">
20.08.2020 </span>
16.03.2021 </span>
</div>
<div class="s-content">
<p>Deaktivieren Sie das Modul <strong><i class='fab fa-d3 d3fa-color-blue'></i> Auftragsmanager</strong> über den Shopadmin <span class="navi_element">Erweiterungen</span> -&gt; <span class="navi_element">Module</span>. Klicken Sie nach Auswahl von <span class="navi_element"><i class='fab fa-d3 d3fa-color-blue'></i> Auftragsmanager</span> auf den Button <span class="navi_element">Deaktivieren</span>.</p>
<h3 id="page_im-Adminbereich"><strong>im Adminbereich</strong></h3>
<p>Deaktivieren Sie das Modul unter <span class="navi_element">Erweiterungen</span> -&gt; <span class="navi_element">Module</span>. Klicken Sie nach Auswahl von <span class="navi_element"><i class='fab fa-d3 d3fa-color-blue'></i> Auftragsmanager</span> auf den Button <span class="navi_element">Deaktivieren</span>.</p>
<h3 id="page_oder-auf-der-Kommandozeile"><strong>oder auf der Kommandozeile</strong></h3>
<p>Alternativ können Sie die Moduldeaktivierung auch über die Kommandozeile (CLI) im Hauptverzeichnis Ihres Shops (oberhalb des <code>source</code>- und <code>vendor</code>-Verzeichnisses) durchführen.</p>
<pre><code class="language-bash">./vendor/bin/oe-console oe:module:deactivate d3ordermanager
</code></pre>
<blockquote class="alert alert-warning">
<i class='fas fa-exclamation-triangle'></i> <p> <strong>Enterprise Edition</strong>: Achten Sie darauf, dass das Modul in allen weiteren Shops (Mall) ebenfalls deaktiviert werden muss.</p>
</blockquote>
<blockquote class="alert alert-info">
<i class='fas fa-info-circle'></i> <p> <strong>Enterprise Edition</strong>: Zur Deaktivierung in einem bestimmten Shopmandanten verwenden Sie das <code>--shop-id</code>-Argument (<code>...oe-console --shop-id 1 oe:module...</code>)</p>
</blockquote>
</div>
<nav>

Datei anzeigen

@ -72,7 +72,7 @@
<div class="Page__header">
<h1><a href="../../installation/Deinstallation/Modulerweiterungen_deaktivieren_und_entfernen.html">Deinstallation</a> <svg class="Page__header--separator" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 477.175 477.175"><path d="M360.73 229.075l-225.1-225.1c-5.3-5.3-13.8-5.3-19.1 0s-5.3 13.8 0 19.1l215.5 215.5-215.5 215.5c-5.3 5.3-5.3 13.8 0 19.1 2.6 2.6 6.1 4 9.5 4 3.4 0 6.9-1.3 9.5-4l225.1-225.1c5.3-5.2 5.3-13.8.1-19z"/></svg> <a href="../../installation/Deinstallation/Modulerweiterungen_deaktivieren_und_entfernen.html">Modulerweiterungen deaktivieren und entfernen</a></h1>
<span class="ModifiedDate">
20.08.2020 </span>
16.03.2021 </span>
</div>
<div class="s-content">

Datei anzeigen

@ -72,14 +72,22 @@
<div class="Page__header">
<h1><a href="../../installation/Deinstallation/Modulerweiterungen_deaktivieren_und_entfernen.html">Deinstallation</a> <svg class="Page__header--separator" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 477.175 477.175"><path d="M360.73 229.075l-225.1-225.1c-5.3-5.3-13.8-5.3-19.1 0s-5.3 13.8 0 19.1l215.5 215.5-215.5 215.5c-5.3 5.3-5.3 13.8 0 19.1 2.6 2.6 6.1 4 9.5 4 3.4 0 6.9-1.3 9.5-4l225.1-225.1c5.3-5.2 5.3-13.8.1-19z"/></svg> <a href="../../installation/Deinstallation/TMP-Ordner_leeren.html">TMP-Ordner leeren</a></h1>
<span class="ModifiedDate">
20.08.2020 </span>
16.03.2021 </span>
</div>
<div class="s-content">
<p>Leeren Sie das Verzeichnis <code>tmp</code> über <span class="navi_element">Admin</span> -&gt; <span class="navi_element"><i class='fab fa-d3 d3fa-color-blue'></i> Module</span> -&gt; <span class="navi_element">Modul-Connector</span> -&gt; <span class="navi_element">TMP leeren</span>. Markieren Sie <span class="navi_element">komplett leeren</span> und klicken auf <span class="navi_element">TMP leeren</span>.</p>
<h3 id="page_im-Adminbereich"><strong>im Adminbereich</strong></h3>
<p>Leeren Sie das Verzeichnis <code>tmp</code> über <span class="navi_element">Admin</span> -&gt; <span class="navi_element"><i class='fab fa-d3 d3fa-color-blue'></i> Module</span> -&gt; <span class="navi_element">Modul-Connector</span> -&gt; <span class="navi_element">TMP leeren</span>. Markieren Sie <span class="navi_element">komplett leeren</span> und klicken auf <span class="navi_element">TMP leeren</span>.</p>
<p>Sofern die Views nicht automatisch aktualisiert werden, führen Sie dies noch durch.</p>
<h3 id="page_oder-auf-der-Kommandozeile"><strong>oder auf der Kommandozeile</strong></h3>
<p>Alle TMP-leeren-Aktionen stehen Ihnen ebenfalls auf der Kommandozeile (CLI) zur Verfügung. Führen Sie diesen Befehl im Hauptverzeichnis Ihres Shops (oberhalb des <code>source</code>- und <code>vendor</code>-Verzeichnisses) aus:</p>
<pre><code class="language-bash">./vendor/bin/d3cleartmp
</code></pre>
<blockquote class="alert alert-info">
<i class='fas fa-info-circle'></i> <p> Erfordert Ihre Installation eine andere Vorgehensweise zum Leeren des Caches oder zum Aktualisieren der Datenbank-Viewtabellen, führen Sie diese bitte aus.</p>
</blockquote>
<blockquote class="alert alert-info">
<i class='fas fa-info-circle'></i> <p> Beim Kommandozeilenaufruf werden Ihnen weitere Optionen gezeigt, mit denen Sie die Aktion gezielt steuern können.</p>
</blockquote>
</div>

Datei anzeigen

@ -72,7 +72,7 @@
<div class="Page__header">
<h1><a href="../installation/Installation.html">Installation / Update / Deinstallation</a></h1>
<span class="ModifiedDate">
20.08.2020 </span>
16.03.2021 </span>
</div>
<div class="s-content">

Datei anzeigen

@ -72,7 +72,7 @@
<div class="Page__header">
<h1><a href="../installation/Installationspruefung.html">Installationsprüfung</a></h1>
<span class="ModifiedDate">
20.08.2020 </span>
16.03.2021 </span>
</div>
<div class="s-content">

Datei anzeigen

@ -72,7 +72,7 @@
<div class="Page__header">
<h1><a href="../../installation/Neuinstallation/index.html">Neuinstallation</a> <svg class="Page__header--separator" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 477.175 477.175"><path d="M360.73 229.075l-225.1-225.1c-5.3-5.3-13.8-5.3-19.1 0s-5.3 13.8 0 19.1l215.5 215.5-215.5 215.5c-5.3 5.3-5.3 13.8 0 19.1 2.6 2.6 6.1 4 9.5 4 3.4 0 6.9-1.3 9.5-4l225.1-225.1c5.3-5.2 5.3-13.8.1-19z"/></svg> <a href="../../installation/Neuinstallation/Cronjob_einrichten.html">Cronjob einrichten</a></h1>
<span class="ModifiedDate">
20.08.2020 </span>
16.03.2021 </span>
</div>
<div class="s-content">

Datei anzeigen

@ -72,11 +72,12 @@
<div class="Page__header">
<h1><a href="../../installation/Neuinstallation/index.html">Neuinstallation</a> <svg class="Page__header--separator" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 477.175 477.175"><path d="M360.73 229.075l-225.1-225.1c-5.3-5.3-13.8-5.3-19.1 0s-5.3 13.8 0 19.1l215.5 215.5-215.5 215.5c-5.3 5.3-5.3 13.8 0 19.1 2.6 2.6 6.1 4 9.5 4 3.4 0 6.9-1.3 9.5-4l225.1-225.1c5.3-5.2 5.3-13.8.1-19z"/></svg> <a href="../../installation/Neuinstallation/Lizenz_eintragen.html">Lizenzschlüssel eintragen</a></h1>
<span class="ModifiedDate">
20.08.2020 </span>
16.03.2021 </span>
</div>
<div class="s-content">
<p>Das Modul verwendet Lizenzschlüssel, um die Lizenzverwaltung für Sie und auch für uns einfacher zu gestalten. Hierbei haben Sie je nach Modul die Wahl zwischen einer kostenfreien Testlizenz und einer Lizenz für den Einsatz im Livebetrieb.</p>
<h3 id="page_im-Adminbereich"><strong>im Adminbereich</strong></h3>
<p>Das Modul verwendet Lizenzschlüssel, um die Lizenzverwaltung für Sie und auch für uns einfacher zu gestalten. Hierbei haben Sie je nach Modul die Wahl zwischen einer kostenfreien Testlizenz und einer Lizenz für den Einsatz im Livebetrieb.</p>
<p>Speziell der <strong><i class='fab fa-d3 d3fa-color-blue'></i> Auftragsmanager</strong> wird in unterschiedlichen (teilweise kostenfreien) Editionen für den Livebetrieb angeboten. Besuchen Sie unseren <a href="https://www.oxidmodule.com/" class="Link--external">Moduleshop</a>, um mehr darüber zu erfahren.</p>
<p>Rufen Sie zum Anfordern des Lizenzschlüssels die Modulverwaltung im Adminbereich unter <span class="navi_element"><i class='fab fa-d3 d3fa-color-blue'></i> Module</span> -&gt; <span class="navi_element">Modul-Connector</span> -&gt; <span class="navi_element">Modulverwaltung</span> auf. Klappen Sie den Eintrag des jeweiligen Moduls aus. Sofern erforderlich, können Sie hier den Lizenzassistenten starten, der schnell und einfach ihr Modul aktiviert.</p>
</div>

Datei anzeigen

@ -72,15 +72,16 @@
<div class="Page__header">
<h1><a href="../../installation/Neuinstallation/index.html">Neuinstallation</a> <svg class="Page__header--separator" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 477.175 477.175"><path d="M360.73 229.075l-225.1-225.1c-5.3-5.3-13.8-5.3-19.1 0s-5.3 13.8 0 19.1l215.5 215.5-215.5 215.5c-5.3 5.3-5.3 13.8 0 19.1 2.6 2.6 6.1 4 9.5 4 3.4 0 6.9-1.3 9.5-4l225.1-225.1c5.3-5.2 5.3-13.8.1-19z"/></svg> <a href="../../installation/Neuinstallation/Modul_hinzufuegen.html">Modul zur Installation hinzufügen</a></h1>
<span class="ModifiedDate">
20.08.2020 </span>
16.03.2021 </span>
</div>
<div class="s-content">
<p>Führen Sie in der Konsole im Hauptverzeichnis Ihres Shops (oberhalb des <code>source</code>- und <code>vendor</code>-Verzeichnisses) diesen Befehl aus, um das Modul <strong><i class='fab fa-d3 d3fa-color-blue'></i> Auftragsmanager</strong> zur Installation hinzuzufügen:</p>
<pre><code class="language-bash">php composer require d3/ordermanager:^3.3.0.0 --update-no-dev
<h3 id="page_auf-der-Kommandozeile"><strong>auf der Kommandozeile</strong></h3>
<p>Führen Sie in der Konsole im Hauptverzeichnis Ihres Shops (oberhalb des <code>source</code>- und <code>vendor</code>-Verzeichnisses) diesen Befehl aus, um das Modul <strong><i class='fab fa-d3 d3fa-color-blue'></i> Auftragsmanager</strong> zur Installation hinzuzufügen:</p>
<pre><code class="language-bash">php composer require d3/ordermanager:^3.3.1.0 --update-no-dev
</code></pre>
<blockquote class="alert alert-warning">
<i class='fas fa-exclamation-triangle'></i> <p> Achten Sie darauf, dass die Installation über Composer mit derselben PHP-Version erfolgt, in der auch Ihr Shop installiert ist. Sie erhalten sonst unpassende Modulpakete.</p>
<i class='fas fa-exclamation-triangle'></i> <p> Achten Sie darauf, dass Composer für die Installation die selbe PHP-Version verwendet, in der auch Ihr Shop ausgeführt wird. Sie erhalten sonst möglicherweise unpassende Modulpakete.</p>
</blockquote>
<blockquote class="alert alert-info">
<i class='fas fa-info-circle'></i> <p> Benötigt Ihre Installation einen anderen Aufruf von Composer, ändern Sie den Befehl bitte entsprechend ab. Für weitere Optionen dieses Befehls lesen Sie bitte die <a href="https://getcomposer.org/doc/03-cli.md#require" class="Link--external">Dokumentation von Composer</a>.</p>

Datei anzeigen

@ -72,13 +72,21 @@
<div class="Page__header">
<h1><a href="../../installation/Neuinstallation/index.html">Neuinstallation</a> <svg class="Page__header--separator" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 477.175 477.175"><path d="M360.73 229.075l-225.1-225.1c-5.3-5.3-13.8-5.3-19.1 0s-5.3 13.8 0 19.1l215.5 215.5-215.5 215.5c-5.3 5.3-5.3 13.8 0 19.1 2.6 2.6 6.1 4 9.5 4 3.4 0 6.9-1.3 9.5-4l225.1-225.1c5.3-5.2 5.3-13.8.1-19z"/></svg> <a href="../../installation/Neuinstallation/Modul_im_Shop_aktivieren.html">Modul im Shop aktivieren</a></h1>
<span class="ModifiedDate">
20.08.2020 </span>
16.03.2021 </span>
</div>
<div class="s-content">
<p>Aktivieren Sie das Modul über den Shopadmin unter <span class="navi_element">Erweiterungen</span> -&gt; <span class="navi_element">Module</span>. Klicken Sie nach Auswahl von <span class="navi_element"><i class='fab fa-d3 d3fa-color-blue'></i> Auftragsmanager</span> auf den Button <span class="navi_element">Aktivieren</span>.</p>
<h3 id="page_im-Adminbereich"><strong>im Adminbereich</strong></h3>
<p>Aktivieren Sie das Modul über den Shopadmin unter <span class="navi_element">Erweiterungen</span> -&gt; <span class="navi_element">Module</span>. Klicken Sie nach Auswahl von <span class="navi_element"><i class='fab fa-d3 d3fa-color-blue'></i> Auftragsmanager</span> auf den Button <span class="navi_element">Aktivieren</span>.</p>
<h3 id="page_oder-auf-der-Kommandozeile"><strong>oder auf der Kommandozeile</strong></h3>
<p>Alternativ können Sie die Modulaktivierung auch auf der Kommandozeile (CLI) im Hauptverzeichnis Ihres Shops (oberhalb des <code>source</code>- und <code>vendor</code>-Verzeichnisses) durchführen.</p>
<pre><code class="language-bash">./vendor/bin/oe-console oe:module:activate d3ordermanager
</code></pre>
<blockquote class="alert alert-warning">
<i class='fas fa-exclamation-triangle'></i> <p> <strong>Enterprise Editon</strong>: Achten Sie darauf, dass das Modul in weiteren Shops (Mall) ebenfalls aktiviert werden muss, um dessen Funktion dort auch zu nutzen.</p>
<i class='fas fa-exclamation-triangle'></i> <p> <strong>Enterprise Edition</strong>: Achten Sie darauf, dass das Modul in weiteren Shops (Mall) ebenfalls aktiviert werden muss, um dessen Funktion dort auch zu nutzen.</p>
</blockquote>
<blockquote class="alert alert-info">
<i class='fas fa-info-circle'></i> <p> <strong>Enterprise Edition</strong>: Zur Aktivierung in einem bestimmten Shopmandanten verwenden Sie das <code>--shop-id</code>-Argument (<code>...oe-console --shop-id 1 oe:module...</code>)</p>
</blockquote>
</div>

Datei anzeigen

@ -72,7 +72,7 @@
<div class="Page__header">
<h1><a href="../../installation/Neuinstallation/index.html">Neuinstallation</a> <svg class="Page__header--separator" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 477.175 477.175"><path d="M360.73 229.075l-225.1-225.1c-5.3-5.3-13.8-5.3-19.1 0s-5.3 13.8 0 19.1l215.5 215.5-215.5 215.5c-5.3 5.3-5.3 13.8 0 19.1 2.6 2.6 6.1 4 9.5 4 3.4 0 6.9-1.3 9.5-4l225.1-225.1c5.3-5.2 5.3-13.8.1-19z"/></svg> <a href="../../installation/Neuinstallation/Providerspezifische_Installation.html">Providerspezifische Installation</a></h1>
<span class="ModifiedDate">
20.08.2020 </span>
16.03.2021 </span>
</div>
<div class="s-content">

Datei anzeigen

@ -72,14 +72,19 @@
<div class="Page__header">
<h1><a href="../../installation/Neuinstallation/index.html">Neuinstallation</a> <svg class="Page__header--separator" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 477.175 477.175"><path d="M360.73 229.075l-225.1-225.1c-5.3-5.3-13.8-5.3-19.1 0s-5.3 13.8 0 19.1l215.5 215.5-215.5 215.5c-5.3 5.3-5.3 13.8 0 19.1 2.6 2.6 6.1 4 9.5 4 3.4 0 6.9-1.3 9.5-4l225.1-225.1c5.3-5.2 5.3-13.8.1-19z"/></svg> <a href="../../installation/Neuinstallation/Shopanpassungen_installieren.html">Shopanpassungen installieren</a></h1>
<span class="ModifiedDate">
20.08.2020 </span>
16.03.2021 </span>
</div>
<div class="s-content">
<p>Direkt nach der Modulaktivierung startet der Assistent, der Sie durch die Shopanpassung führt. Darin können Sie verschiedene Optionen der Installation wählen.</p>
<h3 id="page_im-Adminbereich"><strong>im Adminbereich</strong></h3>
<p>Direkt nach der Modulaktivierung startet der Assistent, der Sie durch die Shopanpassung führt. Darin können Sie verschiedene Optionen der Installation wählen.</p>
<p>Den Installationsassistenten finden Sie auch unter den Menüpunkten <span class="navi_element">Admin</span> -&gt; <span class="navi_element"><i class='fab fa-d3 d3fa-color-blue'></i> Module</span> -&gt; <span class="navi_element">Modul-Connector</span> -&gt; <span class="navi_element">Modulverwaltung</span> -&gt; <span class="navi_element">Modulinstallation</span>.</p>
<p>Bei tiefgreifenden Änderungen an Ihrem Shop (z.B. Hinzufügen weiterer Sprachen oder Mandanten) rufen Sie den Installationsassistenten bitte erneut auf, um dann eventuell notwendige Nacharbeiten für das Modul ausführen zu lassen.</p>
<p>Möchten Sie die Änderungen manuell installieren, können Sie sich über diesen Assistenten ebenfalls eine Checkliste erstellen.</p>
<h3 id="page_oder-auf-der-Kommandozeile"><strong>oder auf der Kommandozeile</strong></h3>
<p>Der Installationsassistent steht Ihnen ebenfalls auf der Kommandozeile (CLI) zur Verfügung. Führen Sie diesen Befehl im Hauptverzeichnis Ihres Shops (oberhalb des <code>source</code>- und <code>vendor</code>-Verzeichnisses) aus:</p>
<pre><code class="language-bash">./vendor/bin/d3modules_install
</code></pre>
</div>
<nav>

Datei anzeigen

@ -72,14 +72,22 @@
<div class="Page__header">
<h1><a href="../../installation/Neuinstallation/index.html">Neuinstallation</a> <svg class="Page__header--separator" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 477.175 477.175"><path d="M360.73 229.075l-225.1-225.1c-5.3-5.3-13.8-5.3-19.1 0s-5.3 13.8 0 19.1l215.5 215.5-215.5 215.5c-5.3 5.3-5.3 13.8 0 19.1 2.6 2.6 6.1 4 9.5 4 3.4 0 6.9-1.3 9.5-4l225.1-225.1c5.3-5.2 5.3-13.8.1-19z"/></svg> <a href="../../installation/Neuinstallation/TMP-Ordner_leeren.html">TMP-Ordner leeren</a></h1>
<span class="ModifiedDate">
20.08.2020 </span>
16.03.2021 </span>
</div>
<div class="s-content">
<p>Leeren Sie das Verzeichnis <code>tmp</code> über <span class="navi_element">Admin</span> -&gt; <span class="navi_element"><i class='fab fa-d3 d3fa-color-blue'></i> Module</span> -&gt; <span class="navi_element">Modul-Connector</span> -&gt; <span class="navi_element">TMP leeren</span>. Markieren Sie <span class="navi_element">komplett leeren</span> und klicken auf <span class="navi_element">TMP leeren</span>.</p>
<h3 id="page_im-Adminbereich"><strong>im Adminbereich</strong></h3>
<p>Leeren Sie das Verzeichnis <code>tmp</code> über <span class="navi_element">Admin</span> -&gt; <span class="navi_element"><i class='fab fa-d3 d3fa-color-blue'></i> Module</span> -&gt; <span class="navi_element">Modul-Connector</span> -&gt; <span class="navi_element">TMP leeren</span>. Markieren Sie <span class="navi_element">komplett leeren</span> und klicken auf <span class="navi_element">TMP leeren</span>.</p>
<p>Sofern die Views nicht automatisch aktualisiert werden, führen Sie dies noch durch.</p>
<h3 id="page_oder-auf-der-Kommandozeile"><strong>oder auf der Kommandozeile</strong></h3>
<p>Alle TMP-leeren-Aktionen stehen Ihnen ebenfalls auf der Kommandozeile (CLI) zur Verfügung. Führen Sie diesen Befehl im Hauptverzeichnis Ihres Shops (oberhalb des <code>source</code>- und <code>vendor</code>-Verzeichnisses) aus:</p>
<pre><code class="language-bash">./vendor/bin/d3cleartmp
</code></pre>
<blockquote class="alert alert-info">
<i class='fas fa-info-circle'></i> <p> Erfordert Ihre Installation eine andere Vorgehensweise zum Leeren des Caches oder zum Aktualisieren der Datenbank-Viewtabellen, führen Sie diese bitte aus.</p>
</blockquote>
<blockquote class="alert alert-info">
<i class='fas fa-info-circle'></i> <p> Beim Kommandozeilenaufruf werden Ihnen weitere Optionen gezeigt, mit denen Sie die Aktion gezielt steuern können.</p>
</blockquote>
</div>

Datei anzeigen

@ -72,7 +72,7 @@
<div class="Page__header">
<h1><a href="../../installation/Neuinstallation/index.html">Neuinstallation</a> <svg class="Page__header--separator" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 477.175 477.175"><path d="M360.73 229.075l-225.1-225.1c-5.3-5.3-13.8-5.3-19.1 0s-5.3 13.8 0 19.1l215.5 215.5-215.5 215.5c-5.3 5.3-5.3 13.8 0 19.1 2.6 2.6 6.1 4 9.5 4 3.4 0 6.9-1.3 9.5-4l225.1-225.1c5.3-5.2 5.3-13.8.1-19z"/></svg> <a href="../../installation/Neuinstallation/Updatefaehigkeit.html">Updatefähigkeit</a></h1>
<span class="ModifiedDate">
20.08.2020 </span>
16.03.2021 </span>
</div>
<div class="s-content">

Datei anzeigen

@ -72,7 +72,7 @@
<div class="Page__header">
<h1><a href="../../installation/Neuinstallation/index.html">Neuinstallation</a> <svg class="Page__header--separator" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 477.175 477.175"><path d="M360.73 229.075l-225.1-225.1c-5.3-5.3-13.8-5.3-19.1 0s-5.3 13.8 0 19.1l215.5 215.5-215.5 215.5c-5.3 5.3-5.3 13.8 0 19.1 2.6 2.6 6.1 4 9.5 4 3.4 0 6.9-1.3 9.5-4l225.1-225.1c5.3-5.2 5.3-13.8.1-19z"/></svg> <a href="../../installation/Neuinstallation/Vorbereitung.html">Vorbereitungen</a></h1>
<span class="ModifiedDate">
20.08.2020 </span>
16.03.2021 </span>
</div>
<div class="s-content">

Datei anzeigen

@ -72,12 +72,16 @@
<div class="Page__header">
<h1><a href="../../installation/Neuinstallation/index.html">Neuinstallation</a></h1>
<span class="ModifiedDate">
20.08.2020 </span>
16.03.2021 </span>
</div>
<div class="s-content">
<h2 id="page_Schnellstart-per-Composer">Schnellstart per Composer</h2>
<pre><code class="language-bash">php composer require d3/ordermanager:^3.3.0.0 --update-no-dev
<h3 id="page_auf-der-Kommandozeile"><strong>auf der Kommandozeile</strong></h3>
<pre><code class="language-bash">php composer require d3/ordermanager:^3.3.1.0 --update-no-dev
./vendor/bin/oe-console oe:module:activate d3ordermanager
./vendor/bin/d3modules_install
./vendor/bin/d3cleartmp
</code></pre>
<p>Detailliertere Angaben zur Installation entnehmen Sie bitte den folgenden Seiten.</p>
</div>

Datei anzeigen

@ -72,14 +72,14 @@
<div class="Page__header">
<h1><a href="../installation/Schnellstart.html">Schnellstart</a></h1>
<span class="ModifiedDate">
20.08.2020 </span>
16.03.2021 </span>
</div>
<div class="s-content">
<p>Das Modul <strong><i class='fab fa-d3 d3fa-color-blue'></i> Auftragsmanager</strong> bringt einen umfangreichen Adminbereich mit, in dem Sie die Konfigurationseinstellungen des Moduls setzen können. Über das Menü <span class="navi_element"><i class='fab fa-d3 d3fa-color-blue'></i> Module</span> -&gt; <span class="navi_element"><i class='fab fa-d3 d3fa-color-blue'></i> Auftragsmanager</span> -&gt; <span class="navi_element">Einstellungen</span> erreichen Sie die Einstellseiten. Arbeiten Sie idealerweise die Optionen einmal durch. Hinweise zu den einzelnen Einstellungen finden Sie in dem dahinter stehenden Fragezeichenfeld. Durch einen Klick darauf öffnet sich der Hinweistext.</p>
<p>Richten Sie nun die Aufgaben ein, die der „Auftragsmanager“ für Sie durchführen soll. In der Standardinstallation finden Sie einige Aufgaben als Beispiel vorbereitet. Darin können Sie sich die möglichen Konfigurationen ansehen, diese auf Ihre Bedürfnisse anpassen und auch neue Aufgaben anlegen.</p>
<p>Richten Sie nun die Aufgaben ein, die der &quot;Auftragsmanager&quot; für Sie durchführen soll. In der Standardinstallation finden Sie einige Aufgaben als Beispiel vorbereitet. Darin können Sie sich die möglichen Konfigurationen ansehen, diese auf Ihre Bedürfnisse anpassen und auch neue Aufgaben anlegen.</p>
<p>Testen Sie die Aufgaben mit dem modulweiten Debug-Schalter (<span class="navi_element"><i class='fab fa-d3 d3fa-color-blue'></i> Module</span> -&gt; <span class="navi_element">Auftragsmanager</span> -&gt; <span class="navi_element">Einstellungen</span>) und / oder der Mailsende-Option an jeder Aufgabe (<span class="navi_element"><i class='fab fa-d3 d3fa-color-blue'></i> Module</span> -&gt; <span class="navi_element">Auftragsmanager</span> -&gt; <span class="navi_element">Aufgaben</span> -&gt; <span class="navi_element">Stamm</span>). Diese Optionen sind genauer im jeweils dahinter stehenden Fragezeichenfeld erklärt. Aktivieren Sie die Ausführung der Aufgaben bitte erst, wenn Sie sicher sind, dass alle Optionen richtig sind. Wir übernehmen keine Gewährleistung für evtl. falsche oder verlorene Daten bei fehlerhaft eingestellten Aufgaben.</p>
<p>Weitere Details zur Einrichtung des „Auftragsmanagers“ entnehmen Sie bitte dessen <a href="../manual/Handbuch.html">Handbuch zum Modul</a>.</p>
<p>Weitere Details zur Einrichtung des &quot;Auftragsmanagers&quot; entnehmen Sie bitte dessen <a href="../manual/Handbuch.html">Handbuch zum Modul</a>.</p>
</div>
<nav>

Datei anzeigen

@ -72,17 +72,18 @@
<div class="Page__header">
<h1><a href="../../installation/Update/Updatedefinition.html">Update</a> <svg class="Page__header--separator" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 477.175 477.175"><path d="M360.73 229.075l-225.1-225.1c-5.3-5.3-13.8-5.3-19.1 0s-5.3 13.8 0 19.1l215.5 215.5-215.5 215.5c-5.3 5.3-5.3 13.8 0 19.1 2.6 2.6 6.1 4 9.5 4 3.4 0 6.9-1.3 9.5-4l225.1-225.1c5.3-5.2 5.3-13.8.1-19z"/></svg> <a href="../../installation/Update/Dateien_erneuern.html">Dateien erneuern</a></h1>
<span class="ModifiedDate">
20.08.2020 </span>
16.03.2021 </span>
</div>
<div class="s-content">
<p>Starten Sie die Konsole Ihres Webservers und wechseln in das Hauptverzeichnis Ihres
<h3 id="page_auf-der-Kommandozeile"><strong>auf der Kommandozeile</strong></h3>
<p>Starten Sie die Konsole Ihres Webservers und wechseln in das Hauptverzeichnis Ihres
Shops (oberhalb des <code>source</code>- und <code>vendor</code>-Verzeichnisses). Führen Sie dort diesen Befehl aus:</p>
<pre><code class="language-bash">php composer require d3/ordermanager:^3.3.0.0 --update-no-dev
<pre><code class="language-bash">php composer require d3/ordermanager:^3.3.1.0 --update-no-dev
</code></pre>
<p>Im weiteren Ablauf werden Sie gefragt, ob die Moduldateien überschrieben werden sollen. Bestätigen Sie dies für den Eintrag <code>d3/ordermanager</code>.</p>
<blockquote class="alert alert-warning">
<i class='fas fa-exclamation-triangle'></i> <p> Achten Sie darauf, dass die Installation über Composer mit derselben PHP-Version erfolgt, in der auch Ihr Shop installiert ist. Sie erhalten sonst unpassende Modulpakete.</p>
<i class='fas fa-exclamation-triangle'></i> <p> Achten Sie darauf, dass Composer für die Installation die selbe PHP-Version verwendet, in der auch Ihr Shop ausgeführt wird. Sie erhalten sonst möglicherweise unpassende Modulpakete.</p>
</blockquote>
<blockquote class="alert alert-info">
<i class='fas fa-info-circle'></i> <p> Benötigt Ihre Installation einen anderen Aufruf von Composer, ändern Sie den Befehl bitte entsprechend ab. Für weitere Optionen dieses Befehls lesen Sie bitte die <a href="https://getcomposer.org/doc/03-cli.md#require" class="Link--external">Dokumentation von Composer</a>.</p>

Datei anzeigen

@ -72,7 +72,7 @@
<div class="Page__header">
<h1><a href="../../installation/Update/Updatedefinition.html">Update</a> <svg class="Page__header--separator" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 477.175 477.175"><path d="M360.73 229.075l-225.1-225.1c-5.3-5.3-13.8-5.3-19.1 0s-5.3 13.8 0 19.1l215.5 215.5-215.5 215.5c-5.3 5.3-5.3 13.8 0 19.1 2.6 2.6 6.1 4 9.5 4 3.4 0 6.9-1.3 9.5-4l225.1-225.1c5.3-5.2 5.3-13.8.1-19z"/></svg> <a href="../../installation/Update/Erweiterungen_anpassen.html">Erweiterungen anpassen</a></h1>
<span class="ModifiedDate">
20.08.2020 </span>
16.03.2021 </span>
</div>
<div class="s-content">

Datei anzeigen

@ -72,11 +72,12 @@
<div class="Page__header">
<h1><a href="../../installation/Update/Updatedefinition.html">Update</a> <svg class="Page__header--separator" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 477.175 477.175"><path d="M360.73 229.075l-225.1-225.1c-5.3-5.3-13.8-5.3-19.1 0s-5.3 13.8 0 19.1l215.5 215.5-215.5 215.5c-5.3 5.3-5.3 13.8 0 19.1 2.6 2.6 6.1 4 9.5 4 3.4 0 6.9-1.3 9.5-4l225.1-225.1c5.3-5.2 5.3-13.8.1-19z"/></svg> <a href="../../installation/Update/Lizenzschluessel_aktualisieren.html">Lizenzschlüssel aktualisieren</a></h1>
<span class="ModifiedDate">
20.08.2020 </span>
16.03.2021 </span>
</div>
<div class="s-content">
<p>Wird für die neue Modulversion ein aktualisierter Lizenzschlüssel benötigt, tragen Sie diesen im Adminbereich unter <span class="navi_element"><i class='fab fa-d3 d3fa-color-blue'></i> Module</span> -&gt; <span class="navi_element">Modul-Connector</span> -&gt; <span class="navi_element">Modulverwaltung</span> ein. Klappen Sie dazu den Eintrag des jeweiligen Moduls aus und starten den Lizenzassistent.</p>
<h3 id="page_im-Adminbereich"><strong>im Adminbereich</strong></h3>
<p>Wird für die neue Modulversion ein aktualisierter Lizenzschlüssel benötigt, tragen Sie diesen im Adminbereich unter <span class="navi_element"><i class='fab fa-d3 d3fa-color-blue'></i> Module</span> -&gt; <span class="navi_element">Modul-Connector</span> -&gt; <span class="navi_element">Modulverwaltung</span> ein. Klappen Sie dazu den Eintrag des jeweiligen Moduls aus und starten den Lizenzassistent.</p>
</div>
<nav>

Datei anzeigen

@ -72,11 +72,22 @@
<div class="Page__header">
<h1><a href="../../installation/Update/Updatedefinition.html">Update</a> <svg class="Page__header--separator" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 477.175 477.175"><path d="M360.73 229.075l-225.1-225.1c-5.3-5.3-13.8-5.3-19.1 0s-5.3 13.8 0 19.1l215.5 215.5-215.5 215.5c-5.3 5.3-5.3 13.8 0 19.1 2.6 2.6 6.1 4 9.5 4 3.4 0 6.9-1.3 9.5-4l225.1-225.1c5.3-5.2 5.3-13.8.1-19z"/></svg> <a href="../../installation/Update/Modul_deaktivieren.html">Modul deaktivieren</a></h1>
<span class="ModifiedDate">
20.08.2020 </span>
16.03.2021 </span>
</div>
<div class="s-content">
<p>Deaktivieren Sie das Modul über den Shopadmin unter <span class="navi_element">Erweiterungen</span> -&gt; <span class="navi_element">Module</span>. Klicken Sie nach Auswahl von <span class="navi_element"><i class='fab fa-d3 d3fa-color-blue'></i> Auftragsmanager</span> auf den Button <span class="navi_element">Deaktivieren</span>.</p>
<h3 id="page_im-Adminbereich"><strong>im Adminbereich</strong></h3>
<p>Deaktivieren Sie das Modul unter <span class="navi_element">Erweiterungen</span> -&gt; <span class="navi_element">Module</span>. Klicken Sie nach Auswahl von <span class="navi_element"><i class='fab fa-d3 d3fa-color-blue'></i> Auftragsmanager</span> auf den Button <span class="navi_element">Deaktivieren</span>.</p>
<h3 id="page_oder-auf-der-Kommandozeile"><strong>oder auf der Kommandozeile</strong></h3>
<p>Alternativ können Sie die Moduldeaktivierung auch über die Kommandozeile (CLI) im Hauptverzeichnis Ihres Shops (oberhalb des <code>source</code>- und <code>vendor</code>-Verzeichnisses) durchführen.</p>
<pre><code class="language-bash">./vendor/bin/oe-console oe:module:deactivate d3ordermanager
</code></pre>
<blockquote class="alert alert-warning">
<i class='fas fa-exclamation-triangle'></i> <p> <strong>Enterprise Edition</strong>: Achten Sie darauf, dass das Modul in allen weiteren Shops (Mall) ebenfalls deaktiviert werden muss.</p>
</blockquote>
<blockquote class="alert alert-info">
<i class='fas fa-info-circle'></i> <p> <strong>Enterprise Edition</strong>: Zur Deaktivierung in einem bestimmten Shopmandanten verwenden Sie das <code>--shop-id</code>-Argument (<code>...oe-console --shop-id 1 oe:module...</code>)</p>
</blockquote>
</div>
<nav>

Datei anzeigen

@ -72,11 +72,22 @@
<div class="Page__header">
<h1><a href="../../installation/Update/Updatedefinition.html">Update</a> <svg class="Page__header--separator" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 477.175 477.175"><path d="M360.73 229.075l-225.1-225.1c-5.3-5.3-13.8-5.3-19.1 0s-5.3 13.8 0 19.1l215.5 215.5-215.5 215.5c-5.3 5.3-5.3 13.8 0 19.1 2.6 2.6 6.1 4 9.5 4 3.4 0 6.9-1.3 9.5-4l225.1-225.1c5.3-5.2 5.3-13.8.1-19z"/></svg> <a href="../../installation/Update/Modulinformationen_aktualisieren.html">Modulinformationen aktualisieren</a></h1>
<span class="ModifiedDate">
20.08.2020 </span>
16.03.2021 </span>
</div>
<div class="s-content">
<p>Wechseln Sie im Adminbereich zu <span class="navi_element">Erweiterungen</span> -&gt; <span class="navi_element">Module</span>. Klicken Sie nach Auswahl von <span class="navi_element"><i class='fab fa-d3 d3fa-color-blue'></i> Auftragsmanager</span> auf den Button <span class="navi_element">Aktivieren</span>.</p>
<h3 id="page_im-Adminbereich"><strong>im Adminbereich</strong></h3>
<p>Wechseln Sie im Adminbereich zu <span class="navi_element">Erweiterungen</span> -&gt; <span class="navi_element">Module</span>. Klicken Sie nach Auswahl von <span class="navi_element"><i class='fab fa-d3 d3fa-color-blue'></i> Auftragsmanager</span> auf den Button <span class="navi_element">Aktivieren</span>.</p>
<h3 id="page_oder-auf-der-Kommandozeile"><strong>oder auf der Kommandozeile</strong></h3>
<p>Alternativ können Sie die Modulaktivierung auch über die Kommandozeile (CLI) im Hauptverzeichnis Ihres Shops (oberhalb des <code>source</code>- und <code>vendor</code>-Verzeichnisses) durchführen.</p>
<pre><code class="language-bash">./vendor/bin/oe-console oe:module:activate d3ordermanager
</code></pre>
<blockquote class="alert alert-warning">
<i class='fas fa-exclamation-triangle'></i> <p> <strong>Enterprise Edition</strong>: Achten Sie darauf, dass das Modul in weiteren Shops (Mall) ebenfalls aktiviert werden muss, um dessen Funktion dort auch zu nutzen.</p>
</blockquote>
<blockquote class="alert alert-info">
<i class='fas fa-info-circle'></i> <p> <strong>Enterprise Edition</strong>: Zur Aktivierung in einem bestimmten Shopmandanten verwenden Sie das <code>--shop-id</code>-Argument (<code>...oe-console --shop-id 1 oe:module...</code>)</p>
</blockquote>
</div>
<nav>

Datei anzeigen

@ -72,7 +72,7 @@
<div class="Page__header">
<h1><a href="../../installation/Update/Updatedefinition.html">Update</a> <svg class="Page__header--separator" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 477.175 477.175"><path d="M360.73 229.075l-225.1-225.1c-5.3-5.3-13.8-5.3-19.1 0s-5.3 13.8 0 19.1l215.5 215.5-215.5 215.5c-5.3 5.3-5.3 13.8 0 19.1 2.6 2.6 6.1 4 9.5 4 3.4 0 6.9-1.3 9.5-4l225.1-225.1c5.3-5.2 5.3-13.8.1-19z"/></svg> <a href="../../installation/Update/Providerspezifische_Installation.html">Providerspezifische Installation</a></h1>
<span class="ModifiedDate">
20.08.2020 </span>
16.03.2021 </span>
</div>
<div class="s-content">

Datei anzeigen

@ -72,14 +72,19 @@
<div class="Page__header">
<h1><a href="../../installation/Update/Updatedefinition.html">Update</a> <svg class="Page__header--separator" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 477.175 477.175"><path d="M360.73 229.075l-225.1-225.1c-5.3-5.3-13.8-5.3-19.1 0s-5.3 13.8 0 19.1l215.5 215.5-215.5 215.5c-5.3 5.3-5.3 13.8 0 19.1 2.6 2.6 6.1 4 9.5 4 3.4 0 6.9-1.3 9.5-4l225.1-225.1c5.3-5.2 5.3-13.8.1-19z"/></svg> <a href="../../installation/Update/Shopanpassungen_installieren.html">Shopanpassungen installieren</a></h1>
<span class="ModifiedDate">
20.08.2020 </span>
16.03.2021 </span>
</div>
<div class="s-content">
<p>Ob Shopanpassungen notwendig sind, ist von der Versionsänderung des Moduls abhängig.</p>
<h3 id="page_im-Adminbereich"><strong>im Adminbereich</strong></h3>
<p>Ob Shopanpassungen notwendig sind, ist von der Versionsänderung des Moduls abhängig.</p>
<p>Möglicherweise sehen Sie nach dem Neuaktivieren des Moduls den Installationsassistent, der Sie durch die Änderungen führt. Folgen Sie dann den einzelnen Schritten. Möchten Sie die Änderungen manuell installieren, können Sie sich über diesen Assistenten ebenfalls eine Checkliste erstellen.</p>
<p>Wird der Assistent nicht gezeigt (Sie sehen wieder die Modulübersicht), waren keine Anpassungen am Shop notwendig.</p>
<p>Ob erforderliche Updates ausgeführt werden sollen, können Sie jederzeit im Adminbereich unter <span class="navi_element"><i class='fab fa-d3 d3fa-color-blue'></i> Module</span> -&gt; <span class="navi_element">Modul-Connector</span> -&gt; <span class="navi_element">Modulverwaltung</span> -&gt; <span class="navi_element">Modulinstallation</span> prüfen.</p>
<h3 id="page_oder-auf-der-Kommandozeile"><strong>oder auf der Kommandozeile</strong></h3>
<p>Der Installationsassistent steht Ihnen ebenfalls auf der Kommandozeile (CLI) zur Verfügung. Führen Sie diesen Befehl im Hauptverzeichnis Ihres Shops (oberhalb des <code>source</code>- und <code>vendor</code>-Verzeichnisses) aus:</p>
<pre><code class="language-bash">./vendor/bin/d3modules_install
</code></pre>
</div>
<nav>

Datei anzeigen

@ -72,14 +72,22 @@
<div class="Page__header">
<h1><a href="../../installation/Update/Updatedefinition.html">Update</a> <svg class="Page__header--separator" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 477.175 477.175"><path d="M360.73 229.075l-225.1-225.1c-5.3-5.3-13.8-5.3-19.1 0s-5.3 13.8 0 19.1l215.5 215.5-215.5 215.5c-5.3 5.3-5.3 13.8 0 19.1 2.6 2.6 6.1 4 9.5 4 3.4 0 6.9-1.3 9.5-4l225.1-225.1c5.3-5.2 5.3-13.8.1-19z"/></svg> <a href="../../installation/Update/TMP-Ordner_leeren.html">TMP-Ordner leeren</a></h1>
<span class="ModifiedDate">
20.08.2020 </span>
16.03.2021 </span>
</div>
<div class="s-content">
<p>Leeren Sie das Verzeichnis <code>tmp</code> über <span class="navi_element">Admin</span> -&gt; <span class="navi_element"><i class='fab fa-d3 d3fa-color-blue'></i> Module</span> -&gt; <span class="navi_element">Modul-Connector</span> -&gt; <span class="navi_element">TMP leeren</span>. Markieren Sie <span class="navi_element">komplett leeren</span> und klicken auf <span class="navi_element">TMP leeren</span>.</p>
<h3 id="page_im-Adminbereich"><strong>im Adminbereich</strong></h3>
<p>Leeren Sie das Verzeichnis <code>tmp</code> über <span class="navi_element">Admin</span> -&gt; <span class="navi_element"><i class='fab fa-d3 d3fa-color-blue'></i> Module</span> -&gt; <span class="navi_element">Modul-Connector</span> -&gt; <span class="navi_element">TMP leeren</span>. Markieren Sie <span class="navi_element">komplett leeren</span> und klicken auf <span class="navi_element">TMP leeren</span>.</p>
<p>Sofern die Views nicht automatisch aktualisiert werden, führen Sie dies noch durch.</p>
<h3 id="page_oder-auf-der-Kommandozeile"><strong>oder auf der Kommandozeile</strong></h3>
<p>Alle TMP-leeren-Aktionen stehen Ihnen ebenfalls auf der Kommandozeile (CLI) zur Verfügung. Führen Sie diesen Befehl im Hauptverzeichnis Ihres Shops (oberhalb des <code>source</code>- und <code>vendor</code>-Verzeichnisses) aus:</p>
<pre><code class="language-bash">./vendor/bin/d3cleartmp
</code></pre>
<blockquote class="alert alert-info">
<i class='fas fa-info-circle'></i> <p> Erfordert Ihre Installation eine andere Vorgehensweise zum Leeren des Caches oder zum Aktualisieren der Datenbank-Viewtabellen, führen Sie diese bitte aus.</p>
</blockquote>
<blockquote class="alert alert-info">
<i class='fas fa-info-circle'></i> <p> Beim Kommandozeilenaufruf werden Ihnen weitere Optionen gezeigt, mit denen Sie die Aktion gezielt steuern können.</p>
</blockquote>
</div>

Datei anzeigen

@ -72,11 +72,11 @@
<div class="Page__header">
<h1><a href="../../installation/Update/Updatedefinition.html">Update</a> <svg class="Page__header--separator" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 477.175 477.175"><path d="M360.73 229.075l-225.1-225.1c-5.3-5.3-13.8-5.3-19.1 0s-5.3 13.8 0 19.1l215.5 215.5-215.5 215.5c-5.3 5.3-5.3 13.8 0 19.1 2.6 2.6 6.1 4 9.5 4 3.4 0 6.9-1.3 9.5-4l225.1-225.1c5.3-5.2 5.3-13.8.1-19z"/></svg> <a href="../../installation/Update/Updatedefinition.html">Wann kann ein Update ausgeführt werden?</a></h1>
<span class="ModifiedDate">
20.08.2020 </span>
16.03.2021 </span>
</div>
<div class="s-content">
<p>Die Updatenaweisungen können verwendet werden, wenn dieses Modul schon früher mit Hilfe von Composer installiert wurde.</p>
<p>Die Updateanweisungen können verwendet werden, wenn dieses Modul schon früher mit Hilfe von Composer installiert wurde.</p>
<p>Wurde die Installation bisher noch nicht durchgeführt oder die Installation wurde <strong>nicht</strong> über Composer
durchgeführt (weil das Modul dies z.B. früher nicht unterstützte), verwenden Sie bitte die Beschreibung unter <a href="../Neuinstallation/index.html">Neuinstallation</a>.</p>
</div>

Datei anzeigen

@ -72,7 +72,7 @@
<div class="Page__header">
<h1><a href="../manual/Anzeige_der_gefundenen_Bestellungen_als_Liste.html">Anzeige der gefundenen Bestellungen als Liste</a></h1>
<span class="ModifiedDate">
20.08.2020 </span>
16.03.2021 </span>
</div>
<div class="s-content">

Datei anzeigen

@ -72,13 +72,13 @@
<div class="Page__header">
<h1><a href="../../manual/Aufgaben/index.html">Aufgaben</a> <svg class="Page__header--separator" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 477.175 477.175"><path d="M360.73 229.075l-225.1-225.1c-5.3-5.3-13.8-5.3-19.1 0s-5.3 13.8 0 19.1l215.5 215.5-215.5 215.5c-5.3 5.3-5.3 13.8 0 19.1 2.6 2.6 6.1 4 9.5 4 3.4 0 6.9-1.3 9.5-4l225.1-225.1c5.3-5.2 5.3-13.8.1-19z"/></svg> <a href="../../manual/Aufgaben/Aktionen.html">Aktionen</a></h1>
<span class="ModifiedDate">
20.08.2020 </span>
16.03.2021 </span>
</div>
<div class="s-content">
<p>Haben Sie die Bedingungen gesetzt, setzen Sie nun die Aktionen, die ausschließlich auf die gefundenen Bestellungen angewendet werden.</p>
<p>Auch hier verzichten wir in diesem Handbuch auf die Auflistung der Aktionen, da diese normalerweise selbsterklärend sind. Im Folgenden sind nun Besonderheiten aufgeführt, auf die Sie speziell achten sollten:</p>
<p>Beachten Sie, dass die Aktion „Löschen von Bestellungen“ nicht rückgängig gemacht werden kann. Lassen Sie bei solchen Aktionen erst während eines Testzeitraums die Infomails zusenden, mit denen Sie prüfen können, ob die Löschaktionen auch die richtigen Bestellungen betreffen. Wir übernehmen keine Gewährleistung bei Datenverlust auf Grund von unzureichend geprüften Aufgaben.</p>
<p>Beachten Sie, dass die Aktion &quot;Löschen von Bestellungen&quot; nicht rückgängig gemacht werden kann. Lassen Sie bei solchen Aktionen erst während eines Testzeitraums die Infomails zusenden, mit denen Sie prüfen können, ob die Löschaktionen auch die richtigen Bestellungen betreffen. Wir übernehmen keine Gewährleistung bei Datenverlust auf Grund von unzureichend geprüften Aufgaben.</p>
<p>Alle Aktionen, die sich auf Währungsmengen beziehen (z.B. Versandkosten oder Rabatte), verwenden die Angabe immer in der Shop-Hauptwährung. Rechnen Sie Angaben in Fremdwährung für die Aktionen daher bitte immer um.</p>
<p>Geben Sie bei Veränderung eines Freitextfeldes als Feldname immer das Stammfeld an. Die Angabe des sprachabhängigen Suffix (z.B. ..._1) wird vom Modul bei Bedarf selbst
vorgenommen.</p>

Datei anzeigen

@ -72,7 +72,7 @@
<div class="Page__header">
<h1><a href="../../manual/Aufgaben/index.html">Aufgaben</a> <svg class="Page__header--separator" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 477.175 477.175"><path d="M360.73 229.075l-225.1-225.1c-5.3-5.3-13.8-5.3-19.1 0s-5.3 13.8 0 19.1l215.5 215.5-215.5 215.5c-5.3 5.3-5.3 13.8 0 19.1 2.6 2.6 6.1 4 9.5 4 3.4 0 6.9-1.3 9.5-4l225.1-225.1c5.3-5.2 5.3-13.8.1-19z"/></svg> <a href="../../manual/Aufgaben/Ausloeser.html">Auslöser</a></h1>
<span class="ModifiedDate">
20.08.2020 </span>
16.03.2021 </span>
</div>
<div class="s-content">

Datei anzeigen

@ -72,7 +72,7 @@
<div class="Page__header">
<h1><a href="../../manual/Aufgaben/index.html">Aufgaben</a> <svg class="Page__header--separator" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 477.175 477.175"><path d="M360.73 229.075l-225.1-225.1c-5.3-5.3-13.8-5.3-19.1 0s-5.3 13.8 0 19.1l215.5 215.5-215.5 215.5c-5.3 5.3-5.3 13.8 0 19.1 2.6 2.6 6.1 4 9.5 4 3.4 0 6.9-1.3 9.5-4l225.1-225.1c5.3-5.2 5.3-13.8.1-19z"/></svg> <a href="../../manual/Aufgaben/Bedingungen.html">Bedingungen</a></h1>
<span class="ModifiedDate">
20.08.2020 </span>
16.03.2021 </span>
</div>
<div class="s-content">

Datei anzeigen

@ -72,7 +72,7 @@
<div class="Page__header">
<h1><a href="../../manual/Aufgaben/index.html">Aufgaben</a> <svg class="Page__header--separator" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 477.175 477.175"><path d="M360.73 229.075l-225.1-225.1c-5.3-5.3-13.8-5.3-19.1 0s-5.3 13.8 0 19.1l215.5 215.5-215.5 215.5c-5.3 5.3-5.3 13.8 0 19.1 2.6 2.6 6.1 4 9.5 4 3.4 0 6.9-1.3 9.5-4l225.1-225.1c5.3-5.2 5.3-13.8.1-19z"/></svg> <a href="../../manual/Aufgaben/Mall.html">Mall</a></h1>
<span class="ModifiedDate">
20.08.2020 </span>
16.03.2021 </span>
</div>
<div class="s-content">

Datei anzeigen

@ -72,7 +72,7 @@
<div class="Page__header">
<h1><a href="../../manual/Aufgaben/index.html">Aufgaben</a> <svg class="Page__header--separator" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 477.175 477.175"><path d="M360.73 229.075l-225.1-225.1c-5.3-5.3-13.8-5.3-19.1 0s-5.3 13.8 0 19.1l215.5 215.5-215.5 215.5c-5.3 5.3-5.3 13.8 0 19.1 2.6 2.6 6.1 4 9.5 4 3.4 0 6.9-1.3 9.5-4l225.1-225.1c5.3-5.2 5.3-13.8.1-19z"/></svg> <a href="../../manual/Aufgaben/Stamm.html">Stamm</a></h1>
<span class="ModifiedDate">
20.08.2020 </span>
16.03.2021 </span>
</div>
<div class="s-content">

Datei anzeigen

@ -72,7 +72,7 @@
<div class="Page__header">
<h1><a href="../../manual/Aufgaben/index.html">Aufgaben</a> <svg class="Page__header--separator" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 477.175 477.175"><path d="M360.73 229.075l-225.1-225.1c-5.3-5.3-13.8-5.3-19.1 0s-5.3 13.8 0 19.1l215.5 215.5-215.5 215.5c-5.3 5.3-5.3 13.8 0 19.1 2.6 2.6 6.1 4 9.5 4 3.4 0 6.9-1.3 9.5-4l225.1-225.1c5.3-5.2 5.3-13.8.1-19z"/></svg> <a href="../../manual/Aufgaben/Uebersicht.html">Übersicht</a></h1>
<span class="ModifiedDate">
20.08.2020 </span>
16.03.2021 </span>
</div>
<div class="s-content">

Datei anzeigen

@ -72,7 +72,7 @@
<div class="Page__header">
<h1><a href="../../manual/Aufgaben/index.html">Aufgaben</a></h1>
<span class="ModifiedDate">
20.08.2020 </span>
16.03.2021 </span>
</div>
<div class="s-content">

Datei anzeigen

@ -72,7 +72,7 @@
<div class="Page__header">
<h1><a href="../manual/Aufgaben_automatisch_ausfuehren.html">Aufgaben automatisch ausführen</a></h1>
<span class="ModifiedDate">
20.08.2020 </span>
16.03.2021 </span>
</div>
<div class="s-content">

Datei anzeigen

@ -72,7 +72,7 @@
<div class="Page__header">
<h1><a href="../manual/Aufgaben_fuer_alle_relevanten_Bestellungen_manuell_ausfuehren.html">Aufgaben für alle relevanten Bestellungen manuell ausführen</a></h1>
<span class="ModifiedDate">
20.08.2020 </span>
16.03.2021 </span>
</div>
<div class="s-content">

Datei anzeigen

@ -72,7 +72,7 @@
<div class="Page__header">
<h1><a href="../manual/Aufgaben_fuer_einzelne_Bestellung_manuell_ausfuehren.html">Aufgaben für einzelne Bestellung manuell ausführen</a></h1>
<span class="ModifiedDate">
20.08.2020 </span>
16.03.2021 </span>
</div>
<div class="s-content">

Datei anzeigen

@ -72,11 +72,11 @@
<div class="Page__header">
<h1><a href="../manual/Cronjobs_fuer_unterschiedlich_zu_steuernde_Aufgaben.html">Cronjobs für unterschiedlich zu steuernde Aufgaben</a></h1>
<span class="ModifiedDate">
20.08.2020 </span>
16.03.2021 </span>
</div>
<div class="s-content">
<p>Neu angelegte Aufgaben oder Aufgaben, denen Sie keine spezielle Cronjob-ID zugewiesen haben, erhalten standardmäßig immer die Cronjob-ID „0“ (Null). Noch nicht zugeordnete oder neu angelegte Aufgaben können Sie gesamt über diese Cronjob-ID steuern. Hierfür können Sie mit den in den Modul-Grundeinstellungen angezeigten Daten einen Cronjob einrichten, der diese Aufgaben automatisch ausführt.</p>
<p>Neu angelegte Aufgaben oder Aufgaben, denen Sie keine spezielle Cronjob-ID zugewiesen haben, erhalten standardmäßig immer die Cronjob-ID &quot;0&quot; (Null). Noch nicht zugeordnete oder neu angelegte Aufgaben können Sie gesamt über diese Cronjob-ID steuern. Hierfür können Sie mit den in den Modul-Grundeinstellungen angezeigten Daten einen Cronjob einrichten, der diese Aufgaben automatisch ausführt.</p>
<p>Häufig ist es jedoch der Fall, dass bestimmte Aufgaben nur zu besonderen Zeiten gestartet werden sollen. Beispiele sind:</p>
<ul>
<li>Erstellen von Auswertungen nur einmal im Quartal oder</li>
@ -85,7 +85,7 @@
</ul>
<p>Weisen Sie dann diesen speziellen Aufgaben jeweils eine eigene Cronjob-ID zu. Diese kann eine beliebige Zahl zwischen 1 und 99 sein. Verwenden mehrere Aufgaben dieselben Ausführungszeiten und Intervalle, können Sie diese durch Vergabe der gleichen Cronjob-ID auch zu einer Ausführungsgruppe zusammenfassen. Für diese Gruppe brauchen Sie nur einen gemeinsamen Cronjob einrichten.</p>
<p>Sobald Sie die Cronjob-ID an der Aufgabe gespeichert haben, werden Ihnen in den Grundeinstellungen des Moduls alle Informationen gezeigt, die Sie für die Einrichtung dieses zusätzlichen Cronjobs benötigen. An diesem Cronjob können Sie nun auch die neuen Ausführungszeiten direkt einstellen. Sofern Ihr Provider dies erfordert, legen Sie für jeden Cronjob eine separate .sh-Datei an (siehe <a href="Aufgaben_automatisch_ausfuehren.html">Aufgaben automatisch ausführen</a>).</p>
<p>Vorherige Modulversionen verwendeten noch keine Cronjob-ID. Wird der Cronjob ohne ID aufgerufen, verwendet dieser automatisch die ID „0“ (Null). Eine Umarbeitung der bisherigen Einstellungen ist nicht nötig.</p>
<p>Vorherige Modulversionen verwendeten noch keine Cronjob-ID. Wird der Cronjob ohne ID aufgerufen, verwendet dieser automatisch die ID &quot;0&quot; (Null). Eine Umarbeitung der bisherigen Einstellungen ist nicht nötig.</p>
</div>
<nav>

Datei anzeigen

@ -72,7 +72,7 @@
<div class="Page__header">
<h1><a href="../../manual/Einstellungen/Grundeinstellungen.html">Einstellungen</a> <svg class="Page__header--separator" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 477.175 477.175"><path d="M360.73 229.075l-225.1-225.1c-5.3-5.3-13.8-5.3-19.1 0s-5.3 13.8 0 19.1l215.5 215.5-215.5 215.5c-5.3 5.3-5.3 13.8 0 19.1 2.6 2.6 6.1 4 9.5 4 3.4 0 6.9-1.3 9.5-4l225.1-225.1c5.3-5.2 5.3-13.8.1-19z"/></svg> <a href="../../manual/Einstellungen/Aufgabeneinstellungen.html">Aufgabeneinstellungen -> Ordner</a></h1>
<span class="ModifiedDate">
20.08.2020 </span>
16.03.2021 </span>
</div>
<div class="s-content">

Datei anzeigen

@ -72,14 +72,14 @@
<div class="Page__header">
<h1><a href="../../manual/Einstellungen/Grundeinstellungen.html">Einstellungen</a> <svg class="Page__header--separator" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 477.175 477.175"><path d="M360.73 229.075l-225.1-225.1c-5.3-5.3-13.8-5.3-19.1 0s-5.3 13.8 0 19.1l215.5 215.5-215.5 215.5c-5.3 5.3-5.3 13.8 0 19.1 2.6 2.6 6.1 4 9.5 4 3.4 0 6.9-1.3 9.5-4l225.1-225.1c5.3-5.2 5.3-13.8.1-19z"/></svg> <a href="../../manual/Einstellungen/Cronjobeinstellungen_fuer_Cronjob-ID.html">Cronjobeinstellungen für Cronjob-ID "X"</a></h1>
<span class="ModifiedDate">
20.08.2020 </span>
16.03.2021 </span>
</div>
<div class="s-content">
<p>Der Auftragsmanager stellt verschiedene Cronjobs zur Verfügung. Je nach Einrichtung der Aufgaben kann die Anzahl variieren. Details zur Verwendung der Cronjob-IDs finden Sie im Abschnitt <a href="../Aufgaben_automatisch_ausfuehren.html">Aufgaben automatisch ausführen</a>.</p>
<p>Für jeden verfügbaren Cronjob sehen Sie in den Einstellungen die für Einrichtung benötigten Informationen:</p>
<p>Den Link mit allen erforderlichen Parametern für den manuellen Aufruf des Bearbeitungsskripts finden Sie in der Zeile „externer Link“. Über den blauen Button können Sie die Ausführung in einem neuen Browser-Tab sofort starten.</p>
<p>Direkt darunter finden Sie den Link, den Sie für die Einrichtung des Cronjobs benötigen. Dort ist das Passwort nicht nötigt, da Ihr Server die Identifizierung selbst durchführen kann.</p>
<p>Den Shellaufruf mit allen erforderlichen Parametern des Ausführungsskripts finden Sie in der Zeile &quot;interner Cronaufruf&quot;. Direkt darunter finden Sie die Möglichkeit, passende Shell-Scripte für die Einrichtung Ihrer Cronjobs zu erstellen.</p>
<p>Mit dem &quot;externen Link&quot; können Sie die Ausführung manuell im Browser starten. Beachten Sie, dass dieser Link nicht für Cronjobaufrufe verwendet werden kann. Über den blauen Button können Sie die Ausführung in einem neuen Browser-Tab sofort starten. Dieser Link ist abgekündigt und wird in Zukunft entfernt werden. Ändern Sie Ihre Cronjobs bitte auf den &quot;internen Link&quot; ab.</p>
<p>Nachfolgend wird ebenfalls die Zeit gezeigt, zu der dieser Cronjob das letzte Mal erfolgreich gestartet wurde. Haben Sie Zweifel an der Cronjob-Einrichtung bei Ihrem Provider, können Sie dies hier kontrollieren.</p>
<p>Speichern Sie gesetzte Einstellungen ab.</p>
<blockquote class="alert alert-warning">

Datei anzeigen

@ -72,14 +72,14 @@
<div class="Page__header">
<h1><a href="../../manual/Einstellungen/Grundeinstellungen.html">Einstellungen</a> <svg class="Page__header--separator" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 477.175 477.175"><path d="M360.73 229.075l-225.1-225.1c-5.3-5.3-13.8-5.3-19.1 0s-5.3 13.8 0 19.1l215.5 215.5-215.5 215.5c-5.3 5.3-5.3 13.8 0 19.1 2.6 2.6 6.1 4 9.5 4 3.4 0 6.9-1.3 9.5-4l225.1-225.1c5.3-5.2 5.3-13.8.1-19z"/></svg> <a href="../../manual/Einstellungen/Grundeinstellungen.html">Grundeinstellungen</a></h1>
<span class="ModifiedDate">
20.08.2020 </span>
16.03.2021 </span>
</div>
<div class="s-content">
<p>Hier setzen Sie alle Einstellungen, die unabhängig von Ihren gesetzten Aufgaben für die Ausführung des Auftragsmanagers notwendig sind:</p>
<p>Setzen Sie das <span class="navi_element">Modul aktiv</span>: Ohne den Aktiv-Haken können Sie das Modul zwar einrichten, jedoch wird keine der angelegten Aufgaben ausgeführt.</p>
<p>Über <span class="navi_element">Debug aktiv</span> lassen sich Informationen während der Ausführung des Moduls ausgeben, die Ihnen und uns nützliche Hinweise zu einer möglichen Fehlersuche geben. Im Normalbetrieb sollte dieser Haken nicht gesetzt sein, da sonst die Aktionen nicht ausgeführt werden.</p>
<p>In der <span class="navi_element">Logging</span>-Auswahl stellen Sie ein, ob und wie viele Protokollinformationen der Auftragsmanager mitschreiben soll. Die Daten helfen uns bei einer möglichen Ursachensuche, wenn die Auftragsabarbeitung doch einmal nicht wie gewünscht arbeiten sollte. Die Protokolleinträge werden ausschließlich in Ihrer Installation abgelegt. Treffen Sie bei der Entscheidung den Kompromiss zwischen einem ausreichenden Protokoll und dem Speicherplatzbedarf. Im Regelfall ist die Einstellung „Fehler mitschreiben“ ausreichend.</p>
<p>In der <span class="navi_element">Logging</span>-Auswahl stellen Sie ein, ob und wie viele Protokollinformationen der Auftragsmanager mitschreiben soll. Die Daten helfen uns bei einer möglichen Ursachensuche, wenn die Auftragsabarbeitung doch einmal nicht wie gewünscht arbeiten sollte. Die Protokolleinträge werden ausschließlich in Ihrer Installation abgelegt. Treffen Sie bei der Entscheidung den Kompromiss zwischen einem ausreichenden Protokoll und dem Speicherplatzbedarf. Im Regelfall ist die Einstellung &quot;Fehler mitschreiben&quot; ausreichend.</p>
</div>
<nav>

Datei anzeigen

@ -72,14 +72,17 @@
<div class="Page__header">
<h1><a href="../../manual/Einstellungen/Grundeinstellungen.html">Einstellungen</a> <svg class="Page__header--separator" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 477.175 477.175"><path d="M360.73 229.075l-225.1-225.1c-5.3-5.3-13.8-5.3-19.1 0s-5.3 13.8 0 19.1l215.5 215.5-215.5 215.5c-5.3 5.3-5.3 13.8 0 19.1 2.6 2.6 6.1 4 9.5 4 3.4 0 6.9-1.3 9.5-4l225.1-225.1c5.3-5.2 5.3-13.8.1-19z"/></svg> <a href="../../manual/Einstellungen/allgemeine_Cronjobeinstellungen.html">allgemeine Cronjobeinstellungen</a></h1>
<span class="ModifiedDate">
20.08.2020 </span>
16.03.2021 </span>
</div>
<div class="s-content">
<p>Neben der manuell gestarteten Aufgabenausführung können diese auch automatisch über einen oder mehrere Cronjobs gestartet werden. Cronjobs werden auf dem Server eingerichtet und starten die Skriptausführung auch ohne Ihr Zutun.</p>
<p>Setzen Sie hier die Cronjob-Ausführung aktiv, wenn Sie die automatische Abarbeitung nutzen möchten.</p>
<p>Tragen Sie auch die Anzahl der Bestellungen ein, die pro Cronjob-Aufruf abgearbeitet werden dürfen. Die Menge ist begrenzt, da auch ein Cronjob nur eine vom Server vorgegebene Zeit zur Abarbeitung hat. Jede Bestellung benötigt ebenfalls etwas Zeit. Je nach Anzahl der aufgelaufenen Bestellungen und der auszuführenden Aufgaben sollte diese Anzahl justiert werden. Reicht die maximal nutzbare Anzahl der Bestellungen nicht aus, lassen Sie den Cronjob einfach mehrmals laufen (z.B. alle 2 Stunden).</p>
<p>Das Cronjob-Skript können Sie (und jeder Andere auch) zur Einrichtung oder zur Kontrolle im Browser aufrufen. Neben den serverseitigen Sicherheitsmaßnahmen sollten Sie hier ein Passwort vergeben, mit dem das Skript ausschließlich gestartet werden kann. Ohne das Passwort verweigert der Auftragsmanager seine Arbeit. So stellen Sie sicher, dass kein Unbefugter diese Ausführung startet.</p>
<h3 id="page_Scriptaufruf-uber-externe-URL-abgekundigt-fur-automatische-Ausfuhrung">Scriptaufruf über externe URL (abgekündigt für automatische Ausführung)</h3>
<p>Das manuell ausführbare Cronjob-Skript können Sie (und jeder Andere auch) zur Einrichtung oder zur Kontrolle im Browser aufrufen. Neben den serverseitigen Sicherheitsmaßnahmen sollten Sie hier ein Passwort vergeben, mit dem das Skript ausschließlich gestartet werden kann. Ohne das Passwort verweigert der Auftragsmanager seine Arbeit. So stellen Sie sicher, dass kein Unbefugter diese Ausführung startet. Dieses Script ist abgekündigt und sollte für die automatische Ausführung nicht mehr verwendet werden. Bitte verwenden Sie statt dessen das Konsolenscript.</p>
<h3 id="page_Scriptaufruf-uber-Konsolenbefehl">Scriptaufruf über Konsolenbefehl</h3>
<p>Das automatisiert aufrufbare Cronscript lässt sich nur vom Server aus direkt aufrufen und benötigt daher kein Passwort. Rufen Sie <code>./vendor/bin/d3_ordermanager_cron</code> im Shop-Root-Ordner auf, um weitere Informationen zu den Ausführungsmöglichkeiten zu erhalten. Neben dem Ausführungsstart können Sie sich darüber auch Statusinformation zu den Aufgaben oder der Installation abfragen.</p>
</div>
<nav>

Datei anzeigen

@ -72,7 +72,7 @@
<div class="Page__header">
<h1><a href="../manual/Handbuch.html">Handbuch</a></h1>
<span class="ModifiedDate">
20.08.2020 </span>
16.03.2021 </span>
</div>
<div class="s-content">

Datei anzeigen

@ -72,7 +72,7 @@
<div class="Page__header">
<h1><a href="../manual/Logging.html">Logging</a></h1>
<span class="ModifiedDate">
20.08.2020 </span>
16.03.2021 </span>
</div>
<div class="s-content">

Datei anzeigen

@ -72,7 +72,7 @@
<div class="Page__header">
<h1><a href="../manual/Weiterentwicklung.html">Weiterentwicklung</a></h1>
<span class="ModifiedDate">
20.08.2020 </span>
16.03.2021 </span>
</div>
<div class="s-content">

Datei anzeigen

@ -72,7 +72,7 @@
<div class="Page__header">
<h1><a href="../support/Hilfe-und-Support.html">Hilfe und Support</a></h1>
<span class="ModifiedDate">
20.08.2020 </span>
16.03.2021 </span>
</div>
<div class="s-content">

Dateidiff unterdrückt, weil mindestens eine Zeile zu lang ist

Datei anzeigen

@ -19,17 +19,19 @@ namespace D3\Ordermanager\Application\Controller\Admin;
use D3\ModCfg\Application\Model\Exception\d3_cfg_mod_exception;
use D3\ModCfg\Application\Model\Exception\d3ShopCompatibilityAdapterException;
use D3\Ordermanager\Application\Model\Actions\d3ordermanager_action_abstract;
use D3\Ordermanager\Application\Model\Actions\d3ordermanager_actiongrouplist;
use D3\Ordermanager\Application\Model\Actions\d3ordermanager_actionlist;
use D3\Ordermanager\Application\Model\d3ordermanager_pdfhandler;
use D3\Ordermanager\Application\Model\d3ordermanager;
use D3\ModCfg\Application\Model\Shopcompatibility\d3ShopCompatibilityAdapterHandler;
use D3\Ordermanager\Application\Model\Actions\d3ordermanager_action_interface as ActionModelInterface;
use D3\Ordermanager\Application\Model\Actions\d3ordermanager_actiongrouplist as ActionGroupList;
use D3\Ordermanager\Application\Model\Actions\d3ordermanager_actionlist as ActionList;
use D3\Ordermanager\Application\Model\d3ordermanager_pdfhandler as PdfHandler;
use D3\Ordermanager\Application\Model\d3ordermanager as Manager;
use D3\Ordermanager\Application\Model\Exceptions\d3ordermanager_actionException;
use Doctrine\DBAL\DBALException;
use Exception as ExceptionAlias;
use OxidEsales\Eshop\Application\Model\Order;
use OxidEsales\Eshop\Application\Model\ContentList;
use OxidEsales\Eshop\Core\Config;
use OxidEsales\Eshop\Core\Database\Adapter\DatabaseInterface;
use OxidEsales\Eshop\Core\Exception\DatabaseConnectionException;
use OxidEsales\Eshop\Core\Exception\DatabaseErrorException;
use OxidEsales\Eshop\Core\Exception\StandardException;
@ -37,7 +39,9 @@ use OxidEsales\Eshop\Core\Language;
use OxidEsales\Eshop\Core\Module\Module;
use OxidEsales\Eshop\Core\Module\ModuleList;
use OxidEsales\Eshop\Core\Model\ListModel;
use OxidEsales\Eshop\Core\Registry;
use OxidEsales\Eshop\Core\Request;
use OxidEsales\Eshop\Core\UtilsView;
class d3_cfg_ordermanageritem_action extends d3_cfg_ordermanageritem_settings
{
@ -57,12 +61,17 @@ class d3_cfg_ordermanageritem_action extends d3_cfg_ordermanageritem_settings
// @codeCoverageIgnoreEnd
$aMissingRequiredValues = array();
/** @var d3ordermanager_action_abstract $oAction */
/** @var ActionModelInterface $oAction */
foreach ($this->getActionList() as $sId => $oAction) {
if ($this->getProfile()->getValue($oAction->sActionActiveSwitch) && false == $oAction->hasRequiredValues()) {
$aMissingRequiredValues[] = $sId;
if ($this->getProfile()->getValue($oAction->getActiveSwitchParameter())) {
try {
$oAction->throwUnvalidConfigurationException();
} catch (d3ordermanager_actionException $e) {
unset($e);
$aMissingRequiredValues[] = $sId;
}
}
};
}
if (count($aMissingRequiredValues)) {
$this->addTplParam('missingRequValuesActions', $aMissingRequiredValues);
@ -86,7 +95,10 @@ class d3_cfg_ordermanageritem_action extends d3_cfg_ordermanageritem_settings
*/
public function d3GetConfig()
{
return d3GetModCfgDIC()->get('d3ox.ordermanager.'.Config::class);
/** @var Config $config */
$config = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Config::class);
return $config;
}
/**
@ -112,12 +124,13 @@ class d3_cfg_ordermanageritem_action extends d3_cfg_ordermanageritem_settings
}
/**
* @return d3ordermanager
* @return Manager
* @throws ExceptionAlias
*/
public function getProfile()
{
$oProfile = d3GetModCfgDIC()->get(d3ordermanager::class);
/** @var Manager $oProfile */
$oProfile = d3GetModCfgDIC()->get(Manager::class);
$soxId = $this->getEditObjectId();
@ -185,7 +198,10 @@ class d3_cfg_ordermanageritem_action extends d3_cfg_ordermanageritem_settings
*/
public function getLang()
{
return d3GetModCfgDIC()->get('d3ox.ordermanager.'.Language::class);
/** @var Language $language */
$language = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Language::class);
return $language;
}
/**
@ -219,21 +235,24 @@ class d3_cfg_ordermanageritem_action extends d3_cfg_ordermanageritem_settings
}
/**
* @return d3ordermanager_pdfhandler
* @return PdfHandler
* @throws ExceptionAlias
*/
public function getPdfHandler()
{
d3GetModCfgDIC()->set(
d3ordermanager_pdfhandler::class.'.args.ordermanager',
PdfHandler::class.'.args.ordermanager',
$this->getProfile()
);
d3GetModCfgDIC()->set(
d3ordermanager_pdfhandler::class.'.args.order',
PdfHandler::class.'.args.order',
d3GetModCfgDIC()->get('d3ox.ordermanager.'.Order::class)
);
return d3GetModCfgDIC()->get(d3ordermanager_pdfhandler::class);
/** @var PdfHandler $pdfhandler */
$pdfhandler = d3GetModCfgDIC()->get(PdfHandler::class);
return $pdfhandler;
}
/**
@ -255,39 +274,44 @@ class d3_cfg_ordermanageritem_action extends d3_cfg_ordermanageritem_settings
}
/**
* @return d3ordermanager_actiongrouplist
* @return ActionGroupList
* @throws ExceptionAlias
*/
public function getActionGroupList()
{
d3GetModCfgDIC()->set(
d3ordermanager_actiongrouplist::class.'.args.ordermanager',
ActionGroupList::class.'.args.ordermanager',
$this->getProfile()
);
d3GetModCfgDIC()->set(
d3ordermanager_actiongrouplist::class.'.args.order',
ActionGroupList::class.'.args.order',
d3GetModCfgDIC()->get('d3ox.ordermanager.'.Order::class)
);
return d3GetModCfgDIC()->get(d3ordermanager_actiongrouplist::class);
/** @var ActionGroupList $actiongroup */
$actiongroup = d3GetModCfgDIC()->get(ActionGroupList::class);
return $actiongroup;
}
/**
* @return d3ordermanager_actionlist
* @return ActionList
* @throws ExceptionAlias
*/
public function getActionListObject()
{
d3GetModCfgDIC()->set(
d3ordermanager_actionlist::class.'.args.ordermanager',
ActionList::class.'.args.ordermanager',
$this->getProfile()
);
d3GetModCfgDIC()->set(
d3ordermanager_actionlist::class.'.args.order',
ActionList::class.'.args.order',
d3GetModCfgDIC()->get('d3ox.ordermanager.'.Order::class)
);
return d3GetModCfgDIC()->get(d3ordermanager_actionlist::class);
/** @var ActionList $actionlist */
$actionlist = d3GetModCfgDIC()->get(ActionList::class);
return $actionlist;
}
/**
@ -296,7 +320,6 @@ class d3_cfg_ordermanageritem_action extends d3_cfg_ordermanageritem_settings
*/
public function getGroupedActionList()
{
/** @var d3ordermanager $oManager */
$oManager = $this->getProfile();
$oActionList = $this->getActionGroupList();
$oActionList->setGroups($oManager->getConfiguration()->getGroupedActionIdList());
@ -310,7 +333,6 @@ class d3_cfg_ordermanageritem_action extends d3_cfg_ordermanageritem_settings
*/
public function getActionList()
{
/** @var d3ordermanager $oManager */
$oManager = $this->getProfile();
$oActionList = $this->getActionListObject();
$oActionList->setActions($oManager->getConfiguration()->getActionIdList());
@ -319,12 +341,12 @@ class d3_cfg_ordermanageritem_action extends d3_cfg_ordermanageritem_settings
}
/**
* @param d3ordermanager $oProfile
* @param Manager $oProfile
* @param $soxId
*
* @return d3ordermanager
* @return Manager
*/
protected function _d3LoadInOtherLang(d3ordermanager $oProfile, $soxId)
protected function _d3LoadInOtherLang(Manager $oProfile, $soxId)
{
// load object in other languages
$oOtherLang = $oProfile->getAvailableInLangs();
@ -341,7 +363,9 @@ class d3_cfg_ordermanageritem_action extends d3_cfg_ordermanageritem_settings
*/
public function getModuleList()
{
return d3GetModCfgDIC()->get('d3ox.ordermanager.'.ModuleList::class);
/** @var ModuleList $moduleList */
$moduleList = d3GetModCfgDIC()->get('d3ox.ordermanager.'.ModuleList::class);
return $moduleList;
}
/**
@ -350,7 +374,9 @@ class d3_cfg_ordermanageritem_action extends d3_cfg_ordermanageritem_settings
*/
public function getShopCompatibilityAdapterHandler()
{
return d3GetModCfgDIC()->get(d3ShopCompatibilityAdapterHandler::class);
/** @var d3ShopCompatibilityAdapterHandler $adapter */
$adapter = d3GetModCfgDIC()->get(d3ShopCompatibilityAdapterHandler::class);
return $adapter;
}
/**
@ -369,11 +395,9 @@ class d3_cfg_ordermanageritem_action extends d3_cfg_ordermanageritem_settings
/** @var Module $oModule */
$oModule = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Module::class);
/** @var ModuleList $oModuleList */
$oModuleList = $this->getModuleList();
foreach (array_keys($oModuleList->getModulesFromDir($sModulesDir)) as $sId) {
/** @var d3ShopCompatibilityAdapterHandler $oD3CompatibilityAdapterHandler */
$oD3CompatibilityAdapterHandler = $this->getShopCompatibilityAdapterHandler();
$sModulePath = $oD3CompatibilityAdapterHandler->call(
'oxmodule__getModuleFullPath',
@ -381,7 +405,7 @@ class d3_cfg_ordermanageritem_action extends d3_cfg_ordermanageritem_settings
);
$aModulePathList[$sId] = $sModulePath;
};
}
return $aModulePathList;
}
@ -397,14 +421,21 @@ class d3_cfg_ordermanageritem_action extends d3_cfg_ordermanageritem_settings
*/
public function markAsFinished()
{
/** @var d3ordermanager $oProfile */
$oProfile = $this->getProfile();
/** @var Language $oLang */
$oLang = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Language::class);
$iCount = $oProfile->markConcernedItemsAsFinished();
$this->_aMessages[] = sprintf(
$oLang->translateString('D3_ORDERMANAGER_ACTION_MARKASFINISHED_MESSAGE'),
$iCount
$iAllCount = d3GetModCfgDIC()->get('d3ox.ordermanager.'.DatabaseInterface::class.'.assoc')
->getOne('SELECT COUNT(*) FROM '.d3GetModCfgDIC()->get('d3ox.ordermanager.'.Order::class)->getViewName());
$iCount = $oProfile->markConcernedItemsAsFinished(true);
$oEx = oxNew(
StandardException::class,
sprintf(
$oLang->translateString('D3_ORDERMANAGER_ACTION_MARKASFINISHED_MESSAGE'),
$iCount,
$iAllCount
)
);
Registry::get(UtilsView::class)->addErrorToDisplay($oEx);
}
}

Datei anzeigen

@ -93,7 +93,9 @@ class d3_cfg_ordermanageritem_mall extends d3AdminMall
*/
public function getProfile()
{
return d3GetModCfgDIC()->get($this->_sObjectClassName);
/** @var d3ordermanager $oManager */
$oManager = d3GetModCfgDIC()->get($this->_sObjectClassName);
return $oManager;
}
/**
@ -132,7 +134,10 @@ class d3_cfg_ordermanageritem_mall extends d3AdminMall
*/
public function getLang()
{
return d3GetModCfgDIC()->get('d3ox.ordermanager.'.Language::class);
/** @var Language $lang */
$lang = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Language::class);
return $lang;
}
/**
@ -166,7 +171,10 @@ class d3_cfg_ordermanageritem_mall extends d3AdminMall
*/
public function d3GetSet()
{
return d3GetModCfgDIC()->get('d3.ordermanager.modcfg');
/** @var d3_cfg_mod $modcfg */
$modcfg = d3GetModCfgDIC()->get('d3.ordermanager.modcfg');
return $modcfg;
}
/**

Datei anzeigen

@ -17,18 +17,24 @@
namespace D3\Ordermanager\Application\Controller\Admin;
use D3\ModCfg\Application\Model\Exception\d3ParameterNotFoundException;
use D3\Ordermanager\Application\Model\Requirements\d3ordermanager_requirementlist;
use D3\Ordermanager\Application\Model\Actions\d3ordermanager_actionlist;
use D3\Ordermanager\Application\Model\d3ordermanager;
use D3\ModCfg\Application\Controller\Admin\d3_cfg_mod_main;
use D3\ModCfg\Application\Model\Exception\d3_cfg_mod_exception;
use D3\ModCfg\Application\Model\Exception\d3ParameterNotFoundException;
use D3\ModCfg\Application\Model\Exception\d3ShopCompatibilityAdapterException;
use D3\Ordermanager\Application\Model\Actions\d3ordermanager_actionlist as ActionListModel;
use D3\Ordermanager\Application\Model\d3ordermanager as Manager;
use D3\Ordermanager\Application\Model\d3ordermanager_configurationcheck;
use D3\Ordermanager\Application\Model\Exceptions\d3ActionRequirementAbstract;
use D3\Ordermanager\Application\Model\Requirements\d3ordermanager_requirementlist as RequirementListModel;
use Doctrine\DBAL\DBALException;
use Exception;
use OxidEsales\Eshop\Application\Model\Order;
use OxidEsales\Eshop\Core\Exception\DatabaseConnectionException;
use OxidEsales\Eshop\Core\Exception\DatabaseErrorException;
use OxidEsales\Eshop\Core\Exception\StandardException;
use OxidEsales\Eshop\Core\Language;
use OxidEsales\Eshop\Core\Request;
use OxidEsales\Eshop\Core\UtilsView;
use oxsystemcomponentexception;
class d3_cfg_ordermanageritem_overview extends d3_cfg_mod_main
@ -45,9 +51,41 @@ class d3_cfg_ordermanageritem_overview extends d3_cfg_mod_main
'sTranslationId' => 'D3_TOOLTIPS_NEWORDERMANAGER',
),
);
protected $_sD3ObjectClass = d3ordermanager::class;
protected $_sD3ObjectClass = Manager::class;
protected $_sRequestData;
/**
* @return string
* @throws DBALException
* @throws DatabaseConnectionException
* @throws DatabaseErrorException
* @throws d3ShopCompatibilityAdapterException
* @throws d3_cfg_mod_exception
* @throws StandardException
*/
public function render()
{
try {
d3GetModCfgDIC()->set(
d3ordermanager_configurationcheck::class.'.args.ordermanager',
$this->getManager()
);
d3GetModCfgDIC()->setParameter(
d3ordermanager_configurationcheck::class.'.args.checktypes',
d3ordermanager_configurationcheck::REQUIREMENTS_AND_ACTIONS
);
/** @var d3ordermanager_configurationcheck $confCheck */
$confCheck = d3GetModCfgDIC()->get(d3ordermanager_configurationcheck::class);
$confCheck->checkThrowingExceptions();
} catch (d3ActionRequirementAbstract $e) {
/** @var UtilsView $utilsView */
$utilsView = d3GetModCfgDIC()->get('d3ox.ordermanager.'.UtilsView::class);
$utilsView->addErrorToDisplay($e);
}
return parent::render();
}
/**
* @return d3_cfg_ordermanageritem_action
* @throws Exception
@ -67,41 +105,41 @@ class d3_cfg_ordermanageritem_overview extends d3_cfg_mod_main
}
/**
* @param $sName
* @param $aArguments
* @param $method
* @param $arguments
*
* @return mixed
* @throws oxSystemComponentException
* @throws Exception
*/
public function __call($sName, $aArguments)
public function __call($method, $arguments)
{
$oActionView = $this->getActionAdminController();
if (method_exists($oActionView, $sName)) {
return call_user_func_array(array($oActionView, $sName), $aArguments);
if (method_exists($oActionView, $method)) {
return call_user_func_array(array($oActionView, $method), $arguments);
}
$oRequView = $this->getRequirementAdminController();
if (method_exists($oRequView, $sName)) {
return call_user_func_array(array($oRequView, $sName), $aArguments);
if (method_exists($oRequView, $method)) {
return call_user_func_array(array($oRequView, $method), $arguments);
}
return parent::__call($sName, $aArguments);
return parent::__call($method, $arguments);
}
/**
* @param d3ordermanager $oManager
* @return d3ordermanager_requirementlist
* @param Manager $oManager
* @return RequirementListModel
* @throws Exception
*/
public function getRequirementListObject(d3ordermanager $oManager)
public function getRequirementListObject(Manager $oManager)
{
d3GetModCfgDIC()->set(
d3ordermanager_requirementlist::class.'.args.ordermanager',
RequirementListModel::class.'.args.ordermanager',
$oManager
);
return d3GetModCfgDIC()->get(d3ordermanager_requirementlist::class);
return d3GetModCfgDIC()->get(RequirementListModel::class);
}
/**
@ -110,7 +148,7 @@ class d3_cfg_ordermanageritem_overview extends d3_cfg_mod_main
*/
public function getRequirementList()
{
/** @var d3ordermanager $oManager */
/** @var Manager $oManager */
$oManager = $this->getProfile();
$oRequList = $this->getRequirementListObject($oManager);
$oRequList->setRequirements($oManager->getConfiguration()->getRequirementIdList());
@ -119,22 +157,22 @@ class d3_cfg_ordermanageritem_overview extends d3_cfg_mod_main
}
/**
* @param d3ordermanager $oManager
* @return d3ordermanager_actionlist
* @param Manager $oManager
* @return ActionListModel
* @throws Exception
*/
public function getActionListObject(d3ordermanager $oManager)
public function getActionListObject(Manager $oManager)
{
d3GetModCfgDIC()->set(
d3ordermanager_actionlist::class.'.args.ordermanager',
ActionListModel::class.'.args.ordermanager',
$oManager
);
d3GetModCfgDIC()->set(
d3ordermanager_actionlist::class.'.args.order',
ActionListModel::class.'.args.order',
d3GetModCfgDIC()->get('d3ox.ordermanager.'.Order::class)
);
return d3GetModCfgDIC()->get(d3ordermanager_actionlist::class);
return d3GetModCfgDIC()->get(ActionListModel::class);
}
/**
@ -143,7 +181,7 @@ class d3_cfg_ordermanageritem_overview extends d3_cfg_mod_main
*/
public function getActionList()
{
/** @var d3ordermanager $oManager */
/** @var Manager $oManager */
$oManager = $this->getProfile();
$oActionList = $this->getActionListObject($oManager);
$oActionList->setActions($oManager->getConfiguration()->getActionIdList());
@ -192,7 +230,7 @@ class d3_cfg_ordermanageritem_overview extends d3_cfg_mod_main
$iRequestCount = $request->getRequestEscapedParameter('toFinishedCount');
if ($this->canRequestData(__FUNCTION__)) {
/** @var d3ordermanager $oProfile */
/** @var Manager $oProfile */
$oProfile = $this->getProfile();
return $oProfile->getListGenerator()->getConcernedItemCount();
} elseif ($this->canUseRequestData($iRequestCount)) {
@ -217,7 +255,7 @@ class d3_cfg_ordermanageritem_overview extends d3_cfg_mod_main
$iRequestCount = $request->getRequestEscapedParameter('finishedCount');
if ($this->canRequestData(__FUNCTION__)) {
/** @var d3ordermanager $oProfile */
/** @var Manager $oProfile */
$oProfile = $this->getProfile();
return $oProfile->getListGenerator()->getFinishedItemCount();
} elseif ($this->canUseRequestData($iRequestCount)) {
@ -242,7 +280,7 @@ class d3_cfg_ordermanageritem_overview extends d3_cfg_mod_main
$iRequestCount = $request->getRequestEscapedParameter('finishedMonthCount');
if ($this->canRequestData(__FUNCTION__)) {
/** @var d3ordermanager $oProfile */
/** @var Manager $oProfile */
$oProfile = $this->getProfile();
return $oProfile->getListGenerator()->getFinishedMonthItemCount();
} elseif ($this->canUseRequestData($iRequestCount)) {
@ -267,7 +305,7 @@ class d3_cfg_ordermanageritem_overview extends d3_cfg_mod_main
$iRequestCount = $request->getRequestEscapedParameter('notFinishedCount');
if ($this->canRequestData(__FUNCTION__)) {
/** @var d3ordermanager $oProfile */
/** @var Manager $oProfile */
$oProfile = $this->getProfile();
return $oProfile->getListGenerator()->getNotFinishedItemCount();
} elseif ($this->canUseRequestData($iRequestCount)) {
@ -337,12 +375,15 @@ class d3_cfg_ordermanageritem_overview extends d3_cfg_mod_main
}
/**
* @return d3ordermanager
* @return Manager
* @throws Exception
*/
public function getManager()
{
return d3GetModCfgDIC()->get(d3ordermanager::class);
/** @var Manager $manager */
$manager = d3GetModCfgDIC()->get(Manager::class);
$manager->load($this->getEditObjectId());
return $manager;
}
/**
@ -364,7 +405,7 @@ class d3_cfg_ordermanageritem_overview extends d3_cfg_mod_main
$oManager = $this->getManager();
if ($oManager->load($sManagerId)) {
return $oManager->getFieldData('oxtitle');
};
}
return $this->getLang()->translateString('D3_ORDERMANAGER_REQU_OTHERJOB_UNKNOWNJOBID').' "'.$sManagerId.'"';
}

Datei anzeigen

@ -17,7 +17,8 @@
namespace D3\Ordermanager\Application\Controller\Admin;
use D3\Ordermanager\Application\Model\Requirements\d3ordermanager_requirement_abstract;
use D3\Ordermanager\Application\Model\Exceptions\d3ordermanager_requirementException;
use D3\Ordermanager\Application\Model\Requirements\d3ordermanager_requirement_interface as RequirementModelInterface;
use D3\Ordermanager\Application\Model\Requirements\d3ordermanager_requirementgrouplist;
use D3\Ordermanager\Application\Model\d3ordermanager;
use D3\Ordermanager\Application\Model\d3ordermanagerlist;
@ -44,12 +45,17 @@ class d3_cfg_ordermanageritem_requ extends d3_cfg_ordermanageritem_settings
// @codeCoverageIgnoreEnd
$aMissingRequiredValues = array();
/** @var d3ordermanager_requirement_abstract $oRequirement */
/** @var RequirementModelInterface $oRequirement */
foreach ($this->getRequirementList() as $sId => $oRequirement) {
if ($this->getProfile()->getValue($oRequirement->sRequActiveSwitch) && false == $oRequirement->hasRequiredValues()) {
$aMissingRequiredValues[] = $sId;
if ($this->getProfile()->getValue($oRequirement->getActiveSwitchParameter())) {
try {
$oRequirement->throwUnvalidConfigurationException();
} catch (d3ordermanager_requirementException $e) {
unset($e);
$aMissingRequiredValues[] = $sId;
}
}
};
}
if (count($aMissingRequiredValues)) {
$this->addTplParam('missingRequValuesActions', $aMissingRequiredValues);
@ -111,8 +117,7 @@ class d3_cfg_ordermanageritem_requ extends d3_cfg_ordermanageritem_settings
public function getLanguageList()
{
$oLang = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Language::class);
$aLanguageList = $oLang->getLanguageArray();
return $aLanguageList;
return $oLang->getLanguageArray();
}
/**
@ -174,7 +179,6 @@ class d3_cfg_ordermanageritem_requ extends d3_cfg_ordermanageritem_settings
{
/** @var d3ordermanager $oManager */
$oManager = $this->getProfile();
/** @var d3ordermanager_requirementgrouplist $oRequList */
$oRequList = $this->getRequirementGroupList($oManager);
$oRequList->setGroups($oManager->getConfiguration()->getGroupedRequirementIdList());
@ -189,7 +193,6 @@ class d3_cfg_ordermanageritem_requ extends d3_cfg_ordermanageritem_settings
{
/** @var d3ordermanager $oManager */
$oManager = $this->getProfile();
/** @var d3ordermanager_requirementlist $oRequList */
$oRequList = $this->getRequirementListObject($oManager);
$oRequList->setRequirements($oManager->getConfiguration()->getRequirementIdList());

Datei anzeigen

@ -59,7 +59,7 @@ class d3_cfg_ordermanageritem_settings extends d3_cfg_mod_main
* @return array
* @throws Exception
*/
public function getItemFolders()
public function getOrderFolders()
{
/** @var Config $config */
$config = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Config::class);

Datei anzeigen

@ -110,7 +110,7 @@ class d3_cfg_ordermanagerset_main extends d3_cfg_mod_main
* @throws FileException
* @throws Exception
*/
public function getCronLink($blUsePw, $iCronJobId = false)
public function getCronLink($blUsePw = true, $iCronJobId = false)
{
$sBaseUrl = $this->getViewConfig()->getModuleUrl('d3ordermanager').'public/d3_ordermanager_cron.php';
@ -128,9 +128,7 @@ class d3_cfg_ordermanagerset_main extends d3_cfg_mod_main
$this->getBaseCronPW();
}
$sURL = $this->getD3Str()->generateParameterUrl($sBaseUrl, $aParameters);
return $sURL;
return $this->getD3Str()->generateParameterUrl($sBaseUrl, $aParameters);
}
/**
@ -157,9 +155,7 @@ class d3_cfg_ordermanagerset_main extends d3_cfg_mod_main
$aParameters['cjid'] = $iCronJobId;
}
$sPath = 'php ' . $sScriptPath." ".implode(' ', $aParameters);
return $sPath;
return 'php ' . $sScriptPath." ".implode(' ', $aParameters);
}
/**
@ -269,7 +265,6 @@ class d3_cfg_ordermanagerset_main extends d3_cfg_mod_main
$request = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Request::class);
$sCronId = $request->getRequestEscapedParameter('cronid');
/** @var Shop $oShop */
$oShop = $this->d3GetActiveShop();
$aParameters = array(
0 => 'run',

Datei anzeigen

@ -17,20 +17,24 @@
namespace D3\Ordermanager\Application\Controller\Admin;
use D3\ModCfg\Application\Model\Configuration\d3_cfg_mod;
use D3\ModCfg\Application\Model\d3filesystem;
use D3\ModCfg\Application\Model\d3str;
use D3\ModCfg\Application\Model\Exception\d3_cfg_mod_exception;
use D3\ModCfg\Application\Model\Exception\d3ParameterNotFoundException;
use D3\ModCfg\Application\Model\Exception\d3ShopCompatibilityAdapterException;
use D3\Ordermanager\Application\Model\d3ordermanager;
use D3\Ordermanager\Application\Model\d3ordermanager as Manager;
use D3\Ordermanager\Application\Model\d3ordermanager_configurationcheck;
use D3\Ordermanager\Application\Model\d3ordermanager_execute as ManagerExecuteModel;
use D3\Ordermanager\Application\Model\d3ordermanager_toorderassignment as ToItemAssignmentModel;
use D3\Ordermanager\Application\Model\d3ordermanagerlist;
use D3\Ordermanager\Application\Model\d3ordermanager_execute;
use D3\Ordermanager\Application\Model\d3ordermanager_toorderassignment;
use D3\ModCfg\Application\Model\Configuration\d3_cfg_mod;
use D3\Ordermanager\Application\Model\Exceptions\d3ActionRequirementAbstract;
use D3\Ordermanager\Application\Model\Exceptions\d3ordermanager_templaterendererExceptionInterface;
use Doctrine\DBAL\DBALException;
use Exception;
use OxidEsales\Eshop\Application\Model\Order;
use OxidEsales\Eshop\Application\Controller\Admin\AdminDetailsController;
use OxidEsales\Eshop\Core\Config;
use OxidEsales\Eshop\Core\Exception\DatabaseConnectionException;
use OxidEsales\Eshop\Core\Exception\DatabaseErrorException;
use OxidEsales\Eshop\Core\Exception\StandardException;
@ -39,6 +43,7 @@ use OxidEsales\Eshop\Core\Language;
use OxidEsales\Eshop\Core\Model\BaseModel;
use OxidEsales\Eshop\Core\Request;
use OxidEsales\Eshop\Core\Session;
use OxidEsales\Eshop\Core\UtilsView;
class d3_ordermanager_jobs extends AdminDetailsController
{
@ -54,7 +59,7 @@ class d3_ordermanager_jobs extends AdminDetailsController
{
// prevent the use of the global currency setting instead of the order setting
unset($_GET['cur']);
d3GetModCfgDIC()->setParameter('d3.ordermanager.modcfgid', $this->_sModId);
parent::__construct();
@ -160,21 +165,31 @@ class d3_ordermanager_jobs extends AdminDetailsController
*/
protected function _d3GetManuallyManagerJobs($sFolderId)
{
$oManagerList = $this->getManagerList();
$oList = $oManagerList->d3GetManuallyManagerJobsByFolder($sFolderId);
try {
$oManagerList = $this->getManagerList();
$oList = $oManagerList->d3GetManuallyManagerJobsByFolder($sFolderId);
/** @var d3ordermanager $oManager */
foreach ($oList as $sId => $oManager) {
$oManagerExecute = $this->getManagerExecute($oManager);
/** @var Manager $oManager */
foreach ($oList as $sId => $oManager) {
$oManagerExecute = $this->getManagerExecute($oManager);
if ($oManager->getValue('sManuallyExecMeetCondition') &&
false == $oManagerExecute->orderMeetsConditions($this->getEditObjectId())
) {
$oList->offsetUnset($sId);
if ($oManager->getValue('sManuallyExecMeetCondition') &&
false == $oManagerExecute->orderMeetsConditions($this->getEditObjectId())
) {
$oList->offsetUnset($sId);
}
}
return $oList;
} catch (d3ActionRequirementAbstract $oEx) {
/** @var UtilsView $utilsView */
$utilsView = d3GetModCfgDIC()->get('d3ox.ordermanager.'.UtilsView::class);
$utilsView->addErrorToDisplay($oEx);
}
return $oList;
/** @var d3ordermanagerlist $managerList */
$managerList = d3GetModCfgDIC()->get(d3ordermanagerlist::class);
return $managerList;
}
/**
@ -186,27 +201,27 @@ class d3_ordermanager_jobs extends AdminDetailsController
}
/**
* @return d3ordermanager
* @return Manager
* @throws Exception
*/
public function getManager()
{
return d3GetModCfgDIC()->get(d3ordermanager::class);
return d3GetModCfgDIC()->get(Manager::class);
}
/**
* @param d3ordermanager $oManager
* @return d3ordermanager_execute
* @param Manager $oManager
* @return ManagerExecuteModel
* @throws Exception
*/
public function getManagerExecute(d3ordermanager $oManager)
public function getManagerExecute(Manager $oManager)
{
d3GetModCfgDIC()->set(
d3ordermanager_execute::class.'.args.ordermanager',
ManagerExecuteModel::class.'.args.ordermanager',
$oManager
);
return d3GetModCfgDIC()->get(d3ordermanager_execute::class);
return d3GetModCfgDIC()->get(ManagerExecuteModel::class);
}
/**
@ -220,18 +235,35 @@ class d3_ordermanager_jobs extends AdminDetailsController
*/
public function d3execordermanager()
{
/** @var Request $request */
$request = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Request::class);
try {
/** @var Request $request */
$request = d3GetModCfgDIC()->get('d3ox.ordermanager.' . Request::class);
$oManager = $this->getManager();
$oManager->load($request->getRequestEscapedParameter('ordermanagerid'));
$oManagerExec = $this->getManagerExecute($oManager);
$oManager = $this->getManager();
$oManager->load($request->getRequestEscapedParameter('ordermanagerid'));
$oManagerExec = $this->getManagerExecute($oManager);
if (false == $oManager->getValue('sManuallyExecMeetCondition') ||
$oManagerExec->orderMeetsConditions($this->getEditObjectId())
) {
$oManagerExec->exec4order($this->getEditObjectId());
$oManagerExec->finishJobExecution();
$this->checkForConfigurationException($oManager);
if (false == $oManager->getValue('sManuallyExecMeetCondition') ||
$oManagerExec->orderMeetsConditions($this->getEditObjectId())
) {
$oManagerExec->exec4order($this->getEditObjectId());
$oManagerExec->finishJobExecution();
}
} catch (d3ActionRequirementAbstract $oEx) {
$oEx->debugOut();
/** @var UtilsView $utilsView */
$utilsView = d3GetModCfgDIC()->get('d3ox.ordermanager.'.UtilsView::class);
$utilsView->addErrorToDisplay($oEx);
} catch (d3ordermanager_templaterendererExceptionInterface $oEx) {
$oEx->debugOut();
/** @var UtilsView $utilsView */
$utilsView = d3GetModCfgDIC()->get('d3ox.ordermanager.'.UtilsView::class);
$utilsView->addErrorToDisplay($oEx);
} finally {
$oConfig = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Config::class);
$oConfig->setAdminMode(true);
}
}
@ -246,35 +278,52 @@ class d3_ordermanager_jobs extends AdminDetailsController
*/
public function d3ExecChangedOrderManager()
{
/** @var Request $request */
$request = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Request::class);
try {
/** @var Request $request */
$request = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Request::class);
$oManager = $this->getManager();
$oManager->load($request->getRequestEscapedParameter('ordermanagerid'));
$oManager->setEditedValues($request->getRequestEscapedParameter('aContent'));
$oManagerExec = $this->getManagerExecute($oManager);
$oManager = $this->getManager();
$oManager->load($request->getRequestEscapedParameter('ordermanagerid'));
$oManager->setEditedValues($request->getRequestEscapedParameter('aContent'));
$oManagerExec = $this->getManagerExecute($oManager);
if (false == $oManager->getValue('sManuallyExecMeetCondition') ||
$oManagerExec->orderMeetsConditions($this->getEditObjectId())
) {
$oManagerExec->exec4order($this->getEditObjectId());
$oManagerExec->finishJobExecution();
$this->checkForConfigurationException($oManager);
if (false == $oManager->getValue('sManuallyExecMeetCondition') ||
$oManagerExec->orderMeetsConditions($this->getEditObjectId())
) {
$oManagerExec->exec4order($this->getEditObjectId());
$oManagerExec->finishJobExecution();
}
} catch (d3ActionRequirementAbstract $e) {
$e->debugOut();
/** @var UtilsView $utilsView */
$utilsView = d3GetModCfgDIC()->get('d3ox.ordermanager.'.UtilsView::class);
$utilsView->addErrorToDisplay($e);
} catch (d3ordermanager_templaterendererExceptionInterface $oEx) {
$oEx->debugOut();
/** @var UtilsView $utilsView */
$utilsView = d3GetModCfgDIC()->get('d3ox.ordermanager.'.UtilsView::class);
$utilsView->addErrorToDisplay($oEx);
} finally {
$oConfig = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Config::class);
$oConfig->setAdminMode(true);
}
}
/**
* @param d3ordermanager $oManager
* @return d3ordermanager_toorderassignment
* @param Manager $oManager
* @return ToItemAssignmentModel
* @throws Exception
*/
public function getOrderManagerAssignment(d3ordermanager $oManager)
public function getOrderManagerAssignment(Manager $oManager)
{
d3GetModCfgDIC()->set(
d3ordermanager_toorderassignment::class.'.args.ordermanager',
ToItemAssignmentModel::class.'.args.ordermanager',
$oManager
);
return d3GetModCfgDIC()->get(d3ordermanager_toorderassignment::class);
return d3GetModCfgDIC()->get(ToItemAssignmentModel::class);
}
/**
@ -318,25 +367,45 @@ class d3_ordermanager_jobs extends AdminDetailsController
*/
public function execChangedContents()
{
/** @var Request $request */
$request = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Request::class);
$sItemId = $this->getEditObjectId();
$oManager = $this->getManager();
$oManager->load($request->getRequestEscapedParameter('ordermanagerid'));
$this->addTplParam('aMailContent', $oManager->getEditableContent($sItemId));
try {
/** @var Request $request */
$request = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Request::class);
$sItemId = $this->getEditObjectId();
$oManager = $this->getManager();
$oManager->load($request->getRequestEscapedParameter('ordermanagerid'));
$contents = $oManager->getEditableContent($sItemId);
$field = oxNew(Field::class);
$field->setValue($contents['html']);
$object = oxNew(BaseModel::class);
$object->__set(
'aContent[mail][html]',
$field
);
$this->addTplParam("htmleditor", $this->generateTextEditor("95%", 180, $object, "aContent[mail][html]", "list.tpl.css"));
// check configuration exceptions
$this->checkForConfigurationException($oManager);
$this->addTplParam('sAction', __FUNCTION__);
$this->addTplParam('oOrderManager', $oManager);
$contents = $oManager->getEditableContent($sItemId);
$this->addTplParam('aMailContent', $contents);
$field = oxNew(Field::class);
$field->setValue($contents['html']);
$object = oxNew(BaseModel::class);
$object->__set(
'aContent[mail][html]',
$field
);
$this->addTplParam("htmleditor", $this->generateTextEditor("95%", 180, $object, "aContent[mail][html]", "list.tpl.css"));
$this->addTplParam('sAction', __FUNCTION__);
$this->addTplParam('oManager', $oManager);
} catch (d3ActionRequirementAbstract $oEx) {
$oEx->debugOut();
/** @var UtilsView $utilsView */
$utilsView = d3GetModCfgDIC()->get('d3ox.ordermanager.'.UtilsView::class);
$utilsView->addErrorToDisplay($oEx);
} catch (d3ordermanager_templaterendererExceptionInterface $oEx) {
$oEx->debugOut();
/** @var UtilsView $utilsView */
$utilsView = d3GetModCfgDIC()->get('d3ox.ordermanager.'.UtilsView::class);
$utilsView->addErrorToDisplay($oEx);
} finally {
$oConfig = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Config::class);
$oConfig->setAdminMode(true);
}
}
/**
@ -395,4 +464,22 @@ class d3_ordermanager_jobs extends AdminDetailsController
{
return '';
}
/**
* @param Manager $oManager
* @throws d3ActionRequirementAbstract
*/
protected function checkForConfigurationException(Manager $oManager)
{
d3GetModCfgDIC()->set(d3ordermanager_configurationcheck::class.'.args.ordermanager', $oManager);
d3GetModCfgDIC()->setParameter(
d3ordermanager_configurationcheck::class.'.args.checktypes',
$oManager->getValue('sManuallyExecMeetCondition') ?
d3ordermanager_configurationcheck::REQUIREMENTS_AND_ACTIONS :
d3ordermanager_configurationcheck::ACTIONS_ONLY
);
/** @var d3ordermanager_configurationcheck $confCheck */
$confCheck = d3GetModCfgDIC()->get(d3ordermanager_configurationcheck::class);
$confCheck->checkThrowingExceptions();
}
}

Datei anzeigen

@ -20,7 +20,7 @@ namespace D3\Ordermanager\Application\Controller;
use D3\ModCfg\Application\Model\Exception\d3_cfg_mod_exception;
use D3\ModCfg\Application\Model\Exception\d3ShopCompatibilityAdapterException;
use D3\ModCfg\Application\Model\Log\d3LogInterface;
use D3\Ordermanager\Application\Model\Exceptions\d3ordermanager_cronUnavailableException;
use D3\Ordermanager\Application\Model\Exceptions\d3ordermanager_cronUnavailableException as cronUnavailableException;
use D3\Ordermanager\Application\Model\d3ordermanager;
use D3\Ordermanager\Application\Model\d3ordermanagerlist;
use D3\Ordermanager\Application\Model\d3ordermanager_execute;
@ -37,6 +37,8 @@ use OxidEsales\Eshop\Core\Request;
use OxidEsales\Eshop\Core\Base;
use OxidEsales\Eshop\Core\Exception\StandardException;
use OxidEsales\Eshop\Core\Session;
use OxidEsales\EshopCommunity\Core\ShopControl;
use ReflectionClass;
class d3ordermanager_response extends Base
{
@ -60,69 +62,100 @@ class d3ordermanager_response extends Base
{
startProfile(__METHOD__);
$blExceptionThrown = $this->_startExecution();
try {
/** @var Language $lang */
$lang = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Language::class);
if (false === $this->isBrowserCall()) {
echo $lang->translateString('D3_ORDERMANAGER_CLI_DEPRECATED').PHP_EOL;
}
if ($this->isBrowserCall() && false == $blExceptionThrown) {
echo "script successfully finished".PHP_EOL;
$this->_startExecution();
if ($this->isBrowserCall()) {
echo $lang->translateString('D3_ORDERMANAGER_CLI_FINISHED_SUCCESSFULLY').'<br><br>';
}
} catch (cronUnavailableException $oEx) {
/** @var cronUnavailableException $oEx */
$oEx->d3showMessage();
} catch (StandardException $oEx) {
/** @var StandardException $oEx */
$logger = Registry::getLogger();
$logger->error($oEx);
$oEx->debugOut();
echo $oEx->getMessage().PHP_EOL;
} finally {
/** @var Session $session */
$session = d3GetModCfgDIC()->get('d3ox.ordermanager.' . Session::class);
$session->freeze();
stopProfile(__METHOD__);
/** @var d3log $oLog */
$oLog = d3GetModCfgDIC()->get('d3.ordermanager.log');
$oLog->d3GetProfiling();
}
/** @var Session $session */
$session = d3GetModCfgDIC()->get('d3ox.ordermanager.'.Session::class);
$session->freeze();
$shopControl = oxNew(ShopControl::class);
d3GetModCfgDIC()->set(ReflectionClass::class.'.args.object', $shopControl);
/** @var ReflectionClass $shopControlReflection */
$shopControlReflection = d3GetModCfgDIC()->get(ReflectionClass::class);
$method = $shopControlReflection->getMethod('_getFormattedErrors');
$method->setAccessible(true);
$errors = $method->invokeArgs($shopControl, [Registry::getConfig()->getActiveView()->getClassKey()]);
if (isset($errors['default'])) {
echo $lang->translateString('D3_ORDERMANAGER_CLI_FINISHED_ERRORS')."<br><br>";
foreach ($errors['default'] as $error) {
echo $error . "<br>";
}
}
}
public function initCli()
{
startProfile(__METHOD__);
$this->_startExecution();
stopProfile(__METHOD__);
/** @var d3log $oLog */
$oLog = d3GetModCfgDIC()->get('d3.ordermanager.log');
$oLog->d3GetProfiling();
}
/**
* @return bool
* @throws DBALException
* @throws Exception
* @throws DatabaseConnectionException
* @throws DatabaseErrorException
* @throws DatabaseException
* @throws StandardException
* @throws cronUnavailableException
* @throws d3ShopCompatibilityAdapterException
* @throws d3_cfg_mod_exception
*/
protected function _startExecution()
{
startProfile(__METHOD__);
$blExc = false;
$iStartTime = microtime(true);
try {
$iStartTime = microtime(true);
/** @var d3LogInterface $oLog */
$oLog = d3GetModCfgDIC()->get('d3.ordermanager.log');
$oLog->info(__CLASS__, __FUNCTION__, __LINE__, "start cron", "");
/** @var d3LogInterface $oLog */
$oLog = d3GetModCfgDIC()->get('d3.ordermanager.log');
$oLog->info(__CLASS__, __FUNCTION__, __LINE__, "start cron", "");
$this->_checkUnavailableCronjob();
$this->_getSet()->setValue($this->_getCronTimestampVarName(), date('Y-m-d H:i:s'));
$this->_getSet()->saveNoLicenseRefresh();
$this->_checkUnavailableCronjob();
$this->_getSet()->setValue($this->_getCronTimestampVarName(), date('Y-m-d H:i:s'));
$this->_getSet()->saveNoLicenseRefresh();
$this->_startJobs();
$this->_startJobs();
$iExecTime = microtime(true) - $iStartTime;
$oLog->info(
__CLASS__,
__FUNCTION__,
__LINE__,
"end cron",
'execution time: '.$iExecTime." sec"
);
} catch (d3ordermanager_cronUnavailableException $oEx) {
/** @var d3ordermanager_cronunavailableexception $oEx */
$oEx->d3showMessage();
$blExc = true;
} catch (StandardException $oEx) {
/** @var StandardException $oEx */
$oEx->debugOut();
$blExc = true;
}
$iExecTime = microtime(true) - $iStartTime;
$oLog->info(
__CLASS__,
__FUNCTION__,
__LINE__,
"end cron",
'execution time: '.$iExecTime." sec"
);
stopProfile(__METHOD__);
return $blExc;
}
/**
@ -187,6 +220,7 @@ class d3ordermanager_response extends Base
/** @var $oManager d3ordermanager */
foreach ($oManagerList->getList() as $oManager) {
$oHandleManager = $this->getManager();
$oHandleManager->setLanguage(Registry::getLang()->getTplLanguage());
$oHandleManager->load($oManager->getId());
$oHandleManagerExec->setManager($oHandleManager);
@ -235,25 +269,13 @@ class d3ordermanager_response extends Base
return d3GetModCfgDIC()->get('d3.ordermanager.modcfg');
}
/**
* @return bool
* @throws DBALException
* @throws DatabaseConnectionException
* @throws DatabaseErrorException
* @throws Exception
*/
public function showDisabledMessage()
{
return false == $this->_getSet()->getValue('blCronActive') &&
($this->_getSet()->hasDebugMode() || $this->isBrowserCall());
}
/**
* @return bool
*/
public function isBrowserCall()
{
return $_SERVER['REMOTE_ADDR'] || $_SERVER['HTTP_USER_AGENT'];
return (isset($_SERVER['REMOTE_ADDR']) && $_SERVER['REMOTE_ADDR']) ||
(isset($_SERVER['HTTP_USER_AGENT']) && $_SERVER['HTTP_USER_AGENT']);
}
/**
@ -279,64 +301,39 @@ class d3ordermanager_response extends Base
* @throws StandardException
* @throws d3ShopCompatibilityAdapterException
* @throws d3_cfg_mod_exception
* @throws d3ordermanager_cronUnavailableException
* @throws cronUnavailableException
* @throws Exception
*/
protected function _checkUnavailableCronjob()
{
if (false == $this->_getSet()->isActive()) {
$oEx = $this->getCronUnavailableException('order manager module is disabled');
$oEx->d3enableScreenMessage();
$oEx->debugOut();
throw $oEx;
throw $this->getCronUnavailableException(
$this->getLang()->translateString('D3_ORDERMANAGER_EXC_CRON_MODULEDISABLED')
);
} elseif (false == $this->_checkAccessKey()) {
$oEx = $this->getCronUnavailableException('cron via browser: missing or wrong identification');
$oEx->d3enableScreenMessage();
$oEx->debugOut();
throw $oEx;
} else {
$this->_checkDisabledCronjob();
}
}
/**
* @throws DBALException
* @throws DatabaseConnectionException
* @throws DatabaseErrorException
* @throws StandardException
* @throws d3ShopCompatibilityAdapterException
* @throws d3_cfg_mod_exception
* @throws d3ordermanager_cronUnavailableException
* @throws Exception
*/
public function _checkDisabledCronjob()
{
if ($this->showDisabledMessage()) {
$oEx = $this->getCronUnavailableException('cronjob script is disabled');
$oEx->d3enableScreenMessage();
$oEx->debugOut();
throw $oEx;
throw $this->getCronUnavailableException(
$this->getLang()->translateString('D3_ORDERMANAGER_EXC_CRON_WRONGPASSWORD')
);
} elseif (false == $this->_getSet()->getValue('blCronActive')) {
$oEx = $this->getCronUnavailableException('cron via browser: missing or wrong identification');
$oEx->d3disableScreenMessage();
$oEx->debugOut();
throw $oEx;
throw $this->getCronUnavailableException(
$this->getLang()->translateString('D3_ORDERMANAGER_EXC_CRON_UNAVAILABLE')
);
}
}
/**
* @param $sMessage
* @return d3ordermanager_cronUnavailableException
* @return cronUnavailableException
* @throws Exception
*/
public function getCronUnavailableException($sMessage)
{
d3GetModCfgDIC()->setParameter(
d3ordermanager_cronUnavailableException::class.'.args.message',
cronUnavailableException::class.'.args.message',
$sMessage
);
return d3GetModCfgDIC()->get(d3ordermanager_cronUnavailableException::class);
return d3GetModCfgDIC()->get(cronUnavailableException::class);
}
/**
@ -389,7 +386,7 @@ class d3ordermanager_response extends Base
array_filter(
$this->getManager()->getAvailableCronjobIds(),
function($entry) use ($sCronJobId) {
return ($entry['id'] == $sCronJobId) ? true : false;
return ($entry['id'] == $sCronJobId);
}
)
)['count'];

Datei anzeigen

@ -1,71 +1,118 @@
<?php //006ef
// This Software is the property of D³ Data Development and is protected by copyright law - it is NOT Freeware. Any unauthorized use of this software without a valid license key is a violation of the license agreement and will be prosecuted by civil and criminal law. Inhaber: Thomas Dartsch Alle Rechte vorbehalten @package Auftragsmanager @version 3.3.0.0 PHP56 (20.08.2020) @author Daniel Seifert support@shopmodule.com @copyright (C) 2020, D3 Data Development @see http://www.shopmodule.com
// This Software is the property of D³ Data Development and is protected by copyright law - it is NOT Freeware. Any unauthorized use of this software without a valid license key is a violation of the license agreement and will be prosecuted by civil and criminal law. Inhaber: Thomas Dartsch Alle Rechte vorbehalten @package Auftragsmanager @version 3.3.1.0 PHP56 (16.03.2021) @author Daniel Seifert support@shopmodule.com @copyright (C) 2021, D3 Data Development @see http://www.shopmodule.com
if(!extension_loaded('ionCube Loader')){$__oc=strtolower(substr(php_uname(),0,3));$__ln='ioncube_loader_'.$__oc.'_'.substr(phpversion(),0,3).(($__oc=='win')?'.dll':'.so');if(function_exists('dl')){@dl($__ln);}if(function_exists('_il_exec')){return _il_exec();}$__ln='/ioncube/'.$__ln;$__oid=$__id=realpath(ini_get('extension_dir'));$__here=dirname(__FILE__);if(strlen($__id)>1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'<a href="http://www.ioncube.com">ionCube</a>')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'<a href="http://get-loader.ioncube.com">get-loader.ioncube.com</a>')." for install assistance.\n\n");exit(199);
?>
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
ofSmx8oi9uvrDR27zmYG
HR+cPwiRuu1IszUtAyTset90j2PiPmRFRdxwIPEuyR0iVPBM95NVwxXjJ90iMG+ZlCWJUkxayfVb
oRkZ6/TZeN251uQRAc/IliQOM3OuUULPej8qyiPpEhlHy7HC68aaEXYuoJtx+lJVfUHHTg+8HV1d
4bmguO2P/vW+f8dC084zpjFXYtxRH22XNem8nnraXiuGIgxBmTOuhwL5N5bfc2WmL3QPmUL4G6Iu
9kU/E78bJJhUomMhFuhRieSH5yl5GcTkt98SJbeCYm/dXuhr6r4Rl1giEOfhBZ8vcBGlzULjnPM6
jsSKn7dcGF5nFaz7piOvNoVsh9CBef8Tfj4BQHl5R/Wn38ozXpBCt05DFeUZv9rPydIyo/2yCdhX
C70eIvOj0uXamuBpM7SWaAKEAIFn+zQ/N9h84H0HquKZ6l47Gw1vkkfz8erDJyVlOMiLowy4wDYW
+g5IeyH3/mAhUde/cQYAquGgQR2F+0dsMfPj9wst0K5WHsgAUIy49lqF7qYfk3DNIR4c+Ol6bdBq
gQyDTLF+39SHCDsXjDiRERj9sFyUIqEpq9RYf4QKHmOwnJHHME9ydr3oti8CEs6dAbaBbFaI50h5
B1kPZpKnRBV+IcRzCbDpifWAArHOBR/WVCSq6P9gUyeUGmHxyTPVUijrGotoW7gqKvPg9+fCtJ5t
ECFMs+6JF+tVa4zcldijV3ZfnEYgGk/WNxTz8Msx26JMiAu9ZYYQPsGg42rWR02qvY799WKEPu3r
vY/PsNnpT/xSH+xejHnyYcZLcTa0w9COhycYW2uBLfIoZBuNyWe/zuZRGrVAXFCVWub81cAu5zGC
diPSVHfooDc+Jy0C6sVrFkEFlcpLiaHoZw6FtskD6Hmtb6YGcoi9cda7VhrlwIeufdOn2MWrFIkG
FinMRbpE3JX8x0HOcIQ+RvXcn3JMXuFVWvuMf+vZwZDhGafW6C3SSWj5uA7K6cPxy2XtgJWQmsGR
zBY1IQYj0h6uBI8sdeKm7mg99clgAk3lXmsAH7r8g4wm1xIiS3zYVcbC7wD3ZPnwJgCURpls4geI
/RX5cUxch64a3oykCFDa1+0Ayjr8QLGGi21uFO3EBZbjOG+uwdDNwlkD0D894jxOuL2X+5PYOPqs
EmiY4VY/hVwXiUzQ4feZ1ayK8BfMOVXg1sO709VZVQsABRak+G+Kv/gd4qBQqDNoP2429UZPeS6t
D5cKA7VidbvcTUIQ1enm8bAhnRYgiYDaLjoQ6YNPzdcIbHze7zzNXfDuFM3+REYIb/JGpnkFfbKd
tFU62SJu3Kmg9SROo0q4zP9fnQEU/2hO4sw+kAZCh35GXd6sHnxbgcCE/GcjYKbv29Re2rybyVlj
cUyUzkZQGENYuudknUhpO2jPG+dUk6ceiFTnNgE/JepR7U7bhuDh+6kIQrMrUtkbE4VnjtnsQpt2
YBfsjRmze9IoZ/ad1NbUb6lOchgXKC4teI0qlY/EhBh+HieoctPcXFhwDMW7ge5UAhCOgbYHwUCq
KJR/DjyzR+66VeImhIAM9ZYGsD6iNjqzBPp27COMk3VV15Ecj91K3nBrXgI9pPF7Xu4wBOq8L66y
bP/R2J7SaNteP18XwDiVsXlo9uFUyk7oJi3jYGv72CIOSaDBjtdXmU32a2D3OgxzE0MDgirXmeDS
G9Twtes1a0IRdralRiXsqQ3QBItB73B/DVzW4DNsVXw2mmfl6ZUDslzK4aCrdkYa3YjNONwIy0aS
BE+qzZ0dhkd5bcsd2XbBfnjDROGpRjNeJ22zLlWnAuvbupHHgZw43ylgiccYQN+46zTqVfpmcPOC
NywnYE1S9AIYGZtFOHNppXmt+h6rrTqsvzy3MYAPHClxoifYZYKM/RB4Wtsf+Awen60Ilax2QFwy
kBbouMeoScxCDOmEyEQ0brGHZ5SER9OTYUNw9exNILUUSafRy3I8A1dvT+2UaWOCgBMhLI+xDnkZ
d/w3TdEjQesjo5XzJHeeVfGNSQBgwaBamg2d/A9JuI6TmHaUZGw/XdZSd+vsh+7LwzBBO6OgpXI2
M08qhHy/KMX6WwzX/pFIIKs/rhkA5L9JHRfkh49idqdwzcEeBQeI7oZc63i6GdcNjPougRPp24m3
LI3JCmS126G3VIRKpYr8UU4oAkTLlWLK6PNTso5q/FHY84zqT6s1Eag0Gd9hTHu8y4qewm4AVH26
f2TGEEQDHS0DxPBRivp3Jm2OQ10ubNF8ZDIgsG34sZWAbSsUsFXOpbX273e/nAY/3/HryvXnKK7E
VuRoTy2kUJw7zsk8J/FORkS7Rkpkn3R996frGYysuUWT8pIrJCQIMXqi3ggHyb7/Nd22iFNTw+dY
HBNnR9FLmsZrs0uZceIXm9U+8Xt3q8sRCifyx5mpa2rOOYdeM+0U8kTTwIa2cc6leiMAz2beCl6V
4MaLS6+qzZ+odrFTikL6ENwGGo1vW3t8bLSK06nvLs938+YSt0lxZdIWVFNJV7ueWpaYcjFV1CDG
RCfB23xJv3QuTnSB7J6YSLr/ikFcj6DdfFRSnL5rzULSm/KEeqM0Mkk4iIEL+0aR7ldwnwJgXA4O
z1ggVPDEI37NEnji//TnbvKgdvKxznV2gBqRRrw8GrHrWGo+krXDwSPzT6924CgvwoJHCwumP3bO
YDnpE+0sojeQDuRHNgPkHfzc9tf4K2mOzOZJ5Kba0wSsctDX2dowbiP0Do3ssUC1eFqs/UhEGrLX
N/qY0XF71m7O2F+PlfjxPOKcWb+Vt8uvU6Q4Kga15CSIIWzWKdquT0wJv31n3Rzz/DGfGIWee+76
BTvsN1R2HfoO8jaFkZ27mqWVrR2INJdThAPfOllcwl0LhkZIfkZm2eTrJ4BNK3QDoAnnOsDZAAfZ
lre6X2ONeMZv25AcOxCV8VYzI7SdnANLMOXHOz5kqmY6fpbe7s61qojaRQApugwWMPVPJ+RP8+8+
eL6giY1+iRXkOwYhfR1k+nUw27V8ul3OTpS2Z1ZEs162w8T84t/negGk36rDKWJil2jaG1yTfp4W
MUmB2W3UCz8ZRtyPb8zLJZNs3Cc6YjyiDmtSxnyPKAW5V3sauQy3609nEvQSMOXDytUriNIZaHZe
opZmPsUPyOEF0kOX7e9AlIDn7zVMx+2yyvG0CynW2Z5x6/wxDYCMfcsyp1F/ALn2vz8hJLuxc5M6
s2lPRdLd8TeS7p/ulnu7KfzCQnrdIrNPKJqTZnUgM6WGPbVFgrhm+ifN0mNKeVwv0sU6uA/0buRu
4FhwzNR5S7/yzA3DJ+99EOypIcZYAeycmaLp/H1Pa/HilfJGXGIx1LgNMST1zV847eU38Xc3sBJn
2gIZKXx5U8S/byKY3RQcqDWZVML2b/GZ8ig5wb25QcVM+/SX9YRwpcuPlb2G+fCrHt0m69Re6dL3
lx2NdQhqn1s7sjqu7HB/ZO+mIEMuRbuXkbn4toQuaWaRVUO38hd2ANrLXxQAgdkf7jdUieDRsv3+
s9BEfhsejbvIAskGH4xK8gSRoAsrdhB9CvKaA3tLc+B94FU3p489bn/WtvV0iUgbFM/bRs7lhOF9
J69FaHSNIGZGCC+cY+vAQpYYCk5pIvgnmkxXNN4xUgksXr0dnAMySde8UaVzQ67GDYP7jwpE56rT
TipjdkZRZbnVRN/6KwDGb2gB+EDaGzEdaQHaib3Guxq3imL7+xHjzdXpqvwF/GrDPb0sjVfVWN5I
zOmA+DAkR1DuPytxTc0pM5nIfqobVJc2mTMY95VVg1YUKGzRRXe7zkGKBFz/Fe+zXbeUSio+FPEs
P/yc/b8595zelEbQGzfvYW13bWS0AFHrjGRT5n5QYbYUz7o5R/FwI54EEFtMxDkC1DtI6T96LX7Q
+nnBomOogJ4PHeyhxxrV31c6psa6CSRQuzdHqvzSKKBrkd++/QnYBb3enVvwMsyWLmhe+/jkjkbd
acb0TmzmRhRkq2/GmP95mvJuSwC3ex2Alkeu/lXXU+MTOtT6vP6uUbFCKmEGtZgeVkeJ+1mxSoBx
e2XNGi41aIgRQsA+yRR+A1Aqv1AWa+vqE65z94eRjVUadNUpaMYkZk3jq9+89tECtLxK6M+ocba1
sEzvD7T3UCj4FQX/L9DmG2e2th3D796g+2wD2vj3jNdFW1XMGdZUQb5IVqpAiXfcjqlAfZ7Rv/hc
/31SfOMlB3eVSPtu3G0TNrF/79F56NoGYLo+Ak7Qd3axdIeNDe39mO3xdjaLB9flNXzZOQfQp+DC
O1KaMvqLq9+47bx/rhbfwMkg7EJGutouFOCaapxvd1CRH0l/pIPJzB5hygkpvsRDnhjJuC0n1iJC
ZPgQ8J+67xCIDvKSYal9ifjQBg68PXfz+Sj+Hco1i0X/Gu9ppefXdLk89UbDY2Rzgb7FMOzf+dVv
5PEnMj1gugj8DVsH07JUWLHfQrLFTSvl9FAPVWBIG6zpSv7QopwBn59SI4+EFWx/Eg3sIIwR2Dvg
ebl4PP3jsEDF9cpkTolO+/bf62kqkzD9zRGwBLopRTDCRPcre5wZX25gh0/1/aILPk4x3sGAeMnr
SEJ/lKZ+EitNs4iw2NVnmOlq0nuNeUYPRDYBcR4AGdZxZm/1OJ+qza2RStdyJhlkhFUAwdYEuM7S
lgAVgZk38VodJLuzoimb0CJiBf/u/xI/0OptMGzLFUllXyduv2IN73zqBfPV7+PAzC184yOg3Htf
+cTnSV0bOcE6kcbaqmsYvpJcGbhq7qRGt/qdGrSkFjxdtSZtKX8njyT7OcJCXy9DkC414P0m6iwj
FUxEbPC1sK/o3ECbLuPWKWI131vcwkWcxXUPCKdhb8UJehPFlAevJe/EQXIl96+dUAYCQtyKrJPY
e3Ktg31lBe2cTBgc7Vr3MgIVHa3BaT9m0dWSML76eVVDhgZ4Yiaove0uTWcS9kd35os2M0yIh4hl
204aOY1S1MslfAatOf8E5TINQWaUFQc3B7RWyyfJ9e1x7/+7MVno7gHcT9aR3KcsdcIMHEqI68vq
7QlOSdX7k6EvaXqK3GK2tHsP6xPiDbO9BwPmJtVSUIowuicSIdqdZtCh+liafGbvv65uGAQF34bR
gSKksV9p0kJmI+WPg/lZJwYbqnEBXIXmyMbBfCqnM0S6QlGJTiyzOTxO4fo6ZgzaP2r0g4XWKkSJ
/WL2WszMKzmPNeTbbncon+V2h5J6DLg3dLwApkSKqd2JBd9WAt1kN08lFHWrtdZtvDsedJYDlufg
CPIdXd7of33LH6KIjrgZpxmECCdkbek0XseUSkmexWukCE1ZuphB9TATAusFZcEKwMBlRJhb3TGA
YbfMKdbaswuirG4tUZJHGRga5q6gvICxEv2SFLJKJH93IW5Et7ESdFN6VTr4XK49mulpe45MV9Hi
q4p6jAOIFTJmoO8fSy3mlgwfbwurJsb7TkCbTZUM25erMcP7I/KlkxVDeFUXqXeFkXO4PP3ecNR2
IzLZcD5t5TptNWv+OMhmHf8GfenieHY72zUhRa2Qwoi4h1/xqW4Mp8vU2ghxdZUJcd0h0OWlvE4V
obNcV84WNwteiQvSejxaB03cn0CKhXMfgX7TcrzXrgop1bT6+9vlu0Il2g1GeoR5IglWs+VweDu+
h6AVDbbhI9H+a1GqLBHzYYSW/+JAV++CTaKu4mBjQiAxt5uh1gcKkYubyGSBNvkzDOxyGnelL67m
WrFzMwyfYr570Uw0QoyI8hMgeNZPS6p6a5SRLfsLnlRTPuomzb//lP3qc7etjxY8n0uUlMVenKc2
zsI8ih+t/iXgh9y06mtgjKaktGp1vrAmQUkscx5uBAVlii4qGrg3iIv4bV/1P2lUCOT/j13dosGS
VxNbBLVCAWQbORvdSTQlEVbu40Nt7X3Bb9094ITV3DrPbY2lyDp3x3ryQjR59VFLnPkSYGU/uYXQ
Y8E5dci26bJdLAcHiLmw+yB7r/5CWq7wWpr4iCAYmpVga4mnTzvtB5n1gHLIcOhEh2/l4F8wRi1U
39FPKuDJQNSpn7hoNmID6fn70JIZ7kpq8udalcbjYWBtYpZAWf/MmWtaS6kgEfYu435wXqKd46dv
a9wOpkAPD8Iiwx2BR/ApWPy1OVb01II+lJNh0iA4VdxVxcea2GPdExTznX8vjZDQvnnj+XK/UJXr
mhfIJm11k8diBQVsHniMCO8p/HyPMDE5jYMMLYulkxrCOrPRqWU32vBr0/AAxnh1HWFumDDQ0tIW
yzz8cE5PPnL3F/AHmOMWlakj3+m5gXF72Hgm7xW4R59njybZlrseUEWM+9l4T9dq+TUgeTElSDBO
XVFej1xMFeJ53/TN/3TwnqnDIgLkSAcxAi4qHjKL04N4vcU+Wv2+kiLZhgPJBf/tneriX6RezttC
1Nydczz2K4E9J4B4K6D039TijEadmHU2orJ0+X8NOMfFIEs6wZdILLXWY7S3PWeWqfnfBInWharz
ZE0cdBvp6tDiqjEzzeT8SDSoIbe0NtoBLW6fR+sq+xXg6VNXK2qQYXhrQL3aseAX9s1FYwJv92d/
7TsmfXV5j/Nt0Z64gXRH8yd+Gvun2Wx19ob7BeZMltYvTKt/BEr1JDfAPK3oVchG/UUuCQSB/Num
GTBV3mh7hhcvVj2zqH+0lzCJaZ0CdaCVT/2UUOMO3d7USdnqMFhBJpG8MNLa2aqvJ8R6tBB7hmfJ
EetBWOwNCjhW7ycItWEqr5iwlyw25tS/ljGCgZ71itJsfGIkpzs6IrPeYyMYBu1L2TRMcgTC7F6F
lsF6JYF2JGJF70E7ujkJysiK+mAGx6eEONtWYm0XR3KolJZj3MZ7v9nS57O7PYbA2G/Es+aG/7zB
Flc7+ykVDRseQOt8lT7U73KUhpd4kqeRTGI1XJwer0CGx8C35hUc+qpfbD0Uvq5Bj916+GLtzHst
rAC5YfctSr8gTauJ/JOXdo/j0VXCTyms830gwGzZ4G4nq7OccF/zLKZ65Kp9kVVXYENCxNoHm1WP
V7vTh1esjQZQUsHuEIGJhiwv5i3WgwTAGVLrozcLcWqWax0/TuhRT0GbP94derJU0iGwkvwoI+3b
+yuH2OeOGZbvnETJXT+HzU3JfcCJEqjTA7QMWokbWWlJ79+JzEXFBDNFFRQ1WDx68Eom0AsE16ys
Rab10wpR2f9PQuTfsWeEnO9s9d+U1GPi6LrhPKdubtZ204xwnIDryrkmd/ri1/chTa8XRPMCaGei
7/7/NL3/GTXtNN17CvhOJC9MDLmMpenW7NaF7x/OfkmYZiieIFtunXj40/vJHtCSDwxK7mgNalM8
xV53Ai15narFvQNQhuEc0FPhGPyssFeDCHnEgfcxPXg9/YDsy3LmeqPxN4pBhZxPrRZjrgka9dGe
x1JTanCTakrjg/c0irYMwEUnuEEtE/R3BEZW07z3MDGbv8hBOv43u2OdTucu93NgclSEdhpovm86
tsmhEQCVky0GdTWZvwDZHU0VUzie1qMZ7H8X9rDLQSz8Ua5/Bzj1mcYfFltwEz9/LWVdWLm3ksEj
brnhEo0J28UHE7/0IoNbQd6WxiXCcC+tgZcyZZjnhDV8Y+e6FfXsdSiK9CoILMc2301cxeCTDqT0
ktN1MJ0Y5b9bGXqBIMfuxYbvhFS4YqT4Z4Q4CvekodiHa/S4r5zhpWSlEYg9T21nKhAeHSHVQQGr
iq59W1j6Oc7CsMNpm3HM2JT2bEOIt2/ObBWwmNcDmnL2hxA7oIcw1/78nmrQDYWqHmsY40f8TDV2
QH7MHoDv9uoBgjkNJXGkTkLEWvAopdF8NISv1h3ckkR+9U6tZEBmn0YdZS28NB4218jOIelsCPNO
4DOVQTxsT2TiYmwHBOdx9WuBXEGhXioI4L3WddnMTeeoDW8Jh0B9wi43TIeKLrKmPNRmVw/rewjf
0hfZl7MnN8S1bTLvBu5ksaYwKBqah0iZVV7rCX93eAjKktVnfXq1NUSU4PlCTmpcVVzlM6M9BF+L
jY+Ed2I0rv7MFtMLKdr+96sEXe8q3Mn4AVc3QFFQrkDLPyeFmkdwYkPkz36yV/hwf7yLfG69RZbR
S1c66a6kXvZwQ1WfiUhUigDPgxwmVyJlGcEzXgQtvt9LGiE1+FktEGPHb7SCuVsQaXHSgA+MtLYG
oQEE1+5ae/EnHNXe7ufnLixNSvPt6xvu3rn5K5MdMNi4rm6s8i8Qbs1r1hWM/+pvY3Xnd0BKiJ/y
aYgFQRwnf20KoWCi4clf5jtSd3DY7fvyqvfx2XoIOdeI83F0v2XEiAFQFO4Qti+p6rfIfBq75tX8
OuLGOcFNvAusdiOCu9asGSXDzIHdQKL6IDylWCDJdenItg/7/wqIxR4zJhq2LdyAWdlB05yrzvmN
IStEEvcJMCHI0Q1jFfywFpjPpurnQRID6ey+5A9iI8D1SiB23Kt4LbwGc9zvTinhTa/aFeOpNCE5
oRAeBAXUW97cagDVLD8/RL7MbG3mXv12vGNwJXzb3LEc5NSIc13g1v8eZnCBDEY100/wKjhu6t6J
z5bnaJA2mDBBV+5yNleLjaejxUdGcefMX7L4PeGiOJJXHHZHnA1HSSUBN14e76+qDqTVeVSmCT1W
kx2hz+pRTWXmJoYs5BCY2bk2NifWauF0nKq4OhgQ3XIU

Datei anzeigen

@ -1,109 +1,92 @@
<?php //006ef
// This Software is the property of D³ Data Development and is protected by copyright law - it is NOT Freeware. Any unauthorized use of this software without a valid license key is a violation of the license agreement and will be prosecuted by civil and criminal law. Inhaber: Thomas Dartsch Alle Rechte vorbehalten @package Auftragsmanager @version 3.3.0.0 PHP56 (20.08.2020) @author Daniel Seifert support@shopmodule.com @copyright (C) 2020, D3 Data Development @see http://www.shopmodule.com
// This Software is the property of D³ Data Development and is protected by copyright law - it is NOT Freeware. Any unauthorized use of this software without a valid license key is a violation of the license agreement and will be prosecuted by civil and criminal law. Inhaber: Thomas Dartsch Alle Rechte vorbehalten @package Auftragsmanager @version 3.3.1.0 PHP56 (16.03.2021) @author Daniel Seifert support@shopmodule.com @copyright (C) 2021, D3 Data Development @see http://www.shopmodule.com
if(!extension_loaded('ionCube Loader')){$__oc=strtolower(substr(php_uname(),0,3));$__ln='ioncube_loader_'.$__oc.'_'.substr(phpversion(),0,3).(($__oc=='win')?'.dll':'.so');if(function_exists('dl')){@dl($__ln);}if(function_exists('_il_exec')){return _il_exec();}$__ln='/ioncube/'.$__ln;$__oid=$__id=realpath(ini_get('extension_dir'));$__here=dirname(__FILE__);if(strlen($__id)>1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'<a href="http://www.ioncube.com">ionCube</a>')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'<a href="http://get-loader.ioncube.com">get-loader.ioncube.com</a>')." for install assistance.\n\n");exit(199);
?>
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

Datei anzeigen

@ -1,111 +1,95 @@
<?php //006ef
// This Software is the property of D³ Data Development and is protected by copyright law - it is NOT Freeware. Any unauthorized use of this software without a valid license key is a violation of the license agreement and will be prosecuted by civil and criminal law. Inhaber: Thomas Dartsch Alle Rechte vorbehalten @package Auftragsmanager @version 3.3.0.0 PHP56 (20.08.2020) @author Daniel Seifert support@shopmodule.com @copyright (C) 2020, D3 Data Development @see http://www.shopmodule.com
// This Software is the property of D³ Data Development and is protected by copyright law - it is NOT Freeware. Any unauthorized use of this software without a valid license key is a violation of the license agreement and will be prosecuted by civil and criminal law. Inhaber: Thomas Dartsch Alle Rechte vorbehalten @package Auftragsmanager @version 3.3.1.0 PHP56 (16.03.2021) @author Daniel Seifert support@shopmodule.com @copyright (C) 2021, D3 Data Development @see http://www.shopmodule.com
if(!extension_loaded('ionCube Loader')){$__oc=strtolower(substr(php_uname(),0,3));$__ln='ioncube_loader_'.$__oc.'_'.substr(phpversion(),0,3).(($__oc=='win')?'.dll':'.so');if(function_exists('dl')){@dl($__ln);}if(function_exists('_il_exec')){return _il_exec();}$__ln='/ioncube/'.$__ln;$__oid=$__id=realpath(ini_get('extension_dir'));$__here=dirname(__FILE__);if(strlen($__id)>1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'<a href="http://www.ioncube.com">ionCube</a>')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'<a href="http://get-loader.ioncube.com">get-loader.ioncube.com</a>')." for install assistance.\n\n");exit(199);
?>
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
GGAVVuqlPRJmYTsC

Datei anzeigen

@ -1,129 +1,119 @@
<?php //006ef
// This Software is the property of D³ Data Development and is protected by copyright law - it is NOT Freeware. Any unauthorized use of this software without a valid license key is a violation of the license agreement and will be prosecuted by civil and criminal law. Inhaber: Thomas Dartsch Alle Rechte vorbehalten @package Auftragsmanager @version 3.3.0.0 PHP56 (20.08.2020) @author Daniel Seifert support@shopmodule.com @copyright (C) 2020, D3 Data Development @see http://www.shopmodule.com
// This Software is the property of D³ Data Development and is protected by copyright law - it is NOT Freeware. Any unauthorized use of this software without a valid license key is a violation of the license agreement and will be prosecuted by civil and criminal law. Inhaber: Thomas Dartsch Alle Rechte vorbehalten @package Auftragsmanager @version 3.3.1.0 PHP56 (16.03.2021) @author Daniel Seifert support@shopmodule.com @copyright (C) 2021, D3 Data Development @see http://www.shopmodule.com
if(!extension_loaded('ionCube Loader')){$__oc=strtolower(substr(php_uname(),0,3));$__ln='ioncube_loader_'.$__oc.'_'.substr(phpversion(),0,3).(($__oc=='win')?'.dll':'.so');if(function_exists('dl')){@dl($__ln);}if(function_exists('_il_exec')){return _il_exec();}$__ln='/ioncube/'.$__ln;$__oid=$__id=realpath(ini_get('extension_dir'));$__here=dirname(__FILE__);if(strlen($__id)>1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'<a href="http://www.ioncube.com">ionCube</a>')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'<a href="http://get-loader.ioncube.com">get-loader.ioncube.com</a>')." for install assistance.\n\n");exit(199);
?>
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
1ijc1r6lmowEo0==

Datei anzeigen

@ -1,131 +1,121 @@
<?php //006ef
// This Software is the property of D³ Data Development and is protected by copyright law - it is NOT Freeware. Any unauthorized use of this software without a valid license key is a violation of the license agreement and will be prosecuted by civil and criminal law. Inhaber: Thomas Dartsch Alle Rechte vorbehalten @package Auftragsmanager @version 3.3.0.0 PHP56 (20.08.2020) @author Daniel Seifert support@shopmodule.com @copyright (C) 2020, D3 Data Development @see http://www.shopmodule.com
// This Software is the property of D³ Data Development and is protected by copyright law - it is NOT Freeware. Any unauthorized use of this software without a valid license key is a violation of the license agreement and will be prosecuted by civil and criminal law. Inhaber: Thomas Dartsch Alle Rechte vorbehalten @package Auftragsmanager @version 3.3.1.0 PHP56 (16.03.2021) @author Daniel Seifert support@shopmodule.com @copyright (C) 2021, D3 Data Development @see http://www.shopmodule.com
if(!extension_loaded('ionCube Loader')){$__oc=strtolower(substr(php_uname(),0,3));$__ln='ioncube_loader_'.$__oc.'_'.substr(phpversion(),0,3).(($__oc=='win')?'.dll':'.so');if(function_exists('dl')){@dl($__ln);}if(function_exists('_il_exec')){return _il_exec();}$__ln='/ioncube/'.$__ln;$__oid=$__id=realpath(ini_get('extension_dir'));$__here=dirname(__FILE__);if(strlen($__id)>1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'<a href="http://www.ioncube.com">ionCube</a>')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'<a href="http://get-loader.ioncube.com">get-loader.ioncube.com</a>')." for install assistance.\n\n");exit(199);
?>
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
dbryDbw2HDnGdY+XyqNNbw1+W60X
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

Datei anzeigen

@ -1,87 +1,73 @@
<?php //006ef
// This Software is the property of D³ Data Development and is protected by copyright law - it is NOT Freeware. Any unauthorized use of this software without a valid license key is a violation of the license agreement and will be prosecuted by civil and criminal law. Inhaber: Thomas Dartsch Alle Rechte vorbehalten @package Auftragsmanager @version 3.3.0.0 PHP56 (20.08.2020) @author Daniel Seifert support@shopmodule.com @copyright (C) 2020, D3 Data Development @see http://www.shopmodule.com
// This Software is the property of D³ Data Development and is protected by copyright law - it is NOT Freeware. Any unauthorized use of this software without a valid license key is a violation of the license agreement and will be prosecuted by civil and criminal law. Inhaber: Thomas Dartsch Alle Rechte vorbehalten @package Auftragsmanager @version 3.3.1.0 PHP56 (16.03.2021) @author Daniel Seifert support@shopmodule.com @copyright (C) 2021, D3 Data Development @see http://www.shopmodule.com
if(!extension_loaded('ionCube Loader')){$__oc=strtolower(substr(php_uname(),0,3));$__ln='ioncube_loader_'.$__oc.'_'.substr(phpversion(),0,3).(($__oc=='win')?'.dll':'.so');if(function_exists('dl')){@dl($__ln);}if(function_exists('_il_exec')){return _il_exec();}$__ln='/ioncube/'.$__ln;$__oid=$__id=realpath(ini_get('extension_dir'));$__here=dirname(__FILE__);if(strlen($__id)>1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'<a href="http://www.ioncube.com">ionCube</a>')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'<a href="http://get-loader.ioncube.com">get-loader.ioncube.com</a>')." for install assistance.\n\n");exit(199);
?>
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
A//ilnJ+95qs/Qo/mBh8Y0==
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

Datei anzeigen

@ -1,98 +1,86 @@
<?php //006ef
// This Software is the property of D³ Data Development and is protected by copyright law - it is NOT Freeware. Any unauthorized use of this software without a valid license key is a violation of the license agreement and will be prosecuted by civil and criminal law. Inhaber: Thomas Dartsch Alle Rechte vorbehalten @package Auftragsmanager @version 3.3.0.0 PHP56 (20.08.2020) @author Daniel Seifert support@shopmodule.com @copyright (C) 2020, D3 Data Development @see http://www.shopmodule.com
// This Software is the property of D³ Data Development and is protected by copyright law - it is NOT Freeware. Any unauthorized use of this software without a valid license key is a violation of the license agreement and will be prosecuted by civil and criminal law. Inhaber: Thomas Dartsch Alle Rechte vorbehalten @package Auftragsmanager @version 3.3.1.0 PHP56 (16.03.2021) @author Daniel Seifert support@shopmodule.com @copyright (C) 2021, D3 Data Development @see http://www.shopmodule.com
if(!extension_loaded('ionCube Loader')){$__oc=strtolower(substr(php_uname(),0,3));$__ln='ioncube_loader_'.$__oc.'_'.substr(phpversion(),0,3).(($__oc=='win')?'.dll':'.so');if(function_exists('dl')){@dl($__ln);}if(function_exists('_il_exec')){return _il_exec();}$__ln='/ioncube/'.$__ln;$__oid=$__id=realpath(ini_get('extension_dir'));$__here=dirname(__FILE__);if(strlen($__id)>1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'<a href="http://www.ioncube.com">ionCube</a>')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'<a href="http://get-loader.ioncube.com">get-loader.ioncube.com</a>')." for install assistance.\n\n");exit(199);
?>
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
VotuJAnopP9q
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
jVVHenDJr20Gp5UuNd1qjW==

Datei anzeigen

@ -1,109 +1,105 @@
<?php //006ef
// This Software is the property of D³ Data Development and is protected by copyright law - it is NOT Freeware. Any unauthorized use of this software without a valid license key is a violation of the license agreement and will be prosecuted by civil and criminal law. Inhaber: Thomas Dartsch Alle Rechte vorbehalten @package Auftragsmanager @version 3.3.0.0 PHP56 (20.08.2020) @author Daniel Seifert support@shopmodule.com @copyright (C) 2020, D3 Data Development @see http://www.shopmodule.com
// This Software is the property of D³ Data Development and is protected by copyright law - it is NOT Freeware. Any unauthorized use of this software without a valid license key is a violation of the license agreement and will be prosecuted by civil and criminal law. Inhaber: Thomas Dartsch Alle Rechte vorbehalten @package Auftragsmanager @version 3.3.1.0 PHP56 (16.03.2021) @author Daniel Seifert support@shopmodule.com @copyright (C) 2021, D3 Data Development @see http://www.shopmodule.com
if(!extension_loaded('ionCube Loader')){$__oc=strtolower(substr(php_uname(),0,3));$__ln='ioncube_loader_'.$__oc.'_'.substr(phpversion(),0,3).(($__oc=='win')?'.dll':'.so');if(function_exists('dl')){@dl($__ln);}if(function_exists('_il_exec')){return _il_exec();}$__ln='/ioncube/'.$__ln;$__oid=$__id=realpath(ini_get('extension_dir'));$__here=dirname(__FILE__);if(strlen($__id)>1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo("Site error: the ".(php_sapi_name()=='cli'?'ionCube':'<a href="http://www.ioncube.com">ionCube</a>')." PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit ".(php_sapi_name()=='cli'?'get-loader.ioncube.com':'<a href="http://get-loader.ioncube.com">get-loader.ioncube.com</a>')." for install assistance.\n\n");exit(199);
?>
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
gFeBUybbc8kDqrsOLRIiFLca4nz7+m==
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
6MPRTsDrox3iGqf005Wvjm1Ig5YO1SO=

Einige Dateien werden nicht angezeigt, da zu viele Dateien in diesem Diff geändert wurden Mehr anzeigen