Условная логика со Smarty - PullRequest
       10

Условная логика со Smarty

0 голосов
/ 08 ноября 2018

Я работаю над приложением на работе, которое довольно старое и использует PHP с движком шаблонов Smarty. Обычно у нас есть три варианта регистрации, но если они выбирают вариант 2, им также необходимо установить флажок, чтобы убедиться, что они посетили семинар.

Строка валидатора ({validator form="personal_form" field="program_attended" rule="required" message="Please confirm that you have attended an InsideOut Coaching Workshop"}) работает, но я не могу сделать ее условной при проверке option2.

Есть мысли?

<h3>1. Program Selection</h3>

<div class="radio">
  <label {if $p.session.event.event.others.start_date<nowfull() || isset_or($p.session.event.event.others.t3_standalone,0)==1 } style="color:#d3d3d3;{/if}">
<input type="radio" {if $p.session.event.personal.program=='option1'}checked="checked"{/if} name="program" id="program1" value="option1" {if $p.session.event.event.others.start_date<nowfull() || isset_or($p.session.event.event.others.t3_standalone,0) == 1}checked="" disabled="disabled" style="color:#d3d3d3"{/if}>
Workshop + Certification (3 day): <strong>${$p.session.event.prices.product2.general.default|number_format:0:".":","}</strong>
</label>
</div>

<div class="radio">
  <label>
<input id="option2_radio" type="radio" {if $p.session.event.personal.program=='option2'}checked="checked" {/if} name="program" id="program2" value="option2" {if ($p.session.event.event.others.start_date<nowfull() || isset_or($p.session.event.event.others.t3_standalone,0) == 1) && !isset($p.session.event.personal.program)}checked="checked"{/if}>
Certification Only (2 day): <strong>${$p.session.event.prices.product3.general.default|number_format:0:".":","}</strong>
</label>
  <div class="form-group">
    <div class="col-sm-12">
      <div class="checkbox">
        <label class="blue">
<input type="checkbox"
{if $p.session.event.personal.program_attended}checked="checked"{/if} name="program_attended"

value="1"/> Yes, I have attended a InsideOut Coaching Workshop
(required for certification)
</label> {validator form="personal_form" field="program_attended" rule="required" message="Please confirm that you have attended an InsideOut Coaching Workshop"}

      </div>
    </div>
  </div>
...