Валидация арабских дат

Предварительное обсуждение найденных ошибок перед отправкой их авторам фреймворка, а также внесение новых предложений.
Ответить
Tsamsiyu
Сообщения: 51
Зарегистрирован: 2014.06.27, 09:37

Валидация арабских дат

Сообщение Tsamsiyu » 2016.02.01, 11:59

Не проходит валидация арабских дат с использованием intl extension-a. (Точнее не парсится дата)
Локаль установлена в ar_SA(ar-SA пробовал также), брал отсюда: http://www.w3schools.com/Tags/ref_language_codes.asp

PS: если установить lenient в true, то валидация проходит.

Аватара пользователя
samdark
Администратор
Сообщения: 9134
Зарегистрирован: 2009.04.02, 13:46
Откуда: Воронеж
Контактная информация:

Re: Валидация арабских дат

Сообщение samdark » 2016.02.01, 15:44

Это можно/нужно как-то исправить в самом фреймворке?

Tsamsiyu
Сообщения: 51
Зарегистрирован: 2014.06.27, 09:37

Re: Валидация арабских дат

Сообщение Tsamsiyu » 2016.02.02, 13:14

Можно либо поставить проверку, что если Intl-extension не смог распарсить дату, то пробовать парсить методом, который предоставляет фреймворк, ну или добавить свойство типа enabledIntlExtension, а можно и комбинировать эти два способа.
Сейчас я, отнаследовавшись, сделал вторым способом.

lynicidn
Сообщения: 2221
Зарегистрирован: 2014.05.24, 15:12

Re: Валидация арабских дат

Сообщение lynicidn » 2016.02.02, 13:22

имелось ввиду - это баг? или вы просто пишите книгу "как я валидировал арабские даты", а здесь делаете пометки, как в черновике?

Tsamsiyu
Сообщения: 51
Зарегистрирован: 2014.06.27, 09:37

Re: Валидация арабских дат

Сообщение Tsamsiyu » 2016.02.02, 13:53

Да, это баг, но баг не совсем самого фреймворка, т.к. не парсит дату именно Intl-ext. Это скорее недоработка, которая не позволяет обойти/не учитывает этот баг.

Аватара пользователя
samdark
Администратор
Сообщения: 9134
Зарегистрирован: 2009.04.02, 13:46
Откуда: Воронеж
Контактная информация:

Re: Валидация арабских дат

Сообщение samdark » 2016.02.02, 16:49

Эх, с арабскими датами я совершенно не знаком, поэтому осознать и пофиксить не смогу. Если сделаете pull request с решением и обязательно с пояснениями (потому как в команде Yii, думаю, никто с арабскими датами не работал), будет замечательно.

Nerf
Сообщения: 780
Зарегистрирован: 2015.01.29, 00:37

Re: Валидация арабских дат

Сообщение Nerf » 2016.02.27, 02:15

Внесу свои 5 коп. Была пара раз ситуация, когда на сервере установлен intl, но базы старые. Соответственно работать с датами через Formatter невозможно(можно, но приятного мало). Было бы удобно, чтобы был параметр, который отключает использование Intl. В идеале несколько, чтобы можно было отключить часть функционала. Например, не использовать для работы с датами, но использовать для переводов.

Аватара пользователя
samdark
Администратор
Сообщения: 9134
Зарегистрирован: 2009.04.02, 13:46
Откуда: Воронеж
Контактная информация:

Re: Валидация арабских дат

Сообщение samdark » 2016.02.27, 14:44

А обновить ICU?

Nerf
Сообщения: 780
Зарегистрирован: 2015.01.29, 00:37

Re: Валидация арабских дат

Сообщение Nerf » 2016.02.27, 22:17

Sam Dark писал(а):А обновить ICU?
Не всегда есть такая возможность.
У вас же есть fallback'и, не вижу проблемы дать возможность сконфигурировать компонент. Тем более предугадать эту ситуацию нельзя. Что будет если кому-то опять захочется изменить часовые пояса в России?
ПС: Как вариант, конечно, можно переопределить Formatter. Но плохо(на первый взгляд), что нельзя переопределить formatDateTimeValue().

Аватара пользователя
samdark
Администратор
Сообщения: 9134
Зарегистрирован: 2009.04.02, 13:46
Откуда: Воронеж
Контактная информация:

Re: Валидация арабских дат

Сообщение samdark » 2016.02.28, 00:32

Вообще можно сделать. Кинете issue нам на GitHub?

Nerf
Сообщения: 780
Зарегистрирован: 2015.01.29, 00:37

Re: Валидация арабских дат

Сообщение Nerf » 2016.02.28, 15:36

Sam Dark писал(а):Вообще можно сделать. Кинете issue нам на GitHub?
https://github.com/yiisoft/yii2/issues/10982

Ответить