source: binary-improvements/MapRendering/Web/Handlers/UserStatusHandler.cs@ 400

Last change on this file since 400 was 369, checked in by alloc, 3 years ago

Preparations for A20 release
Changes usage of "SteamID" to "UserID" in console commands
Also changes a bunch of the WebAPI stuff to show / use UserIDs

File size: 1.0 KB
Line 
1using System.Net;
2using AllocsFixes.JSON;
3using AllocsFixes.NetConnections.Servers.Web.API;
4
5namespace AllocsFixes.NetConnections.Servers.Web.Handlers {
6 public class UserStatusHandler : PathHandler {
7 public UserStatusHandler (string _moduleName = null) : base (_moduleName) {
8 }
9
10 public override void HandleRequest (HttpListenerRequest _req, HttpListenerResponse _resp, WebConnection _user,
11 int _permissionLevel) {
12 JSONObject result = new JSONObject ();
13
14 result.Add ("loggedin", new JSONBoolean (_user != null));
15 result.Add ("username", new JSONString (_user != null ? _user.UserId.ToString () : string.Empty));
16
17 JSONArray perms = new JSONArray ();
18 foreach (WebPermissions.WebModulePermission perm in WebPermissions.Instance.GetModules ()) {
19 JSONObject permObj = new JSONObject ();
20 permObj.Add ("module", new JSONString (perm.module));
21 permObj.Add ("allowed", new JSONBoolean (perm.permissionLevel >= _permissionLevel));
22 perms.Add (permObj);
23 }
24
25 result.Add ("permissions", perms);
26
27 WebAPI.WriteJSON (_resp, result);
28 }
29 }
30}
Note: See TracBrowser for help on using the repository browser.