function changeClass(objName, newClass)
{
    obj=MM_findObj(objName);
	if(obj)
    obj.className = newClass;
}


function changeImage(obj, newImage)
{
    obj.src = newImage;
}


function back()
{
    location.replace=window.history.go(-1);
}


function clearField(obj, defaultVal)
{
    if (obj.value == defaultVal) {
        obj.value = '';
    }
}


function MM_findObj(n, d) { //v4.01
  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=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}


function setHeight()
{
	var arguments = setHeight.arguments;
	if (navigator.appName == 'Netscape') {
		diff = 0;
	} else {
		diff = 0;
	}
	max = 0;
	for(i = 0; i < arguments.length; i++) {
		top_position = getXYcoord(arguments[i] + '_top');
		bottom_position = getXYcoord(arguments[i] + '_bottom');
		height = bottom_position.y - top_position.y;
		if (height > max) {
			max = height;
		}
	}

	for(i = 0; i < arguments.length; i++) {
		document.getElementById(arguments[i]).height = max - diff;
		document.getElementById(arguments[i]).style.height = max - diff;
	}
}


function getXYcoord ( nvn )
{
	var elm = document.images[nvn];
	if ( document.layers ) return elm;
	var rd = { x:0 ,y:0 };
	do {rd.x += parseInt( elm.offsetLeft );
        rd.y += parseInt( elm.offsetTop );
        elm = elm.offsetParent;
	} while ( elm );
	return rd;
}

function jump(form, select) {
    var myindex=select.selectedIndex
    if (select.options[myindex].value != "0")
    {
        form.submit();
    }
}

function changeTab (tabBoxId, tabIndex)
{
	var cDivs = document.getElementById (tabBoxId).getElementsByTagName ('div');
	var cDDs = document.getElementById (tabBoxId).getElementsByTagName ('dd');

	//	change data
	for (i = 0; i < cDivs.length; i++)
	{
		if (cDivs[i].id.indexOf ('TabsData') >= 0)
			cDivs[i].style.display = (cDivs[i].id == tabBoxId + 'TabsData' + tabIndex) ? 'block' : 'none';
	}

	//	change tab
	for (i = 0; i < cDDs.length; i++)
	{
		cDDs[i].className = (cDDs[i].id.indexOf ('TabsTitle' + tabIndex) >= 0) ? "sel" : "";
	}
}

function showHideDiv (obj, id, title1, title2)
{
	el = document.getElementById (id);
	if (el) {
		if (el.style.display == 'none') {
			el.style.display = 'block';
			obj.innerHTML = title1;
		} else {
			el.style.display = 'none';
			obj.innerHTML = title2;
		}
	}
}

function getCalc (cal) {
	prefix = cal.params.inputField.name.substring (0, cal.params.inputField.name.indexOf ("date"));

	dateTo = document.getElementById (prefix + "date_to");
	datePartsT = dateTo.value.split (".");
	cmpDateTo = "" + datePartsT[2] + datePartsT[1] + datePartsT[0];

	dateFrom = document.getElementById (prefix + "date_from");
	datePartsF = dateFrom.value.split (".");
	cmpDateFrom = "" + datePartsF[2] + datePartsF[1] + datePartsF[0];

	if (cmpDateFrom > cmpDateTo) {
		if (cal.params.inputField.name.indexOf ("date_from") > -1) {
			dateFrom.value = dateTo.value;
		} else {
			var date = cal.date;
			var time = date.getTime();
			time -= Date.WEEK;
			var date2 = new Date(time);
			dateFrom.value = date2.print("%d.%m.%Y");
			//dateTo.value = dateFrom.value;
		}
	}
}

function fillChildSelect (id, child_id, optArray, sel)
{
	try {
		var el = document.getElementById(child_id);
		el.length = 0;
//		el.options[0] = new Option ('vse', 0);

		cnt = 0;
		for (key in optArray[id]) {
			el.options[cnt] = new Option (optArray[id][key], key);

			if (key == sel) {
				el.selectedIndex = cnt;
			}

			cnt++;
		}
	} catch (e) {
		return false;
	}
}