Changing the number of book per pages changed the search with multiple database. Reported by At-Libitum. fix #124
This commit is contained in:
parent
e9620c977a
commit
002c7596ea
2
base.php
2
base.php
|
@ -752,7 +752,7 @@ class PageQueryResult extends Page
|
||||||
$i = 0;
|
$i = 0;
|
||||||
foreach ($config['calibre_directory'] as $key => $value) {
|
foreach ($config['calibre_directory'] as $key => $value) {
|
||||||
Base::clearDb ();
|
Base::clearDb ();
|
||||||
list ($array, $totalNumber) = Book::getBooksByQuery (array ($crit, $crit, $crit, $crit), $this->n, $i);
|
list ($array, $totalNumber) = Book::getBooksByQuery (array ($crit, $crit, $crit, $crit), 1, $i, 1);
|
||||||
array_push ($this->entryArray, new Entry ($key, DB . ":query:{$i}",
|
array_push ($this->entryArray, new Entry ($key, DB . ":query:{$i}",
|
||||||
str_format (localize ("bookword", count($array)), count($array)), "text",
|
str_format (localize ("bookword", count($array)), count($array)), "text",
|
||||||
array ( new LinkNavigation ("?" . DB . "={$i}&page=9&query=" . $this->query))));
|
array ( new LinkNavigation ("?" . DB . "={$i}&page=9&query=" . $this->query))));
|
||||||
|
|
4
book.php
4
book.php
|
@ -553,8 +553,8 @@ where data.book = books.id and data.id = ?');
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static function getBooksByQuery($query, $n, $database = NULL) {
|
public static function getBooksByQuery($query, $n, $database = NULL, $numberPerPage = NULL) {
|
||||||
return self::getEntryArray (self::SQL_BOOKS_QUERY, $query, $n, $database);
|
return self::getEntryArray (self::SQL_BOOKS_QUERY, $query, $n, $database, $numberPerPage);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static function getBooks($n) {
|
public static function getBooks($n) {
|
||||||
|
|
|
@ -43,6 +43,21 @@ class PageMultiDatabaseTest extends PHPUnit_Framework_TestCase
|
||||||
$qid = NULL;
|
$qid = NULL;
|
||||||
$n = "1";
|
$n = "1";
|
||||||
|
|
||||||
|
// Issue 124
|
||||||
|
$config['cops_max_item_per_page'] = 2;
|
||||||
|
$currentPage = Page::getPage ($page, $qid, $query, $n);
|
||||||
|
$currentPage->InitializeContent ();
|
||||||
|
|
||||||
|
|
||||||
|
$this->assertEquals ("Search result for *art*", $currentPage->title);
|
||||||
|
$this->assertCount (2, $currentPage->entryArray);
|
||||||
|
$this->assertEquals ("Some books", $currentPage->entryArray [0]->title);
|
||||||
|
$this->assertEquals ("10 books", $currentPage->entryArray [0]->content);
|
||||||
|
$this->assertEquals ("One book", $currentPage->entryArray [1]->title);
|
||||||
|
$this->assertEquals ("1 book", $currentPage->entryArray [1]->content);
|
||||||
|
$this->assertFalse ($currentPage->ContainsBook ());
|
||||||
|
|
||||||
|
$config['cops_max_item_per_page'] = -1;
|
||||||
$currentPage = Page::getPage ($page, $qid, $query, $n);
|
$currentPage = Page::getPage ($page, $qid, $query, $n);
|
||||||
$currentPage->InitializeContent ();
|
$currentPage->InitializeContent ();
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue