These are chat archives for LaravelRUS/chat

21st
Nov 2015
WmA
@akis94
Nov 21 2015 05:52
@dmitry1337 http://sql-ex.ru
Vladislav Balabanovich
@vladbesson
Nov 21 2015 07:38
Не могу разобраться – запускаю команду php artisan queue:work, пишет ошибку – View [email.feeadback] not found. – я в названии шаблона допустил ошибку, ипсравил – а он заладил и все ранво эту же обшибку выдает, как исправить?
Orel
@2byte
Nov 21 2015 07:43
@vladbesson а перезапускал queue:work?
Vladislav Balabanovich
@vladbesson
Nov 21 2015 07:43
@2byte это как? я просто раз за разом запускаю php artisan queue:work
и он одну и ту же ошибку
выдает
Vladislav Balabanovich
@vladbesson
Nov 21 2015 07:58
php artisan queue:restart не помогло
Vladislav Balabanovich
@vladbesson
Nov 21 2015 08:15
решил
Ivan
@Hunternnm
Nov 21 2015 08:37
Всем привет! Бод, здаров!
KarmaBot
@KarmaBot
Nov 21 2015 08:37
@Hunternnm, здравствуй.
Ivan
@Hunternnm
Nov 21 2015 08:37
Ребят, кто мультиязычные сайты на ларе делал?
Пакет какой-то нужен? Вроде как говорили...
Ekuzkamaza
@Ekuzkamaza
Nov 21 2015 09:00
Можно без пакетов зависит от задачи, есть тут https://laravel.ru/posts/31 один из вариантов.
Ivan
@Hunternnm
Nov 21 2015 09:14
Не, у меня, судя по всему, нужно что-то помощнее
@2byte @BaldaI @censoredgit @Butochnikov @unnamed75 @symbios-zi @Big-Shark ребят, не подскажете пакет для мультиязычного сайта?
Orel
@2byte
Nov 21 2015 09:20
@Hunternnm ну это же самому сделать не проблема, да и в ларе язычность присутствует
Orel
@2byte
Nov 21 2015 09:21
@Hunternnm Ага
Ivan
@Hunternnm
Nov 21 2015 09:22
Не хочется просто писать костыль или педаль, чтобы потом локти не кусать
Orel
@2byte
Nov 21 2015 09:28
@Hunternnm так не костыль
Ivan
@Hunternnm
Nov 21 2015 10:33
@symbios-zi @2byte @Ekuzkamaza спасибо!
KarmaBot
@KarmaBot
Nov 21 2015 10:33
Спасибо (+1) для @symbios-zi принято! Текущая карма +40.
Спасибо (+1) для @2byte принято! Текущая карма +64.
Спасибо (+1) для @Ekuzkamaza принято! Текущая карма +2.
Palchik
@palchik1985
Nov 21 2015 11:21

Есть консольная функция proceedUrl(), которая дергает другую функцию getWebPage (это GUZZLE парсер). Если страница не спарсилась, возвращается false и скрипт продолжает работу. Я хочу видеть не только false но и его причину.

$res = $webpage->getWebPage($url);
            if (empty($res)){
                $this->error('Page '.$i.' parser error');
                $i--;
                continue;
            }
_________________________________________
public function getWebPage($url, $referer = null)
    {
        try
        {
            $response= $this->client->get($url, [
                'headers' => [
                    'Referer' => ($referer) ? $referer : 'http://google.com.ua/',
                ]
            ]);
            return (string) $response->getBody();
        }
        catch(Exception $e)
        {
            //$this->error($e->getMessage()); // отлов ошибок парсера
            return false;
        }
    }

Если я во втором скрипте раскоментирую строку с показом ошибок, то скрипт на этом месте показывает в чем ошибка, и аварийно завершается (а нужно сделать чтоб продолжался)

Т.е. выходит, что мне нужно передать наверх из второго скрипта не только false но и какую-то ошибку. Как это сделать?
и чтоб эта ошибка выводилась вместо $this->error('Page '.$i.' parser error');
censoredgit
@censoredgit
Nov 21 2015 12:07
@palchik1985
public function getWebPage($url, $referer = null)
    {
           $response= $this->client->get($url, [
                'headers' => [
                    'Referer' => ($referer) ? $referer : 'http://google.com.ua/',
                ]
            ]);
            return (string) $response->getBody();
    }
Palchik
@palchik1985
Nov 21 2015 12:12
@censoredgit это не решает проблему, т.к getBody в случае если парсер не отработал вернет фатал ексепшен (обращение к несуществующему свойству объекта).
Сделал уже временное решение, передаю в кетч
return $e->getMessage();
А на выходе проверяю не на существование результата, а на то, строка он или объект. Строку вывожу (это и есть моя ошибка), если объект - парсится дальше как надо
Tony White
@tonyxx7
Nov 21 2015 14:40
Hey
Ivan
@Hunternnm
Nov 21 2015 14:55
Блин, всё равно не могу определиться как лучше локализацию делать... С пакетом https://github.com/mcamara/laravel-localization или http://laravel.com/docs/5.1/localization так... Пичаль-беда
Soprun Vladislav
@vlsoprun
Nov 21 2015 14:57
@Hunternnm Сочувствую ))
Ivan
@Hunternnm
Nov 21 2015 14:58
@vlsoprun на самописных костылях проще было) А тут красиво хочется сделать и правильно
http://laravel.com/docs/5.1/localization тут всё красиво, но переводы нужно в файлы вставлять... Для пользователя обычного может быть проблематично однако
Nick
@akavolkol
Nov 21 2015 15:01
@Hunternnm , можно же вардампом записать
Ivan
@Hunternnm
Nov 21 2015 15:03
@akavolkol о_О как? Я с ларой так, 50/50, был бы благодарен за линк. PS для меня var_dump - это только выводй на экран подробной информации о переменной/объекте
Nick
@akavolkol
Nov 21 2015 15:03
@Hunternnm , можно же вардампом записать, вернее var_export()
Ivan
@Hunternnm
Nov 21 2015 15:04
@akavolkol сейчас буду гуглить :)
Nick
@akavolkol
Nov 21 2015 15:04
@Hunternnm file_put_contents(ROOT.'/config/'.$type.'.php', '<?php return '.var_export($ready, true).';');
Ivan
@Hunternnm
Nov 21 2015 15:05
@akavolkol спасибо!
KarmaBot
@KarmaBot
Nov 21 2015 15:05
Спасибо (+1) для @akavolkol принято! Текущая карма +1.
Ivan Khromov
@ikhrome
Nov 21 2015 15:57
всем привет. проблемка нарисовалась
KarmaBot
@KarmaBot
Nov 21 2015 15:57
@ikhrome, и тебе привет ;)
Soprun Vladislav
@vlsoprun
Nov 21 2015 15:58
@ikhrome Привет, ну это ты зря ))
Ivan Khromov
@ikhrome
Nov 21 2015 15:58
@vlsoprun почему?)
Soprun Vladislav
@vlsoprun
Nov 21 2015 15:59
@ikhrome Проблемы с субботу могут быть только с закончившимся пивом ))
Ivan Khromov
@ikhrome
Nov 21 2015 15:59
я laravel изучаю, вот, понять не могу, почему ассеты для laravel-debugbar не копируются при vendor:install
@vlsoprun :smile:
он копирует только конфиг
Ivan
@Hunternnm
Nov 21 2015 16:00
@ikhrome ты в провайдеры вставил?
Ivan Khromov
@ikhrome
Nov 21 2015 16:00
@Hunternnm да, и в фасады тоже
Soprun Vladislav
@vlsoprun
Nov 21 2015 16:00
@ikhrome artisan vendor:publish может это тебе нужно?
Ivan Khromov
@ikhrome
Nov 21 2015 16:02
@vlsoprun сейчас попробую
@vlsoprun он по адресу _debugbar/assets/stylesheets?1448105319 обращается, но файла нет, и роута тоже
команду запустил, тоже самое
чет не втыкаю
Soprun Vladislav
@vlsoprun
Nov 21 2015 16:04
оО?!
У тебя проблема в том что не подключается css или же что не устанавливается дебагер?
Ivan Khromov
@ikhrome
Nov 21 2015 16:06
@vlsoprun css не копируется при vendor:publish, установился нормально
даже в разметке он есть
Soprun Vladislav
@vlsoprun
Nov 21 2015 16:08
а в artisan route:list есть
|        | GET|HEAD | _debugbar/assets/javascript      | debugbar.assets.js           | Barryvdh\Debugbar\Controllers\AssetController@js              |            |
|        | GET|HEAD | _debugbar/assets/stylesheets     | debugbar.assets.css          | Barryvdh\Debugbar\Controllers\AssetController@css             |            |
|        | GET|HEAD | _debugbar/clockwork/{id}         | debugbar.clockwork           | Barryvdh\Debugbar\Controllers\OpenHandlerController@clockwork |            |
|        | GET|HEAD | _debugbar/open                   | debugbar.openhandler         | Barryvdh\Debugbar\Controllers\OpenHandlerController@handle    |            |
Ivan Khromov
@ikhrome
Nov 21 2015 16:09
@vlsoprun о, почистил кэш конфигов, появились эти роуты о_0
но все равно 404
Orel2888
@Orel2888
Nov 21 2015 16:10
Привет всем
KarmaBot
@KarmaBot
Nov 21 2015 16:10
@Orel2888, привет, как настроение?
Orel2888
@Orel2888
Nov 21 2015 16:10
@KarmaBot Это бот?
Soprun Vladislav
@vlsoprun
Nov 21 2015 16:10
@Orel2888 привет, да
Orel2888
@Orel2888
Nov 21 2015 16:10
Круть
Soprun Vladislav
@vlsoprun
Nov 21 2015 16:12

@ikhrome vendor:publish - тыкается один раз для того что бы он принес тебе нужные файлы..
До этого ты должен был разместить привайдер и как бы все должно работать ))

Попробуй все переустановить еще раз.

Ivan Khromov
@ikhrome
Nov 21 2015 16:12
@vlsoprun ok, ща попробую))
Soprun Vladislav
@vlsoprun
Nov 21 2015 16:13
@ikhrome у тебя nginx ?
Ivan Khromov
@ikhrome
Nov 21 2015 16:13
@vlsoprun apache, windows 10 =)
но с правами все норм вроде
т.к. лежит проект в дом. папке
Soprun Vladislav
@vlsoprun
Nov 21 2015 16:14
@ikhrome в самом корне сайта должен быть .htaccess и все..
<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteRule ^(.*)$ public/$1 [L]
</IfModule>
Ivan Khromov
@ikhrome
Nov 21 2015 16:18
@vlsoprun css и js физически существующие он видит, я этот файл создавал
попробую кароче все заново, все равно там только сделанные по гайдам миграции
Soprun Vladislav
@vlsoprun
Nov 21 2015 16:19
@ikhrome А зачем ты его сам создавал?
@ikhrome css и js ты даже не должен был видеть ))
Ivan Khromov
@ikhrome
Nov 21 2015 16:21
@vlsoprun я правильно понял что это файл public/.htaccess?
Soprun Vladislav
@vlsoprun
Nov 21 2015 16:21
@ikhrome /.htaccess
@ikhrome в public/.htaccess другой файл
<IfModule mod_rewrite.c>
    <IfModule mod_negotiation.c>
        Options -MultiViews
    </IfModule>

    RewriteEngine On

    # Redirect Trailing Slashes If Not A Folder...
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(.*)/$ /$1 [L,R=301]

    # Handle Front Controller...
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^ index.php [L]
</IfModule>
Он стандартный и его не надо трогать, только корневой файл нужно создать и все.
Ivan Khromov
@ikhrome
Nov 21 2015 16:22
@vlsoprun тогда тот я делал для того, чтобы открывался хост по host.dev а не host.dev/public
Soprun Vladislav
@vlsoprun
Nov 21 2015 16:24

@ikhrome Смотри..
у тебя при установке есть public/.htaccess его не трогать!
Если ты его изменял можешь скопировать его код чуть выше.

