/**
 * Скрипт обратного отсчёта
 * 
 * @example $.countdown(1312228799000, 'timeToGame');
 * 
 * @param int startDate  Начальная дата в формате Unix времени. Внимание! Значение должно быть не в секундах, а милисекундах!
 * @param int endDate    Конечная дата в формате Unix времени. Внимание! Значение должно быть не в секундах, а милисекундах!
 * @return object        Объект с данными {оставшиеся дни, слово день в правильном виде, оставшиеся часы, оставшиеся минуты, оставшиеся секунды}
 */
jQuery.countdown = function(startDate, endDate) {
    var days = " дней ";

    var totalRemains = (endDate - startDate);

    if (totalRemains > 1) {

        var RemainsSec = (parseInt(totalRemains/1000));
        var RemainsFullDays = (parseInt(RemainsSec/(24*60*60)));

        if (RemainsFullDays == 2 || RemainsFullDays == 3 || RemainsFullDays == 4 || RemainsFullDays == 22 ||
            RemainsFullDays == 23 || RemainsFullDays == 24 || RemainsFullDays == 32 || RemainsFullDays == 33 ||
            RemainsFullDays == 34) {
                days = " дня ";
        }

        if (RemainsFullDays == 1 || RemainsFullDays == 21 || RemainsFullDays == 31) {
            days = " день ";
        }

        var secInLastDay = RemainsSec - RemainsFullDays * 24 * 3600;
        var RemainsFullHours = (parseInt(secInLastDay/3600));

        if (RemainsFullHours < 10) {
            RemainsFullHours = "0" + RemainsFullHours
        };

        var secInLastHour = secInLastDay - RemainsFullHours*3600;
        var RemainsMinutes = (parseInt(secInLastHour/60));

        if (RemainsMinutes < 10){
            RemainsMinutes = "0" + RemainsMinutes
        };

        var lastSec = secInLastHour - RemainsMinutes * 60;

        if (lastSec < 10){
            lastSec = "0" + lastSec;
        };

        
        return {fulldays: RemainsFullDays, days: days, fullhour: RemainsFullHours, fullmin: RemainsMinutes, fullsec: lastSec};
    } else {
        return {fulldays: 0, days: '', fullhour: '00', fullmin: '00', fullsec: '00'};
    }
}
