Skip to content

patrickfroch/messagetoolbox

 
 

Repository files navigation

MessageToolbox

PHP >= 8.1 Contao >= 4.13 PHPStan Level 9

Beschreibung

Mit dieser Toolbox können Rückmeldungen an den Nutzer einer Seite im Frontend ausgegeben werden. Die Meldungen werden in der Session zwischengespeichert und können z.B. nach dem Redirect beim Speichern eines Formulars ausgegeben werden.

Autor

Patrick Froch hallo@patrick-froch.de

Lizenz

Die Software wird unter LGPL-v3 veröffentlicht. Details sind in der Datei LICENSE zu finden.

Voraussetzungen

  • php: ~8.1
  • contao/core-bundle: ~4.13|^5.0

Installation

Die Installation geschieht über den ContaoManager. Einfach nach esit/messagetoolbox suchen und installieren. Aleternativ kann die Erweiterung mit folgendem Befehl über Composer installiert werden:

composer require esit/messagetoolbox

Getestete Versionen

Die Erweiterung wurde erfolgreich mit folgenden Kombinationen aus PHP und Contao getestet:

Contao PHP 8.2 PHP 8.3 PHP 8.4 PHP 8.5
Contao 4.13
Contao 5.0
Contao 5.1
Contao 5.2
Contao 5.3
Contao 5.4
Contao 5.5

Verwendung

<?php

class MyClass {

    public function __constructor() {
        $this->sessMsg = \Contao\System::getContainer()->get(\Esit\Messagetoolbox\Classes\Services\SessionMessage::class);
    }

    public function setMessage() {
        $this->sessMsg->addMessage('languageKey_or_message');
    }

    public function getMessages() {
        $sm         = \Contao\System::getContainer()->get(\Esit\Messagetoolbox\Classes\Services\SessionMessage::class);
        $messages   = $this->sessMsg->getMessages();
        $this->sessMsg->deleteMessages();   // Delete all Messages!
        var_dump($messages);                // Array of Messages!
    }

    public function outputMessages() {
        echo $this->sessMsg->ouput();      // Output string with default template AND DELETES ALL MESSAGES!
    }
}

Inhaltselement

Für die Ausgabe steht auch ein Inhaltselement zur Verfügung. Dies kann ganz normal in einen Artikel eingebunden werden. Es gibt die Messages aus und löscht dann die Meldungen, damit sie nicht mehrfach ausgegeben werden können.

Übersetzung der Ausgabe

Die Übersetzung der Ausgabe steht in der Sprachdatei default.php:

$GLOBALS['TL_LANG']['MSC']['messagetoolbox']['output']['languageKey_or_message'] = 'Toller Nachrichtentext!';

Ist für den mit $sm->addMessage('languageKey_or_message'); gesetzten Key ein Eineintrag in $GLOBALS['TL_LANG']['MSC']['messagetoolbox']['output'] vorganden, wird dieser im Standardtemplate ausgegeben.

About

This toolbox allows you to display feedback to users of a page in the frontend. The messages are cached in the session and can be displayed, for example, after a redirect when saving a form.

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages

  • PHP 89.6%
  • Shell 10.4%