// JavaScript Document
if (typeof window.ActiveXObject != 'undefined' ) {
	http = new ActiveXObject("Microsoft.XMLHTTP");
}
else {
	http = new XMLHttpRequest();
}

function change_group(){
	var id = document.getElementById('groups');
	var group_id = id.options[id.selectedIndex].value;
	var fo_services =  document.getElementById('fo_services');
	
	_show_form('?s_id='+group_id, null, fo_services);

	return false;
}

function change_proc(){
	var id = document.getElementById('procs');
	var group_id = id.options[id.selectedIndex].value;
	var fo_procs =  document.getElementById('fo_procs');
	
	_show_form('?p_id='+group_id, null, fo_procs);

	return false;
}


function change_master(id){
    _show_form('?m_id='+id, null, null);
}

function change_salon(id){
	var main = document.getElementById('main');
	main.innerHtml = "<i>Загрузка...</i>";
    _show_form('?b_id='+id, null, main);
}
function http_request(url, form){
	if(form) {
		//alert(form.length);
		var data="";
		var i,j;
		var rigth_count = 0
		for (i=0; i<form.elements.length; i++) {
			//alert(form.elements[i].name);
			if ((form.elements[i].name!='')&&(form.elements[i].name!='undefined')){
				rigth_count++;
			}
		}
		//alert('right_count = '+rigth_count);
		j=0
		for (i=0; i<form.elements.length; i++) {
			var v;
			v=form.elements[i].value;

			try {
				if (form.elements[i].type=='checkbox') {
					if(! form.elements[i].checked) v="0";
				 }
			} catch(E) {
				;
			}
			if (v == undefined){v=""}
			if ((form.elements[i].name!='')&&(form.elements[i].name!='undefined')){
				data += form.elements[i].name + "=" + encode(v);
				if (j<rigth_count-1){data += "&"}
				j++;
			}
		}
		//data+="&random="+Math.random();
		//alert(data);
		http.open("POST", url , false);
		http.setRequestHeader("Content-type", "application/x-www-form-urlencoded;charset=utf-8");
		http.send(data)
	} else {
		http.open("GET", url+"&random="+Math.random(), false);
		if (typeof window.ActiveXObject != 'undefined' ) {
			http.send();
		}else{
			http.send(null);
		}
	}
	return http.responseText;
}

function _show_form(url, frm, dst) {
	var a = http_request(url, frm);
	if(dst) {
		dst.innerHTML=a;
	}
}

var no_hide_message = false;
var timer_hide_message = 0;

function show_message(text){
	document.getElementById("idMessageText").innerHTML=text;
	document.getElementById("idMessage").style.display="block";
}

function show_message(text, caption){
	document.getElementById("idMessageText").innerHTML=text;
	document.getElementById("idMessageCaption").innerText=caption;
	document.getElementById("idMessage").style.display="block";
}

function show_message(text, caption, type, second){
	document.getElementById("idMessageText").innerHTML=text;
	document.getElementById("idMessageCaption").innerText=caption;
	document.getElementById("idMessageHeader").className="header_"+type;
	document.getElementById("idMessageImg").src="i/"+type+"_small.gif";
	document.getElementById("idMessage").style.display="block";
	
	if (second){
		clearTimeout(timer_hide_message);
		timer_hide_message = setTimeout('hide_message()',5000);
	}
}

function hide_message(){
	if (!no_hide_message){
		clearTimeout(timer_hide_message);
		document.getElementById("idMessage").style.display="none";
	}
}

function my_onLoad(){

}

var glCodePage="win1251";

