<?php
/**
* SYMPATHIEMAGAZIN for Contao Open Source CMS
*
* Copyright (C) 2018 47GradNord - Agentur für Internetlösungen
*
* @license commercial
* @author Holger Neuner
*/
namespace CustomModule\Frontend\Modules;
use Contao\Controller;
use Contao\Module;
use Contao\System;
use Symfony\Component\HttpFoundation\Session\Session;
abstract class AbstractModule extends Module
{
const SESSIONSURFEY = 'sessionSurfey';
/**
* @param $step
* @param string $parameter
*/
protected function redirectToStep($step, $parameter = '')
{
$url = $GLOBALS['objPage']->getAbsoluteUrl('/' . $step);
if ('' !== $parameter) {
$url = $url . '?' . $parameter;
}
Controller::redirect($url);
}
/**
* @param $step
* @param string $parameter
*/
protected function getUrlToStep($step, $parameter = '')
{
$url = $GLOBALS['objPage']->getAbsoluteUrl('/' . $step);
if ('' !== $parameter) {
$url = $url . '?' . $parameter;
}
return $url;
}
/**
* @param $length
* @return string
*/
protected function getUniqueString($length) {
//Zeichen, die im Zufallsstring vorkommen sollen
$varString = '1234567890abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
$strRandomString = '';
$countString = strlen($varString);
for($i=0;$i<$length;$i++)
{
$strRandomString .= $varString[mt_rand(0, $countString - 1)];
}
return $strRandomString;
}
protected function renewSessionSurvey()
{
/** @var Session $sessionService */
$sessionService = System::getContainer()->get('session');
if(null === $sessionService->get(self::SESSIONSURFEY))
{
$sessionService->set(self::SESSIONSURFEY,time());
$sessionService->save();
return true;
}
return false;
}
protected function checkSessionSurfey()
{
/** @var Session $sessionService */
$sessionService = System::getContainer()->get('session');
if(null === $sessionService->get(self::SESSIONSURFEY))
{
return false;
}
return true;
}
}