
function doLoad() {
    JsHttpRequest.query(
        't_simple_loader.php',
        { q: document.getElementById('text').value },
        function(responseJS, responseText) {
            // This function is called on data ready (readyState=4).
            // Write result to page element ($_RESULT become responseJS).
            document.getElementById('result').innerHTML =
                '<b>MD5("'+responseJS.q+'")</b> = ' +
                '"' + responseJS.md5 + '"<br> ';
            // Write debug information too (output become responseText).
            document.getElementById('debug').innerHTML = responseText;
        },
        true // true = disable caching
    );
}

function clearSelect(oSelect) {
	oSelect.innerHTML = '';
}

function addToSelect(oSelect, name, value) {
	if(!oSelect.options) {
		oSelect = document.getElementById(oSelect);
	}

	if(oSelect.options) {
		var oOption = document.createElement("OPTION");
		oSelect.options.add(oOption);
		oOption.innerHTML = name;
		oOption.value = value;
	}
}

function fillSelect(oSelect, data) {
	var item;
	if(oSelect&&data) {
		var m = data.split('\n');
		for(i=0;i<m.length;i++) {
			item = m[i].split('\t');
			if(item.length==2) addToSelect(oSelect, item[0], item[1]);
		}
	}
}

function mod(elementid, mod, place, param) {
	var e = document.getElementById(elementid);
    e.innerHTML = 'подождите...';

	JsHttpRequest.query(
        'ajax/mod.php',
        { mod: mod, place: place, param: param },
        function(responseJS, responseText) {
        	var e = document.getElementById(elementid);
        	if(responseText) alert(responseText);
            e.innerHTML = responseJS.data;
        },
        true
    );
}

function hidemain() {
	document.getElementById('mainplace').style.visibility='hidden';
}

function getFormField(form, m_post) {
	var e = null;

	if(form)
	for(var i=0;i<form.childNodes.length;i++) {
		e = form.childNodes[i];

		if(e.getAttribute && e.name) {
			if(e.type == 'checkbox') {
				if(e.checked) m_post[e.name] = e.value;
			}
			if(e.type == 'radio') {
				if(e.checked) m_post[e.name] = e.value;
			} else {
				m_post[e.name] = e.value;
			}
		}
		m_post = getFormField(e, m_post);
	}

	return m_post;
}

function ajaxSendForm(form) {
	if(contentid) {
		return testForm(form);
	} else {
		if(testForm(form)) {
			var url = form.getAttribute('action');
			var m_post = getFormField(form, { });

			document.getElementById('mainplace').style.visibility='hidden';

		    JsHttpRequest.query(
		        '/index.php',
		        {url: url, post: m_post},
		        function(responseJS, responseText) {
		        	if(responseText) {
		        		eval(responseText);
		        		return 0;
		        	}

		            var html = responseJS.html;
					if(html) {
						document.getElementById('mainplace').innerHTML = html;
						document.getElementById('mainplace').style.visibility='';
					}

					var place = responseJS.place;
					if(place && place instanceof Object) {
						for (var key in place) {
							var val = place[key];
							if(val instanceof Function) continue;
							document.getElementById(key).innerHTML = val;
						}
					}

					var ajaxeval = responseJS.ajaxeval;
					if(ajaxeval && ajaxeval instanceof Object) {
						for (var key in ajaxeval) {
							var val = ajaxeval[key];
							if(val instanceof Function) continue;
							eval(val);
						}
					}
		        },
		        true
		    );

			return false;
		} else return false;
	}
}

function ajaxgo(url) {
	document.getElementById('mainplace').style.visibility='hidden';

    JsHttpRequest.query(
        '/index.php',
        { url: url },
        function(responseJS, responseText) {
        	if(responseText) {
        		eval(responseText);
        		return 0;
        	}

            var html = responseJS.html;
			if(html) {
				document.getElementById('mainplace').innerHTML = html;
				document.getElementById('mainplace').style.visibility='';
			}

			var place = responseJS.place;
			if(place && place instanceof Object) {
				for (var key in place) {
					var val = place[key];
					if(val instanceof Function) continue;
					document.getElementById(key).innerHTML = val;
				}
			}

			var ajaxeval = responseJS.ajaxeval;
			if(ajaxeval && ajaxeval instanceof Object) {
				for (var key in ajaxeval) {
					var val = ajaxeval[key];
					if(val instanceof Function) continue;
					eval(val);
				}
			}
        },
        true
    );
}

var flag_flashsearch_key = Array();
var flag_flashsearch_time = Array();

function flashsearch_key(field, type) {
	var str = document.getElementById(field).value;
	if(str.length > 2) {
		flag_flashsearch_key[field] = 1;
		if(!flag_flashsearch_time[field]) flashsearch_time(field, type);
	}
}

function flashsearch_time(field, type) {
	if(flag_flashsearch_key[field]) {
		flag_flashsearch_time[field] = 1;
		flag_flashsearch_key[field] = 0;
		setTimeout("flashsearch_time('" + field + "', '" + type + "')", 300);
	} else {
		flag_flashsearch_time[field] = 0;
		flashsearch(field, type);
	}
}

function flashsearch(field, type) {
	var str = document.getElementById(field).value;

    JsHttpRequest.query(
        'ajax/flashsearch.php',
        { type: type, str: str },
        function(responseJS, responseText) {
        	if(responseText) {
        		alert(responseText);
        		return 0;
			}
			
        	if(responseJS.res!=0) {
        		var flashsearch = document.getElementById('flashsearch');
				if(flashsearch) {
					var e = document.getElementById(field);
					if(!e) return 0;
					
					var y = e.offsetTop;
					var x = e.offsetLeft;
					
					var ii = e.offsetParent;
					
					while(ii.tagName!='BODY') {
						y += ii.offsetTop;
						x += ii.offsetLeft;
						ii = ii.offsetParent;
					}
					
					y += e.offsetHeight;
					
					flashsearch.style.top = y + 'px';
					flashsearch.style.left = x + 'px';
					flashsearch.style.width = e.offsetWidth + 'px';
					flashsearch.style.height = '10px';

					flashsearch.innerHTML = '';
					for(i=0;i<responseJS.res.length;i++) {
						if(responseJS.res[i][2]) flashsearch.innerHTML += '<div class="flashsearch"><a href="#" onclick="document.getElementById(\'' + field + '\').value=\'' + responseJS.res[i][1] + '\';document.getElementById(\'' + field + '_id\').value=\'' + responseJS.res[i][0] + '\';document.getElementById(\'flashsearch\').style.display=\'none\';return false;">' + responseJS.res[i][2] + '</a></div>';
					}
					flashsearch.innerHTML += '<div class="flashsearch_bottom"><a href="" onclick="document.getElementById(\'flashsearch\').style.display=\'none\';return false;">закрыть</a></div>';
					flashsearch.style.display = '';
				}
        	} else {
				var flashsearch = document.getElementById('flashsearch');
				if(flashsearch) {
					flashsearch.style.display = 'none';
				}
        	}
        },
        false
    );
}
