home *** CD-ROM | disk | FTP | other *** search
- class NumTrans
- {
- function NumTrans()
- {
- }
- static function encode(str)
- {
- var str2encode = str;
- var prev = "";
- var leadingZeros = 0;
- while(str2encode.charCodeAt(0) == 48)
- {
- str2encode = str2encode.substr(1,str.length - 1);
- leadingZeros++;
- }
- var _loc1_ = new Array();
- var i = 48;
- while(i < 58)
- {
- _loc1_.push(String.fromCharCode(i));
- i++;
- }
- var i = 65;
- while(i < 91)
- {
- _loc1_.push(String.fromCharCode(i));
- i++;
- }
- var i = 97;
- while(i < 123)
- {
- _loc1_.push(String.fromCharCode(i));
- i++;
- }
- var _loc3_ = Number(str2encode);
- var _loc2_ = "";
- var modulo = 0;
- var timeOut = 0;
- while(_loc3_ > 0 && timeOut < 20)
- {
- modulo = _loc3_ % _loc1_.length;
- _loc2_ = _loc1_[modulo] + _loc2_;
- _loc3_ -= modulo;
- _loc3_ /= _loc1_.length;
- timeOut++;
- }
- var i = 0;
- while(i < leadingZeros)
- {
- _loc2_ = "0" + _loc2_;
- i++;
- }
- return _loc2_;
- }
- static function decode(str)
- {
- var str2decode = str;
- var _loc1_ = 0;
- var _loc2_ = new Array();
- var _loc3_ = 48;
- while(_loc3_ < 58)
- {
- _loc2_[_loc3_] = _loc1_;
- _loc1_ = _loc1_ + 1;
- _loc3_ = _loc3_ + 1;
- }
- _loc3_ = 65;
- while(_loc3_ < 91)
- {
- _loc2_[_loc3_] = _loc1_;
- _loc1_ = _loc1_ + 1;
- _loc3_ = _loc3_ + 1;
- }
- _loc3_ = 97;
- while(_loc3_ < 123)
- {
- _loc2_[_loc3_] = _loc1_;
- _loc1_ = _loc1_ + 1;
- _loc3_ = _loc3_ + 1;
- }
- var leadingZeros = 0;
- while(str2decode.charCodeAt(0) == 48)
- {
- str2decode = str2decode.substr(1,str.length - 1);
- leadingZeros++;
- }
- var splitStr = str2decode.split("");
- var sum = 0;
- var exp = 1;
- _loc3_ = splitStr.length - 1;
- while(_loc3_ >= 0)
- {
- sum += Number(_loc2_[splitStr[_loc3_].charCodeAt(0)]) * exp;
- exp *= 62;
- _loc3_ = _loc3_ - 1;
- }
- var res = sum.toString();
- _loc3_ = 0;
- while(_loc3_ < leadingZeros)
- {
- res = "0" + res;
- _loc3_ = _loc3_ + 1;
- }
- return res;
- }
- }
-