webber12 / eFilter

Фильтрация ресурсов по TV. MODxEvo
16 stars 17 forks source link

Обёртка группы #27

Closed 0test closed 6 years ago

0test commented 6 years ago

Было бы очень круто, если бы можно было задать обёртку группы параметров в фильтре. Сам не смог(

webber12 commented 6 years ago

Что-то я не совсем понял о какой группе речь и чем она отличается от существующей "категории" :)

0test commented 6 years ago

Когда товары объединяем в группу, он автоматически делает вот это $output .= '<div class="eFiltr_cat eFiltr_cat' . $fc . ' ' . $filterCatClass . '">'; А хотелось бы задать для группы именно свой шаблон вывода, с указанием, где будет wrapper и прочим. Надеюсь, понятно объяснил.

webber12 commented 6 years ago

Мне кажется под конкретную нестандартную задачу проще парой строк jQuery обернуть все что нужно в любые обертки, чем пытаться сделать какую-то универсальную обертку )) По-крайней мере я обычно делаю так, если вдруг чего-то не хватает. Для этого собственно все классы кроме общих дублируются еще уникальными, основанными на tv id, его типе а также номере категории, к которой относится текущий фильтр. Хотя возможно я не так понял задачу :))

0test commented 6 years ago

Да задача-то как раз стандартная. Вот допустим кусок бутстрапа, где пришлось вставлять в код обёртку $output .= '<ul class="list-group">';


<form id="eFiltr" class="eFiltr eFiltr_form" action="/womans/" method="get">
    <div class="eFiltr_cat eFiltr_cat0 panel panel-default">
        <div class="panel-heading">Параметры</div>
        <ul class="list-group">
            <li class="list-group-item">
                <h4 class="list-group-item-heading">Размеры</h4>
                <select name="f[13][]" class="form-control input-sm">
                    <option value="0"> - Размеры - </option>
                    <option value="L">L (5)</option><option value="M">M (1)</option><option value="S">S (1)</option><option value="XL">XL (3)</option><option value="XS">XS (5)</option><option value="XXL">XXL (2)</option>
                </select>
            </li>

            <li class="list-group-item">
                    <h4 class="list-group-item-heading">Цвет</h4>
                <div class="radio">
                    <label>
                        <input type="radio" name="f[11][]" value="0">Все товары
                  </label> 
                </div>
                <div class="radio">
                    <label>
                        <input type="radio" name="f[11][]" value="Белый">Белый<span class="badge">3</span>
                  </label> 
                </div>
            </li>
        </ul>
    </div>
    <div class="eFiltr_cat eFiltr_cat1 panel panel-default">
        <div class="panel-heading">Дополнительно</div>
        <ul class="list-group">
            <li class="list-group-item">
                <h4 class="list-group-item-heading">Тип ткани</h4>          
                <div class="checkbox-input">
                    <label class="checkbox ">
                        <input type="checkbox" name="f[14][]" value="Батик">Батик<span class="badge">1</span>
                    </label>
                </div>  

                <div class="checkbox-input">
                    <label class="checkbox ">
                        <input type="checkbox" name="f[14][]" value="Фланель">Фланель<span class="badge">1</span>
                    </label>
                </div>
            </li>

            <li class="list-group-item">
                <h4 class="list-group-item-heading">Узор</h4>   
                <div class="checkbox-input">
                <label class="checkbox  ">
                    <input type="checkbox" name="f[17][]" value="ic_filter_color1.png"> <img src="assets/images/pattern/ic_filter_color1.png" alt=""> Красненький <span class="badge">2</span>
                </label>
                </div>  

                <div class="checkbox-input">
                <label class="checkbox  ">
                    <input type="checkbox" name="f[17][]" value="ic_filter_color2.png"> <img src="assets/images/pattern/ic_filter_color2.png" alt=""> Синенький <span class="badge">2</span>
                </label>
                </div>
            </li>       
        </ul>
    </div>
</form>```
webber12 commented 6 years ago

Попробуй так https://github.com/webber12/eFilter/commit/36e82aa30aa67945c5c94bb0681bb8fd764389d5 - негде потестить :)

0test commented 6 years ago

Просто шикарно, спасибо. Теперь можно стилизовать фильтры вообще как угодно. Попробовал на обучающем сайте сделать, всё арбайт. http://lesson.1px.su/womans/ Соответственно, предыдущие коммиты с классом теперь не нужны)

webber12 commented 6 years ago

Ок, подождем, вдруг еще какие косяки повылазят. Кстати, для отключения в режиме ajax=1 изменений в $_GET-строке уже давно есть параметр &changeState=0 (вроде даже рабочий) . Тебя же смущала эта строка с %% ))

0test commented 6 years ago

Возможно &changeState=0 давно добавлен, у меня не сработал, нужно обновиться. Подожду пуша с tplOuterCategory и сразу уж..