that node to something that would not have passed the preview pages.
Patch by Revar:
"If you uploaded a valid file, and filled out the form right, you will
get a Submit button. The problem comes in when you choose a different
file to upload, and then click Submit. The filestore_save() function
cannot do proper validation and handling of the form data, as it only
returns a list of what node fields to save. On error, a node entry is
still created, but with only the nid field set. The user can't be
forced to fix their bad entry."
"Add a _form_validate() node hook to process and validate any form
results. That way even on Submit, the node code would check the
validity of the data, and if bad, it could drop you back to the preview
screen with the current bad data warnings. Have it return an array of
errors that can be passed in as $error to the _form() hook. If it
returns a null array, then there's no errors, and the submit can go
through."
- fixed access checks on the register form, do this before you enter the
_save function. If registrations are disabled the register link will
no longer show (again).
- changed » to », using the names of entities are better than
the numbers.
- fixed user information being set when account is registered (properly this
time, really!)
- reversed the if(!...) commit.
- node_add specifies more defaults.
- added link to blog entries from user page.
* fixed mails not being parsed properly.
* tracker now shows user name when you view your own recent
comments.
* link to submission queue now points to the right place.
* fixed jabber module.
* theme is now activated when changed.
- applied Gerhards coding style patch.
+ Changed the db_query() API.
+ Wrapped all links in l(), lm(), la(), ..., drupal_url() functions.
+ XHTML-ified some HTML.
+ Wrapped a lot of text in the administrative pages in a t()
function.
+ Replaced all $REQUEST_URI/$PATH_INFOs by request_uri().
+ Small bugfixes (eg. bug in book_export_html() and clean-ups (eg.
RSS code).
+ Fixed some bugs in the taxonomy module (eg. tree making bug), added
new functionality (eg. new APIs for use by other modules), included
Moshe's taxonomy extensions, and some documentation udpates.
+ ...
for the meta system. The patches add some extra functionality to the
comment system (for example, comments can be set read-only) and fix a
couple of small problems.
+ I integrated the required SQL updates from the varius *.mysql files
into the "update.php" script. Upgrading should be easy ...
+ I did not apply/commit the "user.diff" as requested by Marco ...
+ I didn't know what to do with "forum.module" and "forum2.module":
what do you want me to do with it Marco? Which one should go in?
+ Can we remove "node_index()" now; both from "node.module" and the
themes?
+ Thanks Marco!
Committing Changes by Moshe Weitzman:
- admin_user_account(), user_edit(), and user_view() no longer have any
hard code for authentication modules. instead authentication modules
implement the _user hook.
- fixed a couple 'help' typos.
- linked the 'REGISTER' text in the login block to the register page.
this page now advertises DA better if site employs DA.
- admins may now edit everything about a user account (was a feature
request).
- user #1 may now login immediately, in addition to receiving his
password via email.
Other changes:
- modules and themes are now enabled/disabled in the administrative /
settings / modules | themes pages. Requires SQL update and things must
be enabled before your site returns to normal. TODO: enable all
functionality. (For now just do UPDATE system SET status = 1;)
- removed $themes from conf.php.
- added a $theme->system() function where theme can specify settings.
All themes in the Drupal CVS have been updated to use this.
- added _system hook to modules. TODO: update modules to use this.
- changed strange use of sprintf to the usual strtr. The disadvantage of
sprintf is that it requires translations to keep the string order,
which may not be possible in all languages.
- an invalid/nonexisting theme in a user profile will now fallback to the
BaseTheme instead of crashing.
- added who is online block.
- made weblog module more configurable.
- users may now delete their own accounts (Feature #8)
- users may now request a password using email address *or* username.
formerly required both items to match an account which was onerous.
- the link to request a new password is now presented whenever a user
fails login.
- there is now a confirmation message after submitting edits to your
user information.
- error messages in user.module may now be stylized by themes.
- <hook>_form has a $param setting you can fill with form parameters.
- improved wording for a few config settings.
- fixed various non-coding standard things.
can jump directly to a certain date in the archives. Also made
the calendar link to itself such that it is self-contained.
- Code beautifications: quoted a lot of arrays, removed dead code
and simplified a few things.
- Replaced the Calendar class by one function "calendar_display":
using a class (or class instance, or object) doesn't make sense
in the archives' case.
- Renamed "calendar.module" to "archive.module".
- Fixed a /problem/ with node settings not always being saved like
expected.
- Reorganized the user menu: renamed a couple of links for clarity
and structure.
- Fixed a few typos.
+ Improved input filtering; this should make the news items look
more consistent in terms of mark-up.
+ Quoted all array indices: converted all instances of $foo[bar]
to $foo["bar"]. Made various other changes to make the import
module compliant with the coding style.
- theme.inc:
+ Fixed small XHTML glitch
- comment system:
+ Made it possible for users to edit their comments (when certain
criteria are matched).
+ Renamed the SQL table field "lid" to "nid" and updated the code
to reflect this change: this is a rather /annoying/ change that
has been asked for a few times. It will impact the contributed
BBS/forum modules and requires a tiny SQL update:
sql> ALTER TABLE comments CHANGE lid nid int(10) NOT NULL;
+ Moved most (all?) of the comment related logic from node.php to
comment.module where it belongs. This also marks a first step
towards removing/reducing "node.php".
+ Added a delete button to the comment admin form and made it so
that Drupal prompts for confirmation prior to deleting a comment
from the database. This behavior is similar to that of deleting
nodes.
+ Disabled comment moderation for now.
+ Some of the above changes will make it easier to integrate the
upcomcing mail-to-web and web-to-mail gateways. They are part
of a bigger plan. ;)
- node system:
+ Made it so that updating nodes (like for instance updating blog
entries) won't trigger the submission rate throttle.
+ Fixed a small glitch where a node's title wasn't always passed
to the $theme->header() function.
+ Made "node_array()" and "node_object()" more generic and named
them "object2array()" and "array2object()".
+ Moved most (all?) of the comment related logic from node.php to
comment.module where it belongs. This also marks a first step
towards removing/reducing "node.php".
- misc:
+ Applied three patches by Foxen. One to improve performance of
the book module, and two other patches to fix small glitches in
common.inc. Thanks Foxen!
+ made a small change in the node overview page in the admin section
such that it lists both new and updated pages by default.
+ reworked the filter-mechanism: it is not 100% finished yet but it
sure is taking shape.
+ Added (1) support for "PHP pages" (dynamic pages), and (2) made
it possible to link other node types into the book's tree/outline.
It works just fine, yet the only (obvious) downside of (2) is
that the navigation tree/links gets "interrupted" when you view
non-book pages in the book.
[SQL update required, see update.php]
+ Tidied up the book table.
[SQL update required, see update.php]
- various updates:
+ Fine-tuned the new node system.
+ Updated the inline/code documentation.
+ Improved teaser handling of all node types.
+ Made several small usability improvements to the node admin
pages.
- Fixed a glitch in the book overview in the admin section.
- When updating a book page through the admin section, no new revision
is created unless explictely specified.
- Improved the usability of the node and book pages a little.
- Bugfix: the "Edit comments" part of the node administration pages did not
display the correct comments.
- Bugfix: somethimes, update in a book page would mess up the book.
- Improvement: when "node administrators" update a book page through the
"update this book page"-link (like regular users do), their update will
be subject to moderation.
- Improvement: made some intermediate changes to the filter mechanism. Needs
more work.
- Made the /comment links/ jump to the comments instead of to the top
of the page.
- Replaced the "Add comment"-button by a "add new comment"-link.
(This should make UnConeD jump up and down of wild excitement.)
- Moved all comment related logic from theme.inc and node.module to
comment.inc and comment.module (where they belong).
- Added some links to ease the site's usability/navigation.
as this breaks revisions.
- modified link_node() to take a third parameter $main, which will be passed on
to _link hooks. This lets modules decide which links a node will get when
shown on the main page, or when not.
- updated themes to use the new syntax.