Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
malwaredllc
GitHub Repository: malwaredllc/byob
Path: blob/master/web-gui/buildyourownbotnet/utils.py
1292 views
1
import os
2
import json
3
import string
4
import random
5
import requests
6
from threading import Thread
7
8
from buildyourownbotnet.core.dao import session_dao, task_dao
9
10
from flask import current_app, url_for
11
from flask_mail import Message
12
13
OUTPUT_DIR = os.path.join(os.path.dirname(__file__), 'output')
14
15
16
def get_sessions_serialized(user_id):
17
"""Return serialized list of sessions for a given user."""
18
return [session.serialize() for session in session_dao.get_user_sessions(user_id)]
19
20
21
def get_tasks_serialized(session_uid):
22
"""Return serialized list of tasks for a given session."""
23
tasks = task_dao.get_session_tasks(session_uid)
24
serialized_tasks = []
25
for task in tasks:
26
task = task.serialize()
27
if task.get('result'):
28
task['result'] = task['result'][:100]
29
serialized_tasks.append(task)
30
return serialized_tasks
31
32
33
def get_tasks_serialized_paginated(session_id, page=1):
34
"""Return serialized list of tasks for a given session (paginated)."""
35
tasks, pages = task_dao.get_session_tasks_paginated(session_id, page=page)
36
serialized_tasks = []
37
for task in tasks:
38
task = task.serialize()
39
if task.get('result'):
40
task['result'] = task['result'][:100]
41
serialized_tasks.append(task)
42
return serialized_tasks, pages
43
44