Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- var ky = 'izyoption';
- var ch = 'check';
- var characters = '1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxz';
- function sk(k){
- if(k) ky = k;
- characters = characters.replace(ky.split(''),'');
- }
- function e(s){
- s += ch;
- var l = s.length;
- var et = new Array();
- for(var i=0;i<l;i++){
- var eh = s[i];
- var vl = eh.charCodeAt(0);
- et.push(flgh(eh,vl));
- }
- return trim(et.join(""),ky);
- }
- function d(s){
- var k = ky;
- s = s.replace(k.split(''),'-');
- s = s.split('-');
- var t_c = s.length;
- var a_w = new Array();
- for(var i=0;i<t_c;i++){
- a_w.push(flChkh(s[i]));
- }
- s = a_w.join("");
- var p = s.indexOf(ch);
- if(!p || p<0){
- return '';
- }else{
- return s.substr(0, - ch.length);
- }
- }
- function flgh(t,v){
- var s = ky;
- var kyl = s.length - 1;
- var ltl = characters.length - 1;
- var sm = 0;
- var ov = new Array();
- var cv = new Array();
- while(true){
- if(sm > v){
- ov.pop();
- cv.pop();
- var fval = v - ov.sum();
- ov.push(fval);
- cv.push(characters[fval]);
- return cv.join("") + s[mt_rand(0,kyl)];
- }else{
- var ra = mt_rand(0,ltl);
- ov.push(ra);
- var ratx = characters[ra];
- cv.push(ratx);
- sm = ov.sum();
- }
- }
- }
- function flChkh(w){
- var al = characters;
- var ntr = new Array();
- var c = w.length;
- for(var i=0;i<c;i++){
- ntr.push(al.indexOf(w[i]));
- }
- return String.fromCharCode(ntr.sum());
- }
- Array.prototype.sum = function(selector) {
- if (typeof selector !== 'function') {
- selector = function(item) {
- return item;
- }
- }
- var sum = 0;
- for (var i = 0; i < this.length; i++) {
- sum += parseFloat(selector(this[i]));
- }
- return sum;
- };
- function mt_rand(min, max) {
- var argc = arguments.length;
- if (argc === 0) {
- min = 0;
- max = 2147483647;
- }else if(argc === 1){
- throw new Error('Warning: mt_rand() expects exactly 2 parameters, 1 given');
- }else{
- min = parseInt(min, 10);
- max = parseInt(max, 10);
- }
- return Math.floor(Math.random() * (max - min + 1)) + min;
- }
- function trim(str, charlist) {
- // discuss at: http://phpjs.org/functions/trim/
- // original by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
- // improved by: mdsjack (http://www.mdsjack.bo.it)
- // improved by: Alexander Ermolaev (http://snippets.dzone.com/user/AlexanderErmolaev)
- // improved by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
- // improved by: Steven Levithan (http://blog.stevenlevithan.com)
- // improved by: Jack
- // input by: Erkekjetter
- // input by: DxGx
- // bugfixed by: Onno Marsman
- // example 1: trim(' Kevin van Zonneveld ');
- // returns 1: 'Kevin van Zonneveld'
- // example 2: trim('Hello World', 'Hdle');
- // returns 2: 'o Wor'
- // example 3: trim(16, 1);
- // returns 3: 6
- var whitespace, l = 0,
- i = 0;
- str += '';
- if (!charlist) {
- // default list
- whitespace =
- ' \n\r\t\f\x0b\xa0\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u200b\u2028\u2029\u3000';
- } else {
- // preg_quote custom list
- charlist += '';
- whitespace = charlist.replace(/([\[\]\(\)\.\?\/\*\{\}\+\$\^\:])/g, '$1');
- }
- l = str.length;
- for (i = 0; i < l; i++) {
- if (whitespace.indexOf(str.charAt(i)) === -1) {
- str = str.substring(i);
- break;
- }
- }
- l = str.length;
- for (i = l - 1; i >= 0; i--) {
- if (whitespace.indexOf(str.charAt(i)) === -1) {
- str = str.substring(0, i + 1);
- break;
- }
- }
- return whitespace.indexOf(str.charAt(0)) === -1 ? str : '';
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement