Forum CMS Made Simple FR

Version complète : [Résolu]Frontenduser change settings
Vous consultez actuellement la version basse qualité d’un document. Voir la version complète avec le bon formatage.
Citation :#~~~~~ DEBUT BLOC A NE PAS SUPPRIMER ~~~~~
#~ Version du CMS: #1.10.3
#~ Url du site :
#~ Hébergeur / Soft :
#~ Informations Système :
#~~~~~ FIN BLOC A NE PAS SUPPRIMER ~~~~~


Bonjour,

Voila j'ai installé une case a coché lors de l'inscription pour la newsletter cela fontionne.

Donc quand on est connecté et que l'on va sur page changesettings la case a coché pour la newsletter est présente.

Ce que je souhaiterai c'est en mettant une condition dans le template change setting que cette case a coché disparaît car elle n'a aucune utilité dans la page changesetting.

Comment faire car j'arrive pas m'ensortir avec la control->prompt qui regroupe toute les champs.

Avec d'autre modules j'ai réussi car chaque champs etait dissocier .

Merci bien d'avance.
bonjour,
$control->name contient le nom des champs préfixés par input.
Donc si c'est input_mailing_list, tu peux agir Smile
Re Bonjour,

Donc j'ai trouvé plusieurs manière mais je voudrais savoir laquelle est la plus propre et optimisé.

Code :
[== PHP ==]
{if $controlcount > 0}
{foreach from=$controls item=control }
{if $control->name == 'input_mailing_list'}
{$control->prompt}{$control->marker}: {$control->control}
{/if}
{/foreach}
{/if}

Ou celui-ci

Code :
[== PHP ==]
{if $controlcount > 0}
{foreach from=$controls item=control }
{assign var=$control->name value=$control}
{/foreach}
{$input_mailing_list->control}
{/if}

Dans les deux cas j'arrive a faire ce que je souhaite.

Merci
je pensais que tu voulais masquer la case à cocher?
Sinon, si les 2 solutions font ce que tu souhaites au final...à toi de choisir.
Perso, je préfère les tests, inutile d'initialiser des tas de variables, il y en a déjà assez comme ça!
Oui je veux caché la case a cocher.

Je peu le faire avec une condition "si" ?
SiSi,bien sûr, je n'ai pas l'intégrité du gabarit et je vois :
Code :
{$input_mailing_list->control} ou {if $control->name == 'input_mailing_list'}
{$control->prompt}{$control->marker}: {$control->control}...
je m'attendais plutôt à quelque chose comme :
{if $control->name != 'input_mailing_list'}
{$control->prompt}!$control->marker}: {$control->control}...

Mais c'est sans importance puisque le résultat est celui que tu attends.
Donc, perso, je préfère la solution avec le test plutôt que celle avec l'assignation de variables smarty.
C'est bon ça fonctionne.

Merci l'aide Wink