Untitled Diff

Created Diff never expires
5 removals
25 lines
15 additions
28 lines
function getverificationcode(isin) {
function getverificationcode(isin) {
if (isin.length != 12) return null;
if (isin.length != 12) return false;
var v = [];
var v = [];
for (var i = isin.length - 2; i >= 0; i--) {
for (var i = isin.length - 2; i >= 0; i--) {
var c = isin.charat(i);
var c = isin.charat(i);
if (isnan(c)) //not a digit
if (isnan(c)) { //not a digit
{
var lettercode = isin.charcodeat(i) - 55; //char ordinal + 9
var lettercode = isin.charcodeat(i) - 55; //char ordinal + 9
v.push(lettercode % 10);
v.push(lettercode % 10);
if (lettercode > 9)
if (lettercode > 9) {
v.push(math.floor(lettercode / 10));
v.push(math.floor(lettercode / 10));
} else
}
} else {
v.push(number(c));
v.push(number(c));
}
}
}
var sum = 0;
var sum = 0;
var l = v.length;
var l = v.length;
for (var i = 0; i < l; i++)
for (var i = 0; i < l; i++) {
if (i % 2 == 0) {
if (i % 2 == 0) {
var d = v[i] * 2;
var d = v[i] * 2;
sum += math.floor(d / 10);
sum += math.floor(d / 10);
sum += d % 10;
sum += d % 10;
} else
} else {
sum += v[i];
sum += v[i];
return 10 - (sum % 10);
}
}
return (10 - (sum % 10)) % 10
}
}