Commit 143c55a9e4858fe8a639e66353b72110b33a2ae5

Authored by Yarik
1 parent e10587b1

Namespaces

FileUploadAsset.php
1 1 <?php
2   -/**
3   - * @link http://www.yiiframework.com/
4   - * @copyright Copyright (c) 2008 Yii Software LLC
5   - * @license http://www.yiiframework.com/license/
6   - */
7   -
8   -
9   -namespace artweb\artbox\file;
10   -
11   -use yii\helpers\Url;
12   -use yii\web\AssetBundle;
13   -
14   -/**
15   - * Asset bundle for the Twitter bootstrap javascript files.
16   - *
17   - * @author Qiang Xue <qiang.xue@gmail.com>
18   - * @since 2.0
19   - */
20   -class FileUploadAsset extends AssetBundle
21   -{
22   -
23   -
24 2 /**
25   - * @inheritdoc
  3 + * @link http://www.yiiframework.com/
  4 + * @copyright Copyright (c) 2008 Yii Software LLC
  5 + * @license http://www.yiiframework.com/license/
26 6 */
27   - public function init()
  7 +
  8 + namespace artweb\artbox\file;
  9 +
  10 + use yii\web\AssetBundle;
  11 +
  12 + /**
  13 + * Asset bundle for the Twitter bootstrap javascript files.
  14 + *
  15 + * @author Qiang Xue <qiang.xue@gmail.com>
  16 + * @since 2.0
  17 + */
  18 + class FileUploadAsset extends AssetBundle
28 19 {
29   - parent::init();
30   - $this->sourcePath = __DIR__.'/assets';
  20 +
  21 + /**
  22 + * @inheritdoc
  23 + */
  24 + public function init()
  25 + {
  26 + parent::init();
  27 + $this->sourcePath = __DIR__ . '/assets';
  28 + }
  29 +
  30 + public $css = [
  31 + 'css/jquery.fileupload.css',
  32 + 'css/fileupload/style.css',
  33 + ];
  34 +
  35 + public $js = [
  36 + 'js/vendor/jquery.ui.widget.js',
  37 + 'js/jquery.iframe-transport.js',
  38 + 'js/jquery.fileupload.js',
  39 + ];
31 40 }
32   -
33   - public $css = [
34   - 'css/jquery.fileupload.css',
35   - 'css/fileupload/style.css'
36   - ];
37   -
38   - public $js = [
39   - 'js/vendor/jquery.ui.widget.js',
40   - 'js/jquery.iframe-transport.js',
41   - 'js/jquery.fileupload.js'
42   - ];
43   -}
... ...
Module.php
1 1 <?php
2   -namespace artweb\artbox\file;
3   -
4   -use yii\base\BootstrapInterface;
5   -
6   -class Module extends \yii\base\Module
7   -{
8   - public function init()
9   - {
10   - parent::init();
11   -
12   - \Yii::configure($this, require(__DIR__.'/config.php'));
13   - }
14   -
15   -}
  2 + namespace artweb\artbox\file;
  3 +
  4 + class Module extends \yii\base\Module
  5 + {
  6 + public function init()
  7 + {
  8 + parent::init();
  9 +
  10 + \Yii::configure($this, require( __DIR__ . '/config.php' ));
  11 + }
  12 +
  13 + }
