Page 1 sur 1

Backend ordre des champs dans : ajouter/Modifier un objet

Posté : dim. 19 janv. 2014 12:06
par jcfiguet
Bonjour,

En backend, lors de ma modification ou de l'ajout d'un objet, l'affichage des champs ne respecte pas l'ordre prévu dans "Gestion des champs" pour une collection donnée.

J'ai trouvé une solution de contournement en modifiant la public function getFields() dans le fichier item.php pour forcer un "order by" sur le champ ordering :

public function getFields()
{
$item = $this->loadFormData();

if ( empty($this->_fields) )
{
$collection = $this->getCollection();

// Create a new query object.
$db =& JFactory::getDBO();
$query = $db->getQuery(true);

// Select the required fields from the table.
$query->select('f.id, f.field, f.description, f.tablecolumn, f.required, f.attribs, f.ordering');
$query->from('#__collector_fields as f');

// Join over the type.
$query->select('t.type AS type');
$query->join('LEFT', '#__collector_fields_type AS t ON t.id = f.type');

// Filter by collection
$query->where('f.collection = '.$collection->id);

// BUG correction : Add by JCF to obtain the good order of fields
$query->order('f.ordering ASC');
// End BUG correction


$db->setQuery( $query );

$fields = $db->loadObjectList();


Peux-tu confirmer ou infirmer cette modification ?