function showCalendar(sDate, sObject, id){
var Calendar=layer('idCalendar');
Calendar.move(layer(id).getLeft()+9, layer(id).getTop()+9);
fDrawCal(sDate, sObject);
Calendar.show();
}

function fDaysInYear(iYear){
var aDays = new Array(12);
aDays[0] = 31;
aDays[1] = 28;
aDays[2] = 31;
aDays[3] = 30;
aDays[4] = 31;
aDays[5] = 30;
aDays[6] = 31;
aDays[7] = 31;
aDays[8] = 30;
aDays[9] = 31;
aDays[10] = 30;
aDays[11] = 31;
if (((iYear % 4 == 0) && (iYear % 100 != 0)) || (iYear % 400 == 0)) aDays[1] = 29;
return aDays;
}

function fStrToDate(s){
var x = "";
var i = 0;
var c = 0;
var l = s.length-1;
var symbol = "";
var a = new Array(3);
var d = new Date();
a[0] = d.getDate();
a[1] = d.getMonth();
a[2] = d.getFullYear();
a[1]++;
for (i=0; i<=l; i++) {
symbol = s.charAt(i);
if (symbol == ".") { if (x != "") { a[c] = x; }; c++; x=""; }
else if ((symbol == "1") || (symbol == "2") || (symbol == "3") || (symbol == "4") || (symbol == "5") || (symbol == "6") || (symbol == "7") || (symbol == "8") || (symbol == "9")) { x += symbol; }
else if (symbol == "0") { if (x.length >= 1) { x += symbol; }; };
if (c >= 3) { i=l+1; };
}
if (x != "") { a[c] = x; };
if (a[2] < 10) { a[2] = parseInt(a[2]) + 2000; };
if (a[2] < 100) { a[2] = parseInt(a[2]) + 1900; };
d.setFullYear(a[2]);
if (a[1] > 12) { a[1] = 12; }; d.setMonth(a[1]-1);
var aDays = fDaysInYear(a[2]);
if (a[0] > aDays[a[1]-1]) { a[0] = aDays[a[1]-1]; }; d.setDate(a[0]);
a[0] = d.getDate();
a[1] = d.getMonth();
a[2] = d.getFullYear();
return a;
}

