new object $log: $note;
var $described prose = ["the place that Ye administrators should be logging somewhat impacting changes that others would like to know about."];
var $has_commands remote = #[["read", [["read", "* on *", "read <any> on <this>", 'read_cmd, #[[1, ['any, []]], [3, ['this, []]]]]]]];
var $has_name name = ['uniq, "Generic Log", "the Generic Log"];
var $has_text text = ["9-28-94/22:33:17> foo"];
var $located location = $void;
var $located obvious = 1;
var $root created_on = 796268969;
var $root fertile = 1;
var $root flags = ['methods, 'code, 'fertile, 'core];
var $root inited = 1;
var $root managed = [$log];
var $root manager = $log;
var $root trusted = [];
var $thing gender = $gender_neuter;
public method .log() {
arg line;
var l;
(> .perms(caller(), 'trusts) <);
if (type(line) == 'list) {
for l in (line)
.ins_line((($time.format("%d %h %y %H:%M")) + "> ") + l);
} else {
.ins_line((($time.format("%d %h %y %H:%M")) + "> ") + line);
}
};
public method .read_cmd() {
arg @args;
var loglen, text;
if (0) {
// later on i'll adjust this so you can 'read from line 12 on log'
return;
} else {
text = .text();
loglen = text.length();
sender().tell(["---", (((((.name()) + ", entries ") + tostr(loglen - 10)) + " to ") + tostr(loglen)) + " (last 10 lines).", "---"]);
sender().tell(text.subrange(loglen - 10));
sender().tell("---");
}
};
root method .uninit_log() {
.set_text([]);
};