summaryrefslogtreecommitdiff
path: root/includes/pager.inc
Commit message (Collapse)AuthorAge
...
* - Patch by Remco: <div> -> </div>.Dries Buytaert2005-01-28
|
* - Patch by Jeremy: fixed unclosed "Dries Buytaert2005-01-27
|
* - Patch by Jeremy: made the diffs more meaningful.Dries Buytaert2005-01-27
|
* - Patch #16273 by Jeremy: improved the themability of the pager.Dries Buytaert2005-01-27
|
* Pager_query's count query was broken if no query arguments were given.Steven Wittens2004-12-06
|
* - Patch by Steven: fixed bug in pager_query().Dries Buytaert2004-12-04
|
* Fix for pager_query() after #13581 (array of query arguments).Steven Wittens2004-12-02
|
* - Patch #13581 by Steven: Db_query() allows a variable amount of parameters ↵Dries Buytaert2004-11-29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | so you can pass the query arguments in. There is however an alternative syntax: instead of passing the query arguments as function arguments, you can also pass a single array with the query arguments in it. For example the following two statements are equivalent: db_query($query, $a, $b, $c); db_query($query, array($a, $b, $c)); This usage is particularly interesting when the query is constructed dynamically, and the amount of arguments to pass varies. In that case we use the second method to avoid using call_user_func_array(). This behaviour is not documented explicitly, but it is used in several places. However, db_query_range() and pager_query() do not support this syntax properly, which means there are several pieces of code which still revert to the ugly call_user_func_array() call. This patch updates db_query_range() and pager_query() so they support the array-passing method. I also added documentation about this method to each of the db functions. I also cleaned up the code for db_query (it was weird and hard to understand) and moved db_query() and db_queryd() from database.xxxxx.inc to database.inc: it was the same between both mysql and pgsql, as it doesn't do anything database specific. It just prefixes the tables and inserts the arguments. The actual db query is performed in _db_query(), which is still in database.xxxxx.inc. Finally, I updated several places with the new syntax, and the code is a lot cleaner. For example: - array_unshift($params, "SELECT u.* FROM {users} u WHERE $query u.status < 3"); - $params[] = 0; - $params[] = 1; - $result = call_user_func_array('db_query_range', $params); + $result = db_query_range("SELECT u.* FROM {users} u WHERE $query u.status < 3", $params, 0, 1); and - return call_user_func_array('db_query_range', array_merge(array($query), $args, array((int)$pager_from_array[$element], (int)$limit))); + return db_query_range($query, $args, (int)$pager_from_array[$element], (int)$limit); I've tested it on mysql. I didn't alter the actual db behaviour, so pgsql should be okay too. This patch is important because many people avoid the call_user_func_array() method and put data directly into the db query. This is very, very bad because the database prefix will be applied to it, and strip out braces. It's also generally bad form as you have to call check_query() yourself. With the new, documented syntax, there is no more excuse to put data directly in the query.
* - Patch #7161 by jhriggs: fixed probem with 'last page' link not being ↵Dries Buytaert2004-10-31
| | | | correct under certain circumstances.
* - Patch #10663 by JonBob: documentation improvements: fixed some typos and ↵Dries Buytaert2004-09-09
| | | | improved consistency to the use of Doxygen/api.module commands in the comments.
* - Patch #7535 by Gerhard: one could not search for the word 'From'.Dries Buytaert2004-08-12
|
* - Patch #9478 by JonBob: allow printf-style arguments in pager_query.Dries Buytaert2004-07-25
| | | | | | Currently pager_query() is the black sheep of the database query family, because it does not allow for printf-style arguments to be inserted in the query. This is a problem because it introduces developer confusion when moving from an unpaged query to a paged one, and it encourages substitution of variables directly into the query, which can bypass our check_query() security feature. This patch adds this ability to pager_query(). The change is backwards-compatible, but a couple calls to the function in core have been changed to use the new capability.
* - #9287: More doxygen/documentation fixes by JonBobSteven Wittens2004-07-22
|
* - Patch #8973 by JonBob: Drupal contains many undefined variables and array ↵Dries Buytaert2004-07-02
| | | | indices, which makes PHP throw a lot of warnings when the reporting level is set to E_ALL. Things run fine with these warnings, but as a matter of code style if nothing else we should probably strive to avoid them. The attached fixes most of the more egregious offenders (about 95% of the warnings when I load /node on my test site).
* - Issue #8735 by njivy: made the pager code ignore EOLs.Dries Buytaert2004-06-22
|
* - Patch #8670 by asimmonds: more spelling fixes.Dries Buytaert2004-06-21
|
* - Patch #7696 by TDobes: renamed 'static' to 'sticky' which is a moreDries Buytaert2004-06-19
| | | | logical name. Requires a database upgrade.
* - Patch #7161 by jhriggs: fixed bug with 'last page' functionality.Dries Buytaert2004-04-15
|
* - Patch 5834 by Jeremy: made multiple pagers on one page work.Dries Buytaert2004-02-15
|
* - New and updated doxygen comments.Kjartan Mannes2004-01-06
|
* - Accessibility improvement: changed a <b>-tag to a <strong>-tag, used toDries Buytaert2003-12-22
| | | | indicated the current page.
* - Improvements by Goba:Dries Buytaert2003-12-08
| | | | | | + removes the lots of pagers and indirect pager themeing + add the theme_pager() function, which should be called as theme("pager", ...) to get a pager.
* - Tidied up the DoxyGen comments. Patch by Kjartan.Dries Buytaert2003-12-08
|
* Patch by Ax to fixe and improve to the core doxygen PHPdoc:Dries Buytaert2003-11-24
| | | | | | | | | | | | * fixes all doxygen warnings [#]_ in the current code base + changes @param style from phpDocumentor (@param type $var desc) to doxygen (@param $var desc) + documents all undocumented parameters + escapes / fixes html warnings + fixes @defgroup in theme.inc * adds more groupings [#]_ + drupal_{set|get}_title, drupal_{set|get}_breadcrumb + pager.inc: pager_api (pager_query(), pager_display()), pager pieces * adds a new group "themeable" which contains all themeable functions.
* - Committed stage 2 of the theme system improvements! Patch by CodeMonkeyX.Dries Buytaert2003-11-09
|
* - Bugfix: renamed the SQL field 'types' to 'nodes' because 'types' is a ↵Dries Buytaert2003-06-04
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | reserved keyword in MySQL 4. This fixes critical bug #1618. Patch by Marco. ==> This fix requires to run update.php! - Bugfix: made sessions work without warnings when register_globals is turned off. The solution is to use $_SESSION instead of session_register(). This fixes critical bug #1797. Patch by Marco. - Bugfix: sometimes error messages where being discarded when previewing a node. Patch by Craig Courtney. - Bugfix: fixed charset problems. This fixes critical bug #1549. Patch '0023.charset.patch' by Al. - Code improvements: removed some dead code from the comment module. Patch by Marco. - Documentation improvements: polished the node module help texts and form descriptions. Patch '0019.node.module.help.patch' by Al. - CSS improvements all over the map! Patch '0021.more.css.patch' by Al. - GUI improvements: improved the position of Druplicon in the admin menu. Patch '0020.admin.logo.patch' by Al. - GUI improvements: new logos for theme Marvin and theme UnConeD. Logos by Kristjan Jansen. - GUI improvements: small changes to the output emitted by the profile module. Suggestions by Steven Wittens. - GUI improvements: small fixes to Xtemplate. Patch '0022.xtemplate.css.patch' by Al. TODO: - Some modules such as the buddy list module and the annotation module in the contributions repository are also using session_register(). They should be updated. We should setup a task on Drupal. - There is code emitting '<div align="right">' which doesn't validate. - Does our XML feeds validate with the charset changes? - The forum module's SQL doesn't work properly on PostgreSQL.
* - Bugfix: made request_uri() rewrite ( and ) with their entity equivalentsDries Buytaert2003-06-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | to avoid XSS attacks! Patch by Al, Moshe, Marco, Kjartan and me. - Bugfix: the admin module does now import drupal.css prior to admin.css. Patch by me. - Bugfix: the admin module was still emitting a <base href=""> tag. I removed this as it is been taken care of by theme_head(); Patch by me. - Bugfix: made the tracker module's pager only consider published pages. Patch by Moshe. - Bugfix: cured some typos in the comment module's help function. Patch by Marco. - Bugfix: fixed a typo in the pager_display() that caused optional attributes to be discarded. - Bugfix: made the Xtemplate emit empty boxes like any other theme does. Patch by Al. - Bugfix: fixed broken link on the statistics module's log page. Reported by Kjartan. - CSS improvements: made the HTML output emitted by the tracker module look nicer. Patch by Moshe and Al. - CSS improvements: added CSS classes for form elements. Patch by Al. - CSS improvements: added a vertical gap between the last form item and the submit button. Patch by Al. Note that Opera 6 is not picking up this CSS but apparently others browsers such as Konqueror do. - Xtemplate improvements: changed the color of the selected day in the archive module's calendar. Patch by Al. - Usability improvements: made the "birthday" field of the profile module look nicer. Patch by Al. ------ - TODO: it might be a good idea to emit the following meta tag in the theme_head() function: <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> Currently, some themes (and modules!) emit this while others don't. This would also make it possible to change the charset site-wide. - TODO: now we added support for td.dark and td.light to drupal.css, maybe it can be removed from admin.css as well as xtemplate.css?
* - Fixed a register globals problem in the pager. Patch by Al. (I alsoDries Buytaert2003-05-23
| | | | removed a dead global variable.)
* - Fixed a typo in the PostgreSQL database scheme. Patch by Michael Frankowski.Dries Buytaert2003-05-13
| | | | | | | | | | | | | - Fixed a typo in the MSSQL database scheme. Patch by Michael Frankowski. - Removed dependency on "register_globals = on"! Patches by Michael Frankowski. Notes: + Updated the patches to use $foo["bar"] instead of $foo['bar']. + Updated the INSTALL and CHANGELOG files as well. - Tiny improvement to the "./scripts/code-clean.sh" script.
* - All LIMIT queries must go through the pager or through db_query_range().Dries Buytaert2003-03-16
| | | | | | | | | | | | | | | The syntax for db_query_range() was enhanced so it matches db_query(). So you may pass extra arguments of the SQL statement which are checked via check_query() and then substituted into the SQL statement. After these optional arguments, you always pass $from and $count parameters which define your range. Most often, the $from is 0 and the count is the max number of records you want returned. Patch by Moshe. - The pager_query() function for PEAR was enhanced so that it adds proper GROUP BY statement counting the number of records to be paged. Patch by James Arthur. - MSSQL database scheme by Moshe.
* - Patch by Kjartan:Dries Buytaert2003-03-12
| | | | | | + Pager is not generated when there are less results than the limit. + Fixes ugly blank rows in administration pages when there is just one page.
* - See http://lists.drupal.org/pipermail/drupal-devel/2003-February/021824.html.Dries Buytaert2003-02-11
|
* - Patch by Ulf: XHTML-ified the code.Dries Buytaert2003-01-21
|
* - Replaced "&" by "&amp;". Patch by Ulf.Dries Buytaert2003-01-20
|
* Patch by Marco:Dries Buytaert2003-01-15
| | | | | | | | | | | | | | | | | | - forum: fixed link to new topic - forum: new topic shows default forum correctly - forum: first_new is back; the anchor didn't consider multiple pages - forum: use standard pager, needed some changes/fixes to pager.inc - forum: some cleanup - forum: taxonomy hook - renamed first_new to simply new - added an optional parameter to pager_query for the count query - used the optional count param for paging forum topics - internal change: moving a topic doesn't duplicate the node anymore but just changes the forum (term); no change in functionality, and shadow still works (suggested by Dries). This probably also made some queries somewhat lighter. - bug fixed: anonymous users always saw "n (n new)" in the replies column - updated pager help and moved from _help to phpdoc
* - Fixed the pager. It might not be 100% correct, but it will work in 95%Dries Buytaert2003-01-09
| | | | of the cases.
* - Clean URL patch.Dries Buytaert2003-01-06
|
* - Committed Marco's pager improvements.Dries Buytaert2002-12-14
| | | | - Fixed another annoyance with editing content.
* - Applied Ax's pager patch: includes documentation (rewrote it somewhat) and twoDries Buytaert2002-11-26
| | | | | bugfixes; one that makes taxanomy based paging work (eg. index.php?and=2,3) and one that kills a warning when the query returns no records.
* - Don't display "1" when there is only one page.Dries Buytaert2002-11-18
|
* * Added Jeremy's pager:Dries Buytaert2002-11-09
"This is a simple, generic pager for Drupal-CVS. It is designed to be easily themeable and expandable. The code is highly-commented to enhance readability." "Pagers are constructed by combining the provided pieces (all of which can be easily modified to display the text or image you prefer) into your custom pager." * Statistics module fixes by Jeremy: - removed superfluous check for existence of watchdog() - saving changes in admin page displays status and returns same page - no longer return 1971/01/01 in "view statistics" table - switched from "!=" to "<>" in SQL queries for ANSI-SQL compliance - switched from "MAX(timestamp) as timestamp" to "MAX(timestamp) as max_timestamp" moving towards ANSI-SQL compliance. * Added a "theme_item_list" function to format itemized lists. Also changed a couple of modules to take advantage of it. Makes for a more consistent UI.