(function(r){r.fn.qrcode=function(h){var s;function u(a){this.mode=s;this.data=a}function o(a,c){this.typenumber=a;this.errorcorrectlevel=c;this.modules=null;this.modulecount=0;this.datacache=null;this.datalist=[]}function q(a,c){if(void 0==a.length)throw error(a.length+"/"+c);for(var d=0;da||this.modulecount<=a||0>c||this.modulecount<=c)throw error(a+","+c);return this.modules[a][c]},getmodulecount:function(){return this.modulecount},make:function(){if(1>this.typenumber){for(var a=1,a=1;40>a;a++){for(var c=p.getrsblocks(a,this.errorcorrectlevel),d=new t,b=0,e=0;e=d;d++)if(!(-1>=a+d||this.modulecount<=a+d))for(var b=-1;7>=b;b++)-1>=c+b||this.modulecount<=c+b||(this.modules[a+d][c+b]= 0<=d&&6>=d&&(0==b||6==b)||0<=b&&6>=b&&(0==d||6==d)||2<=d&&4>=d&&2<=b&&4>=b?!0:!1)},getbestmaskpattern:function(){for(var a=0,c=0,d=0;8>d;d++){this.makeimpl(!0,d);var b=j.getlostpoint(this);if(0==d||a>b)a=b,c=d}return c},createmovieclip:function(a,c,d){a=a.createemptymovieclip(c,d);this.make();for(c=0;c=f;f++)for(var i=-2;2>=i;i++)this.modules[b+f][e+i]=-2==f||2==f||-2==i||2==i||0==f&&0==i?!0:!1}},setuptypenumber:function(a){for(var c= j.getbchtypenumber(this.typenumber),d=0;18>d;d++){var b=!a&&1==(c>>d&1);this.modules[math.floor(d/3)][d%3+this.modulecount-8-3]=b}for(d=0;18>d;d++)b=!a&&1==(c>>d&1),this.modules[d%3+this.modulecount-8-3][math.floor(d/3)]=b},setuptypeinfo:function(a,c){for(var d=j.getbchtypeinfo(this.errorcorrectlevel<<3|c),b=0;15>b;b++){var e=!a&&1==(d>>b&1);6>b?this.modules[b][8]=e:8>b?this.modules[b+1][8]=e:this.modules[this.modulecount-15+b][8]=e}for(b=0;15>b;b++)e=!a&&1==(d>>b&1),8>b?this.modules[8][this.modulecount- b-1]=e:9>b?this.modules[8][15-b-1+1]=e:this.modules[8][15-b-1]=e;this.modules[this.modulecount-8][8]=!a},mapdata:function(a,c){for(var d=-1,b=this.modulecount-1,e=7,f=0,i=this.modulecount-1;0g;g++)if(null==this.modules[b][i-g]){var n=!1;f>>e&1));j.getmask(c,b,i-g)&&(n=!n);this.modules[b][i-g]=n;e--; -1==e&&(f++,e=7)}b+=d;if(0>b||this.modulecount<=b){b-=d;d=-d;break}}}};o.pad0=236;o.pad1=17;o.createdata=function(a,c,d){for(var c=p.getrsblocks(a, c),b=new t,e=0;e8*a)throw error("code length overflow. ("+b.getlengthinbits()+">"+8*a+")");for(b.getlengthinbits()+4<=8*a&&b.put(0,4);0!=b.getlengthinbits()%8;)b.putbit(!1);for(;!(b.getlengthinbits()>=8*a);){b.put(o.pad0,8);if(b.getlengthinbits()>=8*a)break;b.put(o.pad1,8)}return o.createbytes(b,c)};o.createbytes=function(a,c){for(var d= 0,b=0,e=0,f=array(c.length),i=array(c.length),g=0;g>>=1;return c},getpatternposition:function(a){return j.pattern_position_table[a-1]},getmask:function(a,c,d){switch(a){case 0:return 0==(c+d)%2;case 1:return 0==c%2;case 2:return 0==d%3;case 3:return 0==(c+d)%3;case 4:return 0==(math.floor(c/2)+math.floor(d/3))%2;case 5:return 0==c*d%2+c*d%3;case 6:return 0==(c*d%2+c*d%3)%2;case 7:return 0==(c*d%3+(c+d)%2)%2;default:throw error("bad maskpattern:"+ a);}},geterrorcorrectpolynomial:function(a){for(var c=new q([1],0),d=0;dc)switch(a){case 1:return 10;case 2:return 9;case s:return 8;case 8:return 8;default:throw error("mode:"+a);}else if(27>c)switch(a){case 1:return 12;case 2:return 11;case s:return 16;case 8:return 10;default:throw error("mode:"+a);}else if(41>c)switch(a){case 1:return 14;case 2:return 13;case s:return 16;case 8:return 12;default:throw error("mode:"+ a);}else throw error("type:"+c);},getlostpoint:function(a){for(var c=a.getmodulecount(),d=0,b=0;b=g;g++)if(!(0>b+g||c<=b+g))for(var h=-1;1>=h;h++)0>e+h||c<=e+h||0==g&&0==h||i==a.isdark(b+g,e+h)&&f++;5a)throw error("glog("+a+")");return l.log_table[a]},gexp:function(a){for(;0>a;)a+=255;for(;256<=a;)a-=255;return l.exp_table[a]},exp_table:array(256), log_table:array(256)},m=0;8>m;m++)l.exp_table[m]=1<m;m++)l.exp_table[m]=l.exp_table[m-4]^l.exp_table[m-5]^l.exp_table[m-6]^l.exp_table[m-8];for(m=0;255>m;m++)l.log_table[l.exp_table[m]]=m;q.prototype={get:function(a){return this.num[a]},getlength:function(){return this.num.length},multiply:function(a){for(var c=array(this.getlength()+a.getlength()-1),d=0;d this.getlength()-a.getlength())return this;for(var c=l.glog(this.get(0))-l.glog(a.get(0)),d=array(this.getlength()),b=0;b>>7-a%8&1)},put:function(a,c){for(var d=0;d>>c-d-1&1))},getlengthinbits:function(){return this.length},putbit:function(a){var c=math.floor(this.length/8);this.buffer.length<=c&&this.buffer.push(0);a&&(this.buffer[c]|=128>>>this.length%8);this.length++}};"string"===typeof h&&(h={text:h});h=r.extend({},{render:"canvas",width:256,height:256,typenumber:-1, correctlevel:2,background:"#ffffff",foreground:"#000000"},h);return this.each(function(){var a;if("canvas"==h.render){a=new o(h.typenumber,h.correctlevel);a.adddata(h.text);a.make();var c=document.createelement("canvas");c.width=h.width;c.height=h.height;for(var d=c.getcontext("2d"),b=h.width/a.getmodulecount(),e=h.height/a.getmodulecount(),f=0;f").css("width",h.width+"px").css("height",h.height+"px").css("border","0px").css("border-collapse","collapse").css("background-color",h.background);d=h.width/a.getmodulecount();b=h.height/a.getmodulecount();for(e=0;e").css("height",b+"px").appendto(c);for(i=0;i").css("width", d+"px").css("background-color",a.isdark(e,i)?h.foreground:h.background).appendto(f)}}a=c;jquery(a).appendto(this)})}})(jquery);