Home   Package List   Routine Alphabetical List   Global Alphabetical List   FileMan Files List   FileMan Sub-Files List   Package Component Lists   Package-Namespace Mapping  
Info |  Source |  Call Graph |  Caller Graph |  Entry Points |  External References |  Global Variables Directly Accessed |  Label References |  Naked Globals |  Local Variables |  Marked Items  | All
Print Page as PDF
Routine: XMXGRP

Package: MailMan

Routine: XMXGRP


Information

XMXGRP ;ISC-SF/GMB-Group creation/enrollment ;03/31/2003 13:38

Source Information

Source file <XMXGRP.m>

Call Graph

Call Graph

Call Graph Total: 8

Package Total Call Graph
MailMan 4 (CHKADDR,CLEANUP,INIT)^XMXADDR  ($$IEN,$$NAME)^XMXAPIG  (FAFMSGS,NOTIFY)^XMXGRP1  ERRSET^XMXUTIL  
VA FileMan 2 UPDATE^DIE  ^DIK  
Authorization Subscription 1 ($$ISA,ISA)^USRLM  
Kernel 1 $$FMTE^XLFDT  

Caller Graph

Legends:

Legend of Colors

Package Component Superscript legend

action A extended action Ea event driver Ed subscriber Su protocol O limited protocol LP run routine RR broker B edit E server Se print P screenman SM inquire I

Caller Graph

Caller Graph Total: 2

Package Total Caller Graph
MailMan 2 XMVGRP  XMXAPIG  

Entry Points

