forked from rDrama/rDrama
1
0
Fork 0

Merge branch 'frost' into blitzen

master
kek7198 2021-12-20 09:13:47 -06:00
commit 29507b24ac
26 changed files with 86 additions and 54 deletions

View File

@ -55,7 +55,7 @@ def api_verify_email(v):
@auth_desired
def activate(v):
email = request.values.get("email", "").strip()
email = request.values.get("email", "").strip().lower()
id = request.values.get("id", "").strip()
timestamp = int(request.values.get("time", "0"))
token = request.values.get("token", "").strip()

View File

@ -33,6 +33,9 @@ def post_pid_comment_cid(cid, pid=None, anything=None, v=None):
if v and request.path.startswith('/logged_out'): v = None
if not v or v.oldsite: template2 = ''
else: template2 = 'CHRISTMAS/'
try: cid = int(cid)
except:
try: cid = int(cid, 36)
@ -64,7 +67,7 @@ def post_pid_comment_cid(cid, pid=None, anything=None, v=None):
if post.over_18 and not (v and v.over_18) and not session.get('over_18', 0) >= int(time.time()):
if request.headers.get("Authorization"): return {'error': f'This content is not suitable for some users and situations.'}
else: render_template("errors/nsfw.html", v=v)
else: render_template(f"{template2}errors/nsfw.html", v=v)
try: context = int(request.values.get("context", 0))
except: context = 0
@ -127,7 +130,7 @@ def post_pid_comment_cid(cid, pid=None, anything=None, v=None):
else:
if post.is_banned and not (v and (v.admin_level > 1 or post.author_id == v.id)): template = "submission_banned.html"
else: template = "submission.html"
return render_template(template, v=v, p=post, sort=sort, linked_comment=comment, comment_info=comment_info, render_replies=True)
return render_template(f"{template2}{template}", v=v, p=post, sort=sort, linked_comment=comment, comment_info=comment_info, render_replies=True)
@app.post("/comment")

View File

@ -278,8 +278,7 @@ def sign_up_post(v):
if not re.fullmatch(valid_password_regex, request.values.get("password")):
return new_signup("Password must be between 8 and 100 characters.")
email = request.values.get("email")
email = email.strip()
email = request.values.get("email").strip().lower()
if email.endswith("@gmail.com"):
email=email.split('@')[0]
@ -377,7 +376,7 @@ def get_forgot():
def post_forgot():
username = request.values.get("username").lstrip('@')
email = request.values.get("email",'').strip()
email = request.values.get("email",'').strip().lower()
email=email.replace("_","\_")
@ -514,7 +513,7 @@ def request_2fa_disable():
message="If username, password, and email match, we will send you an email.")
email=request.values.get("email")
email=request.values.get("email").strip().lower()
if email != user.email and email.endswith("@gmail.com"):
email=email.split('@')[0]
email=email.split('+')[0]

View File

