{
$user = $this->getUser();
if ($this->validate() && $user) {
- $this->legacyFill();
+ $user->legacyFill();
return \Yii::$app->user->login($user, 3600 * 24 * 30);
}
return false;
}
- private function legacyFill()
- {
- $user = $this->getUser();
-
- $user->updateAttributes(['lasttime' => new Expression("NOW()")]);
-
- $_SESSION['admin_id'] = $user->id;
- $_SESSION['group_id'] = $user->group_id;
- $_SESSION["store_arr_dostup"] = explode(",", $user->store_arr);
- $_SESSION["store_arr_guid_dostup"] = explode(",", $user->store_arr_guid);
- $_SESSION["org_id_default"] = $user->org_id;
- $_SESSION["sklad_id_default"] = $user->sklad_id;
- $ava = 'i/heart.webp';
- $_SESSION["avatarka"] = $ava;
-
- $_SESSION["view_modules"] = json_decode($user->popular_modules, true, 512, JSON_UNESCAPED_UNICODE);
-
- $_SESSION['name_admin'] = $user->name;
-
- $_SESSION['city_arr_dostup'] = [];
- $_SESSION['sklad_arr_dostup'] = [];
- $_SESSION['sites_arr_dostup'] = [];
- $_SESSION['filial_arr_dostup'] = [];
-
- $_SESSION['sklad_dostup_all'] = [];
- $_SESSION['city_dostup_all'] = [];
- $_SESSION['sites_dostup_all'] = [];
- $_SESSION['filial_dostup_all'] = [];
- $_SESSION['kassa_dostup_all'] = [];
-
- $_SESSION["admin_photo"] = $ava;
- $_SESSION['dostup_area'] = "";
-
- $_SESSION['dostup_area'] = [];
- $group = AdminGroup::findOne($user->group_id);
- $_SESSION['admin_group_name'] = $group->name ?? "Какая-то...";
- $_SESSION['name_group_admin'] = $group->name ?? "Какая-то...";
- $_SESSION['status_dostup_arr'] = [];
- $_SESSION['admin_group_add_arr'] = [];
-
- $_SESSION['modul_arr_dostup'] = [];
- $_SESSION['group_dostup'] = [];
-
- $_SESSION['filial_dostup_city'] = [];
-
- $_SESSION['filial_city_arr'] = [];
-
- $_SESSION['seo_sites_arr'] = [];
-
- $_SESSION['filial_dostup_city'] = [];
- $_SESSION['filial_id'] = $user->filial_id;
- $_SESSION['filial_default_city_id'] = 1921;
- $_SESSION['filial_sites_arr'] = [];
-
- $_SESSION['manager_id'] = $user->manager_id ?? null;
- $_SESSION['content_dostup'] = $user->content_dostup ?? null;
-
-// $_SESSION['name_group_admin'] = "Пользователь";
- }
/**
* Finds user by [[username]]
use yii\base\NotSupportedException;
use yii\db\ActiveQueryInterface;
use yii\db\ActiveRecord;
+use yii\db\Expression;
use yii\helpers\ArrayHelper;
use yii\web\IdentityInterface;
{
return $this->hasOne(ExportImportTable::class, ['entity_id' => 'id'])->where(['entity' => "admin", 'export_id' => 1]);
}
+
+ public function legacyFill()
+ {
+ $user = $this;
+
+ $user->updateAttributes(['lasttime' => new Expression("NOW()")]);
+
+ $_SESSION['admin_id'] = $user->id;
+ $_SESSION['group_id'] = $user->group_id;
+ $_SESSION["store_arr_dostup"] = explode(",", $user->store_arr);
+ $_SESSION["store_arr_guid_dostup"] = explode(",", $user->store_arr_guid);
+ $_SESSION["org_id_default"] = $user->org_id;
+ $_SESSION["sklad_id_default"] = $user->sklad_id;
+ $ava = 'i/heart.webp';
+ $_SESSION["avatarka"] = $ava;
+
+ $_SESSION["view_modules"] = json_decode($user->popular_modules, true, 512, JSON_UNESCAPED_UNICODE);
+
+ $_SESSION['name_admin'] = $user->name;
+
+ $_SESSION['city_arr_dostup'] = [];
+ $_SESSION['sklad_arr_dostup'] = [];
+ $_SESSION['sites_arr_dostup'] = [];
+ $_SESSION['filial_arr_dostup'] = [];
+
+ $_SESSION['sklad_dostup_all'] = [];
+ $_SESSION['city_dostup_all'] = [];
+ $_SESSION['sites_dostup_all'] = [];
+ $_SESSION['filial_dostup_all'] = [];
+ $_SESSION['kassa_dostup_all'] = [];
+
+ $_SESSION["admin_photo"] = $ava;
+ $_SESSION['dostup_area'] = "";
+
+ $_SESSION['dostup_area'] = [];
+ $group = AdminGroup::findOne($user->group_id);
+ $_SESSION['admin_group_name'] = $group->name ?? "Какая-то...";
+ $_SESSION['name_group_admin'] = $group->name ?? "Какая-то...";
+ $_SESSION['status_dostup_arr'] = [];
+ $_SESSION['admin_group_add_arr'] = [];
+
+ $_SESSION['modul_arr_dostup'] = [];
+ $_SESSION['group_dostup'] = [];
+
+ $_SESSION['filial_dostup_city'] = [];
+
+ $_SESSION['filial_city_arr'] = [];
+
+ $_SESSION['seo_sites_arr'] = [];
+
+ $_SESSION['filial_dostup_city'] = [];
+ $_SESSION['filial_id'] = $user->filial_id;
+ $_SESSION['filial_default_city_id'] = 1921;
+ $_SESSION['filial_sites_arr'] = [];
+
+ $_SESSION['manager_id'] = $user->manager_id ?? null;
+ $_SESSION['content_dostup'] = $user->content_dostup ?? null;
+
+// $_SESSION['name_group_admin'] = "Пользователь";
+ }
}
\ No newline at end of file
//$app->params['API2_TOKEN'] = $app->db->createCommand(
// 'SELECT access_token FROM api_user WHERE "login"=\'erp\' LIMIT 1;')->queryAll()[0]['access_token'] ?? null;
+$app->on(\yii\base\Application::EVENT_BEFORE_REQUEST, function ($event) {
+ if (!Yii::$app->user->isGuest && !isset($_SESSION['admin_id'])) {
+ Yii::$app->user->identity->legacyFill();
+ }
+});
+
$app->run();