From 133f6d01ce9dcbc01ccbef0bc58cecc9ca713cfe Mon Sep 17 00:00:00 2001 From: Sebastian Reichel Date: Fri, 5 Oct 2012 20:14:53 +0200 Subject: implement user list --- src/web.vala | 30 +++++++++++++++++++++++++++++- 1 file changed, 29 insertions(+), 1 deletion(-) (limited to 'src/web.vala') diff --git a/src/web.vala b/src/web.vala index 1b68ee4..8c87eed 100644 --- a/src/web.vala +++ b/src/web.vala @@ -47,7 +47,7 @@ public class WebServer { string[] pathparts = path.split("/"); if(pathparts.length <= 2) { - handler_todo(server, msg, path, query, client); + handler_user_list(server, msg, path, query, client); } else { int id = int.parse(pathparts[2]); @@ -72,6 +72,34 @@ public class WebServer { } } + void handler_user_list(Soup.Server server, Soup.Message msg, string path, GLib.HashTable? query, Soup.ClientContext client) { + try { + var session = new WebSession(server, msg, path, query, client); + if(!session.superuser) { + handler_403(server, msg, path, query, client); + return; + } + + var t = new WebTemplate("users/index.html", session); + t.replace("TITLE", "KtT Shop System: User"); + t.menu_set_active("users"); + var data = ""; + foreach(var m in db.get_member_ids()) { + try { + var name = db.get_username(m); + data += @"$m$name"; + } catch(WebSessionError e) { + } + } + t.replace("DATA", data); + + msg.set_response("text/html", Soup.MemoryUse.COPY, t.data); + } catch(TemplateError e) { + stderr.printf(e.message+"\n"); + handler_404(server, msg, path, query, client); + } + } + void handler_user_import(Soup.Server server, Soup.Message msg, string path, GLib.HashTable? query, Soup.ClientContext client) { try { var session = new WebSession(server, msg, path, query, client); -- cgit v1.2.3