Implementado Ban History, Restore Character, Restore Items

This commit is contained in:
adevopg
2025-02-19 22:12:22 +01:00
parent 137dc853f8
commit 3f962f8368
5 changed files with 437 additions and 131 deletions
+92 -42
View File
@@ -1,45 +1,95 @@
<div class="main-page">
<div class="middle-content">
<div class="body-content">
<div class="title-content"><h1>Historial de sanciones</h1></div>
<div class="box-content">
<div class="title-box-content"><h2>Información</h2><a class="back-to-account" href="my-account">Regresar a mi cuenta</a><a class="back-to-account-responsive" href="my-account">Regresar</a></div>
<div class="body-box-content justified">
<br>
<p>Aquí podrás ver todas las sanciones que ha tenido la cuenta.</p>
<p>Si tienes una sanción vigente, verás que su estado indica <span class="red-info2">Activo</span>.</p>
<p>Para evitar que tu cuenta sea sancionada, recuerda respetar las normas de nuestro servidor.</p>
<br>
<div class="restore-item-table">
<p><i class="fas fa-exclamation-triangle"></i> <span>Importante:<span></span></span></p>
<p>Si tu cuenta aparece como sancionada o cerrada al intentar ingresar al reino, pero tu historial no tiene ninguna sanción activa, significa que has tenido un bloqueo automático temporal por demasiados intentos de inicio de sesión fallidos.</p>
<p>Espera al menos 10 minutos para volver a intentar y asegúrate de usar nombre de cuenta y contraseña correctas.</p>
</div>
<br>
<p>Para realizar un reclamo de sanción, por favor ingresa en nuestro <a href="https://foro.novawow.com/" target="_blank" rel="noopener noreferrer">foro</a> y visita la sección Reclamaciones.</p>
</div>
</div>
<div class="box-content">
<div class="title-box-content"><h2>Historial de baneos</h2></div>
<div class="body-box-content info-box-light">
<table class="max-center-table">
<tbody><tr>
<td class="centered"><span>No hay baneos</span></td>
</tr>
</tbody></table>
</div>
</div>
<div class="box-content">
<div class="title-box-content"><h2>Historial de muteos</h2></div>
<div class="body-box-content info-box-light">
<table class="max-center-table">
<tbody><tr>
<td class="centered"><span>No hay muteos</span></td>
</tr>
</tbody></table>
</div>
</div>
<div class="middle-content">
<div class="body-content">
<div class="title-content">
<h1>Historial de sanciones</h1>
</div>
<div class="box-content">
<div class="title-box-content">
<h2>Información</h2>
<a class="back-to-account" href="my-account">Regresar a mi cuenta</a>
<a class="back-to-account-responsive" href="my-account">Regresar</a>
</div>
<div class="body-box-content justified">
<br>
<p>Aquí podrás ver todas las sanciones que ha tenido la cuenta.</p>
<p>Si tienes una sanción vigente, verás que su estado indica <span class="red-info2">Activo</span>.</p>
<p>Para evitar que tu cuenta sea sancionada, recuerda respetar las normas de nuestro servidor.</p>
<br>
</div>
</div>
</div>
<!-- Historial de baneos -->
<div class="box-content">
<div class="title-box-content">
<h2>Historial de baneos</h2>
</div>
<div class="body-box-content info-box-light">
<table class="max-center-table" style="width: 100%; border-collapse: collapse;">
<thead>
<tr>
<th style="text-align: left; padding: 10px; border: 1px solid #ddd;">Fecha de Baneo</th>
<th style="text-align: left; padding: 10px; border: 1px solid #ddd;">Fecha de Desbaneo</th>
<th style="text-align: left; padding: 10px; border: 1px solid #ddd;">Motivo</th>
<th style="text-align: left; padding: 10px; border: 1px solid #ddd;">Estado</th>
<th style="text-align: left; padding: 10px; border: 1px solid #ddd;">
{% if account_bans and character_bans %}
Cuenta / Personaje
{% elif account_bans %}
Cuenta
{% elif character_bans %}
Personaje
{% else %}
Fuente
{% endif %}
</th>
</tr>
</thead>
<tbody>
{% if account_bans %}
{% for ban in account_bans %}
<tr>
<td style="padding: 10px; border: 1px solid #ddd;">{{ ban.0|default:"No disponible" }}</td>
<td style="padding: 10px; border: 1px solid #ddd;">{{ ban.1|default:"No disponible" }}</td>
<td style="padding: 10px; border: 1px solid #ddd;">{{ ban.2 }}</td>
<td style="padding: 10px; border: 1px solid #ddd;">
{% if ban.3 == 1 %}
<span class="red-info2">Activo<span>
{% else %}
<span class="green-info2">Inactivo</span>
{% endif %}
</td>
<td style="padding: 10px; border: 1px solid #ddd;">Cuenta: {{ ban.4 }}</td>
</tr>
{% endfor %}
{% else %}
<tr>
<td colspan="5" style="text-align: center; padding: 10px; border: 1px solid #ddd;">No hay baneos en la cuenta.</td>
</tr>
{% endif %}
{% if character_bans %}
{% for ban in character_bans %}
<tr>
<td style="padding: 10px; border: 1px solid #ddd;">{{ ban.0|default:"No disponible" }}</td>
<td style="padding: 10px; border: 1px solid #ddd;">{{ ban.1|default:"No disponible" }}</td>
<td style="padding: 10px; border: 1px solid #ddd;">{{ ban.2 }}</td>
<td style="padding: 10px; border: 1px solid #ddd;">
{% if ban.3 == 1 %}
Activo
{% else %}
<span class="green-info2">Inactivo</span>
{% endif %}
</td>
<td style="padding: 10px; border: 1px solid #ddd;">Personaje: {{ ban.4 }}</td>
</tr>
{% endfor %}
{% else %}
<tr>
<td colspan="5" style="text-align: center; padding: 10px; border: 1px solid #ddd;">No hay baneos en los personajes.</td>
</tr>
{% endif %}
</tbody>
</table>
</div>
</div>
+49 -32
View File
@@ -1,36 +1,53 @@
<div class="main-page">
<div class="middle-content">
<div class="body-content">
<div class="title-content"><h1>Recuperar personaje</h1></div>
<div class="box-content">
<div class="title-box-content"><h2>Información</h2><a class="back-to-account" href="my-account">Regresar a mi cuenta</a><a class="back-to-account-responsive" href="my-account">Regresar</a></div>
<div class="body-box-content justified">
<br>
<p>La herramienta <span>Recuperar personaje</span> te permite restaurar un personaje que haya sido borrado.</p>
<br>
<p>Sólo disponible para personajes que cumplan las siguientes dos condiciones:</p>
<p>- Nivel superior a 60.</p>
<p>- Borrado en un período menor a 30 días.</p>
<p>Para personajes <span class="death-knight">Caballeros de la Muerte:</span></p>
<p>- No es posible recuperar un personaje Caballero de la Muerte si ya hay otro activo en la cuenta.</p>
<br>
<p>Cuando ingreses a la lista de personajes de tu cuenta, verás al personaje recuperado.</p>
<br>
<fieldset>
<legend>NOTA</legend>
<div class="separate2">
<p>Personajes borrados que no cumplan dichas condiciones ya no son recuperables.</p>
<p>Se puede repetir la acción en un mismo personaje cada 12 horas.</p>
</div>
</fieldset>
<div class="centered">
<br>
<br>
<span>No hay personajes</span>
<br>
</div>
<div class="middle-content">
<div class="body-content">
<div class="title-content"><h1>Recuperar personaje</h1></div>
<div class="box-content">
<div class="title-box-content">
<h2>Información</h2>
<a class="back-to-account" href="my-account">Regresar a mi cuenta</a>
<a class="back-to-account-responsive" href="my-account">Regresar</a>
</div>
<div class="body-box-content justified">
<br>
<p>La herramienta <span>Recuperar personaje</span> te permite restaurar un personaje que haya sido borrado.</p>
<br>
<p>Sólo disponible para personajes que cumplan las siguientes dos condiciones:</p>
<p>- Nivel superior a 60.</p>
<p>- Borrado en un período menor a 30 días.</p>
<p>Para personajes <span class="death-knight">Caballeros de la Muerte:</span></p>
<p>- No es posible recuperar un personaje Caballero de la Muerte si ya hay otro activo en la cuenta.</p>
<br>
<p>Cuando ingreses a la lista de personajes de tu cuenta, verás al personaje recuperado.</p>
<br>
<fieldset>
<legend>NOTA</legend>
<div class="separate2">
<p>Personajes borrados que no cumplan dichas condiciones ya no son recuperables.</p>
<p>Se puede repetir la acción en un mismo personaje cada 12 horas.</p>
</div>
</div>
</fieldset>
<div class="centered">
<br><br>
{% if message %}
<p>{{ message }}</p>
{% endif %}
{% if character_list %}
<form method="POST">
{% csrf_token %}
<select name="guid">
{% for character in character_list %}
<option value="{{ character.guid }}">{{ character.name }} (LvL {{ character.level }})</option>
{% endfor %}
</select>
<button type="submit">Restaurar Personaje</button>
</form>
{% else %}
<span>No hay personajes eliminados disponibles para restaurar.</span>
{% endif %}
</div>
</div>
</div>
</div>
</div>
</div>
</div>
+48 -40
View File
@@ -1,45 +1,53 @@
<div class="main-page">
<div class="middle-content">
<div class="modal centered" id="modal-div">
<div class="modal-content">
<span class="close"><i class="fas fa-times"></i></span>
<span class="red-form-response" id="restored-item-response"></span>
</div>
<div class="middle-content">
<div class="body-content">
<div class="title-content"><h1>Recuperar ítems</h1></div>
<div class="box-content">
<div class="title-box-content">
<h2>Información</h2>
<a class="back-to-account" href="my-account">Regresar a mi cuenta</a>
</div>
<div class="body-box-content justified">
<p>La herramienta <span>Recuperar ítems</span> te permite recuperar ítems que hayan sido borrados.</p>
<p>Sólo disponible para ítems de calidad: <span class="q3">Raro</span> | <span class="q4">Épico</span> | <span class="q5">Legendaria</span> | <span class="q6">Artefacto</span> | <span class="q6">Reliquia</span>.</p>
<fieldset>
<legend>NOTA</legend>
<p>Ítems que no cumplan las condiciones no son recuperables.</p>
<p>Se pueden consultar ítems borrados en un mismo personaje cada 8 horas.</p>
</fieldset>
<div class="body-content">
<div class="title-content"><h1>Recuperar ítems</h1></div>
<div class="box-content">
<div class="title-box-content"><h2>Información</h2><a class="back-to-account" href="my-account">Regresar a mi cuenta</a><a class="back-to-account-responsive" href="my-account">Regresar</a></div>
<div class="body-box-content justified">
<br>
<p>La herramienta <span>Recuperar ítems</span> te permite recuperar ítems que hayan sido borrados.</p>
<br>
<p>Sólo disponible para ítems que cumplan las siguientes condiciones:</p>
<p>- De calidad: <span class="q3">Raro</span> | <span class="q4">Épico</span> | <span class="q5">Legendaria</span> | <span class="q6">Artefacto</span> | <span class="q6">Reliquia</span>.</p>
<p>- Equipable.</p>
<p>- Se liga al recogerlo.</p>
<p>- Borrado en un período menor a 7 días.</p>
<br>
<fieldset>
<legend>NOTA</legend>
<div class="separate2">
<p>Ítems borrados que no cumplan dichas condiciones ya no son recuperables.</p>
<p>Se pueden consultar ítems borrados en un mismo personaje cada 8 horas.</p>
</div>
</fieldset>
<div class="centered">
<br>
<br>
<p>Cada ítem requiere <span>100</span> <span class="yellow-info">PD</span></p>
<br>
<div id="char-selection">
<span>No tienes PD suficientes</span>
</div>
<br>
</div>
</div>
</div>
<!-- Selección de personaje -->
<form method="GET" action="{% url 'restore-items' %}">
<label for="character_name">Selecciona un personaje:</label>
<select name="character_name" id="character_name" required>
<option value="" disabled selected>Selecciona un personaje</option>
{% for character in characters %}
<option value="{{ character }}" {% if character == selected_character %}selected{% endif %}>{{ character }}</option>
{% endfor %}
</select>
<button type="submit">Buscar Ítems Eliminados</button>
</form>
{% if deleted_items %}
<form method="POST" action="{% url 'restore-items' %}">
{% csrf_token %}
<input type="hidden" name="character_name" value="{{ selected_character }}">
<label for="recover_id">Selecciona un ítem para restaurar:</label>
<select name="recover_id" id="recover_id" required>
{% for item in deleted_items %}
<option value="{{ item.recover_id }}">
Item: {{ item.item_name }} ({{ item.item_id }}):{{ item.count }}
</option>
{% endfor %}
</select>
<button type="submit">Recuperar Ítem</button>
</form>
{% elif selected_character %}
<p>No hay ítems eliminados disponibles para restaurar.</p>
{% endif %}
</div>
</div>
</div>
</div>
</div>
</div>