Fase 3: migra 4 servicios de personaje más a la isla reutilizable
customize, change_race, change_faction y level_up comparten el patrón exacto de rename (select 'character' + precio -> Stripe), así que reutilizan la isla CharacterPurchaseForm / entry character_purchase cambiando solo los data-* (url, label, clase de botón). Sin JS nuevo. Se eliminan los <script> jQuery y Stripe inline de cada plantilla. Verificado: check OK, las 4 páginas redirigen a login sin sesión y las plantillas renderizan la isla correctamente. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -19,26 +19,16 @@
|
||||
<p>Por favor, asegúrate de haber escogido al personaje correcto ya que esta acción no es reversible una vez realizada.</p>
|
||||
</div>
|
||||
</fieldset>
|
||||
<script src="{{ URL_PRINCIPAL }}/static/nw-themes/nw-ryu/nw-js-handlers/change_race_response.js"></script>
|
||||
<script src="https://js.stripe.com/v3/"></script>
|
||||
<form id="nw-change-race-form" div class="centered">
|
||||
<br>
|
||||
<br>
|
||||
<p>Escoge el personaje que quieres desbloquear</p>
|
||||
<br>
|
||||
<form action="" id="nw-change-race-form" method="POST" accept-charset="utf-8">
|
||||
<select name="character">
|
||||
<option value="" selected disabled>Seleccione un personaje</option>
|
||||
{% for character in characters %}
|
||||
<option class="priest big-font" value="{{ character }}">{{ character }}</option>
|
||||
{% endfor %}
|
||||
</select>
|
||||
<br>
|
||||
<button class="change-race-button" type="submit" name="change-race-button" data-id="ChangeRace">Cambiar Raza por {{ price }} €</button>
|
||||
</form>
|
||||
<br>
|
||||
<hr>
|
||||
<center><div class="alert-message" id="change-race-response"></div></center>
|
||||
{% load django_vite %}
|
||||
<!-- Isla React (Vite): servicio de pago de personaje (genérico). -->
|
||||
<div id="character-purchase-app"
|
||||
data-csrf="{{ csrf_token }}"
|
||||
data-url="{% url 'change-race-character' %}"
|
||||
data-price="{{ price }}"
|
||||
data-label="Cambiar Raza"
|
||||
data-button-class="change-race-button"></div>
|
||||
{{ characters|json_script:"character-purchase-data" }}
|
||||
{% vite_asset 'src/entries/character_purchase.tsx' %}
|
||||
<br>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user