if (typeof BEBO == "undefined") {
    var BEBO = {};
}

BEBO.namespace = function() {
    var a=arguments, o=null, i, j, d;
    for (i=0; i<a.length; ++i) {
        d=a[i].split(".");
        o=BEBO;

        // YAHOO is implied, so it is ignored if it is included
        for (j=(d[0] == "BEBO") ? 1 : 0; j<d.length; ++j) {
            o[d[j]]=o[d[j]] || {};
            o=o[d[j]];
        }
    }

    return o;
};

// shortcuts to common YAHOO objects
var YUE = YAHOO.util.Event;
var YUD = YAHOO.util.Dom;
var YUC = YAHOO.util.Connect;




// YUI bug fixes

YAHOO.widget.Dialog.prototype.doSubmit = function() {
	var pm = this.cfg.getProperty("postmethod");
	switch (pm) {
		case "async":
			var method = this.form.getAttribute("method") || 'POST';
			method = method.toUpperCase();
	
      // ***** ajp experiment *****
      var hasFiles = false;
      var elems = this.form.elements;
      var numElems = elems.length;
      for( var i=0; i < numElems; i++ ){
        if( elems[i].type.toLowerCase() == "file" ){
          hasFiles = true;
          break;
        }
      }
			YAHOO.util.Connect.setForm(this.form, hasFiles);
      // ***** ajp experiment *****

			var cObj = YAHOO.util.Connect.asyncRequest(method, this.form.getAttribute("action"), this.callback);
			this.asyncSubmitEvent.fire();
			break;
		case "form":
			this.form.submit();
			this.formSubmitEvent.fire();
			break;
		case "none":
		case "manual":
			this.manualSubmitEvent.fire();
			break;
	}
};
