﻿var tDOM = (document.getElementById) ? true : false;
var tIE = (document.all) ? true : false;
var tIE4 = tIE && !tDOM;
var tNS = tDOM && !tIE;
var tNS4 = (document.layers) ? true : false;
var tOPER = (window.opera) ? true : false;

function WriteTo(obj, text)
{
	if (tNS4) {
		obj.document.open();
		obj.document.write(text);
		obj.document.close();
	}
	else obj.innerHTML = text;
}

function IsShowObj(obj)
{
	if (tNS4) return (obj.visibility == 'show') ? true : false;
	else return (obj.style.visibility == 'visible') ? true : false;
}

function ShowObj(obj, flag)
{
	if (tNS4) obj.visibility = flag ? 'show' : 'hide';
	else obj.style.visibility = flag ? 'visible' : 'hidden';
}

function MoveTo(obj, x, y) {
    if (calendarN == 0)
        x += 140;
    else
        x += 20;
    y -= 20;
	if (tNS4) obj.moveTo(x, y);
	else if (tOPER) {
		obj.style.left = x;
		obj.style.top = y;
	}
	else {
		obj.style.left = x + 'px';
		obj.style.top = y + 'px';
	}
}

function GetObj(name)
{
	return (tDOM) ? document.getElementById(name) :
    (tIE) ? document.all[name] :
    (tNS4) ? document.layers[name] : null;
}

function PageH(el)
{
	var h = 0;
	h = el.offsetHeight;
	return h;
}

function PageX(el)
{
	var x = 0;
	if (tNS4) x = el.pageX;
	else {
		var parent = el.offsetParent;
		x = el.offsetLeft;
		while (parent && parent != document.body) {
			x += parent.offsetLeft;
			parent = parent.offsetParent;
		}
	}
	return x;
}

function PageY(el)
{
	var y = 0;
	if (tNS4) y = el.pageY;
	else {
		var y = el.offsetTop;
		var parent = el.offsetParent;
		while (parent && parent != document.body) {
			y += parent.offsetTop;
			parent = parent.offsetParent;
		}
	}
	return y;
}

function OpenWin(url, name, w, h)
{
	var t = 0, l = 0;
	var mw = screen.availWidth;
	var mh = screen.availHeight;
	if (mw > 0 && mh > 0) {
		l = (mw - w) * .5;
		t = (mh - h) * .5;
	}
	var win = open(url, name, "width=" + w + ",height=" + h + "," + "left=" + l + ",top=" + t + "," +
    "directories=no,location=no,menubar=no,resizable=yes,scrollbars=no,status=no,toolbar=no,titlebar=no");
	if (win) {
		win.focus();
		return true;
	}
	return false;
}



function open_calendar(next, x)
{
	var w = 180, h = 200;
	var cal;
	child_win = open("", "calendar", "width=" + w + ",height=" + h + "," +
    "directories=no,location=no,menubar=no,resizable=yes,scrollbars=yes,status=no,toolbar=no,titlebar=yes");
	if (!child_win) { alert('kva'); return; }

	child_win.resizeTo(w, h);
	child_win.focus();
	child_win.document.open();
	child_win.document.write(
    "<html><head>" +
    "<title>Календарь</title>" +
    "<meta http-equiv='Content-Type' content='text/html; charset=windows-1251'>" +
    "</head>" +
    "<body bgcolor=#ccffcc TOPMARGIN=2 LEFTMARGIN=2 RIGHTMARGIN=2 MARGINWIDTH=2 MARGINHEIGHT=2><center>" +
    draw_calendar(next, x, 0) +
    "</center></body></html>"
    );
	child_win.document.close();
	return;
}

function draw_calendar(next, x, w)
{
	var monthName = new Array(
    "Январь", "Февраль", "Март", "Апрель", "Май", "Июнь",
    "Июль", "Август", "Сентябрь", "Октябрь", "Ноябрь", "Декабрь"
    );
	var monthDays = new Array(31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);
	var dayName = new Array("пн", "вт", "ср", "чт", "пт", "сб", "вс");

	var ldate = new Date();
	var lmonth = ldate.getMonth();
	var lyear = ldate.getYear();
	if (lyear < 1000) lyear += 1900;

	var date = new Date(lyear, lmonth + next, 1);
	var month = date.getMonth();
	var year = date.getYear();
	if (year < 1000) year += 1900;
	if (year % 4 == 0) monthDays[1] = 28;

	var fdate = new Date(year, month, 1);
	var fday = fdate.getDay();
	fday = (fday == 0) ? 6 : (fday - 1);

	var mname = monthName[month];
	var mdays = monthDays[month];

	var i, j, d, s;
	var col = parseInt((mdays + fday) / 7) + (((mdays + fday) % 7) ? 1 : 0);
	var topTitle = "#E3F2F7";
	var subTop = "#41B3CA";
	var subTopColor = "#FFFFFF";
	var tdColor = "#FFFFFF";
	var tdOverColor = "#E3F2F7";
	var tdOutColor = tdColor;

	table =
    "<table border=0 cellspacing=0 cellpadding=0 >" +
    "<tr><td style='background:" + topTitle + "; border:1px " + subTop + " solid;padding:1px'>" +
      "<table border=0 cellspacing=1 cellpadding=2 width=100%>" +
      "<tr><td align=center colspan=7 style='padding:0px;FONT-SIZE:10px; FONT-FAMILY:verdana; COLOR:#005E29;'><nobr>" + mname + ", " + year + " г." + "</nobr></td></tr>" +
      "<tr><td style='padding:0px' colspan=7>" +
        "<table border=0 cellspacing=0 cellpadding=0 width=100% bgcolor='" + subTop + "'><tr><td align=left><a style='FONT-SIZE:10px; FONT-FAMILY:verdana;COLOR:" + subTopColor + "; background:" + subTop + "; TEXT-DECORATION:none' href='javascript:" + (w ? "window" : "opener") + ".init_calendar(" + (next - 1) + "," + x + ")'>&nbsp;&#171;&#171;&nbsp;</a></td>" +
        "<td align=right><a style='FONT-SIZE:10px; FONT-FAMILY:verdana;COLOR:" + subTopColor + "; background:" + subTop + "; TEXT-DECORATION:none' href='javascript:" + (w ? "window" : "opener") + ".init_calendar(" + (next + 1) + "," + x + ")'>&nbsp;&#187;&#187;&nbsp;</a></td></tr></table>" +
        "</td></tr>" +
      "<tr>";
	for (i = 0; i < 7; i++) {
		table += "<td style='FONT-SIZE:10px; FONT-FAMILY:verdana;COLOR:" + subTopColor + ";background:" + subTop + "; TEXT-DECORATION:none' width=14 height=14 align=center>" + dayName[i] + "</td>";
	}
	table += "</tr>";
	for (j = 0; j < col; j++) {
		table += "<tr>";
		for (i = 0; i < 7; i++) {
			d = j * 7 + i - fday + 1;
			ds = ((d > 0 && d <= mdays) ? "<a style='FONT-SIZE:10px; FONT-FAMILY:verdana;COLOR:#005E29; TEXT-DECORATION:none' href='javascript:" + (w ? "" : "opener.") + "set_calendar_param(" + d + "," + (month + 1) + "," + year + "," + x + ");" + (w ? "" : "close()") + "'><div>" + d + "</div></a>" : "&nbsp;");
			table += "<td bgcolor='" + tdColor + "' align=right " +
        "onmouseover=\"this.style.backgroundColor='" + tdOverColor + "'\"  onmouseout=\"this.style.backgroundColor='" + tdOutColor + "'\">" + ds + "</td>";
		}
		table += "</tr>";
	}
	table += "</table></td></tr></table>";
	return table;
}

/*  -------------------     Write  window with child age ----------------------   */
function BrowserCheck()
{
	var b = navigator.appName
	if (b == "Netscape") this.b = "ns"
	else if (b == "Microsoft Internet Explorer") this.b = "ie"
	else this.b = b
	this.version = navigator.appVersion
	this.v = parseInt(this.version)
	this.ns = (this.b == "ns")
	this.ns6 = (this.b == "ns" && this.v >= 5)
	this.ie6 = (this.version.indexOf('MSIE 6') > 0)
	this.min = (this.ns || this.ie)
}
is = new BrowserCheck()

