
function show_buy_form(id)
{
var tt = $("#zakaz_div_"+id).css('display');
if (tt == 'none')
	{
	$(".zakaz_div").slideUp('slow');
	$(".result_main_buy").slideUp('slow');
	//$("#zakaz_div"+id).slideDown('slow');

	$("#zakaz_div_"+id).slideDown('slow');
	$("#main_buy_text_"+id).focus();
	}
else
	{
	back_buy_form(id);
	}

}

function back_buy_form(id)
{
$(".zakaz_div").slideUp('slow');
$(".result_main_buy").slideUp('slow');
//$("#main_buy_one"+id).slideDown('slow'); //css('display', 'none')
}








var xmlHttp = createXmlHttpRequestObject();


function buy_good(id)
{
	if (xmlHttp.readyState == 4 || xmlHttp.readyState == 0)
	{
	var fio = urlencode($("#fio_buy_text_"+id).val()); //urlencode
	var tel = urlencode($("#tel_buy_text_"+id).val()); 
	var info = urlencode($("#main_buy_text_"+id).val());
	var name = urlencode($("#name_buy_text_"+id).val());

	xmlHttp.open("GET", "js/quickstart_pm.php?id=" + id + "&fio=" + fio + "&tel=" + tel + "&info=" + info + "&name=" + name, true);
	xmlHttp.onreadystatechange = handleServerResponse;
	xmlHttp.send(null);
	}
	else
	setTimeout("buy_good(" + id + ")", 1000);
}


function handleServerResponse()
{
	if (xmlHttp.readyState == 4)
	{
		if (xmlHttp.status == 200)
		{
		xmlResponse = xmlHttp.responseXML;
		xmlDocumentElement = xmlResponse.documentElement;

		var id = getNodeText(xmlDocumentElement.getElementsByTagName('id')[0]);
		var rez = getNodeText(xmlDocumentElement.getElementsByTagName('rez')[0]);

		myfunc(id, rez);
		}
		else
		{
		alert("Виникла проблема доступа до сервера: " +
		xmlHttp.statusText);
		}
	}
}







function myfunc(id, rez)
{
var id = urldecode(id);
var rez = urldecode(rez);	//urldecode

if (rez == 'yes')
	{
	back_buy_form(id);
	$("#result_main_buy_"+id).html('Ваш заказ принят').css('display', 'block');
	}
else
	{
	back_buy_form(id);
	$("#result_main_buy_"+id).html('Произошла техническоя ошибка. Приносим наши извинения. Свяжитесь с Нами по телефону 044-592-88-08 или 098-567-24-58.').css('font', 'normal 13px').css('color', 'red').css('display', 'block');
	}
}
































function createXmlHttpRequestObject()
{
	var xmlHttp;
	if(window.ActiveXObject)
		{
		try
			{
			xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
			}
		catch (e)
			{
			xmlHttp = false;
			}
		}
	else
		{
		try
			{
			xmlHttp = new XMLHttpRequest();
			}
		catch (e)
			{
			xmlHttp = false;
			}
		}

	if (!xmlHttp)
	alert("Помилка створення XMLHttpRequest обєкта.");
	else
	return xmlHttp;
}

function getNodeText(xmlNode)
{
     if(!xmlNode)
        return '';
     if(typeof(xmlNode.textContent) != 'undefined')
        return xmlNode.textContent;
     return xmlNode.firstChild.nodeValue;
}

function check_return(vall)
{
	var rez;

	enc_var = encodeURIComponent(vall);
	if (enc_var.substr(0, 3)=='%0A')
		rez = vall.substr(1, vall.length);
	else
		rez = vall;

return rez;
}






function urlencode(str) 
	{
	str = str_replace(str, '%', '%_');
	str = encodeURIComponent(encodeURIComponent(str));

    var histogram = {}, tmp_arr = [];   
    var ret = str.toString();   
       
    var replacer = function(search, replace, str) {   
        var tmp_arr = [];   
        tmp_arr = str.split(search);   
        return tmp_arr.join(replace);   
    };   
       
    // The histogram is identical to the one in urldecode.   
    histogram["'"]   = '%27';   
    histogram['(']   = '%28';   
    histogram[')']   = '%29';   
    histogram['*']   = '%2A';   
    histogram['~']   = '%7E';   
    histogram['!']   = '%21';   
    histogram['%20'] = '+';   
       
    // Begin with encodeURIComponent, which most resembles PHP's encoding functions   
    ret = encodeURIComponent(ret);   
       
    for (search in histogram) {   
        replace = histogram[search];   
        ret = replacer(search, replace, ret) // Custom replace. No regexing   
    }   
       
    // Uppercase for full PHP compatibility   
    return ret.replace(/(\%([a-z0-9]{2}))/g, function(full, m1, m2) {   
        return "%"+m2.toUpperCase();   
    });   
       
    return ret;   
	}   

function urldecode( str ) 
	{   
    var histogram = {};   
    var ret = str.toString();   
       
    var replacer = function(search, replace, str) {   
        var tmp_arr = [];   
        tmp_arr = str.split(search);   
        return tmp_arr.join(replace);   
    };   
       
    // The histogram is identical to the one in urlencode.   
    histogram["'"]   = '%27';   
    histogram['(']   = '%28';   
    histogram[')']   = '%29';   
    histogram['*']   = '%2A';   
    histogram['~']   = '%7E';   
    histogram['!']   = '%21';   
    histogram['%20'] = '+';   
  
    for (replace in histogram) {   
        search = histogram[replace]; // Switch order when decoding   
        ret = replacer(search, replace, ret) // Custom replace. No regexing      
    }   
       
    // End with decodeURIComponent, which most resembles PHP's encoding functions   
    ret = decodeURIComponent(ret);   
  
    return ret;
	}   
















































/////////////////////////////////////// БРАУЗЕРИ /////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////////////////////

function brouser_type()		// визначити тип браузера
{
var nav = /a/[-1]=='a'?'FF':'\v'=='v'?'IE':/a/.__proto__=='//'?'Saf':/s/.test(/a/.toString)?'Chr':'Op';

if (nav == 'IE')
	var rez = 'ie';
else if (nav == 'FF')
	var rez = 'ff';
else if (nav == 'Op')
	var rez = 'op';
else if (nav == 'Saf')
	var rez = 'saf';
else if (nav == 'Chr')
	var rez = 'chr';
else
	var rez = 'oth';

return rez;
}


function brauser_val(a1, a2, a3, a4, a5, a6) // визначити якесь значення в залежності від типу браузера
{

var nav = /a/[-1]=='a'?'FF':'\v'=='v'?'IE':/a/.__proto__=='//'?'Saf':/s/.test(/a/.toString)?'Chr':'Op';

if (nav == 'Op')
	var rez = a1;
else if (nav == 'IE')
	var rez = a2;
else if (nav == 'Chr')
	var rez = a3;
else if (nav == 'Saf')
	var rez = a4;
else if (nav == 'FF')
	var rez = a5;
else
	var rez = a6;

return rez;
}
/////////////////////

// Одинарні функції під кожен браузер
function b_t_op()
{
var useragent = brouser_type();
if (useragent == 'op') return true;
else return false;
}
function b_t_ie()
{
var useragent = brouser_type();
if (useragent == 'ie') return true;
else return false;
}
function b_t_ff()
{
var useragent = brouser_type();
if (useragent == 'ff') return true;
else return false;
}
function b_t_saf()
{
var useragent = brouser_type();
if (useragent == 'saf') return true;
else return false;
}
function b_t_chr()
{
var useragent = brouser_type();
if (useragent == 'chr') return true;
else return false;
}
/////////////////////


///////////////////////////////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////////////////////////////




/////////////////////////////////////// СТРОКИ ///////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////////////////////

function trim(string) // обрізати пробєли по краям
{
return string.replace(/(^\s+)|(\s+$)/g, "");
}

function str_replace(string, find, replace) // замість str_replace в php
		{ 
		var temp = string.split(find); 
		return temp.join(replace); 
		} 

function nl2br(string) // замість nl2br в php
		{ 
		var temp = string.split('\n'); 
		return temp.join('<br>'); 
		} 

///////////////////////////////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////////////////////////////










/////////////////////////////////////// ВИВЕСТИ //////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////////////////////

function help_error(div, msg)		// вставити їнформацію в якийсь дів по результату якоїсь операції
{
$("#"+div).html(""+msg+"");
$("#"+div).fadeTo('fast', 1);
setTimeout("$('#"+div+"').fadeTo('slow', 0.3);", 3000);
setTimeout("$('#"+div+"').fadeTo('slow', 0);", 6000);
}

///////////////////////////////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////////////////////////////









/////////////////////////////////////// URL //////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////////////////////

function reload_page()	// перезагрузити сторінку
{
	var href = window.location.href;
	window.location.href = href;	
}

