* @copyright Copyright (C) 2008-2018, Rémi Jean * @license GNU General Public License, version 3 * @link http://zwiicms.fr/ */ class redirection extends common { const VERSION = '1.5'; const REALNAME = 'Redirection'; const DELETE = true; const UPDATE = true; const DATADIRECTORY = []; // Contenu localisé inclus par défaut (page.json et module.json) public static $actions = [ 'config' => self::GROUP_MODERATOR, 'index' => self::GROUP_VISITOR ]; /** * Configuration */ public function config() { // Soumission du formulaire if($this->isPost()) { $this->setData(['module', $this->getUrl(0), 'url', $this->getInput('redirectionConfigUrl', helper::FILTER_URL, true)]); // Valeurs en sortie $this->addOutput([ 'redirect' => helper::baseUrl() . $this->getUrl(), 'notification' => 'Modifications enregistrées', 'state' => true ]); } // Valeurs en sortie $this->addOutput([ 'title' => 'Configuration du module', 'view' => 'config' ]); } /** * Accueil */ public function index() { // Message si l'utilisateur peut éditer la page if( $this->getUser('password') === $this->getInput('ZWII_USER_PASSWORD') AND $this->getUser('group') >= self::GROUP_MODERATOR AND $this->getUrl(1) !== 'force' ) { // Valeurs en sortie $this->addOutput([ 'display' => self::DISPLAY_LAYOUT_BLANK, 'title' => '', 'view' => 'index' ]); } // Sinon redirection else { // Incrémente le compteur de clics $this->setData(['module', $this->getUrl(0), 'count', helper::filter($this->getData(['module', $this->getUrl(0), 'count']) + 1, helper::FILTER_INT)]); // Valeurs en sortie $this->addOutput([ 'redirect' => $this->getData(['module', $this->getUrl(0), 'url']), 'state' => true ]); } } }