| 1 | XMJMA ;ISC-SF/GMB-Interactive Answer ;04/24/2002  10:32 | 
|---|
| 2 | ;;8.0;MailMan;;Jun 28, 2002 | 
|---|
| 3 | ; Replaces ^XMA11A,^XMA11B,SH^XMA1B,^XMA2,^XMA20 (ISC-WASH/CAP/THM) | 
|---|
| 4 | ANSWER(XMDUZ,XMZO,XMZOSUBJ,XMZOFROM) ; | 
|---|
| 5 | N XMABORT,XMZ,XMINSTR,XMSUBJ,XMZODATE | 
|---|
| 6 | S XMABORT=0 | 
|---|
| 7 | D INIT(XMDUZ,XMZO,.XMZODATE,.XMINSTR,.XMABORT) Q:XMABORT | 
|---|
| 8 | S XMSUBJ=$E($$EZBLD^DIALOG(37006)_XMZOSUBJ,1,65) ; Re: | 
|---|
| 9 | D SUBJ^XMJMS(.XMSUBJ,.XMABORT) Q:XMABORT | 
|---|
| 10 | D CRE8XMZ^XMXSEND(XMSUBJ,.XMZ,1) I XMZ<1 S XMABORT=1 Q | 
|---|
| 11 | D EDITON^XMJMS(XMDUZ,XMZ) | 
|---|
| 12 | D PROCESS(XMDUZ,XMZO,XMZOSUBJ,XMZOFROM,XMZODATE,XMZ,XMSUBJ,.XMINSTR,.XMABORT) | 
|---|
| 13 | D CLEANUP^XMXADDR | 
|---|
| 14 | D:XMABORT=DTIME HALT^XMJMS($$EZBLD^DIALOG(34250)) ; answering | 
|---|
| 15 | D EDITOFF^XMJMS(XMDUZ) | 
|---|
| 16 | D:XMABORT KILLMSG^XMXUTIL(XMZ) | 
|---|
| 17 | Q | 
|---|
| 18 | INIT(XMDUZ,XMZO,XMZODATE,XMINSTR,XMABORT) ; | 
|---|
| 19 | D INIT^XMJMS(XMDUZ,.XMABORT) Q:XMABORT | 
|---|
| 20 | S XMZODATE=$P($G(^XMB(3.9,XMZO,0)),U,3) | 
|---|
| 21 | Q:$$COPYAMT^XMXSEC1(XMZO,0) | 
|---|
| 22 | S XMABORT=1 | 
|---|
| 23 | D SHOW^XMJERR | 
|---|
| 24 | ;This message has too many lines to 'Answer'. | 
|---|
| 25 | ;Use 'Write' or 'Reply', instead. | 
|---|
| 26 | N XMTEXT | 
|---|
| 27 | D BLD^DIALOG(34251,"","","XMTEXT","F") | 
|---|
| 28 | D MSG^DIALOG("WE","","","","XMTEXT") | 
|---|
| 29 | Q | 
|---|
| 30 | PROCESS(XMDUZ,XMZO,XMZOSUBJ,XMZOFROM,XMZODATE,XMZ,XMSUBJ,XMINSTR,XMABORT) ; | 
|---|
| 31 | N XMRESTR ;Copying original message and network signature ... | 
|---|
| 32 | W !,$$EZBLD^DIALOG(34252) | 
|---|
| 33 | D COPY^XMXANSER(XMZO,XMZOSUBJ,XMZOFROM,XMZODATE,XMZ) | 
|---|
| 34 | D NETSIG^XMXEDIT(XMDUZ,XMZ) | 
|---|
| 35 | D BODY^XMJMS(XMDUZ,XMZ,XMSUBJ,.XMRESTR,.XMABORT) Q:XMABORT | 
|---|
| 36 | I XMZOFROM["@" D  Q:XMABORT | 
|---|
| 37 | . D REPLYTO^XMJMR(XMZO,.XMZOFROM,.XMABORT) Q:XMABORT | 
|---|
| 38 | . S XMINSTR("EXACT")=1 ; Match on exact domain name | 
|---|
| 39 | . W !,$$EZBLD^DIALOG(34253,XMZOFROM) ; Addressing answer to: | 
|---|
| 40 | E  W !,$$EZBLD^DIALOG(34254) ; Addressing answer to sender: | 
|---|
| 41 | D INIT^XMXADDR | 
|---|
| 42 | D ADDR^XMXADDR(XMDUZ,XMZOFROM,.XMINSTR,.XMRESTR) | 
|---|
| 43 | I '$D(^TMP("XMY",$J)) W !,$$EZBLD^DIALOG(34255,$$NAME^XMXUTIL(XMZOFROM)) ; Failed in addressing answer to: | 
|---|
| 44 | K XMRESTR("FLAGS") I $D(XMINSTR("EXACT")) K XMINSTR("EXACT") | 
|---|
| 45 | D TOWHOM^XMJMT(XMDUZ,$$EZBLD^DIALOG(34110),.XMINSTR,.XMRESTR,.XMABORT) Q:XMABORT  ; Send | 
|---|
| 46 | D SENDMSG^XMJMSO(XMDUZ,XMZ,XMSUBJ,.XMINSTR,.XMRESTR,.XMABORT) Q:XMABORT | 
|---|
| 47 | Q | 
|---|