Loading includes/pager.inc +15 −0 Original line number Diff line number Diff line Loading @@ -164,6 +164,21 @@ public function element($element) { } return $this; } /** * Gets the element ID for this pager query. * * The element is used to differentiate different pager queries on the same * page so that they may be operated independently. * * @return * Element ID that is used to differentiate between different pager * queries. */ public function getElement() { $this->ensureElement(); return $this->element; } } /** Loading modules/simpletest/tests/database_test.test +15 −15 Original line number Diff line number Diff line Loading @@ -2676,32 +2676,32 @@ class DatabaseSelectPagerDefaultTestCase extends DatabaseTestCase { function testElementNumbers() { $_GET['page'] = '3, 2, 1, 0'; $name = db_select('test', 't')->extend('PagerDefault') ->element(2) $query = db_select('test', 't')->extend('PagerDefault'); $query->element(2) ->fields('t', array('name')) ->orderBy('age') ->limit(1) ->execute() ->fetchField(); ->limit(1); $this->assertEqual(2, $query->getElement()); $name = $query->execute()->fetchField(); $this->assertEqual($name, 'Paul', 'Pager query #1 with a specified element ID returned the correct results.'); // Setting an element smaller than the previous one // should not overwrite the pager $maxElement with a smaller value. $name = db_select('test', 't')->extend('PagerDefault') ->element(1) $query = db_select('test', 't')->extend('PagerDefault'); $query->element(1) ->fields('t', array('name')) ->orderBy('age') ->limit(1) ->execute() ->fetchField(); ->limit(1); $this->assertEqual(1, $query->getElement()); $name = $query->execute()->fetchField(); $this->assertEqual($name, 'George', 'Pager query #2 with a specified element ID returned the correct results.'); $name = db_select('test', 't')->extend('PagerDefault') ->fields('t', array('name')) $query = db_select('test', 't')->extend('PagerDefault'); $query->fields('t', array('name')) ->orderBy('age') ->limit(1) ->execute() ->fetchField(); ->limit(1); $this->assertEqual(3, $query->getElement()); $name = $query->execute()->fetchField(); $this->assertEqual($name, 'John', 'Pager query #3 with a generated element ID returned the correct results.'); unset($_GET['page']); Loading Loading
includes/pager.inc +15 −0 Original line number Diff line number Diff line Loading @@ -164,6 +164,21 @@ public function element($element) { } return $this; } /** * Gets the element ID for this pager query. * * The element is used to differentiate different pager queries on the same * page so that they may be operated independently. * * @return * Element ID that is used to differentiate between different pager * queries. */ public function getElement() { $this->ensureElement(); return $this->element; } } /** Loading
modules/simpletest/tests/database_test.test +15 −15 Original line number Diff line number Diff line Loading @@ -2676,32 +2676,32 @@ class DatabaseSelectPagerDefaultTestCase extends DatabaseTestCase { function testElementNumbers() { $_GET['page'] = '3, 2, 1, 0'; $name = db_select('test', 't')->extend('PagerDefault') ->element(2) $query = db_select('test', 't')->extend('PagerDefault'); $query->element(2) ->fields('t', array('name')) ->orderBy('age') ->limit(1) ->execute() ->fetchField(); ->limit(1); $this->assertEqual(2, $query->getElement()); $name = $query->execute()->fetchField(); $this->assertEqual($name, 'Paul', 'Pager query #1 with a specified element ID returned the correct results.'); // Setting an element smaller than the previous one // should not overwrite the pager $maxElement with a smaller value. $name = db_select('test', 't')->extend('PagerDefault') ->element(1) $query = db_select('test', 't')->extend('PagerDefault'); $query->element(1) ->fields('t', array('name')) ->orderBy('age') ->limit(1) ->execute() ->fetchField(); ->limit(1); $this->assertEqual(1, $query->getElement()); $name = $query->execute()->fetchField(); $this->assertEqual($name, 'George', 'Pager query #2 with a specified element ID returned the correct results.'); $name = db_select('test', 't')->extend('PagerDefault') ->fields('t', array('name')) $query = db_select('test', 't')->extend('PagerDefault'); $query->fields('t', array('name')) ->orderBy('age') ->limit(1) ->execute() ->fetchField(); ->limit(1); $this->assertEqual(3, $query->getElement()); $name = $query->execute()->fetchField(); $this->assertEqual($name, 'John', 'Pager query #3 with a generated element ID returned the correct results.'); unset($_GET['page']); Loading