public function run()
 {
     $is_locked = Settings::getSetting('locked');
     $items = [['title' => 'Fragen', 'icon' => 'question-circle', 'url' => 'question', 'items' => [['title' => 'Neue frage', 'url' => 'question/create', 'options' => []], ['title' => 'Aus Datei einspielen', 'url' => 'question/import', 'options' => []], ['title' => 'Liste', 'url' => 'question/index', 'options' => []]]], ['title' => 'Banken', 'icon' => 'money', 'url' => 'bank', 'items' => [['title' => 'Neue bank', 'url' => 'bank/create', 'options' => []], ['title' => 'Liste', 'url' => 'bank/index', 'options' => []], ['title' => 'Bankenstatistik', 'url' => 'bank/statistic-list', 'options' => []], ['title' => 'Platzhalter', 'url' => 'bank/placeholders', 'options' => []], ['title' => 'Aus Datei einspielen', 'url' => 'bank/import', 'options' => []]]], ['title' => 'Benutzergruppen', 'icon' => 'users', 'url' => 'group', 'items' => [['title' => 'Neue Gruppe', 'url' => 'group/create', 'options' => []], ['title' => 'Liste', 'url' => 'group/index', 'options' => []]]], ['title' => 'Fragebögen', 'icon' => 'terminal', 'url' => 'form', 'items' => [['title' => 'Neue Fragebögen', 'url' => 'form/create', 'options' => []], ['title' => 'Liste', 'url' => 'form/index', 'options' => []]]], ['title' => 'Zugangscodes', 'icon' => 'barcode', 'url' => 'code', 'items' => [['title' => 'Neue Codes erzeugen', 'url' => 'code/create', 'options' => []]]], ['title' => 'Individualisierung', 'icon' => 'paint-brush', 'url' => 'user-text', 'items' => [['title' => 'Texte', 'url' => 'texts/index', 'options' => []], ['title' => 'Styles', 'url' => 'styles/index', 'options' => []], ['title' => 'Begrüßungstexte', 'url' => 'user-text/index/start', 'options' => []], ['title' => 'Schlusstexte', 'url' => 'user-text/index/end', 'options' => []]]], ['title' => 'Sprachen', 'icon' => 'language', 'url' => 'language', 'items' => [['title' => 'Neue Sprache', 'url' => 'language/create', 'options' => []], ['title' => 'Liste', 'url' => 'language/index', 'options' => []], ['title' => 'Aus Datei einspielen', 'url' => 'language/import', 'options' => []], ['title' => 'Übersetzungen', 'url' => 'translation/index', 'options' => []]]], ['title' => 'System', 'icon' => 'cogs', 'url' => 'system', 'items' => [['title' => 'Statistik', 'url' => 'system/statistic', 'options' => []], ['title' => 'Sperren', 'icon' => 'lock', 'url' => 'system/lock', 'options' => ['data-confirm' => $is_locked == 0 ? 'Das System wird gesperrt. Nachdem sie OK geklickt haben, kann nur mehr der Superdamin die Sperre aufheben.' : 'Diese Aktion hebt die Sperre auf. Wollen sie dies?']], ['title' => 'Reset', 'url' => 'system/reset', 'options' => ['data-confirm' => 'Alle Produktionsdaten werden gelöscht. Bitte stellen sie sicher, dass sie ein Backup haben. Wollen sie alles löschen?']], ['title' => 'Ergebnisse löschen', 'url' => 'system/clean', 'options' => ['data-confirm' => 'Alle Statistiken werden gelöscht. Wollen sie dies?']]]]];
     if ($is_locked == 1) {
         $items[7]['items'][1]['title'] = 'Öffnen';
     }
     echo $this->render('adminmenu', ['items' => $items]);
 }
 /**
  * Lists all Style models.
  * @return mixed
  */
 public function actionIndex()
 {
     if (isset($_GET['pageSize'])) {
         Yii::$app->session->set('pageSize', (int) $_GET['pageSize']);
         unset($_GET['pageSize']);
     }
     $searchModel = new StylesSearch();
     $dataProvider = $searchModel->search(Yii::$app->request->queryParams);
     $defStyle = Settings::getSetting('style');
     return $this->render('index', ['searchModel' => $searchModel, 'dataProvider' => $dataProvider, 'defaultStyle' => $defStyle]);
 }
 public function actionLock()
 {
     $is_locked = Settings::getSetting('locked');
     $setting = Settings::findOne(['pm_id' => 'locked']);
     $setting->locked = $is_locked == 1 ? 0 : 1;
     if (true == $setting->save()) {
         Yii::$app->user->logout();
         return $this->redirect(['/admin']);
     } else {
         return $this->redirect(['index']);
     }
 }
 /**
  * Validates the password.
  * This method serves as the inline validation for password.
  *
  * @param string $attribute the attribute currently being validated
  * @param array $params the additional name-value pairs given in the rule
  */
 public function validatePassword($attribute, $params)
 {
     if (!$this->hasErrors()) {
         $user = $this->getUser();
         if (!$user || !$user->validatePassword($this->password)) {
             $this->addError($attribute, 'Benutzername oder Passwort sind inkorrekt.');
             return false;
         }
         $is_locked = Settings::getSetting('locked');
         if ($is_locked == 1) {
             if ($this->_user->role != 'super admin') {
                 $this->addError($attribute, 'Das System ist gesperrt. Sie müssen sich als Superadmin einloggen.');
             }
             return false;
         }
     }
     return true;
 }
 public function processCode($fullCode)
 {
     $code = $fullCode['code'];
     $original = $fullCode['original'];
     if ($this->isCodeActive($code)) {
         $group = Group::findOne($code->z_p_id)->toArray();
         $bank = Bank::findOne($code->z_b_id)->toArray();
         $form = Form::findOne(['f_klasse' => $bank['klasse'], 'f_p_id' => $group['p_id']]);
         $style = Style::findOne(['s_b_id' => $bank['b_id'], 's_p_id' => $group['p_id']]);
         if (!$style) {
             $style = Settings::getSetting('style');
         } else {
             $style = $style->style;
         }
         $label = Yii::$app->params['default_next_label'];
         $message = Yii::$app->params['default_next_message'];
         if ($this->language != "default") {
             $language = Language::findOne($this->language);
             if ($language != null) {
                 if ($language->label != '') {
                     $label = $language->label;
                 }
                 if ($language->message != '') {
                     $message = $language->message;
                 }
             }
         }
         Yii::$app->session['anketData'] = ['original' => $original, 'code' => $code->toArray(), 'group' => $group, 'bank' => $bank, 'form' => $form->f_id, 'status' => 0, 'lang' => $this->language, 'style' => $style, 'label' => $label, 'message' => $message];
         $meta = Meta::findOne(['m_z_id' => $code->z_id]);
         if (!$meta) {
             $meta = new Meta();
             $meta->m_z_id = $code->z_id;
             $meta->ip = $_SERVER['REMOTE_ADDR'];
             $meta->time_start = time();
         } else {
             $meta->ip = $_SERVER['REMOTE_ADDR'];
         }
         $meta->save();
         return true;
     }
     return false;
 }