... ...
composer.json
... ... @@ -5,7 +5,9 @@
5 5 "require": {
6 6 "php": ">=7.0",
7 7 "yiisoft/yii2": "*",
8   - "developeruz/yii2-db-rbac": "*"
  8 + "developeruz/yii2-db-rbac": "*",
  9 + "artweb/artbox": "dev-master",
  10 + "artweb/artbox/language": "dev-master"
9 11 },
10 12 "autoload": {
11 13 "psr-4": {
... ...
controllers/UploaderController.php
1 1 <?php
2   -/**
3   - * Created by PhpStorm.
4   - * User: Cibermag
5   - * Date: 31.08.2015
6   - * Time: 9:58
7   - */
8   -namespace artweb\artbox\file\controllers;
9   -use Yii;
10   -use yii\helpers\ArrayHelper;
11   -use yii\web\UploadedFile;
12   -use artweb\artbox\file\models\ImageSizerForm;
13   -use yii\web\Controller;
14   -use Imagine\Gd\Imagine;
15   -use Imagine\Image\Box;
16   -use yii\imagine\Image;
17   -
18   -class UploaderController extends Controller {
19   -
20   - public $enableCsrfValidation = false;
21   -
22   - public function isBigger($width,$height,$w,$h)
  2 + /**
  3 + * Created by PhpStorm.
  4 + * User: Cibermag
  5 + * Date: 31.08.2015
  6 + * Time: 9:58
  7 + */
  8 + namespace artweb\artbox\file\controllers;
  9 +
  10 + use Yii;
  11 + use yii\helpers\ArrayHelper;
  12 + use yii\web\UploadedFile;
  13 + use artweb\artbox\file\models\ImageSizerForm;
  14 + use yii\web\Controller;
  15 + use Imagine\Gd\Imagine;
  16 + use Imagine\Image\Box;
  17 + use yii\imagine\Image;
  18 +
  19 + class UploaderController extends Controller
23 20 {
24   - if($width>$w){
25   - return true;
26   - }else if($height >$h) {
27   - return true;
  21 +
  22 + public $enableCsrfValidation = false;
  23 +
  24 + public function isBigger($width, $height, $w, $h)
  25 + {
  26 + if ($width > $w) {
  27 + return true;
  28 + } else if ($height > $h) {
  29 + return true;
  30 + }
  31 + return false;
28 32 }
29   - return false;
30   - }
31   -
32   -
33   - private function getUserPath(){
34   - if(isset(Yii::$app->user->id)){
35   - return 'user_'.Yii::$app->user->id;
36   - }else {
37   - return 'guest';
  33 +
  34 + private function getUserPath()
  35 + {
  36 + if (isset( Yii::$app->user->id )) {
  37 + return 'user_' . Yii::$app->user->id;
  38 + } else {
  39 + return 'guest';
  40 + }
38 41 }
39   - }
40   -
41   - private function resizeImg($w, $h, $imageAlias,$imageAliasSave){
42   - $img = Image::getImagine()->open(Yii::getAlias($imageAlias));
43   -
44   - $size = $img->getSize();
45   -
46   - $width = $size->getWidth();
47   - $height = $size->getHeight();
48   -
49   - $e_width = $w/$h;
50   - $e_height = $h/$w;
51   -
52   - $e1_width = $width/$height;
53   - $e1_height = $height/$width;
54   -
55   -
56   -
57   - if($e_width<$e1_width){
58   -
59   - $new_width = $width*($e_width/$e1_width);
60   -
  42 +
  43 + private function resizeImg($w, $h, $imageAlias, $imageAliasSave)
  44 + {
  45 + $img = Image::getImagine()
  46 + ->open(Yii::getAlias($imageAlias));
  47 +
  48 + $size = $img->getSize();
  49 +
  50 + $width = $size->getWidth();
  51 + $height = $size->getHeight();
  52 +
  53 + $e_width = $w / $h;
  54 + $e_height = $h / $w;
  55 +
  56 + $e1_width = $width / $height;
  57 + $e1_height = $height / $width;
  58 +
  59 + if ($e_width < $e1_width) {
  60 +
  61 + $new_width = $width * ( $e_width / $e1_width );
  62 +
61 63 $y = 0;
62   - $x = $width/ 2-($new_width/2);
  64 + $x = $width / 2 - ( $new_width / 2 );
63 65 $width = $new_width;
64   -
65   - }else {
66   -
67   - $new_height = $height*($e_height/$e1_height);
  66 +
  67 + } else {
  68 +
  69 + $new_height = $height * ( $e_height / $e1_height );
68 70 $x = 0;
69   - $y = $height/2-($new_height/2);
  71 + $y = $height / 2 - ( $new_height / 2 );
70 72 $height = $new_height;
71 73 }
72   -
73   -
74   -
75   -
76   - Image::crop($imageAlias, $width, $height,[$x,$y])
77   - ->save(Yii::getAlias($imageAliasSave), ['quality' =>
78   - 100]);
79   -
80   -
81   - $imagine = new Imagine();
82   - $imagine->open($imageAliasSave)
83   - ->resize(new Box($w, $h))
84   - ->save($imageAliasSave, array('flatten' => false));
85   -
86   -
87   -
88   - }
89   -
90   - private function deleteImages($old_img){
91   -
92   - if(!empty($old_img) && file_exists($_SERVER['DOCUMENT_ROOT'].$old_img)){
93   -
94   - $rootDir = explode("/", $old_img);
95   -
96   - $row = $_SERVER['DOCUMENT_ROOT'].'/'.$rootDir[1].'/'.$rootDir[2].'/'.$rootDir[3].'/';
97   -
98   - $allFiles = scandir($row);
99   -
100   - $allFiles = array_slice($allFiles, 2);
101   -
102   - foreach($allFiles as $oldFile){
103   -
104   - unlink($row.$oldFile);
105   -
106   - }
107   -
  74 +
  75 + Image::crop(
  76 + $imageAlias,
  77 + $width,
  78 + $height,
  79 + [
  80 + $x,
  81 + $y,
  82 + ]
  83 + )
  84 + ->save(
  85 + Yii::getAlias($imageAliasSave),
  86 + [
  87 + 'quality' => 100,
  88 + ]
  89 + );
  90 +
  91 + $imagine = new Imagine();
  92 + $imagine->open($imageAliasSave)
  93 + ->resize(new Box($w, $h))
  94 + ->save($imageAliasSave, [ 'flatten' => false ]);
  95 +
108 96 }
109   - }
110   -
111   - public function actionDeleteImage(){
112   -
113   - $this->enableCsrfValidation = false;
114   -
115   - $request = Yii::$app->request->post();
116   -
117   - if($request){
118   - if ($request['old_img']) {
119   - $this->deleteImages($request['old_img']);
120   - }
121   - if(isset($request['action']) && $request['action']=='save'){
122   - $object = str_replace('-', '\\',$request['model']);
123   - $model = new $object;
124   - $model = $model->findOne($request['id']);
125   - $model->$request['field'] = $request['new_url'];
126   - $model->save();
  97 +
  98 + private function deleteImages($old_img)
  99 + {
  100 +
  101 + if (!empty( $old_img ) && file_exists($_SERVER[ 'DOCUMENT_ROOT' ] . $old_img)) {
  102 +
  103 + $rootDir = explode("/", $old_img);
  104 +
  105 + $row = $_SERVER[ 'DOCUMENT_ROOT' ] . '/' . $rootDir[ 1 ] . '/' . $rootDir[ 2 ] . '/' . $rootDir[ 3 ] . '/';
  106 +
  107 + $allFiles = scandir($row);
  108 +
  109 + $allFiles = array_slice($allFiles, 2);
  110 +
  111 + foreach ($allFiles as $oldFile) {
  112 +
  113 + unlink($row . $oldFile);
  114 +
  115 + }
  116 +
127 117 }
128 118 }
129   -
130   - }
131   -
132   -
133   - public function actionDownloadPhoto()
134   - {
135   -
136   - $model = new ImageSizerForm();
137   -
138   - $request = Yii::$app->request->post();
139   -
140   - if ($request) {
141   -
142   - $model->multi = isset($request['multi'])? 1 : 0;
143   -
144   - $model->file = UploadedFile::getInstance($model, 'file');
145   -
146   - $md5_file = md5_file($model->file->tempName).rand(1, 1000);
147   -
148   - $imgDir = Yii::getAlias('@storage/'.$this->getUserPath().'/'.$md5_file.'/');
149   -
150   - $imageOrigAlias = Yii::getAlias($imgDir.'original'.'.'.$model->file->extension);
151   -
152   - if(!is_dir($imgDir)) {
153   - mkdir($imgDir, 0755, true);
  119 +
  120 + public function actionDeleteImage()
  121 + {
  122 +
  123 + $this->enableCsrfValidation = false;
  124 +
  125 + $request = Yii::$app->request->post();
  126 +
  127 + if ($request) {
  128 + if ($request[ 'old_img' ]) {
  129 + $this->deleteImages($request[ 'old_img' ]);
  130 + }
  131 + if (isset( $request[ 'action' ] ) && $request[ 'action' ] == 'save') {
  132 + $object = str_replace('-', '\\', $request[ 'model' ]);
  133 + $model = new $object;
  134 + $model = $model->findOne($request[ 'id' ]);
  135 + $model->$request[ 'field' ] = $request[ 'new_url' ];
  136 + $model->save();
  137 + }
154 138 }
155   -
156   - $model->file->saveAs($imageOrigAlias);
157   -
158   -
159   - if(isset($request['size'] )){
160   -
161   - $request['size'] = ArrayHelper::toArray(json_decode($request['size']));
162   -
163   - foreach($request['size'] as $size){
164   - if($size['width'] && $size['height']){
165   -
166   - $imageAlias = Yii::getAlias($imgDir.$size['width'].'x'.$size['height'].'.'.$model->file->extension);
167   -
168   - $imageLink = '/storage/'.$this->getUserPath().'/'.$md5_file.'/'.$size['width'].'x'.$size['height'].'.'.$model->file->extension;
169   -
170   - $this->resizeImg($size['width'], $size['height'], $imageOrigAlias,$imageAlias);
171   -
  139 +
  140 + }
  141 +
  142 + public function actionDownloadPhoto()
  143 + {
  144 +
  145 + $model = new ImageSizerForm();
  146 +
  147 + $request = Yii::$app->request->post();
  148 +
  149 + if ($request) {
  150 +
  151 + $model->multi = isset( $request[ 'multi' ] ) ? 1 : 0;
  152 +
  153 + $model->file = UploadedFile::getInstance($model, 'file');
  154 +
  155 + $md5_file = md5_file($model->file->tempName) . rand(1, 1000);
  156 +
  157 + $imgDir = Yii::getAlias('@storage/' . $this->getUserPath() . '/' . $md5_file . '/');
  158 +
  159 + $imageOrigAlias = Yii::getAlias($imgDir . 'original' . '.' . $model->file->extension);
  160 +
  161 + if (!is_dir($imgDir)) {
  162 + mkdir($imgDir, 0755, true);
  163 + }
  164 +
  165 + $model->file->saveAs($imageOrigAlias);
  166 +
  167 + if (isset( $request[ 'size' ] )) {
  168 +
  169 + $request[ 'size' ] = ArrayHelper::toArray(json_decode($request[ 'size' ]));
  170 +
  171 + foreach ($request[ 'size' ] as $size) {
  172 + if ($size[ 'width' ] && $size[ 'height' ]) {
  173 +
  174 + $imageAlias = Yii::getAlias(
  175 + $imgDir . $size[ 'width' ] . 'x' . $size[ 'height' ] . '.' . $model->file->extension
  176 + );
  177 +
  178 + $imageLink = '/storage/' . $this->getUserPath(
  179 + ) . '/' . $md5_file . '/' . $size[ 'width' ] . 'x' . $size[ 'height' ] . '.' . $model->file->extension;
  180 +
  181 + $this->resizeImg($size[ 'width' ], $size[ 'height' ], $imageOrigAlias, $imageAlias);
  182 +
  183 + }
172 184 }
  185 +
  186 + } else {
  187 +
  188 + $imageLink = '/storage/' . $this->getUserPath(
  189 + ) . '/' . $md5_file . '/' . 'original' . '.' . $model->file->extension;
  190 +
173 191 }
174   -
175   - } else {
176   -
177   - $imageLink = '/storage/'.$this->getUserPath().'/'.$md5_file.'/'.'original'.'.'.$model->file->extension;
178   -
179   - }
180   -
181   -
182   - if($model->multi){
183   - $view = $this->renderPartial('/_gallery_item', [
184   - 'item' => ['image'=>$imageLink],
185   - 'field'=>$request['field']
186   - ]);
187   - return json_encode(['link'=>$imageLink,
188   - 'view' =>$view,
189   -
190   - ]);
191   -
192   -
193   - } else {
194   - $view = $this->renderPartial('/_one_item', [
195   - 'item' => ['image'=>$imageLink],
196   - 'field'=>$request['field']
197   - ]);
198   - return json_encode(['link'=>$imageLink,
199   - 'view' =>$view,
200   - ]);
  192 +
  193 + if ($model->multi) {
  194 + $view = $this->renderPartial(
  195 + '/_gallery_item',
  196 + [
  197 + 'item' => [ 'image' => $imageLink ],
  198 + 'field' => $request[ 'field' ],
  199 + ]
  200 + );
  201 + return json_encode(
  202 + [
  203 + 'link' => $imageLink,
  204 + 'view' => $view,
  205 +
  206 + ]
  207 + );
  208 +
  209 + } else {
  210 + $view = $this->renderPartial(
  211 + '/_one_item',
  212 + [
  213 + 'item' => [ 'image' => $imageLink ],
  214 + 'field' => $request[ 'field' ],
  215 + ]
  216 + );
  217 + return json_encode(
  218 + [
  219 + 'link' => $imageLink,
  220 + 'view' => $view,
  221 + ]
  222 + );
  223 + }
  224 +
201 225 }
202   -
203   -
204 226 }
205   - }
206   -
207   -
208   - public function getex($filename) {
209   - $array = explode(".", $filename);
210   - return array_pop($array);
211   - }
212   -
213   -
214   - public function actionImagesUpload(){
215   -
216   - if($_FILES['upload'])
  227 +
  228 + public function getex($filename)
217 229 {
218   - if (($_FILES['upload'] == "none") OR (empty($_FILES['upload']['name'])) )
219   - {
220   - $message = "ะ’ั‹ ะฝะต ะฒั‹ะฑั€ะฐะปะธ ั„ะฐะนะป";
221   - }
222   - else if ($_FILES['upload']["size"] == 0 OR $_FILES['upload']["size"] > 2050000)
223   - {
224   - $message = "ะ ะฐะทะผะตั€ ั„ะฐะนะปะฐ ะฝะต ัะพะพั‚ะฒะตั‚ัั‚ะฒัƒะตั‚ ะฝะพั€ะผะฐะผ";
225   - }
226   - else if (($_FILES['upload']["type"] != "image/jpeg") AND ($_FILES['upload']["type"] != "image/jpeg") AND ($_FILES['upload']["type"] != "image/png") AND ($_FILES['upload']['type'] != 'image/gif'))
227   - {
228   - $message = "ะ”ะพะฟัƒัะบะฐะตั‚ัั ะทะฐะณั€ัƒะทะบะฐ ั‚ะพะปัŒะบะพ ะบะฐั€ั‚ะธะฝะพะบ JPG ะธ PNG.";
229   - }
230   - else if (!is_uploaded_file($_FILES['upload']["tmp_name"]))
231   - {
232   - $message = "ะงั‚ะพ-ั‚ะพ ะฟะพัˆะปะพ ะฝะต ั‚ะฐะบ. ะŸะพะฟั‹ั‚ะฐะนั‚ะตััŒ ะทะฐะณั€ัƒะทะธั‚ัŒ ั„ะฐะนะป ะตั‰ั‘ ั€ะฐะท.";
233   - }
234   - else{
235   - $filename = $_FILES['upload']['name'];
236   - $name =$_FILES['upload']['name'].'.'.$this->getex($filename);
237   -
238   - $path = "../../storage/".$this->getUserPath()."/images/";
239   - if(!is_dir($path)) {
240   - mkdir($path, 0755, true);
  230 + $array = explode(".", $filename);
  231 + return array_pop($array);
  232 + }
  233 +
  234 + public function actionImagesUpload()
  235 + {
  236 +
  237 + if ($_FILES[ 'upload' ]) {
  238 + if (( $_FILES[ 'upload' ] == "none" ) OR ( empty( $_FILES[ 'upload' ][ 'name' ] ) )) {
  239 + $message = "ะ’ั‹ ะฝะต ะฒั‹ะฑั€ะฐะปะธ ั„ะฐะนะป";
  240 + } else if ($_FILES[ 'upload' ][ "size" ] == 0 OR $_FILES[ 'upload' ][ "size" ] > 2050000) {
  241 + $message = "ะ ะฐะทะผะตั€ ั„ะฐะนะปะฐ ะฝะต ัะพะพั‚ะฒะตั‚ัั‚ะฒัƒะตั‚ ะฝะพั€ะผะฐะผ";
  242 + } else if (( $_FILES[ 'upload' ][ "type" ] != "image/jpeg" ) AND ( $_FILES[ 'upload' ][ "type" ] != "image/jpeg" ) AND ( $_FILES[ 'upload' ][ "type" ] != "image/png" ) AND ( $_FILES[ 'upload' ][ 'type' ] != 'image/gif' )) {
  243 + $message = "ะ”ะพะฟัƒัะบะฐะตั‚ัั ะทะฐะณั€ัƒะทะบะฐ ั‚ะพะปัŒะบะพ ะบะฐั€ั‚ะธะฝะพะบ JPG ะธ PNG.";
  244 + } else if (!is_uploaded_file($_FILES[ 'upload' ][ "tmp_name" ])) {
  245 + $message = "ะงั‚ะพ-ั‚ะพ ะฟะพัˆะปะพ ะฝะต ั‚ะฐะบ. ะŸะพะฟั‹ั‚ะฐะนั‚ะตััŒ ะทะฐะณั€ัƒะทะธั‚ัŒ ั„ะฐะนะป ะตั‰ั‘ ั€ะฐะท.";
  246 + } else {
  247 + $filename = $_FILES[ 'upload' ][ 'name' ];
  248 + $name = $_FILES[ 'upload' ][ 'name' ] . '.' . $this->getex($filename);
  249 +
  250 + $path = "../../storage/" . $this->getUserPath() . "/images/";
  251 + if (!is_dir($path)) {
  252 + mkdir($path, 0755, true);
  253 + }
  254 +
  255 + move_uploaded_file($_FILES[ 'upload' ][ 'tmp_name' ], $path . $name);
  256 +
  257 + $full_path = '/storage/' . $this->getUserPath() . '/images/' . $name;
  258 +
  259 + $message = "ะคะฐะนะป " . $_FILES[ 'upload' ][ 'name' ] . " ะทะฐะณั€ัƒะถะตะฝ";
  260 +
241 261 }
242   -
243   -
244   -
245   - move_uploaded_file($_FILES['upload']['tmp_name'], $path.$name);
246   -
247   - $full_path = '/storage/'.$this->getUserPath().'/images/'.$name;
248   -
249   - $message = "ะคะฐะนะป ".$_FILES['upload']['name']." ะทะฐะณั€ัƒะถะตะฝ";
250   -
251   -
  262 + $callback = $_REQUEST[ 'CKEditorFuncNum' ];
  263 + echo '<script type="text/javascript">window.parent.CKEDITOR.tools.callFunction("' . $callback . '", "' . $full_path . '", "' . $message . '" );</script>';
252 264 }
253   - $callback = $_REQUEST['CKEditorFuncNum'];
254   - echo '<script type="text/javascript">window.parent.CKEDITOR.tools.callFunction("'.$callback.'", "'.$full_path.'", "'.$message.'" );</script>';
255 265 }
256   - }
257   -
258   -
259   -}
260 266 \ No newline at end of file
  267 +
  268 + }
261 269 \ No newline at end of file
... ...
models/ImageSizerForm.php
1 1 <?php
2   -namespace artweb\artbox\file\models;
3   -
4   -use yii\base\Model;
5   -use yii\web\UploadedFile;
6   -
7   -/**
8   - * UploadForm is the model behind the upload form.
9   - */
10   -class ImageSizerForm extends Model
11   -{
  2 + namespace artweb\artbox\file\models;
  3 +
  4 + use yii\base\Model;
  5 + use yii\web\UploadedFile;
  6 +
12 7 /**
13   - * @var UploadedFile file attribute
  8 + * UploadForm is the model behind the upload form.
14 9 */
15   - public $file;
16   - public $width;
17   - public $height;
18   - public $field;
19   - public $model;
20   - public $form;
21   - public $multi;
22   - public $old_img;
23   - public $img;
24   - public $price_list;
25   -
26   - /**
27   - * @return array the validation rules.
28   - */
29   - public function rules()
  10 + class ImageSizerForm extends Model
30 11 {
31   - return [
32   - [['width', 'height', 'multi'], 'integer'],
33   - [['field', 'multi','old_img'], 'string', 'max' => 255],
34   - [['model', 'form',], 'string'],
35   - [['file','img','price_list'], 'file'],
36   - ];
37   - }
38   -}
39 12 \ No newline at end of file
  13 + /**
  14 + * @var UploadedFile file attribute
  15 + */
  16 + public $file;
  17 + public $width;
  18 + public $height;
  19 + public $field;
  20 + public $model;
  21 + public $form;
  22 + public $multi;
  23 + public $old_img;
  24 + public $img;
  25 + public $price_list;
  26 +
  27 + /**
  28 + * @return array the validation rules.
  29 + */
  30 + public function rules()
  31 + {
  32 + return [
  33 + [
  34 + [
  35 + 'width',
  36 + 'height',
  37 + 'multi',
  38 + ],
  39 + 'integer',
  40 + ],
  41 + [
  42 + [
  43 + 'field',
  44 + 'multi',
  45 + 'old_img',
  46 + ],
  47 + 'string',
  48 + 'max' => 255,
  49 + ],
  50 + [
  51 + [
  52 + 'model',
  53 + 'form',
  54 + ],
  55 + 'string',
  56 + ],
  57 + [
  58 + [
  59 + 'file',
  60 + 'img',
  61 + 'price_list',
  62 + ],
  63 + 'file',
  64 + ],
  65 + ];
  66 + }
  67 + }
40 68 \ No newline at end of file
... ...
widgets/ImageUploader.php
1 1 <?php
2   -/**
3   - * Created by PhpStorm.
4   - * User: vitaliy
5   - * Date: 05.10.15
6   - * Time: 16:18
7   - */
8   -
9   -namespace artweb\artbox\file\widgets;
10   -use yii\base\Widget;
11   -
12   -
13   -class ImageUploader extends Widget
14   -{
15   - public $height = 0;
16   - public $width = 0;
17   - public $field;
18   - public $file;
19   - public $model;
20   - public $multi = false;
21   - public $gallery;
22   - public $size;
23   - public $name = 'Add file...';
24   - public $remover = 0;
25   -
26   - public function init(){
27   -
28   - parent::init();
29   -
30   - }
31   -
32   -
33   - public function run()
  2 + /**
  3 + * Created by PhpStorm.
  4 + * User: vitaliy
  5 + * Date: 05.10.15
  6 + * Time: 16:18
  7 + */
  8 +
  9 + namespace artweb\artbox\file\widgets;
  10 +
  11 + use yii\base\Widget;
  12 +
  13 + class ImageUploader extends Widget
34 14 {
35   -
36   - return $this->render('image_sizer',
37   - [
38   - 'model'=>$this->model,
39   - 'size' => $this->size,
40   - 'field' => $this->field,
41   - 'height' => $this->height,
42   - 'width' => $this->width,
43   - 'multi' => $this->multi,
44   - 'name' => $this->name,
45   - 'remover' => $this->remover
46   - ]);
47   -
48   - }
49   -
50   - public function getGallery(){
51   - if($this->gallery){
52   - $array = explode(",", $this->gallery);
53   - if(count($array) > 1){
54   - array_pop($array);
  15 + public $height = 0;
  16 + public $width = 0;
  17 + public $field;
  18 + public $file;
  19 + public $model;
  20 + public $multi = false;
  21 + public $gallery;
  22 + public $size;
  23 + public $name = 'Add file...';
  24 + public $remover = 0;
  25 +
  26 + public function init()
  27 + {
  28 +
  29 + parent::init();
  30 +
  31 + }
  32 +
  33 + public function run()
  34 + {
  35 +
  36 + return $this->render(
  37 + 'image_sizer',
  38 + [
  39 + 'model' => $this->model,
  40 + 'size' => $this->size,
  41 + 'field' => $this->field,
  42 + 'height' => $this->height,
  43 + 'width' => $this->width,
  44 + 'multi' => $this->multi,
  45 + 'name' => $this->name,
  46 + 'remover' => $this->remover,
  47 + ]
  48 + );
  49 +
  50 + }
  51 +
  52 + public function getGallery()
  53 + {
  54 + if ($this->gallery) {
  55 + $array = explode(",", $this->gallery);
  56 + if (count($array) > 1) {
  57 + array_pop($array);
  58 + }
  59 + return $array;
  60 + } else {
  61 + return [];
55 62 }
56   - return $array;
57   - } else {
58   - return array();
  63 +
59 64 }
60   -
61   - }
62   -
63   -}
64 65 \ No newline at end of file
  66 +
  67 + }
65 68 \ No newline at end of file
... ...