вопрос
DLE 10.3
Доброй ночи, появилась задача сделать возможность на сайте (тема сайта видео) скрытие видео проигрывателя от посетителей до определенной даты, после чтоб автоматом скрытое видео было доступно. Был переделан хак перенос новости после наступления определенной даты в нужную категорию + чтоб дополнительно заносил значение для блокировки в таблицу _post в которой было создано доп поле prava (по стандарту поле имеет значение 0 – и доступно для всех при запрете добавляется 1). Для скрытия самого видео проигрывателя было решено сделать что то наподобие хайда функция написана так:
В файле engine/modules/functions.php
А в engine/modules/show.full.php
После
Прописано так
В файле fullstory.tpl прописывается так
И если в таблице _post в поле prava установлено значение 1 то выводится сообщение что Извините данное видео заблокировано по просьбе правообладателей! И бла бла бла но как только изменить в таблице _post в поле prava значение 1 на 0 (дать разрешить для вывода)
Вместо проигрывателя выводится черный квадрат и все.
Методом проб и ошибок нашел проблему:
Как видно плейлист экранируется слешами:
Если с шаблона убрать хайды то выводится так:
Подскажите как можно решить эту проблему в программировании не силен что мог уже сделал, DLE 10.3. За ранее спасибо.
Доброй ночи, появилась задача сделать возможность на сайте (тема сайта видео) скрытие видео проигрывателя от посетителей до определенной даты, после чтоб автоматом скрытое видео было доступно. Был переделан хак перенос новости после наступления определенной даты в нужную категорию + чтоб дополнительно заносил значение для блокировки в таблицу _post в которой было создано доп поле prava (по стандарту поле имеет значение 0 – и доступно для всех при запрете добавляется 1). Для скрытия самого видео проигрывателя было решено сделать что то наподобие хайда функция написана так:
В файле engine/modules/functions.php
А в engine/modules/show.full.php
После
$tpl->copy_template = str_replace( "[xfvalue_{$value[0]}]", $xfieldsdata[$value[0]], $tpl->copy_template );
Прописано так
$tpl->set_block("#\[hide_(.*?)\](.*?)\[/hide\]#ies", 'news_protect( $1, "$2" )');
В файле fullstory.tpl прописывается так
[hide_0][xvalue_имя доп поля в котором хранится ссылка на видео][/hide]
И если в таблице _post в поле prava установлено значение 1 то выводится сообщение что Извините данное видео заблокировано по просьбе правообладателей! И бла бла бла но как только изменить в таблице _post в поле prava значение 1 на 0 (дать разрешить для вывода)
Вместо проигрывателя выводится черный квадрат и все.
Методом проб и ошибок нашел проблему:
<!--dle_uppod_begin:http://www.youtube.com/embed/pLfFSFq8ltk|серия 1||http://www.youtube.com/embed/--UTjaCN9Ac|серия 2-->
<object class="uppod_style_video" id="uppod_video_141425f1d3a0871c17e7bd6863d734ff" uid="uppod_video_141425f1d3a0871c17e7bd6863d734ff" type="application/x-shockwave-flash" data="/templates/Mult-Rip/uppod/uppod.swf" />
<param name="bgcolor" value="#000000" />
<param name="allowFullScreen" value="true" /><param name="allowScriptAccess" value="always" />
<param name="movie" value="/templates/Mult-Rip/uppod/uppod.swf" />
<param name="flashvars" value="comment=http://www.youtube.com/embed/--UTjaCN9Ac|серия 2&st=/templates/Mult-Rip/uppod/video209-1088.txt&pl={\'playlist\':[{\'file\':\'http://www.youtube.com/embed/pLfFSFq8ltk\',\'comment\':\'серия 1\'},{\'file\':\'http://www.youtube.com/embed/--UTjaCN9Ac\',\'comment\':\'серия 2\'}]}" />
</object>
<!--dle_uppod_end-->
Как видно плейлист экранируется слешами:
pl={\'playlist\':[{\'file\':\'http://www.youtube.com/embed/pLfFSFq8ltk\',\'comment\':\'серия 1\'},{\'file\':\'http://www.youtube.com/embed/--UTjaCN9Ac\',\'comment\':\'серия 2\'}]}
Если с шаблона убрать хайды то выводится так:
pl={'playlist':[{'file':'http://www.youtube.com/embed/pLfFSFq8ltk','comment':'серия 1'},{'file':'http://www.youtube.com/embed/--UTjaCN9Ac','comment':'серия 2'}]}
Подскажите как можно решить эту проблему в программировании не силен что мог уже сделал, DLE 10.3. За ранее спасибо.
спасибо рашил проблему так
return stripslashes(htmlspecialchars_decode($text));