Показать сообщение отдельно
  #7 (permalink)  
Старый 07.11.2014, 21:42
Профессор
Отправить личное сообщение для Tecvid Посмотреть профиль Найти все сообщения от Tecvid
 
Регистрация: 13.12.2013
Сообщений: 175

полный код такой:

function time() {
     // бла бла.. p.s: выполняет аналогичную функию из php
}

function date(format, timestamp) {
     // бла бла.. p.s: выполняет аналогичную функию из php
}

function ago(time) {
	var df = time() - time;

	if (df <= 19) {
		return 'Elə indi';
	}
	else if (df > 19 && df <= 59) {
		return 'Bir neçə saniyə əvvəl';
	}

	var mas = [ 
		[ 31556926, ['ay', 2628000]   ], 
		[ 2629744,  ['həftə', 604800] ], 
		[ 604800,   ['gün', 86400]    ], 
		[ 86400,    ['saat', 3600]    ], 
		[ 3600,     ['dəqiqə', 60]    ], 
		[ 60,       ['saniyə', 1]     ] 
	];
	var intg = [];
	for ( var i = 0, len = mas.length; i < len; i++ ) {
		var el = mas[i][1];
		if ( df < mas[i][0]) {
			intg[1] = el;
		} else {
			intg[0] = el;
		}
	}

	var value = Math.floor(df/intg[1][1]);
	var ago = value + ' ' + intg[1][0];

	var days = new Array ('Bazar', 'Bazar ertəsi', 'Çərşənbə axşamı', 'Çərşənbə', 'Cümə axşamı', 'Cümə', 'Şənbə');
	var day = days[date('w', time)];

	var months = new Array ('', 'Yanvar', 'Fevral', 'Mart', 'Aprel', 'May', 'İyun', 'İyul', 'Avqust', 'Sentyabr', 'Oktyabr', 'Noyabr', 'Dekabr');
	var month = months[date('m', time)];

	if (ago == '1 gün') {
		return 'Dünən ' + date('H:i', time);
	}
	else if ((value == 2 || value == 3 || value == 4 || value == 5 || value == 6 || value == 7) && intg[1][0] == 'gün') {
		return day + ' günü ' + date('H:i', time);
	}
	else if (value <= 59 && intg[1][0] == 'dəqiqə' ||  intg[1][0] == 'saat') {
		return ago + ' əvvəl';
	}
	else {
		return date('d', time) + ' ' + month + ' ' + date('Y H:i', time);
	}
}

// == ОТЛАДКА ==

var t = time();
alert(ago(t));
Ответить с цитированием