// Dreamsoft library
var dsUpload = {
	defaults: {
		
	},
	
	genProps: function(prop) {
	if(typeof(prop) == 'undefined') prop = new Object();

	for(key in this.defaults) {
		if(typeof(prop[key]) == 'undefined') {
			prop[key] = this.defaults[key];
		}
	}
	return prop;
	},
	
	init: function(prop) {
		if(typeof(prop) != 'object') {
			prop = {
				form:arguments[0]
			}
		}
		
		if(document.forms[prop.form] || (typeof(prop.form) == 'object' && prop.form == '[object HTMLFormElement]')) {
			// Form found, start....
			var form = ((typeof(prop.form) == 'object' && prop.form == '[object HTMLFormElement]')?prop.form:document.forms[prop.form]);
			var uploadframe = document.createElement('iframe');
			uploadframe.name = 'dsUploadFrame';
			uploadframe.id = 'dsUploadFrame';
			uploadframe.style.display = 'none';
			document.body.appendChild(uploadframe);
			form.target = 'dsUploadFrame';
			
			if(typeof(prop.onstart) == 'function') {
				eval(prop.onstart());
			}
			
			var is_chrome = navigator.userAgent.toLowerCase().indexOf('chrome') > -1;
			if(uploadframe.attachEvent) {
				uploadframe.attachEvent('onload', function() {
					if(typeof(prop.onfinish) == 'function') {
						eval(prop.onfinish());				
					}
				});
			} else if(uploadframe.addEventListener && is_chrome) {
				uploadframe.addEventListener('load', function() {
					if(typeof(prop.onfinish) == 'function') {
						eval(prop.onfinish());				
					}
				});
			} else {
				dsUploadFrame.window.onload = function() {
					// upload is finished stop animation...
					if(typeof(prop.onfinish) == 'function') {
						eval(prop.onfinish());
					}
				} 
			}
		}
	}
}
