Implement AI workspace and mitigation workflow
This commit is contained in:
@@ -1,24 +1,28 @@
|
||||
from core.views.manage.permissions import SuperUserRequiredMixin
|
||||
from django.views import View
|
||||
from django.shortcuts import render
|
||||
import base64
|
||||
from core.models import Chat
|
||||
|
||||
from mixins.views import ObjectRead, ObjectList
|
||||
import requests
|
||||
import orjson
|
||||
import requests
|
||||
from django.shortcuts import render
|
||||
from django.views import View
|
||||
from mixins.views import ObjectList, ObjectRead
|
||||
|
||||
from core.models import Chat
|
||||
from core.views.manage.permissions import SuperUserRequiredMixin
|
||||
|
||||
|
||||
class CustomObjectRead(ObjectRead):
|
||||
def post(self, request, *args, **kwargs):
|
||||
self.request = request
|
||||
return super().get(request, *args, **kwargs)
|
||||
|
||||
|
||||
class Signal(SuperUserRequiredMixin, View):
|
||||
template_name = "pages/signal.html"
|
||||
|
||||
def get(self, request):
|
||||
return render(request, self.template_name)
|
||||
|
||||
|
||||
class SignalAccounts(SuperUserRequiredMixin, ObjectList):
|
||||
list_template = "partials/signal-accounts.html"
|
||||
|
||||
@@ -36,6 +40,7 @@ class SignalAccounts(SuperUserRequiredMixin, ObjectList):
|
||||
|
||||
return accounts
|
||||
|
||||
|
||||
class SignalContactsList(SuperUserRequiredMixin, ObjectList):
|
||||
list_template = "partials/signal-contacts-list.html"
|
||||
|
||||
@@ -45,7 +50,6 @@ class SignalContactsList(SuperUserRequiredMixin, ObjectList):
|
||||
list_url_name = "signal_contacts"
|
||||
list_url_args = ["type", "pk"]
|
||||
|
||||
|
||||
def get_queryset(self, *args, **kwargs):
|
||||
# url = signal:8080/v1/accounts
|
||||
# /v1/configuration/{number}/settings
|
||||
@@ -67,13 +71,14 @@ class SignalContactsList(SuperUserRequiredMixin, ObjectList):
|
||||
contact["identity"] = identity
|
||||
|
||||
obj = {
|
||||
#"identity": identity,
|
||||
# "identity": identity,
|
||||
"contacts": contacts,
|
||||
}
|
||||
self.extra_context = {"pretty": list(obj.keys())}
|
||||
|
||||
return obj
|
||||
|
||||
|
||||
class SignalChatsList(SuperUserRequiredMixin, ObjectList):
|
||||
list_template = "partials/signal-chats-list.html"
|
||||
|
||||
@@ -82,15 +87,17 @@ class SignalChatsList(SuperUserRequiredMixin, ObjectList):
|
||||
|
||||
list_url_name = "signal_chats"
|
||||
list_url_args = ["type", "pk"]
|
||||
|
||||
|
||||
def get_queryset(self, *args, **kwargs):
|
||||
pk = self.kwargs.get("pk", "")
|
||||
object_list = Chat.objects.filter(account=pk)
|
||||
return object_list
|
||||
|
||||
|
||||
class SignalMessagesList(SuperUserRequiredMixin, ObjectList):
|
||||
...
|
||||
|
||||
|
||||
class SignalAccountAdd(SuperUserRequiredMixin, CustomObjectRead):
|
||||
detail_template = "partials/signal-account-add.html"
|
||||
|
||||
@@ -107,7 +114,7 @@ class SignalAccountAdd(SuperUserRequiredMixin, CustomObjectRead):
|
||||
device_name = form_args["device"]
|
||||
url = f"http://signal:8080/v1/qrcodelink?device_name={device_name}"
|
||||
response = requests.get(url)
|
||||
image_bytes = response.content
|
||||
image_bytes = response.content
|
||||
base64_image = base64.b64encode(image_bytes).decode("utf-8")
|
||||
|
||||
return base64_image
|
||||
return base64_image
|
||||
|
||||
Reference in New Issue
Block a user