diff --git a/backend/config/main.php b/backend/config/main.php
index 92646c9..7a2e2e4 100644
--- a/backend/config/main.php
+++ b/backend/config/main.php
@@ -32,9 +32,6 @@ return [
'session' => [
'name' => '_backendSessionId', // unique for backend
'savePath' => __DIR__ . '/../runtime', // a temporary folder on backend
- 'cookieParams' => [
- 'path' => '/backend/web',
- ],
],
'log' => [
'traceLevel' => YII_DEBUG ? 3 : 0,
diff --git a/backend/controllers/KeyController.php b/backend/controllers/KeyController.php
index 847401b..6c4aaa4 100644
--- a/backend/controllers/KeyController.php
+++ b/backend/controllers/KeyController.php
@@ -33,7 +33,7 @@ class KeyController extends Controller {
'rules' => [
// allow authenticated users
[
- 'actions' => ['create','index','view','update'],
+ 'actions' => ['create','index','view','update','import'],
'allow' => true,
'roles' => ['admin','employee','reception'],
],
@@ -156,10 +156,18 @@ class KeyController extends Controller {
public function actionImport() {
$model = new KeyImportForm();
$arr = [ ];
+ $updated = 0;
+ $inserted = 0;
+ $failed = 0;
+ $found = 0;
if (Yii::$app->request->isPost) {
+
+
$model->file = UploadedFile::getInstance ( $model, 'file' );
+ if ( isset($model->file)){
+
// print_r($model->file);
// $model->message = "ok";
$file = $model->file->tempName;
@@ -191,25 +199,48 @@ class KeyController extends Controller {
$arr [] = $item;
}
}
+ $found = count($arr);
foreach ( $arr as $item ) {
try {
- $key = new Key ();
- $key->number = $item ['number'];
- $key->rfid_key = $item ['key'];
- $key->status = Key::STATUS_ACTIVE;
- $key->type = Key::TYPE_NORMAL;
- $key->save ( false );
+ $key = Key::findOne(['number' => $item ['number']]);
+ if ( !isset($key)){
+ $key = new Key ();
+ $key->number = $item ['number'];
+ $key->rfid_key = $item ['key'];
+ $key->status = Key::STATUS_ACTIVE;
+ $key->type = Key::TYPE_NORMAL;
+ $key->save ( false );
+ $inserted++;
+ }else{
+ $key->rfid_key = $item['key'];
+ $key->update(false);
+ $updated++;
+ }
} catch ( \Exception $e ) {
\Yii::error ( "Failed to save key: " . $key->number );
+ $failed++;
+
}
}
+ $message = "Fájlnév: " . $model->file->name;
+ $message .= "
Fájlból beolvasva: $found ";
+ $message .= "
Új kulcs sikeresen importálva: $inserted ";
+ $message .= "
Rendszerben lévő kulcs sikeresen módosítva: $updated ";
+ $message .= "
Sikertelen kulcs importálás/módosítás: $failed ";
+ \Yii::$app->session->setFlash('success',$message);
- $this->redirect ( [
+ $model->message = $message;
+
+ \Yii::$app->session->set('mymessage',$model->message);
+
+ return $this->redirect ( [
'import'
] );
+ }
}
-
+ $model->message = \Yii::$app->session->get('mymessage');
+ \Yii::$app->session->remove('mymessage');
return $this->render ( 'import', [
'model' => $model
] );
diff --git a/backend/views/key/import.php b/backend/views/key/import.php
index b4f5923..99d2705 100644
--- a/backend/views/key/import.php
+++ b/backend/views/key/import.php
@@ -9,8 +9,24 @@ use yii\helpers\Html;
message);
+ if ( isset($model->message)){
+ ?>
+
+