Input : liste

input => liste

Ce mode d'affichage permet de lister des éléments comme c'est le cas dans la description de liste du DB.
Contrairement au mode table et inline, on ne peut pas modifier directement les éléments dans le formulaire, tout au plus les trier, changer le statut, ...toutes opérations possibles par un simple clic.

La description de la liste est très proche de celle de la liste DB.
        'rubriques'=> array(
                'label'=>'g_arbo.sous-rubriques',
                'showtest'=>array('is_defined'=>array('id')),
                'input'=>'liste',
                'zorder'=>'g_arbo',
                'liste'=>array( array('libelle'=>'id',
                                        'taille'=>120,
                                        'url'=> $php_fiche.'?table=g_arbo&id='.getpost('id').'&ssaction=delete|g_arbo|varID',
                                        'acces'=>array('show'=>$recordDroits['g_arbo']['droits']['delete']),
                                        'field'=>'id',
                                        ),
                                array('libelle'=>'',
                                        'field'=>'zorder_up',
                                        'taille'=>20,
                                        'url'=> 'javascript:ssaction("", "#FORM#", "up|g_arbo|varID|g_arbo_id")',
                                        'acces'=>array('show'=>$recordDroits['g_arbo']['table']['zorder']['write']),
                                        ),
                                array('libelle'=>'',
                                        'field'=>'zorder_down',
                                        'taille'=>20,
                                        'url'=> 'javascript:ssaction("", "#FORM#", "down|g_arbo|varID|g_arbo_id")',
                                        'acces'=>array('show'=>$recordDroits['g_arbo']['table']['zorder']['write']),
                                        ),
                                array('libelle'=>'',
                                        'field'=>'add_page',
                                        'taille'=>20,
                                        'url'=> 'javascript:ssaction("", "#FORM#", "insert|g_arbo||g_arbo_id|'.getpost('id').'|lg_langue_id|0|zorder|3")',
                                        'acces'=>array('show'=>$recordDroits['g_arbo']['droits']['add']),
                                        'icon'=>'core/images/button_add.png',
                                        ),
                                array('libelle'=>'',
                                        'field'=>'move_rub',
                                        'taille'=>20,
                                        'url'=> 'javascript:ssaction("", "#FORM#", "move|g_arbo|varID||g_arbo_id")',
                                        'acces'=>array('show'=>$recordDroits['g_arbo']['table']['g_arbo_id']['write']),
                                        'icon'=>'core/images/button_move.png',
                                        ),
                                array('libelle'=>'',
                                        'field'=>'copy_rub',
                                        'taille'=>20,
                                        'url'=> 'javascript:ssaction("", "#FORM#", "copy|g_arbo|varID||g_arbo_id")',
                                        'acces'=>array('show'=>$recordDroits['g_arbo']['table']['g_arbo_id']['write']),
                                        'icon'=>'core/images/button_copy.png',
                                        ),
                                array('libelle'=>'',
                                        'field'=>'paste_rub',
                                        'taille'=>20,
                                        'url'=> 'javascript:ssaction("", "#FORM#", "paste|g_arbo|'.getpost('id').'|lg_langue_id|0|zorder|3")',
                                        'acces'=>array('show'=>$recordDroits['g_arbo']['table']['g_arbo_id']['write']),
                                        'icon'=>'core/images/action_paste.png',
                                        ),
                                array('libelle'=>'g_arbo.nom',
                                        'taille'=>460,
                                        'field'=>'nom',
                                        'url'=>$php_fiche.'?table=g_arbo&id=varID',
                                        'acces'=>array('show'=>$recordDroits['g_arbo']['droits']['show']),
                                        ),
                                array('libelle'=>'g_arbo.status',
                                        'taille'=>50,
                                        'field'=>'status',
                                        'array'=>array(0=>'icon_nok', 1=>'icon_ok'),
                                        ),
                                array('libelle'=>'g_bmenu',
                                        'taille'=>50,
                                        'field'=>'bmenu',
                                        'array'=>array(0=>'icon_uncheck', 1=>'icon_check')
                                        ),
                            ),
                'valeurs'=>"SELECT id, nom, zorder, status, bmenu, lg_langue_id FROM g_arbo WHERE g_arbo_id='33540' ORDER BY zorder, id LIMIT ".((RequestLong(getpost('garbo_garbo_page'), 1)-1)*$GLOBALS['config']['pagination']).", ".$GLOBALS['config']['pagination'],
                'action'=>array(
                    'creer_rubrique'=>array(
                        'ssaction'=>'insert|g_arbo||g_arbo_id|33540|lg_langue_id|0|zorder|0',
                        'acces'=>array('show'=>$recordDroits['g_arbo']['droits']['add']),
                        ),
                ),
                'list_selection'=>array('table'=> 'g_arbo',
                                        'hidden'=>!$_SESSION['enable_multiple_sel'],
                                          'action'=>array(
                                              'delSel'=>array(
                                                    'icon'=>'button_x.png',
                                                    'confirm'=>'supprimer_selection',
                                                ),
                                              'editSel'=>array(
                                                    'icon'=>'button_edit.png',
                                                    'confirm'=>'editer_selection',
                                                    'param'=>'global_liste_table.php?g_table=g_arbo&g_from='.urlencode('adm_fiche_table.php?'.str_replace('&', '&', getParam('action,ssaction'))).'&g_lib='.$record['g_arbo']['libelle'].'&g_field='.($record['g_arbo']['selection']['fields']?$record['g_arbo']['selection']['fields']:'nom').'&g_tri='.($record['g_arbo']['selection']['tri']?$record['g_arbo']['selection']['tri']:'nom').'&g_mode='.($record['g_arbo']['selection']['mode']?$record['g_arbo']['selection']['mode']:'table').'&g_where='.urlencode(' id IN (lstID) '),
                                                ),
                                            ),
                                          ),
                'list_count'=>"SELECT count(id) FROM g_arbo WHERE g_arbo_id='33540'",
                'list_pagination'=>'garbo_garbo_page',
                'show'=>'all',
                'write'=>'all',
            ),

 zorder  dans le cas d'une liste triée, indiquer le nom de la table à  trier
 liste  la description de la liste au format liste de DB

Tenir compte de où on veut aller sur les actions et de si on veut enregistrer la fiche en cours
valeurs
requêtes SQL pour obtenir la liste, peut-être paginée
action
tableau décrivant les actions (créer, etc..) à mettre sous la liste

  • cle = code intitulé action
  • ssaction = action sur la touche au format js ssaction()
  • url =  lien simple sur le bouton
  • acces : contrôle de droits sur le bouton
list_selection
tableau décrivant les actions possibles quand le mode multi-sélection est activé

  • table = db concerné par l'action
  • hidden = règle indiquant l'affichage ou non de l'action
  • action = tableau des actions possibles au format :
  1. clé = code ssaction, delSel pour supprimer la sélection, editSel pour l'éditer par exemple
  2. icon = icône du bouton d'action
  3. confirm = code de texte pour la confirmation de lancement de l'action sur la sélection
  4. param = paramètres éventuels à passer à la ssaction
list_count
dans le cas d'une liste paginée, requête SQL ramenant le nombre total d'enregistrements
list_pagination
dans le cas d'une liste paginée, variable GET/POST utilisée pour connaitre la page en cours d'affichage.