Merge pull request #3278 from johnnyvoruz/3266

Refactor Home Page Template for Improved Modularity
This commit is contained in:
Griatch 2023-10-02 20:54:09 +02:00 committed by GitHub
commit 649341a67c
6 changed files with 131 additions and 113 deletions

View file

@ -0,0 +1,14 @@
<div class="card">
<h4 class="card-header text-center">Accounts</h4>
<div class="card-body">
<p>
There's currently <strong>{{num_accounts_connected}}</strong> connected out of a total of <strong>{{num_accounts_registered}}</strong>
account{{num_accounts_registered|pluralize}} registered.
</p>
<p>
Of these, <strong>{{num_accounts_registered_recent}}</strong> were created this week, and <strong>{{num_accounts_connected_recent}}</strong>
have connected within the last seven days.
</p>
</div>
</div>

View file

@ -0,0 +1,13 @@
<div class="card">
<h4 class="card-header text-center">Database Stats</h4>
<div class="card-body py-0 px-0">
<ul class="list-group">
<li class="list-group-item">{{num_accounts_registered}} account{{num_accounts_registered|pluralize}} (+
{{num_characters}} character{{num_characters|pluralize}})
</li>
<li class="list-group-item">{{num_rooms}} room{{num_rooms|pluralize}} (+ {{num_exits}} exits)</li>
<li class="list-group-item">{{num_others}} other objects</li>
</ul>
</div>
</div>

View file

@ -0,0 +1,12 @@
<div class="card text-center">
<h4 class="card-header text-center">Evennia</h4>
<div class="card-body">
<p><a href="https://evennia.com">Evennia</a> is an open-source MUD/MU*-creation framework built in
<a href="http://python.org">Python</a>, using
<a href="http://twistedmatrix.com">Twisted</a> and
<a href="http://djangoproject.com">Django</a>.<br>
Create the text-based multiplayer-game of your dreams - as
simple or as complex as you like.</p>
</div>
</div>

View file

@ -0,0 +1,62 @@
<h1 class="card-title">Welcome to Evennia!</h1>
<hr/>
<p class="lead">The Python MUD/MU* creation system.</p>
<p>
You are looking at the start of your game's website, generated out of
the box by Evennia.<br>It can be expanded into a full-fledged home for your game.
</p>
{% if webclient_enabled %}
<p><a href="{% url 'webclient:index' %}" class="playbutton">Play in the browser!</a></p>
{% endif %}
{% if telnet_enabled %}
<p>
Telnet: <strong>{{ server_hostname }}</strong>, port
{% for port in telnet_ports %}
{% if not forloop.first and forloop.last %} or
{% elif forloop.counter != 1 %},
{% endif %}
<strong>{{ port }}</strong>
{% endfor %}
</p>
{% endif %}
{% if telnet_ssl_enabled %}
<p>
Telnet (SSL): <strong>{{ server_hostname }}</strong>, port
{% for port in telnet_ssl_ports %}
{% if not forloop.first and forloop.last %} or
{% elif forloop.counter != 1 %},
{% endif %}
<strong>{{ port }}</strong>
{% endfor %}
</p>
{% endif %}
{% if ssh_enabled %}
<p>
SSH: <strong>{{ server_hostname }}</strong>, port
{% for port in ssh_ports %}
{% if not forloop.first and forloop.last %} or
{% elif forloop.counter != 1 %},
{% endif %}
<strong>{{ port }}</strong>
{% endfor %}
</p>
{% endif %}
<p>
For more info, see the <a href="https://www.evennia.com">Evennia homepage</a> or check
out our extensive <a href="https://evennia.com/docs/latest">online documentation</a>.
</p>
<p>
Don't hesitate asking questions to the Evennia community!<br>Drop a message
in the <a href="https://github.com/evennia/evennia/discussions">Evennia forums</a>
or come say hi in the <a href="https://discord.gg/AJJpcRUhtF">Discord support channel</a>.
</p>
<p>
Evennia is Open source and can be found on <a href="https://github.com/evennia/evennia">GitHub</a>.
If you find bugs, please report them to the <a href="https://github.com/evennia/evennia/issues">Issue tracker</a>.
</p>

View file

@ -0,0 +1,11 @@
<div class="card">
<h4 class="card-header text-center">Recently Connected</h4>
<div class="card-body px-0 py-0">
<ul class="list-group">
{% for account in accounts_connected_recent %}
<li class="list-group-item">{{account.username}}&mdash;<em>{{account.last_login|timesince}} ago</em></li>
{% endfor %}
</ul>
</div>
</div>

View file

