[613] | 1 | XMXTO ;ISC-SF/GMB-Address a msg ;08/08/2000 14:38
|
---|
| 2 | ;;8.0;MailMan;;Jun 28, 2002
|
---|
| 3 | ; Entry points:
|
---|
| 4 | ; ITOWHOM Interactive 'to whom:'
|
---|
| 5 | ; TOWHOM Silent 'to whom:'
|
---|
| 6 | ITOWHOM(XMDUZ,XMZ,XMTYPE,XMINSTR) ; Interactive
|
---|
| 7 | ; XMDUZ DUZ of who is sending or forwarding the message
|
---|
| 8 | ; XMZ The message number
|
---|
| 9 | ; (need not be supplied if XMTYPE="S" and
|
---|
| 10 | ; XMINSTR("ADDR FLAGS")["R")
|
---|
| 11 | ; XMTYPE S='Send to:'
|
---|
| 12 | ; F='Forward to:'
|
---|
| 13 | ; XMINSTR("SELF BSKT") Basket to deliver to if sender is recipient
|
---|
| 14 | ; XMINSTR("SHARE DATE") Delete date if recipient is "SHARED,MAIL"
|
---|
| 15 | ; XMINSTR("SHARE BSKT") Basket if recipient is "SHARED,MAIL"
|
---|
| 16 | ; XMINSTR("TO PROMPT") Initial prompt to whom to send the message (default=XMDUZ)
|
---|
| 17 | ; XMINSTR("FLAGS") Any or all or none of the following:
|
---|
| 18 | ; (Necessary only if XMTYPE="S" and XMINSTR("ADDR FLAGS")["R")
|
---|
| 19 | ; X Closed msg (may not be forwarded)
|
---|
| 20 | ; C Confidential msg (surrogates may not read)
|
---|
| 21 | ; XMINSTR("ADDR FLAGS") Any or all of the following:
|
---|
| 22 | ; I Do not Initialize (kill) the ^TMP addressee global
|
---|
| 23 | ; R Do not Restrict addressees
|
---|
| 24 | N XMRESTR,XMABORT
|
---|
| 25 | K XMERR,^TMP("XMERR",$J)
|
---|
| 26 | D INIT(XMDUZ,.XMZ,XMTYPE,.XMINSTR,.XMRESTR,.XMPROMPT) Q:$D(XMERR)
|
---|
| 27 | S XMABORT=0
|
---|
| 28 | D TOWHOM^XMJMT(XMDUZ,XMPROMPT,.XMINSTR,.XMRESTR,.XMABORT)
|
---|
| 29 | Q:'XMABORT
|
---|
| 30 | D ERRSET^XMXUTIL($S(XMABORT=1:37000,1:37001)) ; up-arrow out. / time out.
|
---|
| 31 | Q
|
---|
| 32 | TOWHOM(XMDUZ,XMZ,XMTYPE,XMTO,XMINSTR,XMFULL) ; Silent
|
---|
| 33 | ; XMDUZ (in) DUZ of who is sending or forwarding the message
|
---|
| 34 | ; XMZ (in) The message number
|
---|
| 35 | ; (need not be supplied if XMTYPE="S" and
|
---|
| 36 | ; XMINSTR("ADDR FLAGS")["R")
|
---|
| 37 | ; XMTYPE (in) S='Send to:'
|
---|
| 38 | ; F='Forward to:'
|
---|
| 39 | ; XMTO (in) ONE addressee
|
---|
| 40 | ; XMINSTR("SELF BSKT") (in) Basket to deliver to if sender is recipient
|
---|
| 41 | ; XMINSTR("SHARE DATE") (in) Delete date if recipient is "SHARED,MAIL"
|
---|
| 42 | ; XMINSTR("SHARE BSKT") (in) Basket if recipient is "SHARED,MAIL"
|
---|
| 43 | ; XMINSTR("FLAGS") (in) Any or all or none of the following:
|
---|
| 44 | ; (Necessary only if XMTYPE="S" and XMINSTR("ADDR FLAGS")["R")
|
---|
| 45 | ; X Closed msg (may not be forwarded)
|
---|
| 46 | ; C Confidential msg (surrogates may not read)
|
---|
| 47 | ; XMINSTR("ADDR FLAGS") Any or all of the following:
|
---|
| 48 | ; I Do not Initialize (kill) the ^TMP addressee global
|
---|
| 49 | ; R Do not Restrict addressees
|
---|
| 50 | ; XMFULL (out) the full address
|
---|
| 51 | N XMRESTR
|
---|
| 52 | K XMERR,^TMP("XMERR",$J)
|
---|
| 53 | D INIT(XMDUZ,.XMZ,XMTYPE,.XMINSTR,.XMRESTR) Q:$D(XMERR)
|
---|
| 54 | D CHKADDR^XMXADDR(XMDUZ,.XMTO,.XMINSTR,.XMRESTR,.XMFULL)
|
---|
| 55 | Q
|
---|
| 56 | INIT(XMDUZ,XMZ,XMTYPE,XMINSTR,XMRESTR,XMPROMPT) ;
|
---|
| 57 | I XMTYPE="S" D
|
---|
| 58 | . S XMPROMPT=$$EZBLD^DIALOG(34110) ; Send
|
---|
| 59 | . D:$G(XMINSTR("ADDR FLAGS"))'["R" CHKLINES^XMXSEC1(XMDUZ,XMZ,.XMRESTR)
|
---|
| 60 | E D
|
---|
| 61 | . N XMZREC
|
---|
| 62 | . S XMZREC=^XMB(3.9,XMZ,0)
|
---|
| 63 | . S XMPROMPT=$$EZBLD^DIALOG(34111) ; Forward
|
---|
| 64 | . Q:'$$FORWARD^XMXSEC(XMDUZ,XMZ,XMZREC)
|
---|
| 65 | . D:$G(XMINSTR("ADDR FLAGS"))'["R" GETRESTR^XMXSEC1(XMDUZ,XMZ,XMZREC,.XMINSTR,.XMRESTR)
|
---|
| 66 | D:$G(XMINSTR("ADDR FLAGS"))'["I" INIT^XMXADDR
|
---|
| 67 | Q
|
---|