whole_func_string: function(options){
  		var $form=this,submit;
  		if(!S.isObj(options)) options = { success: options };
  		this.on('submit',function(evt){
  			evt.preventDefault();
  			evt.stopPropagation();
  			submit=this.find('[type="submit"]');
  			this.fadeTo(0.4, 180);
  			this.fire(this._eventBeforeSubmit);
  			if(options.beforeSubmit && options.beforeSubmit()===false)
  				this.stop().style('opacity',1) && hasPlaceholders && this.resetPlaceholders();
  			else{
  				submit.hide().forEach(function($e){ $e.insertAfter($.imgLoading()); });
  				options.success(this,function(){
  					submit.show().blur(); this.find('.imgLoading').remove(); this.fadeTo(1, 150);
  					this.fire(this._eventAfterSubmit);
  				}.bind(this));
  			}
  			return false;
  		});
  		return this;
  	}
func_code_string: function(options){
  		var $form=this,submit;
  		if(!S.isObj(options)) options = { success: options };
  		this.on('submit',function(evt){
  			evt.preventDefault();
  			evt.stopPropagation();
  			submit=this.find('[type="submit"]');
  			this.fadeTo(0.4, 180);
  			this.fire(this._eventBeforeSubmit);
  			if(options.beforeSubmit && options.beforeSubmit()===false)
  				this.stop().style('opacity',1) && hasPlaceholders && this.resetPlaceholders();
  			else{
  				submit.hide().forEach(function($e){ $e.insertAfter($.imgLoading()); });
  				options.success(this,function(){
  					submit.show().blur(); this.find('.imgLoading').remove(); this.fadeTo(1, 150);
  					this.fire(this._eventAfterSubmit);
  				}.bind(this));
  			}
  			return false;
  		});
  		return this;
  	}
func_documentation_string: /*#if BROWSER