function encode(str) {
	return encodeURIComponent(str);

	var rus='__';
	var koi8=new Array('ca','c3','d5','cb','c5','ce','c7','db','dd','da','c8','df','a3','c6','d9','d7','c1','d0','d2','cf','cc','c4','d6','dc','d1','de','d3','cd','c9','d4','d8','c2','c0','ea','e3','f5','eb','e5','ee','e7','fb','fd','fa','e8','ff','b3','e6','f9','f7','e1','f0','f2','ef','ec','e4','f6','fc','f1','fe','f3','ed','e9','f4','f8','e2','e0');
	var win1251= new Array('e9','f6','f3','ea','e5','ed','e3','f8','f9','e7','f5','fa','b8','f4','fb','e2','e0','ef','f0','ee','eb','e4','e6','fd','ff','f7','f1','ec','e8','f2','fc','e1','fe','c9','d6','d3','ca','c5','cd','c3','d8','d9','c7','d5','da','a8','d4','db', 'c2','c0','cf','d0','ce','cb','c4','c6','dd','df','d7','d1','cc','c8','d2','dc', 'c1','de');
	var len=str.length;
	var res="";
	var i=0;
	for (i=0;i<len;i++) {
		var ch=str.substr(i,1);

		if (str.charCodeAt(i) < 128) {
			res=res+encodeURIComponent(ch);
		} else {
			var idx=rus.indexOf(ch);
			if(idx>=0) {
				if(glCodePage=="koi8") {
					res=res+'%'+(koi8[idx]);
				} else if(glCodePage=="win1251") {
					res=res+'%'+(win1251[idx]);
				} else {
					res=res+encodeURIComponent(ch);
				}
			}
		}
	}
	return res;
}


function uploadUserFoto(id){
  var r = Math.random();
  var result = window.showModalDialog("?action=uploadUserPhotoFrame&id="+id+"&r="+r, null, "dialogWidth:320px;dialogHeight:400px;resizable:yes");
  if (result){
    foWizard.btFavoritesParametersClicked.value=1;
    foWizard.btFavoritesParameters.value=id;
    return true;
  }
  return false;
}

/**
 * attachFile -  
 *
 * @param id_text -    
 * @param id_input -      
 * @param catalog -   
 */
function attachFile(id_text, id_input, temp_dir, catalog){
  var r = Math.random();
  var result = window.showModalDialog("?action=attach_file_frame&temp_dir="+encode(temp_dir.value)+"&catalog="+encode(catalog)+"&r="+r, temp_dir, "dialogWidth:320px;dialogHeight:400px;resizable:yes");
  if (result){
    id_input.value=result;
    _show_form("?action=attach_file_info&id_files="+result,null,id_text);
    return true;
  }
  return false;
}

function deleteObject(id){
  if (confirm("?")){
    _show_form("?action=delete&id="+id,null,document.getElementById('main'))
  }
}

// Та+>и+а

var sort_case_sensitive = false; // _и_ ___'и___ки (__и_'__за_и_и_<й и>и _')

// "-+и_, _п__>__%а_ а>___и'_ ___'и___ки
function _sort(a, b) {
    var a = a[0];
    var b = b[0];
    if (Number(a) && Number(b)) return sort_numbers(a, b);
    else if (!sort_case_sensitive) return sort_insensitive(a, b);
    else return sort_sensitive(a, b);
}

// "-+и_ ___'и___ки +и_>
function sort_numbers(a, b) {
    return a - b;
}

// "-+и_ __и_'___за_и_и__й ___'и___ки
function sort_insensitive(a, b) {
    var anew = a.toLowerCase();
    var bnew = b.toLowerCase();
    if (anew < bnew) return -1;
    if (anew > bnew) return 1;
    return 0;
}

// "-+и_ __и_'__за_и_и__й ___'и___ки
function sort_sensitive(a, b) {
    if (a < b) return -1;
    if (a > b) return 1;
    return 0;
}

