hintsDOM = (document.getElementById) ? true:false;
hintsNN4 = (document.layers) ? true: false;
hintsIE = (document.all) ? true: false;
hintsIE4 = hintsIE && !hintsDOM;
function DUMP(obj, objName,num)
{
	var result = "";
	if (!num) num=0;
	num++;

	if (num==3) return " <b>#$#</b> <br>";
    for (var i in obj) // обращение к свойствам объекта по индексу
    {
        result += objName + "." + i + " = " + obj[i];
        //if (typeof(obj[i])=='object')   result +=DUMP(obj.obj[i], objName+':'+obj.obj[i],num)
        result += "<br />\n";
    }
    if (num==1)
    {
    	q=window.open("","disp","toolbar=no,scrollbars=yes");
		q.document.write("<hr>");
		q.document.write(result);
    }
    else
    	return result;
}
function openshortfunction(cmd,subcmd)
{
	window.name='main';
	if (subcmd==undefined) subcmd='';
	fakewindow=window.open("/shortfunction/"+cmd+"/"+subcmd,'fakeoff',"scrollbars=yes");
}
function oncitych(val)
{
	if (DefEmpID[val]!=0)
	{
		if (DefEmpID[val]!=fform.AccManager.value)
		{
			r=confirm('За выбранный город отвечает другой менеджер. Нажмите OK, чтобы назначить клиенту другого менеджера.');
			if (r) fform.AccManager.value=DefEmpID[val];
		}
	}
	if (DefAmadeusOfficeID[val]!=0)
	{
		if (DefAmadeusOfficeID[val]!=fform.AmadeusRepresentative.value) $flag=1;
		{
			r=confirm('За выбранный город отвечает другое представительство. Нажмите ОК, чтобы приписать клиента к другому представительству.');
			if (r) fform.AmadeusRepresentative.value=DefAmadeusOfficeID[val];
		}
	}
}
function confirmation($val)
{
	switch ($val)
	{
	case 'Logoff': return confirm('Вы действительно желаете выйти из системы?');
	case 1: return confirm('Вы действительно желаете добавить новый Office-Id?');
	case 2: return confirm('Вы действительно желаете переместить выбранный Office-Id в другой офис продаж?');
	case 3: return confirm('Вы действительно желаете пропустить этот этап?');
	case 4: return confirm('Вы действительно желаете отменить выполнение предыдущего этапа и вернуться к нему? Это действие необратимо.');
	case 5: return confirm('Вы действительно желаете отключить выбранный терминал?\nЕсли да - подтвердите Ваш выбор в полном списке терминалов этого Office-Id.');
	case 6: return confirm('Вы действительно желаете изменить статус заявки?');
	case 7: return confirm('Вы действительно желаете отключить выбранный терминал? Это действие необратимо.');
	case 8: return confirm('Вы действительно желаете удалить выбранный офис продаж? Это действие необратимо.');
	case 9: return confirm('Вы действительно желаете удалить выбранный терминал? Это действие необратимо.');
	case 10: return confirm('Вы действительно желаете удалить выбранный Office-Id? Это действие необратимо.');

	case 11: return confirm('Вы действительно желаете отправить логин и пароль на адреc '+fform.RegMailX.value+'? Нажмите на кнопку OK, чтобы отправить сообщение.');
	case 12: return confirm('Вы действительно желаете удалить терминалы? Это действие необратимо.');
	case 13: return confirm('Вы действительно желаете отменить отключение терминала? Это действие необратимо.');
	case 14: return confirm('Внимание!\nЗаявку на новый CID можно отправлять, только если терминал переустанавливается на другой компьютер или на компьютере была переустановлена операционная система, удалён терминал и т.п.\nЗаявку на новый CID не следует отправлять для работающего терминала, так как это приведёт к прекращению его работы (по наступлению следующего календарного часа).');
	case 15: return confirm('Вы действительно желаете отменить выбранную заявку? Это действие необратимо.');
	case 16: return confirm('Вы действительно желаете передать Office-Id другому клиенту?');

	case 20: return confirm('Вы действительно хотите удалить выбранный Office-Id со всеми терминалами Amadeus?');
	case 21: return confirm('Вы действительно хотите переместить выбранные терминалы Amadeus?');
	case 22: return confirm('Вы действительно хотите отключить выбранные терминалы Amadeus?');
	case 24: return confirm('Вы действительно желаете отменить отключение терминалов? Это действие необратимо.');
	case 25: return confirm('Вы действительно желаете изменить продукт у выбранных терминалов Amadeus?');
	case 26: return confirm('Вы действительно желаете отменить изменение продукта?');

	case 27: return confirm('Вы действительно желаете отменить заявку?');
	case 30: return confirm('Внимание!\nЗаявку на новый CID можно отправлять в тех случаях, когда принтер переустанавливается на другой компьютер или на компьютере была переустановлена ОС и в т.п. случаях.\nНовый CID принтера позволит установить и настроить новый логический принтер (ProPrinter), но это не приведёт к автоматическому прекращению работы старого.\nЧтобы избежать конфликтов, проследите, чтобы после установки нового принтера старый не оставался работоспособным!');

	case 32: return confirm('Вы действительно желаете удалить этот счёт?');
	case 40: return confirm('По данным MyAmadeus Office-Id '+myRow.cells[1].innerText+' и так не заблокирован!\nВы действительно хотите создать заявку на разблокирование?');
	case 41: return confirm('Блокирование Office-Id приведет к неработоспособности всех его терминалов!\nВы действительно желаете временно заблокировать Office-Id '+myRow.cells[1].innerText+'?');
	case 42: return confirm('По данным MyAmadeus Office-Id '+myRow.cells[1].innerText+' уже заблокирован!\nВы действительно хотите создать заявку на блокирование?');
	case 43: return confirm('Вы действительно желаете удалить эту оплату?');
	default: return 0;
	}
}
function ShowHideDIVs(name,visible)
{
	var o=document.getElementById(name);
	if (visible==0)	o.style.visibility='hidden';
	if (visible==1)	o.style.visibility='visible';
	if (visible=='a')
	{
		if (o.style.visibility=='visible')
			o.style.visibility='hidden';
		else
			o.style.visibility='visible';
	}
}
function ShowHideTrs(name,visible)
{
	for (var j = 0; (tr = document.getElementsByTagName("tr").item(j)); j++)
	{
		if (tr.name==name)
		{
			if (visible==0) tr.style.display="none";
			if (visible==1) tr.style.display="block";
			if (visible=='a')
			{
				if  (tr.style.display=="block") tr.style.display="none";
				else tr.style.display="block";
			}
		}
	}
}
function getElementPosition(elemId)
{
    var elem = document.getElementById(elemId);

    var w = elem.offsetWidth;
    var h = elem.offsetHeight;

    var l = 0;
    var t = 0;

    while (elem)
    {
        l += elem.offsetLeft;
        t += elem.offsetTop;
        elem = elem.offsetParent;
    }
    return {"left":l, "top":t, "width": w, "height":h};
}
//function if (testquotaform(this,fform)) fform.submit();
function testquotaform(button,fform)
{
	for (var j = 0; (textarea = document.getElementsByTagName("textarea").item(j)); j++)
	if (textarea.name=='QCT_TEXT')
	{
		if(textarea.value)
		{
			alert('В заявке есть несохранённый комментарий. Добавьте сначала комментарий.');
			button.disabled=false;
			return false;
		}
	}
	return true;
}
function SetValuesToFormElementsByAssocArray(array,dumps)
{
	var prop='';
	for (var prop in array)
	{
		var tmp;
		tmp=document.all(prop);
		if (tmp!==null)
		{
			//if (dd==1) alert(prop+' '+tmp.type);
			switch (tmp.type)
			{
				case 'select-one':
					tmp.value=array[prop];
					break;
				case 'hidden':
					tmp.value=array[prop];
					break;
				case 'radio':
					tmp.checked=true;
					tmp.onclick();
					break;
				default:
					tmp.value=array[prop];
					break;
			}
		}//if !null
	}
}
function SetEmptyValuesToFormElements(fields)
{
	var prop='';
	for (var prop in fields)
	{
		var tmp;
		tmp=document.all(prop);
		if (tmp!==null)
		{
			//if (dd==1) alert(prop+' '+tmp.type);
			switch (tmp.type)
			{
			case 'select-one':
				tmp.value='';
				break;
			case 'hidden':
				tmp.value='';
				break;
			case 'radio':
				tmp.checked=false;
				break;
			default:
				tmp.value='';
			}
		}
	}
}
function ObjectByName(Name)
{
	return document.getElementsByName(Name).item(0);
}
function SaveValuesFormElementsToAssocArray(Elements)
{
	var ToArray=new Array();

	var prop='';
	for (var prop in Elements)
	{
		var tmp;
		tmp=document.all(prop);
		if (tmp!==null)
		{
			switch (tmp.type)
			{
			case 'select-one':
				ToArray[prop]=tmp.value;
				break;
			case 'hidden':
				ToArray[prop]=tmp.value;
				break;
			case 'radio':
				if (tmp.checked==true) ToArray[prop]=1;
				break;
			default:
				ToArray[prop]=tmp.value;
			}
		}
	}
	return ToArray;
}
