feat(02-registration-dictionary-phrases): dictionary-backed registration text

Phase 2 complete:

- Seed registration dictionary phrases

- Update public and admin registration templates to use translations

- Document PAUL plan, apply, summary, and changelog
This commit is contained in:
2026-04-24 21:35:17 +02:00
parent 2cf4715914
commit 6ef8b0029d
13 changed files with 1033 additions and 189 deletions

View File

@@ -52,7 +52,7 @@
</div>
<div class="cb"></div>
<div class="entry">
<div><h5 align="center">Dane do wystawienia faktury:</h5></div>
<div><h5 align="center">{translate word='registration_invoice_data'}:</h5></div>
</div>
<div class="entry">
<div class="label">{translate word='Instytucja'}:</div>
@@ -76,14 +76,14 @@
</div>
<div class="cb"></div>
<div class="entry">
<div class="label">Zgłaszam referat</div>
<div class="label">{translate word='registration_submit_talk'}</div>
<div class="value" title="s">
<label class="control control--radio">Tak
<label class="control control--radio">{translate word='registration_yes'}
<input type="radio" name="referat" class="referat" value="1" />
<div class="control__indicator"></div>
</label>
<label class="control control--radio">Nie
<label class="control control--radio">{translate word='registration_no'}
<input type="radio" name="referat" class="referat" value="2" />
<div class="control__indicator"></div>
</label>
@@ -91,14 +91,14 @@
</div>
<div class="cb"></div>
<div class="entry">
<div class="label">Zgłaszam poster</div>
<div class="label">{translate word='registration_submit_poster'}</div>
<div class="value" title="s">
<label class="control control--radio">Tak
<label class="control control--radio">{translate word='registration_yes'}
<input type="radio" name="poster" value="1" />
<div class="control__indicator"></div>
</label>
<label class="control control--radio">Nie
<label class="control control--radio">{translate word='registration_no'}
<input type="radio" name="poster" value="2" />
<div class="control__indicator"></div>
</label>
@@ -136,11 +136,11 @@
<div class="label">{translate word='Opłata'}: </div>
<div class="value">
<div class="confOption">
<label class="control control--radio">Opłata obniżona (płatność do 03.10.2026)
<label class="control control--radio">{translate word='registration_fee_discount_2026'}
<input type="radio" name="conference_fee_disc" id="conference_fee_disc" checked="true" class="conference_fee_disc" value="1" onclick="calculatePrice();"/>
<div class="control__indicator"></div>
</label>
<label class="control control--radio">Opłata zwykła (płatność po 03.10.2026)
<label class="control control--radio">{translate word='registration_fee_normal_2026'}
<input type="radio" name="conference_fee_disc" id="conference_fee_norm" class="conference_fee_disc" value="2" onclick="calculatePrice();"/>
<div class="control__indicator"></div>
</label>
@@ -148,7 +148,7 @@
</div>
</div>
<div class="entry">
<div class="label">Cała konferencja: </div>
<div class="label">{translate word='registration_full_conference_label'}: </div>
<div class="value">
<input type="hidden" name="participation_option" id="participation_option" value="full" />
<input type="hidden" name="one_day_lodging" id="one_day_lodging" value="0" />
@@ -160,24 +160,24 @@
$('#conference_2').hide(); calculatePrice();" />
<div class="control__indicator"></div>
</label>
<span>Biorę udział w całej konferencji</span>
<span>{translate word='registration_participation_full_cta'}</span>
</div>
<div style="width:100%; display:flex; flex-wrap:no-wrap; align-items:start; gap;10px; margin-bottom:30px;">
<label class="control control--radio">&nbsp;
<input type="radio" name="conference_fee" id="conference_fee_1_lodging" class="conference_fee" value="5" onclick="calculatePrice()" />
<div class="control__indicator"></div>
</label>
<span>Biorę udział w jednym dniu konferencji (z noclegiem)</span>
<span>{translate word='registration_participation_one_day_lodging_cta'}</span>
</div>
<div style="width:100%; display:flex; flex-wrap:no-wrap; align-items:start; gap;10px; margin-bottom:30px;">
<label class="control control--radio">&nbsp;
<input type="radio" name="conference_fee" id="conference_fee_1" class="conference_fee" value="5" onclick="calculatePrice()" />
<div class="control__indicator"></div>
</label>
<span>Biorę udział w jednym dniu konferencji (bez noclegu)</span>
<span>{translate word='registration_participation_one_day_no_lodging_cta'}</span>
</div>
<div class="show--day-select" id="one-day-lodging-days" style="display:none; width:100%; margin-bottom:30px; flex-direction:column; gap:10px;">
<span>Proszę zaznaczyć dzień:</span>
<span>{translate word='registration_select_day'}:</span>
<label class="control control--radio">3/4 listopada
<input type="radio" name="participation_days" value="3/4 listopada" />
<div class="control__indicator"></div>
@@ -188,7 +188,7 @@
</label>
</div>
<div class="show--day-select" id="one-day-no-lodging-days" style="display:none; width:100%; margin-bottom:30px; flex-direction:column; gap:10px;">
<span>Proszę zaznaczyć dzień:</span>
<span>{translate word='registration_select_day'}:</span>
<label class="control control--radio">3 listopada
<input type="radio" name="participation_days" value="3 listopada" />
<div class="control__indicator"></div>
@@ -303,11 +303,11 @@
{/literal}
</script>
<div class="confOptionContainer" id="conference_1">
<label class="control control--checkbox" > Dopłata do pokoju 1-osobowego
<label class="control control--checkbox" > {translate word='registration_single_room_surcharge'}
<input type="checkbox" name="fee_room1" class="price_plus_room" id="price_plus_room" data-theme="d" value="2" onchange="calculatePrice();" >
<div class="control__indicator"></div>
</label>
<label class="control control--checkbox" > Opłata za pobyt osoby towarzyszącej lub kierowcy w pokoju dwuosobowym
<label class="control control--checkbox" > {translate word='registration_accompanying_driver_fee'}
<input type="checkbox" name="fee_room_add_person" id="price_plus_person" data-theme="d" onclick="$('#price_plus_room').prop
("checked", true);" value="3" onchange="calculatePrice();" >
<div class="control__indicator"></div>
@@ -355,24 +355,24 @@
</div>
</div>
<div class="entry">
<div class="label">Preferencje żywieniowe:</div>
<div class="label">{translate word='registration_diet_preferences'}:</div>
<div class="value">
<label class="control control--radio">dieta standardowa
<label class="control control--radio">{translate word='registration_diet_standard'}
<input type="radio" name="diet" value="1" checked="checked" onclick="$('#diet_special_container').hide(); $('#diet_special').val('');" />
<div class="control__indicator"></div>
</label>
<label class="control control--radio">dieta specjalna
<label class="control control--radio">{translate word='registration_diet_special'}
<input type="radio" name="diet" value="2" onclick="$('#diet_special_container').show();" />
<div class="control__indicator"></div>
</label>
<div id="diet_special_container" style="display:none; margin-top:10px;">
<label for="diet_special">Jaka?</label>
<label for="diet_special">{translate word='registration_diet_which'}</label>
<input type="text" name="diet_special" id="diet_special" />
</div>
</div>
</div>
<div class="entry">
<div class="label">Cena za konferencję</div>
<div class="label">{translate word='registration_conference_price'}</div>
<div class="value"><p class="price_full_fee" style="margin: 0px;">&nbsp;</p></div>
</div>