@ -32,6 +32,32 @@ tiers={
"(Rich Bich)": 5,
}
@app.get("/sex")
@admin_level_required(3)
def sex(v):
data = {'access_token': GUMROAD_TOKEN}
response = [x['email'] for x in requests.get('https://api.gumroad.com/v2/products/tfcvri/subscribers', data=data, timeout=5).json()["subscribers"]]
emails = []
for email in response:
if email.endswith("@gmail.com"):
email=email.split('@')[0]
email=email.split('+')[0]
email=email.replace('.','').replace('_','')
email=f"{email}@gmail.com"
emails.append(email.lower())
users = g.db.query(User).filter(User.patron > 0, User.patron < 5, User.email != None).all()
for u in users:
if u.email.lower() not in emails: print(u.username)
return "sex"
@app.post("/settings/removebackground")
@limiter.limit("1/second")
@auth_required
@ -511,9 +537,7 @@ def gumroad(v):
if not (v.email and v.is_activated): return {"error": f"You must have a verified email to verify {patron} status and claim your rewards"}, 400
data = {
'access_token': GUMROAD_TOKEN,
}
data = {'access_token': GUMROAD_TOKEN,}
response = [x['email'] for x in requests.get('https://api.gumroad.com/v2/products/tfcvri/subscribers', data=data, timeout=5).json()["subscribers"]]
emails = []
@ -524,9 +548,9 @@ def gumroad(v):
email=email.split('+')[0]
email=email.replace('.','').replace('_','')
email=f"{email}@gmail.com"
emails.append(email)
emails.append(email.lower())
if v.email not in emails: return {"error": "Email not found"}, 404
if v.email.lower() not in emails: return {"error": "Email not found"}, 404
response = requests.get('https://api.gumroad.com/v2/sales', data=data, timeout=5).json()["sales"][0]
tier = tiers[response["variants_and_quantity"]]
@ -537,7 +561,7 @@ def gumroad(v):
if existing: return {"error": f"{patron} rewards already claimed on another account"}, 400
if v.patron:
badge = v.has_badge(20+tier)
badge = v.has_badge(20+v.patron)
if badge: g.db.delete(badge)
v.patron = tier
@ -631,7 +655,7 @@ def settings_security_post(v):
return redirect("/settings/security?error=" +
escape("Invalid password."))
new_email = request.values.get("new_email","").strip()
new_email = request.values.get("new_email","").strip().lower()
if new_email.endswith("@gmail.com"):
new_email=new_email.split('@')[0]
@ -1054,9 +1078,10 @@ def settings_song_change(v):
id = song.split("v=")[1]
elif song.startswith("https://youtu.be/"):
id = song.split("https://youtu.be/")[1]
if not v or v.oldsite: template = ''
else: template = 'CHRISTMAS/'
return render_template(f"{template}settings_profile.html", v=v, error=f"Not a youtube link.")
else:
if not v or v.oldsite: template = ''
else: template = 'CHRISTMAS/'
return render_template(f"{template}settings_profile.html", v=v, error=f"Not a youtube link.")
if "?" in id: id = id.split("?")[0]
if "&" in id: id = id.split("&")[0]

View File

@ -1,7 +1,7 @@
from files.mail import *
from files.__main__ import app, limiter, mail
from files.helpers.alerts import *
from files.helpers.const import BADGES
from files.helpers.const import *
from files.classes.award import AWARDS
from sqlalchemy import func
from os import path
@ -56,11 +56,11 @@ def participation_stats(v):
"removed_posts": g.db.query(Submission.id).filter_by(is_banned=True).count(),
"deleted_posts": g.db.query(Submission.id).filter(Submission.deleted_utc > 0).count(),
"posts_last_24h": g.db.query(Submission.id).filter(Submission.created_utc > day).count(),
"total_comments": g.db.query(Comment.id).count(),
"total_comments": g.db.query(Comment.id).filter(Comment.author_id.notin_((AUTOJANNY_ID,NOTIFICATIONS_ID))).count(),
"commenting_users": g.db.query(Comment.author_id).distinct().count(),
"removed_comments": g.db.query(Comment.id).filter_by(is_banned=True).count(),
"deleted_comments": g.db.query(Comment.id).filter(Comment.deleted_utc>0).count(),
"comments_last_24h": g.db.query(Comment.id).filter(Comment.created_utc > day).count(),
"comments_last_24h": g.db.query(Comment.id).filter(Comment.created_utc > day, Comment.author_id.notin_((AUTOJANNY_ID,NOTIFICATIONS_ID))).count(),
"post_votes": g.db.query(Vote.id).count(),
"post_voting_users": g.db.query(Vote.user_id).distinct().count(),
"comment_votes": g.db.query(CommentVote.id).count(),
@ -118,7 +118,7 @@ def cached_chart(days):
post_stats = [g.db.query(Submission.id).filter(Submission.created_utc < day_cutoffs[i], Submission.created_utc > day_cutoffs[i + 1], Submission.is_banned == False).count() for i in range(len(day_cutoffs) - 1)][::-1]
comment_stats = [g.db.query(Comment.id).filter(Comment.created_utc < day_cutoffs[i], Comment.created_utc > day_cutoffs[i + 1],Comment.is_banned == False, Comment.author_id != 1).count() for i in range(len(day_cutoffs) - 1)][::-1]
comment_stats = [g.db.query(Comment.id).filter(Comment.created_utc < day_cutoffs[i], Comment.created_utc > day_cutoffs[i + 1],Comment.is_banned == False, Comment.author_id.notin_((AUTOJANNY_ID,NOTIFICATIONS_ID))).count() for i in range(len(day_cutoffs) - 1)][::-1]
plt.rcParams["figure.figsize"] = (20,20)

View File

