Скачка файла с задержкой для гостей — различия между версиями
Материал из Umicms
Velross (обсуждение | вклад) |
Velross (обсуждение | вклад) |
||
Строка 31: | Строка 31: | ||
</source> | </source> | ||
− | ''PS: Запись ''if (i== | + | ''PS: Запись ''if (i==337)'' указывает на ID пользователя "Гость" и у вас может отличаться.'' |
[[Категория:Написание кастомных макросов]][[Категория:Вопросы и уроки разработки сайтов на UMI.CMS]] | [[Категория:Написание кастомных макросов]][[Категория:Вопросы и уроки разработки сайтов на UMI.CMS]] |
Версия 10:16, 11 апреля 2014
Актуально для 2.9.6
Задача: показать ссылку для скачивания незарегистрированному пользователю с определенной задержкой.
Решение: Задержку отображения ссылки для скачивания мы можем организовать при помощи JS. В папке "\tpls\filemanager\" нужно внести изменения в шаблон default.tpl
$FORMS['shared_file'] = <<<END
Имя файла: %file_name% <br />
Размер файла: %file_size% Kb<br /><br />
%current_user_id%
<div id='download_guest'></div>
<script languge="text/javascript">
var i=%current_user_id%;
function timerDownload() {
document.getElementById('download_guest').innerHTML+='Ваша ссылка на скачивание <a href="%download_link%">по этой ссылке</a>';
}
if (i==337) {
document.getElementById('download_guest').innerHTML='Скачивание начнётся через 60 секунд. Чтобы не ждать - зарегистрируйтесь';
window.setTimeout('timerDownload()', 60000);
} else {
document.getElementById('download_guest').innerHTML='Если закачивание файла не начнется через 10 сек, кликните <a href="%download_link%">по этой ссылке</a>'
}
</script>
END;
PS: Запись if (i==337) указывает на ID пользователя "Гость" и у вас может отличаться.