Datei-Struktur: Unterschied zwischen den Versionen

Aus sourceDESK Wiki
Wechseln zu: Navigation, Suche
 
(6 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
Hier erfahren Sie, wie das Shop-System aufgebaut ist.
+
Hier erfahren Sie, wie das sourceDESK aufgebaut ist.
  
 
== Verzeichnisse ==
 
== Verzeichnisse ==
Zeile 7: Zeile 7:
 
* '''files''' enthält alle hochgeladenen/verfügbaren Dateien
 
* '''files''' enthält alle hochgeladenen/verfügbaren Dateien
 
* '''install''' enthält den Installations-Wizard der Software
 
* '''install''' enthält den Installations-Wizard der Software
* '''ipn''' enthält Dateien für die [[Zahlungsbestätigung]]
 
 
* '''languages''' enthält die [[Sprachdateien]] für das komplette System
 
* '''languages''' enthält die [[Sprachdateien]] für das komplette System
* '''lib''' enthält PHP-Klassen
+
* '''lib''' und '''vendor''' enthalten PHP-Klassen
 
* '''modules''' enthält wichtige Dateien für das Modulsystem und dient zur Hinterlegung von Moduldateien
 
* '''modules''' enthält wichtige Dateien für das Modulsystem und dient zur Hinterlegung von Moduldateien
 
* '''templates''' enthält Templates für das [[Templatesystem]]
 
* '''templates''' enthält Templates für das [[Templatesystem]]
Zeile 24: Zeile 23:
  
 
* '''files/backups''' ist das Standard-Verzeichnis für Backups
 
* '''files/backups''' ist das Standard-Verzeichnis für Backups
 +
* '''files/bugtracker''' enthält mit Bugs assozierte Dateien
 +
* '''files/cookies''' enthält Cookie-Dateien für nicht eingeloggte Besucher zur Speicherung des Warenkorb-Inhaltes
 
* '''files/customers''' enthält im Kundenprofil hinterlegte Dateien
 
* '''files/customers''' enthält im Kundenprofil hinterlegte Dateien
* '''files/downloads''' enthält Dateien für Downloads (z.B. Software)
+
* '''files/downloads''' enthält Dateien für [[Software-Produkte]]
 +
* '''files/email_templates''' enthält Anhänge für E-Mailtemplates
 +
* '''files/emails''' enthält Anhänge versendeter E-Mails (nach Mail-ID)
 +
* '''files/invoice_attachments''' enthält Anhänge von Rechnungen
 +
* '''files/product_images''' enthält Bilder für Produkte
 
* '''files/projects''' enthält in Projekten hinterlegte Dateien
 
* '''files/projects''' enthält in Projekten hinterlegte Dateien
 +
* '''files/sepa_mandates''' enthält hochgeladene SEPA-Mandate
 +
* '''files/system''' enthält Dateien des Systems
 +
* '''files/uploads''' enthält durch Kunden zur Verfügung gestellte Dateien
 +
* '''files/versions''' enthält alte Versionen von [[Software-Produkte|Software-Produkten]]
  
  
Zeile 38: Zeile 47:
 
* '''modules/addons''' enthält Addons
 
* '''modules/addons''' enthält Addons
 
* '''modules/core''' enthält abstrakte Klassen für das Modulsystem
 
* '''modules/core''' enthält abstrakte Klassen für das Modulsystem
 +
* '''modules/dns''' enthält Handler für DNS-Server
 
* '''modules/domain''' enthält Handler für Domain-Registrare
 
* '''modules/domain''' enthält Handler für Domain-Registrare
 +
* '''modules/encashment''' enthält Inkasso-Provider
 +
* '''modules/letter''' enthält Briefversand-Dienstleister
 
* '''modules/payment''' enthält Zahlungs-Gateways
 
* '''modules/payment''' enthält Zahlungs-Gateways
* '''modules/server''' enthält Provisioning-Module
+
* '''modules/provisioning''' enthält [[Server-Module erstellen|Provisioning-Module]] für [[Hosting-Produkte]]
 +
* '''modules/scoring''' enthält [[Scoring]]-Module
 +
* '''modules/sms''' enthält SMS-Module
 +
* '''modules/telephone''' enthält [[Telefonanlagen-Anbindung|Telefon]]-Module
 +
* '''modules/telephone_log''' enthält Anruf-Log-Module
 +
* '''modules/websocket''' enthält Websocket-Dateien
  
  
 
* '''themes/THEME-NAME/css''' enthält Stylesheets
 
* '''themes/THEME-NAME/css''' enthält Stylesheets
 +
* '''themes/THEME-NAME/fonts''' enthält Schriftarten
 
* '''themes/THEME-NAME/images''' enthält Bilder und Favicon
 
* '''themes/THEME-NAME/images''' enthält Bilder und Favicon
 
* '''themes/THEME-NAME/js''' enthält JavaScript-Dateien
 
* '''themes/THEME-NAME/js''' enthält JavaScript-Dateien
Zeile 51: Zeile 69:
 
== Dateien ==
 
== Dateien ==
 
* '''config.php''' enthält wichtige Konfigurationsvariablen für das System (Datenbank-Zugang und Hash)
 
* '''config.php''' enthält wichtige Konfigurationsvariablen für das System (Datenbank-Zugang und Hash)
* '''config.dist.php''' ist eine Vorlage für die config.php
 
 
* '''index.php''' behandelt alle Seitenaufrufe
 
* '''index.php''' behandelt alle Seitenaufrufe
 
* '''init.php''' initialisiert das System beim Aufruf einer Seite / eines Skriptes im Kundenbereich
 
* '''init.php''' initialisiert das System beim Aufruf einer Seite / eines Skriptes im Kundenbereich
* '''README.md''' beinhaltet Informationen über das System (git-Überbleibsel)
+
* '''LICENSE.md''' beinhaltet Informationen über verwendete Software und deren Lizenzen (Lizenzdateien sind verstreut bei den entsprechenden Bibliotheken zu finden)
 
* '''robots.txt''' beinhaltet Informationen für Suchmaschinen-Crawler
 
* '''robots.txt''' beinhaltet Informationen für Suchmaschinen-Crawler
* '''.htaccess''' ist extrem wichtig, damit die URLs des Shop-Systems funktionieren
+
* '''.htaccess''' ist extrem wichtig, damit die URLs von sourceDESK funktionieren
  
  
Zeile 65: Zeile 82:
  
  
* '''modules/core/Addon.class.php''' ist eine abstrakte Klasse zum Konstruieren von Addons
+
* '''themes/favicon.ico''' ist das Favicon für Kundenbereich und Administration
* '''modules/core/DomainRegistrar.class.php''' ist eine abstrakte Klasse zum Konstruieren von Schnittstellen zu Domain-Registraren
+
* '''themes/apple-touch-icon.png''' ist ein Icon für Lesezeichen auf diversen Geräten
* '''modules/core/PaymentGateway.class.php''' ist eine abstrakte Klasse zum Konstruieren von Zahlungs-Gateways
+
* '''themes/invoice-logo.jpg''' wird auf Rechnungen angezeigt
* '''modules/core/ServerModule.class.php''' ist eine abstrakte Klasse zum Konstruieren von Provisioning-Modulen
+
 
+
== Informationen zu den Klassen ==
+
Sie finden im Artikel [[Klassen]] detaillierte Informationen zu den verwendeten Klassen.
+

Aktuelle Version vom 8. Oktober 2018, 14:41 Uhr

Hier erfahren Sie, wie das sourceDESK aufgebaut ist.

Verzeichnisse

  • admin enthält die Dateien für die Administration
  • controller enthält die Steuerungsdateien für die einzelnen Seiten des Kundenbereiches
  • controller/crons enthält Dateien für Cronjobs
  • files enthält alle hochgeladenen/verfügbaren Dateien
  • install enthält den Installations-Wizard der Software
  • languages enthält die Sprachdateien für das komplette System
  • lib und vendor enthalten PHP-Klassen
  • modules enthält wichtige Dateien für das Modulsystem und dient zur Hinterlegung von Moduldateien
  • templates enthält Templates für das Templatesystem
  • templates/compiled enthält durch das Templatesystem kompilierte Dateien
  • themes enthält die Ressourcen für die verfügbaren Themes/Designs


  • admin/controller enthält die Steuerungsdateien für die einzelnen Seiten des Adminbereiches
  • admin/templates enthält Templates für das Templatesystem
  • admin/templates/compiled enthält durch das Templatesystem kompilierte Dateien
  • admin/pages enthält alte, nicht template-basierte Steuerungsdateien für manche Seiten des Adminbereiches
  • admin/res enthält Ressourcen für das Design des Adminbereiches (CSS, JavaScript, Templates)


  • files/backups ist das Standard-Verzeichnis für Backups
  • files/bugtracker enthält mit Bugs assozierte Dateien
  • files/cookies enthält Cookie-Dateien für nicht eingeloggte Besucher zur Speicherung des Warenkorb-Inhaltes
  • files/customers enthält im Kundenprofil hinterlegte Dateien
  • files/downloads enthält Dateien für Software-Produkte
  • files/email_templates enthält Anhänge für E-Mailtemplates
  • files/emails enthält Anhänge versendeter E-Mails (nach Mail-ID)
  • files/invoice_attachments enthält Anhänge von Rechnungen
  • files/product_images enthält Bilder für Produkte
  • files/projects enthält in Projekten hinterlegte Dateien
  • files/sepa_mandates enthält hochgeladene SEPA-Mandate
  • files/system enthält Dateien des Systems
  • files/uploads enthält durch Kunden zur Verfügung gestellte Dateien
  • files/versions enthält alte Versionen von Software-Produkten


  • install/css enthält Stylesheets für den Installations-Wizard
  • install/fonts enthält Schriftarten für den Installations-Wizard
  • install/js enthält JavaScript-Dateien für den Installations-Wizard
  • install/req enthält Vorlage-Dateien und Datenbank-Dumps für die Installation
  • install/steps enthält Dateien für die einzelnen Schritte der Installation


  • modules/addons enthält Addons
  • modules/core enthält abstrakte Klassen für das Modulsystem
  • modules/dns enthält Handler für DNS-Server
  • modules/domain enthält Handler für Domain-Registrare
  • modules/encashment enthält Inkasso-Provider
  • modules/letter enthält Briefversand-Dienstleister
  • modules/payment enthält Zahlungs-Gateways
  • modules/provisioning enthält Provisioning-Module für Hosting-Produkte
  • modules/scoring enthält Scoring-Module
  • modules/sms enthält SMS-Module
  • modules/telephone enthält Telefon-Module
  • modules/telephone_log enthält Anruf-Log-Module
  • modules/websocket enthält Websocket-Dateien


  • themes/THEME-NAME/css enthält Stylesheets
  • themes/THEME-NAME/fonts enthält Schriftarten
  • themes/THEME-NAME/images enthält Bilder und Favicon
  • themes/THEME-NAME/js enthält JavaScript-Dateien
  • themes/THEME-NAME/plugins (falls vorhanden) enthält Bootstrap-Plugins
  • themes/THEME-NAME/templates enthält Templates, die die Standard-Templates überschreiben (siehe Templatesystem)

Dateien

  • config.php enthält wichtige Konfigurationsvariablen für das System (Datenbank-Zugang und Hash)
  • index.php behandelt alle Seitenaufrufe
  • init.php initialisiert das System beim Aufruf einer Seite / eines Skriptes im Kundenbereich
  • LICENSE.md beinhaltet Informationen über verwendete Software und deren Lizenzen (Lizenzdateien sind verstreut bei den entsprechenden Bibliotheken zu finden)
  • robots.txt beinhaltet Informationen für Suchmaschinen-Crawler
  • .htaccess ist extrem wichtig, damit die URLs von sourceDESK funktionieren


  • admin/index.php sorgt für die Anzeige der Administration und der Seiten innerhalb dieser
  • admin/init.php initialisiert das System für den Adminbereich
  • admin/login.php dient zum Anzeigen des Logins
  • admin/whitelist.php blockiert die Zugriffe auf die Administration, wenn die IP-Adresse nicht zugelassen ist


  • themes/favicon.ico ist das Favicon für Kundenbereich und Administration
  • themes/apple-touch-icon.png ist ein Icon für Lesezeichen auf diversen Geräten
  • themes/invoice-logo.jpg wird auf Rechnungen angezeigt