Commit Graph

511 Commits (515f7b41f16af341b345f553ec5409f973edd581)

Author SHA1 Message Date
Dries Buytaert 08e7c8b3a7 - Patch #16246 by Moshe: "Here is a patch for node.module since thta hunk failed last time. Note that I've removed the 'delete' link since it doesn't work and is mostly obsolete with the 'mass delete' feature. I've also added smart destination andling to the 'url alias delete' feature." 2005-02-10 19:30:08 +00:00
Steven Wittens 95907f0c2e - Fixing broken drupal_goto() after node submission on PHP5. 2005-02-04 20:48:37 +00:00
Steven Wittens 7fe195a07e - PHP5 fix due object references: node previewing should not put node output into form. 2005-02-04 20:14:05 +00:00
Steven Wittens ab816b6d6d - Fix warning due to old session variable. 2005-02-02 01:03:25 +00:00
Steven Wittens d56cf2b59c #10296: Clean up admin - content:
- Mass-delete functionality (with confirmation)
- Flexible filtering for the overview table based on status, type and taxonomy.
- Missing drupal_goto's
- Clean up watchdog messages
- Remove some dead code
2005-02-02 00:55:59 +00:00
Dries Buytaert 7931c778d7 - Patch #16513 by James (slightly modified): export categories and enclosures to RSS feeds (and made RSS feeds extensible).
NOTE: this needs to be documented.
2005-02-01 14:09:31 +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 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 c0f06fbe67 - Patch #6025 by Jeremy: avoid data to get lost when two users are editing a node at the same time. 2005-01-27 14:45:42 +00:00
Dries Buytaert 7415e0b1c8 - Patch #16192 by Neil: moved the submission guidelines found in forum, story, and blog and the minimum number of words found in story and blog (blog had a slight bug) into the node module. 2005-01-26 22:59:41 +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 9cd36863b0 - I had to modify chx's patch/change because it did not work with PHP5. Please double-check. 2005-01-23 16:20:10 +00:00
Dries Buytaert 898e02252d - Patch #16026 by chx: fixed node-level permissions. 2005-01-23 15:45:38 +00:00
Steven Wittens a332228326 Documenting a tricky regexp. 2005-01-22 22:33:20 +00:00
Steven Wittens 4e6ceaae99 - Another code style fix. 2005-01-19 01:51:58 +00:00
Steven Wittens 09bd156ba2 - Fix tracker pager count query being wrong (it did not return a count but a set, and it counted nodes with more than 1 comment as multiple nodes).
- Clean up various SQL queries: removing literally inserted data (db_escape_string is evil!), fixing single "%" which should be "%%", fixing integers being compared as strings.
2005-01-19 01:46:25 +00:00
Steven Wittens 86af977eca - #15500: Fix tracker not showing nodes without comments.
- Tiny code style fix
2005-01-19 01:12:14 +00:00
Steven Wittens e7edb55d63 - The real code fixes ;) 2005-01-17 19:00:03 +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 92bc08b5b9 - Make the search settings page more user-friendly. 2005-01-11 09:41:49 +00:00
Steven Wittens 8655d4368a - Fixing a couple of watchdog() calls. 2005-01-09 12:58:53 +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 1dbe0dc2ee - Patch #14917 by UnConeD/Steven:
1) The different types of search, which used to be radio button options in the search form, are now subtabs of "search" (default "search/node"). This seems better from a UI point of view, but also has another advantage: modules which implement a custom search form (flexinode, project) can add it as a subtab of search. This means that all search forms will be located in the same place, and also without needing an extra api call to search.module.

2) The current code was a bit hackish, as the indexing of comments along with nodes was hardcoded in node.module. Instead, I created a nodeapi operation "update index" which allows modules to add more data for a node that is being indexed. Comments are now indexed using this mechanism and from comment.module, which is a lot cleaner.

