Multiple updates to tools and msgbase.js/page.js

This commit is contained in:
2024-12-03 15:54:17 +11:00
parent 4cbd37f880
commit 991a31e957
7 changed files with 730 additions and 420 deletions

37
tools/clear_tags.js Normal file
View File

@@ -0,0 +1,37 @@
/** CLEAR ALL THE TAGS IN A MESSAGE BASE */
load('ansitex/load/msgbases.js');
if (argv.length !== 1) {
writeln('ERROR: Need a msgbase page prefix');
exit(1);
} else {
writeln('Showing frames in:'+argv[0]);
}
var ma = new MsgAreas();
var area = ma.getArea(argv[0]);
writeln('Opening ['+argv[0]+'] - ('+area.code+')');
var msgbase = area.msgbase;
msgbase.open();
writeln('- First:'+msgbase.first_msg);
writeln('- Last:'+msgbase.last_msg);
var msgs = msgbase.get_all_msg_headers(false,false) || [];
for (var x in msgs) {
if (! msgs[x].tags)
continue;
writeln('TAG was:'+msgs[x].tags);
msgs[x].tags = '';
if (! msgbase.put_msg_header(msgs[x].number,msgs[x]))
writeln('ERROR:'+msgbase.error);
}
msgbase.close();

View File

@@ -1,19 +1,26 @@
load('load/string.js');
load('load/funcs.js');
load('ansitex/load/funcs.js');
load('ansitex/load/msgbases.js');
if (argv.length !== 1) {
writeln('ERROR: Need a msgbase page prefix');
exit(1);
} else {
writeln('Showing frames in:'+argv[0]);
}
ma = new MsgAreas();
area = ma.getArea(argv[0]);
var ma = new MsgAreas();
var area = ma.getArea(argv[0]);
writeln('Opening ['+argv[0]+'] - ('+area.msgbase.cfg.code+')');
writeln('- First:'+area.msgbase.first_msg);
writeln('- Last:'+area.msgbase.last_msg);
writeln('Opening ['+argv[0]+'] - ('+area.code+')');
for (var x in area.headers) {
writeln(padright(area.headers[x].number,4,' ')+':'+area.headers[x].tags);
}
var msgbase = area.msgbase;
msgbase.open();
writeln('- First:'+msgbase.first_msg);
writeln('- Last:'+msgbase.last_msg);
writeln('- Next:'+area.page_next);
msgbase.close();
var frames = area.frames;
for (var x in frames)
writeln(padright(frames[x].number,4,' ')+':'+frames[x].tags);

View File

@@ -1,20 +1,26 @@
load('ansitex/load/msgbases.js');
/**
* Go through our messages and tag a frame id for messages without one.
* @note: May need to run jsexec with -m 32MB to overcome memory issues
*/
load('load/string.js');
load('ansitex/load/msgbases.js');
const ma = new MsgAreas()
for (var i=0;i<ma.areas.length;i++) {
if (argv[0] && (argv[0] !== ma.areas[i].msgbase.cfg.code))
var areas = ma.managed;
for (var i=0;i<areas.length;i++) {
if (argv[0] && ((argv[0] !== areas[i].code) && (argv[0] !== areas[i].page_prefix)))
continue;
writeln('Area : '+ma.areas[i].full_name);
writeln('Total Messages : '+ma.areas[i].headers.length);
writeln('- Tagged Messages : '+ma.areas[i].list_tagged.length);
writeln('- Untagged Messages: '+ma.areas[i].list_untagged.length);
var total = areas[i].total_msgs;
var frames = areas[i].frames.length;
ma.areas[i].tag_msgs();
writeln('Area : '+areas[i].full_name);
writeln('- Total Messages : '+total);
writeln('- Page Prefix : '+areas[i].page_prefix);
writeln('- Tagged Messages : '+frames);
writeln('- Untagged Messages: '+(total-frames));
writeln('- Next Tag : '+areas[i].page_next);
areas[i].tag_msgs();
}

View File

@@ -1,4 +1,5 @@
load('ansitex/load/msgbases.js');
/* Show a list of our message bases */
var ma = new MsgAreas();
ma.list;