示例#6
0
<?php

use yii\widgets\ActiveForm;
use yii\helpers\ArrayHelper;
use app\models\Settings;
$style = Settings::getSetting('style');
/* @var $this yii\web\View */
$this->title = 'Victor 2016';
$languages = ['default' => 'Default'] + ArrayHelper::map(app\models\Language::find()->all(), 'l_id', 'name');
$webRoot = Yii::$app->getUrlManager()->getBaseUrl();
?>
<link href="<?php 
echo $webRoot;
?>
/css/styles/<?php 
echo $style;
?>
/style.css" rel="stylesheet">

<div class="form-div">

	<?php 
if ($error) {
    ?>
		<div class="alert alert-danger" role="alert">
			<?php 
    echo $error;
    ?>
		</div>
	<?php 
}
示例#7
0
 public function getIndex()
 {
     $settings = Settings::getSetting();
     return $this->ResponseData($settings);
 }
示例#8
0
文件: Controller.php 项目: dao94/game
 static function getSetting()
 {
     return Settings::getSetting();
 }
 public function actionQuestionnaire($bezeichnung, $groupId, $langId)
 {
     $is_locked = Settings::getSetting('locked');
     if ($is_locked == 1) {
         return $this->render('error', ['name' => 'Fehler', 'message' => 'Das System ist gesperrt. Bei Fragen wenden sie sich bitte an Emotion Banking.']);
     }
     try {
         $bankKlasse = Bank::findOne(['b_id' => $bezeichnung])->klasse;
         $questionnaire = Form::findOne(['f_klasse' => $bankKlasse, 'f_p_id' => $groupId]);
         if (empty($questionnaire)) {
             throw new ErrorException('Es gibt keinen Fragebogen für ihre Banken-, bzw. Kundengruppenauswahl');
         }
         $code = $questionnaire->createSpecificCode($bezeichnung);
         if ($code->hasErrors()) {
             return $this->render('error', ['name' => 'Fehler', 'message' => $code->getLastErrorMessage()]);
         }
     } catch (ErrorException $e) {
         return $this->render('error', ['name' => 'Fehler', 'message' => $e->getMessage()]);
     }
     $codeString = $code->__toString();
     if ($codeString !== null) {
         $warning = '';
         $model = new AnketForm();
         $model->code = $codeString;
         $model->language = $langId;
         if ($langId != "default") {
             $lanuage = Language::findOne($langId);
             if (empty($lanuage)) {
                 $warning = "Die angegebene Sprache " . $langId . " kann nicht gefunden werden. Es wird die Standardsprache angezeigt";
             }
         }
         if ($code !== false && ($code = $model->validateCode())) {
             $model->processCode($code);
             $data = Yii::$app->session['anketData'];
             $text = UserText::getText($data['group']['p_id'], $data['bank']['b_id'], $data['lang'], true);
             if (is_null($text)) {
                 return $this->render('error', ['name' => 'Fehler', 'message' => 'kein Starttext für diese Sprache gefunden']);
             }
             return $this->render('welcome', ['text' => $text, 'code' => $data["original"], 'warning' => $warning, 'style' => $data['style']]);
         } else {
             return $this->render('error', ['name' => 'Fehler', 'message' => 'Bank gesperrt, Code ungültig oder bereits verwendet. Anmeldung fehlgeschlagen']);
         }
     } else {
         $this->redirect(['/site/index']);
     }
     $data = Yii::$app->session['anketData'];
     $form = Form::findOne($data['form']);
     $questions = $form->getQuestions($bank_id = $data["bank"]["b_id"]);
     //default
     $status = 0;
     //code not needed.
     if (Yii::$app->request->post('q')) {
         $userAnswers = Yii::$app->request->post('q');
         $status = $form->saveAnswers($data['code'], $userAnswers);
         $data['status'] = $status;
         $data['code']['status'] = $status;
     } else {
         $data = Yii::$app->session['anketData'];
         $text = UserText::getText($data['group']['p_id'], $data['bank']['b_id'], $data['lang'], true);
         if (is_null($text)) {
             return $this->render('error', ['name' => 'Fehler', 'message' => 'kein Starttext für diese Sprache gefunden']);
         }
         return $this->render('welcome', ['text' => $text, 'code' => $data["original"], 'style' => $data["style"]]);
     }
     Yii::$app->session['anketData'] = $data;
     if (!($status < $form->getQuestionsCount($questions))) {
         $this->redirect(['/site/end']);
     }
     return $this->render('form', ['status' => $status, 'percent' => round($status / $form->getQuestionsCount($questions) * 100), 'questions' => $questions, 'anket' => $form, 'bank' => $data['bank']['b_id'], 'style' => $data['style']]);
 }