fmsystem-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Fmsystem-commits] [7893] fixed pagination


From: Erik Holm-Larsen
Subject: [Fmsystem-commits] [7893] fixed pagination
Date: Tue, 18 Oct 2011 19:47:09 +0000

Revision: 7893
          http://svn.sv.gnu.org/viewvc/?view=rev&root=fmsystem&revision=7893
Author:   erikhl
Date:     2011-10-18 19:47:08 +0000 (Tue, 18 Oct 2011)
Log Message:
-----------
fixed pagination

Modified Paths:
--------------
    trunk/controller/inc/class.socontrol.inc.php
    trunk/controller/inc/class.uicontrol.inc.php
    trunk/controller/inc/class.uicontrol_group.inc.php
    trunk/controller/inc/class.uicontrol_item.inc.php
    trunk/controller/inc/class.uiprocedure.inc.php

Modified: trunk/controller/inc/class.socontrol.inc.php
===================================================================
--- trunk/controller/inc/class.socontrol.inc.php        2011-10-18 19:45:14 UTC 
(rev 7892)
+++ trunk/controller/inc/class.socontrol.inc.php        2011-10-18 19:47:08 UTC 
(rev 7893)
@@ -139,11 +139,15 @@
                                $clauses[] = '(' . join(' OR ', $like_clauses) 
. ')';
                        }
                }
-               
+               //var_dump($filters);
                if(isset($filters[$this->get_id_field_name()]))
                {
                        $filter_clauses[] = "controller_control.id = 
{$this->marshal($filters[$this->get_id_field_name()],'int')}";
                }
+               if(isset($filters['control_areas']))
+               {
+                       $filter_clauses[] = "controller_control.control_area_id 
= {$this->marshal($filters['control_areas'],'int')}";
+               }
                
                if(count($filter_clauses))
                {

Modified: trunk/controller/inc/class.uicontrol.inc.php
===================================================================
--- trunk/controller/inc/class.uicontrol.inc.php        2011-10-18 19:45:14 UTC 
(rev 7892)
+++ trunk/controller/inc/class.uicontrol.inc.php        2011-10-18 19:47:08 UTC 
(rev 7893)
@@ -584,6 +584,7 @@
                
                public function query()
                {
+                       $filters = array();
                        $params = array(
                                'start' => phpgw::get_var('startIndex', 'int', 
'REQUEST', 0),
                                'results' => phpgw::get_var('results', 'int', 
'REQUEST', null),
@@ -592,6 +593,12 @@
                                'dir'   => phpgw::get_var('dir'),
                                'filters' => $filters
                        );
+                       //var_dump(phpgw::get_var('control_areas'));
+                       $ctrl_area = phpgw::get_var('control_areas');
+                       if(isset($ctrl_area) && $ctrl_area > 0)
+                       {
+                               $filters['control_areas'] = $ctrl_area; 
+                       }
                        
                        $search_for = phpgw::get_var('query');
 
@@ -623,6 +630,7 @@
                        }
 
                        $result_objects = $this->so_control->get($start_index, 
$num_of_objects, $sort_field, $sort_ascending, $search_for, $search_type, 
$filters);
+                       $object_count = 
$this->so_control->get_count($search_for, $search_type, $filters);
                        //var_dump($result_objects);
                                                                
                        $results = array();
@@ -631,6 +639,11 @@
                        {
                                $results['results'][] = 
$control_obj->serialize();      
                        }
+                       
+                       $results['total_records'] = $object_count;
+                       $results['start'] = $params['start'];
+                       $results['sort'] = $params['sort'];
+                       $results['dir'] = $params['dir'];
 
                        array_walk($results["results"], array($this, 
"_add_links"), "controller.uicontrol.view");
 

Modified: trunk/controller/inc/class.uicontrol_group.inc.php
===================================================================
--- trunk/controller/inc/class.uicontrol_group.inc.php  2011-10-18 19:45:14 UTC 
(rev 7892)
+++ trunk/controller/inc/class.uicontrol_group.inc.php  2011-10-18 19:47:08 UTC 
(rev 7893)
@@ -502,6 +502,7 @@
                        }*/
                        
