Скачка файла с задержкой для гостей — различия между версиями
Материал из Umicms
| Velross (обсуждение | вклад) м (переименовал «Скачка файла с задержкой для гостей (TPL)» в «Скачка файла с задержкой для гостей») | Velross (обсуждение | вклад)  | ||
| Строка 7: | Строка 7: | ||
| '''Решение:''' | '''Решение:''' | ||
| + | Данное решение применимо для шаблонизатора TPL. | ||
| Задержку отображения ссылки для скачивания мы можем организовать при помощи JS. | Задержку отображения ссылки для скачивания мы можем организовать при помощи JS. | ||
| В папке "\tpls\filemanager\" нужно внести изменения в шаблон default.tpl | В папке "\tpls\filemanager\" нужно внести изменения в шаблон default.tpl | ||
Текущая версия на 09:59, 30 апреля 2014
Актуально для 2.9.6
Задача: показать ссылку для скачивания незарегистрированному пользователю с определенной задержкой.
Решение: Данное решение применимо для шаблонизатора TPL. Задержку отображения ссылки для скачивания мы можем организовать при помощи 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 пользователя "Гость" и у вас может отличаться.
