summaryrefslogtreecommitdiff
path: root/DSACore/Controllers/TokensController.cs
diff options
context:
space:
mode:
Diffstat (limited to 'DSACore/Controllers/TokensController.cs')
-rw-r--r--DSACore/Controllers/TokensController.cs25
1 files changed, 25 insertions, 0 deletions
diff --git a/DSACore/Controllers/TokensController.cs b/DSACore/Controllers/TokensController.cs
new file mode 100644
index 0000000..a85cabe
--- /dev/null
+++ b/DSACore/Controllers/TokensController.cs
@@ -0,0 +1,25 @@
+using DSACore.Hubs;
+using Microsoft.AspNetCore.Mvc;
+
+namespace DSACore.Controllers
+{
+ [Route("lobby/[controller]")]
+ [ApiController]
+ public class TokensController : Controller
+ {
+ // GET
+ [HttpGet("{token}")]
+ public ActionResult<string> Get(string token)
+ {
+ if (!int.TryParse(token, out var intToken))
+ return BadRequest("The token has to be a 32 bit unsigned integer");
+
+ if (intToken == 42) return Ok("Scribble");
+
+ if (!Users.Tokens.Exists(x => x.GetHashCode() == intToken)) return NotFound();
+
+ var group = Users.Tokens.Find(x => x.GetHashCode() == intToken);
+ return Ok(group.Group);
+ }
+ }
+} \ No newline at end of file