pt???rv {
# consider delivered:
# (very recently passed, and the user talks)
- tell_delete_msgs {} $nl
+ set ndel [tell_delete_msgs {} $nl]
+ sendprivmsg $nl \
+ "I'm assuming you got the $ndel message(s) I just passed on."
return delivered
}
pm????? {
return ignoretalk
}
ui????? -
- uaii?uu - uaii??l - uas?i?l -
+ uaii?uu - uaii??l - uas?iuu - uas?i?l -
mi????? - pa????l -
?Tii??? - ?Ts?i?? {
# pass and then stuff
}
set invitees {}
while {[ta_anymore]} {
- set invitee [ta_word]
- check_nick $invitee
+ set invitee [ta_nick]
lappend invitees $invitee
}
foreach invitee $invitees {
}
proc tell_peernicks {text} {
+ global errorInfo errorCode
set text [irctolower [string trim $text]]
set senders [split $text " "]
foreach sender $senders {
if {[catch { check_nick $sender } emsg]} {
- error "invalid sender nick `$sender': $emsg" $errorInfo $errorCode
+ error "invalid nick `$sender': $emsg" $errorInfo $errorCode
}
}
return $senders
error "delmsg sec $sec"
}
}
+ if {![llength [msgsdb_get $n inbound]]} {
+ ucmdr "No incoming messages to delete." {}
+ }
tell_getcstate
+ if {![info exists u]} {
+ usererror \
+ "I can't delete your messages unless I can see you on a channel with me.\
+ Otherwise I might delete a message I hadn't told you about yet."
+ }
if {"$stt" != "passed"} {
+ set telling [list $u undelivered 0]
usererror \
- "There are message(s) you've not yet seen; I'll deliver them to you now.\
+ "There are message(s) you may not yet have seen;\
+ I'll deliver them to you now.\
If you actually want to delete them, just tell me `delmsg' again."
}
set senders [tell_peernicks $text]
if {!$ndel} {
if {[llength $senders]} {
ucmdr "No relevant incoming messages to delete." {}
- } else {
- ucmdr "No incoming messages to delete." {}
}
}
switch -exact [llength $senders] {
global nick_case ownmailaddr ownfullname
prefix_nick
- set target [ta_word]
+ set target [ta_nick]
if {![string length $text]} { error "tell them what?" }
if {[string length $text] > 400} { error "message too long" }
def_ucmd who {
if {[ta_anymore]} {
- set target [ta_word]; ta_nomore
+ set target [ta_nick]; ta_nomore
set myself 1
} else {
prefix_nick
}
}
-proc tellme_rel_desc {v} {
+proc tellme_rel_desc {v n} {
manyset $v rel every within
switch -exact $rel {
unreliable {
proc tellme_setting_neednomsgs {} {
uplevel 1 {
if {[llength [msgsdb_get $n inbound]]} {
- usererror "You must delete the messages you have, first."
+ usererror "You must delete the incoming messages you have, first."
}
}
}
manyset $secv sec
switch -exact $sec {
insecure - secure {
- set mr [tellme_rel_desc [nickdb_get $n tellrel]]
+ set mr [tellme_rel_desc [nickdb_get $n tellrel] $n]
return "$ms $mr"
}
refuse - mailto {
set v [list secure $every]
}
refuse {
- telling_setting_neednomsgs
- telling_setting_sec_simple
+ tellme_setting_neednomsgs
+ tellme_setting_sec_simple
}
mailto {
- telling_setting_neednomsgs
+ tellme_setting_neednomsgs
- if {[string length [set u [nickdb_get_username $n]]]} {
+ if {![string length [set u [nickdb_get_username $n]]]} {
usererror \
"Sorry, you must register securely to have your messages mailed\
(to prevent the use of this feature for spamming). See `help register'."
set sr rel
set v $setting
if {"$setting" != "unreliable"} {
- set every [parse_interval_optional 300 3600]
+ set every [ta_interval_optional 300 3600]
lappend v $every
}
if {"$setting" == "remind"} {
}
}
nickdb_set $n tell$sr $v
- ucmdr [tellme_${sr}_desc $v] {}
+ upvar #0 nick_telling([irctolower $n]) telling
+ catch { unset telling }
+ ucmdr [tellme_${sr}_desc $v $n] {}
}
proc lnick_checktold {luser} {
set ml [msgsdb_get $luser outbound]
if {![llength $ml]} return
set is1 [expr {[llength $ml]==3}]
- set m1 "FYI, I haven't yet passed on your"
+ set m1 "FYI, I haven't yet delivered your"
set ol {}
set now [clock seconds]
while {[llength $ml]} {
irc-identpass $n
upvar #0 nick_username($luser) rec_username
set rec_username $username
- tell_event $luser ident
+ after 50 [list tell_event $luser ident]
ucmdr "Pleased to see you, $username." {}
}