Name Comments DBIA/ICR reference
ADDMBRS(XMDUZ,XMGROUP,XMMBR,XMINSTR,XMTSK) ; Add users to groups, if they aren't
; already members. This API handles adding local users, devices,
; server options, mail groups, and remote users to mail groups.
; It does not handle adding distribution lists or fax recipients
; or fax groups.
;
; Optionally, forward existing messages which are addressed to the
; groups to the users, and/or add the users to the messages, so that
; they will receive responses. (LOCAL USERS ONLY!)
; XMDUZ - The user who is doing this. Must be authorized to edit
; the mail groups.
; XMGROUP - The name or IEN (or list of same) of the groups.
; XMMBR - The user (or list of users) to add to the groups.
; XMINSTR - Special instructions
; ("FLAGS") - Flags, may contain any combination of the following:
; "A" - Add users to messages, but don't forward.
; (Messages will be delivered the next time
; someone replies, and users will be able to
; Query/Search for them at any time.)
; "F" - Forward messages to users, if the users aren't
; already on the messages.
; Closed messages will be ignored. Users will not be
; added to them.
; Note: If FLAGS contains only an "A", then FDATE and TDATE apply.
; If FLAGS contains only an "F", then FDATE and TDATE apply.
; If FLAGS contains "A" and "F", then messages from FDATE thru
; TDATE will be "F"orwarded, and all other messages will have
; the users "A"dded to them, without forwarding.
; Note: Currently, FLAGS may not contain "A". We don't yet have a way
; to mark users (recipients) who have been added to a message, but will
; not receive them until someone replies on the message, or until the
; user searches for them and reads them. This is a problem, because
; if someone does a QD on them, they have no idea why these recipients
; haven't read the message. Perhaps we could mark them 'Parked until
; next reply.' That would require a new field, and other routines would
; have to be aware of and handle this new field. Until that happens,
; we are stripping any "A" from XMINSTR("FLAGS").
; ("FDATE") - Add users to messages originating on or after this
; date. Must be FM format. Default is from the
; beginning of time. Used in conjunction with FLAGS.
; ("TDATE") - Add users to messages originating on or before this
; date. Must be FM format. Default is to the present.
; Used in conjunction with FLAGS.
; XMTSK Output task number
CHKGRPS(XMDUZ,XMGROUP,XMGRP) ;
CHKGRP(XMDUZ,XMGROUP,XMGRP) ;
GRPOK(XMGROUP,XMGNAME,XMGIEN,XMABORT) ;
; make sure group name is good, translate to group ien.
AUTHOK(XMDUZ,XMGIEN,XMABORT) ;
; make sure user is authorized to add members to group.
CHKMBRS(XMDUZ,XMMBR) ; Check the users to add.
ADD2GRPS(XMGRP,XMTO,XMINSTR) ; See if members already in the groups.
; If not, add them
; >> Question: May a broadcast or limited broadcast be added to a group?
AM(XMG,XMM,XMMIEN,XMTYPE,XMTO,XMINSTR) ; Add/edit a member (not delete)
AMINIT(XMG,XMM,XMMIEN,XMMULT,XMABORT) ;
JOIN(XMDUZ,XMGROUP,XMINSTR,XMTSK) ; User chooses to join a group.
; XMGROUP - The name (or IEN) of the group. (Just one group!)
; XMINSTR - Special instructions. See ADDMBR, above
; Also, if XMINSTR("FLAGS")["F", may specify:
; ("SELF BSKT") - direct forwarded messages to a specific basket.
DROP(XMDUZ,XMGROUP) ; User chooses to drop from a group.
; XMGROUP - The name (or IEN) of the group.
GRPINFO(XMDUZ,XMGIEN,XMTYPE,XMSELF,XMMBR,XMABORT) ;
ADD2GRPZ(XMGRP,XMMBR,XMTO) ; See if members already in the groups.
; If not, add them
AMZ(XMG,XMM,XMTYPE,XMTO) ; Add/edit a member (not delete)

External References

Name Field # of Occurrence
UPDATE^DIE AM+7, JOIN+18, AMZ+5
^DIK DROP+15
$$ISA^USRLM AUTHOK+4
ISA^USRLM AUTHOK+4
$$FMTE^XLFDT ADDMBRS+54
CHKADDR^XMXADDR CHKMBRS+4
CLEANUP^XMXADDR CHKMBRS+6, ADD2GRPS+11
INIT^XMXADDR CHKMBRS+2
$$IEN^XMXAPIG GRPOK+2
$$NAME^XMXAPIG GRPOK+3, AUTHOK+11
FAFMSGS^XMXGRP1 ADDMBRS+57, JOIN+20
NOTIFY^XMXGRP1 ADD2GRPZ+8
ERRSET^XMXUTIL ADDMBRS+54, AUTHOK+13, JOIN+15, DROP+12, GRPINFO+13

Global Variables Directly Accessed

Name Line Occurrences  (* Changed,  ! Killed)
^TMP("XMY0" ADDMBRS+46, CHKMBRS+5, ADD2GRPS+7, ADD2GRPS+8
^XMB("NETNAME" AMINIT+4
^XMB(1 - [#4.3] DROP+7
^XMB(3.7 - [#3.7] ADDMBRS+51
^XMB(3.8 - [#3.8] AUTHOK+5, AUTHOK+6, AUTHOK+7, GRPINFO+2, GRPINFO+3
^XMB(3.9 - [#3.9] ADDMBRS+50
^XUSEC("XM GROUP EDIT MASTER" AUTHOK+5
^XUSEC("XMMGR" AUTHOK+5

Label References

Name Line Occurrences
ADD2GRPS ADDMBRS+47
AM ADD2GRPS+8
AMINIT AM+3
AMZ ADD2GRPZ+7
AUTHOK CHKGRP+4
CHKGRP CHKGRPS+2, CHKGRPS+6
CHKGRPS ADDMBRS+45
CHKMBRS ADDMBRS+46
GRPINFO JOIN+8, DROP+5
GRPOK CHKGRP+3, JOIN+7, DROP+4

Naked Globals

Name Field # of Occurrence
^( ADD2GRPS+8
^(0 AUTHOK+5

Local Variables

Legend:

>> Not killed explicitly
* Changed
! Killed
~ Newed

Name Field # of Occurrence
DA DROP+13~, DROP+14*
DA(1 DROP+14*
DIK DROP+13~, DROP+14*
DIR DROP+13~
DT ADDMBRS+50
DUZ AUTHOK+4, AUTHOK+5
U ADDMBRS+51, AUTHOK+5, AUTHOK+7, AM+6, DROP+7, GRPINFO+4, GRPINFO+5, GRPINFO+12
X DROP+13~
XMABORT CHKGRP+1~, CHKGRP+2*, CHKGRP+3, CHKGRP+4, GRPOK~, GRPOK+2*, AUTHOK~, AUTHOK+8*, AM+1~, AM+2*
, AM+3, AMINIT~, AMINIT+7*, JOIN+5~, JOIN+6*, JOIN+7, JOIN+8, JOIN+9, JOIN+11*, DROP+2~
, DROP+3*, DROP+4, DROP+5, DROP+8*, GRPINFO~, GRPINFO+9*
XMCUT ADDMBRS+44~, ADDMBRS+51*, ADDMBRS+52, ADDMBRS+53, ADDMBRS+54
XMDUZ ADDMBRS~, ADDMBRS+45, ADDMBRS+46, ADDMBRS+51, ADDMBRS+57, CHKGRPS~, CHKGRPS+2, CHKGRPS+6, CHKGRP~, CHKGRP+4
, AUTHOK~, AUTHOK+6, AUTHOK+7, CHKMBRS~, CHKMBRS+4, JOIN~, JOIN+8, JOIN+17, JOIN+20, DROP~
, DROP+5, GRPINFO~, GRPINFO+2
XMFDA AM+1~, JOIN+16~, AMZ+1~
XMFDA( AM+4*, AM+5*, JOIN+17*, AMZ+2*, AMZ+3*
XMG AM~, AM+3, AM+4, AM+5, AMINIT~, AMINIT+6, AMZ~, AMZ+2, AMZ+3
XMGI ADD2GRPS+3~, ADD2GRPS+5*, ADD2GRPS+8, ADD2GRPZ+2~, ADD2GRPZ+4*, ADD2GRPZ+7, ADD2GRPZ+8
XMGIEN CHKGRP+1~, CHKGRP+3, CHKGRP+4, CHKGRP+5, GRPOK~, GRPOK+2*, GRPOK+3, AUTHOK~, AUTHOK+5, AUTHOK+6
, AUTHOK+7, AUTHOK+11, JOIN+5~, JOIN+7, JOIN+8, JOIN+17, DROP+2~, DROP+4, DROP+5, DROP+14
, GRPINFO~, GRPINFO+2, GRPINFO+3
XMGN ADD2GRPS+3~, ADD2GRPS+4*, ADD2GRPS+5*, ADD2GRPZ+2~, ADD2GRPZ+3*, ADD2GRPZ+4*
XMGNAME CHKGRP+1~, CHKGRP+3, CHKGRP+5, GRPOK~, GRPOK+3*, JOIN+5~, JOIN+7, JOIN+14, JOIN+20, DROP+2~
, DROP+4, DROP+11
XMGROUP ADDMBRS~, ADDMBRS+45, CHKGRPS~, CHKGRPS+1, CHKGRPS+2, CHKGRP~, CHKGRP+3, GRPOK~, GRPOK+2, JOIN~
, JOIN+7, DROP~, DROP+4
XMGROUP( CHKGRPS+5
XMGROUP("" CHKGRPS+1
XMGRP ADDMBRS+44~, ADDMBRS+45, ADDMBRS+47, ADDMBRS+57, CHKGRPS~, CHKGRPS+2, CHKGRPS+6, CHKGRP~, ADD2GRPS~, ADD2GRPZ~
XMGRP( CHKGRP+5*, ADD2GRPS+5, ADD2GRPZ+4
XMI CHKGRPS+3~, CHKGRPS+4*, CHKGRPS+5*, CHKGRPS+6
XMIEN AM+1~, AMZ+1~
XMINSTR ADDMBRS~, ADDMBRS+47, ADDMBRS+57, CHKMBRS+1~, CHKMBRS+4, ADD2GRPS~, ADD2GRPS+8, AM~, JOIN~, JOIN+20
XMINSTR("ADDR FLAGS" , CHKMBRS+3*
XMINSTR("FDATE" ADDMBRS+50, ADDMBRS+52, ADDMBRS+53*
XMINSTR("FLAGS" ADDMBRS+49, AM+6, JOIN+19
XMINSTR("TDATE" ADDMBRS+50
XMM ADD2GRPS+3~, ADD2GRPS+4*, ADD2GRPS+7*, ADD2GRPS+8, AM~, AM+3, AM+4, AM+6, AMINIT~, AMINIT+1
, AMINIT+2, AMINIT+4*, AMINIT+5, AMINIT+9*, AMINIT+11*, ADD2GRPZ+2~, ADD2GRPZ+3*, ADD2GRPZ+6*, ADD2GRPZ+7, AMZ~
, AMZ+2, AMZ+4
XMMBR ADDMBRS~, ADDMBRS+46, CHKMBRS~, CHKMBRS+4, JOIN+5~, JOIN+8, JOIN+9, DROP+2~, DROP+5, DROP+6
, DROP+14, GRPINFO~, GRPINFO+2*, GRPINFO+8, ADD2GRPZ~
XMMBR( ADD2GRPZ+6, ADD2GRPZ+7
XMMIEN AM~, AM+3, AMINIT~, AMINIT+6, AMINIT+9, AMINIT+11
XMMULT AM+1~, AM+3, AM+4, AM+5, AM+6, AMINIT~, AMINIT+1*, AMINIT+3*, AMINIT+10*, AMINIT+12*
XMNEWMBR ADD2GRPS+6~, ADD2GRPZ+5~, ADD2GRPZ+8
XMOK AUTHOK+2~, AUTHOK+3*, AUTHOK+4*, AUTHOK+5
XMP AUTHOK+9~, AUTHOK+13, JOIN+12~, JOIN+15, DROP+9~, DROP+12, GRPINFO+10~
XMP("PARAM" AUTHOK+10*, AUTHOK+11*, JOIN+13*, JOIN+14*, DROP+10*, DROP+11*, GRPINFO+11*, GRPINFO+12*
XMREC GRPINFO+1~, GRPINFO+3*, GRPINFO+4, GRPINFO+5, GRPINFO+12
XMSELF JOIN+5~, JOIN+8, JOIN+10, DROP+2~, DROP+5, DROP+7, GRPINFO~, GRPINFO+4*
XMTO ADDMBRS+44~, ADDMBRS+47, ADDMBRS+48, ADDMBRS+57, ADD2GRPS~, ADD2GRPS+8, AM~, ADD2GRPZ~, ADD2GRPZ+7, AMZ~
XMTO( AM+6*, AMZ+4*
XMTRKNEW ADD2GRPS+3~, ADD2GRPZ+2~, ADD2GRPZ+3*
XMTSK ADDMBRS~, ADDMBRS+57, JOIN~, JOIN+20
XMTYPE AM~, AM+5, AM+6, JOIN+5~, JOIN+8, DROP+2~, DROP+5, GRPINFO~, GRPINFO+5*, GRPINFO+6
, GRPINFO+7, AMZ~, AMZ+3, AMZ+4
Y DROP+13~

Marked Items

Name Field # of Occurrence
$T(ISA^USRLM AUTHOK+4
Info |  Source |  Call Graph |  Caller Graph |  Entry Points |  External References |  Global Variables Directly Accessed |  Label References |  Naked Globals |  Local Variables |  Marked Items  | All