Commit Graph

1151 Commits (3ce836e2e205cc4dc74b073f43c9e47b1fb4fb54)

Author SHA1 Message Date
Dries Buytaert 171de5d46d - Patch #16303 by Gerhard: fixed PHP notices. 2005-01-31 21:36:37 +00:00
Dries Buytaert 96c039680a - Patch #16111 by chx: fixed some bugs in the db_rewrite_sql() code. 2005-01-31 20:45:10 +00:00
Dries Buytaert b176382d23 - Patch #16111 by chx: PHPdoc/documentation improvements. 2005-01-30 17:48:52 +00:00
Dries Buytaert 59c2208ea6 - Patch #16253 by Goba: incremental improvements to the new content markers.
Goba: it would be nice if one of the core themes would showcase this functionality. ;-)
2005-01-30 09:53:19 +00:00
Dries Buytaert 993ea0c6c5 - Patch #16111 by chx: generalized node_rewrite_query to db_rewrite_query. 2005-01-29 22:02:37 +00:00
Dries Buytaert b24a4bda34 - Patch by Remco: <div> -> </div>. 2005-01-28 18:44:17 +00:00
Dries Buytaert b5a72f6216 - Patch by Jeremy: fixed unclosed " 2005-01-27 19:01:01 +00:00
Dries Buytaert 6e30ba6874 - Patch by Jeremy: made the diffs more meaningful. 2005-01-27 15:53:58 +00:00
Dries Buytaert 8618346133 - Patch #16273 by Jeremy: improved the themability of the pager. 2005-01-27 14:30:33 +00:00
Dries Buytaert 467dbdc4a1 - Patch #16253 by Goba: this simple and straightforward patch adds the ability to define different types of markers (while retaining the old default behaviour of the new and required markers to look the same). Someone with enough time on his hands might be able to partition the new marker to a real new marker and a changed marker (since node_is_new() returns TRUE even if nodes changed, and not only when they are new). This is the base on which the new patch can be worked though. 2005-01-27 12:57:08 +00:00
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
Dries Buytaert 8daed9cbf3 - Patch #12232 by Steven/UnConed: search module improvements.
1) Clean up the text analyser: make it handle UTF-8 and all sorts of characters. The word splitter now does intelligent splitting into words and supports all Unicode characters. It has smart handling of acronyms, URLs, dates, ...

2) It now indexes the filtered output, which means it can take advantage of HTML tags. Meaningful tags (headers, strong, em, ...) are analysed and used to boost certain words scores. This has the side-effect of allowing the indexing of PHP nodes.

3) Link analyser for node links. The HTML analyser also checks for links. If they point to a node on the current site (handles path aliases) then the link's words are counted as part of the target node. This helps bring out commonly linked FAQs and answers to the top of the results.

4) Index comments along with the node. This means that the search can make a difference between a single node/comment about 'X' and a whole thread about 'X'. It also makes the search results much shorter and more relevant (before this patch, comments were even shown first).

5) We now keep track of total counts as well as a per item count for a word. This allows us to divide the word score by the total before adding up the scores for different words, and automatically makes noisewords have less influence than rare words. This dramatically improves the relevancy of multiword searches. This also makes the disadvantage of now using OR searching instead of AND searching less problematic.

6) Includes support for text preprocessors through a hook. This is required to index Chinese and Japanese, because these languages do not use spaces between words. An external utility can be used to split these into words through a simple wrapper module. Other uses could be spell checking (although it would have no UI).

7) Indexing is now regulated: only a certain amount of items will be indexed per cron run. This prevents PHP from running out of memory or timing out. This also makes the reindexing required for this patch automatic. I also added an index coverage estimate to the search admin screen.

8) Code cleanup! Moved all the search stuff from common.inc into search.module, rewired some hooks and simplified the functions used. The search form and results now also use valid XHTML and form_ functions. The search admin was moved from search/configure to admin/search for consistency.

9) Improved search output: we also show much more info per item: date, author, node type, amount of comments and a cool dynamic excerpt à la Google. The search form is now much more simpler and the help is only displayed as tips when no search results are found.

