Автоматическое восстановление текста для форума


Описание

Скрипт запоминает значение поля ввода на форуме каждые 10 секунд и при перезагрузке страницы или перехода на другую страницу восстанавливает текст.

Установка

Чтобы установить вставьте следующий код в шаблон Форма добавления сообщения Форума в самый конец:

Code
<script type="text/javascript">  
  function setCookie(name, value, days) {  
  if (days) {  
  var date = new Date();  
  date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));  
  var expires = "; expires=" + date.toGMTString();  
  }  
  else var expires = "";  
  document.cookie = name + "=" + value + expires + "; path=/";  
  };  
   
  function getCookie(name) {  
  var nameEQ = name + "=";  
  var ca = document.cookie.split(';');  
  for (var i = 0; i < ca.length; i++) {  
  var c = ca[i];  
  while (c.charAt(0) == ' ') c = c.substring(1, c.length);  
  if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length, c.length);  
  }  
  return null;  
  };  
   
  function eraseCookie(name) {  
  setCookie(name, "", -1);  
  };  
  $('input[name="sbm"]').click(function(){eraseCookie('message')});  
  if(getCookie('message'))  
  {  
  $('textarea[name="message"]').val(getCookie('message').replace(/\\n/g,'\n'));  
  _uWnd.alert('<br>Текст сообщения восстановлен','Авто-восстановление',{w:200,h:80});  
  };  
  var rememberint = setInterval(function()  
  {if($('textarea[name="message"]').val().length>0 && getCookie('message')){  
  if(getCookie('message').replace(/ /g,'')!=$('textarea[name="message"]').val().replace(/ /g,'').replace(/\n/g,'\\n'))  
  {  
  setCookie('message',$('textarea[name="message"]').val().replace(/\n/g,'\\n'),365);  
  _uWnd.alert('<br>Текст сообщения сохранен','Авто-сохранение',{w:200,h:80});  
  }  
  }  
  else  
  {  
  if($('textarea[name="message"]').val().length>0)  
  {  
  setCookie('message',$('textarea[name="message"]').val().replace(/\n/g,'\\n'),365);  
  _uWnd.alert('<br>Текст сообщения сохранен','Авто-сохранение',{w:200,h:80});  
  }  
  else  
  {eraseCookie('message')}  
  }  
  }, 10000);  
  </script>

  • FalleN

  • 948

  • 1

  • 0

Ссылки на статью:

Похожие статьи: