From 82874b0c88bcf37b049bbf0660679ff63b954b6f Mon Sep 17 00:00:00 2001 From: Moritz Kraft Date: Tue, 11 Dec 2012 10:23:54 +0000 Subject: [PATCH 1/4] Commented out global Twig var (quickfix) https://github.com/Abhoryo/APYDataGridBundle/issues/316 --- Twig/DataGridExtension.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Twig/DataGridExtension.php b/Twig/DataGridExtension.php index 38964151..e4ff5efb 100755 --- a/Twig/DataGridExtension.php +++ b/Twig/DataGridExtension.php @@ -74,7 +74,7 @@ public function initRuntime(\Twig_Environment $environment) $globals = $this->environment->getGlobals(); if (!isset($globals['grid'])) { - $this->environment->addGlobal('grid', null); + //$this->environment->addGlobal('grid', null); } if (!isset($globals['column'])) { From 01019bd2fb7e8aa4fdbc7fb7735ed822235d72b7 Mon Sep 17 00:00:00 2001 From: Moritz Kraft Date: Tue, 11 Dec 2012 10:29:16 +0000 Subject: [PATCH 2/4] Full quickfix for bundle issue #316, see upstream https://github.com/Abhoryo/APYDataGridBundle/issues/316 --- Twig/DataGridExtension.php | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Twig/DataGridExtension.php b/Twig/DataGridExtension.php index e4ff5efb..281850f9 100755 --- a/Twig/DataGridExtension.php +++ b/Twig/DataGridExtension.php @@ -69,12 +69,14 @@ public function setPagerFanta(array $def) public function initRuntime(\Twig_Environment $environment) { $this->environment = $environment; + + return; // return here as a quickfix for bundle issue #316, see upstream // Avoids the exception "Variable does not exist" with the _self template $globals = $this->environment->getGlobals(); if (!isset($globals['grid'])) { - //$this->environment->addGlobal('grid', null); + $this->environment->addGlobal('grid', null); } if (!isset($globals['column'])) { From 292c5e16464550688763e466ec6ddcd384fb38be Mon Sep 17 00:00:00 2001 From: tam Date: Fri, 29 Mar 2013 19:12:17 +0000 Subject: [PATCH 3/4] allowing multiple route on one RowAction cell --- Grid/Column/ActionsColumn.php | 3 ++- Grid/Row.php | 5 +++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/Grid/Column/ActionsColumn.php b/Grid/Column/ActionsColumn.php index a034b014..62fc8a3b 100644 --- a/Grid/Column/ActionsColumn.php +++ b/Grid/Column/ActionsColumn.php @@ -44,11 +44,12 @@ public function getRouteParameters($row, $action) $name = $this->getValidRouteParameters($parameter); } $routeParameters[$name] = $row->getField($parameter); + } elseif( array_key_exists( $parameter, $row->getFields())) { + $routeParameters[$this->getValidRouteParameters($name)] = $row->getField( $parameter ); } else { $routeParameters[$this->getValidRouteParameters($name)] = $parameter; } } - return $routeParameters; } diff --git a/Grid/Row.php b/Grid/Row.php index 8de9cd17..705026ab 100644 --- a/Grid/Row.php +++ b/Grid/Row.php @@ -37,6 +37,11 @@ public function getField($rowId) return isset($this->fields[$rowId]) ? $this->fields[$rowId] : ''; } + public function getFields() + { + return $this->fields; + } + public function setColor($color) { $this->color = $color; From ffe250ca67df472a461330d51e06eb28807cdc51 Mon Sep 17 00:00:00 2001 From: Andrew Wolder Date: Mon, 16 Nov 2015 17:02:34 +0100 Subject: [PATCH 4/4] Update DataGridExtension.php --- Twig/DataGridExtension.php | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/Twig/DataGridExtension.php b/Twig/DataGridExtension.php index f0d2a56a..419fe81c 100755 --- a/Twig/DataGridExtension.php +++ b/Twig/DataGridExtension.php @@ -126,17 +126,17 @@ public function initRuntime(\Twig_Environment $environment) public function getFunctions() { return array( - 'grid' => new \Twig_Function_Method($this, 'getGrid', array('is_safe' => array('html'))), - 'grid_html' => new \Twig_Function_Method($this, 'getGridHtml', array('is_safe' => array('html'))), - 'grid_url' => new \Twig_Function_Method($this, 'getGridUrl', array('is_safe' => array('html'))), - 'grid_filter' => new \Twig_Function_Method($this, 'getGridFilter', array('is_safe' => array('html'))), - 'grid_column_operator' => new \Twig_Function_Method($this, 'getGridColumnOperator', array('is_safe' => array('html'))), - 'grid_cell' => new \Twig_Function_Method($this, 'getGridCell', array('is_safe' => array('html'))), - 'grid_search' => new \Twig_Function_Method($this, 'getGridSearch', array('is_safe' => array('html'))), - 'grid_pager' => new \Twig_Function_Method($this, 'getGridPager', array('is_safe' => array('html'))), - 'grid_pagerfanta' => new \Twig_Function_Method($this, 'getPagerfanta', array('is_safe' => array('html'))), + new \Twig_SimpleFunction('grid' , array($this, 'getGrid'), array('is_safe' => array('html'))), + new \Twig_SimpleFunction('grid_html', array($this, 'getGridHtml'), array('is_safe' => array('html'))), + new \Twig_SimpleFunction('grid_url', array($this, 'getGridUrl'), array('is_safe' => array('html'))), + new \Twig_SimpleFunction('grid_filter', array($this, 'getGridFilter'), array('is_safe' => array('html'))), + new \Twig_SimpleFunction('grid_column_operator', array($this, 'getGridColumnOperator'), array('is_safe' => array('html'))), + new \Twig_SimpleFunction('grid_cell', array($this, 'getGridCell'), array('is_safe' => array('html'))), + new \Twig_SimpleFunction('grid_search', array($this, 'getGridSearch'), array('is_safe' => array('html'))), + new \Twig_SimpleFunction('grid_pager', array($this, 'getGridPager'), array('is_safe' => array('html'))), + new \Twig_SimpleFunction('grid_pagerfanta', array($this, 'getPagerfanta'), array('is_safe' => array('html'))), // Other methods with only the grid as input and output argument (Twig >= 1.5.0) - 'grid_*' => new \Twig_Function_Method($this, 'getGrid_', array('is_safe' => array('html'))) + new \Twig_SimpleFunction('grid_*', array($this, 'getGrid_'), array('is_safe' => array('html'))) ); }