bonsoir ,
j'aimerai creer des filtres personnalisés pour un JModelList , j'ai pu coder ca (en resumé) pour un filtre standart :
classe héritant du JModelList :
dans le vue:
ca marche tres bien , vue que jgrid.publishedOptions existe ...
y a t il un moyen dans le framework d en faire des personnalisé (comme si dessus) , ou il faut les coder a la main ?
cordialement .
j'aimerai creer des filtres personnalisés pour un JModelList , j'ai pu coder ca (en resumé) pour un filtre standart :
classe héritant du JModelList :
Code PHP:
protected function populateState($ordering = null, $direction = null) {
...
// Set the filter.published state
$published = $this->getUserStateFromRequest($this->context . '.filter.published', 'filter_published');
if ($published != '') {
$this->setState('filter.published', array($published));
}
...
// Call populateState from JModelList
//le trie par defaut des colonnes
parent::populateState('id', 'asc');
}
protected function getListQuery() {
// Create a new query object.
$db = JFactory::getDBO();
$query = $db->getQuery(true);
/* ----------- Recupération des données ----------- */
// Select some fields
$query->select(''
....
// Filter by published state
if ($published = $this->getState('filter.published')) {
$query->where('f.published IN (' . implode(',', $published) . ')');
} else {
$query->where('f.published IN (0, 1)');
}
...
Code PHP:
$published = $this->state->get('filter.published');
$published = $published ? $published[0] : '';
....
<select name="filter_published" class="inputbox" onchange="this.form.submit()">
<option value=""><?php echo JText::_('JOPTION_SELECT_PUBLISHED');?></option>
<?php echo JHtml::_('select.options', JHtml::_('jgrid.publishedOptions', array('all'=>false)), 'value', 'text', $published, true);?>
</select>
y a t il un moyen dans le framework d en faire des personnalisé (comme si dessus) , ou il faut les coder a la main ?
cordialement .
Commentaire