From c4fc9a9cf69fd87e4ab9136e6b4eaa9b1a9266b2 Mon Sep 17 00:00:00 2001 From: friendica Date: Thu, 5 Jun 2014 17:42:48 -0700 Subject: [PATCH] move hexit to addons where it belongs --- app/hex.apd | 3 - app/hex.png | Bin 12239 -> 0 bytes mod/hexit.php | 181 -------------------------------------------------- version.inc | 2 +- 4 files changed, 1 insertion(+), 185 deletions(-) delete mode 100644 app/hex.apd delete mode 100644 app/hex.png delete mode 100644 mod/hexit.php diff --git a/app/hex.apd b/app/hex.apd deleted file mode 100644 index 0537a1b8f..000000000 --- a/app/hex.apd +++ /dev/null @@ -1,3 +0,0 @@ -url: $baseurl/hexit -name: Hexit -photo: $baseurl/app/hex.png diff --git a/app/hex.png b/app/hex.png deleted file mode 100644 index ce4da8d46f084c639c85b032c26593915779b0fe..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12239 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 d38Y3UBLH84aWes -/** - * A function for converting hex <-> dec w/o loss of precision. - * - * The problem is that parseInt("0x12345...") isn't precise enough to convert - * 64-bit integers correctly. - * - * Internally, this uses arrays to encode decimal digits starting with the least - * significant: - * 8 = [8] - * 16 = [6, 1] - * 1024 = [4, 2, 0, 1] - */ - -// Adds two arrays for the given base (10 or 16), returning the result. -// This turns out to be the only "primitive" operation we need. -function add(x, y, base) { - var z = []; - var n = Math.max(x.length, y.length); - var carry = 0; - var i = 0; - while (i < n || carry) { - var xi = i < x.length ? x[i] : 0; - var yi = i < y.length ? y[i] : 0; - var zi = carry + xi + yi; - z.push(zi % base); - carry = Math.floor(zi / base); - i++; - } - return z; -} - -// Returns a*x, where x is an array of decimal digits and a is an ordinary -// JavaScript number. base is the number base of the array x. -function multiplyByNumber(num, x, base) { - if (num < 0) return null; - if (num == 0) return []; - - var result = []; - var power = x; - while (true) { - if (num & 1) { - result = add(result, power, base); - } - num = num >> 1; - if (num === 0) break; - power = add(power, power, base); - } - - return result; -} - -function parseToDigitsArray(str, base) { - var digits = str.split(''); - var ary = []; - for (var i = digits.length - 1; i >= 0; i--) { - var n = parseInt(digits[i], base); - if (isNaN(n)) return null; - ary.push(n); - } - return ary; -} - -function convertBase(str, fromBase, toBase) { - var digits = parseToDigitsArray(str, fromBase); - if (digits === null) return null; - - var outArray = []; - var power = [1]; - for (var i = 0; i < digits.length; i++) { - // invariant: at this point, fromBase^i = power - if (digits[i]) { - outArray = add(outArray, multiplyByNumber(digits[i], power, toBase), toBase); - } - power = multiplyByNumber(fromBase, power, toBase); - } - - var out = ''; - for (var i = outArray.length - 1; i >= 0; i--) { - out += outArray[i].toString(toBase); - } - return out; -} - -function decToHex(decStr) { - var hex = convertBase(decStr, 10, 16); - return hex ? '0x' + hex : null; -} - -function hexToDec(hexStr) { - if (hexStr.substring(0, 2) === '0x') hexStr = hexStr.substring(2); - hexStr = hexStr.toLowerCase(); - return convertBase(hexStr, 16, 10); -} - - - - function str_or_null(x) { - return x === null ? 'null' : x; - } - - // "1.234e+5" -> "12340" - function expandExponential(x) { - var pos = x.indexOf("e"); - if (pos === -1) pos = x.indexOf("E"); - if (pos === -1) return x; - - var base = x.substring(0, pos); - var pow = parseInt(x.substring(pos + 1), 10); - if (pow < 0) return x; // not supported. - - var dotPos = base.indexOf('.'); - if (dotPos === -1) dotPos = base.length; - - var ret = base.replace('.', ''); - while (ret.length < dotPos + pow) ret += '0'; - return ret; - } - - function boldDifference(correct, actual) { - for (var i = 0, j = 0; i < correct.length && j < actual.length; i++, j++) { - if (correct[i] !== actual[j]) { - break; - } - } - if (j < actual.length) { - return actual.substring(0, j) + '' + actual.substring(j) + ''; - } else { - return actual; - } - } - - function convert() { - var input = document.getElementById("in").value; - if (input) { - var aHex = str_or_null(decToHex(input)); - var aDec = str_or_null(hexToDec(input)); - var bHex = '0x' + (parseInt(input, 10)).toString(16); - var bDec = "" + expandExponential("" +parseInt(input, 16)); - - var html = '

To Decimal(' + input + ') = ' + aDec + '

'; - html += '

To Hex(' + input + ') = ' + aHex + '

'; - document.getElementById('result').innerHTML = html; - } - } - convert(); - - - - -

Hexit

- -

Type in a hex or decimal string:

- -

- - - -EOT; - -return $o; -} diff --git a/version.inc b/version.inc index 1bedfc22b..16fe33e87 100644 --- a/version.inc +++ b/version.inc @@ -1 +1 @@ -2014-06-04.696 +2014-06-05.697