{% extends "base_security.html.twig" %}
{% block fos_user_title %}
<h4 class="auth-header">{{ 'title.new_user_account' | trans }}</h4>
{% endblock fos_user_title %}
{% block fos_user_content %}
{% if app.session.flashBag.has('danger') == true %}
<div class="alert alert-danger" role="alert" stype="font-size: 10px">
{% for message in app.session.flashbag.get('danger') %}
<p class="text-center w-100 mb-0">{{ message }}</p>
{% endfor %}
</div>
{% endif %}
<div class="help-block form-text with-errors text-danger form-control-feedback">{{ form_errors(form) | raw }}</div>
<form id="form-register" action="{{ path('register_create_account') }}" method="post">
{{ form_widget(form._token) }}
<div class="form-group">
<label for="">{{ "menu.user_type" | trans }}</label>
{{ form_widget(form.typePerson) }}
</div>
<div id="diaspora" class="form-group">
<div class="col-sm-12 form-check diaspora d-flex justify-content-end">
<label for="">diaspora: </label>
{{ form_widget(form.diaspora) }}
<div class="slider round">
<span class="non">{{ 'menu.no' | trans }}</span>
<span class="oui">{{ 'menu.yes' | trans }}</span>
</div>
<div class="help-block form-text with-errors form-control-feedback">{{ form_errors(form.diaspora) }}</div>
</div>
</div>
<div class="form-group">
{% if struct_province_country_city == "true" %}
<label for=""> {{ 'menu.region' | trans }} </label>
{{ create_translated_select(form.region) }}
{# {{ form_widget(form.region) }}#}
<div class="pre-icon os-icon os-icon-user-male-circle"></div>
<div class="help-block form-text with-errors text-danger form-control-feedback">{{ form_errors(form.region) }}</div>
{% else %}
<label for=""> {{ 'menu.country' | trans }} </label>
{{ create_translated_select(form.country) }}
{# {{ form_widget(form.country) }}#}
<div class="pre-icon os-icon os-icon-user-male-circle"></div>
<div class="help-block form-text with-errors text-danger form-control-feedback">{{ form_errors(form.country) }}</div>
{% endif %}
</div>
<div id="residenceCountry" class="form-group" style="display: none">
<label for=""> {{ 'menu.residence_country' | trans }} </label>
{% if struct_province_country_city == "true" %}
{{ create_translated_select(form.residenceRegion) }}
{# {{ form_widget(form.residenceRegion) }}#}
<div class="pre-icon os-icon os-icon-user-male-circle"></div>
<div class="help-block form-text with-errors text-danger form-control-feedback">{{ form_errors(form.region) }}</div>
{% else %}
{{ create_translated_select(form.residenceCountry) }}
{# {{ form_widget(form.residenceCountry) }}#}
<div class="pre-icon os-icon os-icon-user-male-circle"></div>
<div class="help-block form-text with-errors text-danger form-control-feedback">{{ form_errors(form.country) }}</div>
{% endif %}
</div>
<div class="form-group">
<label for=""> {{ 'menu.phone' | trans }} : {{ 'menu.phone_indicator' | trans }} (<span id="phone_code"></span> ) + N°</label>
{{ form_widget(form.phone) }}
<div class="pre-icon os-icon os-icon-user-male-circle"></div>
<div class="help-block form-text with-errors text-danger form-control-feedback">{{ form_errors(form.phone) }}</div>
</div>
<div class="form-group" style="display: none">
<label for=""> Pseudo (Optionnel)</label>
{{ form_widget(form.username) }}
<div class="pre-icon os-icon os-icon-user-male-circle"></div>
</div>
<div class="form-group" style="display: none">
<label for=""> Email address (Optionnel)</label>
{{ form_widget(form.email) }}
<div class="pre-icon os-icon os-icon-email-2-at2"></div>
</div>
<div class="row">
<div class="col-sm-6">
<div class="form-group">
<label for=""> {{ "menu.password" | trans }}</label>
{{ form_widget(form.plainPassword.first) }}
<div class="pre-icon os-icon os-icon-fingerprint"></div>
</div>
</div>
<div class="col-sm-6">
<div class="form-group">
<label for="">{{ "menu.confirm" | trans }}</label>
{{ form_widget(form.plainPassword.second) }}
</div>
</div>
</div>
{#</form>#}
<div class="row form-group">
<div class="col-xs-6 buttons-w">
<button class="btn btn-primary" id="submitRegister"> {{ 'menu.validate' | trans }} </button>
</div>
<div class="col-xs-6 buttons-w">
<a class="btn btn-primary" href="{{ path('logout') }}">{{ 'menu.cancel' | trans }}</a>
</div>
</div>
<div class="row form-group footer_register">
<span>{{ "footer.dev_by" | trans }}</span>
<p><a target="_blank" href="https://ifef.francophonie.org/"><img style="width: 80px; height: auto" id="logo_ifef" src="{{ asset('build/images/pinsuprem/logo_ifef.jpg') }}"></a></p>
<p><a target="_blank" href="https://www.francophonie.org/"><img style="width: 80px; height: auto" id="logo_oif" src="{{ asset('build/images/pinsuprem/logo_oif.jpg') }}"></a></p>
</div>
</form>
<select hidden id="indTel">
{% for country in allCountries %}
<option value="{{ country.id }}">{{ country.phoneCode }}</option>
{% endfor %}
</select>
{% endblock fos_user_content %}
{% block fos_user_script %}
<script>
$( document ).ready(function() {
$('#diaspora').hide();
if ($('#userbundle_user_typePerson option:selected').val() == 'ROLE_DIPLOME' ) {
$('#diaspora').show();
showResidenceCountry ();
}
})
// $(idSelect).removeAttr('required');
$('userbundle_user_residenceCountry').prop("required", false);
$('userbundle_user_residenceRegion').prop("required", false);
// console.log("test", $('userbundle_user_residenceCountry').attr("required"))
$('#userbundle_user_typePerson').on('change', function (e) {
if ($('#userbundle_user_typePerson option:selected').val() != 'ROLE_DIPLOME' ) {
$('#userbundle_user_diaspora').prop('checked',false);
$('#diaspora').hide();
showResidenceCountry ();
} else {
$('#diaspora').show();
}
})
$('#userbundle_user_diaspora').on('change', function (e) {
showResidenceCountry ();
let selectedCountry = null;
if($('#userbundle_user_diaspora').is(':checked')) {
selectedCountry = $('#userbundle_user_residenceCountry option:selected').val();
} else {
selectedCountry = $('#userbundle_user_country option:selected').val();
}
getIndTel(selectedCountry);
})
function showResidenceCountry () {
if ($('#userbundle_user_diaspora').is(':checked')) {
$('#residenceCountry').show();
} else {
$('#residenceCountry').hide();
}
}
// $(document).ready(function () {
// const allCountryOptions = $('#userbundle_user_country').html();
$('#userbundle_user_country').on('change', function (e) {
let selectedCountry = null;
if($('#userbundle_user_diaspora').is(':checked')) {
selectedCountry = $('#userbundle_user_residenceCountry option:selected').val();
// Supprimer le pays selectionné dans la liste des pays de residence
// $("#userbundle_user_residenceCountry").html(allCountryOptions);
$("#userbundle_user_residenceCountry").find("option").each(function() {
const optionValue = $(this).val();
if (optionValue === e.target.value) {
$(this).remove();
}
});
} else {
selectedCountry = $('#userbundle_user_country option:selected').val();
}
getIndTel(selectedCountry);
})
$('#userbundle_user_residenceCountry').on('change', function (e) {
let selectedCountry = $('#userbundle_user_residenceCountry option:selected').val();
getIndTel(selectedCountry);
})
// adaptation for DBTA
$('#userbundle_user_region').on('change', function (e) {
let selectedCountry = null;
if($('#userbundle_user_diaspora').is(':checked')) {
selectedCountry = $('#userbundle_user_residenceRegion option:selected').val();
// Supprimer le pays selectionné dans la liste des pays de residence
$("#userbundle_user_residenceRegion").find("option").each(function() {
const optionValue = $(this).val();
if (optionValue === e.target.value) {
$(this).remove();
}
});
} else {
selectedCountry = $('#userbundle_user_region option:selected').val();
}
getIndTel(selectedCountry);
})
$('#userbundle_user_residenceRegion').on('change', function (e) {
let selectedCountry = $('#userbundle_user_residenceRegion option:selected').val();
getIndTel(selectedCountry);
})
//Fin adaptation DBTA
function getIndTel(selectedCountry) {
if (selectedCountry) {
let phoneCode = '+' + $('#indTel option[value=' +selectedCountry+ ']').text();
$('#phone_code').html('+' + $('#indTel option[value=' +selectedCountry+ ']').text());
$('#userbundle_user_phone').attr('placeholder', phoneCode + ' + Numéro de Téléphone' );
$('#userbundle_user_phone').val(phoneCode);
}
}
// $('#submitRegister').on('click', function (e) {
// e.preventDefault();
//
// // setTimeout(function() {
// $('form').submit()
// // , 5000});
//
// })
// })
</script>
{% endblock fos_user_script %}