
var errorDialogCount = 0;
var successDialogCount = 0;
var infobuttonCount = 0;

function isArray(obj) {
    if (obj.constructor.toString().indexOf("Array") == -1)
       return false;
    else
       return true;
}
function getDataParser(data,type,javacallback,addid) {
	if (data.substring(0,6) == "json[[") {
		data = 	data.substring(4);
		var receivedData = $.parseJSON(data);
		for (var key in receivedData) {
			if (receivedData[key][0] == "error") {throwError(receivedData[key][1]);}
			if (receivedData[key][0] == "success") {throwSuccess(receivedData[key][1]);}
			if (receivedData[key][0] == "dialog") {var param = receivedData[key][1]}
			if (receivedData[key][0] == "content") {var content = receivedData[key][1];	}
		}
		if (content != null) {
			//alert(content);
			var out = new Array();
			out[0] = content;
			out[1] = param;
			switch (type) {
				case "dialog" :	
					var dialogParam = out[1];
					for (var key in dialogParam) {
						eval ("var defwindow"+key+" = dialogParam[key];");
					}
					makeAndLoadWindow('dialog'+addid, 'dialog', defwindowwidth, defwindowheight, defwindowshadow, defwindowopacity, "",'',defwindowtop,defwindowleft,defwindowCSS,defwindowcloseButton, defwindowautoScroll, out[0]);
				break;
				case "place" :		
					$("#place").html(out[0]);
					break;
				case "body" :
					$("body").html(out[0]);
					break;
				case "error" :
					var javaPlaceContent = $("#javaPlace").html();
					$("#javaPlace").html(javaPlaceContent+out[0]);
					break;
				default : alert(out[0]);
					break;
			}
		}
		
	}
	else {
		throwError(data);
	}
	
}
function getData(url,type,javacallback,addid,postData) {
	if (type=="place") url="/query.php?page="+url;
	if (type=="dialog") url="/query.php?dialog="+url;
	if (type=="body") url="/query.php?getbody="+url;
	if (type=="error") url="/query.php?error="+url;
	if (javacallback==true) url+="&javacallback=true";
	if (!addid) addid = "";
	
	if ( typeof(postData) != "undefined") {
 	    $.ajax({type: "POST", url: url, data: postData, success: function (data) {  getDataParser(data,type,javacallback,addid); } });
	}
	else {
		$.get(url,function(data){
						   getDataParser(data,type,javacallback,addid); 
										  });
	}
	
}


function throwError(content) {
//	alert(content);
	errorDialogCount++;
	makeAndLoadWindow('errorWindow'+errorDialogCount, 'errorWindow', 450, "auto", "def", "def", false,"","def","def","def","def","def",content);
}
function throwSuccess(content) {
	successDialogCount++;
	makeAndLoadWindow('successWindow'+successDialogCount, 'successWindow', 450, "auto", "def", "def", false,"","def","def","def","def","def",content);
	
}
function makeInfo(desc,mouseleft,mousetop) {
	/*makeAndLoadWindow(id, classID, width, height, shadow, opacity, url, targetElement, posTop, posLeft, css, closeEnable, autoScroll, content)*/
	makeAndLoadWindow('infobox', 'infobox', "auto", "auto", "none", 0, false, "", mousetop, mouseleft, "", "onclick", "def", desc);
}
function littleQuery(type, content) {
	if (type != "") {
		$.post("/query.php?type=littleQuery",{type: type, content: content },function(data) {  /*alert(data);*/eval(data); });
	}
	
}
function loadContentToObject(name,type,param,str,toElement,preProc,obj) {
	if (!toElement) toElement = name+"_place";
	if (preProc) eval(preProc);
	 $.post("/query.php?type=littleQuery",{ type : type, param: param, value : JSON.stringify(str) },
	   	function(data){ 
			  if (obj)  obj.html(data);
			  else  {
				  $("#"+toElement).html(data);
			  }
		});

}

function checkSelectChange(name,code) {
	$("#"+name+"ID").change(function () { 
		 $("#"+name+"ID option:selected").each(function () {	  var selectValue = $(this).val(); eval(code)  	});   
	})//.change();   	
}
function loadSelectChange(name,type,param,toElement,preProc) {
	$("#"+name+"ID").change(function () { 
		 var str = new Array();
		 $("#"+name+"ID option:selected").each(function () {	  str.push( $(this).val() ) 	});   
		 loadContentToObject(name,type,param,str,toElement,preProc);
	})//.change();   	
}

function loadMulticheckChange(name,type,param) {
	$('input[name="'+name+'\[\]"]').change(function () { 
		 var str = new Array();
		 $('input[name="'+name+'\[\]"]:checked').each(function () { str.push($(this).val()) });
		 $("#"+name+"_place").html("Loading...");
		 loadContentToObject(name,type,param,str);
	})//.change();  
}
function sendFormAndLoadTo(form,place) {
	var data = $("#"+form).serialize();
	$.ajax({type: "POST", url: "/query.php?type=littleQuery", data: data, success: function (dataBack) {
		if (getElement(place)) {
			$("#"+place).html(dataBack);
		}
																							}
	});
}
function checkAndSend() {
	var data = $('#procedureOrder').serialize();
	data += '&type=procedureOrder';
	$.ajax({type: "POST", url: "/query.php?type=littleQuery", data: data, success: function (dataBack) {
			eval(dataBack);
		}
	});
}
function getSelectedValue(id) {
	 var str = new Array();
	 $("#"+id+" option:selected").each(function () {
                 str.push( $(this).val() ) 
          });
	 return str;
}
function cancelHide(element) {
	 $('#'+element).stop()
	 if ($('#'+element).data('timer') )	 {
		 clearTimeout( $('#'+element).data('timer') );
	 }	
}
function showElement(element) {
	 cancelHide(element);
	 $('#'+element).animate({opacity: 1.0}, 200, 'swing');
}
function hideElement(element) {
	 var elem = $('#'+element);
     $('#'+element).data('timer', setTimeout(function() { elem.animate({opacity: 0.0}, 200, 'swing'); }, 800));
}
/*function changeLoginPasswordForm(element) {
	var oldButton = $('#'+element);
	var newButton = oldButton.clone();
	newButton.attr("type", "password");
	newButton.attr("name", "password");
	newButton.attr("value", "");
	newButton.attr("id", element+"new");
	newButton.insertBefore(oldButton);
	oldButton.remove();
	newButton.attr("id", element);
}*/
function init() {
	$('#head_memberForm').fadeTo(0,0.0);
	$('#head_memberForm').css("visibility","visible");
}
function windowReload() {
	
	if (window.location.href.indexOf('?')>0) {
		window.location = window.location.href.slice(0,window.location.href.indexOf('?'));
	}
	else {
		window.location = window.location.href;	
	}
}
