1 02/22/84  forum_chairman_
  2 
  3 The forum_chairman_ subroutine provides entries to perform chairman
  4 duties on Forum meetings.
  5 
  6 
  7 Entry points in forum_chairman_:
  8    (List is generated by the help command)
  9 
 10 
 11 :Entry:  change_chairman:  02/22/84 forum_chairman_$change_chairman
 12 
 13 
 14 Function:  This entry is used to change the chairman of a Forum
 15 meeting.
 16 
 17 
 18 Syntax:
 19 declare forum_chairman_$change_chairman entry (char(*), char(*),
 20      char(*), fixed bin(35));
 21 call forum_chairman_$change_chairman (dirname, entryname, chairman,
 22      status);
 23 
 24 
 25 Arguments:
 26 dirname
 27    is the pathname of the directory containing the meeting.  (Input)
 28 entryname
 29    is the name of the meeting.  The ".control" suffix is required.
 30    (Input)
 31 chairman
 32    is the name of the new chairman of the meeting, in the form
 33    Person.Project.  The new chairman must already be a participant.
 34    (Input)
 35 
 36 
 37 status
 38    is a standard status code.  (Output) It can be:
 39    forum_error_table_$chairman_only
 40       The caller is not the current chairman.
 41    forum_error_table_$no_such_user
 42       The supplied new chairman is not a participant.
 43 
 44 
 45 :Entry:  change_chairman_idx:
 46 02/22/84 forum_chairman_$change_chairman_idx
 47 
 48 
 49 Function:  This entry changes the chairman of a Forum meeting.  It is
 50 the same as the change_chairman entry point except that a forum_idx is
 51 used to identify the meeting instead of a pathname.
 52 
 53 
 54 Syntax:
 55 declare forum_chairman_$change_chairman_idx entry (fixed bin, char(*),
 56      fixed bin(35));
 57 call forum_chairman_$change_chairman_idx (forum_idx, chairman, status);
 58 
 59 
 60 Arguments:
 61 forum_idx
 62    identifies a meeting opened by forum_$open_forum.  (Input)
 63 chairman
 64    is the name of the new chairman of the meeting, in the form
 65    Person.Project.  The new chairman must already be a participant.
 66    (Input)
 67 status
 68    is a standard status code.  (Output) It can be:
 69    forum_error_table_$chairman_only
 70       The caller is not the current chairman.
 71    forum_error_table_$no_such_user
 72       The supplied new chairman is not a participant.
 73 
 74 
 75 :Entry:  chname_forum:  02/22/84 forum_chairman_$chname_forum
 76 
 77 
 78 Function:  This entry is used to change the names of Forum meetings.
 79 
 80 
 81 Syntax:
 82 declare forum_chairman_$chname_forum entry (char(*), char(*), char(*),
 83      char(*), fixed bin(35));
 84 call forum_chairman_$chname_forum (dirname, entryname, old_name,
 85      new_name, status);
 86 
 87 
 88 Arguments:
 89 dirname
 90    is the pathname of the directory containing the meeting.  (Input)
 91 entryname
 92    is the name of the meeting.  The ".control" suffix is required.
 93    (Input)
 94 old_name
 95    is a name to be removed from the meeting, or blank if no name is to
 96    be removed.  If non-blank, the ".control" suffix is required.
 97    (Input)
 98 new_name
 99    is a name to be added to the meeting, or blank if no name is to be
100    added.  If non-blank, the ".control" suffix is required.  (Input)
101 status
102    is a standard status code.  (Output)
103 
104 
105 :Entry:  chname_forum_idx:  02/22/84 forum_chairman_$chname_forum_idx
106 
107 
108 Function:  This entry is used to change the names of Forum meetings.
109 It is the same as the chname_forum entry point except that a forum_idx
110 is used to identify the meeting instead of a pathname.
111 
112 
113 Syntax:
114 declare forum_chairman_$chname_forum_idx entry (fixed bin, char(*),
115      char(*), fixed bin(35));
116 call forum_chairman_$chname_forum_idx (forum_idx, old_name, new_name,
117      status);
118 
119 
120 Arguments:
121 forum_idx
122    identifies a meeting opened by forum_$open_forum.  (Input)
123 old_name
124    is a name to be removed from the meeting, or blank if no name is to
125    be removed.  If non-blank, the ".control" suffix is required.
126    (Input)
127 new_name
128    is a name to be added to the meeting, or blank if no name is to be
129    added.  If non-blank, the ".control" suffix is required.  (Input)
130 status
131    is a standard status code.  (Output)
132 
133 
134 :Entry:  create_forum:  02/22/84 forum_chairman_$create_forum
135 
136 
137 Function:  Creates a Forum meeting with the user as chairman.
138 
139 
140 Syntax:
141 declare forum_chairman_$create_forum entry (char(*), char(*),
142      fixed bin(35));
143 call forum_chairman_$create_forum (dirname, entryname, status);
144 
145 
146 Arguments:
147 dirname
148    is the pathname of the directory containing the meeting.  (Input)
149 entryname
150    is the name of the meeting.  The ".control" suffix is required.
151    (Input)
152 status
153    is a standard status code.
154 
155 
156 Access required:
157 The caller must have modify permission on the containing directory.
158 
159 
160 :Entry:  expunge:  02/22/84 forum_chairman_$expunge
161 
162 
163 Function:  This entry is used to physically remove deleted participant
164 records and deleted transactions from a Forum meeting.  This results in
165 reclaimed storage space.
166 
167 
168 Syntax:
169 declare forum_chairman_$expunge entry (fixed bin, bit (36) aligned,
170      fixed bin, fixed bin, fixed bin, fixed bin, fixed bin(35));
171 call forum_chairman_$expunge (forum_idx, switches, users_deleted,
172      trans_deleted, users_damaged, trans_damaged, status);
173 
174 
175 Arguments:
176 forum_idx
177    identifies a meeting opened by forum_$open_forum.  (Input)
178 switches
179    is a word of switches as follows:  (Input)
180    transactions
181       if set, deleted transactions should be expunged.
182    users
183       if set, deleted participant records should be expunged.
184 users_deleted
185    is the number of participant records which were expunged.  (Output)
186 trans_deleted
187    is the number of transactions which were expunged.  (Output)
188 
189 
190 users_damaged
191    is the number of participant records which were expunged because
192    they were inconsistent.  (Output)
193 trans_damaged
194    is the number of transactions which were expunged because they were
195    inconsistent.  (Output)
196 status
197    is a standard status code.  (Output)
198 
199 
200 :Entry:  set_forum_acl:  02/22/84 forum_chairman_$set_forum_acl
201 
202 
203 Function:  This entry is used to add or change an ACL term on a Forum
204 meeting.  ACL terms can only be specified for Person_id.* or
205 *.Project_id, terms of the form Person_id.Project_id are not allowed.
206 
207 
208 Syntax:
209 declare forum_chairman_$set_forum_acl entry (fixed bin, char(*),
210      bit(1) aligned, bit(1) aligned, bit(1) aligned, fixed bin(35));
211 call forum_chairman_$set_forum_acl (forum_idx, access_name, user_sw,
212      set_sw, write_sw, status);
213 
214 
215 Arguments:
216 forum_idx
217    identifies a meeting opened by forum_$open_forum.  (Input)
218 access_name
219    The Person_id or Project_id whose ACL is to be added or deleted.
220    Access_name can not contain a ".".  (Input)
221 user_sw
222    This switch should be on if access_name is a Person_id, and off if
223    it is a Project_id.  (Input)
224 set_sw
225    This switch should on if access is to be added, and off if it is to
226    be deleted.  (Input)
227 
228 
229 write_sw
230    This switch should on if write access is to be added, and off if
231    only read access is to be added.  This switch is ignored if set_sw
232    is off.  (Input)
233 status
234    is a standard status code.  (Output)
235 
236 
237 Access required:
238 The caller must have modify permission on the containing directory.