@ -14,11 +14,11 @@
{% if v %}
<style>:root{--primary:#{{v.themecolor}}}</style>
<link rel="stylesheet" href="/assets/CHRISTMAS/css/main.css?v=434"><link rel="stylesheet" href="/assets/CHRISTMAS/css/{{v.theme}}.css?v=200">
<link rel="stylesheet" href="/assets/CHRISTMAS/css/main.css?v=438"><link rel="stylesheet" href="/assets/CHRISTMAS/css/{{v.theme}}.css?v=200">
{% if v.agendaposter %}<link rel="stylesheet" href="/assets/CHRISTMAS/css/agendaposter.css?v=200">{% elif v.css %}<link rel="stylesheet" href="/@{{v.username}}/css">{% endif %}
{% else %}
<style>:root{--primary:#{{'DEFAULT_COLOR' | app_config}}</style>
<link rel="stylesheet" href="/assets/CHRISTMAS/css/main.css?v=434"><link rel="stylesheet" href="/assets/CHRISTMAS/css/{{'DEFAULT_THEME' | app_config}}.css?v=200">
<link rel="stylesheet" href="/assets/CHRISTMAS/css/main.css?v=438"><link rel="stylesheet" href="/assets/CHRISTMAS/css/{{'DEFAULT_THEME' | app_config}}.css?v=200">
{% endif %}
</head>

View File

@ -186,9 +186,9 @@
{% block stylesheets %}
<link rel="stylesheet" href="/assets/CHRISTMAS/css/main.css?v=434">
<link rel="stylesheet" href="/assets/CHRISTMAS/css/main.css?v=438">
<link rel="stylesheet" href="/static/dist/main.css?v=434">
<link rel="stylesheet" href="/static/dist/main.css?v=438">
<link rel="stylesheet" href="/assets/CHRISTMAS/css/mistletoe.css?v=400">

View File

@ -111,7 +111,7 @@
<button class="dropdown-item copy-link" data-clipboard-text="/signup?ref={{v.username}}"><i class="fad fa-user-friends fa-fw text-left mr-3"></i>Invite friends</button>
</div>
<div class="px-2">
<a class="dropdown-item" href="/assets/CHRISTMAS/{{'SITE_NAME' | app_config}}.apk?v=201"><i class="fab fa-android fa-fw text-left mr-3"></i>Android app</a>
<a class="dropdown-item" href="/assets/CHRISTMAS/{{'SITE_NAME' | app_config}}.apk?v=202"><i class="fab fa-android fa-fw text-left mr-3"></i>Android app</a>
<a class="dropdown-item" href="/rules"><i class="fas fa-balance-scale fa-fw text-left mr-3"></i>Rules</a>
@ -175,7 +175,7 @@
<li class="nav-item">
<a class="nav-link" href="/settings"><i class="fas fa-cog fa-fw mr-3"></i>Settings</a>
</li>
<a class="nav-item nav-link" href="/assets/CHRISTMAS/{{'SITE_NAME' | app_config}}.apk?v=201"><i class="fab fa-android fa-fw mr-3"></i>Android app</a>
<a class="nav-item nav-link" href="/assets/CHRISTMAS/{{'SITE_NAME' | app_config}}.apk?v=202"><i class="fab fa-android fa-fw mr-3"></i>Android app</a>
<a class="nav-item nav-link" href="/rules"><i class="fas fa-balance-scale fa-fw mr-3"></i>Rules</a>

View File

@ -13,9 +13,9 @@
<title>Login - {{'SITE_NAME' | app_config}}</title>
{% endblock %}
<link rel="stylesheet" href="/assets/CHRISTMAS/css/main.css?v=434">
<link rel="stylesheet" href="/assets/CHRISTMAS/css/main.css?v=438">
<link rel="stylesheet" href="/static/dist/main.css?v=434">
<link rel="stylesheet" href="/static/dist/main.css?v=438">
<style>:root{--primary:#{{'DEFAULT_COLOR' | app_config}}</style>

View File

@ -13,7 +13,7 @@
<title>2-Step Login - {{'SITE_NAME' | app_config}}</title>
<style>:root{--primary:#{{'DEFAULT_COLOR' | app_config}}</style>
<link rel="stylesheet" href="/assets/CHRISTMAS/css/main.css?v=434"><link rel="stylesheet" href="/assets/CHRISTMAS/css/{{'DEFAULT_THEME' | app_config}}.css?v=200">
<link rel="stylesheet" href="/assets/CHRISTMAS/css/main.css?v=438"><link rel="stylesheet" href="/assets/CHRISTMAS/css/{{'DEFAULT_THEME' | app_config}}.css?v=200">
</head>

View File

@ -28,9 +28,9 @@
{% block stylesheets %}
<link rel="stylesheet" href="/assets/CHRISTMAS/css/main.css?v=434">
<link rel="stylesheet" href="/assets/CHRISTMAS/css/main.css?v=438">
<link rel="stylesheet" href="/static/dist/main.css?v=434">
<link rel="stylesheet" href="/static/dist/main.css?v=438">
<link rel="stylesheet" href="/assets/CHRISTMAS/css/mistletoe.css?v=400">

View File

@ -26,9 +26,9 @@
<title>{% if ref_user %}{{ref_user.username}} invites you to {{'SITE_NAME' | app_config}}{% else %}Sign up - {{'SITE_NAME' | app_config}}{% endif %}</title>
<link rel="stylesheet" href="/assets/CHRISTMAS/css/main.css?v=434">
<link rel="stylesheet" href="/assets/CHRISTMAS/css/main.css?v=438">
<link rel="stylesheet" href="/static/dist/main.css?v=434">
<link rel="stylesheet" href="/static/dist/main.css?v=438">
<style>:root{--primary:#{{'DEFAULT_COLOR' | app_config}}</style>

View File

@ -31,7 +31,7 @@
<title>{% if ref_user %}{{ref_user.username}} invites you to {{'SITE_NAME' | app_config}}{% else %}{{'SITE_NAME' | app_config}}{% endif %}</title>
<style>:root{--primary:#{{'DEFAULT_COLOR' | app_config}}</style>
<link rel="stylesheet" href="/assets/CHRISTMAS/css/main.css?v=434"><link rel="stylesheet" href="/assets/CHRISTMAS/css/{{'DEFAULT_THEME' | app_config}}.css?v=200">
<link rel="stylesheet" href="/assets/CHRISTMAS/css/main.css?v=438"><link rel="stylesheet" href="/assets/CHRISTMAS/css/{{'DEFAULT_THEME' | app_config}}.css?v=200">
</head>

View File

@ -5,7 +5,7 @@
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="stylesheet" href="/static/dist/main.css?v=434">
<link rel="stylesheet" href="/static/dist/main.css?v=438">
<title>Flask + Tailwind CSS</title>
</head>

View File

@ -54,7 +54,12 @@
<tbody>
{% for k, v in badge_types.items() %}
<tr>
<td><input type="radio" id="badge-{{k}}" name="badge_id" value="{{k}}"></td>
<td>
<div class="custom-control">
<input checked="" class="custom-control-input" type="radio" id="{{k}}" name="badge_id" value="{{k}}">
<label class="custom-control-label" for="{{k}}"></label>
</div>
</td>
<td><label for="badge-{{k}}"><img loading="lazy" src="/assets/images/badges/{{v['name']}}.webp?v=190" width="70px" height="70px"></label></td>
<td>{{v['name']}}</td>
<td>{{v['description']}}</td>

View File

@ -14,11 +14,11 @@
{% if v %}
<style>:root{--primary:#{{v.themecolor}}}</style>
<link rel="stylesheet" href="/assets/css/main.css?v=434"><link rel="stylesheet" href="/assets/css/{{v.theme}}.css?v=191">
<link rel="stylesheet" href="/assets/css/main.css?v=438"><link rel="stylesheet" href="/assets/css/{{v.theme}}.css?v=191">
{% if v.agendaposter %}<link rel="stylesheet" href="/assets/css/agendaposter.css?v=190">{% elif v.css %}<link rel="stylesheet" href="/@{{v.username}}/css">{% endif %}
{% else %}
<style>:root{--primary:#{{'DEFAULT_COLOR' | app_config}}</style>
<link rel="stylesheet" href="/assets/css/main.css?v=434"><link rel="stylesheet" href="/assets/css/{{'DEFAULT_THEME' | app_config}}.css?v=191">
<link rel="stylesheet" href="/assets/css/main.css?v=438"><link rel="stylesheet" href="/assets/css/{{'DEFAULT_THEME' | app_config}}.css?v=191">
{% endif %}
</head>

View File

@ -6,12 +6,12 @@
<script src="/assets/js/bootstrap.js?v=190"></script>
{% if v %}
<style>:root{--primary:#{{v.themecolor}}}</style>
<link rel="stylesheet" href="/assets/css/main.css?v=434">
<link rel="stylesheet" href="/assets/css/main.css?v=438">
<link rel="stylesheet" href="/assets/css/{{v.theme}}.css?v=191">
{% if v.agendaposter %}<link rel="stylesheet" href="/assets/css/agendaposter.css?v=190">{% elif v.css %}<link rel="stylesheet" href="/@{{v.username}}/css">{% endif %}
{% else %}
<style>:root{--primary:#{{'DEFAULT_COLOR' | app_config}}</style>
<link rel="stylesheet" href="/assets/css/main.css?v=434"><link rel="stylesheet" href="/assets/css/{{'DEFAULT_THEME' | app_config}}.css?v=191">
<link rel="stylesheet" href="/assets/css/main.css?v=438"><link rel="stylesheet" href="/assets/css/{{'DEFAULT_THEME' | app_config}}.css?v=191">
{% endif %}
<link href="/assets/css/fa.css?v=193" rel="stylesheet">

View File

@ -112,7 +112,7 @@
<button class="dropdown-item copy-link" data-clipboard-text="/signup?ref={{v.username}}"><i class="fad fa-user-friends fa-fw text-left mr-3"></i>Invite friends</button>
</div>
<div class="px-2">
<a class="dropdown-item" href="/assets/{{'SITE_NAME' | app_config}}.apk?v=192"><i class="fab fa-android fa-fw text-left mr-3"></i>Android app</a>
<a class="dropdown-item" href="/assets/{{'SITE_NAME' | app_config}}.apk?v=193"><i class="fab fa-android fa-fw text-left mr-3"></i>Android app</a>
<a class="dropdown-item" href="/rules"><i class="fas fa-balance-scale fa-fw text-left mr-3"></i>Rules</a>
@ -176,7 +176,7 @@
<li class="nav-item">
<a class="nav-link" href="/settings"><i class="fas fa-cog fa-fw mr-3"></i>Settings</a>
</li>
<a class="nav-item nav-link" href="/assets/{{'SITE_NAME' | app_config}}.apk?v=192"><i class="fab fa-android fa-fw mr-3"></i>Android app</a>
<a class="nav-item nav-link" href="/assets/{{'SITE_NAME' | app_config}}.apk?v=193"><i class="fab fa-android fa-fw mr-3"></i>Android app</a>
<a class="nav-item nav-link" href="/rules"><i class="fas fa-balance-scale fa-fw mr-3"></i>Rules</a>

View File

@ -6,11 +6,11 @@
{% block content %}
{% if v %}
<style>:root{--primary:#{{v.themecolor}}}</style>
<link rel="stylesheet" href="/assets/css/main.css?v=434"><link rel="stylesheet" href="/assets/css/{{v.theme}}.css?v=191">
<link rel="stylesheet" href="/assets/css/main.css?v=438"><link rel="stylesheet" href="/assets/css/{{v.theme}}.css?v=191">
{% if v.agendaposter %}<link rel="stylesheet" href="/assets/css/agendaposter.css?v=190">{% elif v.css %}<link rel="stylesheet" href="/@{{v.username}}/css">{% endif %}
{% else %}
<style>:root{--primary:#{{'DEFAULT_COLOR' | app_config}}</style>
<link rel="stylesheet" href="/assets/css/main.css?v=434"><link rel="stylesheet" href="/assets/css/{{'DEFAULT_THEME' | app_config}}.css?v=191">
<link rel="stylesheet" href="/assets/css/main.css?v=438"><link rel="stylesheet" href="/assets/css/{{'DEFAULT_THEME' | app_config}}.css?v=191">
{% endif %}
<div class="row justify-content-around">

View File

@ -17,7 +17,7 @@
{% endblock %}
<style>:root{--primary:#{{'DEFAULT_COLOR' | app_config}}</style>
<link rel="stylesheet" href="/assets/css/main.css?v=434">
<link rel="stylesheet" href="/assets/css/main.css?v=438">
<link rel="stylesheet" href="/assets/css/{{'DEFAULT_THEME' | app_config}}.css?v=191">
<link href="/assets/css/fa.css?v=193" rel="stylesheet">

View File

@ -13,7 +13,7 @@
<title>2-Step Login - {{'SITE_NAME' | app_config}}</title>
<style>:root{--primary:#{{'DEFAULT_COLOR' | app_config}}</style>
<link rel="stylesheet" href="/assets/css/main.css?v=434"><link rel="stylesheet" href="/assets/css/{{'DEFAULT_THEME' | app_config}}.css?v=191">
<link rel="stylesheet" href="/assets/css/main.css?v=438"><link rel="stylesheet" href="/assets/css/{{'DEFAULT_THEME' | app_config}}.css?v=191">
</head>

View File

@ -33,7 +33,7 @@
<style>:root{--primary:#{{v.themecolor}}}</style>
<link rel="stylesheet" href="/assets/css/main.css?v=434"><link rel="stylesheet" href="/assets/css/{{v.theme}}.css?v=191">
<link rel="stylesheet" href="/assets/css/main.css?v=438"><link rel="stylesheet" href="/assets/css/{{v.theme}}.css?v=191">
{% if v.agendaposter %}<link rel="stylesheet" href="/assets/css/agendaposter.css?v=190">{% elif v.css %}<link rel="stylesheet" href="/@{{v.username}}/css">{% endif %}
<link href="/assets/css/fa.css?v=193" rel="stylesheet">

View File

@ -38,10 +38,10 @@
{% if v %}
<style>:root{--primary:#{{v.themecolor}}}</style>
<link rel="stylesheet" href="/assets/css/main.css?v=434"><link rel="stylesheet" href="/assets/css/{{v.theme}}.css?v=191">
<link rel="stylesheet" href="/assets/css/main.css?v=438"><link rel="stylesheet" href="/assets/css/{{v.theme}}.css?v=191">
{% else %}
<style>:root{--primary:#{{'DEFAULT_COLOR' | app_config}}</style>
<link rel="stylesheet" href="/assets/css/main.css?v=434"><link rel="stylesheet" href="/assets/css/{{'DEFAULT_THEME' | app_config}}.css?v=191">
<link rel="stylesheet" href="/assets/css/main.css?v=438"><link rel="stylesheet" href="/assets/css/{{'DEFAULT_THEME' | app_config}}.css?v=191">
{% endif %}
<link href="/assets/css/fa.css?v=193" rel="stylesheet">

View File

@ -30,7 +30,7 @@
<title>{% if ref_user %}{{ref_user.username}} invites you to {{'SITE_NAME' | app_config}}{% else %}Sign up - {{'SITE_NAME' | app_config}}{% endif %}</title>
<style>:root{--primary:#{{'DEFAULT_COLOR' | app_config}}</style>
<link rel="stylesheet" href="/assets/css/main.css?v=434"><link rel="stylesheet" href="/assets/css/{{'DEFAULT_THEME' | app_config}}.css?v=191">
<link rel="stylesheet" href="/assets/css/main.css?v=438"><link rel="stylesheet" href="/assets/css/{{'DEFAULT_THEME' | app_config}}.css?v=191">
</head>

View File

@ -31,7 +31,7 @@
<title>{% if ref_user %}{{ref_user.username}} invites you to {{'SITE_NAME' | app_config}}{% else %}{{'SITE_NAME' | app_config}}{% endif %}</title>
<style>:root{--primary:#{{'DEFAULT_COLOR' | app_config}}</style>
<link rel="stylesheet" href="/assets/css/main.css?v=434"><link rel="stylesheet" href="/assets/css/{{'DEFAULT_THEME' | app_config}}.css?v=191">
<link rel="stylesheet" href="/assets/css/main.css?v=438"><link rel="stylesheet" href="/assets/css/{{'DEFAULT_THEME' | app_config}}.css?v=191">
</head>

View File

@ -25,11 +25,11 @@
{% block stylesheets %}
{% if v %}
<style>:root{--primary:#{{v.themecolor}}}</style>
<link rel="stylesheet" href="/assets/css/main.css?v=434"><link rel="stylesheet" href="/assets/css/{{v.theme}}.css?v=191">
<link rel="stylesheet" href="/assets/css/main.css?v=438"><link rel="stylesheet" href="/assets/css/{{v.theme}}.css?v=191">
{% if v.agendaposter %}<link rel="stylesheet" href="/assets/css/agendaposter.css?v=190">{% elif v.css %}<link rel="stylesheet" href="/@{{v.username}}/css">{% endif %}
{% else %}
<style>:root{--primary:#{{'DEFAULT_COLOR' | app_config}}</style>
<link rel="stylesheet" href="/assets/css/main.css?v=434">
<link rel="stylesheet" href="/assets/css/main.css?v=438">
<link rel="stylesheet" href="/assets/css/{{'DEFAULT_THEME' | app_config}}.css?v=191">
{% endif %}
{% endblock %}