function get_url_val(what, href) // отримати значення з url (як $_GET['what'] в php)
{
if (href == 'referer') var href = window.location.href;

var keys = new Array();
var vals = new Array();
var parts = new Array();
var rez;

var main_arr = href.split('?');
if (main_arr[1] !== undefined)
	{
	var amp_arr = main_arr[1].split('&');
	for (var i=0; i<amp_arr.length; i++)
		{
		parts[i] = amp_arr[i].split('=');
		keys[i] = parts[i][0];
		vals[i] = parts[i][1];

		if (keys[i] == what) rez = vals[i];
		}
	if (rez === undefined)	rez = 'no\&val';
	}
else 
	rez = 'no\&vals';

return rez;
}



function replace_url_val(what, val, href) // вставити або замінити, якщо не знайдено, значення в url (what - назвa змiнної url, val - значення what)
{
if (href == 'referer') var href = window.location.href;
var val_find = get_url_val(what, href);

var rez;
var find = what + '=' + val_find;
var replace = what + '=' + val;

if (val_find == 'no\&vals')
	rez = href + '?' + what + '=' + val;
else if (val_find == 'no\&val')
	rez = href + '&' + what + '=' + val;
else
	rez = href.replace(find, replace);

return rez;
}


function delete_url_val(what, href) // видалити занчення what з url
{
if (href == 'referer') var href = window.location.href;
var val_find = get_url_val(what, href);

var find_rez, repl, rez;
if (val_find != 'no\&val' && val_find != 'no\&vals')
	{
	var find = what + '=' + val_find;
	var pos = href.indexOf(find);
	var find_len = find.length;
	
	var amp = href.substr(pos+find_len, 1);
	var question_char = href.substr(pos-1, 1);
	
	if (question_char == '?' && amp == '&')
		{
		find_rez = '?' + what + '=' + val_find + '&';
		repl = '?';
		}
	else if (question_char == '?' && amp != '&')
		{
		find_rez = '?' + what + '=' + val_find;
		repl = '';
		}
	else
		{
		find_rez = '&' + find ;
		repl = '';
		}

	rez = href.replace(find_rez, repl);
	}
else
	rez = href;

return rez;
}

///////////////////////////////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////////////////////////////















function admin_menu()	// зробити активну силку адмінки червоною
{
var http = window.location.href;

var pos = Number(http.search("part=")) + 5;
var end = http.search("&");
if (end == -1)
	var end_pos = http.length;
else
	var end_pos = end;
var rez = http.substring(pos, end_pos);

$("#admin_menu a[href='?part=" + rez + "']").css("color", "red");
}

function admin_table_area()	// визначити ширині div-а admin_body
{
	var w = Number($(window).width())-250;
	$('#admin_table_area').css('width', w);	
}




function make_today_date()   // зробити сьогоднішню дату 04.09.09		на php еквівалент ->	$date_time = date("d.m.y");
{
var date = new Date();
var day = String(date.getDate());
if (day.length < 2) {day = '0'+day;}
var mon = String(Number(date.getMonth())+1);
if (mon.length < 2) {mon = '0'+mon;}
var year = String(date.getYear());
year = year.substr(2, 2);
var full_date = day+'.'+mon+'.'+year;

return full_date;
}





function textarea_limiter(fild, size) // обрізати довжину вводу символів в textarea (  onKeyUp="textarea_limiter(this,30);"  )
	 {
      if (fild.value.length > size) 
          fild.value = fild.value.substring(0, size);
     }





function array_pop (array) 
	{
    var key = '', cnt = 0;
 
    if (array.hasOwnProperty('length')) {
        // Indexed
        if (!array.length){
            // Done popping, are we?
            return null;
        }
        return array.pop();
    } else {
        // Associative
        for (key in array) {
            cnt++;
        }
        if (cnt) {
            delete(array[key]);
            return array[key];
        } else {
            return null;
        }
    }
	}




function in_array (needle, haystack, argStrict) {
    var key = '', strict = !!argStrict;
 
    if (strict) {
        for (key in haystack) {
            if (haystack[key] === needle) {
                return true;
            }
        }
    } else {
        for (key in haystack) {
            if (haystack[key] == needle) {
                return true;
            }
        }
    }
 
    return false;
}





function array_reverse( array, preserve_keys ) {    
 
    var arr_len=array.length, newkey=0, tmp_ar = {}
 
    for(var key in array){
        newkey=arr_len-key-1;
        tmp_ar[(!!preserve_keys)?newkey:key]=array[newkey];
    }
 
    return tmp_ar;
}