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
|
---|