/
ColdCore-3.0a9.02/
ColdCore-3.0a9.02/src/
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([]);
};