// JavaScript Document
var loading = '';
var display_mode = 1;
var valid_debug = false;


function buildPostString(fields) {
	var str = "";
	var num = fields.length;
	
	for (var i=0; i<num; i++) {
		switch (document.getElementsByName(fields[i])[0].type) {
			default:
				str += "&"+fields[i]+"="+$(fields[i]).value;
				break;
			case 'checkbox':
				var tmp = new Array;
				for (var j=0; j<document.getElementsByName(fields[i]).length; j++) {
					if (true == document.getElementsByName(fields[i])[j].checked) {
						tmp.push(document.getElementsByName(fields[i])[j].value);
					}
				}
				str += "&"+fields[i]+"="+tmp.join('@@');
				break;
			case 'radio':
				for (var j=0; j<document.getElementsByName(fields[i]).length; j++) {
					if (true == document.getElementsByName(fields[i])[j].checked) {
						str += "&"+fields[i]+"="+document.getElementsByName(fields[i])[j].value;
						break;
					}
				}
				break;
		}
	}
	return str;
}

function showErrorMsg(data) {
	window.setTimeout('HideLoading()',200);
	if (true == valid_debug) {
		alert(data.responseText);
	}
	switch (display_mode) {
		default:
			alert('驗證模式錯誤');
			return false;
			break;
		
		case 2:
			if ("1" != data.responseText) {
				alert(data.responseText);
				return false;
			} else {
				return true;
			}
			break;
		
		case 4:
			if ("1" != data.responseText) {
				json = data.responseText.parseJSON();
				for (var i=0; i<json.Fields.length; i++) {
					var str = "MSG_";
					var x = json.Fields[i];
					// 檢查是否已有該訊息區塊，未有時產生新的訊息區塊
					if (!$(str+x)) {
						var span = document.createElement("SPAN");
						span.id = str+x;
						span.style.color = "red";
						$(x).parentNode.appendChild(span);
					}
					
					if (json.Message[str+x]) {
						$(str+x).innerHTML = ' * '+json.Message[str+x];
					} else {
						$(str+x).innerHTML = '';
					}
				}
				return false;
			} else {
				return true;
			}
			break;
	}
}

function reportError(request) {
    alert('Sorry. There was an error.');
}

function HideLoading() {
	loading.style.display = 'none';
}

function CreateLoading(str) {
	if ('' == loading) {
		loading = document.createElement('div');
		loading.id = 'HTML_AJAX_LOADING';
		loading.innerHTML = str;
		
		loading.style.color           = '#fff';
		loading.style.position        = 'absolute';
		loading.style.top             = getScrollXY()+'px';
		loading.style.right           = '0px';
		loading.style.backgroundColor = '#f00';
		loading.style.border          = '1px solid #f99';
		loading.style.width           = '80px';
		loading.style.padding         = '4px';
		loading.style.fontFamily      = 'Verdana, Arial, Helvetica, sans-serif';
		document.body.insertBefore(loading,document.body.firstChild);
	} else {
		loading.innerHTML = str;
		loading.style.display = 'block';
	}
}

function getScrollXY() {
  var scrOfX = 0, scrOfY = 0;
  if( typeof( window.pageYOffset ) == 'number' ) {
    //Netscape compliant
    scrOfY = window.pageYOffset;
    //scrOfX = window.pageXOffset;
  } else if( document.body && ( document.body.scrollLeft || document.body.scrollTop ) ) {
    //DOM compliant
    scrOfY = document.body.scrollTop;
    //scrOfX = document.body.scrollLeft;
  } else if( document.documentElement && ( document.documentElement.scrollLeft || document.documentElement.scrollTop ) ) {
    //IE6 standards compliant mode
    scrOfY = document.documentElement.scrollTop;
    //scrOfX = document.documentElement.scrollLeft;
  }
  //return [ scrOfX, scrOfY ];
  return scrOfY;
}