IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Symfony PHP Discussion :

[extjs] gridpanel, filtre et paging


Sujet :

Symfony PHP

  1. #1
    Membre confirmé Avatar de Mitaka
    Profil pro
    formaTRICE en informatique
    Inscrit en
    Avril 2003
    Messages
    192
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : formaTRICE en informatique

    Informations forums :
    Inscription : Avril 2003
    Messages : 192
    Par défaut [extjs] gridpanel, filtre et paging
    bonjour,
    j'aimerai faire une liste dans un onglet. Chaque élément doit être cochable.
    de plus, j'aimerai ajouter différents menus entre le titre de l'onglet et le début de la liste mais aussi en dessous de la liste.
    Il faudrait aussi ajouter un filtre (et là c'est le plus difficile pour moi) avec différents champs (bouton radio, liste combobox et champs texte à saisir) et une pagination des différents enregistrements.
    je n'utilise pas le générateur yml et je fais le code en php directement dans un listSuccess.php.
    quelqu'un connait-t-il des exemples simples où je peux trouver le code de tout ça ?

    merci d'avance

  2. #2
    Membre confirmé Avatar de Mitaka
    Profil pro
    formaTRICE en informatique
    Inscrit en
    Avril 2003
    Messages
    192
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : formaTRICE en informatique

    Informations forums :
    Inscription : Avril 2003
    Messages : 192
    Par défaut
    j'ai réussi à faire un gridpanel dans un onglet
    voici le code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
     
     
    use_helper('sfExtjs2');
    $sfExtjs2Plugin = new sfExtjs2Plugin(array('theme'=>'gray'));
    $sfExtjs2Plugin->load();
     
    $sfExtjs2Plugin->begin();
     
     
     
    //****************************************************************
    // on recherche et on enregistre les normes à afficher dans $data
    //****************************************************************
     
      if(!empty($normes)){
          $data = "[";
          foreach ($normes as $norme){
                  list($etat,$action_date,$action_norme) = $norme->getEtat();
                  $data .= "['".$norme->getCodeLocal()."','".$norme->getDate()."','".$etat."','".$action_norme."','".$action_date."','".link_to(image_tag("/marianne/web/sfExtjsThemePlugin/images/silk_icons/icons/page_edit.png"), 'normes/edit?date='.$norme->getDate().'&code_local='.$norme->getCodeLocal())."'],";
     
           }
          $data .= "]"; 
     
      }
      else
      {
          $data = "";
      }
     
     
    // **************************************
    // Application
    // **************************************
    $sfExtjs2_cm = $sfExtjs2Plugin->ColumnModel(array
    (
      'parameters' => array
      (
        $sfExtjs2Plugin->asAnonymousClass(array('header' => 'Code de la norme', 'width' => 200,  'sortable' => true, 'dataIndex' => 'code_norme')),
        $sfExtjs2Plugin->asAnonymousClass(array('header' => 'Création', 'width' => 120,'renderer'=> "Ext.util.Format.dateRenderer('d.m.Y')",  'sortable' => true, 'dataIndex' => 'creation')),
        $sfExtjs2Plugin->asAnonymousClass(array('header' => 'Etat', 'width' => 90, 'sortable' => true, 'dataIndex' => 'etat')), 
        $sfExtjs2Plugin->asAnonymousClass(array('header' => 'Chaînage', 'width' => 200, 'sortable' => true, 'dataIndex' => 'chainage')), 
        $sfExtjs2Plugin->asAnonymousClass(array('header' => 'Dernière modification', 'width' => 120,'renderer'=> "Ext.util.Format.dateRenderer('d.m.Y')",  'sortable' => true, 'dataIndex' => 'lastChange')),
        $sfExtjs2Plugin->asAnonymousClass(array('header' => 'Editer', 'width' => 90, 'sortable' => true, 'dataIndex' => 'edit')), 
      )
    ));
     
     
    $sfExtjs2_ds = $sfExtjs2Plugin->Store(array
    ( 
     
      'data' => $sfExtjs2Plugin->asVar($data),
     
      'reader'=> $sfExtjs2Plugin->asVar("new Ext.data.ArrayReader({}, [
        {name: 'code_norme'},
        {name: 'creation', type: 'date', dateFormat: 'Y-m-d'},
        {name: 'etat'},
        {name: 'chainage'},
        {name: 'lastChange', type: 'date', dateFormat: 'Y-m-d'},
        {name: 'edit'}
      ])
      ")
    ));
     
    $sfExtjs2_tbar = $sfExtjs2Plugin->Toolbar(array(
                'id'    => 'tbar',
                'items' => array(
                  "{
                    icon: '../images/add.gif',
                    cls: 'x-btn-text-icon',
                    id: 'add-btn',
                    text: 'New',
                    tooltip: '<b>New</b><br/>Create a new Cisco RMA'
                  },
                  '-',
                  {
                    id: 'filterCombo',
                    cls: 'x-btn-text-icon bmenu',
                    text:'Filter by CRTS ID',
                    menu : {items: [
                      {text: 'CRTS ID', handler: onItemClick},
                      {text: 'GNCC Ticket', handler: onItemClick},
                      {text: 'Cisco TAC', handler: onItemClick},
                      {text: 'Cisco RMA', handler: onItemClick},
                      {text: 'Created At', handler: onItemClick}
                    ]}
                  },
                  filter"
                )
              ));
     
    $sfExtjs2_grid = 
    $sfExtjs2Plugin->Viewport(array
    (
      'layout' => 'border',  'items'  => array
      (
        $sfExtjs2Plugin->Panel(array
        (
          'id'=>'tonyNp',
          'region'=>'north',
          'height'=>'auto',
          'margins'=>'5 5 5 5',
          'html'=>'<h1>Marianne</h1>',
          'border'=>'false'
        )),
     
     
     
     
        $sfExtjs2Plugin->TabPanel(array
        (
          'region'=>'center',
          'margins'=>'0 5 0 0',
          'items'      => array
          (
            $sfExtjs2Plugin->GridPanel(array
            (
              'renderTo'  => 'lst_norme', 
              'title'     => 'Liste des normes', 
              'ds'        => $sfExtjs2_ds,
              'cm'        => $sfExtjs2Plugin->asVar($sfExtjs2_cm),
              'tbar' => array
            (
            $sfExtjs2Plugin->Toolbar(array(
                  'id'    => 'tbar',
                  'items' => array(
                    "{
                      icon: '../images/add.png',
                      cls: 'x-btn-text-icon',
                      id: 'add-btn',
                      text: 'Ajouter une norme',
                    },
                    "
                  )
                ))
            ),
            )),
            "{contentEl:'markup', title: 'Liste des recueils'}"
          )
        ))
      )
     
    ));
     
     
    $sfExtjs2Plugin->beginApplication(array
    (
      'name'   => 'App',
      'public' => array
      (
        'init' => $sfExtjs2Plugin->asMethod($sfExtjs2_grid)
      )
    ));
      $sfExtjs2Plugin->endApplication();
      $sfExtjs2Plugin->initApplication('App');
     
     
    $sfExtjs2Plugin->end();
    je ne vois pas où je peux insérer le paging, le filtre et d'autres éléments

Discussions similaires

  1. httphandler filtre accès page aspx (vb.net)
    Par antrax2013 dans le forum ASP.NET
    Réponses: 1
    Dernier message: 08/10/2014, 10h36
  2. Réponses: 0
    Dernier message: 11/01/2013, 19h29
  3. [XL-2007] TCD filtre de page
    Par Invité dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 11/10/2011, 17h49
  4. [Visual Web] Filtres sur pages avec 1 exclusion
    Par flotho dans le forum NetBeans
    Réponses: 0
    Dernier message: 28/09/2009, 09h08
  5. extjs gridpanel et service web
    Par mapmip dans le forum Services Web
    Réponses: 1
    Dernier message: 25/11/2008, 12h39

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo