rtivital
6/9/2016 - 11:06 AM

cookies.js

var browserCookies = require('./browser-cookies.js');
/**
  * Функция сохранения в cookies последний выбранный фильтр:
  * «Оригинал», «Хром» или «Сепия»
  */
function saveSelectFilter() {
  var selectFilter = document.querySelector('.upload-filter-controls input:checked');
  var dateToExpires = new Date(Date.now() + getTimeNearBirthDay()).toUTCString();
  browserCookies.setItem('filter', selectFilter.value, dateToExpires); //ругается нет функции setItem
}

/**
  * Дата рождения @constant {date}
  * Month от 0(ЯНВ) до 11 (ДЕК)
  */
var BIRTHDAY_DATE = new Date('1991', '3', '23');

/**
  * Функция вычисления количества дней с ближайщего дня рождения
  */
function getTimeNearBirthDay() {
  var nowDate = new Date();
  nowDate = new Date(nowDate.getFullYear(), nowDate.getMonth(), nowDate.getDate());
  if (nowDate.getMonth() >= BIRTHDAY_DATE.getMonth()) {
    if (nowDate.getDate() >= BIRTHDAY_DATE.getDate()) {
      BIRTHDAY_DATE.setFullYear(nowDate.getFullYear());
    } else {
      BIRTHDAY_DATE.setFullYear(nowDate.getFullYear() - 1);
    }
  } else {
    BIRTHDAY_DATE.setFullYear(nowDate.getFullYear() - 1);
  }
  return nowDate - BIRTHDAY_DATE;
}
saveSelectFilter();