1 | CWMAIL ;INDPLS/PLS- DELPHI VISTA MAIL SERVER ;22-Jul-2005 06:59;CLC
|
---|
2 | ;;2.3;CWMAIL;;Jul 19, 2005
|
---|
3 | Q ;ROUTINE CAN'T BE CALLED DIRECTLY
|
---|
4 | ENTRY(CWDATA,CWINPUT,CWTEXT) ;CALL WITH CWINPUT=CALL;DUZ;MSG;BASKET;NEW BASKET;NEWMAIL, TEXT=TEXT ARRAY
|
---|
5 | N CWCALL,X,DUZ,CWMHDR,CWMST,U,CWSVER
|
---|
6 | ;REMOVED XMDUZ FROM BEING NEW STATEMENT
|
---|
7 | I $$NEWERR^%ZTER N $ET S $ET=""
|
---|
8 | S U="^"
|
---|
9 | S $ZT="ERR^CWMAIL"
|
---|
10 | K CWDATA
|
---|
11 | S CWDATA(1)="0^^AN ERROR HAS OCCURRED"
|
---|
12 | S CWCALL="%"_$$UP^XLFSTR($P(CWINPUT,";")) ;HOLDS TAG
|
---|
13 | S DUZ=$P(CWINPUT,";",2)
|
---|
14 | D DUZ^XUP(DUZ) ;SETUP DUZ ARRAY
|
---|
15 | D INIT^XMVVITAE ;UPDATE MAILMAN STATUS
|
---|
16 | S CWINPUT=$P(CWINPUT,";",3,999)
|
---|
17 | D PURGNAM
|
---|
18 | I CWCALL?1"%"1.7A,$T(@CWCALL)'="" D @(CWCALL_"(.CWDATA,CWINPUT,.CWTEXT)")
|
---|
19 | Q
|
---|
20 | ERR D @^%ZOSF("ERRTN")
|
---|
21 | D RETGNAM
|
---|
22 | Q ;
|
---|
23 | %READ(CWDATA,CWINPUT,CWTEXT) ;
|
---|
24 | D %READ^CWMAILA(.CWDATA,CWINPUT)
|
---|
25 | Q
|
---|
26 | %LIST(CWDATA,CWINPUT,CWTEXT) ;
|
---|
27 | ;CWINPUT = MAIL TYPE OR MAILBOX NUMBER;
|
---|
28 | D %LIST^CWMAILA(.CWDATA,CWINPUT),RETGNAM
|
---|
29 | Q
|
---|
30 | %DELETE(CWDATA,CWINPUT,CWTEXT) ;
|
---|
31 | D %DELETE^CWMAILA(.CWDATA,CWINPUT),RETGNAM
|
---|
32 | Q
|
---|
33 | %SAVE(CWDATA,CWINPUT,CWTEXT) ;
|
---|
34 | D %SAVE^CWMAILA(.CWDATA,CWINPUT),RETGNAM
|
---|
35 | Q
|
---|
36 | %MAKNEW(CWDATA,CWINPUT,CWTEXT) ;
|
---|
37 | D %MAKNEW^CWMAILA(.CWDATA,CWINPUT),RETGNAM
|
---|
38 | Q
|
---|
39 | %NEWBSK(CWDATA,CWINPUT,CWTEXT) ;CREATE A NEW MAIL BASKET
|
---|
40 | D %NEWBSK^CWMAILA(.CWDATA,CWINPUT),RETGNAM
|
---|
41 | Q
|
---|
42 | %RESEQ(CWDATA,CWINPUT,CWTEXT) ;RESEQUENCE A VISTA MAIL BASKET
|
---|
43 | D %RESEQ^CWMAILA(.CWDATA,CWINPUT),RETGNAM
|
---|
44 | Q
|
---|
45 | %REPLY(CWDATA,CWINPUT,CWTEXT) ;
|
---|
46 | D %REPLY^CWMAILB(.CWDATA,CWINPUT,.CWTEXT),RETGNAM
|
---|
47 | Q
|
---|
48 | %FORWARD(CWDATA,CWINPUT,CWTEXT) ;
|
---|
49 | ;M ^TMP("CWMAIL","FORWARD",$H)=CWTEXT
|
---|
50 | ;S ^TMP("CWMAIL","CWINPUT",$J)=CWINPUT
|
---|
51 | D %FORWARD^CWMAILB(.CWDATA,CWINPUT,.CWTEXT),RETGNAM
|
---|
52 | Q
|
---|
53 | %ANSWER(CWDATA,CWINPUT,CWTEXT) ;
|
---|
54 | D %ANSWER^CWMAILB(.CWDATA,CWINPUT,.CWTEXT),RETGNAM
|
---|
55 | Q
|
---|
56 | %TERMIN(CWDATA,CWINPUT,CWTEXT) ;TERMINATE A MESSAGE THREAD
|
---|
57 | D %TERMIN^CWMAILB(.CWDATA,CWINPUT),RETGNAM
|
---|
58 | Q
|
---|
59 | %CREATE(CWDATA,CWINPUT,CWTEXT) ;CREATE A NEW MESSAGE
|
---|
60 | D %CREATE^CWMAIL2(.CWDATA,CWINPUT,.CWTEXT),RETGNAM
|
---|
61 | Q
|
---|
62 | %LATER(CWDATA,CWINPUT,CWTEXT) ;LATER A MESSAGE
|
---|
63 | D %LATER^CWMAILC(.CWDATA,CWINPUT),RETGNAM
|
---|
64 | Q
|
---|
65 | ;
|
---|
66 | %MBOX(CWDATA,CWINPUT,CWTEXT) ;RETRIEVE MAILBOXES
|
---|
67 | D %MBOX^CWMAILC(.CWDATA,CWINPUT),RETGNAM
|
---|
68 | Q
|
---|
69 | %PMBOX(CWDATA,CWINPUT,CWTEXT) ;PURGE ENTIRE MAIL BOX
|
---|
70 | D %PMBOX^CWMAILC(.CWDATA,CWINPUT),RETGNAM
|
---|
71 | Q
|
---|
72 | %RNMBOX(CWDATA,CWINPUT,CWTEXT) ;RENAME EXISTING MAILBOX
|
---|
73 | D %RNMBOX^CWMAILC(.CWDATA,CWINPUT),RETGNAM
|
---|
74 | Q
|
---|
75 | %MSGRCP(CWDATA,CWINPUT,CWTEXT) ; RETURNS A LIST OF MESSAGE RECIPIENTS
|
---|
76 | D %MSGRCP^CWMAILC(.CWDATA,CWINPUT) ;,RETGNAM
|
---|
77 | Q
|
---|
78 | %NETINFO(CWDATA,CWINPUT,CWTEXT) ; RETURNS NETWORK TRANSMISSION INFO
|
---|
79 | D %NETINFO^CWMAILC(.CWDATA,CWINPUT) ;,RETGNAM
|
---|
80 | Q
|
---|
81 | %ADRSTO(CWDATA,CWINPUT,CWTEXT) ;RETURNS ARRAY OF ADDRESSED TO
|
---|
82 | D %ADRSTO^CWMAILC(.CWDATA,CWINPUT) ;,RETGNAM
|
---|
83 | Q
|
---|
84 | %GRPINF(CWDATA,CWINPUT,CWTEXT) ;MAIL GROUP INFO
|
---|
85 | D %GRPINF^CWMAILC(.CWDATA,CWINPUT),RETGNAM
|
---|
86 | Q
|
---|
87 | %USRINF(CWDATA,CWINPUT,CWTEXT) ; MAIL USER INFO
|
---|
88 | ;CWINPUT = MAIL USER IEN
|
---|
89 | D %USRINF^CWMAILC(.CWDATA,CWINPUT),RETGNAM
|
---|
90 | Q
|
---|
91 | %PERPREF(CWDATA,CWINPUT,CWTEXT) ;RETRIEVE PERSONAL PREFERENCES
|
---|
92 | ;CWINPUT = MAIL USER IEN;SAVE NAME
|
---|
93 | D %PERPREF^CWMAILD(.CWDATA,CWINPUT),RETGNAM
|
---|
94 | Q
|
---|
95 | %USRLOG(CWDATA,CWINPUT,CWTEXT) ;LOG USER INTO GUI MAIL LOG
|
---|
96 | ;CWINPUT = DUZ
|
---|
97 | D %USRLOG^CWMAILD(.CWDATA,DUZ),RETGNAM
|
---|
98 | Q
|
---|
99 | %BMSGD(CWDATA,CWINPUT,CWTEXT) ;BUILD MSG INFO INTO GLOBAL
|
---|
100 | ;
|
---|
101 | D %BMSGD^CWMAILD(.CWDATA,CWINPUT,.CWTEXT),RETGNAM
|
---|
102 | Q
|
---|
103 | %SUPREF(CWDATA,CWINPUT,CWTEXT) ;SET USER PREFERENCES
|
---|
104 | ;
|
---|
105 | D %SUPREF^CWMAILD(.CWDATA,CWINPUT,.CWTEXT),RETGNAM
|
---|
106 | Q
|
---|
107 | RETGNAM ;RETURNS A $NAME FOR GLOBAL AFTER MERGING
|
---|
108 | M ^TMP($J,"CWMAIL")=CWDATA
|
---|
109 | K CWDATA S CWDATA=$NA(^TMP($J,"CWMAIL"))
|
---|
110 | Q
|
---|
111 | PURGNAM ;PURGE GLOBAL ARRAY USED FOR DATA RETURN
|
---|
112 | K ^TMP($J,"CWMAIL")
|
---|
113 | Q
|
---|
114 | %CHKMAIL(CWDATA,CWINPUT,CWTEXT) ;CHECK FOR NEW MAIL
|
---|
115 | ;CWINPUT = DUZ
|
---|
116 | D %CHKMAIL^CWMAILD(.CWDATA,DUZ),RETGNAM
|
---|
117 | Q
|
---|
118 | %PRINT(CWDATA,CWINPUT,CWTEXT) ;PRINT A MESSAGE
|
---|
119 | ;
|
---|
120 | D %PRTMSG^CWMAILD(.CWDATA,CWINPUT),RETGNAM
|
---|
121 | Q
|
---|
122 | %GETSVER(CWDATA,CWINPUT,CWTEXT) ;GET SERVER VERSION
|
---|
123 | ;
|
---|
124 | D %GETSVER^CWMAILD(.CWDATA,CWINPUT),RETGNAM
|
---|
125 | Q
|
---|
126 | %MSGSRC(CWDATA,CWINPUT,CWTEXT) ;SEARCH AND RETURN SELECTED MESSAGES
|
---|
127 | ;
|
---|
128 | D %MSGSRC^CWMAILA(.CWDATA,CWINPUT,.CWTEXT),RETGNAM
|
---|
129 | Q
|
---|
130 | %MSGISRC(CWDATA,CWINPUT,CWTEXT) ;SEARCH FOR A SPECIFIC MESSAGE NUMBER
|
---|
131 | ;
|
---|
132 | D %MSGISRC^CWMAILF(.CWDATA,CWINPUT),RETGNAM
|
---|
133 | Q
|
---|
134 | ;
|
---|
135 | %OPENATT(CWDATA,CWINPUT,CWTEXT) ;ALLOW OPENING OF ATTACHMENTS
|
---|
136 | ;
|
---|
137 | D %OPENATT^CWMAILD(.CWDATA,CWINPUT),RETGNAM
|
---|
138 | Q
|
---|
139 | %TIMEROF(CWDATA,CWINPUT,CWTEXT) ;TIMER OFF
|
---|
140 | ;
|
---|
141 | D %TIMEROF^CWMAILD(.CWDATA,CWINPUT),RETGNAM
|
---|
142 | Q
|
---|
143 | %TIMERVA(CWDATA,CWINPUT,CWTEXT) ;SET TIME-OUT VALUE
|
---|
144 | ;
|
---|
145 | D TIMERVAL^CWMAILD(.CWDATA,CWINPUT),RETGNAM
|
---|
146 | Q
|
---|