Всё чаще и чаще начали попадаться фильмы, которые в каталоге видны, но при попытке их воспроизведения выдаёт просто пустой экран с одной единственной кнопкой "ОК". Вот ттакой:
- | +

- videos long id empty scr.png (6.45 KiB) Viewed 8235 times
Начал разбираться, что сломалось. Вроде разобрался и даже "грязно" починил
Иви начал сваливать всё в одну кучу. Раньше как было, при получении каталога в описании каждого видео был пункт "hru" - признак сериала (не всегда, но это и не важно). Если этот пункт не "null", то дальнейшая информация о видео (при нажатии ОК) берётся по ссылке сериалов, если же "null", то по другой ссылке фильмов. И путать их нельзя, так как они не совместимы. А сейчас получается, что пункт "hru" не "null" (то есть вроде как сериал и описание берётся по ссылке сериалов. Но в этом и заключается поломка. Такие видео содержат пункт "hru", но описание должно браться по ссылке фильмов, а не сериалов. Отличить настоящий сериал от лжесериала на этапе получения каталога можно только косвенно по "id". Все остальные пункты у них одинаковые. По сугубо моим наблюдениям, id лжесериалов (которые, напомню, помечены как сериал) превышает 50000, в то время как id настоящих сериалов всегда меньше этого числа. Таких лжесериалов довольно много, почти на каждой станице попадаются по 1 - 2 видео. Вот их примеры. Попробуйте их воспроизвести без обновлений. Не получится:
- | +

- videos long id comp.png (987.82 KiB) Viewed 8235 times
Так и была реализована "грязная" починка, на этапе получения каталога введена проверка, если hru есть (типа сериал), но id выше 50000, то принудительно помечается, что это не сериал, а фильм, и тогда дальнейшая обработка идёт нормально. Ну, это наверно больше похоже на костыль, нежели на починку, так как величина id в 50000 взята из головы, да и не факт, что это выдерживается на всех видео, но работает.
По хорошему, нужно править в функции static function getInfos( $id ). После первого же обращения к функции $f = self::getVideos( $id ); если пришло false, то делать повторный запрос с принудительной пометкой, что это фильм, а не сериал. Я попробовал, но не заработало

. Закомментил попытку. Мало у меня знаний php, для таких поправок

С костылём работает
- | +

- videos long id working.png (358.38 KiB) Viewed 8235 times
Поправленный файлик положить с заменой по пути 0:/usr/local/etc/mos/www/modules/ivi/
init.7z
- (5.24 KiB) Downloaded 28 times