Skip to content

select generation is bad #3043

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
Maujard opened this issue Mar 15, 2025 · 3 comments
Closed

select generation is bad #3043

Maujard opened this issue Mar 15, 2025 · 3 comments

Comments

@Maujard
Copy link

Maujard commented Mar 15, 2025

foreach ((widgets::listTemplate()) as $type => $values) {

<option value="" data-default="1"><a></option>

is not supported.
modify by 'selected' on the first option

<option data-type="info" value="numeric" selected>Numérique</option>

the code generate is :

 <select id="sel_widgetSubtype">
     <option value="" data-default="1"><a></option>
     <option data-type="info" value="numeric"><a>Numérique</option>
     <option data-type="info" value="binary"><a>Binaire</option>
     <option data-type="info" value="string"><a>Autre</option>
     <option data-type="action" value="other"><a>Défaut</option>
     <option data-type="action" value="slider"><a>Curseur</option>
     <option data-type="action" value="message"><a>Message</option>
     <option data-type="action" value="color"><a>Couleur</option>
     <option data-type="action" value="select"><a>Liste</option>
     </select>

and must be :

<div class="col-xs-8">
   <select id="sel_widgetSubtype" class="form-control">
   <option data-type="info" value="numeric" selected>Numérique</option>
   <option data-type="info" value="binary">Binaire</option>
   <option data-type="info" value="string">Autre</option>
   <option data-type="action" value="other">Défaut</option>
   <option data-type="action" value="slider">Curseur</option>
   <option data-type="action" value="message">Message</option>
   <option data-type="action" value="color">Couleur</option>
   <option data-type="action" value="select">Liste</option>
   </select>
@Maujard
Copy link
Author

Maujard commented Mar 15, 2025

the good syntax perhaps must be

<?php
foreach ((widgets::listTemplate()) as $type => $values) {
    foreach ($values as $subtype => $namelist) {
        $first = true; // Indicateur pour la première option
        foreach ($namelist as $name) {
            $selected = $first ? ' selected' : ''; // Ajoute selected uniquement pour le premier élément
            echo '<option data-type="' . $type . '" data-subtype="' . $subtype . '" value="' . $name . '"' . $selected . '>' . ucfirst(str_replace('tmpl', '', $name)) . '</option>';
            $first = false; // Désactive l'indicateur après la première itération
        }
    }
}
?> 

@Maujard
Copy link
Author

Maujard commented Mar 15, 2025

I think is dreadful when you try to create a widget directly 👍

<div class="form-group">
    <label class="col-lg-4 col-xs-4 control-label">Sous-Type</label>
    <div class="col-lg-4 col-xs-5">
        <select class="form-control selectWidgetSubType"
            data-l1key="subtype" data-type="info">
            <option data-type="info" value="numeric"><a>Numérique</option>
            <option data-type="info" value="binary"><a>Binaire</option>
            <option data-type="info" value="string"><a>Autre</option>
        </select><select class="form-control selectWidgetSubType"
            data-l1key="subtype" data-type="action">
            <option data-type="action" value="other"><a>Défaut</option>
            <option data-type="action" value="slider"><a>Curseur</option>
            <option data-type="action" value="message"><a>Message</option>
            <option data-type="action" value="color"><a>Couleur</option>
            <option data-type="action" value="select"><a>Liste</option>
        </select>
    </div>

@zoic21
Copy link
Contributor

zoic21 commented Mar 17, 2025

Hello,
Thank for your return, I create a PR with correction #3044

@zoic21 zoic21 closed this as completed Mar 17, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants