function open_printable_version(link) // opens new window
{
	var win = "menubar=no,location=no,resizable=yes,scrollbars=yes";
	newWin = window.open(link, 'printableWin', win);
	if(newWin){newWin.focus();}
}

function confirmUnsubscribe() // unsubscription confirmation
{

	temp = window.confirm(translate.cnfrm_unsubscribe);
	if (temp) // delete
	{
		window.location = "index.php?killuser=yes";
	}

}

function validate() // newsletter subscription form validation
{
	if (document.subscription_form.email.value.length < 1) {
		alert(translate.err_input_email);
		return false;
	}
	if (document.subscription_form.email.value == 'Email') {
		alert(translate.err_input_email);
		return false;
	}
	return true;
}
function validate_disc() // review form verification
{
	if (document.formD.nick.value.length < 1) {
		alert(translate.err_input_nickname);
		return false;
	}

	if (document.formD.topic.value.length < 1) {
		alert(translate.err_input_message_subject);
		return false;
	}

	return true;
}
function validate_search() {

	if (document.Sform.price1.value != ""
			&& ((document.Sform.price1.value < 0) || isNaN(document.Sform.price1.value))) {
		alert(translate.err_input_price);
		return false;
	}
	if (document.Sform.price2.value != ""
			&& ((document.Sform.price2.value < 0) || isNaN(document.Sform.price2.value))) {
		alert(translate.err_input_price);
		return false;
	}

	return true;
}

function validate_input_digit(e) {
	var keynum;
	var keychar;
	var numcheck;
	try {
		if (window.event) // IE
		{
			keynum = window.event.keyCode;
		} else if (e.which) // Netscape/Firefox/Opera
		{
			keynum = e.which;
		}
	} catch (exception) {
		alert(exception.message);
	}

	keynum = parseInt(keynum);
	if (keynum == 13)
		return false;// ignore Enter
	if (keynum >= 33 && keynum <= 40)
		return true;// skip navigation buttons
	if (keynum == 8)
		return true;// skip backspace
	if (keynum == 17)
		return true;// skip ctrl
	if (keynum == 45)
		return true;// skip insert
	if (keynum == 46)
		return true;// skip delete
	if (keynum >= 96 && keynum <= 105) {
		keynum -= 48;
	}
	keychar = String.fromCharCode(keynum);
	// alert('char '+keychar+'\n code '+keynum);
	numcheck = /\d/;
	return numcheck.test(keychar);
	var res = numcheck.test(keychar);
	// if(!res)alert('char '+keychar+'\n code '+keynum);
	return res;
}

Behaviour.register({

	'input.input_message' : function(e) {

		e.onfocus = function() {

			this.className = this.className.replace(/input_message/, '')
					+ ' input_message_focus';

			var value = this.getAttribute('rel');
			if(!value){
				value = this.getAttribute('title');
			}
			if (this.value != value)
				return;
			this.value = '';
		}

		e.onblur = function() {
			if (this.value != '')
				return;
			this.className = this.className.replace(/input_message_focus/, '')
					+ ' input_message';
			var value = this.getAttribute('rel');
			if(!value){
				value = this.getAttribute('title');
			}
			this.value = value;
		}
	},
	'.add2cart_handler' : function(element) {

		element.onclick = function() {

			var objForm = getFormByElem(this);
			if (!objForm)
				return true;

			var r_productParam = getElementsByClass('product_option', objForm);

			var query = '';
			for (var i = r_productParam.length - 1; i >= 0; i--) {

				//if (!parseInt(r_productParam[i].value))
				//	continue;

				if (r_productParam[i].name)
					query += '&' + r_productParam[i].name + '='
							+ r_productParam[i].value;
			}

			var r_productQty = getElementByClass('product_qty', objForm);
			if (r_productQty) {
				r_productQty = parseInt(r_productQty.value);
				if (r_productQty > 1) {
					query += '&product_qty=' + r_productQty;
				}
			}

			var url = ORIG_LANG_URL
					+ set_query('?ukey=cart&view=noframe&action=add_product&'
									+ query + '&productID='
									+ objForm.getAttribute('rel'), '');

			openFadeIFrame(url);
			return false;
		}
	},
	/*'.product_option' : function(e) {
		e.onchange = function() {
			var objForm = getFormByElem(this);
			if (!objForm)
				return true;

			var r_productParam = getElementsByClass('product_option', objForm);
			var price = parseFloat(getElementByClass('product_price', objForm).value);
			var list_price = 0;
			var obj = getElementByClass('product_list_price', objForm);
			if (obj)
				list_price = parseFloat(obj.value);

			for (var i = r_productParam.length - 1; i >= 0; i--) {

				var option = select_getCurrOption(r_productParam[i]);
				if (!option)
					continue;

				price += parseFloat(option.getAttribute('rel'));
				list_price += parseFloat(option.getAttribute('rel'));
			}

			getElementByClass('totalPrice', objForm).innerHTML = formatPrice(price);
			var obj = getElementByClass('regularPrice', objForm);
			if (obj)
				obj.innerHTML = formatPrice(list_price);
			var obj = getElementByClass('youSavePrice', objForm);
			if (obj)
				obj.innerHTML = formatPrice(list_price - price)
						+ ' ('
						+ Math
								.round((list_price - price) / list_price * 100,
										2) + '%)';
		}
	},    */
	'.product_option' : function(e) {
		e.onchange = function() {
			var objForm = getFormByElem(this);
			if (!objForm)
				return true;

			var r_productParam = getElementsByClass('product_option', objForm);
			var price = parseFloat(getElementByClass('product_price', objForm).value);
			var list_price = 0;
           // alert(this.getAttribute('new_rel')+'---');

           if(this.getAttribute('selectid')==1)
           {

           productID =  this.getAttribute('productID');

            array_opt = document.getElementById('array_opt_'+productID).value;
            new_rel = this.getAttribute('new_rel');
           //получил оба ID по for прошел и получил нужные


			var opt1 = array_opt.split('_'); // => массив ["a","b","c"

            var var_cnt =[];
            var other_value =[];
			for(var i=0; i<opt1.length; i++)
			{
              var_cnt[opt1[i]] = document.getElementById('hidden_option_'+productID+'_'+opt1[i]).value;
             // alert('number_'+productID+'_'+opt1[i]+'   '+document.getElementById('number_'+productID+'_'+opt1[i]).value);
              other_value[opt1[i]] = document.getElementById('number_'+productID+'_'+opt1[i]).value;

               document.getElementById('number_'+productID+'_'+opt1[i]).disabled="disabled";
			}

            document.getElementById('ajax_loader').style.display="inline";



    		var req = new JsHttpRequest();
    		req.onreadystatechange = function()
    		{
        	if (req.readyState != 4)return;


           for(var p in req.responseJS.test) {
			if (!req.responseJS.test.hasOwnProperty(p)) continue;
			alert(p+'--'+req.responseJS.test[p]+"\n");
			}


           document.getElementById('ajax_loader').style.display="none";

           for(var i=0; i<opt1.length; i++)
			{
              document.getElementById('number_'+productID+'_'+opt1[i]).disabled="";

			}
              //alert(req.responseJS.test);
           document.getElementById('param_line_'+productID).value=req.responseJS.select_var['variantID'];
           //document.getElementById('param_line').rel=req.responseJS.select_var['price_surplus'];
           document.getElementById('param_line_'+productID).setAttribute("rel",req.responseJS.select_var['price_surplus']);

          //  document.getElementById('params_17').innerHTML='';

            for(var i=0; i<opt1.length; i++)
			{

               if(new_rel!=opt1[i])
               {
                    var option_ = document.getElementById('number_'+productID+'_'+opt1[i]);
                    option_.length = 0;

                     var objFormSelect = objForm.getElementsByTagName('select')[i];
					// var objFormOption = objFormSelect.getElementsByTagName('option')[0];
					// objFormOption.setAttribute("selected","");



                    var temp = req.responseJS.id[opt1[i]];
                    for(var z=0; z<temp.length; z++)
                    {
                    if(req.responseJS.this_id!='')
                    {
                    if(z==0)temp[z].isSelected = 'selected';
                    else temp[z].isSelected='';
                   }

                    option_.options[z] = new Option(temp[z].text, temp[z].value, temp[z].isSelected, temp[z].isSelected);
                    var objFormOption = option_.getElementsByTagName('option')[z];
                    objFormOption.setAttribute("rel","0");
                   // if(temp[z].isSelected==1) objFormOption.setAttribute("selected","selected");

					}


                   //var newOpt = new Option("text", "value", isDefaultSelected, isSelected);
               	  //  document.getElementById('number_'+productID+'_'+opt1[i]).innerHTML = req.responseJS.id[opt1[i]];


               }


			}


            if(req.responseJS.this_id!='')
           {
                var option_ = document.getElementById('number_'+productID+'_'+new_rel);
                    option_.length = 0;

                     var objFormSelect = objForm.getElementsByTagName('select')[0];
					// var objFormOption = objFormSelect.getElementsByTagName('option')[0];
					// objFormOption.setAttribute("selected","");

                    var temp = req.responseJS.this_id;
                    for(var z=0; z<temp.length; z++)
                    {
		  			//alert(temp[z].isSelected);
		  			//if(z==0)temp[z].isSelected = 'selected';
                   // else temp[z].isSelected='';

                    option_.options[z] = new Option(temp[z].text, temp[z].value, temp[z].isSelected, temp[z].isSelected);
                    var objFormOption = option_.getElementsByTagName('option')[z];
                    objFormOption.setAttribute("rel","0");

					}

            	//document.getElementById('number_'+productID+'_'+new_rel).innerHTML = req.responseJS.this_id;

            	// document.getElementById('add2cart_id_'+productID).disabled="disabled";
            	if(document.getElementById('hidden_product_detailed').value==1)
            	{
                                                                                           //weight
                 document.getElementById('in_stock').innerHTML = 'Не определено';
                 document.getElementById('weight_param').innerHTML = 'Не определено';
            	}
            }
            else
            {
                //document.getElementById('add2cart_id_'+productID).disabled="";
                if(document.getElementById('hidden_product_detailed').value==1 && document.getElementById('in_stock'))
            	{
                  document.getElementById('in_stock').innerHTML = req.responseJS.select_var['in_stock'];
            	}

            	if(document.getElementById('hidden_product_detailed').value==1 && document.getElementById('weight_param'))
            	{
                   document.getElementById('weight_param').innerHTML = req.responseJS.select_var['weight'];
            	}

            }



            var r_productParam = getElementsByClass('product_option', objForm);
			var obj = getElementByClass('product_list_price', objForm);
			if (obj)
				list_price = parseFloat(obj.value);

			for (var i = r_productParam.length - 1; i >= 0; i--) {


                if(r_productParam[i].options)
            	{
            	var option = select_getCurrOption(r_productParam[i]);
            	}
            	else
            	{
            	var option = select_getCurrOption_val(r_productParam[i]);
            	}

				if (!option)
					continue;

				price += parseFloat(option.getAttribute('rel'));
				list_price += parseFloat(option.getAttribute('rel'));
			}

			getElementByClass('totalPrice', objForm).innerHTML = formatPrice(price);
			var obj = getElementByClass('regularPrice', objForm);
			if (obj)
				obj.innerHTML = formatPrice(list_price);
			var obj = getElementByClass('youSavePrice', objForm);
			if (obj)
				obj.innerHTML = formatPrice(list_price - price)
						+ ' ('
						+ Math
								.round((list_price - price) / list_price * 100,
										2) + '%)';

	    };
    	try
    	{
    	// var_cnt     порядковый модуль   (ключи - номера optionID)
        //other_value  значения селектов   (ключи - номера optionID)
        /*        for(var p in other_value) {
			if (!other_value.hasOwnProperty(p)) continue;
			alert(p+'--'+other_value[p]+"\n");
			}     */
        req.open(null, set_query('&ukey=cart&caller=1&initscript=ajaxservice'), true);
        req.send({'action': 'update_params','optionID':new_rel,'var_cnt':var_cnt,'other_value':other_value,'productID':productID});
    	}
    	catch ( e )
    	{
      	catchResult(e);
    	}
    	finally { ;}




           }

            else
            {
            	 var r_productParam = getElementsByClass('product_option', objForm);
			var obj = getElementByClass('product_list_price', objForm);
			if (obj)
				list_price = parseFloat(obj.value);

			for (var i = r_productParam.length - 1; i >= 0; i--) {


                if(r_productParam[i].options)
            	{
            	var option = select_getCurrOption(r_productParam[i]);
            	}
            	else
            	{
            	var option = select_getCurrOption_val(r_productParam[i]);
            	}

				if (!option)
					continue;

				price += parseFloat(option.getAttribute('rel'));
				list_price += parseFloat(option.getAttribute('rel'));
			}

			getElementByClass('totalPrice', objForm).innerHTML = formatPrice(price);
			var obj = getElementByClass('regularPrice', objForm);
			if (obj)
				obj.innerHTML = formatPrice(list_price);
			var obj = getElementByClass('youSavePrice', objForm);
			if (obj)
				obj.innerHTML = formatPrice(list_price - price)
						+ ' ('
						+ Math
								.round((list_price - price) / list_price * 100,
										2) + '%)';

            }




		}
	},
	'.hndl_proceed_checkout' : function(e) {
		e.onclick = function() {
			openFadeIFrame(ORIG_LANG_URL + set_query('?ukey=cart&view=noframe'));
			return false;
		}
	},
	'input.goto' : function(e) {
		e.onclick = function() {
			if (this.className.search(/confirm/) !== -1
					&& !window.confirm(this.getAttribute('title')))
				return
			document.location.href = this.getAttribute('rel');
		}
	},
	'.gofromfade' : function(e) {
		e.onclick = function() {

			parent.document.location.href = this.href;
			parent.closeFadeIFrame();
			return false;
		}
	},
	'input.digit' : function(e) {
		e.onkeydown = function(event) {
			return validate_input_digit(event);
		}
	}
});

Behaviour.addLoadEvent(function() {
/*
	var totalPrices = getElementsByClass('totalPrice');
	for (var k = totalPrices.length - 1; k >= 0; k--) {

		var objForm = getFormByElem(totalPrices[k]);
		if (!objForm)
			continue;;

		var r_productParam = getElementsByClass('product_option', objForm);
		var price = parseFloat(getElementByClass('product_price', objForm).value);
		var list_price = 0;
		var obj = getElementByClass('product_list_price', objForm);
		if (obj)
			list_price = parseFloat(obj.value);

		for (var i = r_productParam.length - 1; i >= 0; i--) {


             if(r_productParam[i].options)
            {
            var option = select_getCurrOption(r_productParam[i]);
            }
            else
            {
            var option = select_getCurrOption_val(r_productParam[i]);
            }
			if (!option)continue;



			price += parseFloat(option.getAttribute('rel'));
			list_price += parseFloat(option.getAttribute('rel'));
		}
		totalPrices[k].innerHTML = formatPrice(price);
		var obj = getElementByClass('regularPrice', objForm);
		if (obj)
			obj.innerHTML = formatPrice(list_price);
		var obj = getElementByClass('youSavePrice', objForm);
		if (obj)
			obj.innerHTML = formatPrice(list_price - price) + ' ('
					+ Math.round((list_price - price) / list_price * 100, 2)
					+ '%)';
	}

*/
});