function fDrawCal(sDate, sObject){
var iCellWidth=17;
var iCellHeight=12;
var a = new fStrToDate(sDate);
if (a[1] < 0) { a[1]=0; };
var iYear=a[2];
var iMonth=a[1];
var sImage = "/img/close.gif";
var iWImage = 15;
var iHImage = 15;
var i = 0;
var iColumn = 0;
var iDays = 0;
var Calendar = layer('idCalendar');
var dPrevDate = new Date(iYear, iMonth);
if (iYear < 1) { iYear = dCurDate.getFullYear(); };
var aDays = fDaysInYear(iYear);
var sCal = "";
var sYears = "";
var sDate = "";
iColumn = iYear - 5;
iDays = iColumn + 10;
for (i=iColumn; i<=iDays; i++) {
if (i == iYear) { sYears = sYears + "<OPTION selected value='" + i + "'>" + i + "</OPTION>"; }
else { sYears = sYears + "<OPTION value='" + i + "'>" + i + "</OPTION>"; };
}
var dFirstDay = dPrevDate;
iColumn = 0;
dFirstDay.setDate(1);
var iStartDay = dFirstDay.getDay();
sCal = "<TABLE bgcolor='#000000' width='100%' border='0' cellspacing='1' cellpadding='1'><TR>";
for (i=0; i<iStartDay; i++) {
sCal = sCal + "<TD bgcolor='#ffffff' align='right' valign='top' width='" + iCellWidth + "' height='" + iCellHeight + "'>&nbsp;</TD>";
iColumn++;
}
iDays = aDays[iMonth];
aDays[0] = 0; aDays[1] = 0;
for (i=1; i<=iDays; i++) {
aDays[0] = i; aDays[1] = iMonth; aDays[1]++;
sDate = iYear;
if (aDays[1] <= 9) { sDate = "0" + aDays[1] + "." + sDate; }
else { sDate = aDays[1] + "." + sDate; };
if (aDays[0] <= 9) { sDate = "0" + aDays[0] + "." + sDate; }
else { sDate = aDays[0] + "." + sDate; };
sCal = sCal + "<TD bgcolor='#ffffff' align='right' valign='top' width='" + iCellWidth + "' height='" + iCellHeight + "'>";
sCal = sCal + "<A href='javascript:{ "+ sObject + "=\"" + sDate + "\"; layer(\"idCalendar\").hide(); }'>" + i + "</A>&nbsp;";
iColumn++;
sCal = sCal + "</TD>";
if (iColumn == 7) {
sCal = sCal + "</TR><TR>";
iColumn = 0;
}
}
for (i=iColumn; i<=6; i++) {
sCal = sCal + "<TD bgcolor='#ffffff' align='right' valign='top' width='" + iCellWidth + "' height='" + iCellHeight + "'>&nbsp;</TD>";
iColumn++;
}
sCal = sCal + "</TR></TABLE>";
for (i=0; i<=11; i++) {
aDays[i] = "";
}
aDays[iMonth]=" selected";
Calendar.write("<FORM name='frmCalendar' method='post' action=''>\
<TABLE width='150' bgcolor='#000000' border='0' cellspacing='0' cellpadding='1'>\
<TR><TD bgcolor='#0000aa' width='55%'>\
<SELECT name='tbSelMonth' onchange='fDrawCal(\"" + a[0] + "\" + \".\" + (parseInt(document.frmCalendar.tbSelMonth.options[document.frmCalendar.tbSelMonth.selectedIndex].value) + 1) + \".\" + document.frmCalendar.tbSelYear.options[document.frmCalendar.tbSelYear.selectedIndex].value, \"" + sObject + "\")'>\
<OPTION" + aDays[0] + " value='0'>ßíâàðü</OPTION>\
<OPTION" + aDays[1] + " value='1'>Ôåâðàëü</OPTION>\
<OPTION" + aDays[2] + " value='2'>Ìàðò</OPTION>\
<OPTION" + aDays[3] + " value='3'>Àïðåëü</OPTION>\
<OPTION" + aDays[4] + " value='4'>Ìàé</OPTION>\
<OPTION" + aDays[5] + " value='5'>Èþíü</OPTION>\
<OPTION" + aDays[6] + " value='6'>Èþëü</OPTION>\
<OPTION" + aDays[7] + " value='7'>Àâãóñò</OPTION>\
<OPTION" + aDays[8] + " value='8'>Ñåíòÿáðü</OPTION>\
<OPTION" + aDays[9] + " value='9'>Îêòÿáðü</OPTION>\
<OPTION" + aDays[10] + " value='10'>Íîÿáðü</OPTION>\
<OPTION" + aDays[11] + " value='11'>Äåêàáðü</OPTION>\
</SELECT>\
</TD><TD width='40%' bgcolor='#0000aa' align='right'>\
<SELECT name='tbSelYear' onchange='fDrawCal(\"" + a[0] + "\" + \".\" + (parseInt(document.frmCalendar.tbSelMonth.options[document.frmCalendar.tbSelMonth.selectedIndex].value) + 1) + \".\" + document.frmCalendar.tbSelYear.options[document.frmCalendar.tbSelYear.selectedIndex].value, \"" + sObject + "\")'>" + sYears + "</SELECT>\
</TD><TD width='" + iWImage +"' bgcolor='#0000aa' align='right'>\
<A href='javascript:layer(\"idCalendar\").hide()'><IMG hspace='1' alt='Çàêðûòü' border='0' src='" + sImage + "' height='" + iHImage + "' width='" + iWImage +"'></A></TD>\
</TR>\
<TR>\
<TD colspan='3'>\
<TABLE bgcolor='#000000' width='100%' border='0' cellspacing='1' cellpaddin='1'><TR>\
<TD bgcolor='#000000' align='center'><FONT color='#ffffff'>Âñ.</FONT></TD>\
<TD bgcolor='#000000' align='center'><FONT color='#ffffff'>Ïí.</FONT></TD>\
<TD bgcolor='#000000' align='center'><FONT color='#ffffff'>Âò.</FONT></TD>\
<TD bgcolor='#000000' align='center'><FONT color='#ffffff'>Ñð.</FONT></TD>\
<TD bgcolor='#000000' align='center'><FONT color='#ffffff'>×ò.</FONT></TD>\
<TD bgcolor='#000000' align='center'><FONT color='#ffffff'>Ïò.</FONT></TD>\
<TD bgcolor='#000000' align='center'><FONT color='#ffffff'>Ñá.</FONT></TD></TR>\
</TABLE>" + sCal + "</TD></TR></TABLE></FORM>");
}