10) By moving all search logic to SQL, I was able to add a pager to the search results. This improves usability and performance dramatically.
2004-10-31 03:03:27 +00:00
Steven Wittens 987988300a #12183: surpress php error on copy() 2004-10-28 23:42:36 +00:00
Dries Buytaert 6238bf449d :- Patch #12096 by Axel: fixed problem with plurals for some languages. 2004-10-27 18:23:06 +00:00
Steven Wittens a4cc9aa817 #12155 : use defined constant rather than integer in file.inc. 2004-10-26 20:57:34 +00:00
Steven Wittens 1cbf2f63b2 #12146: Improve locale import/export messages (Stefan) 2004-10-26 17:20:58 +00:00
Dries Buytaert 10f329c057 - Patch #11728 by Uwe Hermann: fixed some typos in the code comments, Doxygen documentation and screen output.
Uwe: I dropped the 'iff' chunks as 'iff' stands for 'if and only if'.
2004-10-19 18:02:31 +00:00
Dries Buytaert e86b041fa3 - Modified patch #11689 by Adrian: made the locale module work with PostgreSQL. 2004-10-18 18:35:19 +00:00
Steven Wittens b228f0183a #11449: Adding a failsafe check for an improperly prefixed menu sequence. This is a temporary fix, awaiting a proper install system to end manual prefixing ;). 2004-10-16 19:42:52 +00:00
Steven Wittens ba2761929c #7289: locale import fixes 2004-10-16 01:00:23 +00:00
Steven Wittens ea17f39811 Tablesort used to output class=" active" for active columns with other properties (align="right"). Now it correctly uses class="foo active" if a class 'foo' was specified, and class="active" otherwise. 2004-10-15 22:16:00 +00:00
Dries Buytaert a5691cccc9 - Patch #11600 by jhriggs: the module_load_all() function will currently behave unexpectedly if a module cannot be found (has been removed, renamed, etc). Once one module fails to load, all subsequent modules will not be loaded due to a short circuit condition when performing a boolean AND. 2004-10-15 10:47:54 +00:00
Dries Buytaert 12eb20238c - Patch #11430 by JonBob: reseting the menus broke the admin pages. 2004-10-14 21:38:12 +00:00
Steven Wittens 583e63c136 Theme system bug: only show search box if search.module is enabled. 2004-10-14 02:38:33 +00:00
Steven Wittens b3451d0274 Adding a note about the usage of form_hidden inside form_checkbox and form_checkboxes. 2004-10-13 17:21:06 +00:00
Dries Buytaert 0261efc8fd - Patch #11531 by killes: it was not possible to deselect all choices of a form_checkboxes array. 2004-10-13 17:08:50 +00:00
Steven Wittens 986a476c45 Reverting the last #9292 (php 5 compatibility) patch, by request of killes. It broke stuff. 2004-10-12 23:33:38 +00:00
Dries Buytaert 306cfdf17a - Patch #9292 by Gerhard: fixed another array_merge + PHP5 woe. 2004-10-12 20:20:28 +00:00
Dries Buytaert 5f28d97a0f - Patch #11271 by Ber: fixed form_radios() to generate valid XHTML code. This makes the code generated by the poll module XHTML compliant.
- Similarly, I updated form_checkboxes() to generate valid XHTML code.
2004-10-12 19:55:53 +00:00
Dries Buytaert 467bc55972 - Patch #11434: made request_uri() (and thus forms) work on IIS. 2004-10-12 19:50:12 +00:00
Dries Buytaert c21e3634bb - Patch #11431 by Gerhard: made sure no empty strings are exported + replaced some double quotes by single quotes. 2004-10-11 19:57:42 +00:00
Dries Buytaert 905d530abd - Patch #11312 by killes: fixed problems with menu caching. 2004-10-06 12:18:03 +00:00
Dries Buytaert 570d203bb5 - Patch #11312 by Killes: rebuild the menu after importing a PO file. 2004-10-05 20:09:47 +00:00
Dries Buytaert 503c784557 - Simplified/reorganized version of patch #9620 by Jeremy: fixed errors when writing to cache. 2004-10-04 22:04:07 +00:00
Dries Buytaert c78fff8e6a - Patch #10981 by Ber: removed custom links from configuration file. They are no longer used. 2004-09-21 18:39:01 +00:00
Dries Buytaert 6690793cbb - Patch #10472 by Gerhard and Steven: fixed bug when paging through the search results of the locale module. 2004-09-20 19:37:18 +00:00
Dries Buytaert 228b3c7cc8 - Patch #10945 by Adrian: more PostgreSQL fixes/updates. 2004-09-20 17:58:14 +00:00
Steven Wittens 85c0b42e8d #10859: Locale string duplication bug. 2004-09-19 00:08:50 +00:00
Dries Buytaert 1c7a8b161a - Patch #10419 by ccourtne: documentation improvements and rename prevention option. 2004-09-17 18:18:04 +00:00
Steven Wittens aded584102 Adding a note about drupal_eval() acting like a variable sandbox. 2004-09-16 16:12:21 +00:00
Dries Buytaert 770f4f8a59 - Patch #10859 by Gerhard: another attempt at fixing duplicate locale strings. 2004-09-16 14:18:00 +00:00
Dries Buytaert 5c7983c4de - Patch #8179 by JonBob: reintroduced menu caching. 2004-09-16 07:17:56 +00:00
Steven Wittens f8b429e963 #10862: Smarter filter cache wiping. 2004-09-15 20:34:35 +00:00
Dries Buytaert d00f4a4ebf - Patch #10859 by killes: importing more than one po file could cause your database to contain more than one version of the source or the target string. 2004-09-15 15:44:56 +00:00
Dries Buytaert 3079ffeafe - Made it possible for the i18n module to hook in. 2004-09-15 09:54:32 +00:00
Steven Wittens 9c9905d9a0 #10648: Fix watchdog-related tablesort coloring bug in IE, add support for <tr> attributes to theme_table() and reduce specificy of watchdog coloring CSS rules. 2004-09-14 20:01:00 +00:00
Steven Wittens 793486909f #10803: file_save_data() does not pass $replace along. 2004-09-13 23:30:58 +00:00
Steven Wittens b75c1e1c8b Replace hardcoded <html lang="en"> with a locale dependant one. This is especially important for asian sites where this has an effect on font selection. 2004-09-09 13:36:01 +00:00
Steven Wittens 884c05a64f Changing the chinese POSIX language tags to RFC 1766 (underscore to hyphen). 2004-09-09 11:53:56 +00:00
Dries Buytaert b84b6e42cf - Patch #10663 by JonBob: documentation improvements: fixed some typos and improved consistency to the use of Doxygen/api.module commands in the comments. 2004-09-09 05:51:08 +00:00
Dries Buytaert 694b577b62 - Moved some documentation around and fixed a missing translation. 2004-09-08 18:46:41 +00:00
Dries Buytaert d56ced2a06 - Patch #10373 by jabart/killed: performance improvement: caching the variable table improves performance with 20% when serving cached pages. 2004-09-08 18:06:04 +00:00
Dries Buytaert 80086a9e02 - Fixed cache problem introduced by Adrian's PostgreSQL patch. 2004-09-08 17:45:27 +00:00
Dries Buytaert 7b716e8e77 - Patch #10622 by Adrian: fixes various PostgreSQL related problems.
1) Menu problems with Postgres (this is a highly critical 1 line fix)
  2) Archive module fails with Postgres
  3) Postgres setup problems - changes to database.pgsql (although i made these changes myself before finding this patch)
  4) Book module fails with Postgres
  5) Postgres problems following creation of a new type of user - which is actually about a taxonomy.module bug.
  6) Creating accregator_item_table in PostgreSQL
  7) Postgres - Polls not displayed on Poll Page
  8) Blog module has sql errors with postgres

  This should not affect MySQL users (hopefully).
