Скрипт необходимый на многих ресурсах где происходит устаревание сессии, к примеру вы создаете материал пишите его долго, а при нажатие на сохранить вам выдает ошибку что сесия устарела и вам необходимо обновить страницу, так вот для этого и сделан скрипт для обновления сессий на сайте, Данный скрипт для тех, у кого при добавлении новости появляется ajax с текстом:
"Доступ запрещён. Истёк период сессии"
печальное событие и приходится весь материал пере копировать в другое окно что бы разместить его на своем проекте.
Установка:
Вставляем скрипт в форму добавления материалов каталога файлов то есть в модуль load:
Code
<input type="button" id="ssidr" onclick="ssidr()" value="Обновить сесию">
<script type="text/javascript">
function ssidr(){
$('.disabledLoad').attr('disabled', true);
$.get('/load/0-0-0-0-1', function(d){
$('input[name="ssid"]').val($('input[name="ssid"]', d).val());
$('.disabledLoad').attr('disabled', false);
_uWnd.alert('<br>Cесия обнавлена','Готово',{w:230,h:90,tm:4000,align:'center'});
});
}
</script>
Или другой вид исполнения но с теми же функциями скрипт:
Code
<?if($PAGE_ID$="edit" || $PAGE_ID$="add")?>
<script type="text/javascript">
_sesReload = function ()
{
$.get('/$MODULE_ID$/0-0-0-0-1', function (recieveData)
{
var newSess = $('input[name="ssid"]', recieveData).val();
$('input[name="ssid"]').val(newSess);
});
}
_sesTimeout = setInterval('_sesReload()', 900000);
</script>
<?endif?>
Выставляем время обновления страницы или сессий 15минут (900000ms = 15 * 60 * 1000)
Примечание:
Для блога скрипт необходимо добавить в шаблон Страница архива материалов, для остальных модулей Страница добавления/редактирования материала