//---------------------------------
function findObj(n, d)
{
	var p, i, x;
	if (!d) d = document;
	if ((p = n.indexOf("?")) > 0 && parent.frames.length) {
		d = parent.frames[n.substring(p + 1)].document;
		n = n.substring(0, p);
	}
	if (!(x = d[n]) && d.all) x = d.all[n];
	for (i = 0; !x && i < d.forms.length; i++) x = d.forms[i][n];
	for (i = 0; !x && d.layers && i < d.layers.length; i++) x = findObj(n, d.layers[i].document);
	if (!x && document.getElementById) x = document.getElementById(n);
	return x;
}
//---------------------------------
function checkSub()
{
	var fitem = document.SearchForm;
	var CldID = fitem.TipRazm.options[fitem.TipRazm.selectedIndex].value;
	if (CldID == "1" || CldID == "2" || CldID == "14") {
		document.SearchForm.Chld1.value = '';
		document.SearchForm.Chld2.value = '';
		fitem.submit();
		return (true);
	}
	else {
		var OpenWindow = window.open("", null, "height=200,width=300,resizable");
		OpenWindow.document.write("<HTML><HEAD>")
		OpenWindow.document.write("<meta http-equiv=\"Content-Type\" content=\"text/html; charset=windows-1251\">")
		OpenWindow.document.write("<TITLE>Возраст детей</TITLE>\n")
		OpenWindow.document.write("<SCRIPT LANGUAGE=JAVASCRIPT>\n")
		OpenWindow.document.write("function proc_form () {\n")
		OpenWindow.document.write("var dc = document.SearchFormm;\n")
		OpenWindow.document.write("  opener.document.SearchForm.Chld1.value = dc.Chld1.value;\n")

		if (CldID != "5" && CldID != "7") OpenWindow.document.write("  opener.document.SearchForm.Chld2.value = dc.Chld2.value;\n");
		else OpenWindow.document.write("  opener.document.SearchForm.Chld2.value = '';\n");

		OpenWindow.document.write("  opener.document.SearchForm.submit();\n")
		OpenWindow.document.write("  window.close()\n")
		OpenWindow.document.write("}\n")
		OpenWindow.document.write("</SCRIPT></HEAD>\n")

		OpenWindow.document.write("<BODY BGCOLOR='#ccffcc'>\n")
		OpenWindow.document.write("<CENTER>")
		OpenWindow.document.write("<form name='SearchFormm'>\n")
		OpenWindow.document.write("<b>Укажите возраст ребенка:</b>&nbsp;&nbsp;&nbsp;<input name=Chld1 type=text size=2 value='' maxlength=2><br><br>\n")

		if (CldID != "5" && CldID != "7") {
			OpenWindow.document.write("<b>Укажите возраст второго ребенка:</b>&nbsp;&nbsp;&nbsp;<input name=Chld2 type=text size=2 value='' maxlength=2><br><br>\n")
		}

		OpenWindow.document.write("<input type=button class=button value=' Выбор ' onClick='proc_form();' style='font-family: Verdana,Arial,sans-serif; color: #000000; border-style: solid; border-color: #639E73; width: 140px; background: #8CD79C'><br>&nbsp;\n")
		OpenWindow.document.write("</form></BODY></HTML>")
		self.name = "main window";
		//	fitem.submit();
		return (true);
	}
}

function SetDefaults() { /* Set default option in select group */ }

var calendar_i = null;
function set_calendar_param(d, m, y, x)
{
	//  var f1=document.SearchForm1;
	//---007--------
	if (d < 10) d = "0" + d;
	if (m < 10) m = "0" + m;
	//----007-------
	if (x) { document.getElementById("dateEND").value = d + "." + m + "." + y; }
	else { document.getElementById("dateST").value = d + "." + m + "." + y; }
	var obj = GetObj("calendar_block");
	if (obj != null) {
		ShowObj(obj, 0);
		calendar_i = null;
	}
}
var calendarN = 0;
function init_calendar(n, x) {
    calendarN = x;
	var bname = x ? "edate_block" : "sdate_block";
	var bobj = GetObj(bname);
	var obj = GetObj("calendar_block");
	if (bobj != null && obj != null) {
		if (n == null && x == calendar_i && IsShowObj(obj)) {
			ShowObj(obj, 0);
			calendar_i = null;
		}
		else {
			if (n == null) n = 0;
			MoveTo(obj, PageX(bobj), PageY(bobj) + (PageH(bobj) || 22) + 1);
			WriteTo(obj, draw_calendar(n, x, 1));
			ShowObj(obj, 1);
			calendar_i = x;
		}
	}
	else open_calendar(n, x);
	
}

