﻿var clock_part1_splitter = '/';
var clock_part2_splitter = ':';
var clock_format = 'Ru'; //'En';
var clock_date;
var clock_hours;
var clock_minutes;
var clock_seconds;
var clock_timer = null;

var clock_date2;
var clock_hours2;
var clock_minutes2;
var clock_seconds2;
var clock_timer2 = null;

var clock_date3;
var clock_hours3;
var clock_minutes3;
var clock_seconds3;
var clock_timer3 = null;

function clock_sClock(lblClockClientID, _clock_part1_splitter, _clock_part2_splitter, _clock_format) {
    clock_part1_splitter = _clock_part1_splitter;
    clock_part2_splitter = _clock_part2_splitter;
    clock_format = _clock_format;

    clock_date = clock_GetDate(lblClockClientID);
    clock_hours = clock_GetClockHours(lblClockClientID);
    clock_minutes = clock_GetMins(lblClockClientID);
    clock_seconds = clock_GetSec(lblClockClientID);

    if (clock_timer) {
        clearInterval(clock_timer);
        clock_timer = null;
    }
    clock_timer = setInterval("clock_work(" + "'" + lblClockClientID + "'" + ");", 1000);
}

function clock_sClock2(lblClockClientID, _clock_part1_splitter, _clock_part2_splitter, _clock_format) {
    clock_part1_splitter = _clock_part1_splitter;
    clock_part2_splitter = _clock_part2_splitter;
    clock_format = _clock_format;

    clock_date2 = clock_GetDate(lblClockClientID);
    clock_hours2 = clock_GetClockHours(lblClockClientID);
    clock_minutes2 = clock_GetMins(lblClockClientID);
    clock_seconds2 = clock_GetSec(lblClockClientID);
    if (clock_timer2) {
        clearInterval(clock_timer2);
        clock_timer2 = null;
    }
    clock_timer2 = setInterval("clock_work2(" + "'" + lblClockClientID + "'" + ");", 1000);
}

function clock_sClock3(lblClockClientID, _clock_part1_splitter, _clock_part2_splitter, _clock_format) {
    clock_part1_splitter = _clock_part1_splitter;
    clock_part2_splitter = _clock_part2_splitter;
    clock_format = _clock_format;

    clock_date3 = clock_GetDate(lblClockClientID);
    clock_hours3 = clock_GetClockHours(lblClockClientID);
    clock_minutes3 = clock_GetMins(lblClockClientID);
    clock_seconds3 = clock_GetSec(lblClockClientID);
    if (clock_timer3) {
        clearInterval(clock_timer3);
        clock_timer3 = null;
    }
    clock_timer3 = setInterval("clock_work3(" + "'" + lblClockClientID + "'" + ");", 1000);
}

function clock_twoDigit(_v) {
    _v = 1 * _v;
    if (_v < 10)
        _v = "0" + _v;
    return _v;
}

function clock_addDays(myDate, days) {
    return new Date(myDate.getTime() + days * 24 * 60 * 60 * 1000);
}

function clock_work(lblClockClientID) {
    if (!document.layers && !document.all && !document.getElementById)
        return;
    var dn = "";
    var clock_sClock_hours = clock_hours;
    var clock_sClock_minutes = clock_minutes;
    var clock_sClock_seconds = clock_seconds;
    clock_sClock_minutes = clock_twoDigit(clock_sClock_minutes);
    clock_sClock_seconds = clock_twoDigit(clock_sClock_seconds);
    clock_sClock_hours = clock_twoDigit(clock_sClock_hours);
    var year = clock_date.getFullYear();
    var mon = clock_twoDigit(clock_date.getMonth() + 1);
    var day = clock_twoDigit(clock_date.getDate());
    if (clock_format == 'Ru')
        movingdate = "" + day + clock_part1_splitter + mon + clock_part1_splitter + year;
    else
        movingdate = "" + mon + clock_part1_splitter + day + clock_part1_splitter + year;
    movingtime = movingdate + " " + clock_sClock_hours + clock_part2_splitter + clock_sClock_minutes + clock_part2_splitter + clock_sClock_seconds + " " + dn;
    if (document.getElementById)
        document.getElementById(lblClockClientID).innerHTML = movingtime;
    else if (document.layers) {
        document.layers[lblClockClientID].document.open();
        document.layers[lblClockClientID].document.write(movingtime);
        document.layers[lblClockClientID].document.close();
    }
    else if (document.all)
        document.all[lblClockClientID].innerHTML = movingtime;
    if (++clock_seconds > 59) {
        clock_seconds = 0;
        if (++clock_minutes > 59) {
            clock_minutes = 0;
            if (++clock_hours > 23) {
                clock_hours = 0;
                clock_date = clock_addDays(clock_date, 1);
            }
        }
    }
}

