mirror of
https://github.com/nikdoof/test-auth.git
synced 2025-12-14 14:52:15 +00:00
Fix a few showstoppers in the Services changes.
This commit is contained in:
@@ -143,8 +143,8 @@ class Service(models.Model):
|
|||||||
url = models.CharField("Service URL", max_length=200, blank=True)
|
url = models.CharField("Service URL", max_length=200, blank=True)
|
||||||
active = models.BooleanField(default=True)
|
active = models.BooleanField(default=True)
|
||||||
api = models.CharField("API", max_length=200)
|
api = models.CharField("API", max_length=200)
|
||||||
groups = models.ManyToManyField(Group, blank=False)
|
groups = models.ManyToManyField(Group, blank=True)
|
||||||
settings_json = JSONField("Service Settings", blank=True)
|
settings_json = JSONField("Service Settings", blank=True, default={})
|
||||||
|
|
||||||
class Meta:
|
class Meta:
|
||||||
verbose_name = 'Service'
|
verbose_name = 'Service'
|
||||||
@@ -165,7 +165,7 @@ class Service(models.Model):
|
|||||||
return self.name
|
return self.name
|
||||||
|
|
||||||
def save(self):
|
def save(self):
|
||||||
if not self.settings_json:
|
if not self.settings_json or self.settings_json == {}:
|
||||||
if self.api:
|
if self.api:
|
||||||
self.settings_json = self.settings
|
self.settings_json = self.settings
|
||||||
else:
|
else:
|
||||||
@@ -225,7 +225,7 @@ class ServiceAccount(models.Model):
|
|||||||
else:
|
else:
|
||||||
self.service.api_class.disable_user(self.service_uid)
|
self.service.api_class.disable_user(self.service_uid)
|
||||||
|
|
||||||
models.Model.save(self)
|
models.Model.save(self)
|
||||||
|
|
||||||
@staticmethod
|
@staticmethod
|
||||||
def pre_delete_listener( **kwargs ):
|
def pre_delete_listener( **kwargs ):
|
||||||
|
|||||||
@@ -1,5 +1,7 @@
|
|||||||
import hashlib
|
import hashlib
|
||||||
import random
|
import random
|
||||||
|
import re
|
||||||
|
import unicodedata
|
||||||
|
|
||||||
from django.http import HttpResponseRedirect
|
from django.http import HttpResponseRedirect
|
||||||
from django.shortcuts import render_to_response
|
from django.shortcuts import render_to_response
|
||||||
@@ -135,9 +137,7 @@ def service_add(request):
|
|||||||
form = clsform(request.POST)
|
form = clsform(request.POST)
|
||||||
if form.is_valid():
|
if form.is_valid():
|
||||||
|
|
||||||
acc = ServiceAccount()
|
acc = ServiceAccount(user=request.user, service=form.cleaned_data['service'])
|
||||||
acc.user = request.user
|
|
||||||
acc.service = form.cleaned_data['service']
|
|
||||||
acc.character = form.cleaned_data['character']
|
acc.character = form.cleaned_data['character']
|
||||||
|
|
||||||
if acc.service.settings['require_password']:
|
if acc.service.settings['require_password']:
|
||||||
@@ -149,7 +149,7 @@ def service_add(request):
|
|||||||
acc.password = None
|
acc.password = None
|
||||||
|
|
||||||
# Decode unicode and remove invalid characters
|
# Decode unicode and remove invalid characters
|
||||||
username = re.sub('[^a-zA-Z0-9_-]+', '', unicodedata.normalize('NFKD', self.character.name).encode('ASCII', 'ignore'))
|
username = re.sub('[^a-zA-Z0-9_-]+', '', unicodedata.normalize('NFKD', acc.character.name).encode('ASCII', 'ignore'))
|
||||||
|
|
||||||
if acc.service.api_class.check_user(username):
|
if acc.service.api_class.check_user(username):
|
||||||
error = "Username already exists on the target service, please contact an admin."
|
error = "Username already exists on the target service, please contact an admin."
|
||||||
|
|||||||
@@ -15,7 +15,7 @@ this is incorrect please raise a bug on the tracker.
|
|||||||
<tr><td>Service:</td><td>{{ acc.service.name }}</td></tr>
|
<tr><td>Service:</td><td>{{ acc.service.name }}</td></tr>
|
||||||
<tr><td>Service URL:</td><td><a href="{{ acc.service.url }}">{{ acc.service.url }}</a></td></tr>
|
<tr><td>Service URL:</td><td><a href="{{ acc.service.url }}">{{ acc.service.url }}</a></td></tr>
|
||||||
{% for key,value in ret.items %}
|
{% for key,value in ret.items %}
|
||||||
<tr><td>{{ key }}:</td><td>{{ value }}</td></tr>
|
<tr><td>{{ key|title }}:</td><td>{{ value }}</td></tr>
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
</table>
|
</table>
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user