dfdffd
This commit is contained in:
parent
91e119874a
commit
3bc086759e
54 changed files with 150 additions and 149 deletions
|
@ -5,9 +5,9 @@ services:
|
|||
build:
|
||||
context: .
|
||||
volumes:
|
||||
- "./:/opt/Drama/service"
|
||||
- "./:/drama/service"
|
||||
environment:
|
||||
- PYTHONPATH="opt/Drama/service"
|
||||
- PYTHONPATH="drama/service"
|
||||
- REDIS_URL=redis://redis
|
||||
- DATABASE_URL=postgresql://postgres@postgres:5432/postgres
|
||||
- DATABASE_CONNECTION_POOL_URL=postgresql://postgres@postgres:5432/postgres
|
||||
|
@ -43,7 +43,7 @@ services:
|
|||
redis:
|
||||
image: redis
|
||||
volumes:
|
||||
- ./redis.conf:/opt/Drama/redis.conf
|
||||
- ./redis.conf:/drama/redis.conf
|
||||
ports:
|
||||
- "6379:6379"
|
||||
|
||||
|
|
|
@ -24,7 +24,7 @@
|
|||
<div class="text-small text-muted">Or enter this code: {{mfa_secret}}</div>
|
||||
</div>
|
||||
<p>
|
||||
<span class="font-weight-bold">Step 2:</span> Enter the six-digit code generated in the authenticator app and your Drama account password.
|
||||
<span class="font-weight-bold">Step 2:</span> Enter the six-digit code generated in the authenticator app and your {{"SITE_NAME" | app_config}} account password.
|
||||
</p>
|
||||
<label for="2fa_input">6-digit code</label>
|
||||
<input type="text" class="form-control mb-2" id="2fa_input" name="2fa_token" placeholder="# # # # # #" required>
|
||||
|
@ -47,7 +47,7 @@
|
|||
|
||||
<div class="alert alert-warning" role="alert">
|
||||
<i class="fas fa-info-circle"></i>
|
||||
To disable two-step login, please enter your Drama account password and the 6-digit code generated in your authentication app. If you no longer have your two-step device, <a href="/lost_2fa">click here</a>.
|
||||
To disable two-step login, please enter your {{"SITE_NAME" | app_config}} account password and the 6-digit code generated in your authentication app. If you no longer have your two-step device, <a href="/lost_2fa">click here</a>.
|
||||
</div>
|
||||
|
||||
<label for="2fa_input_password">Password</label>
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
{% extends "default.html" %}
|
||||
|
||||
{% block title %}
|
||||
<title>Drama</title>
|
||||
<meta name="description" content="Drama Help">
|
||||
<title>{{"SITE_NAME" | app_config}}</title>
|
||||
<meta name="description" content="{{"SITE_NAME" | app_config}} Help">
|
||||
{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
{% extends "default.html" %}
|
||||
|
||||
{% block title %}
|
||||
<title>Drama</title>
|
||||
<meta name="description" content="Drama Help">
|
||||
<title>{{"SITE_NAME" | app_config}}</title>
|
||||
<meta name="description" content="{{"SITE_NAME" | app_config}} Help">
|
||||
{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
{% block title %}
|
||||
<title>API App Administration</title>
|
||||
<meta name="description" content="Drama Help">
|
||||
<meta name="description" content="{{"SITE_NAME" | app_config}} Help">
|
||||
{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
{% extends "default.html" %}
|
||||
|
||||
{% block title %}
|
||||
<title>Drama</title>
|
||||
<meta name="description" content="Drama Help">
|
||||
<title>{{"SITE_NAME" | app_config}}</title>
|
||||
<meta name="description" content="{{"SITE_NAME" | app_config}} Help">
|
||||
{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
{% block title %}
|
||||
<title>API App Administration</title>
|
||||
<meta name="description" content="Drama Help">
|
||||
<meta name="description" content="{{"SITE_NAME" | app_config}} Help">
|
||||
{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
{% extends "default.html" %}
|
||||
|
||||
{% block title %}
|
||||
<title>Drama</title>
|
||||
<meta name="description" content="Drama Help">
|
||||
<title>{{"SITE_NAME" | app_config}}</title>
|
||||
<meta name="description" content="{{"SITE_NAME" | app_config}} Help">
|
||||
{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
|
|
|
@ -64,7 +64,7 @@
|
|||
|
||||
{% block title %}
|
||||
<title>Flagged Posts</title>
|
||||
<meta name="description" content="on Drama">
|
||||
<meta name="description" content="on {{"SITE_NAME" | app_config}}">
|
||||
{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
|
|
|
@ -36,7 +36,7 @@
|
|||
|
||||
{% block title %}
|
||||
<title>Image feed</title>
|
||||
<meta name="description" content="on Drama">
|
||||
<meta name="description" content="on {{"SITE_NAME" | app_config}}">
|
||||
{% endblock %}
|
||||
|
||||
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
{% extends "default.html" %}
|
||||
|
||||
{% block title %}
|
||||
<title>Drama</title>
|
||||
<meta name="description" content="Drama Help">
|
||||
<title>{{"SITE_NAME" | app_config}}</title>
|
||||
<meta name="description" content="{{"SITE_NAME" | app_config}} Help">
|
||||
{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
|
||||
{% block title %}
|
||||
<title>Removed Content</title>
|
||||
<meta name="description" content="on Drama">
|
||||
<meta name="description" content="on {{"SITE_NAME" | app_config}}">
|
||||
{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
|
|
|
@ -1,22 +1,23 @@
|
|||
{% extends "default.html" %}
|
||||
|
||||
{% block title %}
|
||||
<title>Drama - API</title>
|
||||
<meta name="description" content="Drama API Guide">
|
||||
<title>{{"SITE_NAME" | app_config}} - API</title>
|
||||
<meta name="description" content="{{"SITE_NAME" | app_config}} API Guide">
|
||||
{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
{{"SITE_NAME" | app_config}}
|
||||
<pre></pre>
|
||||
{% filter markdown %}
|
||||
# OAuth2
|
||||
|
||||
The OAuth2 authorization flow is used to enable users to authorize third-party applications to access their Drama account without having to provide their login information to the application.
|
||||
The OAuth2 authorization flow is used to enable users to authorize third-party applications to access their {{"SITE_NAME" | app_config}} account without having to provide their login information to the application.
|
||||
|
||||
This page explains how to obtain API application keys, how to prompt a user for authorization, and how to obtain and use access tokens.
|
||||
|
||||
## Step 1: Create your Application
|
||||
|
||||
In the [apps tab of Drama settings](/settings/apps), fill in and submit the form to request new API keys. You will need:
|
||||
In the [apps tab of {{"SITE_NAME" | app_config}} settings](/settings/apps), fill in and submit the form to request new API keys. You will need:
|
||||
|
||||
* an application name
|
||||
* a Redirect URI, or a comma-separated list of redirect URIs. May not use HTTP unless using localhost (use HTTPS instead).
|
||||
|
@ -24,7 +25,7 @@ In the [apps tab of Drama settings](/settings/apps), fill in and submit the form
|
|||
|
||||
Don't worry too much about accuracy; you will be able to change all of these later.
|
||||
|
||||
Drama administrators will review and approve or deny your request for API keys. You'll know when your request has been approved when a client ID and secret appear in your application information.
|
||||
{{"SITE_NAME" | app_config}} administrators will review and approve or deny your request for API keys. You'll know when your request has been approved when a client ID and secret appear in your application information.
|
||||
|
||||
DO NOT reveal your Client Secret. Anyone with your Client Secret will be able to pretend to be you. You are responsible for keeping your Client Secret a secret!
|
||||
|
||||
|
@ -38,11 +39,11 @@ Send your user to `https://rdrama.net/oauth/authorize`, with the following URL p
|
|||
* `scope` - A comma-separated list of permission scopes that you are requesting. Valid scopes are: `identity`, `create`, `read`, `update`, `delete` and `vote`.
|
||||
* `permanent` - optional. Set to `true` if you are requesting indefinite access. Omit if not.
|
||||
|
||||
If done correctly, the user will see that your application wants to access their Drama account, and be prompted to approve or deny the request.
|
||||
If done correctly, the user will see that your application wants to access their {{"SITE_NAME" | app_config}} account, and be prompted to approve or deny the request.
|
||||
|
||||
## Step 3: Catch the redirect
|
||||
|
||||
The user clicks "Authorize". Drama will redirect the user's browser to GET the designated redirect URI. The following URL parameters will be included, which your server should process:
|
||||
The user clicks "Authorize". {{"SITE_NAME" | app_config}} will redirect the user's browser to GET the designated redirect URI. The following URL parameters will be included, which your server should process:
|
||||
|
||||
* `code` - a **single-use** authorization code.
|
||||
* `state` - The state token from earlier.
|
||||
|
@ -89,11 +90,11 @@ If everything is good, we will respond with the following (example) JSON body:
|
|||
}
|
||||
</pre>
|
||||
|
||||
Store the access and refresh tokens. You should also store expiration timestamp and the scopes list, so that you pre-emptively avoid sending requests to Drama that won't be accepted.
|
||||
Store the access and refresh tokens. You should also store expiration timestamp and the scopes list, so that you pre-emptively avoid sending requests to {{"SITE_NAME" | app_config}} that won't be accepted.
|
||||
|
||||
## Step 5: Using the Access Token
|
||||
|
||||
To use the access token, include the following header in subsequent API requests to Drama: `Authorization: Bearer access_token_goes_here`
|
||||
To use the access token, include the following header in subsequent API requests to {{"SITE_NAME" | app_config}}: `Authorization: Bearer access_token_goes_here`
|
||||
|
||||
Python example, presuming that the application has obtained a valid `read` authorization:
|
||||
|
||||
|
@ -101,7 +102,7 @@ Python example, presuming that the application has obtained a valid `read` autho
|
|||
import requests
|
||||
|
||||
headers={"Authorization": "Bearer " + access_token,
|
||||
"User-Agent": "Drama Reader v1 by @carpathianflorist"}
|
||||
"User-Agent": "{{"SITE_NAME" | app_config}} Reader v1 by @carpathianflorist"}
|
||||
url="/"
|
||||
|
||||
r=requests.get(url, headers=headers)
|
||||
|
|
|
@ -5,10 +5,10 @@
|
|||
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
|
||||
<meta name="description" content="{% block pagedesc %}Drama - the free speech social platform{% endblock %}">
|
||||
<meta name="description" content="{% block pagedesc %}{{"SITE_NAME" | app_config}} - the free speech social platform{% endblock %}">
|
||||
<meta name="author" content="">
|
||||
|
||||
<title>{% block pagetitle %}Drama - the open, free-speech social platform{% endblock %}</title>
|
||||
<title>{% block pagetitle %}{{"SITE_NAME" | app_config}} - the open, free-speech social platform{% endblock %}</title>
|
||||
|
||||
<link href="https://fonts.googleapis.com/css?family=Open+Sans:400,600&display=swap" rel="stylesheet">
|
||||
|
||||
|
@ -23,7 +23,7 @@
|
|||
integrity="sha384-L469/ELG4Bg9sDQbl0hvjMq8pOcqFgkSpwhwnslzvVVGpDjYJ6wJJyYjvG3u8XW7"
|
||||
crossorigin="anonymous"></script>
|
||||
|
||||
<!-- Drama CSS -->
|
||||
<!-- {{"SITE_NAME" | app_config}} CSS -->
|
||||
{% if v %}
|
||||
<link rel="stylesheet" href="/assets/style/{{v.theme}}_{{v.themecolor}}.css">
|
||||
{% if v.agendaposter %}<link rel="stylesheet" href="/assets/style/agendaposter.css">{% elif v.css %}<link rel="stylesheet" href="/@{{v.username}}/css">{% endif %}
|
||||
|
@ -57,7 +57,7 @@
|
|||
<div class="col-10 col-md-7">
|
||||
|
||||
<div class="mb-5">
|
||||
<a href="/" class="text-decoration-none"><span class="h3 text-primary">Drama</span></a>
|
||||
<a href="/" class="text-decoration-none"><span class="h3 text-primary">{{"SITE_NAME" | app_config}}</span></a>
|
||||
</div>
|
||||
|
||||
<h1 class="h2">{% block authtitle %}{% endblock %}</h1>
|
||||
|
|
|
@ -9,7 +9,7 @@
|
|||
<div>Badges are sorted into bronze, silver, gold, and diamond tiers, based on the relative difficulty of obtaining them.</div>
|
||||
|
||||
<h2 class="mt-3">Unlockable Badges</h2>
|
||||
<div>These badges are automatically granted through different kinds of activity on Drama.</div>
|
||||
<div>These badges are automatically granted through different kinds of activity on {{"SITE_NAME" | app_config}}.</div>
|
||||
<table class="table table-striped mb-5">
|
||||
<thead class="bg-primary text-white">
|
||||
<tr>
|
||||
|
|
|
@ -10,7 +10,7 @@
|
|||
<div class="">
|
||||
|
||||
<h1>Whoops!</h1>
|
||||
<p class="text-left">Although Drama puts your freedom of speech first, there are a few things that we don't allow here:</p>
|
||||
<p class="text-left">Although {{"SITE_NAME" | app_config}} puts your freedom of speech first, there are a few things that we don't allow here:</p>
|
||||
<ul>
|
||||
<li>Digitally malicious content</li>
|
||||
<li>URL shorteners</li>
|
||||
|
|
|
@ -93,7 +93,7 @@
|
|||
<span class="font-weight-bold"><a href="{{c.post.permalink}}">{{c.post.title | safe}}</a></span>
|
||||
{% endif %}
|
||||
{% elif c.author_id==1046 or c.author_id==2360 %}
|
||||
<span class="font-weight-bold">Drama Notification</span>
|
||||
<span class="font-weight-bold">{{"SITE_NAME" | app_config}} Notification</span>
|
||||
{% else %}
|
||||
<span class="font-weight-bold">Private Message</span>
|
||||
{% endif %}
|
||||
|
@ -115,7 +115,7 @@
|
|||
{% if c.over_18 %}<span class="badge badge-danger text-small-extra mr-1">+18</span> {% endif %}
|
||||
{% if v and v.admin_level==6 and c.author.shadowbanned %}<i class="fas fa-user-times text-admin" data-toggle="tooltip" data-placement="bottom" title="Shadowbanned user"></i> {% endif %}
|
||||
{% if c.is_pinned %}<i class="text-admin fas fa-thumbtack fa-rotate--45" data-toggle="tooltip" data-placement="bottom" title="" data-original-title="Pinned comment"></i> {% endif %}
|
||||
{% if c.distinguish_level %}<i class="fas fa-broom text-admin" data-toggle="tooltip" data-placement="bottom" title="" data-original-title="Drama Badmin, speaking officially"></i> {% endif %}
|
||||
{% if c.distinguish_level %}<i class="fas fa-broom text-admin" data-toggle="tooltip" data-placement="bottom" title="" data-original-title="{{"SITE_NAME" | app_config}} Badmin, speaking officially"></i> {% endif %}
|
||||
{% if c.is_op %}<i class="fas fa-microphone-stand text-info" data-toggle="tooltip" data-placement="bottom" title="" data-original-title="OP"></i> {% endif %}
|
||||
{% if c.is_bot %}<i class="fad fa-robot text-info" data-toggle="tooltip" data-placement="bottom" title="" data-original-title="Bot"></i> {% endif %}
|
||||
{% if c.is_blocking %}<i class="fas fa-user-minus text-warning" data-toggle="tooltip" data-placement="bottom" title="" data-original-title="{% if v and v.admin_level >= 2 %}You're blocking this user, but you can see this comment because {{'it\'s an admin comment' if c.distinguish_level else 'you\'re an admin'}}.{% else %}Comment author is banned{% endif %}"></i> {% endif %}
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
{% extends "default.html" %}
|
||||
|
||||
{% block title %}
|
||||
<title>Drama - Contact</title>
|
||||
<meta name="description" content="Contact Drama Admins">
|
||||
<title>{{"SITE_NAME" | app_config}} - Contact</title>
|
||||
<meta name="description" content="Contact {{"SITE_NAME" | app_config}} Admins">
|
||||
{% endblock %}
|
||||
|
||||
|
||||
|
@ -31,10 +31,10 @@
|
|||
</div>
|
||||
{% endif %}
|
||||
|
||||
<h1 class="article-title">Contact Drama Admins</h1>
|
||||
<h1 class="article-title">Contact {{"SITE_NAME" | app_config}} Admins</h1>
|
||||
{% if v and v.is_activated and not v.is_suspended %}
|
||||
|
||||
<p>Use this form to contact Drama Admins.</p>
|
||||
<p>Use this form to contact {{"SITE_NAME" | app_config}} Admins.</p>
|
||||
|
||||
<label class="mt-3">Your Email</label>
|
||||
<input class="form-control" value="{{v.email}}" readonly="readonly" disabled>
|
||||
|
@ -50,7 +50,7 @@
|
|||
|
||||
{% elif v and v.is_suspended %}
|
||||
|
||||
<p>Your Drama account has been suspended. You are not permitted to use this form.</p>
|
||||
<p>Your {{"SITE_NAME" | app_config}} account has been suspended. You are not permitted to use this form.</p>
|
||||
|
||||
|
||||
{% elif v %}
|
||||
|
|
|
@ -799,10 +799,10 @@
|
|||
<link rel="icon" type="image/png" href="/assets/images/favicon.png">
|
||||
|
||||
{% block title %}
|
||||
<title>Drama</title>
|
||||
<title>{{"SITE_NAME" | app_config}}</title>
|
||||
|
||||
<meta property="og:type" content="article" />
|
||||
<meta property="og:title" content="Drama" />
|
||||
<meta property="og:title" content="{{"SITE_NAME" | app_config}}" />
|
||||
<meta property="og:site_name" content="{{request.host}}" />
|
||||
<meta property="og:image" content="{{'/assets/images/preview.png' | full_link}}" />
|
||||
<meta property="og:url" content="{{request.path | full_link}}">
|
||||
|
@ -812,7 +812,7 @@
|
|||
|
||||
<meta name="twitter:card" content="summary_large_image"/>
|
||||
<meta name="twitter:site" content="@drama">
|
||||
<meta name="twitter:title" content="Drama" />
|
||||
<meta name="twitter:title" content="{{"SITE_NAME" | app_config}}" />
|
||||
<meta name="twitter:creator" content="@drama">
|
||||
<meta name="twitter:description" content="Dude bussy lmao" />
|
||||
<meta name="twitter:image" content="/assets/images/preview.png" />
|
||||
|
@ -835,8 +835,8 @@
|
|||
<link rel="manifest" href="/assets/manifest.json">
|
||||
<link rel="mask-icon" href="/assets/images/favicon.png" color="#FF66AC">
|
||||
<link rel="shortcut icon" href="/assets/images/favicon.png">
|
||||
<meta name="apple-mobile-web-app-title" content="Drama">
|
||||
<meta name="application-name" content="Drama">
|
||||
<meta name="apple-mobile-web-app-title" content="{{"SITE_NAME" | app_config}}">
|
||||
<meta name="application-name" content="{{"SITE_NAME" | app_config}}">
|
||||
<meta name="msapplication-TileColor" content="#FF66AC">
|
||||
<meta name="msapplication-config" content="/assets/images/browserconfig.xml">
|
||||
<meta name="theme-color" content="#FF66AC">
|
||||
|
@ -971,7 +971,7 @@
|
|||
|
||||
|
||||
|
||||
<!-- Drama CSS -->
|
||||
<!-- {{"SITE_NAME" | app_config}} CSS -->
|
||||
|
||||
{% block stylesheets %}
|
||||
|
||||
|
@ -1128,7 +1128,7 @@
|
|||
{% if request.path=='/' and g.system and g.timestamp>session.get('tooltip_last_dismissed',0)+60*60*24 and (not g.system.endswith('/chrome') and not g.system.endswith('/other')) and not g.system.endswith('/webview') %}
|
||||
|
||||
<div id="mobile-prompt-container" class="fixed-bottom">
|
||||
<div id="mobile-prompt" href="javascript:void(0)" data-toggle="tooltip" data-container="#mobile-prompt-container" data-placement="top" data-trigger="click" title="Install the Drama webapp by saving this page to your home screen!"></div>
|
||||
<div id="mobile-prompt" href="javascript:void(0)" data-toggle="tooltip" data-container="#mobile-prompt-container" data-placement="top" data-trigger="click" title="Install the {{"SITE_NAME" | app_config}} webapp by saving this page to your home screen!"></div>
|
||||
</div>
|
||||
{% endif %}
|
||||
|
||||
|
|
|
@ -15,7 +15,7 @@
|
|||
<i class="fad fa-trash-alt text-muted" style="font-size: 3.5rem;"></i>
|
||||
</div>
|
||||
|
||||
<p>Your comment will be removed everywhere on Drama. This action cannot be undone.</p>
|
||||
<p>Your comment will be removed everywhere on {{"SITE_NAME" | app_config}}. This action cannot be undone.</p>
|
||||
</div>
|
||||
|
||||
<div class="modal-footer">
|
||||
|
|
|
@ -22,9 +22,9 @@
|
|||
|
||||
<div class="h4 d-md-none">Delete post?</div>
|
||||
|
||||
<p class="d-none d-md-block">Your post will be removed everywhere on Drama.</p>
|
||||
<p class="d-none d-md-block">Your post will be removed everywhere on {{"SITE_NAME" | app_config}}.</p>
|
||||
|
||||
<p class="text-muted d-md-none">Your post will be removed everywhere on Drama.</p>
|
||||
<p class="text-muted d-md-none">Your post will be removed everywhere on {{"SITE_NAME" | app_config}}.</p>
|
||||
|
||||
<div class="d-md-none">
|
||||
|
||||
|
|
|
@ -25,7 +25,7 @@
|
|||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
<p>Please note that Drama will never ask you for your email, password, or two-factor token via email, text, or phone.</p>
|
||||
<p>Please note that {{"SITE_NAME" | app_config}} will never ask you for your email, password, or two-factor token via email, text, or phone.</p>
|
||||
<table class="body-sub" role="presentation">
|
||||
<tr>
|
||||
<td>
|
||||
|
|
|
@ -433,7 +433,7 @@
|
|||
<![endif]-->
|
||||
</head>
|
||||
<body>
|
||||
<span class="preheader">{% block preheader %}Thanks for joining Drama! Please take a sec to verify the email you used to sign up.{% endblock %}</span>
|
||||
<span class="preheader">{% block preheader %}Thanks for joining {{"SITE_NAME" | app_config}}! Please take a sec to verify the email you used to sign up.{% endblock %}</span>
|
||||
<table class="email-wrapper" width="100%" cellpadding="0" cellspacing="0" role="presentation">
|
||||
<tr>
|
||||
<td align="center">
|
||||
|
@ -441,7 +441,7 @@
|
|||
<tr>
|
||||
<td class="email-masthead">
|
||||
<a href="/" class="f-fallback email-masthead_name">
|
||||
Drama
|
||||
{{"SITE_NAME" | app_config}}
|
||||
</a>
|
||||
</td>
|
||||
</tr>
|
||||
|
|
|
@ -2,10 +2,10 @@
|
|||
|
||||
{% block title %}Verify Your Email{% endblock %}</h1>
|
||||
|
||||
{% block preheader %}Verify your new Drama email.{% endblock %}
|
||||
{% block preheader %}Verify your new {{"SITE_NAME" | app_config}} email.{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<p>You told us you wanted to change your Drama account email. To finish this process, please verify your new email address:</p>
|
||||
<p>You told us you wanted to change your {{"SITE_NAME" | app_config}} account email. To finish this process, please verify your new email address:</p>
|
||||
<!-- Action -->
|
||||
<table class="body-action" align="center" width="100%" cellpadding="0" cellspacing="0" role="presentation">
|
||||
<tr>
|
||||
|
@ -45,7 +45,7 @@
|
|||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
<p>Please note that Drama will never ask you for your email, password, or two-factor token via email, text, or phone.</p>
|
||||
<p>Please note that {{"SITE_NAME" | app_config}} will never ask you for your email, password, or two-factor token via email, text, or phone.</p>
|
||||
<table class="body-sub" role="presentation">
|
||||
<tr>
|
||||
<td>
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
{% extends "email/default.html" %}
|
||||
|
||||
{% block title %}Welcome to Drama!{% endblock %}</h1>
|
||||
{% block title %}Welcome to {{"SITE_NAME" | app_config}}!{% endblock %}</h1>
|
||||
|
||||
{% block content %}
|
||||
<p>Thanks for joining Drama. We’re happy to have you on board. To get the most out of Drama, please verify your account email:</p>
|
||||
<p>Thanks for joining {{"SITE_NAME" | app_config}}. We’re happy to have you on board. To get the most out of {{"SITE_NAME" | app_config}}, please verify your account email:</p>
|
||||
<!-- Action -->
|
||||
<table class="body-action" align="center" width="100%" cellpadding="0" cellspacing="0" role="presentation">
|
||||
<tr>
|
||||
|
@ -43,7 +43,7 @@
|
|||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
<p>Please note that Drama will never ask you for your email, password, or two-factor token via email, text, or phone.</p>
|
||||
<p>Please note that {{"SITE_NAME" | app_config}} will never ask you for your email, password, or two-factor token via email, text, or phone.</p>
|
||||
<!-- Sub copy -->
|
||||
<table class="body-sub" role="presentation">
|
||||
<tr>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
{% extends "email/default.html" %}
|
||||
|
||||
{% block title %}Reset Your Password{% endblock %}
|
||||
{% block preheader %}Reset your Drama password.{% endblock %}
|
||||
{% block preheader %}Reset your {{"SITE_NAME" | app_config}} password.{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<p>To reset your password, click the button below:</p>
|
||||
|
|
|
@ -16,8 +16,8 @@
|
|||
<link rel="manifest" href="/assets/manifest.json">
|
||||
<link rel="mask-icon" href="/assets/images/favicon.png" color="#FF66AC">
|
||||
<link rel="shortcut icon" href="/assets/images/favicon.png">
|
||||
<meta name="apple-mobile-web-app-title" content="Drama">
|
||||
<meta name="application-name" content="Drama">
|
||||
<meta name="apple-mobile-web-app-title" content="{{"SITE_NAME" | app_config}}">
|
||||
<meta name="application-name" content="{{"SITE_NAME" | app_config}}">
|
||||
<meta name="msapplication-TileColor" content="#FF66AC">
|
||||
<meta name="msapplication-config" content="/assets/images/browserconfig.xml">
|
||||
<meta name="theme-color" content="#FF66AC">
|
||||
|
|
|
@ -21,9 +21,9 @@
|
|||
<link rel="apple-touch-icon" href="/assets/favicon.png">
|
||||
<meta name="apple-mobile-web-app-capable" content="yes">
|
||||
<meta name="format-detection" content="telephone=no">
|
||||
<meta name="apple-mobile-web-app-title" content="Drama">
|
||||
<meta name="apple-mobile-web-app-title" content="{{"SITE_NAME" | app_config}}">
|
||||
|
||||
<!-- Drama CSS -->
|
||||
<!-- {{"SITE_NAME" | app_config}} CSS -->
|
||||
|
||||
{% if v %}
|
||||
<link rel="stylesheet" href="/assets/style/{{v.theme}}_{{v.themecolor}}.css">
|
||||
|
@ -83,7 +83,7 @@
|
|||
<i class="fad fa-fire fa-stack-1x text-danger"></i>
|
||||
</span>
|
||||
<h1 class="h5">503 Service Unavailable</h1>
|
||||
<p class="text-muted">rDrama is unavailable.</p>
|
||||
<p class="text-muted">r{{"SITE_NAME" | app_config}} is unavailable.</p>
|
||||
<p class="text-muted">HI IT'S CARP AGAIN<BR>I'm like 95% sure this error means Aevann is restarting the server to apply a change. But I think that's also 520/521? What causes a 503? No one knows. Wait like a minute (maybe two) and see if it's still happening. It shouldn't. Good luck!</p>
|
||||
<button class="btn btn-primary" onclick="window.location.reload()">
|
||||
Refresh
|
||||
|
|
|
@ -1,10 +1,10 @@
|
|||
{% extends "authforms.html" %}
|
||||
|
||||
{% block pagetitle %}Drama Password Reset{% endblock %}
|
||||
{% block pagetitle %}{{"SITE_NAME" | app_config}} Password Reset{% endblock %}
|
||||
|
||||
{% block authtitle %}Reset your password.{% endblock %}
|
||||
|
||||
{% block authtext %}If there's an email address associated with your account, you can use it to recover your Drama account and change your password.{% endblock %}
|
||||
{% block authtext %}If there's an email address associated with your account, you can use it to recover your {{"SITE_NAME" | app_config}} account and change your password.{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
{% extends "default.html" %}
|
||||
{% block title %}
|
||||
<title>Drama - Formatting</title>
|
||||
<meta name="description" content="Drama Formatting">
|
||||
<title>{{"SITE_NAME" | app_config}} - Formatting</title>
|
||||
<meta name="description" content="{{"SITE_NAME" | app_config}} Formatting">
|
||||
{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
|
@ -12,7 +12,7 @@
|
|||
{% filter markdown %}
|
||||
# Formatting
|
||||
|
||||
On Drama, you can use Markdown formatting.
|
||||
On {{"SITE_NAME" | app_config}}, you can use Markdown formatting.
|
||||
|
||||
|
||||
## Inline formatting
|
||||
|
@ -49,8 +49,8 @@ On Drama, you can use Markdown formatting.
|
|||
</tr>
|
||||
<tr>
|
||||
<td>Links</td>
|
||||
<td>[Drama]({{request.host_url}})</td>
|
||||
<td><a href="{{request.host_url}}">Drama</a></td>
|
||||
<td>[{{"SITE_NAME" | app_config}}]({{request.host_url}})</td>
|
||||
<td><a href="{{request.host_url}}">{{"SITE_NAME" | app_config}}</a></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Emojis</td>
|
||||
|
@ -132,8 +132,8 @@ We also have some custom hooks for mentioning users and subreddits. Note that th
|
|||
</tr>
|
||||
<tr>
|
||||
<td>Subreddit Mention</td>
|
||||
<td>r/Drama</td>
|
||||
<td><a class="d-inline-block" href="https://www.reddit.com/r/Drama/">r/Drama</a></td>
|
||||
<td>r/{{"SITE_NAME" | app_config}}</td>
|
||||
<td><a class="d-inline-block" href="https://www.reddit.com/r/{{"SITE_NAME" | app_config}}/">r/{{"SITE_NAME" | app_config}}</a></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Redditor Mention</td>
|
||||
|
|
|
@ -85,7 +85,7 @@
|
|||
<div><img src="{{v.profile_url}}" class="profile-pic-35"></div>
|
||||
<div class="text-left pl-2">
|
||||
<div style="color: #{{v.namecolor}}" class="text-small font-weight-bold {% if v.animatedname %}{% if v.patron %}patron{% else %}leaderboard{% endif %}{% endif %}">{{v.username}}</div>
|
||||
<div class="text-small-extra text-purple"><i class="fad fa-diamond mr-1"></i>{{v.dramacoins}} Dramacoins</div>
|
||||
<div class="text-small-extra text-purple"><i class="fad fa-diamond mr-1"></i>{{v.dramacoins}} {{"SITE_NAME" | app_config}}coins</div>
|
||||
</div>
|
||||
</div>
|
||||
</a>
|
||||
|
@ -102,10 +102,10 @@
|
|||
</div>
|
||||
<hr class="my-2">
|
||||
<div class="px-2">
|
||||
<a class="dropdown-item" href="/assets/Drama.apk"><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"><i class="fab fa-android fa-fw text-left mr-3"></i>Android app</a>
|
||||
<a class="dropdown-item" href="/post/1xq/posting-guidelines-policies-legal-shit"><i class="fas fa-balance-scale fa-fw text-left mr-3"></i>Rules</a>
|
||||
<a class="dropdown-item" href="/changelog"><i class="fas fa-clipboard fa-fw text-left mr-3"></i>Changelog</a>
|
||||
<a class="dropdown-item" href="https://github.com/Aevann1/Drama"><i class="fab fa-github fa-fw text-left mr-3"></i>Source code</a>
|
||||
<a class="dropdown-item" href="https://github.com/Aevann1/{{"SITE_NAME" | app_config}}"><i class="fab fa-github fa-fw text-left mr-3"></i>Source code</a>
|
||||
<a class="dropdown-item" href="/discord"><i class="fab fa-discord fa-fw text-left mr-3"></i>Discord</a>
|
||||
<a class="dropdown-item" href="https://rdrama.gumroad.com/l/tfcvri"><i class="fas fa-dollar-sign fa-fw text-left mr-3"></i>Gumroad</a>
|
||||
<a class="dropdown-item" href="/archives"><i class="fas fa-book fa-fw text-left mr-3"></i>Subreddit Archives</a>
|
||||
|
@ -158,9 +158,9 @@
|
|||
<li class="nav-item">
|
||||
<a class="nav-link" href="/settings"><i class="fas fa-cog fa-fw mr-3"></i>My account</a>
|
||||
</li>
|
||||
<li class="nav-item"><a class="nav-link" href="/assets/Drama.apk"><i class="fab fa-android fa-fw mr-3"></i>Android app</a></li>
|
||||
<li class="nav-item"><a class="nav-link" href="/assets/{{"SITE_NAME" | app_config}}.apk"><i class="fab fa-android fa-fw mr-3"></i>Android app</a></li>
|
||||
<li class="nav-item"><a class="nav-link" href="/post/1xq/posting-guidelines-policies-legal-shit"><i class="fas fa-balance-scale fa-fw mr-3"></i>Rules</a></li>
|
||||
<li class="nav-item"><a class="nav-link" href="https://github.com/Aevann1/Drama"><i class="fab fa-github fa-fw mr-3"></i>Source code</a></li>
|
||||
<li class="nav-item"><a class="nav-link" href="https://github.com/Aevann1/{{"SITE_NAME" | app_config}}"><i class="fab fa-github fa-fw mr-3"></i>Source code</a></li>
|
||||
<li class="nav-item"><a class="nav-link" href="/discord"><i class="fab fa-discord fa-fw mr-3"></i>Discord</a></li>
|
||||
<li class="nav-item"><a class="nav-link" href="https://rdrama.gumroad.com/l/tfcvri"><i class="fas fa-dollar-sign fa-fw mr-3"></i>Gumroad</a></li>
|
||||
<li class="nav-item"><a class="nav-link" href="/archives"><i class="fas fa-book fa-fw mr-3"></i>Subreddit Archives</a></li>
|
||||
|
|
|
@ -6,11 +6,11 @@
|
|||
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
|
||||
<meta name="description" content="Sign in to Drama">
|
||||
<meta name="description" content="Sign in to {{"SITE_NAME" | app_config}}">
|
||||
<meta name="author" content="">
|
||||
|
||||
{% block title %}
|
||||
<title>Login - Drama</title>
|
||||
<title>Login - {{"SITE_NAME" | app_config}}</title>
|
||||
{% endblock %}
|
||||
|
||||
<link href="https://fonts.googleapis.com/css?family=Open+Sans:400,600&display=swap" rel="stylesheet">
|
||||
|
@ -26,7 +26,7 @@
|
|||
integrity="sha384-L469/ELG4Bg9sDQbl0hvjMq8pOcqFgkSpwhwnslzvVVGpDjYJ6wJJyYjvG3u8XW7"
|
||||
crossorigin="anonymous"></script>
|
||||
|
||||
<!-- Drama CSS -->
|
||||
<!-- {{"SITE_NAME" | app_config}} CSS -->
|
||||
<link rel="stylesheet" href="/assets/style/dark_ff66ac.css">
|
||||
|
||||
</head>
|
||||
|
@ -55,7 +55,7 @@
|
|||
<div class="col-10 col-md-7">
|
||||
|
||||
<div class="mb-5">
|
||||
<a href="/" class="text-decoration-none"><span class="h3 text-primary">Drama</span></a>
|
||||
<a href="/" class="text-decoration-none"><span class="h3 text-primary">{{"SITE_NAME" | app_config}}</span></a>
|
||||
</div>
|
||||
|
||||
{% block content %}
|
||||
|
|
|
@ -6,10 +6,10 @@
|
|||
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
|
||||
<meta name="description" content="Sign in to Drama">
|
||||
<meta name="description" content="Sign in to {{"SITE_NAME" | app_config}}">
|
||||
<meta name="author" content="">
|
||||
|
||||
<title>2-Step Login - Drama</title>
|
||||
<title>2-Step Login - {{"SITE_NAME" | app_config}}</title>
|
||||
|
||||
<!-- Bootstrap core CSS -->
|
||||
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css"
|
||||
|
@ -22,7 +22,7 @@
|
|||
integrity="sha384-L469/ELG4Bg9sDQbl0hvjMq8pOcqFgkSpwhwnslzvVVGpDjYJ6wJJyYjvG3u8XW7"
|
||||
crossorigin="anonymous"></script>
|
||||
|
||||
<!-- Drama CSS -->
|
||||
<!-- {{"SITE_NAME" | app_config}} CSS -->
|
||||
<link rel="stylesheet" href="/assets/style/dark_ff66ac.css">
|
||||
|
||||
</head>
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{% extends "authforms.html" %}
|
||||
|
||||
{% block pagetitle %}Drama Two-Factor Removal{% endblock %}
|
||||
{% block pagetitle %}{{"SITE_NAME" | app_config}} Two-Factor Removal{% endblock %}
|
||||
|
||||
{% block authtitle %}Remove the two-factor authentication from your account.{% endblock %}
|
||||
|
||||
|
|
|
@ -34,7 +34,7 @@
|
|||
|
||||
<input type="submit" class="btn btn-primary" id="auth_button" value="Authorize {{application.app_name}}">
|
||||
|
||||
<a href="/" class="btn btn-secondary">No, back to Drama</a>
|
||||
<a href="/" class="btn btn-secondary">No, back to {{"SITE_NAME" | app_config}}</a>
|
||||
|
||||
</form>
|
||||
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{% extends "authforms.html" %}
|
||||
|
||||
{% block pagetitle %}Drama Password Reset{% endblock %}
|
||||
{% block pagetitle %}{{"SITE_NAME" | app_config}} Password Reset{% endblock %}
|
||||
|
||||
{% block authtitle %}Change your password.{% endblock %}
|
||||
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
{% block pagetype %}search{% endblock %}
|
||||
|
||||
{% block title %}
|
||||
<title>Search for "{{query}}" - Drama"</title> <!-- include dynamic jinja-generated text in title -->
|
||||
<title>Search for "{{query}}" - {{"SITE_NAME" | app_config}}"</title> <!-- include dynamic jinja-generated text in title -->
|
||||
<meta name="description" content="{{total}} result{{'s' if total != 1 else ''}}">
|
||||
{% endblock %}
|
||||
|
||||
|
|
|
@ -49,9 +49,9 @@
|
|||
|
||||
<link rel="icon" type="image/png" href="/assets/images/favicon.png">
|
||||
|
||||
<title>{% block pagetitle %}Settings - Drama{% endblock %}</title>
|
||||
<title>{% block pagetitle %}Settings - {{"SITE_NAME" | app_config}}{% endblock %}</title>
|
||||
<meta property="og:type" content="article" />
|
||||
<meta property="og:title" content="Drama" />
|
||||
<meta property="og:title" content="{{"SITE_NAME" | app_config}}" />
|
||||
<meta property="og:site_name" content="{{request.host}}" />
|
||||
<meta property="og:image" content="{{'/assets/images/preview.png' | full_link}}" />
|
||||
<meta property="og:url" content="{{request.host}}">
|
||||
|
@ -61,7 +61,7 @@
|
|||
|
||||
<meta name="twitter:card" content="summary_large_image"/>
|
||||
<meta name="twitter:site" content="@drama">
|
||||
<meta name="twitter:title" content="Drama" />
|
||||
<meta name="twitter:title" content="{{"SITE_NAME" | app_config}}" />
|
||||
<meta name="twitter:creator" content="@drama">
|
||||
<meta name="twitter:description" content="Dude bussy lmao" />
|
||||
<meta name="twitter:image" content="{{'/assets/images/preview.png' | full_link}}" />
|
||||
|
@ -72,7 +72,7 @@
|
|||
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css"
|
||||
integrity="sha384-Gn5384xqQ1aoWXA+058RXPxPg6fy4IWvTNh0E263XmFcJlSAwiGgFAW/dAiS6JXm" crossorigin="anonymous">
|
||||
|
||||
<!-- Drama CSS -->
|
||||
<!-- {{"SITE_NAME" | app_config}} CSS -->
|
||||
|
||||
<link rel="stylesheet" href="/assets/style/{{v.theme}}_{{v.themecolor}}.css">
|
||||
{% if v.agendaposter %}<link rel="stylesheet" href="/assets/style/agendaposter.css">{% elif v.css %}<link rel="stylesheet" href="/@{{v.username}}/css">{% endif %}
|
||||
|
|
|
@ -12,7 +12,7 @@
|
|||
<link rel="icon" type="image/png" href="/assets/images/favicon.png">
|
||||
|
||||
<meta property="og:type" content="article" />
|
||||
<meta property="og:title" content="Drama" />
|
||||
<meta property="og:title" content="{{"SITE_NAME" | app_config}}" />
|
||||
<meta property="og:site_name" content="{{request.host}}" />
|
||||
<meta property="og:image" content="{{'/assets/images/preview.png' | full_link}}" />
|
||||
<meta property="og:url" content="{{request.path | full_link}}">
|
||||
|
@ -22,7 +22,7 @@
|
|||
|
||||
<meta name="twitter:card" content="summary_large_image"/>
|
||||
<meta name="twitter:site" content="@drama">
|
||||
<meta name="twitter:title" content="Drama" />
|
||||
<meta name="twitter:title" content="{{"SITE_NAME" | app_config}}" />
|
||||
<meta name="twitter:creator" content="@drama">
|
||||
<meta name="twitter:description" content="Dude bussy lmao" />
|
||||
<meta name="twitter:image" content="/assets/images/preview.png" />
|
||||
|
@ -30,7 +30,7 @@
|
|||
|
||||
|
||||
|
||||
<title>{% block pagetitle %}Drama{% endblock %}</title>
|
||||
<title>{% block pagetitle %}{{"SITE_NAME" | app_config}}{% endblock %}</title>
|
||||
|
||||
<link href="https://fonts.googleapis.com/css?family=Open+Sans:400,600&display=swap" rel="stylesheet">
|
||||
|
||||
|
@ -38,7 +38,7 @@
|
|||
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css"
|
||||
integrity="sha384-Gn5384xqQ1aoWXA+058RXPxPg6fy4IWvTNh0E263XmFcJlSAwiGgFAW/dAiS6JXm" crossorigin="anonymous">
|
||||
|
||||
<!-- Drama CSS -->
|
||||
<!-- {{"SITE_NAME" | app_config}} CSS -->
|
||||
|
||||
{% if v %}
|
||||
<link id="css-link" rel="stylesheet" href="/assets/style/{{v.theme}}_{{v.themecolor}}.css">
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
{% extends "settings.html" %}
|
||||
|
||||
{% block title %}
|
||||
<title>Drama - FAQ</title>
|
||||
<meta name="description" content="Drama FAQ">
|
||||
<title>{{"SITE_NAME" | app_config}} - FAQ</title>
|
||||
<meta name="description" content="{{"SITE_NAME" | app_config}} FAQ">
|
||||
{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{% extends "settings.html" %}
|
||||
|
||||
{% block pagetitle %}Block Settings - Drama{% endblock %}
|
||||
{% block pagetitle %}Block Settings - {{"SITE_NAME" | app_config}}{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{% extends "settings.html" %}
|
||||
|
||||
{% block pagetitle %}Custom CSS - Drama{% endblock %}
|
||||
{% block pagetitle %}Custom CSS - {{"SITE_NAME" | app_config}}{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{% extends "settings.html" %}
|
||||
|
||||
{% block pagetitle %}Profile Settings - Drama{% endblock %}
|
||||
{% block pagetitle %}Profile Settings - {{"SITE_NAME" | app_config}}{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{% extends "settings.html" %}
|
||||
|
||||
{% block pagetitle %}Profile Settings - Drama{% endblock %}
|
||||
{% block pagetitle %}Profile Settings - {{"SITE_NAME" | app_config}}{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
{% include "emoji_modal.html" %}
|
||||
|
@ -210,10 +210,10 @@
|
|||
<input type="submit" class="btn btn-secondary text-capitalize mr-2 mb-0 mt-2" value="Disconnect Discord">
|
||||
</form>
|
||||
|
||||
<div class="text-small-extra text-muted mt-3">Disconnecting your Discord account will remove you from the Drama Discord server.</div>
|
||||
<div class="text-small-extra text-muted mt-3">Disconnecting your Discord account will remove you from the {{"SITE_NAME" | app_config}} Discord server.</div>
|
||||
{% else %}
|
||||
<a href="/discord" class="btn btn-primary">Link Discord</a>
|
||||
<div class="text-small-extra text-muted mt-3">Link your Discord account to join the Drama Discord server.</div>
|
||||
<div class="text-small-extra text-muted mt-3">Link your Discord account to join the {{"SITE_NAME" | app_config}} Discord server.</div>
|
||||
{% endif %}
|
||||
|
||||
</div>
|
||||
|
@ -225,7 +225,7 @@
|
|||
|
||||
<h2 class="h5" name="referral">RSS Feed</h2>
|
||||
|
||||
<p class="text-small text-muted">Subscribe to the Drama RSS feed.</p>
|
||||
<p class="text-small text-muted">Subscribe to the {{"SITE_NAME" | app_config}} RSS feed.</p>
|
||||
|
||||
<div class="settings-section rounded">
|
||||
|
||||
|
@ -245,7 +245,7 @@
|
|||
|
||||
<h2 class="h5" id="bio" name="bio">Your Profile</h2>
|
||||
|
||||
<p class="text-small text-muted">Edit how others see you on Drama.</p>
|
||||
<p class="text-small text-muted">Edit how others see you on {{"SITE_NAME" | app_config}}.</p>
|
||||
|
||||
<div class="settings-section rounded mb-0">
|
||||
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{% extends "settings.html" %}
|
||||
|
||||
{% block pagetitle %}Custom profilecss - Drama{% endblock %}
|
||||
{% block pagetitle %}Custom profilecss - {{"SITE_NAME" | app_config}}{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{% extends "settings.html" %}
|
||||
|
||||
{% block pagetitle %}Security Settings - Drama{% endblock %}
|
||||
{% block pagetitle %}Security Settings - {{"SITE_NAME" | app_config}}{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
|
@ -185,7 +185,7 @@
|
|||
|
||||
<h2 class="h5">Log Out Everywhere</h2>
|
||||
|
||||
<p class="text-small text-muted">Log all other devices out of your Drama account.</p>
|
||||
<p class="text-small text-muted">Log all other devices out of your {{"SITE_NAME" | app_config}} account.</p>
|
||||
|
||||
<div class="settings-section rounded">
|
||||
|
||||
|
@ -241,7 +241,7 @@
|
|||
<div class="modal-dialog modal-dialog-centered" role="document">
|
||||
<div class="modal-content">
|
||||
<div class="modal-header">
|
||||
<h5 class="modal-title">Delete your Drama account</h5>
|
||||
<h5 class="modal-title">Delete your {{"SITE_NAME" | app_config}} account</h5>
|
||||
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
|
||||
<span aria-hidden="true"><i class="far fa-times"></i></span>
|
||||
</button>
|
||||
|
@ -283,7 +283,7 @@
|
|||
|
||||
<div class="w-lg-100">
|
||||
|
||||
<textarea class="form-control mb-2" id="delete-reason" name="delete_reason" placeholder="Tell us why you're leaving Drama. (Optional)"></textarea>
|
||||
<textarea class="form-control mb-2" id="delete-reason" name="delete_reason" placeholder="Tell us why you're leaving {{"SITE_NAME" | app_config}}. (Optional)"></textarea>
|
||||
|
||||
</div>
|
||||
|
||||
|
|
|
@ -69,7 +69,7 @@
|
|||
<meta name="description" content="Sign up in under 27 seconds.">
|
||||
<meta name="author" content="">
|
||||
<meta property="og:type" content="article" />
|
||||
<meta property="og:title" content="Drama" />
|
||||
<meta property="og:title" content="{{"SITE_NAME" | app_config}}" />
|
||||
<meta property="og:site_name" content="{{request.host}}" />
|
||||
<meta property="og:image" content="{{'/assets/images/preview.png' | full_link}}" />
|
||||
<meta property="og:url" content="{{request.host}}">
|
||||
|
@ -79,13 +79,13 @@
|
|||
|
||||
<meta name="twitter:card" content="summary_large_image"/>
|
||||
<meta name="twitter:site" content="@drama">
|
||||
<meta name="twitter:title" content="Drama" />
|
||||
<meta name="twitter:title" content="{{"SITE_NAME" | app_config}}" />
|
||||
<meta name="twitter:creator" content="@drama">
|
||||
<meta name="twitter:description" content="Sign up now! Dude bussy lmao" />
|
||||
<meta name="twitter:image" content="{{'/assets/images/preview.png' | full_link}}" />
|
||||
<meta name="twitter:url" content="{{request.host}}" />
|
||||
|
||||
<title>{% if ref_user %}{{ref_user.username}} invites you to Drama{% else %}Sign up - Drama{% endif %}</title>
|
||||
<title>{% if ref_user %}{{ref_user.username}} invites you to {{"SITE_NAME" | app_config}}{% else %}Sign up - {{"SITE_NAME" | app_config}}{% endif %}</title>
|
||||
|
||||
<link href="https://fonts.googleapis.com/css?family=Open+Sans:400,600&display=swap" rel="stylesheet">
|
||||
|
||||
|
@ -100,7 +100,7 @@
|
|||
integrity="sha384-L469/ELG4Bg9sDQbl0hvjMq8pOcqFgkSpwhwnslzvVVGpDjYJ6wJJyYjvG3u8XW7"
|
||||
crossorigin="anonymous"></script>
|
||||
|
||||
<!-- Drama CSS -->
|
||||
<!-- {{"SITE_NAME" | app_config}} CSS -->
|
||||
<link rel="stylesheet" href="/assets/style/dark_ff66ac.css">
|
||||
|
||||
</head>
|
||||
|
@ -129,14 +129,14 @@
|
|||
<div class="col-10 col-md-7">
|
||||
|
||||
<div class="mb-3">
|
||||
<a href="/" class="text-decoration-none"><span class="h3 text-primary">Drama</span></a>
|
||||
<a href="/" class="text-decoration-none"><span class="h3 text-primary">{{"SITE_NAME" | app_config}}</span></a>
|
||||
</div>
|
||||
|
||||
<div id="register-form" class="">
|
||||
|
||||
{% if ref_user %}
|
||||
<h1 class="h2">@{{ref_user.username}} has invited you!</h1>
|
||||
<p class="text-muted mb-md-2">Looks like someone wants you to join Drama.</p>
|
||||
<p class="text-muted mb-md-2">Looks like someone wants you to join {{"SITE_NAME" | app_config}}.</p>
|
||||
{% else %}
|
||||
<h1 class="h2">Create your account.</h1>
|
||||
<p class="text-muted mb-md-2">No email address required.</p>
|
||||
|
@ -223,7 +223,7 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Drama JS -->
|
||||
<!-- {{"SITE_NAME" | app_config}} JS -->
|
||||
|
||||
<script src="/assets/js/all_js.js"></script>
|
||||
|
||||
|
|
|
@ -9,7 +9,7 @@
|
|||
<meta name="description" content="Sign up in under 27 seconds.">
|
||||
<meta name="author" content="">
|
||||
<meta property="og:type" content="article" />
|
||||
<meta property="og:title" content="Drama" />
|
||||
<meta property="og:title" content="{{"SITE_NAME" | app_config}}" />
|
||||
<meta property="og:site_name" content="{{request.host}}" />
|
||||
<meta property="og:image" content="{{'/assets/images/preview.png' | full_link}}" />
|
||||
<meta property="og:url" content="{{request.host}}">
|
||||
|
@ -19,13 +19,13 @@
|
|||
|
||||
<meta name="twitter:card" content="summary_large_image"/>
|
||||
<meta name="twitter:site" content="@drama">
|
||||
<meta name="twitter:title" content="Drama" />
|
||||
<meta name="twitter:title" content="{{"SITE_NAME" | app_config}}" />
|
||||
<meta name="twitter:creator" content="@drama">
|
||||
<meta name="twitter:description" content="Sign up now! Dude bussy lmao" />
|
||||
<meta name="twitter:image" content="{{'/assets/images/preview.png' | full_link}}" />
|
||||
<meta name="twitter:url" content="{{request.host}}" />
|
||||
|
||||
<title>{% if ref_user %}{{ref_user.username}} invites you to Drama{% else %}Drama: the open, free-speech social platform{% endif %}</title>
|
||||
<title>{% if ref_user %}{{ref_user.username}} invites you to {{"SITE_NAME" | app_config}}{% else %}{{"SITE_NAME" | app_config}}: the open, free-speech social platform{% endif %}</title>
|
||||
|
||||
<link href="https://fonts.googleapis.com/css?family=Open+Sans:400,600&display=swap" rel="stylesheet">
|
||||
|
||||
|
@ -40,7 +40,7 @@
|
|||
integrity="sha384-L469/ELG4Bg9sDQbl0hvjMq8pOcqFgkSpwhwnslzvVVGpDjYJ6wJJyYjvG3u8XW7"
|
||||
crossorigin="anonymous"></script>
|
||||
|
||||
<!-- Drama CSS -->
|
||||
<!-- {{"SITE_NAME" | app_config}} CSS -->
|
||||
<link rel="stylesheet" href="/assets/style/dark_ff66ac.css">
|
||||
|
||||
</head>
|
||||
|
@ -142,7 +142,7 @@
|
|||
});
|
||||
</script>
|
||||
|
||||
<!-- Drama JS -->
|
||||
<!-- {{"SITE_NAME" | app_config}} JS -->
|
||||
|
||||
<script src="/assets/js/all_js.js"></script>
|
||||
|
||||
|
|
|
@ -26,7 +26,7 @@
|
|||
<meta property="og:type" content="article" />
|
||||
|
||||
{% if comment_info and not comment_info.is_banned and not linked_comment.deleted_utc > 0 %}
|
||||
<title>{{'@'+comment_info.author.username}} comments on "{{title}} - Drama"</title>
|
||||
<title>{{'@'+comment_info.author.username}} comments on "{{title}} - {{"SITE_NAME" | app_config}}"</title>
|
||||
|
||||
|
||||
<meta property="og:article:author" content="{{'@'+comment_info.author.username}}" />
|
||||
|
@ -34,14 +34,14 @@
|
|||
{% if comment_info.edited_utc %}<meta property="article:modified_time" content="{{comment_info.edited_string}}" />{% endif %}
|
||||
<meta property="og:description" name="description" content="{{comment_info.body}}" />
|
||||
<meta property="og:author" name="author" content="{{'@'+comment_info.author.username}}" />
|
||||
<meta property="og:title" content="{{'@'+comment_info.author.username}} comments on {{title}} - Drama" />
|
||||
<meta property="og:title" content="{{'@'+comment_info.author.username}} comments on {{title}} - {{"SITE_NAME" | app_config}}" />
|
||||
<meta property="og:image" content="{% if p.is_image %}{{p.realurl(v)}}{% elif p.has_thumb%}{{p.thumb_url}}{% else %}{{'/assets/images/preview.png' | full_link}}{% endif %}" />
|
||||
<meta property="og:url" content="{{comment_info.permalink | full_link}}" />
|
||||
<meta property="og:site_name" content="{{request.host}}" />
|
||||
|
||||
<meta name="twitter:card" content="summary" />
|
||||
<meta name="twitter:site" content="@drama">
|
||||
<meta name="twitter:title" content="{{'@'+comment_info.author.username}} comments on {{title}} - Drama" />
|
||||
<meta name="twitter:title" content="{{'@'+comment_info.author.username}} comments on {{title}} - {{"SITE_NAME" | app_config}}" />
|
||||
<meta name="twitter:creator" content="{{'@'+comment_info.author.username}}">
|
||||
<meta name="twitter:description" content="{{comment_info.body}}" />
|
||||
<meta name="twitter:image" content="{% if p.is_image %}{{p.realurl(v)}}{% elif p.has_thumb%}{{p.thumb_url}}{% else %}{{'/assets/images/preview.png' | full_link}}{% endif %}" />
|
||||
|
@ -52,7 +52,7 @@
|
|||
{% endif %}
|
||||
|
||||
{% else %}
|
||||
<title>{{title | safe}} - Drama</title>
|
||||
<title>{{title | safe}} - {{"SITE_NAME" | app_config}}</title>
|
||||
|
||||
|
||||
<meta property="og:article:author" content="{{'@'+p.author.username}}" />
|
||||
|
@ -60,14 +60,14 @@
|
|||
{% if p.edited_utc %}<meta property="article:modified_time" content="{{p.edited_string}}" />{% endif %}
|
||||
<meta property="og:description" name="description" content="{{p.body}}" />
|
||||
<meta property="og:author" name="author" content="{{'@'+p.author.username}}" />
|
||||
<meta property="og:title" content="{{title}} - Drama" />
|
||||
<meta property="og:title" content="{{title}} - {{"SITE_NAME" | app_config}}" />
|
||||
<meta property="og:image" content="{% if p.is_image %}{{p.realurl(v)}}{% elif p.has_thumb%}{{p.thumb_url}}{% else %}{{'/assets/images/preview.png' | full_link}}{% endif %}" />
|
||||
<meta property="og:url" content="{{p.permalink | full_link}}" />
|
||||
<meta property="og:site_name" content="{{request.host}}" />
|
||||
|
||||
<meta name="twitter:card" content="summary_large_image"/>
|
||||
<meta name="twitter:site" content="@drama">
|
||||
<meta name="twitter:title" content="{{title}} - Drama" />
|
||||
<meta name="twitter:title" content="{{title}} - {{"SITE_NAME" | app_config}}" />
|
||||
<meta name="twitter:creator" content="{{'@'+p.author.username}}">
|
||||
<meta name="twitter:description" content="{{p.body}}" />
|
||||
<meta name="twitter:image" content="{% if p.is_image %}{{p.realurl(v)}}{% elif p.has_thumb %}{{p.thumb_url}}{% else %}{{'/assets/images/preview.png' | full_link}}{% endif %}" />
|
||||
|
@ -208,7 +208,7 @@
|
|||
{% if v and v.admin_level==6 and p.author.shadowbanned %}<i class="fas fa-user-times text-admin" data-toggle="tooltip" data-placement="bottom" title="Shadowbanned user"></i> {% endif %}
|
||||
{% if p.stickied %}<i class="fas fa-thumbtack fa-fw text-admin fa-rotate--45" data-toggle="tooltip" data-placement="bottom" title="Pinned post"></i> {% endif %}
|
||||
{% if p.is_pinned %}<i class="fas fa-thumbtack fa-fw text-admin fa-rotate--45" data-toggle="tooltip" data-placement="bottom" title="Pinned to profile"></i> {% endif %}
|
||||
{% if p.distinguish_level %} <i class="fas fa-broom text-admin" data-toggle="tooltip" data-placement="bottom" title="" data-original-title="Drama Badmin, speaking officially"></i> {% endif %}
|
||||
{% if p.distinguish_level %} <i class="fas fa-broom text-admin" data-toggle="tooltip" data-placement="bottom" title="" data-original-title="{{"SITE_NAME" | app_config}} Badmin, speaking officially"></i> {% endif %}
|
||||
{% if p.is_bot %} <i class="fad fa-robot text-info" data-toggle="tooltip" data-placement="bottom" data-original-title="Bot"></i>{% endif %}
|
||||
|
||||
{% if p.over_18 %}<span class="badge badge-danger text-small-extra mr-1">+18</span>{% endif %}
|
||||
|
|
|
@ -88,7 +88,7 @@
|
|||
<div class="post-meta text-left x-scroll mb-md-2">
|
||||
{% if v and v.admin_level==6 and p.author.shadowbanned %}<i class="fas fa-user-times text-admin" data-toggle="tooltip" data-placement="bottom" title="Shadowbanned user"></i> {% endif %}
|
||||
{% if p.stickied %}<i class="fas fa-thumbtack text-admin fa-rotate--45" data-toggle="tooltip" data-placement="bottom" title="Pinned post"></i> {% endif %}
|
||||
{% if p.distinguish_level %}<i class="fas fa-broom text-admin" data-toggle="tooltip" data-placement="bottom" title="" data-original-title="Drama Badmin, speaking officially"></i> {% endif %}
|
||||
{% if p.distinguish_level %}<i class="fas fa-broom text-admin" data-toggle="tooltip" data-placement="bottom" title="" data-original-title="{{"SITE_NAME" | app_config}} Badmin, speaking officially"></i> {% endif %}
|
||||
{% if p.is_pinned and request.path.startswith('/@') %}<i class="fas fa-thumbtack text-admin fa-rotate--45" data-toggle="tooltip" data-placement="bottom" title="Pinned to profile"></i> {% endif %}
|
||||
{% if p.over_18 %} <span class="badge badge-danger text-small-extra mr-1">+18</span>{% endif %}
|
||||
{% if p.is_bot %} <i class="fad fa-robot text-info" data-toggle="tooltip" data-placement="bottom" data-original-title="Bot"></i>{% endif %}
|
||||
|
|
|
@ -240,7 +240,7 @@
|
|||
{% include "gif_modal.html" %}
|
||||
|
||||
{% block title %}
|
||||
<title>Create a post - Drama</title>
|
||||
<title>Create a post - {{"SITE_NAME" | app_config}}</title>
|
||||
{% endblock %}
|
||||
|
||||
|
||||
|
@ -250,7 +250,7 @@
|
|||
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css"
|
||||
integrity="sha384-Gn5384xqQ1aoWXA+058RXPxPg6fy4IWvTNh0E263XmFcJlSAwiGgFAW/dAiS6JXm" crossorigin="anonymous">
|
||||
|
||||
<!-- Drama Board CSS -->
|
||||
<!-- {{"SITE_NAME" | app_config}} Board CSS -->
|
||||
|
||||
{% block stylesheets %}
|
||||
{% if v %}
|
||||
|
@ -407,7 +407,7 @@
|
|||
|
||||
{% endblock %}
|
||||
|
||||
<!-- Drama JS -->
|
||||
<!-- {{"SITE_NAME" | app_config}} JS -->
|
||||
|
||||
<script src="/assets/js/all_js.js"></script>
|
||||
|
||||
|
|
|
@ -18,14 +18,14 @@
|
|||
{% block pagetype %}userpage{% endblock %}
|
||||
|
||||
{% block title %}
|
||||
<title>{{u.username}}'s profile - Drama</title>
|
||||
<title>{{u.username}}'s profile - {{"SITE_NAME" | app_config}}</title>
|
||||
{% if u.is_private %}
|
||||
<meta name="robots" content="noindex">
|
||||
{% endif %}
|
||||
<meta property="og:article:author" content="@{{u.username}}" />
|
||||
<meta property="article:section" content="{{u.username}}'s profile - Drama" />
|
||||
<meta property="article:section" content="{{u.username}}'s profile - {{"SITE_NAME" | app_config}}" />
|
||||
<meta property="article:published_time" content="{{u.created_date}}" />
|
||||
<meta property="og:description" name="description" content="{{u.dramacoins}} Dramacoins - Joined {{u.created_date}} - {% if u.stored_subscriber_count >=1 and not u.is_private and not u.is_nofollow %}{{u.stored_subscriber_count}} Followers - {% endif %}{% if not u.is_private %}{{u.post_count}} Posts - {{u.comment_count}} Comments - {% endif %}{{u.bio}}" />
|
||||
<meta property="og:description" name="description" content="{{u.dramacoins}} {{"SITE_NAME" | app_config}}coins - Joined {{u.created_date}} - {% if u.stored_subscriber_count >=1 and not u.is_private and not u.is_nofollow %}{{u.stored_subscriber_count}} Followers - {% endif %}{% if not u.is_private %}{{u.post_count}} Posts - {{u.comment_count}} Comments - {% endif %}{{u.bio}}" />
|
||||
<meta property="og:author" name="author" content="@{{u.username}}" />
|
||||
<meta property="og:title" content="{{u.username}}" />
|
||||
<meta property="og:image" content="{% if u.bannerurl %}{{u.banner_url}}{% else %}{{'/assets/images/preview.png' | full_link}}{% endif %}" />
|
||||
|
@ -34,9 +34,9 @@
|
|||
|
||||
<meta name="twitter:card" content="summary_large_image"/>
|
||||
<meta name="twitter:site" content="@drama">
|
||||
<meta name="twitter:title" content="{{u.username}}'s profile - Drama" />
|
||||
<meta name="twitter:title" content="{{u.username}}'s profile - {{"SITE_NAME" | app_config}}" />
|
||||
<meta name="twitter:creator" content="@{{u.username}}">
|
||||
<meta name="twitter:description" content="{{u.dramacoins}} Dramacoins - Joined {{u.created_date}} - {% if u.stored_subscriber_count >=1 and not u.is_private and not u.is_nofollow %}{{u.stored_subscriber_count}} Followers -{% endif %} {% if not u.is_private %} {{u.post_count}} Posts - {{u.comment_count}} Comments -{% endif %} {{u.bio}}" />
|
||||
<meta name="twitter:description" content="{{u.dramacoins}} {{"SITE_NAME" | app_config}}coins - Joined {{u.created_date}} - {% if u.stored_subscriber_count >=1 and not u.is_private and not u.is_nofollow %}{{u.stored_subscriber_count}} Followers -{% endif %} {% if not u.is_private %} {{u.post_count}} Posts - {{u.comment_count}} Comments -{% endif %} {{u.bio}}" />
|
||||
<meta name="twitter:image" content="{% if u.bannerurl %}{{u.banner_url}}{% else %}{{'/assets/images/preview.png' | full_link}}{% endif %}" />
|
||||
<meta name="twitter:url" content="{{u.permalink | full_link}}" />
|
||||
{% endblock %}
|
||||
|
@ -119,7 +119,7 @@
|
|||
{% if u.customtitle %}<p class="font-weight-bolder" style="color: #{{u.titlecolor}}">{{u.customtitle | safe}}</p>{% endif %}
|
||||
|
||||
<div class="font-weight-bolder">
|
||||
<span>{{u.dramacoins}}</span> Dramacoins {% if u.stored_subscriber_count >=1 and not u.is_nofollow %}<a href="/@{{u.username}}/followers">{{u.stored_subscriber_count}} follower{{'s' if u.stored_subscriber_count != 1 else ''}}</a> {% endif %}joined <span data-toggle="tooltip" data-placement="bottom" title="" data-original-title="{{u.created_datetime}}">{{u.created_date}}</span>
|
||||
<span>{{u.dramacoins}}</span> {{"SITE_NAME" | app_config}}coins {% if u.stored_subscriber_count >=1 and not u.is_nofollow %}<a href="/@{{u.username}}/followers">{{u.stored_subscriber_count}} follower{{'s' if u.stored_subscriber_count != 1 else ''}}</a> {% endif %}joined <span data-toggle="tooltip" data-placement="bottom" title="" data-original-title="{{u.created_datetime}}">{{u.created_date}}</span>
|
||||
</div>
|
||||
{% if u.bio_html %}
|
||||
<pre></pre>
|
||||
|
@ -306,7 +306,7 @@
|
|||
{% endif %}
|
||||
{% if u.customtitle %}<p style="color: #{{u.titlecolor}}">{{u.customtitle | safe}}</p>{% endif %}
|
||||
<div class="font-weight-normal">
|
||||
<span class="font-weight-bold">{{u.dramacoins}}</span> Dramacoins {% if u.stored_subscriber_count >=1 and not u.is_nofollow %}<a href="/@{{u.username}}/followers" class="font-weight-bold">{{u.stored_subscriber_count}} follower{{'s' if u.stored_subscriber_count != 1 else ''}}</a> {% endif %}<br>joined <span data-toggle="tooltip" data-placement="bottom" title="" data-original-title="{{u.created_datetime}}" class="font-weight-bold">{{u.created_date}}</span>
|
||||
<span class="font-weight-bold">{{u.dramacoins}}</span> {{"SITE_NAME" | app_config}}coins {% if u.stored_subscriber_count >=1 and not u.is_nofollow %}<a href="/@{{u.username}}/followers" class="font-weight-bold">{{u.stored_subscriber_count}} follower{{'s' if u.stored_subscriber_count != 1 else ''}}</a> {% endif %}<br>joined <span data-toggle="tooltip" data-placement="bottom" title="" data-original-title="{{u.created_datetime}}" class="font-weight-bold">{{u.created_date}}</span>
|
||||
</div>
|
||||
{% if u.bio_html %}
|
||||
<p class="text-muted text-break">{{u.bio_html | safe}}</p>
|
||||
|
|
|
@ -47,7 +47,7 @@
|
|||
|
||||
<div class="font-weight-bold text-muted">Account Reserved</div>
|
||||
<div class="text-muted">The username @{{u.username}} has been pre-emptively reserved for: {{u.reserved}}</div>
|
||||
<div class="text-muted">If that's you, or if you are their authorized representative, please contact Drama staff in order to obtain access to this account.</div>
|
||||
<div class="text-muted">If that's you, or if you are their authorized representative, please contact {{"SITE_NAME" | app_config}} staff in order to obtain access to this account.</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
{% extends "default.html" %}
|
||||
|
||||
{% block title %}
|
||||
<title>Drama</title>
|
||||
<meta name="description" content="Drama Votes">
|
||||
<title>{{"SITE_NAME" | app_config}}</title>
|
||||
<meta name="description" content="{{"SITE_NAME" | app_config}} Votes">
|
||||
{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue