Untitled Diff

Created Diff never expires
5 removals
Lines
Total
Removed
Words
Total
Removed
To continue using this feature, upgrade to
Diffchecker logo
Diffchecker Pro
25 lines
15 additions
Lines
Total
Added
Words
Total
Added
To continue using this feature, upgrade to
Diffchecker logo
Diffchecker Pro
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
}
}