Commit 6f50457e authored by Олег Гиммельшпах's avatar Олег Гиммельшпах

Merge branch 'master' of git.task-on.com:ktask/task-on.com

parents 8aeb6873 fcdc3261
<?php <?php
namespace common\components; namespace common\components;
use app\models\TriggerLogs;
use common\modules\triggers\components\conditions\conditions\CheckPresenceTime; use common\modules\triggers\components\conditions\conditions\CheckPresenceTime;
use common\modules\triggers\components\conditions\conditions\CheckScrolling; use common\modules\triggers\components\conditions\conditions\CheckScrolling;
use Yii; use Yii;
...@@ -63,8 +64,9 @@ abstract class BaseController extends Controller ...@@ -63,8 +64,9 @@ abstract class BaseController extends Controller
public function beforeAction($action) public function beforeAction($action)
{ {
CheckPresenceTime::init()->initScript(); TriggerLogs::logAction();
CheckScrolling::init()->initScript(); // CheckPresenceTime::init()->initScript();
// CheckScrolling::init()->initScript();
/*if(substr($currentUrl, -1) == '/' && $currentUrl!="/") { /*if(substr($currentUrl, -1) == '/' && $currentUrl!="/") {
$urlWithoutSlash = substr($currentUrl, 0, -1); $urlWithoutSlash = substr($currentUrl, 0, -1);
return $this->redirect($urlWithoutSlash,true,301); return $this->redirect($urlWithoutSlash,true,301);
......
<?php
namespace app\models;
use Faker\Provider\DateTime;
use Yii;
use common\modules\users\models\User;
/**
* This is the model class for table "trigger_logs".
*
* @property integer $id
* @property integer $user_id
* @property string $action
* @property string $url
* @property string $datetime
* @property integer $presence_time
*
* @property User $user
*/
class TriggerLogs extends \yii\db\ActiveRecord
{
const USER_REGISTRATION = 'registration';
const USER_VISITED = 'visited';
public static function logAction()
{
if (!Yii::$app->user->isGuest) {
$date = new \DateTime();
$model = new TriggerLogs();
$model->user_id = Yii::$app->user->identity->id;
$model->action = self::USER_VISITED;
$model->url = Yii::$app->request->getUrl();
$model->datetime = $date->format('Y-m-d H:i:s');
$model->presence_time = 1;
$model->save();
}
}
/**
* @inheritdoc
*/
public static function tableName()
{
return 'trigger_logs';
}
/**
* @inheritdoc
*/
public function rules()
{
return [
[['user_id', 'action', 'datetime', 'url'], 'required'],
[['user_id', 'presence_time'], 'integer'],
[['datetime'], 'safe'],
[['action', 'url'], 'string', 'max' => 255],
[['user_id'], 'exist', 'skipOnError' => true, 'targetClass' => User::className(), 'targetAttribute' => ['user_id' => 'id']],
];
}
/**
* @inheritdoc
*/
public function attributeLabels()
{
return [
'id' => 'ID',
'user_id' => 'User ID',
'action' => 'Action',
'datetime' => 'Datetime',
'presence_time' => 'Presence Time',
];
}
/**
* @return \yii\db\ActiveQuery
*/
public function getUser()
{
return $this->hasOne(User::className(), ['id' => 'user_id']);
}
}
<?php
use yii\db\Migration;
class m160315_022841_add_logs_table extends Migration
{
// Use safeUp/safeDown to run migration code within a transaction
public function safeUp()
{
$this->createTable(
'trigger_logs',
[
'id' => $this->primaryKey(),
'user_id' => $this->integer()->notNull(),
'action' => $this->string(255)->notNull(),
'url' => $this->string(255)->notNull(),
'datetime' => $this->dateTime()->notNull(),
'presence_time' => $this->integer(11)->defaultValue(1)
]
);
$this->addForeignKey(
'trigger_logs_user_id',
'trigger_logs', 'user_id',
'users', 'id'
);
}
public function safeDown()
{
$this->dropForeignKey(
'trigger_logs_user_id',
'trigger_logs'
);
$this->dropTable('trigger_logs');
}
}
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