Commit Graph

991 Commits (696ac8a9d84d7d1c53052d29a93ea252b3e58ff0)

Author SHA1 Message Date
Dries Buytaert 173f528f59 - Modified patch #14170 by Neil: improved default workflow (default node type) configuration page.
Modified the patch to remove some redundant code, to translate strings, and to better use the menu system.
2005-01-24 21:20:16 +00:00
Dries Buytaert 7988f875a9 - Fixed PHP5 warning: the $result object in drupal_http_request() needed to be properly initialized using 'new StdClass'.
(I just installed PHP 5.0.3, no less.  Why don't you?)
2005-01-22 11:15:24 +00:00
Dries Buytaert 42e7e7d519 - Small clean-up: '>= 1' => '> 0' => ''. 2005-01-22 09:10:59 +00:00
Dries Buytaert df3b371853 - Patch #15976 by Neil: if one single admin modifiable menu item is added then it is not put in the menu table because the comparison is > 1 instead of > 0. 2005-01-22 09:09:06 +00:00
Dries Buytaert 24a68b209c - Patch #9477 by JonBob: improved handling of user-specified paths. 2005-01-19 21:57:58 +00:00
Steven Wittens a1579a3aee - Reversing bad commit, sorry everyone. 2005-01-17 18:56:11 +00:00
Steven Wittens b45bd13d44 - Various code style fixes 2005-01-17 00:41:35 +00:00
Dries Buytaert 971a0e24aa - Patch #14731 by chx: made it possible to rewrite node queries. 2005-01-16 18:44:49 +00:00
Steven Wittens beada9364d Remove left-overs from admin.module. 2005-01-14 17:30:00 +00:00
Dries Buytaert e7777956f9 - Watchdog improvement: added a 'view' link for 'access denied' messages. 2005-01-10 20:25:34 +00:00
Dries Buytaert f4132656b1 - Patch #15399 by adschar: fixed PHP5 error when a new session is inserted into the session table. (Better fix.) 2005-01-10 19:36:21 +00:00
Dries Buytaert 2e5f82c1e1 - Patch #15399 by adschar: fixed PHP5 error when a new session is inserted into the session table. 2005-01-10 19:33:23 +00:00
Steven Wittens 20b0e9d05d #15347: PHP5 typecasting error 2005-01-09 09:58:33 +00:00
Dries Buytaert 64b100d19a - Patch #13260 by UnConeD: watchdog module improvements.
We added a 'severity' column to watchdog():
    watchdog($type, $message, $link) --> watchdog($type, $message, $severity, $link);

    * Specify a severity in case you are reporting a warning or error.
    * The $link-parameter is now the fourth parameter instead of the third.

  TODO: document this in the upgrade guide.
2005-01-09 09:22:40 +00:00
Dries Buytaert 61783651ed - Patch #15254: removed hardcoded 'public' schema from the PostgreSQL backend. 2005-01-07 19:18:05 +00:00
Dries Buytaert 828be2ad61 - Patch #13020 by chx: let Drupal handle multiple database layers.
- Removed the PEAR database backend.  It's no longer being used/maintained.
2004-12-30 13:13:22 +00:00
Dries Buytaert bc9aeff7dd - Patch #14890: corrected the documentation of conf_init(). 2004-12-29 19:56:25 +00:00
Dries Buytaert 0fb0a93965 - Improved the input checking. 2004-12-28 11:04:24 +00:00
Steven Wittens 7132e7d528 #14757: Fix XSS vulnerability due to entity usage. 2004-12-25 14:57:39 +00:00
Dries Buytaert 2b17b3a966 - Patch #13907 by Neil: less ways to set the page title.
* Less logic in theme code.
   * Encourages use of the menu system.
   * Easier to find where a title or breadcrumb comes from in other people's code because there are less places to look. Look in menu and then grep for the appropriate set function. Looking for calls to theme_page() is hard because there are too many of them.
   * Very slightly more efficient.
2004-12-15 21:19:42 +00:00
Dries Buytaert 60352821bf - Refactored the queue module: removed the queue module's field from the node table. With help from Gerhard.
- Slight addition to INSTALL.txt with regard to PHP versions.

- Updated/reworded some node type descriptions as per Boris' suggestions.

- Adding missing {} around a table name in update.php.
2004-12-07 16:55:38 +00:00
Steven Wittens 01d216018f Pager_query's count query was broken if no query arguments were given. 2004-12-06 11:57:04 +00:00
Dries Buytaert cbf3f21e42 - Patch by Steven: fixed bug in pager_query(). 2004-12-04 17:22:08 +00:00
Dries Buytaert 6a95a00259 - Patch #7058 by Neil: format_date does not properly handle escaped characters. 2004-12-03 20:38:22 +00:00
Steven Wittens b70378be00 Fix for pager_query() after #13581 (array of query arguments). 2004-12-02 07:06:33 +00:00
Dries Buytaert cc508ad2f0 - Patch 13738 by TDobes: there was a major theming issue I missed in my bug-testing after the multi-site patch landed. Styles now seem to have their description field filled with the filename of their parent theme/template rather than the theme_key of the parent. This is a problem because init_theme still expected to see the theme_key and therefore dropped back to the base theme (no theme at all). 2004-12-01 22:41:19 +00:00
Dries Buytaert 3cd9a1b2d4 - Patch #13405 by Moshe: make you actually do something useful with the init hook. A recent patch to 4.5 and HEAD made this patch run too early in the request (for non-cached pages). 2004-12-01 22:16:50 +00:00
Dries Buytaert 95610bdd6c - Patch #13647 by Goba:
1. Fixed broken watchdog calls: two watchdog calls omitted the type parameter, and thus injected logs into the type field, instead of the message field.
   2. Removed t() functions from user contributed content.
2004-11-29 17:52:35 +00:00
Dries Buytaert 29337ad8bb - Patch #13581 by Steven: Db_query() allows a variable amount of parameters 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.
2004-11-29 13:13:29 +00:00
Dries Buytaert 70fcf51e84 - Refactored the statistics and watchdog module (views). The most important
changes are:

  1. Simplified the statistics pages: there are less pages and on the
     remaining pages there is a lot less visual clutter (less columns and
     better presentation).

  2. Reorganized the 'administer - logs' menu: flattened the menu structure
     and removed a number of links.

  3. Improved performance.  Most statistics pages used about 160 slow SQL
     queries which made the statistics pages fairly unusable on my system.
     The new pages use at least 10 times less SQL queries and render much
     faster.  They are actually usable.

  4. There is now a 'track'-tab on node pages, and a second subtrab on the
     user accounts 'track'-tab for people with the 'access statistics'
     permission.  They can be used to resp. track the node and the user.
     This makes the statistics more accessible.

  5. Changed the way watchdog messages are filtered.  This makes it easier
     to introduce new watchdog types.

  6. Reworked the statistics module's permissions.

  7. Less code: 223 insertions(+), 343 deletions(-).

  8. Fixed several glitches: for example, the statistics pages sorted the
     'Name' column by user ID instead of by name.  Unfortunately, it is
     too difficult to backport these to DRUPAL-4-5.

  TODO:

  1. Review the statistics modules help pages.

  2. Help fine-tune the interfaces/views.

  NOTES:

  1. You'll want to run update.php.
2004-11-28 12:28:35 +00:00
Dries Buytaert 76eace311e - Usability improvement: only display subtabs if there is more than one subtab. If there is only one, make sure it is the set to be the default subtab and all is well. 2004-11-28 12:03:11 +00:00
Dries Buytaert 5d0dfeb562 - Patch #13405 by Moshe:
+ Make bootstrap functionality work with HEAD.
   + Move functions into bootstrap.inc so that statistics_exit() works for cached pages.  (Does this close any issues?)
2004-11-25 06:14:59 +00:00
Dries Buytaert 4e4e2aa777 - Patch #13443 by Moshe: got rid of the semi-implemented 'page link' feature. All themes currently support primary and secondary links so page links are now deprecated. Check your contributed modules and update them accordingly. 2004-11-24 22:50:25 +00:00
Dries Buytaert 5d759ccbb9 - Patch #5942 by jhriggs and Adrian:
+ added support for multi-site configurations.
    + tidied up some old cruft and added code comments.
2004-11-24 22:44:01 +00:00
Dries Buytaert 30110a8770 - Patch #6166 by Moshe: node preview should not display links. Push the links to the theme instead of the theme having to pull them in using node_link().
TODO:
    1. Update theme upgrade instructions in the handbook: node_link() is gone.
    2. Remove page_link() just like we removed node_link().
2004-11-23 23:11:59 +00:00
Dries Buytaert b442fad027 - Patch #13263 and #13265 by arnab: added word-based truncation and made the comment module use it to extract subjects. 2004-11-21 20:17:44 +00:00
Dries Buytaert fa97839088 - Patch 13180 by chx: renamed check_query() to db_escape_string() and implemtented it properly per database backend.
Read the manual for pg_escape_string:  "Use of this function is recommended instead of addslashes()." Or read sqlite_escape_string: "addslashes() should NOT be used to quote your strings for SQLite queries; it will lead to strange results when retrieving your data."
2004-11-21 08:25:17 +00:00
Dries Buytaert dba51ebbf0 - Patch #13121 by Goba: valid_url() should allow the use of '+' in URLs. 2004-11-18 19:57:39 +00:00
Dries Buytaert 9bf33e5ac8 - Added generic flood control mechanism to throttle certain operations per hostname (eg. posting comments, requesting passwords, sending e-mails). See flood_register_event() and flood_is_allowed() for details. 2004-11-15 21:17:25 +00:00
Dries Buytaert 918d33f41f - Modified patch #7235: do a better job checking the OS and acting upon it. 2004-11-15 12:04:44 +00:00
Dries Buytaert c0ea04814a - Removed some cruft. 2004-11-15 12:00:32 +00:00
Dries Buytaert a03579fcaf - Patch #12795 by thorne: added documentation for overriding variables from
the configuration file.
2004-11-15 11:32:13 +00:00
Dries Buytaert c13abe1655 - Patch #12885 by Ber: improved the Doxygen documentation of drupal_set_html_head(). 2004-11-15 10:47:18 +00:00
Dries Buytaert 63ee97f65d - Patch #9292 by killes from Carl: fixed a PHP5 compatibility problem with file handling. 2004-11-08 22:31:18 +00:00
Dries Buytaert 3769665b33 - Refactored the throttle module. Patch by Jeremy and me.
* There are only two throttle levels instead of 5, namely 'enabled' and 'disabled'.  This makes it a _lot_ easier to predict when the throttle will kick in.  However, if you maintain a module that is throttle-aware, it needs to be updated!

  * The throttle mechanism now uses the current number of anonymous users or the current number of authenticated users to kick in.  This is a _lot_ more intuitive than the old throttle mechanism.

  * The throttle block has been removed -- you can now use the "Who's online" block to determine the good throttle settings.

  * Most of the documentation has been removed because it was deprecated.

  * It's less code!
2004-11-07 22:47:00 +00:00
Dries Buytaert f01bd675c0 - Performance improvement: made 'sid' the primary key of the sessions table.
That should improve performance of session handling as well improve
  performance of the "Who's online"-block.  Drupal.org's sessions table
  contains appr. 40.000 sessions on a slow day and rendering the "Who's
  online"-block became a performance bottleneck.

  This change has yet to be tested on a busy site so things might go wrong.
2004-11-07 21:53:55 +00:00
Dries Buytaert c214cee319 - On popular demand, patch #10178 by jhriggs: made it possible to expand menu items. 2004-11-06 12:11:02 +00:00
Steven Wittens d54ef6db84 Rest of #12167 (respect input check bypass permission) 2004-11-03 00:47:27 +00:00
Steven Wittens 3e36c7864b #12167: Respect 'bypass input data check' permission in file.inc. 2004-11-02 12:43:35 +00:00
Dries Buytaert 29b32eff2b - Patch #7161 by jhriggs: fixed probem with 'last page' link not being correct under certain circumstances. 2004-10-31 07:59:18 +00:00