summaryrefslogtreecommitdiffstats
path: root/database/sqlite/administration/useraccount.c
diff options
context:
space:
mode:
Diffstat (limited to 'database/sqlite/administration/useraccount.c')
-rw-r--r--database/sqlite/administration/useraccount.c20
1 files changed, 14 insertions, 6 deletions
diff --git a/database/sqlite/administration/useraccount.c b/database/sqlite/administration/useraccount.c
index 0571d98..a936294 100644
--- a/database/sqlite/administration/useraccount.c
+++ b/database/sqlite/administration/useraccount.c
@@ -686,12 +686,20 @@ xmlDoc *eDBadminAccessLevel(eurephiaCTX *ctx, xmlDoc *qryxml) {
sqlres = sqlite_query_mapped(ctx, SQL_DELETE, "DELETE FROM eurephia_adminaccess",
NULL, fmap_m, NULL);
if( sqlres && (sqlite_get_affected_rows(sqlres) > 0) ) {
- res_d = eurephiaXML_ResultMsg(ctx, exmlRESULT, NULL,
- "Access level %s (%s) was revoked from uid %s",
- eDBmappingGetValue(fmap_m, FIELD_ACCESSLVL),
- eDBmappingGetValue(fmap_m, FIELD_INTERFACE),
- eDBmappingGetValue(fmap_m, FIELD_UID));
- }
+ const char *uid = eDBmappingGetValue(fmap_m, FIELD_UID);
+ const char *acclvl = eDBmappingGetValue(fmap_m, FIELD_ACCESSLVL);
+
+ if( acclvl != NULL ) {
+ res_d = eurephiaXML_ResultMsg(ctx, exmlRESULT, NULL,
+ "Access level %s (%s) was revoked from uid %s",
+ acclvl, eDBmappingGetValue(fmap_m, FIELD_ACCESSLVL),
+ uid);
+ } else {
+ res_d = eurephiaXML_ResultMsg(ctx, exmlRESULT, NULL,
+ "%i access levels was removed from uid %s",
+ sqlite_get_affected_rows(sqlres), uid);
+ }
+ }
} else if( strcmp(mode, "list") == 0 ) {
res_d = adminacclvl_Get(ctx, fmap_m);
}