function clock_work2(lblClockClientID) {
    if (!document.layers && !document.all && !document.getElementById)
        return;
    var dn = "";
    var clock_sClock_hours = clock_hours2;
    var clock_sClock_minutes = clock_minutes2;
    var clock_sClock_seconds = clock_seconds2;
    clock_sClock_minutes = clock_twoDigit(clock_sClock_minutes);
    clock_sClock_seconds = clock_twoDigit(clock_sClock_seconds);
    clock_sClock_hours = clock_twoDigit(clock_sClock_hours);
    var year = clock_date2.getFullYear();
    var mon = clock_twoDigit(clock_date2.getMonth() + 1);
    var day = clock_twoDigit(clock_date2.getDate());
    if (clock_format == 'Ru')
        movingdate = "" + day + clock_part1_splitter + mon + clock_part1_splitter + year;
    else
        movingdate = "" + mon + clock_part1_splitter + day + clock_part1_splitter + year;
    movingtime = movingdate + " " + clock_sClock_hours + clock_part2_splitter + clock_sClock_minutes + clock_part2_splitter + clock_sClock_seconds + " " + dn;
    if (document.getElementById)
        document.getElementById(lblClockClientID).innerHTML = movingtime;
    else if (document.layers) {
        document.layers[lblClockClientID].document.open();
        document.layers[lblClockClientID].document.write(movingtime);
        document.layers[lblClockClientID].document.close();
    }
    else if (document.all)
        document.all[lblClockClientID].innerHTML = movingtime;
    if (++clock_seconds2 > 59) {
        clock_seconds2 = 0;
        if (++clock_minutes2 > 59) {
            clock_minutes2 = 0;
            if (++clock_hours2 > 23) {
                clock_hours2 = 0;
                clock_date2 = clock_addDays(clock_date2, 1);
            }
        }
    }
}

function clock_work3(lblClockClientID) {
    if (!document.layers && !document.all && !document.getElementById)
        return;
    var dn = "";
    var clock_sClock_hours = clock_hours3;
    var clock_sClock_minutes = clock_minutes3;
    var clock_sClock_seconds = clock_seconds3;
    clock_sClock_minutes = clock_twoDigit(clock_sClock_minutes);
    clock_sClock_seconds = clock_twoDigit(clock_sClock_seconds);
    clock_sClock_hours = clock_twoDigit(clock_sClock_hours);
    var year = clock_date3.getFullYear();
    var mon = clock_twoDigit(clock_date3.getMonth() + 1);
    var day = clock_twoDigit(clock_date3.getDate());
    if (clock_format == 'Ru')
        movingdate = "" + day + clock_part1_splitter + mon + clock_part1_splitter + year;
    else
        movingdate = "" + mon + clock_part1_splitter + day + clock_part1_splitter + year;
    movingtime = movingdate + " " + clock_sClock_hours + clock_part2_splitter + clock_sClock_minutes + clock_part2_splitter + clock_sClock_seconds + " " + dn;
    if (document.getElementById)
        document.getElementById(lblClockClientID).innerHTML = movingtime;
    else if (document.layers) {
        document.layers[lblClockClientID].document.open();
        document.layers[lblClockClientID].document.write(movingtime);
        document.layers[lblClockClientID].document.close();
    }
    else if (document.all)
        document.all[lblClockClientID].innerHTML = movingtime;
    if (++clock_seconds3 > 59) {
        clock_seconds3 = 0;
        if (++clock_minutes3 > 59) {
            clock_minutes3 = 0;
            if (++clock_hours3 > 23) {
                clock_hours3 = 0;
                clock_date3 = clock_addDays(clock_date3, 1);
            }
        }
    }
}

function clock_GetFullDate(lblClockClientID) {
    var str = "";
    if (document.getElementById)
        str = document.getElementById(lblClockClientID).innerHTML;
    else if (document.layers) {
        document.layers[lblClockClientID].document.open();
        str = document.layers[lblClockClientID].document.read();
        document.layers[lblClockClientID].document.close();
    }
    else if (document.all)
        str = document.all[lblClockClientID].innerHTML;
    return str;
}

function clock_GetDate(lblClockClientID) {
    var str = clock_GetFullDate(lblClockClientID).split(' ')[0];
    if (clock_format == 'Ru')
        str = str.split(clock_part1_splitter)[1] + "/" + str.split(clock_part1_splitter)[0] + "/" + str.split(clock_part1_splitter)[2];
    else
        str = str.split(clock_part1_splitter)[0] + "/" + str.split(clock_part1_splitter)[1] + "/" + str.split(clock_part1_splitter)[2];
    var date = new Date(str);
    return date;
}

function clock_GetClockHours(lblClockClientID) {
    return clock_GetFullDate(lblClockClientID).split(" ")[1].split(":")[0];
}

function clock_GetMins(lblClockClientID) {
    return clock_GetFullDate(lblClockClientID).split(" ")[1].split(":")[1];
}

function clock_GetSec(lblClockClientID) {
    return clock_GetFullDate(lblClockClientID).split(" ")[1].split(":")[2];
}
