from django.http import HttpResponse from django.db.models import Count from django.shortcuts import redirect from .models import SimpsonsData,simpsons_data_object from .utils import mark_episode_watched import random import threading def hello(request): return HttpResponse('

Hello Simpsons view!

') def episode_generator(request): boolean_restart = True; while (boolean_restart): maximum_number_of_seasons = simpsons_data_object.aggregate(unique_season=Count('season', distinct=True))['unique_season'] random_season = random.randint(1, maximum_number_of_seasons) print("random season: " + str(random_season)) maximum_number_of_episodes = simpsons_data_object.filter(season=random_season).count() random_episode = random.randint(1, maximum_number_of_episodes) print("random episode: " + str(random_episode)) episode_seen = simpsons_data_object.filter(season=random_season, episode=random_episode).values('seen')[0]['seen'] if not(episode_seen): boolean_restart = False else: print("episode "+str(random_episode)+" from season "+str(random_season)+" already seen") #Set episode as seen # It will still update an already seem episode but it works and I'm lazy #Mark episode as seen on betaseries thread = threading.Thread( target=mark_episode_watched, args=(random_season, random_episode, "watched"), daemon=True, ) thread.start() random_url = simpsons_data_object.filter(season=random_season, episode=random_episode).values('url')[0]['url'] return redirect(str(random_url)) def download_file(request): # fill these variables with real values fl_path = '/data/download/sonarr' filename = 'The.Boys.2019.S04E05.2160p.HDR10Plus.WEBRip.6CH.x265.HEVC-PSA.mkv' # fl = open(fl_path, 'r') # mime_type, _ = mimetypes.guess_type(fl_path) # response = HttpResponse(fl, content_type=mime_type) # response['Content-Disposition'] = "attachment; filename=%s" % filename some_file = open('/data/kubernetes/Backup/nextcloud/notes/2024-07-28/Course.md', "r") django_file = File(some_file) return HttpResponse("

Hello download!

{{ django_file.name }}

bye download!

") # return response def download_mo(request,file): path_to_file = os.path.realpath(file) response = FileResponse(open(path_to_file, 'rb')) file_name = file[5:] response['Content-Disposition'] = 'inline; filename=' + file_name return response