b5d46fad5c
- añade django.middleware.csrf.CsrfViewMiddleware a MIDDLEWARE (estaba ausente:
el CSRF estaba desactivado en todo el sitio)
- head.html: $.ajaxSetup envía X-CSRFToken en todo POST AJAX de jQuery + expone
window.CSRF_TOKEN (fuerza la cookie csrftoken en cada página)
- store_novawow.html: el fetch() nativo ahora manda X-CSRFToken (era el único que
se rompía al activar el middleware)
- register.html: añade {% csrf_token %} al formulario
- retira @csrf_exempt de login/register/restore_character/restore_items
(solo los webhooks stripe/sumup siguen exentos)
- auditoría previa: el resto de POST (AJAX jQuery + forms nativos con token) ya cubierto
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
105 lines
6.9 KiB
HTML
105 lines
6.9 KiB
HTML
{% if request.session.username %}
|
|
<div class="main-page">
|
|
<div class="middle-content">
|
|
<div class="body-content">
|
|
<div class="title-content"><h1>Creación de cuenta</h1></div>
|
|
<div class="box-content" id="focus" tabindex="1">
|
|
<div class="body-box-content info-box-light justified">
|
|
<p>Tu cuenta es de tipo Battle.net: se identifica con tu <strong>correo electrónico</strong>.</p>
|
|
<p>La contraseña debe ser alfanumérica y con una longitud de hasta 16 caracteres.</p>
|
|
<p>El correo debe pertenecer a gmail y con acceso al mismo.</p>
|
|
<br>
|
|
<p>Una vez que la cuenta se haya creado exitosamente, se enviará un correo con un enlace de activación.</p>
|
|
<p>De no usar el enlace de activación, la cuenta no podrá usarse para conectar al servidor.</p>
|
|
<p><i class="fas fa-exclamation-triangle"></i> Al iniciar sesión, ingresa con tu <strong>correo electrónico</strong>.</p>
|
|
<br>
|
|
<p>La cuenta del foro es independiente y se puede crear <a href="https://foro.novawow.com/register" target="_blank" rel="noopener noreferrer">aquí</a>.</p>
|
|
</div>
|
|
</div>
|
|
<script>
|
|
document.getElementById("focus").focus()
|
|
</script>
|
|
|
|
<div class="box-content">
|
|
<div class="body-box-content centered">
|
|
<p>¡Ya estás conectado!</p>
|
|
<br>
|
|
<p>Si quieres crear una cuenta, primero <a href="logout">desconecta</a>.</p>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
{% else %}
|
|
<div class="main-page">
|
|
<div class="middle-content">
|
|
<div class="body-content">
|
|
<div class="title-content"><h1>Creación de cuenta</h1></div>
|
|
<div class="box-content" id="focus" tabindex="1">
|
|
<div class="body-box-content info-box-light justified">
|
|
<p>Tu cuenta es de tipo Battle.net: se identifica con tu <strong>correo electrónico</strong>.</p>
|
|
<p>La contraseña debe ser alfanumérica y con una longitud de hasta 16 caracteres.</p>
|
|
<p>El correo debe pertenecer a gmail y con acceso al mismo.</p>
|
|
<br>
|
|
<p>Una vez que la cuenta se haya creado exitosamente, se enviará un correo con un enlace de activación.</p>
|
|
<p>De no usar el enlace de activación, la cuenta no podrá usarse para conectar al servidor.</p>
|
|
<p><i class="fas fa-exclamation-triangle"></i> Al iniciar sesión, ingresa con tu <strong>correo electrónico</strong>.</p>
|
|
<br>
|
|
<p>La cuenta del foro es independiente y se puede crear <a href="https://foro.novawow.com/register" target="_blank" rel="noopener noreferrer">aquí</a>.</p>
|
|
</div>
|
|
</div>
|
|
<script>
|
|
document.getElementById("focus").focus()
|
|
</script>
|
|
|
|
<div class="box-content">
|
|
<div class="body-box-content centered">
|
|
<form action="" method="POST" id="nw-create-form" accept-charset="utf-8">
|
|
{% csrf_token %}
|
|
<table class="middle-center-table">
|
|
<script src="{{ URL_PRINCIPAL }}/static/nw-themes/nw-ryu/nw-js-handlers/register.js"></script>
|
|
<tbody><tr>
|
|
<td><input type="password" maxlength="16" name="password" id="password" placeholder="Contraseña">
|
|
<span class="far fa-eye toggle-password"></span></td>
|
|
</tr>
|
|
<tr>
|
|
<td><input type="password" maxlength="16" name="conf-password" id="conf-password" placeholder="Confirmar contraseña">
|
|
<span class="far fa-eye toggle-password-conf"></span></td>
|
|
</tr>
|
|
<tr>
|
|
<td><input type="email" name="email" id="email" placeholder="Correo electrónico de Gmail"></td>
|
|
</tr>
|
|
<tr>
|
|
<td><input type="email" name="conf-email" id="conf-email" placeholder="Confirmar correo electrónico"></td>
|
|
</tr>
|
|
<tr>
|
|
<td><hr></td>
|
|
</tr>
|
|
<tr>
|
|
<td>Opcional: Sólo si eres reclutado por un amigo</td>
|
|
</tr>
|
|
<tr>
|
|
<td><input type="text" maxlength="12" name="recruiter" id="recruiter" placeholder="Reclutante"></td>
|
|
</tr>
|
|
<tr>
|
|
</tr>
|
|
<tr>
|
|
<td>
|
|
<input type="checkbox" onclick="click_checkbox()" id="accept-terms-cookies" class="terms-check" name="accept-terms-cookies">
|
|
<label for="vehicle1"> Acepto las <a href="https://foro.novawow.com/forum/novawow/normas-de-la-comunidad/16502-normas-del-juego" target="_blank" rel="noopener noreferrer">Normas</a>, <a href="terms-and-conditions" target="_blank">Términos y Condiciones</a> y la <a href="privacy-policy" target="_blank">Política de Privacidad</a></label>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td><button type="submit" name="create" class="create-button" data-id="CrearCuenta" id="create-account-btn" disabled="true">Crear cuenta</button></td>
|
|
</tr>
|
|
</tbody></table>
|
|
</form>
|
|
<hr>
|
|
<div class="alert-message" id="create-response"></div>
|
|
<br>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
{% endif %} |