Ты должен создать /.htaccess с содержанием

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteRule ^(.*)$ public/$1 [L]
</IfModule>
И все у тебя будет норм.. host.dev/public не будет
Ivan Khromov
@ikhrome
Nov 21 2015 16:25
@vlsoprun все, создал, отрабатывает норм, но все так же 404 по этим роутам
Soprun Vladislav
@vlsoprun
Nov 21 2015 16:25
в artisan route:list есть _debugbar/assets/javascript и т.д.?
Ivan Khromov
@ikhrome
Nov 21 2015 16:26
@vlsoprun да, после сброса конфига они там появились
но все равно 404
Soprun Vladislav
@vlsoprun
Nov 21 2015 16:26
host.dev/_debugbar/assets/javascript - 404?
Ivan Khromov
@ikhrome
Nov 21 2015 16:27
@vlsoprun да
Soprun Vladislav
@vlsoprun
Nov 21 2015 16:27
А 404 апача или лары?
Ivan Khromov
@ikhrome
Nov 21 2015 16:27
@vlsoprun он меня вообще щас редиректнул на /
что за магия o_0
Soprun Vladislav
@vlsoprun
Nov 21 2015 16:28
хз, пытаюсь разобраться ))
@ikhrome а config/debugbar.php есть файл?
Ivan Khromov
@ikhrome
Nov 21 2015 16:30
@vlsoprun да, и кстати, как по мануалу, поместил его после ларовских сервис провайдеров
щас на чисто попробую
composer еще на xdebug ругается
@vlsoprun вот, сейчас 404 апача
оу, про файл забыл((
Ivan Khromov
@ikhrome
Nov 21 2015 16:47
@vlsoprun спасибо за помощь, проблема была в том, что апач не догрузил mod_rewrite, хотя в конфиге он был прописан. а так как в .htaccess была проверка на его существование, ошибки 500 не было. не углядел. только не понимаю как он мог не загрузить его о_0
KarmaBot
@KarmaBot
Nov 21 2015 16:47
Спасибо (+1) для @vlsoprun принято! Текущая карма +49.
Ivan
@Hunternnm
Nov 21 2015 16:51
@ikhrome перезагрузи его 13 раз в виде наказания) чтобы знак как моды не подгружать
Ivan Khromov
@ikhrome
Nov 21 2015 16:55
@Hunternnm агась, ладно хоть не 666 раз :smile:
Ksarien
@ksarien
Nov 21 2015 17:02
народ, подскажите как вывести на ошибку 404 шаблон, по доке добавил в views/errors/404.blade.php но все равно выводится стандартная обработка с симфони, в конфиге стоит дебаг false
делаю abort(503) выводит шаблон 503.blade.php а на abort(404) не пашет ((
Ivan
@Hunternnm
Nov 21 2015 17:05
@ikhrome если честно - хотел написать 666, но пожалел твой апач)
Ivan Khromov
@ikhrome
Nov 21 2015 17:07
@Hunternnm =)
Vladislav Balabanovich
@vladbesson
Nov 21 2015 17:21
Подскажите в чем дело: запускаю команду php artisan queue:work – выдает ошибку [ErrorException] Missing argument 1 for App\Jobs\FacebookSearch::handle(), в логах посмотерл – ругается на вот эту строку public function handle($keywords) { но тут аргумент передается, в чем же проблема?
Orel2888
@Orel2888
Nov 21 2015 17:35
@vladbesson какой?
Vladislav Balabanovich
@vladbesson
Nov 21 2015 17:37
@Orel2888 $keywords
Orel2888
@Orel2888
Nov 21 2015 17:37
@vladbesson кто его туда вставляет?
Vladislav Balabanovich
@vladbesson
Nov 21 2015 17:39
@Orel2888 вот так я помещаю задачу в очередь – $this->dispatch(new FacebookSearch($keywords));
Orel2888
@Orel2888
Nov 21 2015 17:43
@vladbesson а в конструктор?
Vladislav Balabanovich
@vladbesson
Nov 21 2015 17:44
@Orel2888 не понял, что имеется в виду?
@Orel2888 это наверное -
public function __construct($keywords) { $this->keywords = $keywords; }
Roman
@fearrr
Nov 21 2015 17:47
Всем привет!
KarmaBot
@KarmaBot
Nov 21 2015 17:47
@fearrr, здравствуй.
Roman
@fearrr
Nov 21 2015 17:47
@KarmaBot hi
Кто-нибудь использует регулярку в валидациях??
Не хочет ни в какую работать..
preg_match(): No ending delimiter '^' found
Что-то нужно дополнительно экранировать?
Orel2888
@Orel2888
Nov 21 2015 18:06
@fearrr а полный код?
Roman
@fearrr
Nov 21 2015 18:07
@Orel2888 ,
  'phone'    => 'regex:^((8|\+7)[\- ]?)?(\(?\d{3}\)?[\- ]?)?[\d\- ]{7,10}$',
Ivan
@Hunternnm
Nov 21 2015 18:08
  'phone'    => 'regex:/^((8|\+7)[\- ]?)?(\(?\d{3}\)?[\- ]?)?[\d\- ]{7,10}$/',
оно считает ^ типа как знак, открывающий регулярку
попробуй мой вариант с //
Roman
@fearrr
Nov 21 2015 18:09
@Hunternnm я вроде так тоже пробовал
preg_match(): No ending delimiter '/' found
Ivan
@Hunternnm
Nov 21 2015 18:11
после $ точно / есть?
Roman
@fearrr
Nov 21 2015 18:11
@Hunternnm ага) 100%
Ivan
@Hunternnm
Nov 21 2015 18:14
'phone' =>[ 'regex:/^((8|\+7)[\- ]?)?(\(?\d{3}\)?[\- ]?)?[\d\- ]{7,10}$/'],
даже так
т.е. регулярка в массиве типа должна быть
@fearrr пробуй
Roman
@fearrr
Nov 21 2015 18:16
@Hunternnm ага,предыдущий не работает)
сейчас попробую этот
Ivan
@Hunternnm
Nov 21 2015 18:17
с массивом?
Roman
@fearrr
Nov 21 2015 18:17
ага, ну тот что до правки был
Ivan
@Hunternnm
Nov 21 2015 18:17
я промахнулся)
Roman
@fearrr
Nov 21 2015 18:19
@Hunternnm неа, тоже не хочет, ошибок нет. но и валидации тоже))
Ivan
@Hunternnm
Nov 21 2015 18:19
попробуй провалидировать число или нет
может в самой регулярке ошибка
тестипровал ее где-то?
Roman
@fearrr
Nov 21 2015 18:19
да вроде проверил на regex101
Ivan
@Hunternnm
Nov 21 2015 18:20
флаги ставил может?
проверь с массивом саму простую регулярку
Ivan
@Hunternnm
Nov 21 2015 18:20
а так я без вариантов больше
Orel2888
@Orel2888
Nov 21 2015 18:22
@fearrr а без regex: ?
Vladislav Balabanovich
@vladbesson
Nov 21 2015 18:28
Подскажите в чем дело: запускаю команду php artisan queue:work – выдает ошибку [ErrorException] Missing argument 1 for App\Jobs\FacebookSearch::handle(), в логах посмотерл – ругается на вот эту строку public function handle($keywords) { но тут аргумент передается, в чем же проблема?
какие-нибудь идеи? не могу понятьв чем дело
Roman
@fearrr
Nov 21 2015 18:31
@Hunternnm простое выражение вроде работает, может реально регулярка не рабочая
Roman
@fearrr
Nov 21 2015 18:36
Хотя не, просто пропускает, не проверяет
Roman
@fearrr
Nov 21 2015 18:44
короче в массиве нужно передавать regex. заработало... @Hunternnm, спасибо
KarmaBot
@KarmaBot
Nov 21 2015 18:44
Спасибо (+1) для @Hunternnm принято! Текущая карма +27.
seoperin
@seoperin
Nov 21 2015 18:50
Привет
подскажите, я в сервис провайдере задал глабоальные переменные и передал их во вьюхи
они теперь всегда мне доступны
а вот можно как то сделать чтобы это только для админки действовало? чтоб запросов во фронте было меньше?
а блин, чот я туплю, всё норм
Roman
@fearrr
Nov 21 2015 19:37
Хах, а теперь опять вопрос на засыпку, как вместе с регуляркой указать еще встроенное правило валидации...?
Maksim (Ellrion) Platonov
@Ellrion
Nov 21 2015 19:40
@fearrr через пайп |
@fearrr кстати саму регулярку лучше вынести как расширение валидатора дав ей вменяемое имя
Roman
@fearrr
Nov 21 2015 19:46
Ага, уже методом испытаний нашел

кстати почему-то через пайп что-то не работает, Method [validateRequired|regex] does not exist.

А вот так работает

 'phone'      =>  ['required','regex:/^((8|\+7)-?)?\(?\d{3,5}\)?-?\d{1}-?\d{1}-?\d{1}-?\d{1}-?\d{1}((-?\d{1})?-?\d{1})?$/'],
Maksim (Ellrion) Platonov
@Ellrion
Nov 21 2015 19:54

хм да действительно. в доке даже есть про это

Note: When using the regex pattern, it may be necessary to specify rules in an array instead of using pipe delimiters, especially if the regular expression contains a pipe character.

weber3
@weber3
Nov 21 2015 20:08
Доброго вечера всем, please help me как обновить Intervention image с версии 1 на версию 2 в Laravel 4
Maksim (Ellrion) Platonov
@Ellrion
Nov 21 2015 20:12
@weber3 так а что не получается? версия Intervention image вроде как не привязана к версии лары
weber3
@weber3
Nov 21 2015 20:14
@Ellrion я уже поставил ранее 1,6,5, сейчас для доп. функционала просто необходима вторая версия, ни как не пойму как обновить. phpstorm не дает загрузить вторую версию поверх первой
Maksim (Ellrion) Platonov
@Ellrion
Nov 21 2015 20:15
@weber3 в композере (composer.json) меняешь версию и делаешь composer update
weber3
@weber3
Nov 21 2015 20:15
@Ellrion хм. сейчас попробую
Roman
@fearrr
Nov 21 2015 20:18
@Ellrion а куда правильно будет положить расширение класса Validator? в App?
weber3
@weber3
Nov 21 2015 20:19
composer update
Loading composer repositories with package information
Updating dependencies (including require-dev)
и все завис
Roman
@fearrr
Nov 21 2015 20:19
@weber3 win?
weber3
@weber3
Nov 21 2015 20:19
@fearrr да
Roman
@fearrr
Nov 21 2015 20:20
@weber3 бывает долго обновляет..
Maksim (Ellrion) Platonov
@Ellrion
Nov 21 2015 20:20
@fearrr можно и в AppServiceProvider, как в доке, но мне больше нравится метод наследоваться от ValidationServiceProvider, и перекрыть его.
weber3
@weber3
Nov 21 2015 20:20
@fearrr ааа, ок тогда покурим пока спс @Ellrion спс я так и сделал
Maksim (Ellrion) Platonov
@Ellrion
Nov 21 2015 20:22
@fearrr я правда за качество кода в gist не ручаюсь, в продакшене может и поменял что то. не помню. но по идее там как то так)
@fearrr ну и естественно, в конфиге надо старый провайдер удалить а новый вписать
weber3
@weber3
Nov 21 2015 20:36
@Ellrion @fearrr Спасибо, за подсказку
KarmaBot
@KarmaBot
Nov 21 2015 20:36
Спасибо (+1) для @Ellrion принято! Текущая карма +64.
Спасибо (+1) для @fearrr принято! Текущая карма +4.
Roman
@fearrr
Nov 21 2015 21:25
@Ellrion спасибо, сейчас посмотрю)
KarmaBot
@KarmaBot
Nov 21 2015 21:25
Спасибо (+1) для @Ellrion принято! Текущая карма +65.
shockwave13
@shockwave13
Nov 21 2015 23:04
https://pp.vk.me/c630231/v630231925/1f40/UmUazyBaqcA.jpg приветствую) на скрине показано куда я положыл bootstrap. Во вьюшке register подключаю следующим образом: "<link href="public/css/bootstrap.css" rel="stylesheet">". но стили не работают, в чем ошыбка?
KarmaBot
@KarmaBot
Nov 21 2015 23:04
@shockwave13, просьба оборачивать в кавычки ссылки на видео и изображения.
@shockwave13, и тебе привет ;)
Maksim (Ellrion) Platonov
@Ellrion
Nov 21 2015 23:07
@shockwave13 public в пути лишний
@shockwave13 public директория это корень веб сервера. Так же неверен относительный адвес (без первого слеша) Так что верный линк это <link href="/css/bootstrap.css" rel="stylesheet">
shockwave13
@shockwave13
Nov 21 2015 23:10
@Ellrion Спасибо. работает
KarmaBot
@KarmaBot
Nov 21 2015 23:10
Спасибо (+1) для @Ellrion принято! Текущая карма +66.