Replace nearly all ?v= cachebusts with assetcache.
Using the new assetcache module, we replace (almost) all instances of `?v=` cachebusting query parameters in Python and in Jinja templates. The primary exceptions were: user site backgrounds, and some infrequently changed graphics referenced literally from .js files.
This commit is contained in:
parent
6f3b995455
commit
a35697e55e
44 changed files with 203 additions and 191 deletions
|
@ -4,6 +4,7 @@ from files.__main__ import Base, app
|
|||
from os import environ
|
||||
from files.helpers.lazy import lazy
|
||||
from files.helpers.const import *
|
||||
from files.helpers.assetcache import assetcache_path
|
||||
from datetime import datetime
|
||||
from json import loads
|
||||
|
||||
|
@ -61,7 +62,7 @@ class Badge(Base):
|
|||
@property
|
||||
@lazy
|
||||
def path(self):
|
||||
return f"/assets/images/badges/{self.badge_id}.webp"
|
||||
return assetcache_path(f'images/badges/{self.badge_id}.webp')
|
||||
|
||||
@property
|
||||
@lazy
|
||||
|
|
|
@ -9,6 +9,7 @@ from sqlalchemy.orm import relationship, deferred
|
|||
from files.__main__ import Base
|
||||
from files.helpers.const import *
|
||||
from files.helpers.lazy import lazy
|
||||
from files.helpers.assetcache import assetcache_path
|
||||
from .flags import Flag
|
||||
from .comment import Comment
|
||||
from flask import g
|
||||
|
@ -266,13 +267,18 @@ class Submission(Base):
|
|||
@property
|
||||
@lazy
|
||||
def thumb_url(self):
|
||||
if self.over_18: return f"{SITE_FULL}/assets/images/nsfw.webp?v=1"
|
||||
elif not self.url: return f"{SITE_FULL}/assets/images/{SITE_ID}/default_text.webp?v=1"
|
||||
if self.over_18:
|
||||
return SITE_FULL + assetcache_path('images/nsfw.webp')
|
||||
elif not self.url:
|
||||
return SITE_FULL + assetcache_path(f'images/{SITE_ID}/default_text.webp')
|
||||
elif self.thumburl:
|
||||
if self.thumburl.startswith('/'): return SITE_FULL + self.thumburl
|
||||
if self.thumburl.startswith('/'):
|
||||
return SITE_FULL + self.thumburl
|
||||
return self.thumburl
|
||||
elif self.is_youtube or self.is_video: return f"{SITE_FULL}/assets/images/default_thumb_yt.webp?v=1"
|
||||
else: return f"{SITE_FULL}/assets/images/default_thumb_link.webp?v=1"
|
||||
elif self.is_youtube or self.is_video:
|
||||
return SITE_FULL + assetcache_path('images/default_thumb_yt.webp')
|
||||
else:
|
||||
return SITE_FULL + assetcache_path('images/default_thumb_link.webp')
|
||||
|
||||
@property
|
||||
@lazy
|
||||
|
|
|
@ -19,6 +19,7 @@ from .exiles import *
|
|||
from .sub_block import *
|
||||
from files.__main__ import app, Base, cache
|
||||
from files.helpers.security import *
|
||||
from files.helpers.assetcache import assetcache_path
|
||||
import random
|
||||
from datetime import datetime
|
||||
from os import environ, remove, path
|
||||
|
@ -528,16 +529,18 @@ class User(Base):
|
|||
@property
|
||||
@lazy
|
||||
def banner_url(self):
|
||||
if self.bannerurl: return self.bannerurl
|
||||
else: return f"/assets/images/{SITE_ID}/site_preview.webp?v=1015"
|
||||
if self.bannerurl:
|
||||
return self.bannerurl
|
||||
return assetcache_path(f'images/{SITE_ID}/site_preview.webp')
|
||||
|
||||
@property
|
||||
@lazy
|
||||
def profile_url(self):
|
||||
if self.profileurl:
|
||||
if self.profileurl.startswith('/'): return SITE_FULL + self.profileurl
|
||||
if self.profileurl.startswith('/'):
|
||||
return SITE_FULL + self.profileurl
|
||||
return self.profileurl
|
||||
return f"{SITE_FULL}/assets/images/default-profile-pic.webp?v=1008"
|
||||
return assetcache_path('images/default-profile-pic.webp')
|
||||
|
||||
@lazy
|
||||
def json_popover(self, v):
|
||||
|
|
|
@ -11,6 +11,7 @@ from pusher_push_notifications import PushNotifications
|
|||
from flask import *
|
||||
from files.__main__ import app, limiter
|
||||
from files.helpers.sanitize import filter_emojis_only
|
||||
from files.helpers.assetcache import assetcache_path
|
||||
import requests
|
||||
from shutil import copyfile
|
||||
from json import loads
|
||||
|
@ -38,7 +39,7 @@ def pusher_thread(interests, c, username):
|
|||
'title': f'New reply by @{username}',
|
||||
'body': notifbody,
|
||||
'deep_link': f'{SITE_FULL}/comment/{c.id}?context=8&read=true#context',
|
||||
'icon': f'{SITE_FULL}/assets/images/{SITE_ID}/icon.webp?v=1015',
|
||||
'icon': SITE_FULL + assetcache_path(f'images/{SITE_ID}/icon.webp'),
|
||||
}
|
||||
},
|
||||
'fcm': {
|
||||
|
|
|
@ -6,6 +6,7 @@ from files.classes.views import ViewerRelationship
|
|||
from files.helpers.alerts import *
|
||||
from files.helpers.sanitize import *
|
||||
from files.helpers.const import *
|
||||
from files.helpers.assetcache import assetcache_path
|
||||
from files.mail import *
|
||||
from flask import *
|
||||
from files.__main__ import app, limiter, db_session
|
||||
|
@ -26,7 +27,7 @@ def pusher_thread2(interests, notifbody, username):
|
|||
'title': f'New message from @{username}',
|
||||
'body': notifbody,
|
||||
'deep_link': f'{SITE_FULL}/notifications?messages=true',
|
||||
'icon': f'{SITE_FULL}/assets/images/{SITE_ID}/icon.webp?v=1015',
|
||||
'icon': SITE_FULL + assetcache_path(f'images/{SITE_ID}/icon.webp'),
|
||||
}
|
||||
},
|
||||
'fcm': {
|
||||
|
@ -704,7 +705,7 @@ def messagereply(v):
|
|||
'title': f'New message from @{v.username}',
|
||||
'body': notifbody,
|
||||
'deep_link': f'{SITE_FULL}/notifications?messages=true',
|
||||
'icon': f'{SITE_FULL}/assets/images/{SITE_ID}/icon.webp"a=1010',
|
||||
'icon': SITE_FULL + assetcache_path(f'images/{SITE_ID}/icon.webp'),
|
||||
}
|
||||
},
|
||||
'fcm': {
|
||||
|
|
|
@ -60,7 +60,7 @@
|
|||
<label class="custom-control-label" for="{{badge.id}}"></label>
|
||||
</div>
|
||||
</td>
|
||||
<td><label for="badge-{{badge.id}}"><img alt="{{badge.name}}" loading="lazy" src="/assets/images/badges/{{badge.id}}.webp?v=1016" width=64.16 height=70></label></td>
|
||||
<td><label for="badge-{{badge.id}}"><img alt="{{badge.name}}" loading="lazy" src="{{ ('images/badges/'~badge.id~'.webp') | asset }}" width=64.16 height=70></label></td>
|
||||
<td>{{badge.name}}</td>
|
||||
<td>{{badge.description}}</td>
|
||||
</tr>
|
||||
|
|
|
@ -60,7 +60,7 @@
|
|||
<label class="custom-control-label" for="{{badge.id}}"></label>
|
||||
</div>
|
||||
</td>
|
||||
<td><label for="badge-{{badge.id}}"><img alt="{{badge.name}}" loading="lazy" src="/assets/images/badges/{{badge.id}}.webp?v=1016" width=64.16 height=70></label></td>
|
||||
<td><label for="badge-{{badge.id}}"><img alt="{{badge.name}}" loading="lazy" src="{{ ('images/badges/'~badge.id~'.webp') | asset }}" width=64.16 height=70></label></td>
|
||||
<td>{{badge.name}}</td>
|
||||
<td>{{badge.description}}</td>
|
||||
</tr>
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
|
||||
{% block content %}
|
||||
|
||||
<script src="/assets/js/sort_table.js?v=242"></script>
|
||||
<script src="{{ 'js/sort_table.js' | asset }}"></script>
|
||||
|
||||
<pre class="d-none d-md-inline-block"></pre>
|
||||
<h5 style="font-weight:bold;">Admins</h5>
|
||||
|
|
|
@ -15,15 +15,15 @@
|
|||
|
||||
{% if v %}
|
||||
<style>:root{--primary:#{{v.themecolor}}}</style>
|
||||
<link rel="stylesheet" href="/assets/css/main.css?v=254">
|
||||
<link rel="stylesheet" href="/assets/css/{{v.theme}}.css?v=59">
|
||||
<link rel="stylesheet" href="{{ 'css/main.css' | asset }}">
|
||||
<link rel="stylesheet" href="{{ ('css/'~v.theme~'.css') | asset }}">
|
||||
{% if v.css %}
|
||||
<link rel="stylesheet" href="/@{{v.username}}/css">
|
||||
{% endif %}
|
||||
{% else %}
|
||||
<style>:root{--primary:#{{config('DEFAULT_COLOR')}}</style>
|
||||
<link rel="stylesheet" href="/assets/css/main.css?v=254">
|
||||
<link rel="stylesheet" href="/assets/css/{{config('DEFAULT_THEME')}}.css?v=58">
|
||||
<link rel="stylesheet" href="{{ 'css/main.css' | asset }}">
|
||||
<link rel="stylesheet" href="{{ ('css/'~config('DEFAULT_THEME')~'.css') | asset }}">
|
||||
{% endif %}
|
||||
|
||||
</head>
|
||||
|
@ -94,7 +94,7 @@
|
|||
|
||||
<div class="splash-overlay"></div>
|
||||
|
||||
<img alt="cover" loading="lazy" class="splash-img" src="/assets/images/{{SITE_ID}}/cover.webp?v=1014"></img>
|
||||
<img alt="cover" loading="lazy" class="splash-img" src="{{ ('images/'~SITE_ID~'/cover.webp') | asset }}"></img>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
|
|
@ -44,4 +44,4 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<script src="/assets/js/award_modal.js?v=248" data-cfasync="false"></script>
|
||||
<script src="{{ 'js/award_modal.js' | asset }}" data-cfasync="false"></script>
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{% extends "default.html" %}
|
||||
{% block content %}
|
||||
<script src="/assets/js/sort_table.js?v=242"></script>
|
||||
<script src="{{ 'js/sort_table.js' | asset }}"></script>
|
||||
<pre>
|
||||
|
||||
|
||||
|
@ -27,7 +27,7 @@
|
|||
<tr>
|
||||
<td>{{loop.index}}</td>
|
||||
<td>{{badge.name}}</td>
|
||||
<td><img alt="{{badge.name}}" loading="lazy" src="/assets/images/badges/{{badge.id}}.webp?v=1016" width=45.83 height=50>
|
||||
<td><img alt="{{badge.name}}" loading="lazy" src="{{ ('images/badges/'~badge.id~'.webp') | asset }}" width=45.83 height=50>
|
||||
<td>{{badge.description}}</td>
|
||||
{%- set ct = counts[badge.id] if badge.id in counts else (0, 0) %}
|
||||
<td class="badges-rarity-qty">{{ ct[0] }}</td>
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
|
||||
<script src="/assets/js/ban_modal.js?v=241"></script>
|
||||
<script src="{{ 'js/ban_modal.js' | asset }}"></script>
|
||||
|
||||
<div class="modal fade" id="banModal" tabindex="-1" role="dialog" aria-labelledby="banModalTitle" aria-hidden="true">
|
||||
<div class="modal-dialog modal-dialog-centered" role="document">
|
||||
|
|
|
@ -104,6 +104,6 @@
|
|||
</nav>
|
||||
{% endif %}
|
||||
|
||||
<script src="/assets/js/post_toast2.js?v=243"></script>
|
||||
<script src="{{ 'js/post_toast2.js' | asset }}"></script>
|
||||
|
||||
{% endblock %}
|
||||
|
|
|
@ -9,13 +9,13 @@
|
|||
|
||||
<meta name="author" content="">
|
||||
|
||||
<link id="favicon" rel="icon" type="image/png" href="/assets/images/{{SITE_ID}}/icon.webp?v=1015">
|
||||
<link id="favicon" rel="icon" type="image/png" href="{{ ('images/'~SITE_ID~'/icon.webp') | asset }}">
|
||||
|
||||
<title>Chat</title>
|
||||
|
||||
<style>:root{--primary:#{{v.themecolor}}}</style>
|
||||
<link rel="stylesheet" href="/assets/css/main.css?v=254">
|
||||
<link rel="stylesheet" href="/assets/css/{{v.theme}}.css?v=59">
|
||||
<link rel="stylesheet" href="{{ 'css/main.css' | asset }}">
|
||||
<link rel="stylesheet" href="{{ ('css/'~v.theme~'.css') | asset }}">
|
||||
{% if v.css %}
|
||||
<link rel="stylesheet" href="/@{{v.username}}/css">
|
||||
{% endif %}
|
||||
|
@ -101,7 +101,7 @@
|
|||
</head>
|
||||
|
||||
<body>
|
||||
<script src="/assets/js/bootstrap.js?v=249"></script>
|
||||
<script src="{{ 'js/bootstrap.js' | asset }}"></script>
|
||||
|
||||
{% include "header.html" %}
|
||||
|
||||
|
@ -189,7 +189,7 @@
|
|||
|
||||
<script src="/chat.js?v=16"></script>
|
||||
|
||||
<script src="/assets/js/lozad.js?v=242"></script>
|
||||
<script src="/assets/js/lite-youtube.js?v=240"></script>
|
||||
<script src="{{ 'js/lozad.js' | asset }}"></script>
|
||||
<script src="{{ 'js/lite-youtube.js' | asset }}"></script>
|
||||
|
||||
</body>
|
||||
|
|
|
@ -225,7 +225,7 @@
|
|||
{% endif %}
|
||||
|
||||
{% if c.treasure_amount and c.treasure_amount != '0' %}
|
||||
<img class="treasure" alt="treasure" src="/assets/images/chest.webp" width="20" />
|
||||
<img class="treasure" alt="treasure" src="{{ 'images/chest.webp' | asset }}" width="20" />
|
||||
{% if '-' in c.treasure_amount %}
|
||||
<em>A Mimic Ate {{c.treasure_amount.replace('-', '')}} Coins!</em>
|
||||
{% else %}
|
||||
|
@ -839,26 +839,26 @@
|
|||
{% endif %}
|
||||
|
||||
{% if v %}
|
||||
<script src="/assets/js/vendor/purify.min.js?v=251"></script>
|
||||
<script src="/assets/js/vendor/marked.min.js?v=251"></script>
|
||||
<script src="/assets/js/marked.custom.js?v=252"></script>
|
||||
<script src="/assets/js/comments_v.js?v=268"></script>
|
||||
<script src="/assets/js/award_modal.js?v=1"></script>
|
||||
<script src="{{ 'js/vendor/purify.min.js' | asset }}"></script>
|
||||
<script src="{{ 'js/vendor/marked.min.js' | asset }}"></script>
|
||||
<script src="{{ 'js/marked.custom.js' | asset }}"></script>
|
||||
<script src="{{ 'js/comments_v.js' | asset }}"></script>
|
||||
<script src="{{ 'js/award_modal.js' | asset }}"></script>
|
||||
{% endif %}
|
||||
|
||||
<script src="/assets/js/clipboard.js?v=250"></script>
|
||||
<script src="{{ 'js/clipboard.js' | asset }}"></script>
|
||||
|
||||
{% if v and v.admin_level > 1 %}
|
||||
<script src="/assets/js/comments_admin.js?v=250"></script>
|
||||
<script src="{{ 'js/comments_admin.js' | asset }}"></script>
|
||||
{% if v.admin_level > 2 %}
|
||||
<script src="/assets/js/filter_actions.js?v=8"></script>
|
||||
<script src="{{ 'js/filter_actions.js' | asset }}"></script>
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
|
||||
{% include "expanded_image_modal.html" %}
|
||||
|
||||
<script src="/assets/js/comments+submission_listing.js?v=259"></script>
|
||||
<script src="/assets/js/comments.js?v=256"></script>
|
||||
<script src="{{ 'js/comments+submission_listing.js' | asset }}"></script>
|
||||
<script src="{{ 'js/comments.js' | asset }}"></script>
|
||||
|
||||
<script>
|
||||
{% if p and (not v or v.highlightcomments) %}
|
||||
|
|
|
@ -4,23 +4,23 @@
|
|||
<meta name="description" content="{{config('DESCRIPTION')}}">
|
||||
<meta http-equiv="Content-Security-Policy" content="script-src 'self' 'unsafe-inline' 'unsafe-eval' ajax.cloudflare.com; connect-src 'self' tls-use1.fpapi.io api.fpjs.io {% if PUSHER_ID != 'blahblahblah' %}{{PUSHER_ID}}.pushnotifications.pusher.com{% endif %}; object-src 'none';">
|
||||
|
||||
<script src="/assets/js/bootstrap.js?v=245"></script>
|
||||
<script src="/assets/js/micromodal.js?v=245"></script>
|
||||
<script src="{{ 'js/bootstrap.js' | asset }}"></script>
|
||||
<script src="{{ 'js/micromodal.js' | asset }}"></script>
|
||||
{% if v %}
|
||||
<style>:root{--primary:#{{v.themecolor}}}</style>
|
||||
<link rel="stylesheet" href="/assets/css/main.css?v=254">
|
||||
<link rel="stylesheet" href="/assets/css/{{v.theme}}.css?v=59">
|
||||
<link rel="stylesheet" href="{{ 'css/main.css' | asset }}">
|
||||
<link rel="stylesheet" href="{{ ('css/'~v.theme~'.css') | asset }}">
|
||||
{% if v.css %}
|
||||
<link rel="stylesheet" href="/@{{v.username}}/css">
|
||||
{% endif %}
|
||||
{% else %}
|
||||
<style>:root{--primary:#{{config('DEFAULT_COLOR')}}</style>
|
||||
<link rel="stylesheet" href="/assets/css/main.css?v=254">
|
||||
<link rel="stylesheet" href="/assets/css/{{config('DEFAULT_THEME')}}.css?v=58">
|
||||
<link rel="stylesheet" href="{{ 'css/main.css' | asset }}">
|
||||
<link rel="stylesheet" href="{{ ('css/'~config('DEFAULT_THEME')~'.css') | asset }}">
|
||||
{% endif %}
|
||||
|
||||
{% if request.path == '/catalog' %}
|
||||
<link rel="stylesheet" href="/assets/css/catalog.css?v=1">
|
||||
<link rel="stylesheet" href="{{ 'css/catalog.css' | asset }}">
|
||||
{% endif %}
|
||||
|
||||
{% if sub and sub.css and not request.path.endswith('settings') %}
|
||||
|
@ -38,16 +38,16 @@
|
|||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
|
||||
|
||||
<meta name="thumbnail" content="/assets/images/{{SITE_ID}}/site_preview.webp?v=1015">
|
||||
<meta name="thumbnail" content="{{ ('images/'~SITE_ID~'/site_preview.webp') | asset }}">
|
||||
|
||||
<link rel="icon" type="image/png" href="/assets/images/{{SITE_ID}}/icon.webp?v=1015">
|
||||
<link rel="icon" type="image/png" href="{{ ('images/'~SITE_ID~'/icon.webp') | asset }}">
|
||||
{% block title %}
|
||||
<title>{{SITE_TITLE}}</title>
|
||||
|
||||
<meta property="og:type" content="article">
|
||||
<meta property="og:title" content="{{SITE_TITLE}}">
|
||||
<meta property="og:site_name" content="{{request.host}}">
|
||||
<meta property="og:image" content="/assets/images/{{SITE_ID}}/site_preview.webp?v=1015">
|
||||
<meta property="og:image" content="{{ ('images/'~SITE_ID~'/site_preview.webp') | asset }}">
|
||||
<meta property="og:url" content="{{SITE_FULL}}{{request.full_path}}">
|
||||
<meta property="og:description" name="description" content="{{config('DESCRIPTION')}}">
|
||||
<meta property="og:author" name="author" content="{{SITE_FULL}}">
|
||||
|
@ -58,7 +58,7 @@
|
|||
<meta name="twitter:title" content="{{SITE_TITLE}}">
|
||||
<meta name="twitter:creator" content="{{SITE_FULL}}">
|
||||
<meta name="twitter:description" content="{{config('DESCRIPTION')}}">
|
||||
<meta name="twitter:image" content="/assets/images/{{SITE_ID}}/site_preview.webp?v=1015">
|
||||
<meta name="twitter:image" content="{{ ('images/'~SITE_ID~'/site_preview.webp') | asset }}">
|
||||
<meta name="twitter:url" content="{{SITE_FULL}}{{request.full_path}}">
|
||||
{% endblock %}
|
||||
|
||||
|
@ -67,14 +67,14 @@
|
|||
<meta name="format-detection" content="telephone=no">
|
||||
<meta name="viewport" content="width=device-width,initial-scale=1">
|
||||
|
||||
<link rel="apple-touch-icon" sizes="180x180" href="/assets/images/{{SITE_ID}}/icon.webp?v=1015">
|
||||
<link rel="manifest" href="/assets/manifest_{{SITE_ID}}.json?v=1">
|
||||
<link rel="mask-icon" href="/assets/images/{{SITE_ID}}/icon.webp?v=1015">
|
||||
<link rel="shortcut icon" href="/assets/images/{{SITE_ID}}/icon.webp?v=1015">
|
||||
<link rel="apple-touch-icon" sizes="180x180" href="{{ ('images/'~SITE_ID~'/icon.webp') | asset }}">
|
||||
<link rel="manifest" href="{{ ('manifest_'~SITE_ID~'.json') | asset }}">
|
||||
<link rel="mask-icon" href="{{ ('images/'~SITE_ID~'/icon.webp') | asset }}">
|
||||
<link rel="shortcut icon" href="{{ ('images/'~SITE_ID~'/icon.webp') | asset }}">
|
||||
<meta name="apple-mobile-web-app-title" content="{{SITE_TITLE}}">
|
||||
<meta name="application-name" content="{{SITE_TITLE}}">
|
||||
<meta name="msapplication-TileColor" content="#{{config('DEFAULT_COLOR')}}">
|
||||
<meta name="msapplication-config" content="/assets/browserconfig.xml?v=2">
|
||||
<meta name="msapplication-config" content="{{ 'browserconfig.xml' | asset }}">
|
||||
<meta name="theme-color" content="#{{config('DEFAULT_COLOR')}}">
|
||||
|
||||
|
||||
|
@ -82,127 +82,127 @@
|
|||
<link
|
||||
rel="apple-touch-startup-image"
|
||||
sizes="320x480"
|
||||
href="/assets/images/{{SITE_ID}}/icon.webp?v=1015"
|
||||
href="{{ ('images/'~SITE_ID~'/icon.webp') | asset }}"
|
||||
>
|
||||
<link
|
||||
rel="apple-touch-startup-image"
|
||||
sizes="640x960"
|
||||
href="/assets/images/{{SITE_ID}}/icon.webp?v=1015"
|
||||
href="{{ ('images/'~SITE_ID~'/icon.webp') | asset }}"
|
||||
>
|
||||
<link
|
||||
rel="apple-touch-icon"
|
||||
sizes="640x1136"
|
||||
href="/assets/images/{{SITE_ID}}/icon.webp?v=1015"
|
||||
href="{{ ('images/'~SITE_ID~'/icon.webp') | asset }}"
|
||||
>
|
||||
<link
|
||||
rel="apple-touch-icon"
|
||||
sizes="750x1334"
|
||||
href="/assets/images/{{SITE_ID}}/icon.webp?v=1015"
|
||||
href="{{ ('images/'~SITE_ID~'/icon.webp') | asset }}"
|
||||
>
|
||||
<link
|
||||
rel="apple-touch-startup-image"
|
||||
sizes="768x1004"
|
||||
href="/assets/images/{{SITE_ID}}/icon.webp?v=1015"
|
||||
href="{{ ('images/'~SITE_ID~'/icon.webp') | asset }}"
|
||||
>
|
||||
<link
|
||||
rel="apple-touch-startup-image"
|
||||
sizes="768x1024"
|
||||
href="/assets/images/{{SITE_ID}}/icon.webp?v=1015"
|
||||
href="{{ ('images/'~SITE_ID~'/icon.webp') | asset }}"
|
||||
>
|
||||
<link
|
||||
rel="apple-touch-startup-image"
|
||||
sizes="828x1792"
|
||||
href="/assets/images/{{SITE_ID}}/icon.webp?v=1015"
|
||||
href="{{ ('images/'~SITE_ID~'/icon.webp') | asset }}"
|
||||
>
|
||||
<link
|
||||
rel="apple-touch-startup-image"
|
||||
sizes="1024x748"
|
||||
href="/assets/images/{{SITE_ID}}/icon.webp?v=1015"
|
||||
href="{{ ('images/'~SITE_ID~'/icon.webp') | asset }}"
|
||||
>
|
||||
<link
|
||||
rel="apple-touch-startup-image"
|
||||
sizes="1024x768"
|
||||
href="/assets/images/{{SITE_ID}}/icon.webp?v=1015"
|
||||
href="{{ ('images/'~SITE_ID~'/icon.webp') | asset }}"
|
||||
>
|
||||
<link
|
||||
rel="apple-touch-startup-image"
|
||||
sizes="1125x2436"
|
||||
href="/assets/images/{{SITE_ID}}/icon.webp?v=1015"
|
||||
href="{{ ('images/'~SITE_ID~'/icon.webp') | asset }}"
|
||||
>
|
||||
<link
|
||||
rel="apple-touch-startup-image"
|
||||
sizes="1242x2208"
|
||||
href="/assets/images/{{SITE_ID}}/icon.webp?v=1015"
|
||||
href="{{ ('images/'~SITE_ID~'/icon.webp') | asset }}"
|
||||
>
|
||||
<link
|
||||
rel="apple-touch-startup-image"
|
||||
sizes="1242x2688"
|
||||
href="/assets/images/{{SITE_ID}}/icon.webp?v=1015"
|
||||
href="{{ ('images/'~SITE_ID~'/icon.webp') | asset }}"
|
||||
>
|
||||
<link
|
||||
rel="apple-touch-startup-image"
|
||||
sizes="1334x750"
|
||||
href="/assets/images/{{SITE_ID}}/icon.webp?v=1015"
|
||||
href="{{ ('images/'~SITE_ID~'/icon.webp') | asset }}"
|
||||
>
|
||||
<link
|
||||
rel="apple-touch-startup-image"
|
||||
sizes="1536x2008"
|
||||
href="/assets/images/{{SITE_ID}}/icon.webp?v=1015"
|
||||
href="{{ ('images/'~SITE_ID~'/icon.webp') | asset }}"
|
||||
>
|
||||
<link
|
||||
rel="apple-touch-startup-image"
|
||||
sizes="1536x2048"
|
||||
href="/assets/images/{{SITE_ID}}/icon.webp?v=1015"
|
||||
href="{{ ('images/'~SITE_ID~'/icon.webp') | asset }}"
|
||||
>
|
||||
<link
|
||||
rel="apple-touch-startup-image"
|
||||
sizes="1668x2224"
|
||||
href="/assets/images/{{SITE_ID}}/icon.webp?v=1015"
|
||||
href="{{ ('images/'~SITE_ID~'/icon.webp') | asset }}"
|
||||
>
|
||||
<link
|
||||
rel="apple-touch-startup-image"
|
||||
sizes="1792x828"
|
||||
href="/assets/images/{{SITE_ID}}/icon.webp?v=1015"
|
||||
href="{{ ('images/'~SITE_ID~'/icon.webp') | asset }}"
|
||||
>
|
||||
<link
|
||||
rel="apple-touch-startup-image"
|
||||
sizes="2048x1496"
|
||||
href="/assets/images/{{SITE_ID}}/icon.webp?v=1015"
|
||||
href="{{ ('images/'~SITE_ID~'/icon.webp') | asset }}"
|
||||
>
|
||||
<link
|
||||
rel="apple-touch-startup-image"
|
||||
sizes="2048x1536"
|
||||
href="/assets/images/{{SITE_ID}}/icon.webp?v=1015"
|
||||
href="{{ ('images/'~SITE_ID~'/icon.webp') | asset }}"
|
||||
>
|
||||
<link
|
||||
rel="apple-touch-startup-image"
|
||||
sizes="2048x2732"
|
||||
href="/assets/images/{{SITE_ID}}/icon.webp?v=1015"
|
||||
href="{{ ('images/'~SITE_ID~'/icon.webp') | asset }}"
|
||||
>
|
||||
<link
|
||||
rel="apple-touch-startup-image"
|
||||
sizes="2208x1242"
|
||||
href="/assets/images/{{SITE_ID}}/icon.webp?v=1015"
|
||||
href="{{ ('images/'~SITE_ID~'/icon.webp') | asset }}"
|
||||
>
|
||||
<link
|
||||
rel="apple-touch-startup-image"
|
||||
sizes="2224x1668"
|
||||
href="/assets/images/{{SITE_ID}}/icon.webp?v=1015"
|
||||
href="{{ ('images/'~SITE_ID~'/icon.webp') | asset }}"
|
||||
>
|
||||
<link
|
||||
rel="apple-touch-startup-image"
|
||||
sizes="2436x1125"
|
||||
href="/assets/images/{{SITE_ID}}/icon.webp?v=1015"
|
||||
href="{{ ('images/'~SITE_ID~'/icon.webp') | asset }}"
|
||||
>
|
||||
<link
|
||||
rel="apple-touch-startup-image"
|
||||
sizes="2668x1242"
|
||||
href="/assets/images/{{SITE_ID}}/icon.webp?v=1015"
|
||||
href="{{ ('images/'~SITE_ID~'/icon.webp') | asset }}"
|
||||
>
|
||||
<link
|
||||
rel="apple-touch-startup-image"
|
||||
sizes="2737x2048"
|
||||
href="/assets/images/{{SITE_ID}}/icon.webp?v=1015"
|
||||
href="{{ ('images/'~SITE_ID~'/icon.webp') | asset }}"
|
||||
>
|
||||
|
||||
{% block fixedMobileBarJS %}
|
||||
|
@ -218,7 +218,7 @@
|
|||
<img alt="/h/{{sub.name}} banner" class="primary_banner" role="button" data-bs-toggle="modal" data-bs-target="#expandImageModal" onclick="expandDesktopImage('{{sub.banner_url}}')" loading="lazy" src="{{sub.banner_url}}" width=100% style="object-fit:cover;max-height:25vw">
|
||||
{% else %}
|
||||
<a href="/">
|
||||
<img alt="site banner" class="primary_banner" src="/assets/images/{{SITE_ID}}/banner.webp?v=1046" width="100%">
|
||||
<img alt="site banner" class="primary_banner" src="{{ ('images/'~SITE_ID~'/banner.webp') | asset }}" width="100%">
|
||||
</a>
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
|
@ -298,14 +298,14 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<script src="/assets/js/lozad.js?v=242"></script>
|
||||
<script src="{{ 'js/lozad.js' | asset }}"></script>
|
||||
|
||||
{% if v %}
|
||||
<script src="/assets/js/post_toast2.js?v=243"></script>
|
||||
<script src="/assets/js/formatting.js?v=240"></script>
|
||||
<script src="{{ 'js/post_toast2.js' | asset }}"></script>
|
||||
<script src="{{ 'js/formatting.js' | asset }}"></script>
|
||||
{% endif %}
|
||||
|
||||
<script src="/assets/js/lite-youtube.js?v=240"></script>
|
||||
<script src="{{ 'js/lite-youtube.js' | asset }}"></script>
|
||||
|
||||
<script>
|
||||
MicroModal.init();
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
<script src="/assets/js/delete_post_modal.js?v=240"></script>
|
||||
<script src="{{ 'js/delete_post_modal.js' | asset }}"></script>
|
||||
|
||||
<div class="modal fade" id="deletePostModal" tabindex="-1" role="dialog" aria-labelledby="deletePostModalTitle" aria-hidden="true">
|
||||
<div class="modal-dialog modal-dialog-centered" role="document">
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{% extends "default.html" %}
|
||||
{% block content %}
|
||||
<script src="/assets/js/followers.js?v=241"></script>
|
||||
<script src="{{ 'js/followers.js' | asset }}"></script>
|
||||
<pre>
|
||||
|
||||
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{% extends "default.html" %}
|
||||
{% block content %}
|
||||
<script src="/assets/js/following.js?v=241"></script>
|
||||
<script src="{{ 'js/following.js' | asset }}"></script>
|
||||
<pre>
|
||||
|
||||
|
||||
|
|
|
@ -26,4 +26,4 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<script src="/assets/js/gif_modal.js?v=245"></script>
|
||||
<script src="{{ 'js/gif_modal.js' | asset }}"></script>
|
||||
|
|
|
@ -12,7 +12,7 @@
|
|||
<div class="navbar navbar-expand-md navbar-light" id="navbar">
|
||||
<div class="container-fluid" style="padding:0;">
|
||||
<a href="/" class="navbar-brand mr-auto">
|
||||
<img alt="header icon" height=33 src="/assets/images/{{SITE_ID}}/headericon.webp?v=1019">
|
||||
<img alt="header icon" height=33 src="{{ ('images/'~SITE_ID~'/headericon.webp') | asset }}">
|
||||
</a>
|
||||
|
||||
{% if sub %}
|
||||
|
@ -31,7 +31,7 @@
|
|||
{% endif %}
|
||||
</style>
|
||||
<a href="/" class="flex-grow-1">
|
||||
<img class="ml-1" id="logo" alt="logo" src="/assets/images/{{SITE_ID}}/logo.webp?v=1013" width=70>
|
||||
<img class="ml-1" id="logo" alt="logo" src="{{ ('images/'~SITE_ID~'/logo.webp') | asset }}" width=70>
|
||||
</a>
|
||||
{% endif %}
|
||||
|
||||
|
@ -222,7 +222,7 @@
|
|||
</div>
|
||||
</nav>
|
||||
|
||||
<script src="/assets/js/header.js?v=267"></script>
|
||||
<script src="{{ 'js/header.js' | asset }}"></script>
|
||||
|
||||
{% if v and not err %}
|
||||
<div id="formkey" class="d-none">{{v.formkey}}</div>
|
||||
|
|
|
@ -27,7 +27,7 @@
|
|||
script.onload = resolve;
|
||||
script.onerror = reject;
|
||||
script.async = true;
|
||||
script.src = "/assets/js/fp.js?v=240";
|
||||
script.src = "{{ 'js/fp.js' | asset }}";
|
||||
document.head.appendChild(script);
|
||||
})
|
||||
.then(() => FingerprintJS.load({token: '{{environ.get("FP")}}'}));
|
||||
|
@ -154,7 +154,7 @@
|
|||
{% if PUSHER_ID != 'blahblahblah' and v %}
|
||||
<div class="d-none" id="strid">{{request.host}}{{v.id}}</div>
|
||||
<div class="d-none" id="pusherid">{{PUSHER_ID}}</div>
|
||||
<script src="/assets/js/pusher.js?v=242"></script>
|
||||
<script src="{{ 'js/pusher.js' | asset }}"></script>
|
||||
<script>
|
||||
if (typeof Android != 'undefined') {
|
||||
Android.Subscribe('{{request.host}}{{v.id}}');
|
||||
|
|
|
@ -6,15 +6,15 @@
|
|||
{% block content %}
|
||||
{% if v %}
|
||||
<style>:root{--primary:#{{v.themecolor}}}</style>
|
||||
<link rel="stylesheet" href="/assets/css/main.css?v=254">
|
||||
<link rel="stylesheet" href="/assets/css/{{v.theme}}.css?v=59">
|
||||
<link rel="stylesheet" href="{{ 'css/main.css' | asset }}">
|
||||
<link rel="stylesheet" href="{{ ('css/'~v.theme~'.css') | asset }}">
|
||||
{% if v.css %}
|
||||
<link rel="stylesheet" href="/@{{v.username}}/css">
|
||||
{% endif %}
|
||||
{% else %}
|
||||
<style>:root{--primary:#{{config('DEFAULT_COLOR')}}</style>
|
||||
<link rel="stylesheet" href="/assets/css/main.css?v=254">
|
||||
<link rel="stylesheet" href="/assets/css/{{config('DEFAULT_THEME')}}.css?v=58">
|
||||
<link rel="stylesheet" href="{{ 'css/main.css' | asset }}">
|
||||
<link rel="stylesheet" href="{{ ('css/'~config('DEFAULT_THEME')~'.css') | asset }}">
|
||||
{% endif %}
|
||||
|
||||
<div class="row justify-content-around">
|
||||
|
@ -126,6 +126,6 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<script src="/assets/js/clipboard.js?v=240"></script>
|
||||
<script src="{{ 'js/clipboard.js' | asset }}"></script>
|
||||
|
||||
{% endblock %}
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
<meta name="description" content="{{config('DESCRIPTION')}}">
|
||||
<meta http-equiv="Content-Security-Policy" content="script-src 'self' 'unsafe-inline'; connect-src 'self'; object-src 'none';">
|
||||
|
||||
<script src="/assets/js/bootstrap.js?v=245"></script>
|
||||
<script src="{{ 'js/bootstrap.js' | asset }}"></script>
|
||||
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
|
||||
|
@ -18,8 +18,8 @@
|
|||
{% endblock %}
|
||||
|
||||
<style>:root{--primary:#{{config('DEFAULT_COLOR')}}</style>
|
||||
<link rel="stylesheet" href="/assets/css/main.css?v=254">
|
||||
<link rel="stylesheet" href="/assets/css/{{config('DEFAULT_THEME')}}.css?v=58">
|
||||
<link rel="stylesheet" href="{{ 'css/main.css' | asset }}">
|
||||
<link rel="stylesheet" href="{{ ('css/'~config('DEFAULT_THEME')~'.css') | asset }}">
|
||||
|
||||
</head>
|
||||
|
||||
|
@ -109,7 +109,7 @@
|
|||
|
||||
<div class="splash-overlay"></div>
|
||||
|
||||
<img alt="cover" loading="lazy" class="splash-img" src="/assets/images/{{SITE_ID}}/cover.webp?v=1014"></img>
|
||||
<img alt="cover" loading="lazy" class="splash-img" src="{{ ('images/'~SITE_ID~'/cover.webp') | asset }}"></img>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
|
|
@ -14,8 +14,8 @@
|
|||
<title>2-Step Login - {{SITE_TITLE}}</title>
|
||||
|
||||
<style>:root{--primary:#{{config('DEFAULT_COLOR')}}</style>
|
||||
<link rel="stylesheet" href="/assets/css/main.css?v=254">
|
||||
<link rel="stylesheet" href="/assets/css/{{config('DEFAULT_THEME')}}.css?v=58">
|
||||
<link rel="stylesheet" href="{{ 'css/main.css' | asset }}">
|
||||
<link rel="stylesheet" href="{{ ('css/'~config('DEFAULT_THEME')~'.css') | asset }}">
|
||||
|
||||
</head>
|
||||
|
||||
|
@ -93,7 +93,7 @@
|
|||
|
||||
<div class="splash-overlay"></div>
|
||||
|
||||
<img alt="cover" loading="lazy" class="splash-img" src="/assets/images/{{SITE_ID}}/cover.webp?v=1014"></img>
|
||||
<img alt="cover" loading="lazy" class="splash-img" src="{{ ('images/'~SITE_ID~'/cover.webp') | asset }}"></img>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
|
|
@ -9,7 +9,7 @@
|
|||
{% block content %}
|
||||
<div class="text-center py-7 py-md-8">
|
||||
|
||||
<img loading="lazy" src="/assets/images/ruckus.webp" class="empty-state-img mb-3" alt="success state">
|
||||
<img loading="lazy" src="{{ 'images/ruckus.webp' | asset }}" class="empty-state-img mb-3" alt="success state">
|
||||
<div class="font-weight-bold text-muted mb-4">{{title}}</div>
|
||||
<p class="text-muted">{{message}}</p>
|
||||
|
||||
|
|
|
@ -50,4 +50,4 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<script src="/assets/js/mobile_navigation_bar.js?v=240"></script>
|
||||
<script src="{{ 'js/mobile_navigation_bar.js' | asset }}"></script>
|
||||
|
|
|
@ -14,7 +14,7 @@
|
|||
<td>{{loop.index}}</td>
|
||||
<td><a style="color:#{{u.namecolor}}" href="/@{{u.username}}"><img loading="lazy" src="{{u.profile_url}}" class="pp20"><span {% if u.patron %}class="patron" style="background-color:#{{u.namecolor}}"{% endif %}>{{u.username}}</span></a></td>
|
||||
|
||||
<td><img alt="2{{u.patron}}" loading="lazy" width=29.33 height=32 src="/assets/images/badges/2{{u.patron}}.webp?v=1016"></td>
|
||||
<td><img alt="2{{u.patron}}" loading="lazy" width=29.33 height=32 src="{{ ('images/badges/2'~u.patron~'.webp') | asset }}"></td>
|
||||
</tr>
|
||||
{% endfor %}
|
||||
</table>
|
||||
|
|
|
@ -32,4 +32,4 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<script src="/assets/js/report_post_modal.js?v=241"></script>
|
||||
<script src="{{ 'js/report_post_modal.js' | asset }}"></script>
|
||||
|
|
|
@ -5,20 +5,20 @@
|
|||
<meta name="description" content="{{config('DESCRIPTION')}}">
|
||||
<meta http-equiv="Content-Security-Policy" content="script-src 'self' 'unsafe-inline'; connect-src 'self'; object-src 'none';">
|
||||
|
||||
<script src="/assets/js/bootstrap.js?v=245"></script>
|
||||
<script src="{{ 'js/bootstrap.js' | asset }}"></script>
|
||||
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
|
||||
|
||||
<meta name="author" content="">
|
||||
|
||||
<link rel="icon" type="image/png" href="/assets/images/{{SITE_ID}}/icon.webp?v=1015">
|
||||
<link rel="icon" type="image/png" href="{{ ('images/'~SITE_ID~'/icon.webp') | asset }}">
|
||||
|
||||
<title>{% block pagetitle %}Settings - {{SITE_TITLE}}{% endblock %}</title>
|
||||
<meta property="og:type" content="article">
|
||||
<meta property="og:title" content="{{SITE_TITLE}}">
|
||||
<meta property="og:site_name" content="{{request.host}}">
|
||||
<meta property="og:image" content="/assets/images/{{SITE_ID}}/site_preview.webp?v=1015">
|
||||
<meta property="og:image" content="{{ ('images/'~SITE_ID~'/site_preview.webp') | asset }}">
|
||||
<meta property="og:url" content="{{request.host}}">
|
||||
<meta property="og:description" name="description" content="{{config('DESCRIPTION')}}">
|
||||
<meta property="og:author" name="author" content="{{SITE_FULL}}">
|
||||
|
@ -29,13 +29,13 @@
|
|||
<meta name="twitter:title" content="{{SITE_TITLE}}">
|
||||
<meta name="twitter:creator" content="{{SITE_FULL}}">
|
||||
<meta name="twitter:description" content="{{config('DESCRIPTION')}}">
|
||||
<meta name="twitter:image" content="/assets/images/{{SITE_ID}}/site_preview.webp?v=1015">
|
||||
<meta name="twitter:image" content="{{ ('images/'~SITE_ID~'/site_preview.webp') | asset }}">
|
||||
<meta name="twitter:url" content="{{request.host}}">
|
||||
|
||||
|
||||
<style>:root{--primary:#{{v.themecolor}}}</style>
|
||||
<link rel="stylesheet" href="/assets/css/main.css?v=254">
|
||||
<link rel="stylesheet" href="/assets/css/{{v.theme}}.css?v=59">
|
||||
<link rel="stylesheet" href="{{ 'css/main.css' | asset }}">
|
||||
<link rel="stylesheet" href="{{ ('css/'~v.theme~'.css') | asset }}">
|
||||
{% if v.css and not request.path.startswith('/settings/css') %}
|
||||
<link rel="stylesheet" href="/@{{v.username}}/css">
|
||||
{% endif %}
|
||||
|
@ -241,7 +241,7 @@
|
|||
|
||||
{% block onload %}{% endblock %}
|
||||
|
||||
<script src="/assets/js/clipboard.js?v=240"></script>
|
||||
<script src="{{ 'js/clipboard.js' | asset }}"></script>
|
||||
|
||||
</body>
|
||||
|
||||
|
|
|
@ -6,19 +6,19 @@
|
|||
<meta name="description" content="{{config('DESCRIPTION')}}">
|
||||
<meta http-equiv="Content-Security-Policy" content="script-src 'self' 'unsafe-inline'; connect-src 'self'; object-src 'none';">
|
||||
|
||||
<script src="/assets/js/bootstrap.js?v=245"></script>
|
||||
<script src="{{ 'js/bootstrap.js' | asset }}"></script>
|
||||
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
|
||||
|
||||
<meta name="author" content="">
|
||||
<meta name="thumbnail" content="/assets/images/{{SITE_ID}}/site_preview.webp?v=1015">
|
||||
<link rel="icon" type="image/png" href="/assets/images/{{SITE_ID}}/icon.webp?v=1015">
|
||||
<meta name="thumbnail" content="{{ ('images/'~SITE_ID~'/site_preview.webp') | asset }}">
|
||||
<link rel="icon" type="image/png" href="{{ ('images/'~SITE_ID~'/icon.webp') | asset }}">
|
||||
|
||||
<meta property="og:type" content="article">
|
||||
<meta property="og:title" content="{{SITE_TITLE}}">
|
||||
<meta property="og:site_name" content="{{request.host}}">
|
||||
<meta property="og:image" content="/assets/images/{{SITE_ID}}/site_preview.webp?v=1015">
|
||||
<meta property="og:image" content="{{ ('images/'~SITE_ID~'/site_preview.webp') | asset }}">
|
||||
<meta property="og:url" content="{{SITE_FULL}}{{request.full_path}}">
|
||||
<meta property="og:description" name="description" content="{{config('DESCRIPTION')}}">
|
||||
<meta property="og:author" name="author" content="{{SITE_FULL}}">
|
||||
|
@ -29,7 +29,7 @@
|
|||
<meta name="twitter:title" content="{{SITE_TITLE}}">
|
||||
<meta name="twitter:creator" content="{{SITE_FULL}}">
|
||||
<meta name="twitter:description" content="{{config('DESCRIPTION')}}">
|
||||
<meta name="twitter:image" content="/assets/images/{{SITE_ID}}/site_preview.webp?v=1015">
|
||||
<meta name="twitter:image" content="{{ ('images/'~SITE_ID~'/site_preview.webp') | asset }}">
|
||||
<meta name="twitter:url" content="{{SITE_FULL}}{{request.full_path}}">
|
||||
|
||||
|
||||
|
@ -39,12 +39,12 @@
|
|||
|
||||
{% if v %}
|
||||
<style>:root{--primary:#{{v.themecolor}}}</style>
|
||||
<link rel="stylesheet" href="/assets/css/main.css?v=254">
|
||||
<link rel="stylesheet" href="/assets/css/{{v.theme}}.css?v=59">
|
||||
<link rel="stylesheet" href="{{ 'css/main.css' | asset }}">
|
||||
<link rel="stylesheet" href="{{ ('css/'~v.theme~'.css') | asset }}">
|
||||
{% else %}
|
||||
<style>:root{--primary:#{{config('DEFAULT_COLOR')}}</style>
|
||||
<link rel="stylesheet" href="/assets/css/main.css?v=254">
|
||||
<link rel="stylesheet" href="/assets/css/{{config('DEFAULT_THEME')}}.css?v=58">
|
||||
<link rel="stylesheet" href="{{ 'css/main.css' | asset }}">
|
||||
<link rel="stylesheet" href="{{ ('css/'~config('DEFAULT_THEME')~'.css') | asset }}">
|
||||
{% endif %}
|
||||
</head>
|
||||
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
|
||||
{% block content %}
|
||||
|
||||
<script src="/assets/js/settings_blocks.js?v=241"></script>
|
||||
<script src="{{ 'js/settings_blocks.js' | asset }}"></script>
|
||||
|
||||
<div class="row">
|
||||
|
||||
|
|
|
@ -501,7 +501,7 @@
|
|||
</div>
|
||||
|
||||
|
||||
<script src="/assets/js/settings_profile.js?v=251"></script>
|
||||
<script src="{{ 'js/settings_profile.js' | asset }}"></script>
|
||||
|
||||
{% include "gif_modal.html" %}
|
||||
|
||||
|
|
|
@ -257,6 +257,6 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<script src="/assets/js/settings_security.js?v=241"></script>
|
||||
<script src="{{ 'js/settings_security.js' | asset }}"></script>
|
||||
|
||||
{% endblock %}
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
|
||||
{% block Banner %}
|
||||
<header class="container pb-1 text-center">
|
||||
<img alt="shop banner" src="/assets/images/shop.webp" width="50%">
|
||||
<img alt="shop banner" src="{{ 'images/shop.webp' | asset }}" width="50%">
|
||||
<h3 class="mt-4">Stir drama. Earn coins.</h5>
|
||||
<h5 class="mt-4">Total sales: {{sales}} coins</h5>
|
||||
<h5 class="mt-4">Coins spent by you: {{v.coins_spent}} coins</h5>
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
<meta name="description" content="{{config('DESCRIPTION')}}">
|
||||
<meta http-equiv="Content-Security-Policy" content="script-src 'self' 'unsafe-inline'; connect-src 'self'; object-src 'none';">
|
||||
|
||||
<script src="/assets/js/bootstrap.js?v=245"></script>
|
||||
<script src="{{ 'js/bootstrap.js' | asset }}"></script>
|
||||
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
|
||||
|
@ -14,7 +14,7 @@
|
|||
<meta property="og:type" content="article">
|
||||
<meta property="og:title" content="{{SITE_TITLE}}">
|
||||
<meta property="og:site_name" content="{{request.host}}">
|
||||
<meta property="og:image" content="/assets/images/{{SITE_ID}}/site_preview.webp?v=1015">
|
||||
<meta property="og:image" content="{{ ('images/'~SITE_ID~'/site_preview.webp') | asset }}">
|
||||
<meta property="og:url" content="{{request.host}}">
|
||||
<meta property="og:description" name="description" content="{{config('DESCRIPTION')}}">
|
||||
<meta property="og:author" name="author" content="{{SITE_FULL}}">
|
||||
|
@ -25,14 +25,14 @@
|
|||
<meta name="twitter:title" content="{{SITE_TITLE}}">
|
||||
<meta name="twitter:creator" content="{{SITE_FULL}}">
|
||||
<meta name="twitter:description" content="{{config('DESCRIPTION')}}">
|
||||
<meta name="twitter:image" content="/assets/images/{{SITE_ID}}/site_preview.webp?v=1015">
|
||||
<meta name="twitter:image" content="{{ ('images/'~SITE_ID~'/site_preview.webp') | asset }}">
|
||||
<meta name="twitter:url" content="{{request.host}}">
|
||||
|
||||
<title>{% if ref_user %}{{ref_user.username}} invites you to {{SITE_TITLE}}{% else %}Sign up - {{SITE_TITLE}}{% endif %}</title>
|
||||
|
||||
<style>:root{--primary:#{{config('DEFAULT_COLOR')}}</style>
|
||||
<link rel="stylesheet" href="/assets/css/main.css?v=254">
|
||||
<link rel="stylesheet" href="/assets/css/{{config('DEFAULT_THEME')}}.css?v=58">
|
||||
<link rel="stylesheet" href="{{ 'css/main.css' | asset }}">
|
||||
<link rel="stylesheet" href="{{ ('css/'~config('DEFAULT_THEME')~'.css') | asset }}">
|
||||
|
||||
</head>
|
||||
|
||||
|
@ -140,7 +140,7 @@
|
|||
|
||||
<div class="splash-overlay"></div>
|
||||
|
||||
<img alt="cover" loading="lazy" class="splash-img" src="/assets/images/{{SITE_ID}}/cover.webp?v=1014"></img>
|
||||
<img alt="cover" loading="lazy" class="splash-img" src="{{ ('images/'~SITE_ID~'/cover.webp') | asset }}"></img>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
@ -148,10 +148,10 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<script src="/assets/js/signup.js?v=240"></script>
|
||||
<script src="{{ 'js/signup.js' | asset }}"></script>
|
||||
|
||||
{% if hcaptcha %}
|
||||
<script src="/assets/js/hcaptcha.js?v=240"></script>
|
||||
<script src="{{ 'js/hcaptcha.js' | asset }}"></script>
|
||||
{% endif %}
|
||||
|
||||
</body>
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
<meta name="description" content="{{config('DESCRIPTION')}}">
|
||||
<meta http-equiv="Content-Security-Policy" content="script-src 'self' 'unsafe-inline'; connect-src 'self'; object-src 'none';">
|
||||
|
||||
<script src="/assets/js/bootstrap.js?v=245"></script>
|
||||
<script src="{{ 'js/bootstrap.js' | asset }}"></script>
|
||||
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
|
||||
|
@ -15,7 +15,7 @@
|
|||
<meta property="og:type" content="article">
|
||||
<meta property="og:title" content="{{SITE_TITLE}}">
|
||||
<meta property="og:site_name" content="{{request.host}}">
|
||||
<meta property="og:image" content="/assets/images/{{SITE_ID}}/site_preview.webp?v=1015">
|
||||
<meta property="og:image" content="{{ ('images/'~SITE_ID~'/site_preview.webp') | asset }}">
|
||||
<meta property="og:url" content="{{request.host}}">
|
||||
<meta property="og:description" name="description" content="{{config('DESCRIPTION')}}">
|
||||
<meta property="og:author" name="author" content="{{SITE_FULL}}">
|
||||
|
@ -26,14 +26,14 @@
|
|||
<meta name="twitter:title" content="{{SITE_TITLE}}">
|
||||
<meta name="twitter:creator" content="{{SITE_FULL}}">
|
||||
<meta name="twitter:description" content="{{config('DESCRIPTION')}}">
|
||||
<meta name="twitter:image" content="/assets/images/{{SITE_ID}}/site_preview.webp?v=1015">
|
||||
<meta name="twitter:image" content="{{ ('images/'~SITE_ID~'/site_preview.webp') | asset }}">
|
||||
<meta name="twitter:url" content="{{request.host}}">
|
||||
|
||||
<title>{% if ref_user %}{{ref_user.username}} invites you to {{SITE_TITLE}}{% else %}{{SITE_TITLE}}{% endif %}</title>
|
||||
|
||||
<style>:root{--primary:#{{config('DEFAULT_COLOR')}}</style>
|
||||
<link rel="stylesheet" href="/assets/css/main.css?v=254">
|
||||
<link rel="stylesheet" href="/assets/css/{{config('DEFAULT_THEME')}}.css?v=58">
|
||||
<link rel="stylesheet" href="{{ 'css/main.css' | asset }}">
|
||||
<link rel="stylesheet" href="{{ ('css/'~config('DEFAULT_THEME')~'.css') | asset }}">
|
||||
|
||||
</head>
|
||||
|
||||
|
@ -84,7 +84,7 @@
|
|||
|
||||
<div class="splash-overlay"></div>
|
||||
|
||||
<img alt="cover" loading="lazy" class="splash-img" src="/assets/images/{{SITE_ID}}/cover.webp?v=1014"></img>
|
||||
<img alt="cover" loading="lazy" class="splash-img" src="{{ ('images/'~SITE_ID~'/cover.webp') | asset }}"></img>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{% extends "default.html" %}
|
||||
{% block content %}
|
||||
<script src="/assets/js/sort_table.js?v=242"></script>
|
||||
<script src="{{ 'js/sort_table.js' | asset }}"></script>
|
||||
|
||||
<pre>
|
||||
|
||||
|
|
|
@ -43,7 +43,7 @@
|
|||
<meta property="og:description" name="description" content="{{comment_info.plainbody(v)}}">
|
||||
<meta property="og:author" name="author" content="{{'@'+comment_info.author_name}}">
|
||||
<meta property="og:title" content="{{'@'+comment_info.author_name}} comments on {{p.plaintitle(v)}} - {{SITE_TITLE}}">
|
||||
<meta property="og:image" content="{% if p.is_image %}{{p.realurl(v)}}{% elif p.has_thumb%}{{p.thumb_url}}{% else %}{{SITE_ID}}/assets/images/{{SITE_ID}}/site_preview.webp?v=1015{% endif %}">
|
||||
<meta property="og:image" content="{% if p.is_image %}{{p.realurl(v)}}{% elif p.has_thumb%}{{p.thumb_url}}{% else %}{{SITE_FULL}}{{ ('images/'~SITE_ID~'/site_preview.webp') | asset }}{% endif %}">
|
||||
{% if p.is_video %}
|
||||
<meta property="og:video" content="{{p.realurl(v)}}">
|
||||
{% endif %}
|
||||
|
@ -55,7 +55,7 @@
|
|||
<meta name="twitter:title" content="{{'@'+comment_info.author_name}} comments on {{p.plaintitle(v)}} - {{SITE_TITLE}}">
|
||||
<meta name="twitter:creator" content="{{'@'+comment_info.author_name}}">
|
||||
<meta name="twitter:description" content="{{comment_info.plainbody(v)}}">
|
||||
<meta name="twitter:image" content="{% if p.is_image %}{{p.realurl(v)}}{% elif p.has_thumb%}{{p.thumb_url}}{% else %}{{SITE_ID}}/assets/images/{{SITE_ID}}/site_preview.webp?v=1015{% endif %}">
|
||||
<meta name="twitter:image" content="{% if p.is_image %}{{p.realurl(v)}}{% elif p.has_thumb%}{{p.thumb_url}}{% else %}{{SITE_FULL}}{{ ('images/'~SITE_ID~'/site_preview.webp') | asset }}{% endif %}">
|
||||
<meta name="twitter:url" content="{{p.permalink}}">
|
||||
|
||||
{% else %}
|
||||
|
@ -68,7 +68,7 @@
|
|||
<meta property="og:description" name="description" content="{{p.plainbody(v)}}">
|
||||
{% if p.author %}<meta property="og:author" name="author" content="{{'@'+p.author_name}}">{% endif %}
|
||||
<meta property="og:title" content="{{p.plaintitle(v)}} - {{SITE_TITLE}}">
|
||||
<meta property="og:image" content="{% if p.is_image %}{{p.realurl(v)}}{% elif p.has_thumb%}{{p.thumb_url}}{% else %}{{SITE_ID}}/assets/images/{{SITE_ID}}/site_preview.webp?v=1015{% endif %}">
|
||||
<meta property="og:image" content="{% if p.is_image %}{{p.realurl(v)}}{% elif p.has_thumb%}{{p.thumb_url}}{% else %}{{SITE_FULL}}{{ ('images/'~SITE_ID~'/site_preview.webp') | asset }}{% endif %}">
|
||||
{% if p.url and p.is_video %}
|
||||
<meta property="og:video" content="{{p.realurl(v)}}">
|
||||
{% endif %}
|
||||
|
@ -80,7 +80,7 @@
|
|||
<meta name="twitter:title" content="{{p.plaintitle(v)}} - {{SITE_TITLE}}">
|
||||
{% if p.author %}<meta name="twitter:creator" content="{{'@'+p.author_name}}">{% endif %}
|
||||
<meta name="twitter:description" content="{{p.plainbody(v)}}">
|
||||
<meta name="twitter:image" content="{% if p.is_image %}{{p.realurl(v)}}{% elif p.has_thumb %}{{p.thumb_url}}{% else %}{{SITE_ID}}/assets/images/{{SITE_ID}}/site_preview.webp?v=1015{% endif %}">
|
||||
<meta name="twitter:image" content="{% if p.is_image %}{{p.realurl(v)}}{% elif p.has_thumb %}{{p.thumb_url}}{% else %}{{SITE_FULL}}{{ ('images/'~SITE_ID~'/site_preview.webp') | asset }}{% endif %}">
|
||||
<meta name="twitter:url" content="{{p.permalink}}">
|
||||
|
||||
{% endif %}
|
||||
|
@ -246,9 +246,9 @@
|
|||
{% if p.domain == "twitter.com" %}
|
||||
{{p.embed_url | safe}}
|
||||
{% if v and v.theme.split("_")[0] in ["light", "coffee", "4chan"] %}
|
||||
<script src="/assets/js/twitterlight.js?v=243"></script>
|
||||
<script src="{{ 'js/twitterlight.js' | asset }}"></script>
|
||||
{% else %}
|
||||
<script src="/assets/js/twitter.js?v=243"></script>
|
||||
<script src="{{ 'js/twitter.js' | asset }}"></script>
|
||||
{% endif %}
|
||||
{% elif p.domain in ['youtu.be','youtube.com'] and p.embed_url and p.embed_url.startswith('<lite-youtube') %}
|
||||
{{p.embed_url | safe}}
|
||||
|
@ -595,28 +595,28 @@
|
|||
{% endif %}
|
||||
|
||||
{% if v and (v.id == p.author_id or v.admin_level > 1 and v.admin_level > 2) %}
|
||||
<script src="/assets/js/togglePostEdit.js?v=240"></script>
|
||||
<script src="{{ 'js/togglePostEdit.js' | asset }}"></script>
|
||||
{% endif %}
|
||||
|
||||
{% if not v or v.highlightcomments %}
|
||||
<script src="/assets/js/new_comments_count.js?v=242"></script>
|
||||
<script src="{{ 'js/new_comments_count.js' | asset }}"></script>
|
||||
{% endif %}
|
||||
|
||||
<script src="/assets/js/clipboard.js?v=240"></script>
|
||||
<script src="{{ 'js/clipboard.js' | asset }}"></script>
|
||||
|
||||
{% if not p.replies %}
|
||||
{% include "comments.html" %}
|
||||
{% endif %}
|
||||
|
||||
{% if p.award_count("shit") %}
|
||||
<script src="/assets/js/critters.js?v=240"></script>
|
||||
<script src="/assets/js/bugs.js?v=241"></script>
|
||||
<script src="{{ 'js/critters.js' | asset }}"></script>
|
||||
<script src="{{ 'js/bugs.js' | asset }}"></script>
|
||||
{% endif %}
|
||||
|
||||
|
||||
{% if p.award_count("fireflies") %}
|
||||
<script src="/assets/js/critters.js?v=240"></script>
|
||||
<script src="/assets/js/fireflies.js?v=241"></script>
|
||||
<script src="{{ 'js/critters.js' | asset }}"></script>
|
||||
<script src="{{ 'js/fireflies.js' | asset }}"></script>
|
||||
{% endif %}
|
||||
|
||||
|
||||
|
|
|
@ -1,11 +1,11 @@
|
|||
{% set cc='COUNTRY CLUB' %}
|
||||
|
||||
{% if not v or v.highlightcomments %}
|
||||
<script src="/assets/js/new_comments_count.js?v=242"></script>
|
||||
<script src="{{ 'js/new_comments_count.js' | asset }}"></script>
|
||||
{% endif %}
|
||||
|
||||
{% if v and v.admin_level > 2 %}
|
||||
<script src="/assets/js/filter_actions.js?v=8"></script>
|
||||
<script src="{{ 'js/filter_actions.js' | asset }}"></script>
|
||||
{% endif %}
|
||||
|
||||
<div style="display:none" id="popover">
|
||||
|
@ -417,6 +417,6 @@
|
|||
{% endif %}
|
||||
{% include "expanded_image_modal.html" %}
|
||||
|
||||
<script src="/assets/js/clipboard.js?v=240"></script>
|
||||
<script src="/assets/js/comments+submission_listing.js?v=259"></script>
|
||||
<script src="/assets/js/submission_listing.js?v=240"></script>
|
||||
<script src="{{ 'js/clipboard.js' | asset }}"></script>
|
||||
<script src="{{ 'js/comments+submission_listing.js' | asset }}"></script>
|
||||
<script src="{{ 'js/submission_listing.js' | asset }}"></script>
|
||||
|
|
|
@ -4,13 +4,13 @@
|
|||
<meta name="description" content="{{config('DESCRIPTION')}}">
|
||||
<meta http-equiv="Content-Security-Policy" content="script-src 'self' 'unsafe-inline'; connect-src 'self'; object-src 'none';">
|
||||
|
||||
<script src="/assets/js/bootstrap.js?v=245"></script>
|
||||
<script src="{{ 'js/bootstrap.js' | asset }}"></script>
|
||||
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
|
||||
|
||||
<meta name="author" content="">
|
||||
<link rel="icon" type="image/png" href="/assets/images/{{SITE_ID}}/icon.webp?v=1015">
|
||||
<link rel="icon" type="image/png" href="{{ ('images/'~SITE_ID~'/icon.webp') | asset }}">
|
||||
|
||||
{% block title %}
|
||||
<title>Create a post - {{SITE_TITLE}}</title>
|
||||
|
@ -20,15 +20,15 @@
|
|||
{% block stylesheets %}
|
||||
{% if v %}
|
||||
<style>:root{--primary:#{{v.themecolor}}}</style>
|
||||
<link rel="stylesheet" href="/assets/css/main.css?v=254">
|
||||
<link rel="stylesheet" href="/assets/css/{{v.theme}}.css?v=49">
|
||||
<link rel="stylesheet" href="{{ 'css/main.css' | asset }}">
|
||||
<link rel="stylesheet" href="{{ ('css/'~v.theme~'.css') | asset }}">
|
||||
{% if v.css %}
|
||||
<link rel="stylesheet" href="/@{{v.username}}/css">
|
||||
{% endif %}
|
||||
{% else %}
|
||||
<style>:root{--primary:#{{config('DEFAULT_COLOR')}}</style>
|
||||
<link rel="stylesheet" href="/assets/css/main.css?v=254">
|
||||
<link rel="stylesheet" href="/assets/css/{{config('DEFAULT_THEME')}}.css?v=49">
|
||||
<link rel="stylesheet" href="{{ 'css/main.css' | asset }}">
|
||||
<link rel="stylesheet" href="{{ ('css/'~config('DEFAULT_THEME')~'.css') | asset }}">
|
||||
{% endif %}
|
||||
{% endblock %}
|
||||
|
||||
|
@ -169,11 +169,11 @@
|
|||
</script>
|
||||
{% endif %}
|
||||
|
||||
<script src="/assets/js/vendor/purify.min.js?v=251"></script>
|
||||
<script src="/assets/js/vendor/marked.min.js?v=251"></script>
|
||||
<script src="/assets/js/marked.custom.js?v=252"></script>
|
||||
<script src="/assets/js/formatting.js?v=240"></script>
|
||||
<script src="/assets/js/submit.js?v=255"></script>
|
||||
<script src="{{ 'js/vendor/purify.min.js' | asset }}"></script>
|
||||
<script src="{{ 'js/vendor/marked.min.js' | asset }}"></script>
|
||||
<script src="{{ 'js/marked.custom.js' | asset }}"></script>
|
||||
<script src="{{ 'js/formatting.js' | asset }}"></script>
|
||||
<script src="{{ 'js/submit.js' | asset }}"></script>
|
||||
|
||||
{% include "gif_modal.html" %}
|
||||
|
||||
|
|
|
@ -299,9 +299,9 @@
|
|||
<div>
|
||||
{% for b in u.badges %}
|
||||
{% if b.url %}
|
||||
<a rel="nofollow noopener noreferrer" href="{{b.url}}"><img alt="{{b.name}}" width=55 height=60 loading="lazy" src="{{b.path}}?v=1016" data-bs-toggle="tooltip" data-bs-placement="bottom" title="{{b.text}}"></a>
|
||||
<a rel="nofollow noopener noreferrer" href="{{b.url}}"><img alt="{{b.name}}" width=55 height=60 loading="lazy" src="{{b.path}}" data-bs-toggle="tooltip" data-bs-placement="bottom" title="{{b.text}}"></a>
|
||||
{% else %}
|
||||
<img alt="{{b.name}}" width=55 height=60 loading="lazy" src="{{b.path}}?v=1016" data-bs-toggle="tooltip" data-bs-placement="bottom" title="{{b.text}}">
|
||||
<img alt="{{b.name}}" width=55 height=60 loading="lazy" src="{{b.path}}" data-bs-toggle="tooltip" data-bs-placement="bottom" title="{{b.text}}">
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
</div>
|
||||
|
@ -420,9 +420,9 @@
|
|||
<div class="mb-3">
|
||||
{% for b in u.badges %}
|
||||
{% if b.url %}
|
||||
<a rel="nofollow noopener noreferrer" href="{{b.url}}"><img alt="{{b.name}}" width=29.33 height=32 loading="lazy" src="{{b.path}}?v=1016" data-bs-toggle="tooltip" data-bs-placement="bottom" title="{{b.text}}"></a>
|
||||
<a rel="nofollow noopener noreferrer" href="{{b.url}}"><img alt="{{b.name}}" width=29.33 height=32 loading="lazy" src="{{b.path}}" data-bs-toggle="tooltip" data-bs-placement="bottom" title="{{b.text}}"></a>
|
||||
{% else %}
|
||||
<img alt="{{b.name}}" width=29.33 height=32 loading="lazy" src="{{b.path}}?v=1016" data-bs-toggle="tooltip" data-bs-placement="bottom" title="{{b.text}}">
|
||||
<img alt="{{b.name}}" width=29.33 height=32 loading="lazy" src="{{b.path}}" data-bs-toggle="tooltip" data-bs-placement="bottom" title="{{b.text}}">
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
</div>
|
||||
|
@ -667,11 +667,11 @@
|
|||
|
||||
{% if v %}
|
||||
<div id='tax' class="d-none">{% if v.patron or u.patron or v.alts_patron or u.alts_patron %}0{% else %}0.03{% endif %}</div>
|
||||
<script src="/assets/js/userpage_v.js?v=244"></script>
|
||||
<script src="{{ 'js/userpage_v.js' | asset }}"></script>
|
||||
<div id="username" class="d-none">{{u.username}}</div>
|
||||
{% endif %}
|
||||
|
||||
<script src="/assets/js/userpage.js?v=241"></script>
|
||||
<script src="{{ 'js/userpage.js' | asset }}"></script>
|
||||
|
||||
{% endblock %}
|
||||
|
||||
|
@ -697,9 +697,9 @@
|
|||
</nav>
|
||||
{% endif %}
|
||||
|
||||
<script src="/assets/js/vendor/purify.min.js?v=251"></script>
|
||||
<script src="/assets/js/vendor/marked.min.js?v=252"></script>
|
||||
<script src="/assets/js/marked.custom.js?v=251"></script>
|
||||
<script src="{{ 'js/vendor/purify.min.js' | asset }}"></script>
|
||||
<script src="{{ 'js/vendor/marked.min.js' | asset }}"></script>
|
||||
<script src="{{ 'js/marked.custom.js' | asset }}"></script>
|
||||
|
||||
{% endblock %}
|
||||
|
||||
|
|
|
@ -114,9 +114,9 @@
|
|||
|
||||
{% if v %}
|
||||
<div id='tax' class="d-none">{% if v.patron or u.patron %}0{% else %}0.03{% endif %}</div>
|
||||
<script src="/assets/js/userpage_v.js?v=244"></script>
|
||||
<script src="{{ 'js/userpage_v.js' | asset }}"></script>
|
||||
<div id="username" class="d-none">{{u.username}}</div>
|
||||
{% endif %}
|
||||
|
||||
<script src="/assets/js/userpage.js?v=241"></script>
|
||||
<script src="{{ 'js/userpage.js' | asset }}"></script>
|
||||
{% endblock %}
|
||||
|
|
|
@ -32,9 +32,9 @@
|
|||
|
||||
{% if v %}
|
||||
<div id='tax' class="d-none">{% if v.patron or u.patron %}0{% else %}0.03{% endif %}</div>
|
||||
<script src="/assets/js/userpage_v.js?v=244"></script>
|
||||
<script src="{{ 'js/userpage_v.js' | asset }}"></script>
|
||||
<div id="username" class="d-none">{{u.username}}</div>
|
||||
{% endif %}
|
||||
|
||||
<script src="/assets/js/userpage.js?v=241"></script>
|
||||
<script src="{{ 'js/userpage.js' | asset }}"></script>
|
||||
{% endblock %}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue