dbxapp 4.1.3
CMS, Shop, Workflows und modulare Geschäftsanwendungen
Loading...
Searching...
No Matches
dbx\dbxDesign_admin\dbxDesignService Class Reference

Dateibasierte Design-Domäne für Wizard, Backup und KI-Import. More...

Public Member Functions

 designRoot ()
 Liefert den absoluten Design-Root.
 normalizeName (string $name)
 Normalisiert einen technischen Designnamen.
 isValidName (string $name)
 Prüft den technischen Designnamen.
 designDir (string $name)
 Liefert den absoluten Pfad eines validierten Designs.
 listDesigns ()
 Listet alle öffentlichen Designs mit Metadaten und Vertragsstatus.
 readMetadata (string $name)
 Liest optionale Wizard-Metadaten.
 defaults (string $source='dbxapp')
 Voreinstellungen für einen komfortablen Wizard.
 createFromWizard (array $input, array $logoUpload=array())
 Erzeugt aus einem vorhandenen kompatiblen Design ein unabhängiges Paket.
 backupDesign (string $name)
 Erstellt eine wiederherstellbare ZIP-Sicherung eines Designs.
 validateDesignDirectory (string $dir, bool $strict=true)
 Validiert den Designvertrag und sicherheitsrelevante Dateien.
 relativeFiles (string $dir)
 Liefert alle Paketdateien als relative, slash-normalisierte Pfade.
 isAllowedDesignFile (string $relative)
 Prüft Dateitypen, die eine KI in einem Designpaket liefern darf.
 validateResultFile (string $relative, string $absolute)
 Prüft aktive Inhalte einer von außen gelieferten Ergebnisdatei.
 applyResult (string $source, string $target, string $resultDir, string $mode)
 Kopiert ein Design als sichere Grundlage und überschreibt es mit validierten Ergebnisdateien einer KI.

Public Attributes

const CONTRACT = 'dbx.design.v1'

Detailed Description

Dateibasierte Design-Domäne für Wizard, Backup und KI-Import.

Designs liegen ausschließlich unter dbx/design/{name}. Die Klasse nimmt keine Datenbankzugriffe vor. Alle Schreibvorgänge werden auf einen zuvor validierten Designnamen begrenzt und neue Designs zunächst in einem Staging-Verzeichnis aufgebaut.

Definition at line 12 of file dbxDesignService.class.php.

Member Function Documentation

◆ applyResult()

dbx\dbxDesign_admin\dbxDesignService::applyResult ( string $source,
string $target,
string $resultDir,
string $mode )

Kopiert ein Design als sichere Grundlage und überschreibt es mit validierten Ergebnisdateien einer KI.

Definition at line 358 of file dbxDesignService.class.php.

References $mode, $source, $target, isValidName(), and normalizeName().

◆ backupDesign()

dbx\dbxDesign_admin\dbxDesignService::backupDesign ( string $name)

Erstellt eine wiederherstellbare ZIP-Sicherung eines Designs.

Definition at line 189 of file dbxDesignService.class.php.

References $dir, and designDir().

◆ createFromWizard()

dbx\dbxDesign_admin\dbxDesignService::createFromWizard ( array $input,
array $logoUpload = array() )

Erzeugt aus einem vorhandenen kompatiblen Design ein unabhängiges Paket.

Parameters
array$inputNormalisierte Wizardwerte.
array$logoUploadOptionaler Eintrag aus $_FILES.
Returns
array Ergebnis mit Designname, Backup und Prüfstatus.

Definition at line 130 of file dbxDesignService.class.php.

References $input, $source, $target, designDir(), isValidName(), and normalizeName().

◆ defaults()

dbx\dbxDesign_admin\dbxDesignService::defaults ( string $source = 'dbxapp')

Voreinstellungen für einen komfortablen Wizard.

Definition at line 94 of file dbxDesignService.class.php.

References $source.

◆ designDir()

dbx\dbxDesign_admin\dbxDesignService::designDir ( string $name)

Liefert den absoluten Pfad eines validierten Designs.

Definition at line 42 of file dbxDesignService.class.php.

References isValidName(), and normalizeName().

Referenced by backupDesign(), createFromWizard(), and readMetadata().

◆ designRoot()

dbx\dbxDesign_admin\dbxDesignService::designRoot ( )

Liefert den absoluten Design-Root.

Definition at line 19 of file dbxDesignService.class.php.

References get_base_dir(), and os_path().

Referenced by listDesigns().

◆ isAllowedDesignFile()

dbx\dbxDesign_admin\dbxDesignService::isAllowedDesignFile ( string $relative)

Prüft Dateitypen, die eine KI in einem Designpaket liefern darf.

Definition at line 295 of file dbxDesignService.class.php.

Referenced by validateResultFile().

◆ isValidName()

dbx\dbxDesign_admin\dbxDesignService::isValidName ( string $name)

Prüft den technischen Designnamen.

Definition at line 35 of file dbxDesignService.class.php.

Referenced by applyResult(), createFromWizard(), designDir(), and listDesigns().

◆ listDesigns()

dbx\dbxDesign_admin\dbxDesignService::listDesigns ( )

Listet alle öffentlichen Designs mit Metadaten und Vertragsstatus.

Definition at line 53 of file dbxDesignService.class.php.

References $dir, $out, $validation, designRoot(), isValidName(), readMetadata(), and validateDesignDirectory().

◆ normalizeName()

dbx\dbxDesign_admin\dbxDesignService::normalizeName ( string $name)

Normalisiert einen technischen Designnamen.

Definition at line 26 of file dbxDesignService.class.php.

Referenced by applyResult(), createFromWizard(), and designDir().

◆ readMetadata()

dbx\dbxDesign_admin\dbxDesignService::readMetadata ( string $name)

Liest optionale Wizard-Metadaten.

Definition at line 82 of file dbxDesignService.class.php.

References $file, and designDir().

Referenced by listDesigns().

◆ relativeFiles()

dbx\dbxDesign_admin\dbxDesignService::relativeFiles ( string $dir)

Liefert alle Paketdateien als relative, slash-normalisierte Pfade.

Definition at line 271 of file dbxDesignService.class.php.

References $dir, and $files.

◆ validateDesignDirectory()

dbx\dbxDesign_admin\dbxDesignService::validateDesignDirectory ( string $dir,
bool $strict = true )

Validiert den Designvertrag und sicherheitsrelevante Dateien.

Definition at line 214 of file dbxDesignService.class.php.

References $dir, and $errors.

Referenced by listDesigns().

◆ validateResultFile()

dbx\dbxDesign_admin\dbxDesignService::validateResultFile ( string $relative,
string $absolute )

Prüft aktive Inhalte einer von außen gelieferten Ergebnisdatei.

Design-JavaScript bleibt grundsätzlich möglich, darf aber keinen eigenen Netzwerktransport einführen. HTML darf nur lokale Script-/Stylesheet- Dateien referenzieren und keine Inline-Handler enthalten. Damit bleibt der KI-Vertrag bei Darstellung und Layout und wird nicht zu einer zweiten API- oder Tracking-Pipeline.

Returns
string Leerer String bei Erfolg, sonst verständlicher Fehler.

Definition at line 319 of file dbxDesignService.class.php.

References if, and isAllowedDesignFile().

Member Data Documentation

◆ CONTRACT

const dbx\dbxDesign_admin\dbxDesignService::CONTRACT = 'dbx.design.v1'

Definition at line 14 of file dbxDesignService.class.php.


The documentation for this class was generated from the following file: