Author: lombardot
Date: 2010-09-17 00:00:58 +0200 (Fri, 17 Sep 2010)
New Revision: 30920

Modified:
   
plugins/sfDatagridPlugin/data/generator/sfPropelDatagridModule/default/parts/datagridConfiguration.php
   
plugins/sfDatagridPlugin/data/generator/sfPropelDatagridModule/default/parts/indexDatagridAction.php
Log:
[sfDatagridPlugin] lombardot End first part for admin generator

Modified: 
plugins/sfDatagridPlugin/data/generator/sfPropelDatagridModule/default/parts/datagridConfiguration.php
===================================================================
--- 
plugins/sfDatagridPlugin/data/generator/sfPropelDatagridModule/default/parts/datagridConfiguration.php
      2010-09-16 19:28:00 UTC (rev 30919)
+++ 
plugins/sfDatagridPlugin/data/generator/sfPropelDatagridModule/default/parts/datagridConfiguration.php
      2010-09-16 22:00:58 UTC (rev 30920)
@@ -24,4 +24,28 @@
   */
   public function getRowAction(){
      return <?php echo 
$this->asPhp(isset($this->config['list']['row_action'])? 
$this->config['list']['row_action']:($this->params['with_show']?'show':'edit'));
 ?>;
-  }
\ No newline at end of file
+  }
+  
+  /**
+  * Personnalize sorting columns for virtual fields
+  */
+  public function getColumnsSorting(){
+    $sort= <?php echo 
$this->asPhp(isset($this->config['list']['columns_sorting'])? 
$this->config['list']['columns_sorting']:false); ?>;
+    if(sizeof($this->getListObjectActions())>0){
+       $sort['_object_actions']='nosort';
+    }
+    if(sizeof($this->getValue('list.batch_actions'))>0){
+       $sort['CHECK_ALL']='nosort';
+    }
+    return $sort;
+  }
+  
+  /**
+  * Allow you to hide some filters
+  **/
+  public function getHideFilters()
+  {
+    return <?php echo 
$this->asPhp(isset($this->config['list']['hide_filters']) ? 
$this->config['list']['hide_filters'] : array()) ?>;
+<?php unset($this->config['list']['hide_filters']) ?>
+  }
+  
\ No newline at end of file

Modified: 
plugins/sfDatagridPlugin/data/generator/sfPropelDatagridModule/default/parts/indexDatagridAction.php
===================================================================
--- 
plugins/sfDatagridPlugin/data/generator/sfPropelDatagridModule/default/parts/indexDatagridAction.php
        2010-09-16 19:28:00 UTC (rev 30919)
+++ 
plugins/sfDatagridPlugin/data/generator/sfPropelDatagridModule/default/parts/indexDatagridAction.php
        2010-09-16 22:00:58 UTC (rev 30920)
@@ -30,8 +30,31 @@
        }else{
           $this->datagrid->setRowAction('<?php echo $this->getModuleName(); 
?>/<?php echo $this->configuration->getRowAction() ?>?<?php echo 
strtolower($this->getPrimaryKeys(true)); ?>=','<?php echo 
strtolower($this->getPrimaryKeys(true)); ?>');
     }
+  
+    //Columns sorting
+    $columns=$this->datagrid->getColumnsSorting();
+    $columns=$this->getColumnsSortingForDatagrid($columns);
+    $this->datagrid->setColumnsSorting($columns);    
+    
+    //Default sorting
+<?php $sort=$this->configuration->getDefaultSort();
+if($sort[0]!=''):
+?>
+   $this->datagrid->setDefaultSortingColumn(<?php echo $this->asPhp($sort[0]) 
?>,<?php echo $this->asPhp($sort[1]) ?>);
+<?php endif; ?>
 
-       <?php if($datagrid_actions): ?>
+    //hide_filters
+<?php 
+$hide_filters=$this->configuration->getHideFilters();
+if($hide_filters): ?>
+    $array=array();
+<?php foreach($hide_filters as $filter): ?>
+    $array['<?php echo $filter ?>']='NOTYPE';
+<?php endforeach; ?>
+    $this->datagrid->setColumnsFilters($array);
+<?php endif; ?>
+
+<?php if($datagrid_actions): ?>
        //Batch actions
 <?php foreach($datagrid_actions as  $actionName => $params ){ ?>
     $actions[__('<?php echo @$params['label']?$params['label']:$actionName 
?>')]= '<?php echo $this->getModuleName(); ?>/<?php echo 
@$params['action']?$params['action']:lcfirst(sfInflector::camelize($actionName.'_selected'));
 ?>';
@@ -61,6 +84,17 @@
   }
   
   /**
+  * @param array
+  * @return array
+  */
+  protected function getColumnsSortingForDatagrid($columns){
+<?php foreach($this->configuration->getColumnsSorting() as $col=>$value): ?>
+    $columns['<?php echo $col; ?>']='<?php echo $value; ?>';
+<?php endforeach; ?>
+    return $columns;
+  }
+  
+  /**
   * @return array of values
   */
   protected function getValuesForDatagrid(){

-- 
You received this message because you are subscribed to the Google Groups 
"symfony SVN" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/symfony-svn?hl=en.

Reply via email to