3) The search results format was also hardcoded to include "N comments". I replaced this with a nodeapi operation "search result" and moved the comment code to comment.module where it belongs. This op is quite useful, as for example I also modified upload.module to add "N attachments" to a search result if any are present.
2004-12-31 09:30:12 +00:00
Dries Buytaert 05ede21745 - Patch #6308 by gordon: allow node_submit() to be used by external interfaces. 2004-12-26 20:10:02 +00:00
Steven Wittens 61b174e7d2 #11548: node.module - Ensure that only valid fields are saved 2004-12-24 06:44:11 +00:00
Dries Buytaert fde5f1bf6f - Patch #14709 by matteo: added missing call to the nodeapi's 'view' hook. 2004-12-23 23:26:14 +00:00
Steven Wittens 9f7b16ada9 #12793: Remove dependency of node.module on search.module. 2004-12-20 14:34:41 +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 6e3eb60aab - Removed some cruft: left-over xxx_help_page() functions. 2004-12-11 14:13:24 +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 2afd987398 Search: indexing should invoke nodeapi to catch all user-visible data (e.g. file attachment names). 2004-12-02 06:44:55 +00:00
Dries Buytaert b83b34018f - Patch #10697 by matteo: avoid that administrators can create nodes with the wrong node type. 2004-11-29 12:49:17 +00:00
Dries Buytaert e1cf88e7f8 - Modified patch #11840 by Stefan: added conctext-sensitive help text to the 'revision'-page. 2004-11-27 10:02:06 +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 9574766ad8 - Patch by Stefan: wrapped the help texts in <p></p> tags. Helps improve consistency. 2004-11-23 22:20:41 +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
Steven Wittens dc32e54f31 Search.module:
- Caching index statistics
- Minor code cleanup
2004-11-18 21:28:34 +00:00
Steven Wittens 90e67a3acb Search indexing bug: last updated timestamp needs to take last comment timestamp into account. 2004-11-18 21:16:30 +00:00
Dries Buytaert 38c91a8d95 - Patch #8506 by Gerhard: added basic node_load() caching. 2004-11-17 22:14:43 +00:00
Dries Buytaert 9979aceab0 - Patch #12783 by Stefan: various small consistency/usability improvements. 2004-11-15 11:16:39 +00:00
Dries Buytaert 40f6197c5b - Patch #11940 by kps: if the user is not allowed to view a newly submitted node, redirect him to the main page. 2004-11-15 09:55:28 +00:00
Dries Buytaert 14353d18ad - Slightly modified the API of node_title_list(): it will no longer call comment_num_all() for each node. Instead, it checks for the availability of the node_comment field, available through the node_comment_statistics table. If updated the Doxygen comments accordingly.
People were using node_title_list() without realizing it would do numereous database queries.  This change greatly reduces the number of database queries required to render the node statistics block as well as to render the forum block (coming up next).

  If your module is using node_title_list() and you want the number of comments to be shown as title attributes, chances are you have to update your SQL query to join node_comment_statistics.
2004-11-04 21:02:30 +00:00
Dries Buytaert b6eee48c88 - Patch #12232 by Steven: more search improvements:
+ When a comment is posted, a node needs to be re-indexed. Luckily, we can use node_comment_statistics for this easily.
   + When a node is deleted, it should be deleted from the search index as well.
   + The search wipe didn't properly remove links to nodes from the index.
   + Section url was faulty in _help.
   + Minor code rearrangement.
2004-11-04 06:47:03 +00:00
Dries Buytaert bd6ae69345 - Patch by Steven:
+ Display 'friendly' name rather than module name in search watchdog
     messages.
   + Remove left-over from search_total table.
   + Add index wipe button to the admin
   + Moved the admin to admin/settings/search
   + Prevented menu bug when node modules update the breadcrumb in view
     (thanks JonBob).
   + Changed search_total table's word key to PRIMARY.
2004-11-03 16:46:58 +00:00
Dries Buytaert b3adcf05a3 - Patch #11875 by Neil Drumm: block module configuration improvements.
The primary goal of this patch is to take the 'custom' and 'path' columns of the block overview page and make them into something understandable. As of Drupal 4.5 'custom' lacked an explanation which wasn't buried in help text and path required dealing with regular expressions.

Every block now has a configuration page to control these options. This gives more space to make form controls which do not require a lengthy explanation. This page also gives modules a chance to put their block configuration options in a place that makes sense using new operations in the block hook.

The only required changes to modules implementing hook_block() is to be careful about what is returned. Do not return anything if $op is not 'list' or 'view'. Once this change is made, modules will still be compatible with Drupal 4.5. Required changes to core modules are included in this path.

