Player Creation Log #17

Parent #14Owner #36Flags Source QuestCore.db

Aliases: Player Creation Log, PCL

5 verbs · 26 properties · 0 children

Verbs

VerbSpecFlagsDefinerLines
display_seq_headersthis none thisrxd#176
msg_summary_linethis none thisrxd#1715
init_for_corethis none thisrxd#1723
is_usable_bythis none thisrxd#172
expire_old_messagesnone none nonerxd#178

Properties

PropertyDefinerFlagsOwnerValue
summary_uses_body#14rc#361
_mgr#14rc#36#13
mowner#14r#36#36
_genprop#14r#36""
moderator_notify#45rc#36<clear>
last_msg_date#45r#360
messages_going#45rc#36{}
moderated#45rc#36{#17}
moderator_forward#45rc#36<clear>
writers#45rc#36<clear>
readers#45rc#36<clear>
mail_notify#45r#36{#2}
mail_forward#45r#36{}
expire_period#45r#36<clear>
last_used_time#45r#36<clear>
messages#45rc#36{}
rmm_own_msgs#45rc#36<clear>
guests_can_send_here#45rc#36<clear>
messages_kept#45r#36<clear>
registered_email#45rc#36<clear>
email_validated#45rc#36<clear>
validation_password#45rc#36<clear>
key#1c#360
aliases#1r#36{"Player Creation Log", "PCL"}
description#1rc#36"Log of player creations."
object_size#1r#36{3894, -1090650497}

Ancestry

Ancestors (nearest first): #14 Generic Large-Capacity Mail Recipient#45 Generic Mail Recipient#1 Root Class

Children: none

Call graph

calls n17_0 #17:display_seq_headers n45_13 #45:ok n17_0->n45_13 n6_18 #6:tell n17_0->n6_18 n14_17 #14:display_seq_headers n17_0->n14_17 n17_1 #17:msg_summary_line n20_71 #20:redirect_ansi n17_1->n20_71 n17_2 #17:init_for_core n14_38 #14:init_for_core n17_2->n14_38 n56_8 #56:suspend_if_needed n17_2->n56_8 n14_36 #14:_fix_last_msg_date n17_2->n14_36 n17_3 #17:is_usable_by n45_2 #45:is_writable_by n17_3->n45_2 n17_4 #17:expire_old_messages n45_14 #45:ok_write n17_4->n45_14 n45_31 #45:expire_old_messages n17_4->n45_31

Source

display_seq_headers

Spec this none thisFlags rxdOwner #2Definer #17

Referenced by

none

Source

1":display_seq_headers(msg_seq[,cur])";
2if (!this:ok(caller, caller_perms()))
3return E_PERM;
4endif
5player:tell("       WHEN    BY        WHO                 EMAIL-ADDRESS");
6pass(@args);

msg_summary_line

Spec this none thisFlags rxdOwner #2Definer #17

Referenced by

none

Source

1when = ctime(args[1])[5..10];
2from = args[2];
3by = $string_utils:left(from[1..index(from, " (") - 1], -9);
4subject = args[4];
5who = subject[1..(open = index(subject, " (")) - 1];
6if ((close = rindex(subject, ")")) > open)
7who = who[1..min(9, $)] + subject[open..close];
8endif
9who = $string_utils:left(who, 18);
10line = args[("" in args) + 1];
11email = line[1..index(line + " ", " ") - 1];
12if (!index(email, "@"))
13email = "??";
14endif
15return tostr(when, "  ", by, " ", who, "  ", email);

init_for_core

Spec this none thisFlags rxdOwner #2Definer #17

Referenced by

none

Source

1if (caller_perms().wizard)
2pass();
3"this:rm_message_seq({1, 1 + this:length_all_msgs()})";
4"this:expunge_rmm()";
5for p in (properties(this))
6$command_utils:suspend_if_needed(0);
7if (p && (p[1] == " "))
8delete_property(this, p);
9endif
10endfor
11this.messages = this.messages_going = {};
12this:_fix_last_msg_date();
13this._genprop = "";
14this.mail_forward = {};
15this.mail_notify = {player};
16player.current_message = {@player.current_message, {this, 0, 0}};
17for p in ({"moderator_forward", "writers", "readers", "expire_period", "last_used_time"})
18clear_property(this, p);
19endfor
20this.moderated = {this};
21else
22return E_PERM;
23endif

is_usable_by

Spec this none thisFlags rxdOwner #2Definer #17

Referenced by

none

Source

1"Copied from Generic Mail Recipient (#6419):is_usable_by by Rog (#4292) Tue Mar  2 10:02:32 1993 PST";
2return (!this.moderated) || ((this:is_writable_by(who = args[1]) || (who in this.moderated)) || who.wizard);

expire_old_messages

Spec none none noneFlags rxdOwner #36Definer #17

Referenced by

none

Source

1"Stop breaking the expire task completely with out of seconds/ticks.";
2if (this:ok_write(caller, caller_perms()))
3fork (0)
4pass(@args);
5endfork
6else
7return E_PERM;
8endif