68 lines
3.1 KiB
Mathematica
68 lines
3.1 KiB
Mathematica
XMXTO ;ISC-SF/GMB-Address a msg ;08/08/2000 14:38
|
|
;;8.0;MailMan;;Jun 28, 2002
|
|
; Entry points:
|
|
; ITOWHOM Interactive 'to whom:'
|
|
; TOWHOM Silent 'to whom:'
|
|
ITOWHOM(XMDUZ,XMZ,XMTYPE,XMINSTR) ; Interactive
|
|
; XMDUZ DUZ of who is sending or forwarding the message
|
|
; XMZ The message number
|
|
; (need not be supplied if XMTYPE="S" and
|
|
; XMINSTR("ADDR FLAGS")["R")
|
|
; XMTYPE S='Send to:'
|
|
; F='Forward to:'
|
|
; XMINSTR("SELF BSKT") Basket to deliver to if sender is recipient
|
|
; XMINSTR("SHARE DATE") Delete date if recipient is "SHARED,MAIL"
|
|
; XMINSTR("SHARE BSKT") Basket if recipient is "SHARED,MAIL"
|
|
; XMINSTR("TO PROMPT") Initial prompt to whom to send the message (default=XMDUZ)
|
|
; XMINSTR("FLAGS") Any or all or none of the following:
|
|
; (Necessary only if XMTYPE="S" and XMINSTR("ADDR FLAGS")["R")
|
|
; X Closed msg (may not be forwarded)
|
|
; C Confidential msg (surrogates may not read)
|
|
; XMINSTR("ADDR FLAGS") Any or all of the following:
|
|
; I Do not Initialize (kill) the ^TMP addressee global
|
|
; R Do not Restrict addressees
|
|
N XMRESTR,XMABORT
|
|
K XMERR,^TMP("XMERR",$J)
|
|
D INIT(XMDUZ,.XMZ,XMTYPE,.XMINSTR,.XMRESTR,.XMPROMPT) Q:$D(XMERR)
|
|
S XMABORT=0
|
|
D TOWHOM^XMJMT(XMDUZ,XMPROMPT,.XMINSTR,.XMRESTR,.XMABORT)
|
|
Q:'XMABORT
|
|
D ERRSET^XMXUTIL($S(XMABORT=1:37000,1:37001)) ; up-arrow out. / time out.
|
|
Q
|
|
TOWHOM(XMDUZ,XMZ,XMTYPE,XMTO,XMINSTR,XMFULL) ; Silent
|
|
; XMDUZ (in) DUZ of who is sending or forwarding the message
|
|
; XMZ (in) The message number
|
|
; (need not be supplied if XMTYPE="S" and
|
|
; XMINSTR("ADDR FLAGS")["R")
|
|
; XMTYPE (in) S='Send to:'
|
|
; F='Forward to:'
|
|
; XMTO (in) ONE addressee
|
|
; XMINSTR("SELF BSKT") (in) Basket to deliver to if sender is recipient
|
|
; XMINSTR("SHARE DATE") (in) Delete date if recipient is "SHARED,MAIL"
|
|
; XMINSTR("SHARE BSKT") (in) Basket if recipient is "SHARED,MAIL"
|
|
; XMINSTR("FLAGS") (in) Any or all or none of the following:
|
|
; (Necessary only if XMTYPE="S" and XMINSTR("ADDR FLAGS")["R")
|
|
; X Closed msg (may not be forwarded)
|
|
; C Confidential msg (surrogates may not read)
|
|
; XMINSTR("ADDR FLAGS") Any or all of the following:
|
|
; I Do not Initialize (kill) the ^TMP addressee global
|
|
; R Do not Restrict addressees
|
|
; XMFULL (out) the full address
|
|
N XMRESTR
|
|
K XMERR,^TMP("XMERR",$J)
|
|
D INIT(XMDUZ,.XMZ,XMTYPE,.XMINSTR,.XMRESTR) Q:$D(XMERR)
|
|
D CHKADDR^XMXADDR(XMDUZ,.XMTO,.XMINSTR,.XMRESTR,.XMFULL)
|
|
Q
|
|
INIT(XMDUZ,XMZ,XMTYPE,XMINSTR,XMRESTR,XMPROMPT) ;
|
|
I XMTYPE="S" D
|
|
. S XMPROMPT=$$EZBLD^DIALOG(34110) ; Send
|
|
. D:$G(XMINSTR("ADDR FLAGS"))'["R" CHKLINES^XMXSEC1(XMDUZ,XMZ,.XMRESTR)
|
|
E D
|
|
. N XMZREC
|
|
. S XMZREC=^XMB(3.9,XMZ,0)
|
|
. S XMPROMPT=$$EZBLD^DIALOG(34111) ; Forward
|
|
. Q:'$$FORWARD^XMXSEC(XMDUZ,XMZ,XMZREC)
|
|
. D:$G(XMINSTR("ADDR FLAGS"))'["R" GETRESTR^XMXSEC1(XMDUZ,XMZ,XMZREC,.XMINSTR,.XMRESTR)
|
|
D:$G(XMINSTR("ADDR FLAGS"))'["I" INIT^XMXADDR
|
|
Q
|