| ︙ | | | ︙ | |
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
|
** Show a list of users. Clicking on any user jumps to the edit
** screen for that user. Requires Admin privileges.
**
** Query parameters:
**
** with=CAP Only show users that have one or more capabilities in CAP.
*/
void setup_ulist(void){
Stmt s;
double rNow;
const char *zWith = P("with");
int bUnusedOnly = P("unused")!=0;
login_check_credentials();
if( !g.perm.Admin ){
|
|
|
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
|
** Show a list of users. Clicking on any user jumps to the edit
** screen for that user. Requires Admin privileges.
**
** Query parameters:
**
** with=CAP Only show users that have one or more capabilities in CAP.
*/
void setup_ulist_page(void){
Stmt s;
double rNow;
const char *zWith = P("with");
int bUnusedOnly = P("unused")!=0;
login_check_credentials();
if( !g.perm.Admin ){
|
| ︙ | | | ︙ | |
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
|
/*
** WEBPAGE: setup_ulist_notes
**
** A documentation page showing notes about user configuration. This
** information used to be a side-bar on the user list page, but has been
** factored out for improved presentation.
*/
void setup_ulist_notes(void){
style_header("User Configuration Notes");
@ <h1>User Configuration Notes:</h1>
@ <ol>
@ <li><p>
@ Every user, logged in or not, inherits the privileges of
@ <span class="usertype">nobody</span>.
@ </p></li>
|
|
|
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
|
/*
** WEBPAGE: setup_ulist_notes
**
** A documentation page showing notes about user configuration. This
** information used to be a side-bar on the user list page, but has been
** factored out for improved presentation.
*/
void setup_ulist_notes_page(void){
style_header("User Configuration Notes");
@ <h1>User Configuration Notes:</h1>
@ <ol>
@ <li><p>
@ Every user, logged in or not, inherits the privileges of
@ <span class="usertype">nobody</span>.
@ </p></li>
|
| ︙ | | | ︙ | |
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
|
/*
** WEBPAGE: setup_ucap_list
**
** A documentation page showing the meaning of the various user capabilities
** code letters.
*/
void setup_ucap_list(void){
style_header("User Capability Codes");
@ <h1>All capabilities</h1>
capabilities_table(CAPCLASS_ALL);
@ <h1>Capabilities associated with checked-in content</h1>
capabilities_table(CAPCLASS_CODE);
@ <h1>Capabilities associated with data transfer and sync</h1>
capabilities_table(CAPCLASS_DATA);
|
|
|
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
|
/*
** WEBPAGE: setup_ucap_list
**
** A documentation page showing the meaning of the various user capabilities
** code letters.
*/
void setup_ucap_list_page(void){
style_header("User Capability Codes");
@ <h1>All capabilities</h1>
capabilities_table(CAPCLASS_ALL);
@ <h1>Capabilities associated with checked-in content</h1>
capabilities_table(CAPCLASS_CODE);
@ <h1>Capabilities associated with data transfer and sync</h1>
capabilities_table(CAPCLASS_DATA);
|
| ︙ | | | ︙ | |
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
|
/*
** WEBPAGE: setup_uedit
**
** Edit information about a user or create a new user.
** Requires Admin privileges.
*/
void user_edit(void){
const char *zId, *zLogin, *zInfo, *zCap, *zPw;
const char *zGroup;
const char *zOldLogin;
int uid, i;
char *zDeleteVerify = 0; /* Delete user verification text */
int higherUser = 0; /* True if user being edited is SETUP and the */
/* user doing the editing is ADMIN. Disallow editing */
|
|
|
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
|
/*
** WEBPAGE: setup_uedit
**
** Edit information about a user or create a new user.
** Requires Admin privileges.
*/
void setup_uedit_page(void){
const char *zId, *zLogin, *zInfo, *zCap, *zPw;
const char *zGroup;
const char *zOldLogin;
int uid, i;
char *zDeleteVerify = 0; /* Delete user verification text */
int higherUser = 0; /* True if user being edited is SETUP and the */
/* user doing the editing is ADMIN. Disallow editing */
|
| ︙ | | | ︙ | |