(function(n){typeof define=="function"&&define.amd?define(["jquery"],n):n(jQuery)})(function(n){var f=function(n){if(l[n])return l[n].apply(this,Array.prototype.slice.call(arguments,1));if(typeof n!="object"&&n)throw"Method "+n+" does not exist on jQuery.cardswipe";else return l.init.apply(this,arguments)},p={generic:function(n){var i=new RegExp("^(%[^%;\\?]+\\?)?(;[0-9\\:<>\\=]+\\?)?([+;][0-9\\:<>\\=]+\\?)?"),t=i.exec(n);return t?{type:"generic",line1:t[1]?t[1].slice(1,-1):"",line2:t[2]?t[2].slice(1,-1):"",line3:t[3]?t[3].slice(1,-1):""}:null}},t={IDLE:0,PENDING1:1,PENDING2:2,READING:3,DISCARD:4,PREFIX:5},a={0:"IDLE",1:"PENDING1",2:"PENDING2",3:"READING",4:"DISCARD",5:"PREFIX"},h=t.IDLE,r=function(){if(arguments.length===0)return h;var n=arguments[0];n!=r&&(i.debug&&console.log("%s -> %s",a[h],a[n]),n==t.READING&&y.trigger("scanstart.cardswipe"),h==t.READING&&y.trigger("scanend.cardswipe"),h=n)},u,c=0,w=function(f){switch(r()){case t.IDLE:d(f.which)&&(r(t.PREFIX),f.preventDefault(),f.stopPropagation(),e());f.which==37&&(r(t.PENDING1),u=[],o(f.which),f.preventDefault(),f.stopPropagation(),e());f.which==59&&(r(t.PENDING2),u=[],o(f.which),f.preventDefault(),f.stopPropagation(),e());break;case t.PENDING1:f.which>=65&&f.which<=90||f.which>=97&&f.which<=122?(r(t.READING),n("input").blur(),o(f.which),f.preventDefault(),f.stopPropagation(),e()):(s(),u=null,r(t.IDLE));break;case t.PENDING2:f.which>=48&&f.which<=57?(r(t.READING),n("input").blur(),o(f.which),f.preventDefault(),f.stopPropagation(),e()):(s(),u=null,r(t.IDLE));break;case t.READING:o(f.which);e();f.preventDefault();f.stopPropagation();f.which==13&&(s(),r(t.IDLE),v());i.firstLineOnly&&f.which==63&&(r(t.DISCARD),v());break;case t.DISCARD:if(f.preventDefault(),f.stopPropagation(),f.which==13){s();r(t.IDLE);return}e();break;case t.PREFIX:if(d(f.which)){r(t.IDLE);return}f.preventDefault();f.stopPropagation();f.which==37&&(r(t.PENDING1),u=[],o(f.which));f.which==59&&(r(t.PENDING2),u=[],o(f.which));e()}},o=function(n){u.push(String.fromCharCode(n))},e=function(){clearTimeout(c);c=setTimeout(g,i.interdigitTimeout)},s=function(){clearTimeout(c);c=0},g=function(){i.debug&&console.log("Timeout!");r()==t.READING&&v();u=null;r(t.IDLE)},v=function(){var t,r;i.debug&&console.log(u);t=u.join("");i.rawDataCallback&&i.rawDataCallback.call(this,t);r=b(t);r?(i.success&&i.success.call(this,r),n(document).trigger("success.cardswipe",r)):(i.failure&&i.failure.call(this,t),n(document).trigger("failure.cardswipe"))},b=function(t){for(var r,f,e,u=0;u<i.parsers.length;u++)if(r=i.parsers[u],n.isFunction(r)?f=r:typeof r=="string"&&(f=p[r]),f!=null){if(e=f.call(this,t),e==null)continue;return e}return null},nt=function(){n(document).on("keypress.cardswipe-listener",w)},k=function(){n(document).off(".cardswipe-listener",w)},tt=function(n){var t=["Line 1: ",n.line1,"\nLine 2: ",n.line2,"\nLine 3: ",n.line3].join("");alert(t)},d=function(t){return i.prefixCodes?n.inArray(t,i.prefixCodes)!=-1:!1},it={enabled:!0,interdigitTimeout:250,success:tt,failure:null,parsers:["generic"],firstLineOnly:!1,prefixCharacter:null,eventSource:document,debug:!1},i,y,rt=function(n){for(var f=[0,2,4,6,8,1,3,5,7,9],t=0,u=n.length,i=!0,r;u--;)r=parseInt(n.charAt(u),10),t+=i?r:f[r],i=!i;return t%10==0&&t>0},l={init:function(f){if(i=n.extend({},it,f),i.prefixCharacter){var e=Object.prototype.toString.call(i.prefixCharacter)==="[object Array]";e||(i.prefixCharacter=[i.prefixCharacter]);i.prefixCodes=[];n(i.prefixCharacter).each(function(){if(this.length!=1)throw"prefixCharacter must be a single character";i.prefixCodes.push(this.charCodeAt(0))})}y=n(i.eventSource);s();r(t.IDLE);u=null;k();i.enabled&&l.enable()},disable:function(){k()},enable:function(){nt()}};f.luhnChecksum=rt;f._states=function(){return t};f._stateNames=function(){return a};f._state=function(){return r()};f._settings=function(){return i};f._parseData=function(n){return b(n)};f._builtinParsers=function(){return p};n.cardswipe=f});var complete=function(n){n.type=="generic"},success=function(n,t){var r,i;for(i in t)if(i!="type"&&t.hasOwnProperty(i)&&t[i]!=""){r=t[i];$("#hdnCardno").val(r);$("#hdnIsCardSwipe").val(!0);$("#nonLoggedForm").submit();return}};$.cardswipe({success:complete,parsers:["generic"],debug:!0});$(document).on("success.cardswipe",success)