An additional optional change to modules is to implement the additional $op options added. 'configure' should return a string containing the configuration form for the block with the appropriate $delta. 'configure save' will come with an additional $edit argument, which will contain the submitted form data for saving. These changes to core modules are also included in this patch.
2004-10-31 07:34:47 +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 f46a82da51 #7607: Sort node types in node/add by translated names. 2004-10-29 00:51:49 +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 7ebd772f41 - Patch #10664 by TDobes: fixed collapsed comments + updated the code comments. 2004-10-16 07:22:26 +00:00
Dries Buytaert 2510f322a1 - Modified patch #10613 by killes: generate a 'page not found'-page when a requested node does not exist. I modified the patch to avoid duplicate 'not found'-checking in the second bulk. 2004-10-12 20:01:25 +00:00
Dries Buytaert abcfd21927 - Code improvement: removed some redundant code from the node module. 2004-10-10 11:17:24 +00:00
Dries Buytaert 50bf139960 - Fixed bug #11405: unchecking the "publish" box in the default workflow admin page (admin/node/configure/defaults) did not cause the default workflow to change. This was caused by the fact that node_validate() forced the value of the status field to "1". 2004-10-09 16:27:59 +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
Steven Wittens dbead89c1f Part of #11280: node_preview() should only generate a teaser if none is present (e.g. provided by a module like excerpt.module). 2004-10-04 20:34:23 +00:00
Steven Wittens 1298d2b9c9 Modified version of #10230: Put placement of filter format selector in a module's hands, and move it below the relevant textarea. 2004-09-28 19:13:03 +00:00
Dries Buytaert 4f5164c980 - Patch #10977 by Gerhard: added missing node access controls for RSS feeds. 2004-09-21 18:43:54 +00:00
Dries Buytaert 293c283c3b - Patch #10884 by killes: node_access_where_sql() lost a parameter. 2004-09-20 20:06:29 +00:00
Dries Buytaert 8ae5e4417a - Bugfix: it was not possible to delete nodes. Reported by Philippe. 2004-09-20 12:05:31 +00:00
Dries Buytaert 5c7983c4de - Patch #8179 by JonBob: reintroduced menu caching. 2004-09-16 07:17:56 +00:00
Steven Wittens a82b5143cf Removing useless 'read more' title attribute, as discussed. 2004-09-14 21:03:23 +00:00
Steven Wittens 93f193d7ad #8424: more meaningful link title=".." attributes for node_title_list(). 2004-09-14 02:28:37 +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
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 3f894f81e9 - Bugfix: removed bogus $name parameters.
TODO: when 'previewing' an existing node, the breadcrumb trail is incorrect.
2004-09-08 20:51:45 +00:00
Steven Wittens c76d5db8bd Node.module: teaser autogeneration should not overwrite user/module-supplied teaser data.
(makes excerpt.module possible)
2004-09-06 13:26:00 +00:00
Steven Wittens cdb6aa723b - #10342: PHP5 fix with undefined array. 2004-08-25 16:41:30 +00:00
Steven Wittens ad13675a4f - Fixing bug with PHP5 patch. 2004-08-23 00:44:02 +00:00
Steven Wittens 51cf18e531 - #9292: Make Drupal (somewhat) PHP5 compatible. xtemplate is still horribly broken. 2004-08-22 17:03:42 +00:00
Dries Buytaert 8b8a2bd634 - Patch #10187 by JonBob: bugfix: added missing permission check. 2004-08-21 16:04:12 +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
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 451821abe7 - Patch #10110 by JonBob: code improvement: looks like we have an artifact from before clean URLs in node.module. This patch removes the global variable $mod, which is no longer set and not necessary here anyway. 2004-08-16 18:31:44 +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 ef07dd08f4 - Patch #10102 by Gerhard: removing some cruft from the node module! 2004-08-16 17:51:12 +00:00
Steven Wittens fc99c57d87 #6732: fixing bug 'once anonymous always anoymous' (nodes). 2004-08-14 17:05:32 +00:00
Steven Wittens cb36ef37cc #10033: by Jonbob, make sure no filter check is done until the first preview. 2004-08-13 18:17:10 +00:00
Steven Wittens 441b63accd Moving all legacy handlers into legacy.module. 2004-08-12 15:12:26 +00:00
Dries Buytaert 543d8b7208 - Patch #9972 by njivy: modified node_feed() for the instances where locale is not enabled. Without this patch, reset(array_keys($languages['name'])) throws an error. 2004-08-12 05:44:11 +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
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 821c6d2d17 - Patch #9812 by Adrian: fixed some PostgreSQL/ANSI SQL compabitibility
problems created by the new comment and node access permissions code.
2004-08-06 21:00:43 +00:00
Dries Buytaert b47e4e16d3 - Patch #9794 by JonBob: a bug introduced late in the review process makes individual node views inaccessible to users who should have permission. This does not affect node listings, so was missed. 2004-08-05 20:26:25 +00:00
Dries Buytaert c6b1eaa20d - Patch #9775 by TDobes: consistency operation. Changed to "edit foo," "delete foo," and "view foo" links into simply "edit," "delete," and "view". 2004-08-05 05:40:53 +00:00
Dries Buytaert 07ae0fad65 - Patch #9497 by gordon: made <!--break--> work even when the teaser length
is set to unlimited and fixed up some code comments.
2004-08-04 21:19:12 +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 202eee42a9 - Patch #9543 by JonBob: added node-level access control! 2004-07-31 09:30:09 +00:00
Dries Buytaert aed1b0ca9e - Patch #5347 by JonBob:
Here's a new patch that unifies the node/52 and book/view/52 paths for nodes. It involves a small change to hook_view(), which is discussed first:

