diff --git a/backend/controllers/SettingsController.php b/backend/controllers/SettingsController.php
index 83fddc0..e7baab9 100755
--- a/backend/controllers/SettingsController.php
+++ b/backend/controllers/SettingsController.php
@@ -55,7 +55,17 @@
foreach ($model->getVariationModels() as $index => $lang){
$lang->id = $index+1;
}
- $model->save();
+ if ($model->save()){
+ if (!empty($_FILES)){
+ $name = $this->saveLogo($_FILES['logo']['name'], $_FILES[ 'logo' ][ 'tmp_name' ]);
+ if ($name){
+ print_r($name);
+ $model->logo = $name;
+ $model->save();
+ print_r($model->errors); die();
+ }
+ }
+ }
Yii::$app->session->setFlash('success', \Yii::t('core', 'Settings saved'));
$mail->load(Yii::$app->request->post());
$mail->save();
@@ -70,9 +80,31 @@
]
);
}
+
+
+ public function saveLogo($name, $tmp)
+ {
-
-
+ if (!file_exists(\Yii::getAlias('@storage/logo'))) {
+ mkdir(\Yii::getAlias('@storage/logo') , 0777);
+ }else{
+ foreach (glob(\Yii::getAlias('@storage/logo/*')) as $file)
+ unlink($file);
+
+ }
+ if (!preg_match("~^([a-zA-Z0-9)(_-]+)\.(jpg|jpeg|gif|png|svg)$~i", $name, $matches)) {
+ return false;
+ }
+ if (!empty($tmp)) {
+ copy(
+ $tmp,
+ \Yii::getAlias('@storage/logo/') . $name
+ );
+ chmod(\Yii::getAlias('@storage/logo/') . $name, 0777);
+ return $name;
+ }
+ return false;
+ }
/**
* Find site settings
*
diff --git a/backend/views/settings/_main_tab.php b/backend/views/settings/_main_tab.php
index 4325e70..d8e2fe2 100755
--- a/backend/views/settings/_main_tab.php
+++ b/backend/views/settings/_main_tab.php
@@ -2,6 +2,7 @@
use artbox\core\admin\widgets\ImageInput;
use common\models\Settings;
+ use kartik\file\FileInput;
use yii\bootstrap\ActiveForm;
use yii\web\View;
@@ -10,6 +11,15 @@
* @var Settings $model
* @var ActiveForm $form
*/
+
+ if (!empty($model->logo)) {
+ $logo[] = '';
+ $config = ["url" => "delete-image", "key" => 0, 'extra' => ['image' => $model->logo]];
+
+ } else {
+ $logo = [];
+ $config = [];
+ }
echo '