//var_dump($start_index.'-'.$num_of_objects.'-'.$sort_field.'-'.$sort_ascending.'-'.$search_for.'-'.$search_type.'-'.$filters);
                        $result_objects = $this->so->get($start_index, 
$num_of_objects, $sort_field, $sort_ascending, $search_for, $search_type, 
$filters);
+                       $object_count = $this->so->get_count($search_for, 
$search_type, $filters);
                        //var_dump($result_objects);
                                                                
                        $results = array();
@@ -511,6 +512,11 @@
                                $results['results'][] = 
$control_group_obj->serialize();        
                        }
 
+                       $results['total_records'] = $object_count;
+                       $results['start'] = $params['start'];
+                       $results['sort'] = $params['sort'];
+                       $results['dir'] = $params['dir'];
+                       
                        array_walk($results["results"], array($this, 
"_add_links"), "controller.uicontrol_group.view");
 
                        return $this->yui_results($results);

Modified: trunk/controller/inc/class.uicontrol_item.inc.php
===================================================================
--- trunk/controller/inc/class.uicontrol_item.inc.php   2011-10-18 19:45:14 UTC 
(rev 7892)
+++ trunk/controller/inc/class.uicontrol_item.inc.php   2011-10-18 19:47:08 UTC 
(rev 7893)
@@ -532,6 +532,7 @@
                        }
                        
                        $result_objects = 
$this->so_control_item->get($start_index, $num_of_objects, $sort_field, 
$sort_ascending, $search_for, $search_type, $filters);
+                       $object_count = 
$this->so_control_item->get_count($search_for, $search_type, $filters);
                        //var_dump($result_objects);
                                                                
                        $results = array();
@@ -540,6 +541,11 @@
                        {
                                $results['results'][] = 
$control_item_obj->serialize(); 
                        }
+                       
+                       $results['total_records'] = $object_count;
+                       $results['start'] = $params['start'];
+                       $results['sort'] = $params['sort'];
+                       $results['dir'] = $params['dir'];
 
                        array_walk($results["results"], array($this, 
"_add_links"), "controller.uicontrol_item.view");
 

Modified: trunk/controller/inc/class.uiprocedure.inc.php
===================================================================
--- trunk/controller/inc/class.uiprocedure.inc.php      2011-10-18 19:45:14 UTC 
(rev 7892)
+++ trunk/controller/inc/class.uiprocedure.inc.php      2011-10-18 19:47:08 UTC 
(rev 7893)
@@ -252,6 +252,15 @@
                                        
                public function query()
                {
+                       $params = array(
+                               'start' => phpgw::get_var('startIndex', 'int', 
'REQUEST', 0),
+                               'results' => phpgw::get_var('results', 'int', 
'REQUEST', null),
+                               'query' => phpgw::get_var('query'),
+                               'sort'  => phpgw::get_var('sort'),
+                               'dir'   => phpgw::get_var('dir'),
+                               'filters' => $filters
+                       );
+                       
                        
if($GLOBALS['phpgw_info']['user']['preferences']['common']['maxmatchs'] > 0)
                        {
                                $user_rows_per_page = 
$GLOBALS['phpgw_info']['user']['preferences']['common']['maxmatchs'];
@@ -303,8 +312,13 @@
                        }
                        
                        // ... add result data
-                       $result_data = array('results' => $rows, 
'total_records' => $object_count);
+                       $result_data = array('results' => $rows);
                        
+                       $result_data['total_records'] = $object_count;
+                       $result_data['start'] = $params['start'];
+                       $result_data['sort'] = $params['sort'];
+                       $result_data['dir'] = $params['dir'];
+                       
                        $editable = phpgw::get_var('editable') == 'true' ? true 
: false;
                        
                        if(!$export){
@@ -315,7 +329,7 @@
                                        "controller.uiprocedure.view");
                        }
 //_debug_array($result_data);
-                       return $this->yui_results($result_data, 
'total_records', 'results');
+                       return $this->yui_results($result_data);
 
                }
 




reply via email to

[Prev in Thread] Current Thread [Next in Thread]