Drag and Drop

parent 33d72d12
......@@ -20,6 +20,7 @@ class BidController extends \common\components\BaseController
{
return [
'Add' => 'Добавление заявки',
'Upload-files' => 'Загрузка файлов',
];
}
......@@ -31,21 +32,20 @@ class BidController extends \common\components\BaseController
{
$model = new Bid;
$model->scenario = Yii::$app->request->post('scenario');
if(Yii::$app->request->isAjax)
{
$model->load(Yii::$app->request->post());
$model->file = UploadedFile::getInstance($model, 'file');
Yii::$app->response->format = Response::FORMAT_JSON;
$model->filename = $_POST['file_name'];
if($model->validate())
{
if($model->file)
/*if($model->file)
{
$model->upload();
$model->file = null;
}
}*/
$model->save();
$model->send();
......@@ -63,4 +63,19 @@ class BidController extends \common\components\BaseController
}
}
public function actionUploadFiles()
{
$model = new Bid();
if (!empty($_FILES)) {
$tempFile = $_FILES['file']['tmp_name'];
$targetPath = $model->getPath();
$targetFile = $targetPath. $_FILES['file']['name'];
move_uploaded_file($tempFile,$targetFile);
return $_FILES['file']['name'];
}
}
}
......@@ -114,7 +114,7 @@ class Bid extends \common\components\ActiveRecordModel
return Yii::$app->params['frontUrl'] . self::FILE_FOLDER . $this->filename;
}
private function getPath()
public function getPath()
{
return Yii::getAlias('@frontend/web') . self::FILE_FOLDER;
}
......
<?php
namespace common\modules\content\controllers;
use Yii;
use yii\web\BadRequestHttpException;
use common\modules\content\models\CoContent;
use common\modules\school\models\Lessons;
class PageController extends \common\components\BaseController
{
......@@ -32,7 +35,7 @@ class PageController extends \common\components\BaseController
{
$model = CoContent::findOne(['url' => $page]);
}
$content = $model->lang->getFinishedContent();
$this->meta_title = $model->metaTag->title . ' - ' . \Yii::$app->params['name'];
$this->meta_description = $model->metaTag->description;
......
<?php
/**
* @link http://www.yiiframework.com/
* @copyright Copyright (c) 2008 Yii Software LLC
* @license http://www.yiiframework.com/license/
*/
namespace frontend\assets;
use yii\web\AssetBundle;
/**
* @author Qiang Xue <qiang.xue@gmail.com>
* @since 2.0
*/
class FileUploadBundle extends AssetBundle
{
public $basePath = '@webroot';
public $baseUrl = '@web';
public $css = [
'css/dropzone.css',
];
public $js = [
'js/dropzone.js',
'js/upload-files.js'
];
}
......@@ -4,6 +4,10 @@ use yii\helpers\Html;
use yii\helpers\Url;
use common\modules\bids\models\Bid;
use frontend\assets\FileUploadBundle;
FileUploadBundle::register($this);
?>
<footer>
......@@ -23,11 +27,13 @@ use common\modules\bids\models\Bid;
$form = ActiveForm::begin([
'id' => 'form_foot',
'action' => '/',
'enableClientValidation' => false,
'options' => [
'class' => 'footer_form bids-form',
'data-title' => 'Рассчитать проект',
'data-form' => 'Рассчитать проект',
'enctype' => 'multipart/form-data',
'data-tag' => Bid::TAG_TREATMENT
],
]); ?>
......@@ -65,21 +71,21 @@ use common\modules\bids\models\Bid;
'class' => 'footer_form__textarea'
])->label(false); ?>
<div class="file-upload_block">
<div class="file-upload_block dropzone" id="block_upload">
<div class="file_upload_bt">
<div class="file-upload">
<label>
<?php echo $form->field($model, 'file', [
<?php/* echo $form->field($model, 'file', [
'template' => '<div class="row"><div class="col-sm-4">{input}</div></div>'
])->fileInput(); ?>
])->fileInput();*/ ?>
<span>Выбрать файл</span>
</label>
</div>
<input type="text" id="filename" class="filename" disabled>
<!--<input type="text" id="filename" class="filename" disabled>-->
<div class="file_drop">Перетащите файл в данную область<br/> или выберите файл с компьютера</div>
</div>
</div>
<input type="hidden" name="file_name" id='file_name' value=""/>
<?php echo Html::submitButton('Рассчитать проект', ['class' => 'btn-default save-button']); ?>
<?php ActiveForm::end(); ?>
......
......@@ -4,6 +4,10 @@ use yii\helpers\Html;
use \common\models\Settings;
use \common\modules\bids\models\Bid;
use frontend\assets\FileUploadBundle;
FileUploadBundle::register($this);
?>
<script type="text/javascript">
......@@ -121,21 +125,22 @@ use \common\modules\bids\models\Bid;
'class' => 'sect_cont_form__textarea'
])->label(false); ?>
<div class="file-upload_block_cs">
<div class="file-upload_block_cs dropzone" id="block_upload">
<div class="file_upload_bt_cs">
<div class="file-upload_cs">
<label>
<?php echo $form->field($model, 'file', [
<?php /*echo $form->field($model, 'file', [
'template' => '<div class="row"><div class="col-sm-4">{input}</div></div>'
])->fileInput(); ?>
])->fileInput(); */?>
<span>Выбрать файл</span>
</label>
</div>
<input type="text" id="filename" class="filename_cs" disabled>
<!--<input type="text" id="filename" class="filename_cs" disabled>-->
<div class="file_drop_cs">Перетащите файл в данную область<br/> или выберите файл с компьютера</div>
</div>
</div>
<input type="hidden" name="file_name" id='file_name' value=""/>
<?php echo Html::submitButton('Отправить', ['class' => 'btn-default save-button']); ?>
<?php ActiveForm::end(); ?>
......
This diff is collapsed.
This diff is collapsed.
$(document).ready(function() {
// Dropzone class:
// var myDropzone = new Dropzone("div#block_upload", {url: "/bids/bid/upload-files", maxFiles: 1});
Dropzone.options.blockUpload = {
url: "/bids/bid/upload-files",
maxFiles: 1,
addRemoveLinks: true,
dictRemoveFile: 'Удалить',
/*accept: function(file, done) {
$('#file_name').val(file.name);
done();
},*/
success: function(first,response) {
$('#file_name').val(response);
}
};
});
\ No newline at end of file
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