﻿var ajax_cursor_html = '<img src="' + SitePath + 'img/hour-glass.gif" width="25" height="25" alt="Подождите...">';
var ajax_wait_message = 'Пожалуйста, подождите, пока загрузятся данные с сервера.';
var ajax_cursor_class_name = 'hour-glass';
var cursor_x_shift = -12;
var cursor_y_shift = -12;

function ProcessCommonRequest(uri, container, callback) {
	if (container) {
		var event = 
			function (result) {
				container.innerHTML = result;
                if (window.startAccordion) startAccordion();
				if (callback) callback();
			} // end event
		HttpRequest(SitePath + uri, null, 'common', event);
	} // end if
	return false;
} // end function

function LoadPage(uri, id) {
	var div = document.getElementById(id);
	if (div) {
		var event = 
			function (result) {
				div.innerHTML = result;
                if (window.startAccordion) startAccordion();
			} // end event
		HttpRequest(SitePath + uri, null, id, event);
	} // end if
	return false;
} // end function

function StandardAjaxAction(form, ajaxUrl, ajaxId, div, alertOnSuccess) {
	var data = '';
	if (form) {
	    var frm = form.elements;
	    for (i = 0; i < frm.length; i++) 
	    {
		    var element = frm[i];
		    if (element.name == "") continue;
		    if ((element.type) && (element.type == 'password') &&
		        (element.defaultValue) && (element.defaultValue == element.value) )
		        element.value = '';
 		    data += element.name + '=' + 
 		        (((element.defaultValue) && (element.defaultValue == element.value)) ?
 		        '' : encodeURIComponent(element.value)) + 
 		        '&';
	    }		    
	}	
	var event = 
		function (result) {
		    var root = XmlRootByText(result);
		    var returnCode = GetXmlNodeValue(GetXmlNodeByTagName(root, 'Result'));
		    if (alertOnSuccess || (returnCode != '0'))
    	        alert(GetXmlNodeValue(GetXmlNodeByTagName(root, 'ErrorMessage')));
		    if (returnCode == '0') {
		        var successEvent = GetXmlNodeValue(GetXmlNodeByTagName(root, 'SuccessEvent'));
    	        if (successEvent != '') eval(successEvent);
    	        if (div) div.innerHTML = GetXmlNodeValue(GetXmlNodeByTagName(root, 'HtmlContent'));
		    };
		} // end event
	HttpRequest(SitePath + ajaxUrl, data, ajaxId, event);		
	return false;
} // end function

function CheckSearchForm(form) {
    if (form.Query.onfocus) form.Query.onfocus();
    return (form.Query.value == '') ? false : true;
} // end function

function CheckGoodsSearchForm(form) {
    if (form.Name.onfocus) form.Name.onfocus();
    if (form.Article.onfocus) form.Article.onfocus();
    if ((form.GroupID.value != '') || (form.UsageAreaID.value != '') || (form.BrandID.value != '') ||
        (form.Name.value != '') || (form.Article.value != ''))
        return true;
    return false;
} // end function

function ProcessArticleSearchForm(form) {
    var container = document.getElementById('articles-container');
    if (container) {
        var from = form.DateFrom.value;
        var to = form.DateTo.value;
		var event = 
			function (result) {
				container.innerHTML = result;
			} // end event
		HttpRequest(SitePath + 'Ajax/GetArticlesPage.aspx?DateFrom=' + escape(from) + '&DateTo=' + escape(to), null, 'search', event);
        return false;
    } else {
        return true;
    } // end if
} // end function

function MemberTypeChanged(select) {
    var type = select.value;
    var nodes = select.parentNode.parentNode.getElementsByTagName('LI');
    for (var i = 1; i < nodes.length - 1; i++) {
        nodes[i].style.display = ((type != '') && ((nodes[i].className == 'all') || (nodes[i].className.indexOf(type) >= 0))) ? 'list-item' : 'none';
    } // end for
} // end function

function ProcessLogout() {
	var event = 
		function (result) {
			var root = XmlRootByText(result);
			var url = GetXmlNodeValue(GetXmlNodeByTagName(root, 'url'));
			window.location.href = url;
		} // end event
	HttpRequest(SitePath + 'Ajax/ProcessLogout.aspx', null, 'auth', event);
    return false;
} // end function
