if (typeof EDC001 == 'undefined') {
    var EDC001 = {};
}
EDC001.namespace = function(){
    var a = arguments;
    var names, obj, i, n;
    for (i = 0; i < arguments.length; ++i) {
        names = arguments[i].split(".");
        obj = EDC001;
        for (n = (names[0] == 'EDC001') ? 1 : 0; n < names.length; ++n) {
            obj[names[n]] = obj[names[n]] || {};
            obj = obj[names[n]];
        }
    }
    return obj;
}
EDC001.namespace('ajax');
EDC001.ajax = {
	getHTTPObject : function() {
		var xhr = false;
		if (window.XMLHttpRequest) {
			xhr = new XMLHttpRequest();
		} else if (window.ActiveXObject) {
			try {
				xhr = new ActiveXObject('Msxml2.XMLHTTP');
			} catch(e) {
				try {
					xhr = new ActiveXObject('Microsoft.XMLHTTP');
				} catch(e) {
					xhr = false;
				}
			}
		}
		return xhr;
	},
	grabFile : function(file) {
		var request = EDC001.ajax.getHTTPObject();
		if (request) {
			request.onreadystatechange = function() {
				if (request.readyState == 4) {
					if (request.status == 200 || request.status == 304) {
						EDC001.init.displayResponse(request);
					}
				}
			};
			request.open("GET", file+'&display=minipage', true);
			request.send(null);
		}
	},
	lightbox : function(file, namespace) {
		var request = EDC001.ajax.getHTTPObject();
		if (request) {
			request.onreadystatechange = function() {
				if (request.readyState == 4) {
					if (request.status == 200 || request.status == 304) {
						switch (namespace) {
							case 'photo' : EDC001.photo.displayResponse(request); break;
							case 'portfolio' : EDC001.portfolio.displayResponse(request); break;
						}
					}
				}
			};
			request.open("GET", file+'&display=lightbox', true);
			request.send(null);
		}
	},
	updateData : function(file) {
		var request = EDC001.ajax.getHTTPObject();
		if (request) {
			request.open("GET", file+'&display=update', true);
			request.send(null);
		}
	},
	sendData : function(formObj,data,originalId,animate) {
		var request = EDC001.ajax.getHTTPObject();
		if (request) {
			request.onreadystatechange = function() {
				if (request.readyState == 4) {
					if (request.status == 200 || request.status == 304) {
						EDC001.init.displayResponse(request,originalId,animate);
					}
				}
			};
			request.open("POST", formObj.action+'&display=minipage', true);
			request.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
			request.send(data);
			return true;
		} else {
			return false;
		}
	},
	sendForm : function(formObj,originalId,animate) {
		var data = '';
		for (var i=0; i<formObj.elements.length; i++) {
			data += formObj.elements[i].name + '=' + escape(formObj.elements[i].value) + '&';
		}
		return !this.sendData(formObj,data,originalId,animate);
	},
	sendvalidateData : function(file,data,formField,formId,setId,btType,btId) {
		var request = EDC001.ajax.getHTTPObject();
		if (request) {
			request.onreadystatechange = function() {
				if (request.readyState == 4) {
					if (request.status == 200 || request.status == 304) {
						EDC001.init.displayFormField(request,formField,formId,setId,btType,btId);
					}
				}
			};
			request.open("POST", file, true);
			request.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
			request.send(data);
			return true;
		} else {
			return false;
		}
	},
	validateForm : function(file,formField,formId,setId,btType,btId) {
		data = document.getElementById(formField).name + '=' + escape(document.getElementById(formField).value);
		return !this.sendvalidateData(file,data,formField,formId,setId,btType,btId);
	}
};
EDC001.namespace('utilities');
EDC001.utilities = {
	displayTooltip : function(objId,state,thisObj) {
		if (state == 1) {
			YAHOO.util.Dom.removeClass(objId, 'footnote');
			var xy = YAHOO.util.Dom.getXY(thisObj);
			xy[1] = xy[1]+18;
			YAHOO.util.Dom.addClass(objId, 'tooltipDisplay');
			YAHOO.util.Dom.setXY(objId, xy); 
		} else {
			YAHOO.util.Dom.addClass(objId, 'footnote');
			YAHOO.util.Dom.removeClass(objId, 'tooltipDisplay');
		}
	}
};
EDC001.namespace('core');
EDC001.core = {
	init : function() {
	}
};
