/** DRENte © 2009 **/

/** Simple tip **/
function show_tip(text) {
	Tip(text, SHADOW, false, BORDERCOLOR, '#B7B7B7', BORDERWIDTH, 1, BGCOLOR, '#FAFAF8', WIDTH, -1);
}
function show_window(title, text) {
	Tip(text, CLOSEBTN, false, CLOSEBTNTEXT, 'x', SHADOW, false, BORDERCOLOR, '#98f256', BORDERWIDTH, 1, BGCOLOR, '#f3ffea', WIDTH, -300, STICKY, true, PADDING, 10, CENTERWINDOW, true, CENTERALWAYS, true);
}

function get_http(){
    var xmlhttp;
    /*@cc_on
    @if (@_jscript_version >= 5)
        try {
            xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
        } catch (e) {
            try {
                xmlhttp = new
                ActiveXObject("Microsoft.XMLHTTP");
            } catch (E) {
                xmlhttp = false;
            }
        }
    @else
        xmlhttp = false;
    @end @*/
    if (!xmlhttp && typeof XMLHttpRequest != 'undefined') {
        try {
            xmlhttp = new XMLHttpRequest();
        } catch (e) {
            xmlhttp = false;
        }
    }
    return xmlhttp;
}

/** Ajax **/
function drente_ajax(fileway, select_id, data, value, fill_type) {
	this.http = get_http();
	this.working = false;
	var url = '/_lib/ajax/' + fileway;
	if (!this.working && this.http) {
	   	var http = this.http;
	    url = url + '?';
	    var arr_data = data.split('::');
	    var arr_value = value.split('::');
	    for(i=0; i<arr_data.length; i=i+1) {
        	url = url + arr_data[i] + '=';
        	if(arr_value[i]) url = url + encodeURIComponent(arr_value[i]);
        	url = url + '&';
    	}
		this.http.open("GET", url, true);
	    this.http.onreadystatechange = function() {
			if (http.readyState == 4) {
        	   	if (fill_type == 'select') fill_select(select_id, http.responseText);
        	   	else fill(select_id, http.responseText, fill_type);
                this.working = false;
	        }
    	}
        this.working = true;
	    this.http.send(null);
	}
	if(!this.http) {
    	alert('Ошибка при создании XMLHTTP объекта!')
	}
}
function fill (select_id, data, fill_type) {
	var insert = document.getElementById(select_id);
	if (fill_type == 'input') insert.value = data;
    else if (fill_type == 'window') show_window('DREN', data);
    else if (fill_type == 'return') errors(data);
    else insert.innerHTML = data;
}
function fill_select (select_id, data) {
	if (data) {
		var select = document.getElementById(select_id);
    	select.options.length = 0;
    	if(data.length == 0) return;
    	var arr = data.split('--|--');
    	for(var i=0; i<arr.length; i++) {
        	val = arr[i].split('---');
        	select.options[select.options.length]=new Option(val[1], val[0], false, false);
		}
	}
}

/** Check form **/
function check(data) {
	var value = '';
	var arr_data = data.split('::');
	for(i=0; i<=arr_data.length-1; i=i+1) {
    	value = value + document.getElementById(arr_data[i]).value + '::';
    }
    drente_ajax('check.php', 'drax', data, value, 'return');
}
function errors(data) {
	if (data == '') document.forms.mail.submit();
	else {
		var arr_data = data.split('::');
		for(i=0; i<arr_data.length; i=i+2) {
    		document.getElementById(arr_data[i]).setAttribute('style', 'background-color:#fff0f0');
    		document.getElementById('e'+arr_data[i]).innerHTML = arr_data[i+1];
    	}
    }
}
function done(id) {
	document.getElementById(id).setAttribute('style', '');
	document.getElementById('e'+id).innerHTML = '';
}