Страница 1 из 1

Загрузка изображений со стороннего сайта

Добавлено: 29.08.2021, 06:46
korshunov
Пришлось немного поработать с загрузкой файла изображения со стороннего сайта в Okay. Выяснилось, что этот функционал работает весьма странно.

1. Делаются две попытки загрузки (если первая неудачна). Сначала по URL, потом по такому же URL, но с http:. Изначально идея не слишком хороша, так адреса http: и https: на стороннем сервере могут работать по разному. А если уж хочется непременно такое делать, то надо бы с настройкой, делать вторую попытку или нет...
2. Из пункта 1 сразу вытекает серьезный недостаток . Если ссылка http: не рабочая, то ДВАЖДЫ выполняется одна и та же попытка. Вторая попытка - явно лишняя работа.
3. При первой попытке делается действие Перед долгим копированием займем это имя. А при второй (для исходного https:) - нет.
4. Создана функция private function isNotHttpsSource($filename). Применяется всего один раз. Лишнее усложнение на пустом месте.
5. Сама функция выглядит так:
private function isNotHttpsSource($filename)
{
if (!preg_match("~^https://~", $filename)) {
return true;
}
return false;
}
В то время как само собой напрашивается более простое
private function isNotHttpsSource($filename)
{
return !preg_match("~^https://~", $filename)) ;
}
6. Сами попытки оформлены отдельными участками кода, которые практически дублируются. Вот где надо бы функцию отдельную создавать и вызывать ее в двух местах! И тогда бы, скорее всего, ошибки 2,3 сами исчезли.

Столько ляпов в довольно простом функционале - выглядит как малоквалифицированная работа, простительная разве что начинающему...

Добавлено: 30.08.2021, 10:20
OkayCMS
Посмотрим ваши замечания, ориентировочно на следующей неделе.

Добавлено: 06.11.2021, 10:18
korshunov
Вот неделя, другая проходит...
И месяц прошел, и другой...
И появилась новая версия 4.2.0, в ней изменений по этой части не видно...
В очередной раз проявляется несерьезный стиль разработчиков Okay - пообещать и не выполнить...

Добавлено: 06.11.2021, 22:31
Dysha-Kuzbass
Виталий, ждём данную реализацию в следующем snapshot`е!
Сделайте, пожалуйста! Очень удобная функция/штука!

Добавлено: 17.11.2021, 15:38
OkayCMS
Доработка сделана, доступна на гите по ссылкеhttps://github.com/OkayCMS/OkayCMS/pull/100
Войдет в новую версию, в которой будут доработки (а не только фиксы)

Добавлено: 19.11.2021, 09:03
dimitriy
OkayCMS писал(а):Доработка сделана, доступна на гите по ссылкеhttps://github.com/OkayCMS/OkayCMS/pull/100
Войдет в новую версию, в которой будут доработки (а не только фиксы)
то есть в 4.2.2 ?

Добавлено: 19.11.2021, 10:35
OkayCMS
dimitriy писал(а):
OkayCMS писал(а):Доработка сделана, доступна на гите по ссылкеhttps://github.com/OkayCMS/OkayCMS/pull/100
Войдет в новую версию, в которой будут доработки (а не только фиксы)
то есть в 4.2.2 ?
Нет, в 4.3.0
Если меняется в номере версии последняя цифра, то это фиксы багов, но не новый функционал.
Но если вам это нужно ранее, вы можете с гитхаба взять пулреквест и закинуть себе.