SQRL Login with Viewdata
This commit is contained in:
parent
224d4cbbb5
commit
424e4a8f64
@ -20,7 +20,7 @@ logovtx=AUECTgNTBEkHdGV4
|
|||||||
key=0@videotex
|
key=0@videotex
|
||||||
logoans=AWgBUkEBR04BQlMBWUkBbgE3AWt0ZXgBbg==
|
logoans=AWgBUkEBR04BQlMBWUkBbgE3AWt0ZXgBbg==
|
||||||
logovtx=AUECTgNTBEkHdGV4
|
logovtx=AUECTgNTBEkHdGV4
|
||||||
user=1,3
|
user=1
|
||||||
|
|
||||||
; Ansitex Help Pages
|
; Ansitex Help Pages
|
||||||
[prefix:516]
|
[prefix:516]
|
||||||
|
@ -396,6 +396,54 @@ function ANSIFrame() {
|
|||||||
return output;
|
return output;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
this.qrcode = function(qr,subframe) {
|
||||||
|
// SMALL Image
|
||||||
|
var full = ascii(0xdb);
|
||||||
|
var top = ascii(0xdf);
|
||||||
|
var bot = ascii(0xdc);
|
||||||
|
var blank = ' ';
|
||||||
|
|
||||||
|
var qrcode = '';
|
||||||
|
|
||||||
|
/*
|
||||||
|
// Render the top line
|
||||||
|
var line = ascii(27)+'[1;37m'+bot;
|
||||||
|
for (var y = 0; y < qr.size; y++) {
|
||||||
|
line += bot;
|
||||||
|
}
|
||||||
|
qrcode += line+bot+bot+ascii(27)+'[0m'+"\r\n";
|
||||||
|
*/
|
||||||
|
|
||||||
|
// Render the body
|
||||||
|
for (var x = -1; x < qr.size; x=x+2) {
|
||||||
|
line = ascii(27)+'[1;37m'+full;
|
||||||
|
|
||||||
|
for (var y = 0; y < qr.size; y++) {
|
||||||
|
// Top is white
|
||||||
|
if (((x==-1)? 0 : qr.getModule(x, y)) == 0) {
|
||||||
|
line += (qr.getModule(x+1, y)) ? top : full;
|
||||||
|
|
||||||
|
// Top is black
|
||||||
|
} else {
|
||||||
|
line += (qr.getModule(x+1, y)) ? blank : bot;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
qrcode += line+full+ascii(27)+'[0m'+"\r\n";
|
||||||
|
}
|
||||||
|
|
||||||
|
// Render the bottom
|
||||||
|
line = ascii(27)+'[1;37m'+top;
|
||||||
|
for (var y = 0; y < qr.size; y++) {
|
||||||
|
line += top;
|
||||||
|
}
|
||||||
|
qrcode += line+top+ascii(27)+'[0m'+"\r\n";
|
||||||
|
|
||||||
|
ans2bin(fo.parse(qrcode),subframe);
|
||||||
|
subframe.open();
|
||||||
|
subframe.cycle();
|
||||||
|
};
|
||||||
|
|
||||||
this.save=function() {
|
this.save=function() {
|
||||||
file = system.mods_dir+'ansitex/text/'+this.page+'.tex';
|
file = system.mods_dir+'ansitex/text/'+this.page+'.tex';
|
||||||
w = new File(file);
|
w = new File(file);
|
||||||
|
@ -23,12 +23,7 @@ function sqrllogin() {
|
|||||||
var complete = false;
|
var complete = false;
|
||||||
var cancel = false;
|
var cancel = false;
|
||||||
|
|
||||||
var page = new Frame(1,2,80,22,BG_BLACK|LIGHTGRAY);
|
fo.render();
|
||||||
|
|
||||||
page.gotoxy(1,1);
|
|
||||||
ans2bin(fo.parse(base64_decode(fo.content)),page);
|
|
||||||
page.open();
|
|
||||||
page.cycle();
|
|
||||||
|
|
||||||
log(LOG_DEBUG,'OPTIONS: '+JSON.stringify(loadOptions('sqrl')));
|
log(LOG_DEBUG,'OPTIONS: '+JSON.stringify(loadOptions('sqrl')));
|
||||||
sqrl = loadOptions('sqrl');
|
sqrl = loadOptions('sqrl');
|
||||||
@ -46,52 +41,8 @@ function sqrllogin() {
|
|||||||
.map(function(x) {return x.charCodeAt(0)});
|
.map(function(x) {return x.charCodeAt(0)});
|
||||||
var qr = qrcodegen.QrCode.encodeBinary(data,qrcodegen.QrCode.Ecc.LOW);
|
var qr = qrcodegen.QrCode.encodeBinary(data,qrcodegen.QrCode.Ecc.LOW);
|
||||||
|
|
||||||
// SMALL Image
|
subframe = new Frame(38,2,43,22,BG_BLACK|LIGHTGRAY);
|
||||||
var full = ascii(0xdb);
|
fo.qrcode(qr,subframe);
|
||||||
var top = ascii(0xdf);
|
|
||||||
var bot = ascii(0xdc);
|
|
||||||
var blank = ' ';
|
|
||||||
|
|
||||||
var qrcode = '';
|
|
||||||
|
|
||||||
/*
|
|
||||||
// Render the top line
|
|
||||||
var line = ascii(27)+'[1;37m'+bot;
|
|
||||||
for (var y = 0; y < qr.size; y++) {
|
|
||||||
line += bot;
|
|
||||||
}
|
|
||||||
qrcode += line+bot+bot+ascii(27)+'[0m'+"\r\n";
|
|
||||||
*/
|
|
||||||
|
|
||||||
// Render the body
|
|
||||||
for (var x = -1; x < qr.size; x=x+2) {
|
|
||||||
line = ascii(27)+'[1;37m'+full;
|
|
||||||
|
|
||||||
for (var y = 0; y < qr.size; y++) {
|
|
||||||
// Top is white
|
|
||||||
if (((x==-1)? 0 : qr.getModule(x, y)) == 0) {
|
|
||||||
line += (qr.getModule(x+1, y)) ? top : full;
|
|
||||||
|
|
||||||
// Top is black
|
|
||||||
} else {
|
|
||||||
line += (qr.getModule(x+1, y)) ? blank : bot;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
qrcode += line+full+ascii(27)+'[0m'+"\r\n";
|
|
||||||
}
|
|
||||||
|
|
||||||
// Render the bottom
|
|
||||||
line = ascii(27)+'[1;37m'+top;
|
|
||||||
for (var y = 0; y < qr.size; y++) {
|
|
||||||
line += top;
|
|
||||||
}
|
|
||||||
qrcode += line+top+ascii(27)+'[0m'+"\r\n";
|
|
||||||
|
|
||||||
subframe = new Frame(37,2,43,22,BG_BLACK|LIGHTGRAY,page);
|
|
||||||
ans2bin(fo.parse(qrcode),subframe);
|
|
||||||
subframe.open();
|
|
||||||
subframe.cycle();
|
|
||||||
|
|
||||||
fo.sendBaseline('CANCEL_MSG',false);
|
fo.sendBaseline('CANCEL_MSG',false);
|
||||||
|
|
||||||
@ -113,22 +64,38 @@ function sqrllogin() {
|
|||||||
http.SendRequest();
|
http.SendRequest();
|
||||||
http.ReadResponse();
|
http.ReadResponse();
|
||||||
|
|
||||||
if (http.response_code == 404) {
|
switch (http.response_code) {
|
||||||
|
case 404:
|
||||||
log(LOG_DEBUG,'- NUT not Authorised yet.');
|
log(LOG_DEBUG,'- NUT not Authorised yet.');
|
||||||
|
break;
|
||||||
|
|
||||||
} else {
|
case 200:
|
||||||
log(LOG_INFO,'NUT: ('+JSON.stringify(http.response_code)+'): '+JSON.stringify(http.body));
|
if (http.body.isReady) {
|
||||||
|
log(LOG_INFO,'NUT: '+http.body.msg);
|
||||||
//@todo
|
log(LOG_INFO,'NEXT: '+http.body.nextPage);
|
||||||
action = ACTION_GOTO;
|
|
||||||
next_page = { frame: 98,index: 'a' };
|
|
||||||
|
|
||||||
complete = true;
|
complete = true;
|
||||||
|
if (typeof subframe === 'object')
|
||||||
subframe.close();
|
subframe.close();
|
||||||
page.close();
|
|
||||||
|
|
||||||
// We are done
|
// We are done
|
||||||
read = '2';
|
read = '2';
|
||||||
|
|
||||||
|
} else {
|
||||||
|
log(LOG_ERROR,'- Unhandled isReady: '+http.body.isReady);
|
||||||
|
|
||||||
|
// We are done
|
||||||
|
read = '2';
|
||||||
|
cancel = true;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
|
||||||
|
default:
|
||||||
|
log(LOG_ERROR,'- Unhandled response code: '+http.response_code);
|
||||||
|
|
||||||
|
// We are done
|
||||||
|
read = '2';
|
||||||
|
cancel = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -141,7 +108,6 @@ function sqrllogin() {
|
|||||||
complete = true;
|
complete = true;
|
||||||
if (typeof subframe === 'object')
|
if (typeof subframe === 'object')
|
||||||
subframe.close();
|
subframe.close();
|
||||||
page.close();
|
|
||||||
action = ACTION_GOTO;
|
action = ACTION_GOTO;
|
||||||
next_page = { frame: 98,index: 'a' };
|
next_page = { frame: 98,index: 'a' };
|
||||||
}
|
}
|
||||||
|
@ -38,7 +38,7 @@ var VIEWDATA_CANNOT_SEND_TOKEN = ascii(27)+'ACANNOT SEND VALIDATION CODE, PLEAS
|
|||||||
var VIEWDATA_USER_EXISTS = ascii(27)+'AERROR USER EXISTS, PLEASE TRY AGAIN *00';
|
var VIEWDATA_USER_EXISTS = ascii(27)+'AERROR USER EXISTS, PLEASE TRY AGAIN *00';
|
||||||
var VIEWDATA_USER_CREATE_ERROR = ascii(27)+'AERROR CREATING USER, PLEASE TRY AGAIN *00';
|
var VIEWDATA_USER_CREATE_ERROR = ascii(27)+'AERROR CREATING USER, PLEASE TRY AGAIN *00';
|
||||||
var VIEWDATA_LOGIN_ERROR = ascii(27)+'AERROR LOGGING IN, PLEASE TRY AGAIN *00';
|
var VIEWDATA_LOGIN_ERROR = ascii(27)+'AERROR LOGGING IN, PLEASE TRY AGAIN *00';
|
||||||
var VIEWDATA_CANCEL_MSG = ascii(27)+'GPRESS 2 TO CANCEL';
|
var VIEWDATA_CANCEL_MSG = ascii(27)+'BPRESS 2 TO CANCEL';
|
||||||
|
|
||||||
// Our frame object
|
// Our frame object
|
||||||
function VIEWDATAFrame() {
|
function VIEWDATAFrame() {
|
||||||
@ -111,7 +111,7 @@ function VIEWDATAFrame() {
|
|||||||
|
|
||||||
header = VIEWDATA_DOWN;
|
header = VIEWDATA_DOWN;
|
||||||
|
|
||||||
log(LOG_DEBUG,' - FRAME User: ['+JSON.stringify(user)+']');
|
//log(LOG_DEBUG,' - FRAME User: ['+JSON.stringify(user)+']');
|
||||||
|
|
||||||
// Dont show the page number on system login page
|
// Dont show the page number on system login page
|
||||||
if (user.number || (this.type != FRAME_TYPE_LOGIN && NO_HISTORY_FRAMES.indexOf(this.page) == -1)) {
|
if (user.number || (this.type != FRAME_TYPE_LOGIN && NO_HISTORY_FRAMES.indexOf(this.page) == -1)) {
|
||||||
@ -193,7 +193,7 @@ function VIEWDATAFrame() {
|
|||||||
|
|
||||||
for(p=0;p<text.length;p++) {
|
for(p=0;p<text.length;p++) {
|
||||||
// Look for a special character until the end of the frame width
|
// Look for a special character until the end of the frame width
|
||||||
cte = (r*FRAME_WIDTH - ((r-1)*FRAME_WIDTH+c));
|
cte = (r*VIEWDATA_FRAME_WIDTH - ((r-1)*VIEWDATA_FRAME_WIDTH+c));
|
||||||
match = text.substr(p,cte).match(/[\r\n\x1b]/);
|
match = text.substr(p,cte).match(/[\r\n\x1b]/);
|
||||||
//log(LOG_DEBUG,'SPECIAL CHAR ['+r+'x'+c+'] ['+p+'-'+cte+'] for: '+match);
|
//log(LOG_DEBUG,'SPECIAL CHAR ['+r+'x'+c+'] ['+p+'-'+cte+'] for: '+match);
|
||||||
|
|
||||||
@ -388,7 +388,7 @@ function VIEWDATAFrame() {
|
|||||||
p += advance;
|
p += advance;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (c>FRAME_WIDTH) {
|
if (c>VIEWDATA_FRAME_WIDTH) {
|
||||||
c = 1;
|
c = 1;
|
||||||
r++;
|
r++;
|
||||||
}
|
}
|
||||||
@ -404,6 +404,69 @@ function VIEWDATAFrame() {
|
|||||||
return output;
|
return output;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
this.qrcode = function(qr,subframe) {
|
||||||
|
var offset = 18/2; // @todo For some reason RIGHT movements results in 2 spaces
|
||||||
|
// Render the body
|
||||||
|
var qrcode = VIEWDATA_HOME+VIEWDATA_DOWN.repeat(5)+VIEWDATA_RIGHT.repeat(offset);
|
||||||
|
//var line = '';
|
||||||
|
|
||||||
|
for (var x = -1; x < qr.size; x=x+3) {
|
||||||
|
var line = VIEWDATA_RIGHT.repeat(offset)+ascii(0x97);
|
||||||
|
|
||||||
|
for (var y = -1; y < qr.size; y=y+2) {
|
||||||
|
var char = 0;
|
||||||
|
|
||||||
|
//TL
|
||||||
|
char |= ((x==-1) || (y==-1) || ! qr.getModule(x,y)) ? (1<<0) : (0<<0);
|
||||||
|
//TR
|
||||||
|
char |= ((x==-1) || (y == qr.size-1) || ! qr.getModule(x,y+1)) ? (1<<1) : (0<<1);
|
||||||
|
//ML
|
||||||
|
char |= ((y==-1) || ! qr.getModule(x+1,y)) ? (1<<2) : (0<<2);
|
||||||
|
//MR
|
||||||
|
char |= ((y == qr.size-1) || ! qr.getModule(x+1,y+1)) ? (1<<3) : (0<<3);
|
||||||
|
//BL
|
||||||
|
char |= ((x==qr.size-2) || (y==-1) || ! qr.getModule(x+2,y)) ? (1<<4) : (0<<4);
|
||||||
|
//BR
|
||||||
|
char |= ((x==qr.size-2) || (y == qr.size-1) || ! qr.getModule(x+2,y+1)) ? (1<<5) : (0<<5);
|
||||||
|
|
||||||
|
char += 0x20;
|
||||||
|
if (char > 0x3f)
|
||||||
|
char += 0x20;
|
||||||
|
|
||||||
|
line += ascii(char);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Render the right column
|
||||||
|
if (y%2)
|
||||||
|
line += ascii(0x35);
|
||||||
|
|
||||||
|
qrcode += line+' '.repeat(VIEWDATA_FRAME_WIDTH-Math.ceil(qr.size/2)-2-offset*2-(y%2 ? 0 : 1))+VIEWDATA_RIGHT.repeat(offset);
|
||||||
|
}
|
||||||
|
|
||||||
|
log(LOG_DEBUG,'WIDTH:'+VIEWDATA_FRAME_WIDTH);
|
||||||
|
log(LOG_DEBUG,'QR :'+(Math.ceil(qr.size/2)+1));
|
||||||
|
log(LOG_DEBUG,'OFF :'+offset);
|
||||||
|
log(LOG_DEBUG,'Y :'+(y%2 ? 0 : 1));
|
||||||
|
log(LOG_DEBUG,'X :'+(x%3 ? 0 : 1));
|
||||||
|
|
||||||
|
// Render the bottom
|
||||||
|
if (x%3) {
|
||||||
|
line = VIEWDATA_RIGHT.repeat(offset)+ascii(0x97);
|
||||||
|
for (var y = 0; y < qr.size; y=y+2) {
|
||||||
|
line += ascii(0x23);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Render the right column
|
||||||
|
if (y%2 == 0) {
|
||||||
|
line += ascii(0x21);
|
||||||
|
}
|
||||||
|
|
||||||
|
qrcode += line+' '.repeat(VIEWDATA_FRAME_WIDTH-Math.ceil(qr.size/2)-2-offset-(y%2 ? 0 : 1));
|
||||||
|
}
|
||||||
|
|
||||||
|
write_raw(qrcode+VIEWDATA_DOWN);
|
||||||
|
};
|
||||||
|
|
||||||
this.save=function() {
|
this.save=function() {
|
||||||
file = system.mods_dir+'ansitex/text/'+this.page+'.tex';
|
file = system.mods_dir+'ansitex/text/'+this.page+'.tex';
|
||||||
w = new File(file);
|
w = new File(file);
|
||||||
|
2
main.js
2
main.js
@ -810,7 +810,7 @@ while(bbs.online) {
|
|||||||
// If the user has access to the frame
|
// If the user has access to the frame
|
||||||
if (fo.accessible) {
|
if (fo.accessible) {
|
||||||
if (fo.isMember && fo.type == FRAME_TYPE_LOGIN) {
|
if (fo.isMember && fo.type == FRAME_TYPE_LOGIN) {
|
||||||
fo.sendBaseline(ALREADY_MEMBER,false);
|
fo.sendBaseline('ALREADY_MEMBER',false);
|
||||||
mode = action = false;
|
mode = action = false;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
@ -1 +1 @@
|
|||||||
{"version":1,"frame":"980","index":"a","owner":9,"cost":0,"content":"ICARLGwSfGwUfCwTLBc3a38jMzdrIzUgICAgICAgICAgICAgICAgICAgEX9rEn9qFC98E38XNWhvIDw9JCw1ICAgICAgICAgICAgICAgICAgIBEvLhIvKhQsLxMvF3VwenBxdXpwNSAgICAgICAgICAgICAgICAgICAgVmlkZW90ZXggICAgICAgICAgICAgICAgICAgIA1XZWxjb21lICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFdlbGNvbWUsIHlvdSBoYXZlIGNvbm5lY3RlZCB0byAgICAgICAgIAFBAk4DUwRJB3RleCBhIEJCUyB0aGF0IGlzIGJhc2VkIG9uIHRoZSAgMTk4MCdzIFZpZGVvdGV4IHNlcnZpY2UuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBEZXBlbmRpbmcgb24gd2hpY2ggY291bnRyeSB5b3UgbGl2ZSBpbiAgdGhlIFZpZGVvdGV4IHNlcnZpY2Ugd2FzIGNhbGxlZCBWaWF0ZWwgIChBVSksIFByZXN0ZWwgKFVLKSwgTWluaXRlbCAoRlIpLCAgICAgICBUZWxpZG9uIChDQSksIEliZXJ0ZXggKFNQKSwgZXRjICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIElmIHlvdSBnb3QgaGVyZSBieSBtaXN0YWtlLCB5b3Ugc2hvdWxkICBkaXNjb25uZWN0IG5vdywgb3RoZXJ3aXNlIHlvdSBjYW4gICAgICAgcHJlc3MCMAd0byBnZXQgdG8gdGhlIGxvZ2luIHNjcmVlbi4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCg==","isPublic":1,"isAccessible":1,"type":"i","key":[0,null,null,null,null,null,null,null,null,null],"date":"2020-07-05T12:57:03.790Z"}
|
{"version":1,"frame":"980","index":"a","owner":9,"cost":0,"content":"ICARLGwSfGwUfCwTLBc3a38jMzdrIzUgICAgICAgICAgICAgICAgICAgEX9rEn9qFC98E38XNWhvIDw9JCw1ICAgICAgICAgICAgICAgICAgIBEvLhIvKhQsLxMvF3VwenBxdXpwNSAgICAgICAgICAgICAgICAgICAgVmlkZW90ZXggICAgICAgICAgICAgICAgICAgIA1XZWxjb21lICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFdlbGNvbWUsIHlvdSBoYXZlIGNvbm5lY3RlZCB0byAgICAgICAgIAFBAk4DUwRJB3RleCBhIEJCUyB0aGF0IGlzIGJhc2VkIG9uIHRoZSAgMTk4MCdzIFZpZGVvdGV4IHNlcnZpY2UuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBEZXBlbmRpbmcgb24gd2hpY2ggY291bnRyeSB5b3UgbGl2ZSBpbiAgdGhlIFZpZGVvdGV4IHNlcnZpY2Ugd2FzIGNhbGxlZCBWaWF0ZWwgIChBVSksIFByZXN0ZWwgKFVLKSwgTWluaXRlbCAoRlIpLCAgICAgICBUZWxpZG9uIChDQSksIEliZXJ0ZXggKFNQKSwgZXRjICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIElmIHlvdSBnb3QgaGVyZSBieSBtaXN0YWtlLCB5b3Ugc2hvdWxkICBkaXNjb25uZWN0IG5vdywgb3RoZXJ3aXNlIHlvdSBjYW4gICAgICAgcHJlc3MCMAd0byBnZXQgdG8gdGhlIGxvZ2luIHNjcmVlbi4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUbyBsb2dpbiB1c2luZyBTUVJMLCBwcmVzcwIxICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA==","isPublic":1,"isAccessible":1,"type":"i","key":[0,982,null,null,null,null,null,null,null,null],"date":"2020-07-05T12:57:03.790Z"}
|
||||||
|
@ -1 +1 @@
|
|||||||
{"version":1,"frame":981,"index":"a","owner":9,"cost":0,"content":"ICARLGwSfGwUfCwTLBc3a38jMzdrIzUgICAgICACMDAwMTAwMDEwMSAgEX9rEn9qFC98E38XNWhvIDw9JCw1ByAgICAgICAgICAgICAgICAgIBEvLhIvKhQsLxMvF3VwenBxdXpwNSAgICAgICAgICAgICAgICAgICAgVmlkZW90ZXggICAgICAgICAgICAgICAgICAgIA1SZWdpc3RlciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICECKiogB3RvIGNsZWFyIGlucHV0ICAgICAgICAgICAgICAgICAgICAgAiowMAd0byBzdGFydCBhZ2FpbiAgICAgICBVc2UCXwd0byBFbnRlciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICABRW1haWwgICAgOgcuLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uICAgAVVzZXIgSUQgIDoHLi4uLi4uLi4uLi4uLi4uICAgICAgICAgICAgIAFQYXNzd29yZCA6By4uLi4uLi4uLi4uLi4uLiAgICAgICAgICAgICABRnVsbCBOYW1lOgcuLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uICAgAUNpdHkgICAgIDoHLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLiAgIAFDb3VudHJ5ICA6By4uLiAgICAgICAgICAgICAgICAgICAgICAgICABUG9zdCBDb2RlOgcuLi4uLi4uLi4uICAgICAgICAgICAgICAgICAgAVRva2VuICAgIDoHLi4uLi4uICAgICAgICAgICAgICAgICAgICAgIBoXODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJlZ2lzdGVyaW5nIGFuZCB1c2luZyB0aGlzIHN5c3RlbSwgeW91ICBhZ3JlZSB0byBhYmlkZSBieSB0aGUgc3lzdGVtIHJ1bGVzLiBTZWUCKjk4OF8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA==","isPublic":1,"isAccessible":1,"type":"r","key":[980,"register",null,null,null,null,null,null,null,null],"frame_fields":[{"ftype":"t","flength":25,"fchar":".","fname":"EMAIL","r":9,"c":12,"attribute":{},"fvalue":""},{"ftype":"t","flength":15,"fchar":".","fname":"UID","r":10,"c":12,"attribute":{},"fvalue":""},{"ftype":"p","flength":15,"fchar":".","fname":"PASS","r":11,"c":12,"attribute":{},"fvalue":""},{"ftype":"t","flength":25,"fchar":".","fname":"FULLNAME","r":12,"c":12,"attribute":{},"fvalue":""},{"ftype":"t","flength":25,"fchar":".","fname":"CITY","r":13,"c":12,"attribute":{},"fvalue":""},{"ftype":"t","flength":3,"fchar":".","fname":"COUNTRY","r":14,"c":12,"attribute":{},"fvalue":""},{"ftype":"t","flength":10,"fchar":".","fname":"PCODE","r":15,"c":12,"attribute":{},"fvalue":""},{"ftype":"t","flength":10,"fchar":".","fname":"TOKEN","r":16,"c":12,"attribute":{},"fvalue":""}],"date":"2020-07-08T05:17:35.174Z"}
|
{"version":1,"frame":981,"index":"a","owner":9,"cost":0,"content":"ICARLGwSfGwUfCwTLBc3a38jMzdrIzUgICAgICACMDAwMTAwMDEwMSAgEX9rEn9qFC98E38XNWhvIDw9JCw1ByAgICAgICAgICAgICAgICAgIBEvLhIvKhQsLxMvF3VwenBxdXpwNSAgICAgICAgICAgICAgICAgICAgVmlkZW90ZXggICAgICAgICAgICAgICAgICAgIA1SZWdpc3RlciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICACKiogB3RvIGNsZWFyIGlucHV0ICAgICAgICAgICAgICAgICAgICAgAiowMAd0byBzdGFydCBhZ2FpbiAgICAgICBVc2UCXwd0byBFbnRlciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICABRW1haWwgICAgOgcuLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uICAgAVVzZXIgSUQgIDoHLi4uLi4uLi4uLi4uLi4uICAgICAgICAgICAgIAFQYXNzd29yZCA6By4uLi4uLi4uLi4uLi4uLiAgICAgICAgICAgICABRnVsbCBOYW1lOgcuLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uICAgAUNpdHkgICAgIDoHLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLiAgIAFDb3VudHJ5ICA6By4uLiAgICAgICAgICAgICAgICAgICAgICAgICABUG9zdCBDb2RlOgcuLi4uLi4uLi4uICAgICAgICAgICAgICAgICAgAVRva2VuICAgIDoHLi4uLi4uICAgICAgICAgICAgICAgICAgICAgIBoXODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJlZ2lzdGVyaW5nIGFuZCB1c2luZyB0aGlzIHN5c3RlbSwgeW91ICBhZ3JlZSB0byBhYmlkZSBieSB0aGUgc3lzdGVtIHJ1bGVzLiBTZWUCKjk4OF8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA==","isPublic":1,"isAccessible":1,"type":"r","key":[980,"register",null,null,null,null,null,null,null,null],"frame_fields":[{"ftype":"t","flength":25,"fchar":".","fname":"EMAIL","r":9,"c":12,"attribute":{},"fvalue":""},{"ftype":"t","flength":15,"fchar":".","fname":"UID","r":10,"c":12,"attribute":{},"fvalue":""},{"ftype":"p","flength":15,"fchar":".","fname":"PASS","r":11,"c":12,"attribute":{},"fvalue":""},{"ftype":"t","flength":25,"fchar":".","fname":"FULLNAME","r":12,"c":12,"attribute":{},"fvalue":""},{"ftype":"t","flength":25,"fchar":".","fname":"CITY","r":13,"c":12,"attribute":{},"fvalue":""},{"ftype":"t","flength":3,"fchar":".","fname":"COUNTRY","r":14,"c":12,"attribute":{},"fvalue":""},{"ftype":"t","flength":10,"fchar":".","fname":"PCODE","r":15,"c":12,"attribute":{},"fvalue":""},{"ftype":"t","flength":10,"fchar":".","fname":"TOKEN","r":16,"c":12,"attribute":{},"fvalue":""}],"date":"2020-07-08T05:17:35.174Z"}
|
||||||
|
1
text/982a.vtx
Normal file
1
text/982a.vtx
Normal file
@ -0,0 +1 @@
|
|||||||
|
{"version":1,"frame":"982","index":"a","owner":9,"cost":0,"content":"ICARLGwSfGwUfCwTLBc3a38jMzdrIzUgICAgICACMDAwMTAwMDEwMSAgEX9rEn9qFC98E38XNWhvIDw9JCw1ByAgICAgICAgICAgICAgICAgIBEvLhIvKhQsLxMvF3VwenBxdXpwNSAgICAgICAgICAgICAgICAgICAgVmlkZW90ZXggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVG8gY29tcGxldGUgdGhlICAgICAgICAgICAgICAgICAgICAgICAgIGF1dGhlbnRpY2F0aW9uLCAgICAgICAgICAgICAgICAgICAgICAgICB1c2UgeW91ciBTUVJMIGFwcCAgICAgICAgA0hPTEQgVElHSFQgICAgYW5kIHNjYW4gdGhlIFFSICAgICAgICAgA1dISUxFIFdFIEdFVCAgIGNvZGUuICAgICAgICAgICAgICAgICAgIANZT1UgQSBRUkNPREUgICAgICAgICAgICAgICAgICAgICAgICAgIAMobWF5IHRha2UgMzBzKSAgUmVnaXN0ZXJpbmcgYW5kICAgICAgICAgICAgICAgICAgICAgICAgIHVzaW5nIHRoaXMgc2l0ZSAgICAgICAgICAgICAgICAgICAgICAgICB5b3UgYWdyZWUgdG8gYWJpZGUgICAgICAgICAgICAgICAgICAgICAgYnkgdGhlIHN5c3RlbSAgICAgICAgICAgICAgICAgICAgICAgICAgIHJ1bGVzLiBWaWV3IHRob3NlICAgICAgICAgICAgICAgICAgICAgICBydWxlcyBvbgIqOTg4XyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA==","isPublic":1,"isAccessible":1,"type":"r","key":[98,"sqrllogin",98,98,null,null,null,null,null,null],"frame_fields": [],"date":"2020-08-09T11:42:40.643Z"}
|
@ -1 +1 @@
|
|||||||
{"version":1,"frame":98,"index":"b","owner":9,"cost":0,"content":"ICARLGwSfGwUfCwTLBc3a38jMzdrIzUgICAgICACMDAwMTAwMDEwMSAgEX9rEn9qFC98E38XNWhvIDw9JCw1ByAgICAgICAgICAgICAgICAgIBEvLhIvKhQsLxMvF3VwenBxdXpwNSAgICAgICAgICAgICAgICAgICAgVmlkZW90ZXggICAgICAgICAgICAgICAgICAgICANU2lnbiBJbiAgICAXcDBgMGAwYHBwIH81ICBgcHAgYHBwIHAwcDBwIGBwcCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgV2VsY29tZSB0bwFBAk4DUwRJB3RleC4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUbyBnZXQgdG8gdGhlIG1haW4gbWVudSwgeW91IGNhbiAgICAgICAgcHJlc3MCKjBfB2FueSB0aW1lLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQcmVzcwIwB3RvIGNvbnRpbnVlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA==","isPublic":0,"isAccessible":1,"type":"i","key":[1,null,null,null,null,null,null,null,null,null],"date":"2020-07-08T01:30:48.608Z"}
|
{"version":1,"frame":98,"index":"b","owner":9,"cost":0,"content":"ICARLGwSfGwUfCwTLBc3a38jMzdrIzUgICAgICACMDAwMTAwMDEwMSAgEX9rEn9qFC98E38XNWhvIDw9JCw1ByAgICAgICAgICAgICAgICAgIBEvLhIvKhQsLxMvF3VwenBxdXpwNSAgICAgICAgICAgICAgICAgICAgVmlkZW90ZXggICAgICAgICAgICAgICAgICAgICANU2lnbiBJbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgV2VsY29tZSB0bwFBAk4DUwRJB3RleC4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUbyBnZXQgdG8gdGhlIG1haW4gbWVudSwgeW91IGNhbiAgICAgICAgcHJlc3MCKjBfB2FueSB0aW1lLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQcmVzcwIwB3RvIGNvbnRpbnVlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA==","isPublic":0,"isAccessible":1,"type":"i","key":[1,null,null,null,null,null,null,null,null,null],"date":"2020-07-08T01:30:48.608Z"}
|
||||||
|
Loading…
Reference in New Issue
Block a user