From 021555808d6f259090252991f23f652a2d8b9dcb Mon Sep 17 00:00:00 2001
From: mlbonhomme <bonhomme@teklia.com>
Date: Thu, 18 Nov 2021 16:45:05 +0000
Subject: [PATCH] add/edit oauth credentials from django admin

---
 arkindex/users/admin.py                         | 11 ++++++++++-
 .../0014_alter_oauthcredentials_options.py      | 17 +++++++++++++++++
 arkindex/users/models.py                        |  4 ++++
 3 files changed, 31 insertions(+), 1 deletion(-)
 create mode 100644 arkindex/users/migrations/0014_alter_oauthcredentials_options.py

diff --git a/arkindex/users/admin.py b/arkindex/users/admin.py
index 7baa11d1c0..defef191e2 100644
--- a/arkindex/users/admin.py
+++ b/arkindex/users/admin.py
@@ -6,7 +6,7 @@ from django.contrib.auth.models import Group as BaseGroup
 from django.contrib.contenttypes.admin import GenericTabularInline
 from enumfields.admin import EnumFieldListFilter
 
-from arkindex.users.models import Group, Right, User, UserScope
+from arkindex.users.models import Group, OAuthCredentials, Right, User, UserScope
 
 
 class UserCreationForm(forms.ModelForm):
@@ -113,7 +113,16 @@ class GroupAdmin(admin.ModelAdmin):
     inlines = (UserMembershipInline, )
 
 
+class OAuthCredentialAdmin(admin.ModelAdmin):
+    list_display = ('id', 'user', 'provider_name')
+    fields = ('id', 'user', 'provider_name', 'token', 'refresh_token', 'status')
+    readonly_fields = ('id', )
+    list_filter = ('provider_name', )
+    search_fields = ('user', )
+
+
 admin.site.register(User, UserAdmin)
+admin.site.register(OAuthCredentials, OAuthCredentialAdmin)
 # Register the custom GroupAdmin
 admin.site.register(Group, GroupAdmin)
 # and hide base GroupAdmin form contrib.auth
diff --git a/arkindex/users/migrations/0014_alter_oauthcredentials_options.py b/arkindex/users/migrations/0014_alter_oauthcredentials_options.py
new file mode 100644
index 0000000000..08d287b173
--- /dev/null
+++ b/arkindex/users/migrations/0014_alter_oauthcredentials_options.py
@@ -0,0 +1,17 @@
+# Generated by Django 3.2.6 on 2021-11-18 13:16
+
+from django.db import migrations
+
+
+class Migration(migrations.Migration):
+
+    dependencies = [
+        ('users', '0013_user_created_updated_fields'),
+    ]
+
+    operations = [
+        migrations.AlterModelOptions(
+            name='oauthcredentials',
+            options={'verbose_name': 'OAuth credentials', 'verbose_name_plural': 'OAuth credentials'},
+        ),
+    ]
diff --git a/arkindex/users/models.py b/arkindex/users/models.py
index 1dc03df558..3439fa08bc 100644
--- a/arkindex/users/models.py
+++ b/arkindex/users/models.py
@@ -182,6 +182,10 @@ class OAuthCredentials(models.Model):
     def git_provider(self):
         return self.git_provider_class(credentials=self)
 
+    class Meta:
+        verbose_name = 'OAuth credentials'
+        verbose_name_plural = 'OAuth credentials'
+
 
 class Scope(Enum):
 
-- 
GitLab