renovations

This commit is contained in:
Ilya Kantor 2015-01-11 01:54:57 +03:00
parent 4b8b168fd2
commit c7d4c7e3ff
172 changed files with 869 additions and 244 deletions

View file

@ -0,0 +1,34 @@
function formatDate(date) {
var diff = new Date() - date; // разница в миллисекундах
if (diff < 1000) { // прошло менее 1 секунды
return 'только что';
}
var sec = Math.floor( diff / 1000 ); // округлить diff до секунд
if (sec < 60) {
return sec + ' сек. назад';
}
var min = Math.floor( diff / 60000 ); // округлить diff до минут
if (min < 60) {
return min + ' мин. назад';
}
// форматировать дату, с учетом того, что месяцы начинаются с 0
var d = date;
d = [
'0'+d.getDate(),
'0'+(d.getMonth()+1),
''+d.getFullYear(),
'0'+d.getHours(),
'0'+d.getMinutes()
];
for(var i=0; i<d.length; i++) {
d[i] = d[i].slice(-2);
}
return d.slice(0,3).join('.')+' '+d.slice(3).join(':');
}

View file

@ -0,0 +1,18 @@
describe("formatDate", function() {
it("выводит дату 1мс назад как \"только что\"", function() {
assert.equal( formatDate( new Date(new Date - 1) ), 'только что' );
});
it('выводит дату "30 сек назад"', function() {
assert.equal( formatDate( new Date( new Date - 30*1000) ), "30 сек. назад" );
});
it('выводит дату "5 мин назад"', function() {
assert.equal( formatDate( new Date( new Date- 5*60*1000) ), "5 мин. назад");
});
it("выводит старую дату в формате дд.мм.гг чч:мм", function() {
assert.equal( formatDate( new Date(2014, 2, 1, 11, 22, 33) ), "01.03.14 11:22" );
});
});