Commit d3e38cf815450beb3ed75c26dee133d6449ab8b4
1 parent
bfa22e8e
Adding transliteration
Showing
3 changed files
with
49 additions
and
3 deletions
Show diff stats
1 | +<?php | |
2 | +/** | |
3 | + * Created by PhpStorm. | |
4 | + * User: denys | |
5 | + * Date: 29.10.15 | |
6 | + * Time: 11:35 | |
7 | + */ | |
8 | + | |
9 | +namespace backend\components; | |
10 | + | |
11 | + | |
12 | +class Helper | |
13 | +{ | |
14 | + | |
15 | + public static function transliterate($str) { | |
16 | + $converter = array( | |
17 | + 'а' => 'a', 'б' => 'b', 'в' => 'v', | |
18 | + 'г' => 'g', 'д' => 'd', 'е' => 'e', | |
19 | + 'ё' => 'e', 'ж' => 'zh', 'з' => 'z', | |
20 | + 'и' => 'i', 'й' => 'y', 'к' => 'k', | |
21 | + 'л' => 'l', 'м' => 'm', 'н' => 'n', | |
22 | + 'о' => 'o', 'п' => 'p', 'р' => 'r', | |
23 | + 'с' => 's', 'т' => 't', 'у' => 'u', | |
24 | + 'ф' => 'f', 'х' => 'h', 'ц' => 'c', | |
25 | + 'ч' => 'ch', 'ш' => 'sh', 'щ' => 'sch', | |
26 | + 'ь' => '\'', 'ы' => 'y', 'ъ' => '\'', | |
27 | + 'э' => 'e', 'ю' => 'yu', 'я' => 'ya', | |
28 | + | |
29 | + 'А' => 'A', 'Б' => 'B', 'В' => 'V', | |
30 | + 'Г' => 'G', 'Д' => 'D', 'Е' => 'E', | |
31 | + 'Ё' => 'E', 'Ж' => 'Zh', 'З' => 'Z', | |
32 | + 'И' => 'I', 'Й' => 'Y', 'К' => 'K', | |
33 | + 'Л' => 'L', 'М' => 'M', 'Н' => 'N', | |
34 | + 'О' => 'O', 'П' => 'P', 'Р' => 'R', | |
35 | + 'С' => 'S', 'Т' => 'T', 'У' => 'U', | |
36 | + 'Ф' => 'F', 'Х' => 'H', 'Ц' => 'C', | |
37 | + 'Ч' => 'Ch', 'Ш' => 'Sh', 'Щ' => 'Sch', | |
38 | + 'Ь' => '\'', 'Ы' => 'Y', 'Ъ' => '\'', | |
39 | + 'Э' => 'E', 'Ю' => 'Yu', 'Я' => 'Ya', | |
40 | + ); | |
41 | + return strtr($str, $converter); | |
42 | + } | |
43 | +} | |
0 | 44 | \ No newline at end of file | ... | ... |
backend/controllers/ImageController.php
... | ... | @@ -5,6 +5,7 @@ namespace backend\controllers; |
5 | 5 | use backend\components\croppers\CropContext; |
6 | 6 | use backend\components\croppers\CropFactory; |
7 | 7 | |
8 | +use backend\components\Helper; | |
8 | 9 | use Yii; |
9 | 10 | use yii\helpers\FileHelper; |
10 | 11 | use yii\helpers\StringHelper; |
... | ... | @@ -31,12 +32,13 @@ class ImageController extends Controller |
31 | 32 | $cropContext = new CropContext($cropFactory->getCrop($crop_id)); |
32 | 33 | |
33 | 34 | foreach($model->imageFiles as $file) { |
34 | - $path = dirname(dirname(__DIR__)) . '/uploads/' . $file->baseName . '.' . $file->extension; | |
35 | + $baseName = Helper::transliterate($file->baseName); | |
36 | + $path = dirname(dirname(__DIR__)) . '/uploads/' . $baseName . '.' . $file->extension; | |
35 | 37 | $image = Yii::$app->imagine->open($path); |
36 | 38 | $image = $cropContext->cropImage($image, $path); |
37 | 39 | $box = $image->getSize()->heighten($minHeight); |
38 | 40 | $image->resize($box) |
39 | - ->save(dirname(dirname(__DIR__)) . '/uploads/' . $file->baseName . '-resized' . '.' . $file->extension); | |
41 | + ->save(dirname(dirname(__DIR__)) . '/uploads/' . $baseName . '-resized' . '.' . $file->extension); | |
40 | 42 | } |
41 | 43 | } |
42 | 44 | return $this->render('index', ['model' => $model, 'ukrSeeds' => $ukrSeeds]); | ... | ... |
backend/models/UploadForm.php
1 | 1 | <?php |
2 | 2 | namespace backend\models; |
3 | 3 | |
4 | +use backend\components\Helper; | |
4 | 5 | use yii\base\Model; |
5 | 6 | use yii\web\UploadedFile; |
6 | 7 | |
... | ... | @@ -20,7 +21,7 @@ class UploadForm extends Model |
20 | 21 | { |
21 | 22 | if ($this->validate()) { |
22 | 23 | foreach($this->imageFiles as $file) { |
23 | - $path = dirname(dirname(__DIR__)) . '/uploads/' . $file->baseName . '.' . $file->extension; | |
24 | + $path = dirname(dirname(__DIR__)) . '/uploads/' . Helper::transliterate($file->baseName) . '.' . $file->extension; | |
24 | 25 | $file->saveAs($path); |
25 | 26 | } |
26 | 27 | return true; | ... | ... |