!function(e,t){"use strict";e.rails!==t&&e.error("jquery-ujs has already been loaded!");var a,n=e(document);e.rails=a={linkClickSelector:"a[data-confirm], a[data-method], a[data-remote], a[data-disable-with], a[data-disable]",buttonClickSelector:"button[data-remote]:not(form button), button[data-confirm]:not(form button)",inputChangeSelector:"select[data-remote], input[data-remote], textarea[data-remote]",formSubmitSelector:"form",formInputClickSelector:"form input[type=submit], form input[type=image], form button[type=submit], form button:not([type]), input[type=submit][form], input[type=image][form], button[type=submit][form], button[form]:not([type])",disableSelector:"input[data-disable-with]:enabled, button[data-disable-with]:enabled, textarea[data-disable-with]:enabled, input[data-disable]:enabled, button[data-disable]:enabled, textarea[data-disable]:enabled",enableSelector:"input[data-disable-with]:disabled, button[data-disable-with]:disabled, textarea[data-disable-with]:disabled, input[data-disable]:disabled, button[data-disable]:disabled, textarea[data-disable]:disabled",requiredInputSelector:"input[name][required]:not([disabled]),textarea[name][required]:not([disabled])",fileInputSelector:"input[type=file]:not([disabled])",linkDisableSelector:"a[data-disable-with], a[data-disable]",buttonDisableSelector:"button[data-remote][data-disable-with], button[data-remote][data-disable]",csrfToken:function(){return e("meta[name=csrf-token]").attr("content")},csrfParam:function(){return e("meta[name=csrf-param]").attr("content")},CSRFProtection:function(e){var t=a.csrfToken();t&&e.setRequestHeader("X-CSRF-Token",t)},refreshCSRFTokens:function(){e('form input[name="'+a.csrfParam()+'"]').val(a.csrfToken())},fire:function(t,a,n){var r=e.Event(a);return t.trigger(r,n),r.result!==!1},confirm:function(e){return confirm(e)},ajax:function(t){return e.ajax(t)},href:function(e){return e[0].href},isRemote:function(e){return e.data("remote")!==t&&e.data("remote")!==!1},handleRemote:function(n){var r,i,o,l,s,u;if(a.fire(n,"ajax:before")){if(l=n.data("with-credentials")||null,s=n.data("type")||e.ajaxSettings&&e.ajaxSettings.dataType,n.is("form")){r=n.attr("method"),i=n.attr("action"),o=n.serializeArray();var d=n.data("ujs:submit-button");d&&(o.push(d),n.data("ujs:submit-button",null))}else n.is(a.inputChangeSelector)?(r=n.data("method"),i=n.data("url"),o=n.serialize(),n.data("params")&&(o=o+"&"+n.data("params"))):n.is(a.buttonClickSelector)?(r=n.data("method")||"get",i=n.data("url"),o=n.serialize(),n.data("params")&&(o=o+"&"+n.data("params"))):(r=n.data("method"),i=a.href(n),o=n.data("params")||null);return u={type:r||"GET",data:o,dataType:s,beforeSend:function(e,r){return r.dataType===t&&e.setRequestHeader("accept","*/*;q=0.5, "+r.accepts.script),a.fire(n,"ajax:beforeSend",[e,r])?void n.trigger("ajax:send",e):!1},success:function(e,t,a){n.trigger("ajax:success",[e,t,a])},complete:function(e,t){n.trigger("ajax:complete",[e,t])},error:function(e,t,a){n.trigger("ajax:error",[e,t,a])},crossDomain:a.isCrossDomain(i)},l&&(u.xhrFields={withCredentials:l}),i&&(u.url=i),a.ajax(u)}return!1},isCrossDomain:function(e){var t=document.createElement("a");t.href=location.href;var a=document.createElement("a");try{return a.href=e,a.href=a.href,!((!a.protocol||":"===a.protocol)&&!a.host||t.protocol+"//"+t.host==a.protocol+"//"+a.host)}catch(n){return!0}},handleMethod:function(n){var r=a.href(n),i=n.data("method"),o=n.attr("target"),l=a.csrfToken(),s=a.csrfParam(),u=e('
'),d='';s===t||l===t||a.isCrossDomain(r)||(d+=''),o&&u.attr("target",o),u.hide().append(d).appendTo("body"),u.submit()},formElements:function(t,a){return t.is("form")?e(t[0].elements).filter(a):t.find(a)},disableFormElements:function(t){a.formElements(t,a.disableSelector).each(function(){a.disableFormElement(e(this))})},disableFormElement:function(e){var a,n;a=e.is("button")?"html":"val",n=e.data("disable-with"),e.data("ujs:enable-with",e[a]()),n!==t&&e[a](n),e.prop("disabled",!0)},enableFormElements:function(t){a.formElements(t,a.enableSelector).each(function(){a.enableFormElement(e(this))})},enableFormElement:function(e){var t=e.is("button")?"html":"val";"undefined"!=typeof e.data("ujs:enable-with")&&e[t](e.data("ujs:enable-with")),e.prop("disabled",!1)},allowAction:function(e){var t,n=e.data("confirm"),r=!1;if(!n)return!0;if(a.fire(e,"confirm")){try{r=a.confirm(n)}catch(i){(console.error||console.log).call(console,i.stack||i)}t=a.fire(e,"confirm:complete",[r])}return r&&t},blankInputs:function(t,a,n){var r,i,o=e(),l=a||"input,textarea",s=t.find(l);return s.each(function(){if(r=e(this),i=r.is("input[type=checkbox],input[type=radio]")?r.is(":checked"):!!r.val(),i===n){if(r.is("input[type=radio]")&&s.filter('input[type=radio]:checked[name="'+r.attr("name")+'"]').length)return!0;o=o.add(r)}}),o.length?o:!1},nonBlankInputs:function(e,t){return a.blankInputs(e,t,!0)},stopEverything:function(t){return e(t.target).trigger("ujs:everythingStopped"),t.stopImmediatePropagation(),!1},disableElement:function(e){var n=e.data("disable-with");e.data("ujs:enable-with",e.html()),n!==t&&e.html(n),e.bind("click.railsDisable",function(e){return a.stopEverything(e)})},enableElement:function(e){e.data("ujs:enable-with")!==t&&(e.html(e.data("ujs:enable-with")),e.removeData("ujs:enable-with")),e.unbind("click.railsDisable")}},a.fire(n,"rails:attachBindings")&&(e.ajaxPrefilter(function(e,t,n){e.crossDomain||a.CSRFProtection(n)}),e(window).on("pageshow.rails",function(){e(e.rails.enableSelector).each(function(){var t=e(this);t.data("ujs:enable-with")&&e.rails.enableFormElement(t)}),e(e.rails.linkDisableSelector).each(function(){var t=e(this);t.data("ujs:enable-with")&&e.rails.enableElement(t)})}),n.delegate(a.linkDisableSelector,"ajax:complete",function(){a.enableElement(e(this))}),n.delegate(a.buttonDisableSelector,"ajax:complete",function(){a.enableFormElement(e(this))}),n.delegate(a.linkClickSelector,"click.rails",function(t){var n=e(this),r=n.data("method"),i=n.data("params"),o=t.metaKey||t.ctrlKey;if(!a.allowAction(n))return a.stopEverything(t);if(!o&&n.is(a.linkDisableSelector)&&a.disableElement(n),a.isRemote(n)){if(o&&(!r||"GET"===r)&&!i)return!0;var l=a.handleRemote(n);return l===!1?a.enableElement(n):l.fail(function(){a.enableElement(n)}),!1}return r?(a.handleMethod(n),!1):void 0}),n.delegate(a.buttonClickSelector,"click.rails",function(t){var n=e(this);if(!a.allowAction(n)||!a.isRemote(n))return a.stopEverything(t);n.is(a.buttonDisableSelector)&&a.disableFormElement(n);var r=a.handleRemote(n);return r===!1?a.enableFormElement(n):r.fail(function(){a.enableFormElement(n)}),!1}),n.delegate(a.inputChangeSelector,"change.rails",function(t){var n=e(this);return a.allowAction(n)&&a.isRemote(n)?(a.handleRemote(n),!1):a.stopEverything(t)}),n.delegate(a.formSubmitSelector,"submit.rails",function(n){var r,i,o=e(this),l=a.isRemote(o);if(!a.allowAction(o))return a.stopEverything(n);if(o.attr("novalidate")===t&&(r=a.blankInputs(o,a.requiredInputSelector,!1),r&&a.fire(o,"ajax:aborted:required",[r])))return a.stopEverything(n);if(l){if(i=a.nonBlankInputs(o,a.fileInputSelector)){setTimeout(function(){a.disableFormElements(o)},13);var s=a.fire(o,"ajax:aborted:file",[i]);return s||setTimeout(function(){a.enableFormElements(o)},13),s}return a.handleRemote(o),!1}setTimeout(function(){a.disableFormElements(o)},13)}),n.delegate(a.formInputClickSelector,"click.rails",function(t){var n=e(this);if(!a.allowAction(n))return a.stopEverything(t);var r=n.attr("name"),i=r?{name:r,value:n.val()}:null;n.closest("form").data("ujs:submit-button",i)}),n.delegate(a.formSubmitSelector,"ajax:send.rails",function(t){this===t.target&&a.disableFormElements(e(this))}),n.delegate(a.formSubmitSelector,"ajax:complete.rails",function(t){this===t.target&&a.enableFormElements(e(this))}),e(function(){a.refreshCSRFTokens()}))}(jQuery);