summaryrefslogtreecommitdiffstats
path: root/src/server/Utilities/HandleGithubCreatingTicket.cs
diff options
context:
space:
mode:
Diffstat (limited to 'src/server/Utilities/HandleGithubCreatingTicket.cs')
-rw-r--r--src/server/Utilities/HandleGithubCreatingTicket.cs30
1 files changed, 30 insertions, 0 deletions
diff --git a/src/server/Utilities/HandleGithubCreatingTicket.cs b/src/server/Utilities/HandleGithubCreatingTicket.cs
new file mode 100644
index 0000000..3ead322
--- /dev/null
+++ b/src/server/Utilities/HandleGithubCreatingTicket.cs
@@ -0,0 +1,30 @@
+using Microsoft.AspNetCore.Authentication.OAuth;
+using Npgsql;
+
+namespace IOL.BookmarkThing.Server.Utilities;
+
+public static class HandleGithubCreatingTicket
+{
+ public static Task Handle(OAuthCreatingTicketContext context, IConfiguration configuration) {
+ var ghid = context.Identity?.FindFirst(p => p.Type == AppClaims.GITHUB_ID);
+ if (ghid == default) {
+ return default;
+ }
+
+ var connstring = ConnectionStrings.AppDatabaseConnectionString(configuration);
+ var connection = new NpgsqlConnection(connstring);
+ connection.Open();
+ var query = new NpgsqlCommand(@$"SELECT user_id FROM github_user_mappings WHERE github_id='{ghid}'", connection);
+ var x = query.ExecuteReader();
+ foreach (var row in x) {
+ Console.WriteLine(JsonSerializer.Serialize(row));
+ }
+
+ // var claims = context.Identity.Claims.ToList();
+ // foreach (var claim in claims) {
+ // context.Identity.RemoveClaim(claim);
+ // }
+
+ return Task.CompletedTask;
+ }
+}