#1079 - Разработка школы аналити по ТЗ, проверка, доработка

parent 6b8e0805
<?php
namespace common\components;
use Yii;
use yii\filters\AccessControl;
use yii\web\Controller;
abstract class FrontendController extends Controller
{
public $layout = '//main';
public $page_title;
public $page_description;
public $meta_title;
public $meta_description;
public $meta_keywords;
public $crumbs = array();
public $breadcrumbs = array();
public function init()
{
parent::init();
$this->_initSession();
}
private function _initSession()
{
$request = Yii::$app->request;
if($request->isGet && !$request->isAjax)
{
Yii::$app->session->set('SessionData', [$request->url, $request->referrer]);
}
}
}
......@@ -2,14 +2,16 @@
namespace common\modules\school\controllers;
use common\components\BaseController;
use yii\filters\AccessControl;
use common\components\FrontendController;
use common\modules\school\models\Courses;
use common\modules\school\models\SearchCourses;
use common\modules\school\models\SearchLessons;
use common\modules\users\models\User;
use common\models\LoginForm;
class CourseController extends BaseController
class CourseController extends FrontendController
{
public static function actionsTitles()
{
......@@ -19,6 +21,24 @@ class CourseController extends BaseController
];
}
public function behaviors()
{
return [
'access' => [
'class' => AccessControl::className(),
'user' => 'support',
'only' => ['view', 'index'],
'rules' => [
[
'allow' => true,
'actions' => ['view', 'index'],
'roles' => ['?'],
],
],
],
];
}
public function actionIndex()
{
\Yii::$app->view->registerMetaTag([
......
......@@ -3,14 +3,14 @@
namespace common\modules\school\controllers;
use Yii;
use yii\filters\AccessControl;
use common\components\BaseController;
use common\components\FrontendController;
use common\modules\school\models\Lessons;
use common\modules\school\models\LessonImage;
use common\modules\testings\models\Passing;
class LessonController extends BaseController
class LessonController extends FrontendController
{
public static function actionsTitles()
{
......@@ -20,6 +20,29 @@ class LessonController extends BaseController
];
}
public function behaviors()
{
return [
'access' => [
'class' => AccessControl::className(),
'user' => 'support',
'only' => ['view', 'download-documents'],
'rules' => [
[
'allow' => true,
'actions' => ['view'],
'roles' => ['?'],
],
[
'allow' => true,
'actions' => ['download-documents'],
'roles' => ['@'],
],
],
],
];
}
public function actionView($id)
{
if($_GET["source"] == 'email' && !Yii::$app->response->cookies->get('source')){
......@@ -61,8 +84,8 @@ class LessonController extends BaseController
}
}
function cookie($name,$value=null,$expire=null){
function cookie($name,$value=null,$expire=null)
{
$options['name'] = $name;
$options['value'] = $value;
$options['expire'] = time()+86400*365;
......
......@@ -84,7 +84,7 @@ WidgetAssetBundle::register($this);
<section class="vc-cont">
<div class="container">
<?php if($model->test) : ?>
<?php if($model->test && !Yii::$app->user->isGuest) : ?>
<?php if(!$passing) : ?>
......
......@@ -4,21 +4,16 @@ namespace common\modules\support\controllers;
use Yii;
use yii\filters\AccessControl;
use yii\web\Controller;
use common\components\FrontendController;
use common\modules\support\models\LoginForm;
use common\modules\users\models\User;
/**
* Default controller for the `support` module
*/
class DefaultController extends Controller
class DefaultController extends FrontendController
{
public $meta_title;
public $meta_description;
public $meta_keywords;
public $page_title;
public function behaviors()
{
return [
......
......@@ -6,10 +6,10 @@ use Yii;
use yii\filters\AccessControl;
use yii\helpers\ArrayHelper;
use yii\helpers\Html;
use yii\web\Controller;
use yii\web\Response;
use yii\web\NotFoundHttpException;
use common\components\FrontendController;
use common\models\Settings;
use common\modules\support\models\redmine\Issue;
use common\modules\support\models\redmine\RedmineHelper;
......@@ -17,12 +17,8 @@ use common\modules\support\models\redmine\RedmineHelper;
/**
* Default controller for the `support` module
*/
class SupportController extends Controller
class SupportController extends FrontendController
{
public $meta_title;
public $meta_description;
public $meta_keywords;
public function behaviors()
{
return [
......
......@@ -3,11 +3,11 @@ namespace frontend\controllers;
use Yii;
use yii\web\Controller;
use yii\filters\VerbFilter;
use yii\filters\AccessControl;
use yii\helpers\Url;
use common\components\FrontendController;
use common\models\LoginForm;
use common\modules\users\models\User;
use common\modules\eauth\components\GoogleOAuth2Service;
......@@ -16,14 +16,10 @@ use common\modules\eauth\models\UserEAuth;
/**
* Site controller
*/
class SiteController extends Controller
class SiteController extends FrontendController
{
public $layout = '//main';
public $meta_title;
public $meta_description;
public $meta_keywords;
public static function actionsTitles(){
return [
'Index' => 'Главная страница',
......@@ -50,10 +46,10 @@ class SiteController extends Controller
return [
'access' => [
'class' => AccessControl::className(),
'only' => ['logout', 'signup'],
'only' => ['logout', 'signup', 'login'],
'rules' => [
[
'actions' => ['signup'],
'actions' => ['signup', 'login'],
'allow' => true,
'roles' => ['?'],
],
......@@ -64,12 +60,6 @@ class SiteController extends Controller
],
],
],
/* 'verbs' => [
'class' => VerbFilter::className(),
'actions' => [
'logout' => ['post'],
],
],*/
'eauth' => [
// required to disable csrf validation on OpenID requests
'class' => \nodge\eauth\openid\ControllerBehavior::className(),
......@@ -163,7 +153,7 @@ class SiteController extends Controller
$model = new LoginForm();
if ($model->load(Yii::$app->request->post()) && $model->validate())
{
if($model->user->role == User::ROLE_USER || $model->user->role == User::ROLE_ADMIN)
if($model->user->role == User::ROLE_USER)
{
$model->login();
}
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment