(function(A){A.fn.alphanumeric=function(B){B=A.extend({ichars:"!@#$%^&*()+=[]\\';,/{}|\":<>?~`.- ",nchars:"",allow:""},B);return this.each(function(){if(B.nocaps){B.nchars+="ABCDEFGHIJKLMNOPQRSTUVWXYZ"}if(B.allcaps){B.nchars+="abcdefghijklmnopqrstuvwxyz"}s=B.allow.split("");for(i=0;i<s.length;i++){if(B.ichars.indexOf(s[i])!=-1){s[i]="\\"+s[i]}}B.allow=s.join("|");var D=new RegExp(B.allow,"gi");var C=B.ichars+B.nchars;C=C.replace(D,"");A(this).keypress(function(E){if(!E.charCode){k=String.fromCharCode(E.which)}else{k=String.fromCharCode(E.charCode)}if(C.indexOf(k)!=-1){E.preventDefault()}if(E.ctrlKey&&k=="v"){E.preventDefault()}});A(this).bind("contextmenu",function(){return false})})};A.fn.numeric=function(C){var B="abcdefghijklmnopqrstuvwxyz";B+=B.toUpperCase();C=A.extend({nchars:B},C);return this.each(function(){A(this).alphanumeric(C)})};A.fn.alpha=function(C){var B="1234567890";C=A.extend({nchars:B},C);return this.each(function(){A(this).alphanumeric(C)})}})(jQuery);