Bonjour,
Après avoir réussi à mettre et à faire fonctionner la case à cocher Reseller à l'inscription, j'ai voulu faire la même chose pour l'update du profil. J'étais confiant, j'allais faire la même chose ! Et bien, ça ne marche pas. Pas d'erreur, l'info n'est juste pas mise à jour et lorsque l'on arrive sur la formulaire, si on est reseller, la case n'est pas cochée.
Le ticket à ce sujet : https://forum.thelia.net/viewtopic.php?pid=79588
Thelia 2.3.4 pour info.
Voici mon code
local/modules/NewrhoneModule/Config/config.xml
<?xml version="1.0" encoding="UTF-8" ?>
<config xmlns="http://thelia.net/schema/dic/config"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://thelia.net/schema/dic/config http://thelia.net/schema/dic/config/thelia-1.0.xsd">
<forms>
<form name="thelia.front.customer.create" class="NewrhoneModule\Forms\NewrhoneCustomerCreateForm"/>
<form name="thelia.front.customer.profile.update" class="NewrhoneModule\Forms\NewrhoneCustomerProfileUpdateForm"/>
</forms>
</config>
local/modules/NewrhoneModule/Forms/NewrhoneCustomerProfileUpdateForm.php
<?php
namespace NewrhoneModule\Forms;
use NewrhoneModule\NewrhoneModule;
use Thelia\Form\CustomerProfileUpdateForm;
use Thelia\Core\Translation\Translator;
class NewrhoneCustomerProfileUpdateForm extends CustomerProfileUpdateForm
{
protected function buildForm()
{
parent::buildForm();
$this->formBuilder
->add('reseller', 'integer', array(
'label' => Translator::getInstance()->trans('I am a professional', [], NewrhoneModule::DOMAIN_NAME),
'label_attr' => array(
'for' => 'reseller',
),
));
}
}
templates/frontOffice/newrhone1/account-update.html
...
<!-- Reseller pour pro ajout artaban gl 230118 -->
{form_field field="reseller"}
<div class="form-group group-reseller">
<label class="control-label col-sm-3" for="{$label_attr.for}">
{$label}
</label>
<div class="control-input col-sm-5">
<input type="checkbox" id="{$label_attr.for}" name="{$name}" value="1" {if $value != 0}checked="checked"{/if}>
</div>
{if $error }
<span class="help-block">{$message}</span>
{/if}
</div><!--/.form-group-->
{/form_field}
...
Une idée ? Je pense pourtant que ça passe dans la même moulinette !
Merci davance pour toute piste !