2004-09-08 15:38:26 +00:00
Dries Buytaert 27f055b5cd - Patch #10192 by JonBob: fixed issue with menus not expanding. 2004-09-07 21:48:49 +00:00
Steven Wittens d441752dba - #9983: UI consistency patch. 2004-08-27 23:26:20 +00:00
Steven Wittens 44f341bebc Patch by me and Kjartan.
Upload.module
- Fixing a bug caused by the PHP5 patches.
Beware: PHP4's array_merge() will silently accept objects and convert them to arrays. We should not depend on this behaviour in the future.

File.inc / file-using modules:
- Removing the constant FILE_SEPARATOR: forward slashes work fine on Windows, and it was being used incorrectly as an URL separator sometimes.
- Adding @ to mkdir and chmod to supress ugly PHP errors. They are already reported with drupal_set_message().
- Fixing default for variable 'file_directory_temp'.
- Clarifying the help tip for 'file_directory_temp' in admin > settings.
2004-08-24 19:21:30 +00:00
Steven Wittens 51cf18e531 - #9292: Make Drupal (somewhat) PHP5 compatible. xtemplate is still horribly broken. 2004-08-22 17:03:42 +00:00
Steven Wittens 98a9d5ee2d - #9576: Patch by TDobes, only allow the user to choose between enabled themes. 2004-08-22 14:43:49 +00:00
Steven Wittens 05714da2ec Locale:
- Fixing broken .po import (due to file.inc changes).
- Do not show error notice on import page when no languages have been added (no longer necessary due to ability to add-and-import in one step).
- Added a notice about importing possibly taking a while.
- Raised the PHP execution time limit for importing (if not in safe mode, similar to cron.php).
2004-08-21 21:13:29 +00:00
Dries Buytaert 47b72af612 - Patch #6809 by TDobes: fixed the textarea hook so WYSIWYG editors are made possible again.
TODO: apply the documentation and htmlarea module patches.
2004-08-21 17:06:51 +00:00
Dries Buytaert 7736eb4995 - Patch #10166 by jvandyk: bugfix: valid_url() believed that URLs with encoded spaces in them (eg. http://example.org/my%20file.html ) are not valid. 2004-08-21 17:02:48 +00:00
Dries Buytaert f311646b1e - Patch #10195 by JonBob: bugfix: common.inc used the function ob_get_clean() which is only available in PHP >= 4.3. 2004-08-21 16:44:05 +00:00
Dries Buytaert 6881cc9ad6 - Patch #10202 by Ax: don't emit an erroneous whitespace when no table headers are provided. Makes for clean XHTML. 2004-08-21 16:21:56 +00:00
Dries Buytaert 03fa966c1f - Patch #9576 by TDobes: bugfix: fixed bug in recent theme system changes. 2004-08-21 10:16:13 +00:00
Dries Buytaert 94e30bf776 - Patch by JonBob: for consistency and readability, add brief descriptions of each source file inside the @file comment block at the head of the file. This helps with Doxygen indexing, and also allows neophytes to see what a file does immediately on opening the source, regardless of the organization of the hooks. 2004-08-21 06:42:38 +00:00
Steven Wittens 9f2d6f0e51 - Fixing 'flash of unstyled content' in bluemarine/pushbutton, which got reintroduced after the template changes.
- Fixed separate styles: added theme_get_styles() and the xtemplate {styles} tag to make sure stylesheets get included in the right order (drupal-specific, template-specific, style-specific).
- Fixing missing class on screenshots.
- Renamed drupal_get_theme_setting() and drupal_get_theme_settings() to theme_get_setting() and theme_get_settings().
2004-08-20 17:21:37 +00:00
Dries Buytaert 1c6159e366 - Usability improvement: capitalize all header titles. 2004-08-20 14:36:07 +00:00
Dries Buytaert 81861a8e91 - Removing some DOS-style line endings. Thanks TDobes. 2004-08-20 09:34:53 +00:00
Dries Buytaert 6ea5c56ded - Theme system changes. Please consult http://drupal.org/node/view/9576 for details. 2004-08-20 07:51:27 +00:00
Steven Wittens 9cb5f7cdf8 Avatar/picture fixes:
- Changing theme('image') so the automatic image size fetching can be toggled independently from attributes. Specifying attributes and autosizing are 2 different things.
- Suppressing PHP errors from getimagesize() using @. drupal_set_message() is used to report these errors already and in a much prettier way.
- #9958: Fixing broken displaying of avatars.
- Don't show the default avatar in 'edit my account' if the user has no avatar of his/her own.
- Added ability to delete avatars (without having to replace them).
2004-08-20 04:35:33 +00:00
Dries Buytaert fa25c7a0ca - Code improvements by Stefan: use capital letters for header titles (and added some missing t() functions). 2004-08-19 15:41:57 +00:00
Dries Buytaert 83a739bd89 - Code improvements by Stefan: made all status messages consistent (and easier to translate). 2004-08-18 19:57:27 +00:00
Dries Buytaert 78b052a6af - The upload (filehandler) module has landed! 2004-08-17 21:35:26 +00:00
Dries Buytaert eeb2b17b7b - Bugfix: include the xmlrpc library. 2004-08-17 18:40:59 +00:00
Steven Wittens 621ec02ee7 Fixing a faulty check in cache_get() which prevented empty data from being returned. This was required for filtercache, where a cache entry with empty data can have meaning (e.g. as the output for the input '<script></script>' when script is not allowed). 2004-08-16 22:39:48 +00:00
Dries Buytaert d5e1e83e77 - Patch #9900 by Al: bugfix: don't display two <hr />'s. 2004-08-16 21:27:39 +00:00
Dries Buytaert 1b1bcc35ac - Patch #10026 by Al: bugfix: don't show the 'more help' links when the help module is disabled. 2004-08-16 21:25:54 +00:00
Dries Buytaert 2f33b939c5 - Patch #9983 by Stefan: usability improvement: made sure all status messages start with a capital letter. 2004-08-16 18:02:48 +00:00
Dries Buytaert dd7764302f - Patch #10111 by Killes: fixed some SQL queries. 2004-08-16 17:42:36 +00:00
Dries Buytaert 9a26352b9c - Patch #9864 by JonBob: better form validation in menu administration. 2004-08-15 16:42:59 +00:00
Dries Buytaert cea07ecac6 - Patch #6806 by UnConeD: prefixed form IDs with 'edit-' so they won't clash
with other IDs.  Also makes things a tad more consistent.
2004-08-12 21:56:48 +00:00
Dries Buytaert 0f088b79ca - Patch #9983 by Stefan: various code style improvements. 2004-08-12 18:00:11 +00:00
Dries Buytaert d651b9dc3b - Patch #7535 by Gerhard: one could not search for the word 'From'. 2004-08-12 05:46:37 +00:00
Dries Buytaert 1831e1b690 - New locale module thanks to Gerhard, Goba, Marco, Kristjan and others.
The new locale module provides every functionality on the web interface, so you don't need to edit the configuration files or add columns, when you add a new language. This module is an integration of the old locale and localegettext modules, plus a bunch of logic to parse Gettext Portable Object files (opposed to Machine Object files, as supported by localegettext).

  Note: I made some minor changes to the context-sensitive help texts and to some of the status messages.
2004-08-11 11:26:20 +00:00
Dries Buytaert d6d3af1b67 - Patch #9663 by jvandyk: the $i counter variable in tablesort_get_order() is unused and should therefore be removed. 2004-08-10 19:15:57 +00:00
Steven Wittens 660f99287d The Input formats - filter patch has landed. I still need to make update instructions for modules and update the hook docs.
Here's an overview of the changes:
1) Multiple Input formats: they are complete filter configurations (what filters to use, in what order and with which settings). Input formats are admin-definable, and usage of them is role-dependant. For example, you can set it up so that regular users can only use limited HTML, while admins can free HTML without any tag limitations.
The input format can be chosen per content item (nodes, comments, blocks, ...) when you add/edit them. If only a single format is available, there is no choice, and nothing changes with before.

The default install (and the upgrade) contains a basic set of formats which should satisfy the average user's needs.

2) Filters have toggles
Because now you might want to enable a filter only on some input formats, an explicit toggle is provided by the filter system. Modules do not need to worry about it and filters that still have their own on/off switch should get rid of it.

3) Multiple filters per module
This was necessary to accomodate the next change, and it's also a logical extension of the filter system.

4) Embedded PHP is now a filter
Thanks to the multiple input formats, I was able to move the 'embedded PHP' feature from block.module, page.module and book.module into a simple filter which executes PHP code. This filter is part of filter.module, and by default there is an input format 'PHP', restricted to the administrator only, which contains this filter.
This change means that block.module now passes custom block contents through the filter system.
As well as from reducing code duplication and avoiding two type selectors for page/book nodes, you can now combine PHP code with other filters.

5) User-supplied PHP code now requires <?php ?> tags.
This is required for teasers to work with PHP code. Because PHP evaluation is now just another step in the filter process, we can't do this. Also, because teasers are generated before filtering, this would result in errors when the teaser generation would cut off a piece of PHP code.

Also, regular PHP syntax explicitly includes the <?php ?> tags for PHP files, so it makes sense to use the same convention for embedded PHP in Drupal.

6) Filter caching was added.
Benchmarking shows that even for a simple setup (basic html filtering + legacy URL rewriting), filtercache can offer speedups. Unlike the old filtercache, this uses the normal cache table.

7) Filtertips were moved from help into a hook_filter_tips(). This was required to accomodate the fact that there are multiple filters per module, and that filter settings are format dependant. Shoehorning filter tips into _help was ugly and silly. The display of the filter tips is done through the input format selector, so filter_tips_short() no longer exists.

8) A more intelligent linebreak convertor was added, which doesn't stop working if you use block-level tags and which adds <p> tags.
2004-08-10 18:34:29 +00:00
Dries Buytaert f99830a498 - Patch by Al: improved the admin/help pages (first step). 2004-08-10 05:44:17 +00:00
Steven Wittens 88221c2f67 #7646 and more:
- Users who have not edited their account yet would be reset to GMT rather than the sitewide timezone.
- Users who chose GMT (zero timezone) on a site with a non-zero timezone as default would have incorrect timezone.
2004-08-10 01:30:09 +00:00
Dries Buytaert 9e54dc27ff - Patch #7968 by Adrian: use the complete URL as the cache ID to make Drupal's
caching work on virtual hosts.
2004-08-06 20:38:48 +00:00
Dries Buytaert 9bad647d76 - Patch #9819 by JonBob: fixed XHTML bug - make sure the <div> is always closed. 2004-08-06 20:18:25 +00:00
Dries Buytaert 9bbdb71ee4 - Patch #9330: ucfirst() gives problem when used with multibyte charset.
Replaced the use of ucfirst() with a CSS-based solution.
2004-08-06 20:15:32 +00:00
Dries Buytaert c71bfded3d - Patch #9657: more intelligent theme() function. Hopefully, Adrian will be
able to use this patch too.
2004-08-04 20:40:01 +00:00
Dries Buytaert a52cf8297a - Patch #7458 by killes: conditionally include xmlrpc.inc. 2004-08-04 20:36:24 +00:00
Dries Buytaert c0f6fccac3 - Patch #7336 by TDobes: in various parts of Drupal, we use the title attribute for links to provide a slightly more detailed explanation as to the purpose of a link or where it goes. 2004-08-03 18:01:48 +00:00
Dries Buytaert 9945bca528 - Patch #9650 by Adrian: this change introduces a module_load function, which maintains a list of modules that have already been loaded in a static array, and will not load another module of the same name, or if the file does not exist.
Modules can be stored anywhere, as there is now a set of functions called module_get_filename, and module_set_filename .. which allow system_listing and module_list to specify the locations of the files.

A new function module_load_all() replaces the hardcoded includes in module_init, and loads all modules which have been enabled, using module_load.

module_listing no longer includes files itself, instead it just keeps the listing (and sets the filenames).

This patch is a requirement for the multisite configuration patch, as overriding modules are currently being loaded due to the only protection of loading them is include_once.
2004-07-31 11:17:27 +00:00
Steven Wittens 6c73823b10 Fixing a rather nasty bug with page cache:
The headers stored for cached pages ended in a newline, which caused header("") to get called when serving the page.
On some PHP versions (happens on 4.3.3 at least, but not in 5.0), PHP adds a blank header to the HTTP request (i.e. just \r\n) which ends HTTP headers prematurely and adds a newline at the beginning of the page.

This was not an issue before because we output HTML. Now that we have GZip compression, this bug caused corruption of the output. :P
*phew*
2004-07-29 01:41:33 +00:00
Steven Wittens ef6cbfda6f - Fixing broken tablesort due to typo with quotes. 2004-07-25 19:50:23 +00:00
Dries Buytaert 2af5dff6a2 - Patch #9464 by Moshe: menu.module omitted a pair of braces when calling
db_next_id().
2004-07-25 18:16:49 +00:00
Dries Buytaert 702a057683 - Patch #9478 by JonBob: allow printf-style arguments in pager_query.
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.
2004-07-25 14:25:42 +00:00
Steven Wittens edc2f13d82 - #9287: More doxygen/documentation fixes by JonBob 2004-07-22 16:06:54 +00:00
Steven Wittens b8d653f1e8 - Fixing bad strpos usage (have to use the ===/!== operators to check for 'false' in this case) 2004-07-21 15:30:35 +00:00
Dries Buytaert 7765fa1f7a - Patch #9290 by Morbus / JonBob / TDobes: SUBTASK removal patch for menu.inc. 2004-07-15 17:16:58 +00:00
Dries Buytaert f63c3be30c - Code and documentation improvements by JonBob. 2004-07-14 20:42:20 +00:00
Dries Buytaert 63a327db97 - Patch #9287 by JonBob: made the code style in the three database include files consistent with Drupal standards, and adds a wealth of Doxygen-style comments to aid developers in writing solid database access code using the API. 2004-07-14 19:15:25 +00:00
Dries Buytaert ce8e264382 - Patch #9262 by Ber / JonBob: the menu did not build correctly, thus the additional menu's were never displayed, but were saved. Only the last custom menu was displayed. 2004-07-14 05:46:12 +00:00
Dries Buytaert 50d78e9855 - Patch #9238 by JonBob: added code and Doxygen comments to common.inc and
bootstrap.inc.
2004-07-13 07:21:14 +00:00
Steven Wittens a080ce5f0f Slightly improved code in drupal_xml_parser_create. 2004-07-12 21:38:41 +00:00
Steven Wittens 77c0b577da Now Drupal tries iconv, recode and mbstring to convert unknown XML encodings to UTF-8. It also throws a friendlier error message when none of these extensions is installed. 2004-07-12 21:35:31 +00:00
Dries Buytaert 323d9fe054 - Call 'exit' hook when drupal_goto() is called. Also necessary for the
devel.module.
2004-07-11 07:31:11 +00:00
Dries Buytaert f163fa9956 - Patch by JonBob: a significant documentation update for the menu system! 2004-07-10 18:10:36 +00:00
Dries Buytaert ac5b5616c0 - More tab-improvements by JonBob: improved support for the default tabs! 2004-07-10 15:51:48 +00:00
Dries Buytaert a067187711 - Patch #8509 by Killes and Steven: added support for sending compressed
pages.  Useful to reduce your site's bandwidth.
2004-07-08 19:22:48 +00:00
Dries Buytaert 56fa37cb8e - Made the example theme display status messages. Not sure why it wasn't. 2004-07-08 16:08:21 +00:00
Dries Buytaert 5b73def39b - Changed the way status messages are printed as per Kristjan's suggestion:
http://drupal.org/files/issues/error_messages_list.png (issue #9138).

  drupal_set_message() has been changed to group message by type and a
  helper function, theme_status_message(), is added to display the messages.
  Chameleon and Xtemplate have been updated to use this new function.

- Updated CHANGELOG.txt.
2004-07-08 16:04:07 +00:00
Dries Buytaert 02ae1ce670 - Many form_ functions called theme('form_element') with the wrong parameters!
- Fixed order of parameters in form_checkboxes() (plural).
2004-07-08 11:31:12 +00:00
Dries Buytaert 7bb88809b7 - Patch #9049 by JonBob: fixed a number of tab issues. 2004-07-06 07:33:59 +00:00
Dries Buytaert fe2b3e7c00 - Patch by Steven and me: refactored the form handling of nodes. The node system is now using form_set_error() and friends like the rest of Drupal does. This makes for both a consistent user experience and consistent code. It simplifies the forms and validation code, however, it does change the node API slightly:
* The _validate hook and the _nodeapi('validate') hook of the node API (1) no longer take an 'error' parameter and (2) should no longer return an error array. To set an error, call form_set_error().

    * The _form hook of the node module no longer takes a form hook and should not worry about displaying errors. Ditto for _nodeapi('form_post') and _nodeapi('form_pre').
2004-07-04 16:50:02 +00:00
Dries Buytaert f3aa87122e - Textarea's did not have error handling support yet. 2004-07-04 06:19:41 +00:00
Dries Buytaert 9986cb36b5 - Patch #8973 by JonBob: Drupal contains many undefined variables and array 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). 2004-07-02 18:46:42 +00:00
Dries Buytaert 60513799a1 - Patch #8941 by JonBob: allow local tasks to be ordered by weight, as well
as simplifying the theming of local tasks so they can be more easily
  rendered in a non-tab manner.
2004-06-30 20:45:45 +00:00
Dries Buytaert e3e051cc0d - Patch #8585 by Junyor: sort blog items by creation date. Added some database indices. 2004-06-30 07:26:02 +00:00
Steven Wittens 6a00c7c2f2 - Preventing caching of page when status messages are present (needed for redirects after form submission to work properly)
- Double-quotes to Single-quotes
2004-06-28 20:00:53 +00:00
Dries Buytaert 0a35280978 - Patch #8603 by TDobes: added support for sticky forum topics to the blog
and forum module.
2004-06-27 16:02:31 +00:00
Dries Buytaert 0be1e6cff7 - Issue #8735 by njivy: made the pager code ignore EOLs. 2004-06-22 05:45:15 +00:00
Dries Buytaert 77ec01f592 - Patch #8344 by Kjartan: drupal_http_request() did not always handle EOLs
correctly.
2004-06-21 20:14:41 +00:00
Dries Buytaert 090743bdba - Patch #8670 by asimmonds: more spelling fixes. 2004-06-21 20:05:37 +00:00
Dries Buytaert b713e3d489 - Patch #8617 by TDobes: changes all gifs to pngs for better consistency (and
to get of proprietary formats).

- Added forum-sticky.png.  Made by Steven.
2004-06-20 20:04:28 +00:00
Dries Buytaert 4e1f368e88 - "" -> ''. 2004-06-20 08:31:45 +00:00
Dries Buytaert ce45c91a53 - Patch #8652 by Adrian: incorrect implode. 2004-06-20 08:30:57 +00:00
Dries Buytaert efed4cfc70 - Patch #8679 by asimmonds: fixed spelling mistakes. 2004-06-20 08:27:03 +00:00
Dries Buytaert 1b46d7fcfe - Patch #8614 by JonBob: better way to display menus. 2004-06-19 14:57:44 +00:00
Dries Buytaert cbc230a36c - Patch #7696 by TDobes: renamed 'static' to 'sticky' which is a more
logical name.  Requires a database upgrade.
2004-06-19 10:39:36 +00:00
Dries Buytaert a42b84e5d6 First tab improvements by Adrian:
+ Changed menu.inc to generate two separate lists instead of nested lists:
    that seems to be the only alternative to get rid of absolute positioning.

  + Changed the tabs code to be more sexy and put the code in misc/drupal.css
    so all themes are automagically updated.
2004-06-19 08:24:14 +00:00
Dries Buytaert 54b77d6435 Tabs patch!
CHANGES
-------

 + Introduced tabs. First, we extended the menu system to support tabs. Next, a tab was added for every link that was (1) an administrative action other than the implicit 'view' (2) relevant to that particular page only. This is illustrated by the fact that all tabs are verbs and that clicking a page's tab leads you to a subpage of that page.

 + Flattened the administration menu. The tabs helped simplify the navigation menu as I could separate 'actions' from 'navigation'. In addition, I removed the 'administer > configuration'-menu, renamed 'blocks' to 'sidebars' which I hope is a bit more descriptive, and made a couple more changes. Earlier, we already renamed 'taxonomy' to 'categorization' and we move 'statistics' under 'logs'.

 + Grouped settings. All settings have been grouped under 'administer > settings'.

TODO
----

 + Update core themes: only Xtemplate default supports tabs and even those look ugly.  Need help.

 + Update contributed modules.  The menu() hook changed drastically.  Updating your code adhere the new menu() function should be 90% of the work.  Moreover, ensure that your modue's admin links are still valid and that URLs to node get updated to the new scheme ('node/view/x' -> 'node/x').
2004-06-18 15:04:37 +00:00
Kjartan Mannes 7cd54567bd - Commiting patch #8288: Let modules pass $attributes to form_checkboxes() and form_radios(). 2004-06-04 18:10:05 +00:00
Kjartan Mannes c957fe0aab - Commited patch #4878: Support file uploads via blogapi. 2004-06-04 18:00:48 +00:00
Dries Buytaert c0b85a5721 - Patch #4950 by Stefan (and Morbus): made watchdog messages translatable. 2004-06-02 19:01:40 +00:00
Kjartan Mannes c3463a22ae - Removing early experimental tab code that slipped in.
- Fixing a copy paste error in file.inc.
- Some double => single quote changes.
2004-06-02 18:26:44 +00:00
Kjartan Mannes 3c50b9c26f - Fixed tablesort_sql() so it returns the proper order by sql. 2004-06-02 13:53:44 +00:00
Dries Buytaert cd48e69b29 - Patches #6863 by Kristjan and Moshe: implemented pretty tables and fixed some tablesort glitches. 2004-06-02 05:35:51 +00:00
Dries Buytaert fbbf510511 - Patch #8105 by mathias: made the menu system aware of path aliases. 2004-06-01 21:58:46 +00:00
Dries Buytaert 7f08110a5e - Improved form handling.
+ Introduced two new functions:
      1. form_set_error($name, $message): files an error against the form
         element with the specified  $name.
      2. form_has_errors(): returns true if errors has been filed against
         form elements.

  + Updated the form handling:
       1. The form_ functions will add 'class="error"' when a form field
          has been found to be erroneous.
       2. The error message is passed to theme_form_element() when the
          particular form field has been found to be erroneous.

  + I updated the user and profile module to take advantage of these new
    functions.

  + IMPORTANT: the _user() hook changed.  The 'validate' case should no
    longer retun an error message when something goes wrong but should
    set it with form_set_error().
2004-05-31 09:40:56 +00:00
Dries Buytaert 5cd371578e - Patch #6863 by Moshe: add 'class="active"' to the table elements of
the active column.
2004-05-29 17:38:54 +00:00
Dries Buytaert 07d53792c4 - Patch #8089 by matthias: make sure aliased links can be flagged as 'active'. 2004-05-28 20:05:15 +00:00
Dries Buytaert 7f32eb1f1e - Patch #7967 by matthias: small patch to improve the robustness of the tablesorting code. 2004-05-25 05:03:03 +00:00
Dries Buytaert 436dcead77 - Patch #7725 by Marius: fixed glitch in e-mail address validation code. A subset of all e-mail addresses was rejected as valid. 2004-05-24 18:09:28 +00:00
Dries Buytaert 01f08e86dd - Patch #7966 by Goba: The box has it's content wrapped in a paragraph now, which is not suitable for the purposes the box is used in. Boxes are used to wrap tables or forms with titles. The comment module uses theme(box, ...) to wrap forms into boxes for example. Therefore using a paragraph does not make the output valid XHTML and a div is needed. 2004-05-24 05:10:32 +00:00
Dries Buytaert 2e67c2ffa1 - Modified patch #7958 by Adrian: store status messages in a session so they can persist when redirection is used. 2004-05-22 22:21:49 +00:00
Dries Buytaert 10c5e95a2f - Made it possible for anonymous users to leave their name, e-mail address
and the URL of their homepage.  Patch by Pablo.
2004-05-18 18:41:46 +00:00
Dries Buytaert fed7e664de - Patch #6682 by jhriggs: added form_checkboxes(), much like form_radios()
and updated some modules to take advantage of it.
2004-05-15 15:42:47 +00:00