// __п____а'>__а_ "-+и_, _<_и_а_%а_ из __+__и: _з>__ ___ 'к_'
function getConcatenedTextContent(node) {
    var _result = "";
    if (node == null) {
        return _result;
    }
    var childrens = node.childNodes;
    var i = 0;
    while (i < childrens.length) {
        var child = childrens.item(i);
        switch (child.nodeType) {
            case 1: // ELEMENT_NODE
            case 5: // ENTITY_REFERENCE_NODE
                _result += getConcatenedTextContent(child);
                break;
            case 3: // TEXT_NODE
            case 2: // ATTRIBUTE_NODE
            case 4: // CDATA_SECTION_NODE
                _result += child.nodeValue;
                break;
            case 6: // ENTITY_NODE
            case 7: // PROCESSING_INSTRUCTION_NODE
            case 8: // COMMENT_NODE
            case 9: // DOCUMENT_NODE
            case 10: // DOCUMENT_TYPE_NODE
            case 11: // DOCUMENT_FRAGMENT_NODE
            case 12: // NOTATION_NODE
            // skip
            break;
        }
        i++;
    }
    return _result;
}

// __'_ _к_ип'а
function sort(e) {
    var el = window.event ? window.event.srcElement : e.currentTarget;
    while (el.tagName != "TH") el = el.parentNode;
    var a = new Array();
    var name = el.lastChild.nodeValue;
    var dad = el.parentNode;
    var table = dad.parentNode.parentNode;
    var up = table.up;
	var img_dir = "theme/";
    var node, arrow, curcol;
    for (var i = 0; (node = dad.getElementsByTagName("th").item(i)); i++) {
        if (node.lastChild.nodeValue == name){
            curcol = i;
            if (node.className == "curcol"){
                arrow = node.firstChild;
                table.up = Number(!up);
                arrow.src = img_dir + table.up + ".gif";
                arrow.alt = "";
				arrow.align="absmiddle";

            }else{
                node.className = "curcol";
                arrow = node.insertBefore(document.createElement("img"),node.firstChild);
                table.up = 0;
                arrow.src = img_dir + Number(table.up) + ".gif";
                arrow.alt = "";
				arrow.align="absmiddle";
				
            }
        }else{
            if (node.className == "curcol"){
                node.className = "";
                if (node.firstChild) node.removeChild(node.firstChild);
            }
        }
    }
    var tbody = table.getElementsByTagName("tbody").item(0);
    for (var i = 0; (node = tbody.getElementsByTagName("tr").item(i)); i++) {
        a[i] = new Array();
        a[i][0] = getConcatenedTextContent(node.getElementsByTagName("td").item(curcol));
        a[i][1] = getConcatenedTextContent(node.getElementsByTagName("td").item(1));
        a[i][2] = getConcatenedTextContent(node.getElementsByTagName("td").item(0));
        a[i][3] = node;
    }
    a.sort(_sort);
    if (table.up) a.reverse();
    for (var i = 0; i < a.length; i++) {
        tbody.appendChild(a[i][3]);
    }
}

function OnOver(x) {
	x.style.backgroundColor = '#FFEBCD';
	x.style.cursor = 'pointer';
}

function OnOut(x) {
	x.style.backgroundColor= '#FFFFFF';
}

function EnterTab(event) {
	if(event.keyCode==13) event.keyCode=9;
}

function validate_int(event){
	if ((event.keyCode<48)||(event.keyCode>57)) event.keyCode=0;
}

function validate_float(event, value){
	if (event.keyCode==44) event.keyCode=46;
	str = new String(value);
	if ((str.lastIndexOf(".")!=-1)&&(event.keyCode==46)) return 0;//event.keyCode=0;
	if ((event.keyCode<46)||(event.keyCode>57)||(event.keyCode==47)) return 0;//keyCode=0;
}

function find_and_focus(find){
	id = document.getElementById(find);
	
	if (id){
		id.focus();
	}else{
		alert(find +' - не найдено');
	}
}

function switch_tab(id, value){
	
	document.getElementById('tab_switch_'+id).value=value;
	for (i=0; i<10; i++){
		elem = document.getElementById('tab_item_'+id+'_'+i);
		if (!elem) break;
		elem.style.display = (i==value)?'block':'none';
		elem = document.getElementById('tab_caption_'+id+'_'+i);
		elem.className = (i==value)?'tab_active':'tab_passive';
	}
}