Currently hook_view() expects node modules to return a themed node. However, each module does this the same way; they modify $node as necessary, then call theme('node', $node) and return the result. We can refactor this so that the calling function node_view() calls theme('node') instead. By doing this, it becomes possible for hook_nodeapi('view') to be called after hook_view() where the node contents are filtered, and before theme('node') where the body is enclosed in other HTML. This way the book module can insert its navigation into the body right before the theming.

Advantages of this refactoring:
- I can use it for book.module to remove the extra viewing path.
- The function of hook_nodeapi('view') becomes more like hook_view(), as neither will expect a return value.
- We more closely follow the flow of other nodeapi calls, which usually directly follow their corresponding specific node type hooks (instead of preceding them).
- The attachment.module people could use it to append their attachments in a list after the node.
- Gabor could use it instead of his filter perversion for his "articles in a series" module.
- A little less code in each view hook.
- The content hook is no longer needed, so that means even less code.

Disadvantages:
- Any modules written to use nodeapi('view') could be affected (but these would all be post-4.4 modules).
- Implementations of hook_view() would need to be updated (but return values would be ignored, so most would work without updates anyway).

Now the patch takes advantage of this API shift to inject its navigation at the end of all book nodes, regardless of the viewing path. In fact, since the paths become identical, I've removed the book/view handler entirely. We should probably provide an .htaccess rewrite for this (one is still needed for node/view/nn anyway). At the same time, there is a check in book_block() that shows the block appropriately on these pages.
2004-07-30 13:37:26 +00:00
Dries Buytaert df2e5ef505 - Patch #8942 by Morbus: when testing under devel.module, the "SELECT timestamp from {history}" SQL statement is executed multiple times in two different functions. This duplicated code should be placed in a function, and that's been done already with node_last_visited() - the remaining code was just never updated to use the new routine. This patch changes the old code to use node_last_visited, and also modifies node_last_visited() to cache the result of the database call. 2004-07-13 20:44:13 +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 898bdeffaf - Marked required fields on the node (story, book, page, blog) and comment
forms using the $required argument of the form_ functions.

- Replaced all Optional's and Required's from the taxonomy forms with proper
  use of the form_ functions.

Please check your contributed modules too!
2004-07-08 15:24:30 +00:00
Steven Wittens d615cb245e - Added revisions tab to node view (when needed)
- Updated node.module to use drupal_goto after submission: this allows people to refresh after submission without any problems.
2004-07-04 19:24:52 +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 353c05d015 - Made it possible to edit blog posts and made the blog module use tabs. 2004-07-04 10:30:42 +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 e288b4ddb1 - Patch #8747 by JonBob: extended and standardized node.module Doxygen
comments, and made formatting and quote usage more consistent.
2004-06-22 20:24:27 +00:00