@ -7,138 +7,44 @@
{% block content %}
<div class="row">
<div class="col">
<div class="card text-center">
<div class="card-body">
<div class="col">
<div class="card text-center">
<div class="card-body">
<h1 class="card-title">Welcome to Evennia!</h1>
{% include "website/homepage/main-content.html" %}
<hr />
<p class="lead">
The Python MUD/MU* creation system.
</p>
<p>
You are looking at the start of your game's website, generated out of
the box by Evennia.<br>It can be expanded into a full-fledged home for your game.
</p>
{% if webclient_enabled %}
<p>
<a href="{% url 'webclient:index' %}" class="playbutton">Play in the browser!</a>
</p>
{% endif %}
{% if telnet_enabled %}
<p>
Telnet: <strong>{{ server_hostname }}</strong>, port
{% for port in telnet_ports %}
{% if not forloop.first and forloop.last %} or
{% elif forloop.counter != 1 %},
{% endif %}
<strong>{{ port }}</strong>
{% endfor %}
</p>
{% endif %}
{% if telnet_ssl_enabled %}
<p>
Telnet (SSL): <strong>{{ server_hostname }}</strong>, port
{% for port in telnet_ssl_ports %}
{% if not forloop.first and forloop.last %} or
{% elif forloop.counter != 1 %},
{% endif %}
<strong>{{ port }}</strong>
{% endfor %}
</p>
{% endif %}
{% if ssh_enabled %}
<p>
SSH: <strong>{{ server_hostname }}</strong>, port
{% for port in ssh_ports %}
{% if not forloop.first and forloop.last %} or
{% elif forloop.counter != 1 %},
{% endif %}
<strong>{{ port }}</strong>
{% endfor %}
</p>
{% endif %}
<p>
For more info, see the <a href="https://www.evennia.com">Evennia homepage</a> or check
out our extensive <a href="https://evennia.com/docs/latest">online documentation</a>.
</p>
<p>
Don't hesitate asking questions to the Evennia community!<br>Drop a message
in the <a href="https://github.com/evennia/evennia/discussions">Evennia forums</a>
or come say hi in the <a href="https://discord.gg/AJJpcRUhtF">Discord support channel</a>.
</p>
<p>
Evennia is Open source and can be found on <a href="https://github.com/evennia/evennia">GitHub</a>.
If you find bugs, please report them to the <a href="https://github.com/evennia/evennia/issues">Issue tracker</a>.
</p>
</div>
</div>
</div>
</div>
</div>
</div>
<hr />
<hr/>
<div class="row">
<div class="col-12 col-md-4 mb-3">
<div class="card">
<h4 class="card-header text-center">Accounts</h4>
<div class="col-12 col-md-4 mb-3">
{% include "website/homepage/accounts-widget.html" %}
<div class="card-body">
<p>
There's currently <strong>{{num_accounts_connected}}</strong> connected out of a total of <strong>{{num_accounts_registered}}</strong> account{{num_accounts_registered|pluralize}} registered.
</p>
<p>
Of these, <strong>{{num_accounts_registered_recent}}</strong> were created this week, and <strong>{{num_accounts_connected_recent}}</strong> have connected within the last seven days.
</p>
</div>
</div>
</div>
<div class="col-12 col-md-4 mb-3">
<div class="card">
<h4 class="card-header text-center">Recently Connected</h4>
<div class="col-12 col-md-4 mb-3">
{% include "website/homepage/recently-connected-widget.html" %}
<div class="card-body px-0 py-0">
<ul class="list-group">
{% for account in accounts_connected_recent %}
<li class="list-group-item">{{account.username}}&mdash;<em>{{account.last_login|timesince}} ago</em></li>
{% endfor %}
</ul>
</div>
</div>
</div>
<div class="col-12 col-md-4 mb-3">
<div class="card">
<h4 class="card-header text-center">Database Stats</h4>
<div class="col-12 col-md-4 mb-3">
{% include "website/homepage/database-stats-widget.html" %}
<div class="card-body py-0 px-0">
<ul class="list-group">
<li class="list-group-item">{{num_accounts_registered}} account{{num_accounts_registered|pluralize}} (+ {{num_characters}} character{{num_characters|pluralize}})</li>
<li class="list-group-item">{{num_rooms}} room{{num_rooms|pluralize}} (+ {{num_exits}} exits)</li>
<li class="list-group-item">{{num_others}} other objects</li>
</ul>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col">
<div class="card text-center">
<h4 class="card-header text-center">Evennia</h4>
<div class="col">
{% include "website/homepage/evennia-widget.html" %}
<div class="card-body">
<p><a href="https://evennia.com">Evennia</a> is an open-source MUD/MU*-creation framework built in
<a href="http://python.org">Python</a>, using
<a href="http://twistedmatrix.com">Twisted</a> and
<a href="http://djangoproject.com">Django</a>.<br>
Create the text-based multiplayer-game of your dreams - as
simple or as complex as you like.</p>
</div>
</div>
</div>
</div>
{% endblock %}