Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- validation: function(form, options){
- var requestOptions = {};
- if(options && options.requestOptions){
- requestOptions = options.requestOptions;
- delete options.requestOptions;
- }
- var vOptions = Object.extend({
- submitOnValid: false,
- onInvalid: function(elem, rule, message, provalidate){
- var elem = $(elem);
- var elemOffset = elem.positionedOffset();
- var elemId = elem.identify();
- var span = new Element('span',{
- 'class': elemId +' errorMessage'
- }).update(message).setStyle({
- top: (elemOffset.top + elem.getHeight()) + 'px',
- left: elemOffset.left + 'px'
- });
- elem.insert({after: span});
- elem.observe('blur', function(ev){
- provalidate.clearInvalid(elem);
- if(provalidate.validate(elem)){
- elem.stopObserving('blur');
- }
- });
- return false;
- },
- onFormValid: function(provalidate){
- var options = Object.extend(Outland.requestDefaults, {
- onSuccess: function(t){
- var json = t.responseJSON, errors, elem, message;
- if(json.status === 'failed'){
- errors = json.message;
- for(var i in errors){
- elem = i;
- rule = errors[i];
- provalidate.trigger(elem, rule);
- }
- }
- }
- });
- provalidate.form.request(Object.extend(options, requestOptions));
- }
- }, options || {});
- return new ProValidate(form, vOptions);
- }
- ##/** First Call **/
- // validate this.form
- this.validation = Outland.Form.validation(this.form.identify(),{
- requestOptions:{
- onComplete: function(t){
- var json = t.responseJSON;
- if(json.status !== 'success') return;
- if(json.data) Listing.instance.data = json.data;
- Listing.instance.getListings('lid_'+Listing.instance.data.id);
- }
- }
- });
- ##/**Second Call **/
- var validation = Outland.Form.validation(form);
- /*
- The Second call still uses the same requestOptions as the first.
- */
Add Comment
Please, Sign In to add comment