// JavaScript Document

//1
function changeCountryHandler()
{
	document.AddressForm.submit();
}



//2
function _categoryChangedHandler()
{
	if (document.AdvancedSearchInCategory.categorySelect.value != 0)
	window.location = 'index.php?categoryID=' + 
		document.AdvancedSearchInCategory.categorySelect.value +
		'&search_with_change_category_ability=yes';
}



//3
function _formatPrice( _price )
{	
			
	_pointIndex = -1;	
	for( i=0; i< _price.length; i++ )
		if ( _price.charAt(i) == '.' )
		{
			_pointIndex = i;
			break;
		}

	if (  _pointIndex == -1 )
		_price = _price + ".00";
	else if (  _price.length-1 - _pointIndex == 1  )
		_price = _price + "0";

	_res = "";

	i=0;
	for( i=_price.length-1; i >= 0; i-- )
	{
		if ( _price.charAt(i) == '.' )
			break;
		else
			_res = _price.charAt(i) + _res;
	}

	_res = "." + _res;

	i--;
	_digitCounter = 0;
	for( ; i>=0; i-- )
	{
		_digitCounter ++;
		_res = _price.charAt(i) + _res;
		if ( _digitCounter == 3 && i != 0 )
		{
			_res = "," + _res;
			_digitCounter = 0;
		}
				
	}

	return _res;						
			
}



//4
<!--

//  Установка глобальных переменных.
cm=null;                    // сюда будем запоминать 
                                // видимый слой. Начальное 
                               // значение - null.
hide_delay=500;       // Время задержки (в м.с.) авто-закр.
                              // меню. 
tstat=0;                  // Признак активности таймера авто-закр.

// Определяем браузер пользователя
isNS4 = (document.layers) ? true : false;
isIE4 = (document.all && !document.getElementById) ? true : false;
isIE5 = (document.all && document.getElementById) ? true : false;
isNS6 = (!document.all && document.getElementById) ? true : false;

// Функция отображающая и скрывающая слои
// Вход:
// objElement - идентификатор(id) слоя;
// bolVisible - булева переменная:
// true  - отобразить слой;
// false - скрыть слой.
// Выход:
// 1
// P.S: В зависимости от типа браузера
// сценарий для манипуляции с видимостью слоёв
// несколько различается.
function switchDiv(objElement,bolVisible){
if(isNS4||isIE4){
     if(!bolVisible) {
       objElement.visibility ="hidden"
     } else {
       objElement.visibility ="visible"
     }     
 } else if (isIE5 || isNS6) {
      if(!bolVisible){
         objElement.style.display = "none";
      } else {
        objElement.style.display = "";
        }
      }
return 1;
}

// Функция возвращающая значение указанного ей 
// свойства объекта (не обязательно слоя).
// Вход:
// el    - идентификатор элемента;
// sProp - свойство (left,top...)
// Выход:
// Значение какого-нибудь свойства объекта.
function getPos(el,sProp) {
var iPos = 0;
while (el!=null) {
iPos+=el["offset" + sProp]
el = el.offsetParent
}
return iPos
}

// Функция выдаёт объект с указанным
// ей названием.
// Вход:
// myid - название объекта
// Выход: объект.
function getelementbyid(myid) {
   if (isNS4){
        objElement = document.layers[myid];
     }else if (isIE4) {
        objElement = document.all[myid];
     }else if (isIE5 || isNS6) {
             objElement = document.getElementById(myid);
     }
return(objElement);
}

// Функция отображающая|скрывающая
// ,а предварительно ещё и передвигающая
// должным образом слои.
// Вход:
// el - яйчейка таблицы на которой 
// находится указатель;
// m  - наименование слоя, который надо
// отобразить под этой яйчейкой.
function show(el,m) {
// Если имеется видимый слой,
// сделать его невидимым.
 if (cm!=null) {
 switchDiv(cm,false);
 }
// Если указано название слоя для отображения,
// то:
// 1) Получаем его объект;
// 2) X слоя = X яйчейки;
// 3) Y слоя = Y яйчейки + высота яйчейки;
// 4) Делаем слой видимым;
// 5) Сохраняем копию слоя в cm.  
 if (m!=null) {
 m=getelementbyid(m);
 m.style.left = getPos(el,"Left")+"px";
 m.style.top =  getPos(el,"Top")+el.offsetHeight+"px";
 switchDiv(m,true);
 cm=m;
 }
}

// Функция "закрывающая" меню.
// Функция ничего не принимает на вход
// и возвращает 1.
function hidemenu() {
// Устанавливаем задержку равную 
// hide_delay м.с. с помощью таймера; 
timer1=setTimeout("show(null,null)",hide_delay);
// Устанавливаем tstat=1 - признак, того, что таймер запущен.
tstat=1;
return 1;
}

// Функция, останавливающая таймер запущенный
// прошлой функцией. Таким образом,
// меню не пропадает.

// Функция ничего не принимает на вход
// и возвращает 1.

function cancelhide() {
 if (tstat==1) {
 clearTimeout(timer1);
 tstat=0;
 }
return 1;
}
//-->



//5
function _changeCurrency()
{
	document.ChangeCurrencyForm.submit();
}



//6
function PacketIntoHiddenValue2()
{
	str = '';
	for(i=0; i<ComparedProducts2.length; i++)
		str += ComparedProducts2[i] + ' ';
	document.ComparisonForm2.ComparisonHidden2.value = str;

	if ( str != '' )
		document.ComparisonForm2.submit();
}



//7
function PacketIntoHiddenValue1()
{
	str = '';
	for(i=0; i<ComparedProducts1.length; i++)
		str += ComparedProducts1[i] + ' ';
	document.ComparisonForm1.ComparisonHidden1.value = str;

	if ( str != '' )
		document.ComparisonForm1.submit();
		
}



//8
function MM_jumpMenu(targ,selObj,restore){ //v3.0
  eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");
  if (restore) selObj.selectedIndex=0;
}

function open_window(link,w,h) //http://www.needit.ru
{
	var win = "width="+w+",height="+h+",menubar=no,location=no,resizable=yes,scrollbars=yes";
	newWin = window.open(link,'newWin',win);
	newWin.focus();
}

function open_printable_version(link) //http://www.needit.ru
{
	var win = "menubar=no,location=no,resizable=yes,scrollbars=yes";
	newWin = window.open(link,'perintableWin',win);
	newWin.focus();
}

function confirmDelete(id, ask, url) //http://www.needit.ru
{
	temp = window.confirm(ask);
	if (temp) //delete
	{
		window.location=url+id;
	}
}



//9
function _formatPrice( _price )
{	

	_pointIndex = -1;	
	for( i=0; i< _price.length; i++ )
		if ( _price.charAt(i) == '.' )
		{
			_pointIndex = i;
			break;
		}

	if (  _pointIndex == -1 )
		_price = _price + ".00";
	else if (  _price.length-1 - _pointIndex == 1  )
		_price = _price + "0";

	_res = "";

	i=0;
	for( i=_price.length-1; i >= 0; i-- )
	{
		if ( _price.charAt(i) == '.' )
			break;
		else
			_res = _price.charAt(i) + _res;
	}

	_res = "." + _res;

	i--;
	_digitCounter = 0;
	for( ; i>=0; i-- )
	{
		_digitCounter ++;
		_res = _price.charAt(i) + _res;
		if ( _digitCounter == 3 && i != 0 )
		{
			_res = "," + _res;
			_digitCounter = 0;
		}					
	}
	return _price;										
	//return _res;										
}



//10

