const formatTime = date => {
  const year = date.getFullYear()
  const month = date.getMonth() + 1
  const day = date.getDate()
  const hour = date.getHours()
  const minute = date.getMinutes()
  const second = date.getSeconds()

  return `${[year, month, day].map(formatNumber).join('/')} ${[hour, minute, second].map(formatNumber).join(':')}`
}

function formatTimeTwo(number, format) {
  var formateArr = ['Y', 'M', 'D', 'H', 'M', 'S'];
  var returnArr = [];
  var date = new Date(number * 1000);
  returnArr.push(date.getFullYear());
  returnArr.push(formatNumber(date.getMonth() + 1));
  returnArr.push(formatNumber(date.getDate()));
  returnArr.push(formatNumber(date.getHours()));
  returnArr.push(formatNumber(date.getMinutes()));
  returnArr.push(formatNumber(date.getSeconds()));
  for (var i in returnArr) {
    format = format.replace(formateArr[i], returnArr[i]);
  }
  return format;
}
const formatMonth = date => {
  const year = date.getFullYear()
  const month = date.getMonth() +1
  return `${[year, month].map(formatNumber).join('-')} `
}
const formatDay = date =>{
  const year = date.getFullYear()
  const month = date.getMonth() +1
  const day = date.getDate()
  return `${[year, month,day].map(formatNumber).join('-')} `
}

const formatNumber = n => {
  n = n.toString()
  return n[1] ? n : `0${n}`
}
const timestamp = n =>{
  return Date.parse(new Date(n))/1000
}
function formatArr(val) {
  var special_confArr = val.toString(2).split('').slice(0, val.toString(2).length - 1).reverse();
  return getInital(special_confArr)
}

function getInital(arr) {
  var result = []
  for (var i = 0; i < arr.length; i++) {
    if (arr[i] == 1) {
      result.push(i + 1 + '')
    }
  }
  return result
}

module.exports = {
  formatTime,
  formatMonth,
  timestamp,
  formatDay,
  formatArr,
  formatTimeTwo
}
