1. Fabrik 3.8.1 has been released. It is mostly bug fixes and feature enhancements, but does include two new plugins (push notifications, and the sequence element). As usual we strongly recommend testing the new release on a sandbox if your application is mission critical, and always do an Akeeba backup before updating.
    Dismiss Notice

Display List Filter Horizontally

Jul 1, 2013
Display List Filter Horizontally
  • If you are using a default Fabrik template, first clone it by copying its folder in /components/com_fabrik/views/list/tmpl/ and renaming it.

    Then edit its default_filter.php template and replace its code with the following code:
    PHP:
    <div class="fabrikFilterContainer">
        <?php if ($this->filterMode === 3 || $this->filterMode === 4) {?>
            <div class="searchall">
                <ul class="fabrik_action">
                    <?php if (array_key_exists('all', $this->filters)) {
                        echo '<li>' . $this->filters['all']->element . '</li>';
                    }?>
                    <?php if ($this->filter_action != 'onchange') {?>
                        <li>
                            <input type="button" class="fabrik_filter_submit button" value="<?php echo JText::_('COM_FABRIK_GO');?>" name="filter" >
                        </li>
                    <?php } ?>
                </ul>
            </div>
        <?php } else { ?>
            <table class="filtertable fabrikList">
                <thead>
                    <tr class="fabrik___heading">
                        <?php foreach ($this->filters as $filter) {?>
                            <th><?php echo $filter->label;?></th>
                        <?php }?>
                    </tr>
                </thead>
                <tbody>
                    <tr class="fabrik_row oddRow1">
                        <?php
                            $c = 0;
                            foreach ($this->filters as $filter) {
                                $required = $filter->required == 1 ? ' notempty' : ""; ?>
                                <td class="<?php echo $required?>">
                                    <?php echo $filter->element;?>
                                </td>
                                <?php $c ++;
                            } ?>
                    </tr>
                </tbody>
                <tfoot>
                    <?php if ($this->filter_action != 'onchange') {?>
                        <tr class="fabrik_row oddRow0">
                            <td colspan="<?php echo count($this->filters)?>" style="text-align:right;">
                                <input type="button" class="fabrik_filter_submit button" value="<?php echo JText::_('COM_FABRIK_GO');?>"
                                  name="filter" />
                            </td>
                        </tr>
                    <?php }?>
                </tfoot>
            </table>
        <?php }?>
    </div>
    Finally edit your list and select your new template.
s6930064 likes this.