/*! * jQuery Form Plugin * version: 3.14 (30-JUL-2012) * @requires jQuery v1.3.2 or later * * Examples and documentation at: http://malsup.com/jquery/form/ * Project repository: https://github.com/malsup/form * Dual licensed under the MIT and GPL licenses: * http://malsup.github.com/mit-license.txt * http://malsup.github.com/gpl-license-v2.txt */ (function(a){function c(b){var c=b.data;if(!b.isDefaultPrevented()){b.preventDefault();a(this).ajaxSubmit(c)}}function d(b){var c=b.target;var d=a(c);if(!d.is(":submit,input:image")){var e=d.closest(":submit");if(e.length===0){return}c=e[0]}var f=this;f.clk=c;if(c.type=="image"){if(b.offsetX!==undefined){f.clk_x=b.offsetX;f.clk_y=b.offsetY}else if(typeof a.fn.offset=="function"){var g=d.offset();f.clk_x=b.pageX-g.left;f.clk_y=b.pageY-g.top}else{f.clk_x=b.pageX-c.offsetLeft;f.clk_y=b.pageY-c.offsetTop}}setTimeout(function(){f.clk=f.clk_x=f.clk_y=null},100)}function e(){if(!a.fn.ajaxSubmit.debug)return;var b="[jquery.form] "+Array.prototype.join.call(arguments,"");if(window.console&&window.console.log){window.console.log(b)}else if(window.opera&&window.opera.postError){window.opera.postError(b)}}"use strict";var b={};b.fileapi=a("").get(0).files!==undefined;b.formdata=window.FormData!==undefined;a.fn.ajaxSubmit=function(c){function x(b){var d=new FormData;for(var e=0;e').attr("value",j.extraData[k].value).appendTo(f)[0])}else{i.push(a('').attr("value",j.extraData[k]).appendTo(f)[0])}}}}if(!j.iframeTarget){n.appendTo("body");if(o.attachEvent)o.attachEvent("onload",F);else o.addEventListener("load",F,false)}setTimeout(g,15);f.submit()}finally{f.setAttribute("action",c);if(b){f.setAttribute("target",b)}else{h.removeAttr("target")}a(i).remove()}}function F(b){if(p.aborted||E){return}try{C=x(o)}catch(c){e("cannot access response document: ",c);b=w}if(b===v&&p){p.abort("timeout");return}else if(b==w&&p){p.abort("server abort");return}if(!C||C.location.href==j.iframeSrc){if(!s)return}if(o.detachEvent)o.detachEvent("onload",F);else o.removeEventListener("load",F,false);var d="success",f;try{if(s){throw"timeout"}var g=j.dataType=="xml"||C.XMLDocument||a.isXMLDoc(C);e("isXml="+g);if(!g&&window.opera&&(C.body===null||!C.body.innerHTML)){if(--D){e("requeing onLoad callback, DOM not available");setTimeout(F,250);return}}var h=C.body?C.body:C.documentElement;p.responseText=h?h.innerHTML:null;p.responseXML=C.XMLDocument?C.XMLDocument:C;if(g)j.dataType="xml";p.getResponseHeader=function(a){var b={"content-type":j.dataType};return b[a]};if(h){p.status=Number(h.getAttribute("status"))||p.status;p.statusText=h.getAttribute("statusText")||p.statusText}var i=(j.dataType||"").toLowerCase();var k=/(json|script|text)/.test(i);if(k||j.textarea){var m=C.getElementsByTagName("textarea")[0];if(m){p.responseText=m.value;p.status=Number(m.getAttribute("status"))||p.status;p.statusText=m.getAttribute("statusText")||p.statusText}else if(k){var q=C.getElementsByTagName("pre")[0];var r=C.getElementsByTagName("body")[0];if(q){p.responseText=q.textContent?q.textContent:q.innerText}else if(r){p.responseText=r.textContent?r.textContent:r.innerText}}}else if(i=="xml"&&!p.responseXML&&p.responseText){p.responseXML=G(p.responseText)}try{B=I(p,i,j)}catch(b){d="parsererror";p.error=f=b||d}}catch(b){e("error caught: ",b);d="error";p.error=f=b||d}if(p.aborted){e("upload aborted");d=null}if(p.status){d=p.status>=200&&p.status<300||p.status===304?"success":"error"}if(d==="success"){if(j.success)j.success.call(j.context,B,"success",p);if(l)a.event.trigger("ajaxSuccess",[p,j])}else if(d){if(f===undefined)f=p.statusText;if(j.error)j.error.call(j.context,p,d,f);if(l)a.event.trigger("ajaxError",[p,j,f])}if(l)a.event.trigger("ajaxComplete",[p,j]);if(l&&!--a.active){a.event.trigger("ajaxStop")}if(j.complete)j.complete.call(j.context,p,d);E=true;if(j.timeout)clearTimeout(t);setTimeout(function(){if(!j.iframeTarget)n.remove();p.responseXML=null},100)}var f=h[0],g,i,j,l,m,n,o,p,q,r,s,t;var u=!!a.fn.prop;if(a(":input[name=submit],:input[id=submit]",f).length){alert('Error: Form elements must not have name or id of "submit".');return}if(b){for(i=0;i');n.css({position:"absolute",top:"-1000px",left:"-1000px"})}o=n[0];p={aborted:0,responseText:null,responseXML:null,status:0,statusText:"n/a",getAllResponseHeaders:function(){},getResponseHeader:function(){},setRequestHeader:function(){},abort:function(b){var c=b==="timeout"?"timeout":"aborted";e("aborting upload... "+c);this.aborted=1;if(o.contentWindow.document.execCommand){try{o.contentWindow.document.execCommand("Stop")}catch(d){}}n.attr("src",j.iframeSrc);p.error=c;if(j.error)j.error.call(j.context,p,c,b);if(l)a.event.trigger("ajaxError",[p,j,c]);if(j.complete)j.complete.call(j.context,p,c)}};l=j.global;if(l&&0===a.active++){a.event.trigger("ajaxStart")}if(l){a.event.trigger("ajaxSend",[p,j])}if(j.beforeSend&&j.beforeSend.call(j.context,p,j)===false){if(j.global){a.active--}return}if(p.aborted){return}q=f.clk;if(q){r=q.name;if(r&&!q.disabled){j.extraData=j.extraData||{};j.extraData[r]=q.value;if(q.type=="image"){j.extraData[r+".x"]=f.clk_x;j.extraData[r+".y"]=f.clk_y}}}var v=1;var w=2;var y=a("meta[name=csrf-token]").attr("content");var z=a("meta[name=csrf-param]").attr("content");if(z&&y){j.extraData=j.extraData||{};j.extraData[z]=y}if(j.forceSync){A()}else{setTimeout(A,10)}var B,C,D=50,E;var G=a.parseXML||function(a,b){if(window.ActiveXObject){b=new ActiveXObject("Microsoft.XMLDOM");b.async="false";b.loadXML(a)}else{b=(new DOMParser).parseFromString(a,"text/xml")}return b&&b.documentElement&&b.documentElement.nodeName!="parsererror"?b:null};var H=a.parseJSON||function(a){return window["eval"]("("+a+")")};var I=function(b,c,d){var e=b.getResponseHeader("content-type")||"",f=c==="xml"||!c&&e.indexOf("xml")>=0,g=f?b.responseXML:b.responseText;if(f&&g.documentElement.nodeName==="parsererror"){if(a.error)a.error("parsererror")}if(d&&d.dataFilter){g=d.dataFilter(g,c)}if(typeof g==="string"){if(c==="json"||!c&&e.indexOf("json")>=0){g=H(g)}else if(c==="script"||!c&&e.indexOf("javascript")>=0){a.globalEval(g)}}return g}}if(!this.length){e("ajaxSubmit: skipping submit process - no element selected");return this}var d,f,g,h=this;if(typeof c=="function"){c={success:c}}d=this.attr("method");f=this.attr("action");g=typeof f==="string"?a.trim(f):"";g=g||window.location.href||"";if(g){g=(g.match(/^([^#]+)/)||[])[1]}c=a.extend(true,{url:g,success:a.ajaxSettings.success,type:d||"GET",iframeSrc:/^https/i.test(window.location.href||"")?"javascript:false":"about:blank"},c);var i={};this.trigger("form-pre-serialize",[this,c,i]);if(i.veto){e("ajaxSubmit: submit vetoed via form-pre-serialize trigger");return this}if(c.beforeSerialize&&c.beforeSerialize(this,c)===false){e("ajaxSubmit: submit aborted via beforeSerialize callback");return this}var j=c.traditional;if(j===undefined){j=a.ajaxSettings.traditional}var k=[];var l,m=this.formToArray(c.semantic,k);if(c.data){c.extraData=c.data;l=a.param(c.data,j)}if(c.beforeSubmit&&c.beforeSubmit(m,this,c)===false){e("ajaxSubmit: submit aborted via beforeSubmit callback");return this}this.trigger("form-submit-validate",[m,this,c,i]);if(i.veto){e("ajaxSubmit: submit vetoed via form-submit-validate trigger");return this}var n=a.param(m,j);if(l){n=n?n+"&"+l:l}if(c.type.toUpperCase()=="GET"){c.url+=(c.url.indexOf("?")>=0?"&":"?")+n;c.data=null}else{c.data=n}var o=[];if(c.resetForm){o.push(function(){h.resetForm()})}if(c.clearForm){o.push(function(){h.clearForm(c.includeHidden)})}if(!c.dataType&&c.target){var p=c.success||function(){};o.push(function(b){var d=c.replaceTarget?"replaceWith":"html";a(c.target)[d](b).each(p,arguments)})}else if(c.success){o.push(c.success)}c.success=function(a,b,d){var e=c.context||this;for(var f=0,g=o.length;f0;var s="multipart/form-data";var t=h.attr("enctype")==s||h.attr("encoding")==s;var u=b.fileapi&&b.formdata;e("fileAPI :"+u);var v=(r||t)&&!u;if(c.iframe!==false&&(c.iframe||v)){if(c.closeKeepAlive){a.get(c.closeKeepAlive,function(){y(m)})}else{y(m)}}else if((r||t)&&u){x(m)}else{a.ajax(c)}for(var w=0;w