Показать сообщение отдельно
  #18 (permalink)  
Старый 13.08.2015, 16:06
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

Вариант:

//Установка:
<script type="text/javascript">
//Установка счетчиков:
function addСount(str,del) {
  var stor = window.localStorage;
  var Tday = 1000*60*60*24; //День в ms;
  str=str.split(',');
  if(str.length!=4) return false; var arr;
  if((arr=str[2].split('.')).length!=3) return false;
  str = str[0]+','+str[1]+','+ str[2]+','+(+new Date(arr[2],arr[1]-1,arr[0])+str[3]*Tday);
  var bound = ';\n'; //Разделитель записей;
  var strg = stor["coutArray"];//strg=''
  if(!!strg)strg = strg.replace(str+bound,'');
  if(del){ stor["coutArray"] = strg; return [true, "Запись удалена"];}
  if(!strg){strg='';stor["coutArray"]='';}
  stor["coutArray"]= strg + str+ bound;
  return stor["coutArray"];
};
//Формат данных:
//Имя, уточняющая запись, Дата отсчета, Дельта T(дней)//
var newCount = "Васе,до конца соместной жизни,08.08.2015,30";
addСount(newCount);
var newCount = "Диме,до завершения погашения ипотеки,02.08.2015,25";
addСount(newCount);
var newCount = "Коле,до конца аренды резиновой бабы,17.08.2015,18";
alert(addСount(newCount))
</script>



//Вывод результов:
<div id="out-count-write"></div>
<script type="text/javascript">
//Вывод результов счетчиков:
function writeStorCount() {
  var last_Phrase = " - Ваше время Истекло!"
  var stor = window.localStorage,Tday = 1000*60*60*24,bound = ';\n';
  var strg = stor["coutArray"],arrCount,i;
  if(!strg) return false;
  arrCount = strg.split(bound);
  var lng = arrCount.length - 1;
  for(i=0; i<lng; i++){
    var arr = arrCount[i].split(',');//alert(arr)
    var delta = parseInt((+arr[3]-(+new Date()))/Tday);
    if(delta<0) return false;
    var test = delta%10;
    var day='дней'; if(test==1)day='дeнь';if(test>1&&test<5)day='дня';
    if(delta>10&&delta<21)day='дней';
    var str = arr[0]+' '+arr[1]+ ' осталось '+ delta +' '+ day + '<br>';
    if(delta==0)str = arr[0] + last_Phrase + '<br>';
    document.getElementById('out-count-write').innerHTML+=str;
  }
};
writeStorCount()
</script>

Последний раз редактировалось Deff, 13.08.2015 в 16:20.
Ответить с цитированием