Commit Graph

50 Commits (2410cf51c8777d173d9a05ec514b6d7678539922)

Author SHA1 Message Date
Dries Buytaert c5fcdd3194 - Included the documentation contributed by Moshe. 2002-02-25 20:26:38 +00:00
Dries Buytaert c1c612b128 - Made the calendar module accept a $date parameter such that you
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.
2002-01-31 20:23:44 +00:00
Dries Buytaert d03f42c35f - Fixed typo. 2001-12-15 16:41:51 +00:00
Dries Buytaert eea53076d9 - Bugfix: don't display links that point to hidden/disabled pages. 2001-12-15 16:26:04 +00:00
Dries Buytaert 7a972daeab - node system:
+ 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.
2001-12-08 13:11:33 +00:00
Dries Buytaert 7962b6cc90 - Fixed small form glitches. 2001-12-08 11:41:35 +00:00
Dries Buytaert 20b4b7166f - book.module:
+ 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.
2001-12-06 17:33:05 +00:00
Dries Buytaert 2db432e3d3 - Removed Windows line feeds ... 2001-12-05 18:46:24 +00:00
Kjartan Mannes 7d0c316f82 - fixed pass by reference errors. PHP only allows declaration of &$vars, not
passing them that way.
  For more info: http://no.php.net/manual/en/language.references.pass.php
2001-11-26 18:27:34 +00:00
Dries Buytaert ebb14ab94a - A couple of new node updates 2001-11-12 22:17:52 +00:00
Dries Buytaert 6642f2987e - node modules:
+ made some improvements to the node access checks

- queue module:
   + form()-ified the queue module and added some extra information
     or guidelines
   + added a few missing translations
   + ...
2001-11-12 20:15:08 +00:00
Dries Buytaert 234b40b253 - node system:
+ Added the "delete node"-link: apparently it got lost during the last
     commit.  Odd.

   + Changed "Edit node" to "Edit <node_name>" on the 'edit node'-page of
     the admin section.  (There a 4 "Node"s that still need to be removed
     though.)

   + Updated the initial submission page (the old submit.php) to include
     some descriptions.
2001-11-07 18:14:46 +00:00
Dries Buytaert a2e6910902 - Made the node forms support "help texts": it is not possible to configure
Drupal to display submission guidelines, or any other kind of explanation
  such as "NO TEST POSTS", for example.

- Added node versioning: it is possible to create revisions, to view old
  revisions and to roll-back to older revisions.  You'll need to apply a
  SQL update.

  I'm going to work on the book module now, so I might be changing a few
  things to enable collaborative, moderated revisions - but feel free to
  send some first feedback, if you like.

- Added some configuration options which can be used to set the minimum
  number of words a blog/story should consist of.  Hopefully this will
  be usefull to stop the (almost empty) test blogs.

- Various improvements:
   + Fine-tuned new node permission system.
   + Fine-tuned the functions in node.inc.
   + Fine-tuned some forms.
   + XHTML-ified some code.
2001-11-03 18:38:30 +00:00
Dries Buytaert 4d8b485fad - Added error handling support to the <node>_form hook. 2001-11-01 22:54:16 +00:00
Dries Buytaert 23ca7a2d88 - Another batch of updates/improvements:
+ introduced basic node permissions ("create", "delete", "update" and
     "view") at the node level: it's up to the "<$node->type>_module" to
     hide gory details (if any).

   + made the "blog it"-feature in the blog and import module work with
     the new node system, in specific with the new centralized forms.

   + made it possible to update blogs.

   + made the page module work with the new node system.

   + various smaller improvements.
2001-11-01 17:04:20 +00:00
Dries Buytaert 336b713a5f - A large batch of updates, amongst them a rewritten node system. More
information available on the mailing list.
2001-11-01 11:00:51 +00:00
Kjartan Mannes 864c18d4c3 - added the CVS keyword $Id$ to all files to make future version tracking
easier. Also changed the <? tag to <?php in some cases.
2001-10-20 18:57:09 +00:00
Dries Buytaert 33a3502dfe - Removed a node's link ID (lid) as discussed on the mailing list. See
'updates/3.00-to.x.xx.mysql' for the required MySQL updates.

- Renamed some "author" fields to "uid" fields for sake of consistency.

- Fixed the coding style of some PHP files.

- Fixed the moderation queue (fairly untested though).

- Re-introduced the temporary SQL table in _node_get().

- Added a missing 'auto_increment' to 'updates/3.00-to-x.xx.mysql'.
2001-10-16 20:13:22 +00:00
Dries Buytaert 27c4514719 - Small improvement: quoted all strings when used as an array index. 2001-10-14 11:31:01 +00:00
Dries Buytaert 451852c28a - Quote string tables indexes (patch by Mike Krus). 2001-10-14 07:47:42 +00:00
Dries Buytaert 0cce47f15f - fixed small glitch in node_del()
- fixed small glitch in comment_del()

- changed the API of the form() function.  The first parameter, the
  "action"-attribute in the <form>-tag has been made optional.  By
  default, it will be set to "$REQUEST_URI".

  Why? Because in 98% of the cases we would do:

    global $REQUEST_URI;
    $form = form($REQUEST_URI, $form_content);

  while we can do:

    $form = form($form_content);

  now.

  Update your modules (and sorry for the inconvenience)!
2001-09-28 16:20:55 +00:00
Dries Buytaert 2d1e9126cb - Added the new user module! 2001-09-16 11:33:14 +00:00
Dries Buytaert 808b6b6cae - Changed the authentication and login scheme as discussed on the mailing
list.
- Fixed the export function in book.module (patch my Julian).
- Fixed the comment alignment (comments got truncated).
2001-08-11 14:54:39 +00:00
Kjartan Mannes 4c89ab8a13 account.php
- real name is now shown to all users.

page.module
- improved the locale support.

comment.inc
- added a wrapper table for comment_thread_max() as suggested by nick.
2001-07-24 08:49:58 +00:00
Kjartan Mannes 908d399074 page.module
- removed access checking for links.
2001-07-20 10:09:24 +00:00
Kjartan Mannes 6fdef17257 page.module
- added a links option so pages can be displayed on the links of the site in an
  easy way. (Requires an SQL update.)
- made HTML and text type pages be $theme->box()ed again.
- made the page body hidden in a comment during editing, in case things
  crash you should still be able to retrieve your code. Will keep working on a
  better solution.

node.module
- made all node types be listed in the node listings.
2001-07-17 20:08:05 +00:00
Dries Buytaert a382d9ea4a - Fixed bug in page.module:
+ PHP-pages were rendered invalid under certain criteria.

- Fixed bug in meta.module:
   + When editing an existing node, the meta-field was not properly set
     in the forms.
2001-07-07 22:02:34 +00:00
Dries Buytaert 72065fb835 - Added a brand-new access.module which allows you to manage 'roles'
(groups) and 'permissions' ... (inspired by Zope's system).

    + Once installed, click the help-link for more information.

    + See updates/2.00-to-x.xx.sql for the SQL updates.

- Modified loads of code to use our new access.module.  The system
  still has to mature though: new permissions have to be added and
  existing permissions need stream-lining.  Awaiting suggestions.

- As a direct result of the new access system, I had to rewrite the
  way the top-level links in admin.php are rendered and displayed,
  and xhtml-ified admin.php while I was at it.

TODO

- Home-brewed modules need updating, home-brewed themes not.
  (Examples: file.module, trip_link.module)

- As soon we *finished* the refactoring of the user system (KJ has
  been working on this refactoring already) we should consider to
  embed this role and permission code into account.module ...
2001-06-20 20:00:40 +00:00
Dries Buytaert d397bbe935 This a rather large commit that needs a lot of fine-tuning. If you
update, you'll break your site as you need switching from structure
to index.module: so this can be considered an intermediate commit.

If you upgrade, and you are welcome to, just create a collection
called "section" (for now) and assign your nodes some attributes
in the described format.

Feedback and bugreports are welcomed.  Questions will be answered.

CHANGES:

- comment system:
   + when replying to a node (rather then to a comment), that
     node is displayed above the reply form.
   + when replying to a comment (rather then to a node), that
     comment is displayd above the reply form.

- removed structure.inc, removed structure.module.

- node.inc:
   + added 2 new node functions called 'node_attribute_edit()' and
     'node_attribute_save()' used to 'hook in' any indexing system
    including your home-brewed stuff if you'd want to.  Currently,
    index.module is the facto default index system.

    See story.module for usage.

- book.module, story.module, poll.module, page.module, forum.module:
   + added preview functionality to administration section (via node
     module).
   + removed all references to structure.inc (category, topic).

- moderate.module:
   + removed all references to structure.inc (category, topic).

- book.module, story.module, page.module, forum.module:
   + increased the sizes of some textareas.

- submit.php:
   + removed all references to structure.inc (category, topic).

- marvin.theme:
   + removed dead code: function story() was depricated.

- unconed.theme:
   + removed hardcoded references to drop.org.

- marvin.theme, unconed.theme, jeroen.theme, yaroon.theme, example.theme:
   + removed all references to structure.inc (category, topic).

TODO:

- file.module, trip_link.module:
   + update preview functionality:
       see story.module for example.
   + remove references to 'cid' and 'tid', use 'attribute' instead:
       see story.module for example.

- extend and build upon index.module as well as making it configurable
2001-06-10 15:01:20 +00:00
Dries Buytaert 62615ce04e - page.module:
+ we no longer wrap the output in a $theme->box().  If you want it in
     a box, just use $theme->box().
   + increased the sizes of the main "body"-form to make editing larger
     pages easier.
2001-06-10 09:54:43 +00:00
Dries Buytaert c75057bb0f CHANGES:
- Added improved node scheduler:

   + Automatically post node at date 'xx/xx/xx, xx:xx'.

   + Automatically queue node at date 'xx/xx/xx, xx:xx'.

   + Automatically dump node at date 'xx/xx/xx, xx:xx'.

  Requires a database update, see ./updates/2.00-to-x.xx.sql!

- Refactored the admin interface of node.module.  It is only a start
  but it should show the direction we are going.

   + The new interface is easier to extend with new functionality
     and operations.  New "edit xxx" links can easily be added on
     our way.

   + The new interface tries to cover all content- or node-related
     functions.  Thus making a special admin interface for each new
     node type redundant.  To demonstrate this, I removed the admin
     hook from page.module and forum.module.  This removes quite a
     bit of logic from the invidual modules which is a good sign if
     you ask me.

     A centralized GUI or interface covering all node-related
     administration should make Drupal easier to administer.

TODO:

- All node-related nodes need updating.  This should be trivial and
  I'll hapilly tackle this later tonight.

- There will be bugs, and I'm still working on this but I would like
  to get some feedback (from Natrak et all) on both user-friendliness
  and usability of this new interface.  I'm still working on it as we
  speak ...
2001-06-04 15:40:39 +00:00
Dries Buytaert b0c349e247 - Moved most of the options in structure.module to node.module. The
structure.module either needs work, or replacement by index.module:
  see "admin > node > node settings".

  It will do for now and it can always made better when we can think
  of a better solution; it is the best I could think of.   Now what?
  index.module or structure.module?  I'm currently pro index.module.

- Drastically simplified "variable.inc".

- Removed most dependecies on structure.module from all content related
  modules.  Thus making our modules more modular.  ;)

- Fixed calculation glitch in queue.module.

- Fixed potential function name clash/conflict in rating.module, and
  simplified some code on my way.

- Started removing all global variables $status and $rstatus.  Global
  variables are "yucky" so in near future, we will replace all global
  $status variables by a call to node_status().  Originally, $status
  was only introduced as a temporary hack and nothing is as permanent
  as a temporary hack so I took it out when still possible.

- Changed the watchdog messages a bit.
2001-06-02 22:12:35 +00:00
Dries Buytaert 5158eb8a70 - Rewrote the headline module from scratch. Note that the old
headline code is still in place 'till the new code has proven
  to be stable. See "syndication.module" for the new code.

  Changes:

   + Improved the parser and tested it against RSS 0.9, RSS 0.91,
     RSS 0.92, RSS 1.0, RDF and XML feeds.

   + Improved the administration interface.  It might be a bit fuzzy
     at first.  Maybe some native English like Julian, Michael (or any
     one else with knowledge in the field) can help out by suggesting
     better naming, terminology or descriptions - as well as by
     writing the help section for this module?  I'd have no idea how
     much this would be appreciated.

   + We can *easily* recognize new tags or extensions: we parse out
     "link", "title", "description" and "author" right now, but we
     will have to revise which tags to support and which not.  New
     tags can be added in less than 10 minutes (if you are familiar
     with the code).  Read: we have something we can build on.

   + Within each item, tags can now appear is random order which is
     or was not the case with the old headline code where we expect
     <link>s prior to <description>s for example.

   + Feed updates only (ie. always) happen through cron.  Neither do
     we use one global cron for updating all feeds; instead, every
     feed can specify his own update-interval.

   + Newly fetched headlines are "appended" to the pool of existing
     headlines (read: we don't replace the whole feed), and headlines
     automatically "expire" after x days or hours.  (Every headline
     has a timestamp.)

   + Got rid of backend.class; it is integrated in the module.

   + Switched to more generic names: "headline" became "item" and
     "backend" became "feed".  This should ease future non-headline
     oriented syndication.

   + You can associate attributes or keyword lists with every feed.
     At the moment new items will automatically inherit their feeds
     attributes but in future we can use heuristics to make these
     attributes "mutate" when and where we see fit.  The attributes
     can be maintained by hand as well.

   + We don't export any blocks yet; we will soon do as soon this
     new code has been tested for a bit more.  We will only export
     bundles though so if you want to export by feed/source, you
     will have to make a source-specific bundle.

- Polished a bit on a few other modules: nothing major.
2001-05-26 18:26:56 +00:00
Steven Wittens 27496c4620 - Changed the node_get_object() and node_get_array() functions to allow multiple conditions
- Added the "delete" hook for node-modules. When called, a module should do additional clean-up if necessary.

- Updated all node-modules
2001-05-20 16:47:50 +00:00
Dries Buytaert 14ddbc473c - Created 2 new functions:
+ path_uri(): returns the fully-qualified URI of your drupal site.
    + path_img(): returns the image directory or http://image-server.com/
                  in case you prefer to load-balance bandwidth usage.

  Replaced all occurences of the variable "site_url" with path_uri()
  and removed "site_url" from "setting.module".

- Drastically simplified the node_save() API, which should make the
  node-forms more secure.  Updated "story.module", "book.module",
  "forum.module", "page.module" and "node.module" to reflect this
  change.  This is needs more testing so hit it, beat it, tease it.

- Fixed an occasional glitch in the configuration file loading logic.

- Made "queue.module" display an informative notice when an anonymous
  user tries accessing the moderation queue.

- Updated the hard-coded information in drupal.module a bit.
2001-05-15 18:38:57 +00:00
Dries Buytaert e22f1042fc - Renamed "hostname.conf" to "setting.php" (cfr. "setting.module").
Note that - when upgrading - you have to rename all your existing
  configuration files to reflect this change:

     yourdomain.com.conf -> yourdomain.com.php

  By default, i.e. if no configuration file is found, setting.php
  will be used instead.  Using the ".php"-extension will fix most
  configuration/security issues with .htaccess-files ...

- Removed some dead code from forum.module.
2001-05-14 19:41:18 +00:00
Kjartan Mannes aeb24cf91f - Fixed a problem with $format not being defined as global. 2001-05-14 18:53:37 +00:00
Kjartan Mannes eb8ab6e932 - Fixed a problem with $format not being defined as global. 2001-05-14 18:46:35 +00:00
Dries Buytaert be8e898d23 - Uhm. Rewrote the module system: less code clutter, less run-time
overhead, and a lot better (simpler) module API.  I had to edit a
  LOT of files to get this refactored but I'm sure it was worth the
  effort.

  For module writers / maintainers:

  None of the hooks changed, so 95% of the old modules should still
  work.  You can remove some code instead as "$module = array(...)"
  just became obsolete.  Also - and let's thank God for this - the
  global variable "$repository" has been eliminated to avoid modules
  relying on, and poking in drupal's internal data structures.  Take
  a look at include/module.inc to investigate the details/changes.

- Improved design of the content modules "story", "book" and "node"
  (to aid smooth integration of permisions + moderate.module).  I'm
  still working on the permissions but I got side tracked for which
  I "Oops!".
2001-05-05 13:57:29 +00:00
Dries Buytaert 1681877761 CHANGES:
- Added moderator information to forum.module.

- Simplified story.module, page.module, forum.module and book.module
  by removing redundant code, and by doing other small house-keeping
  tasks.
2001-05-03 18:48:42 +00:00
Dries Buytaert 343e71c8eb CHANGES:
- Added moderator permissions to nodes.

- Added moderator support to structure.module.

- Added new moderate.module.

- Renamed moderation.module to queue.module to avoid confusing.
  Updated theme yaroon as it seems to have a hard-coded reference
  to moderation.module.

- Polished on:
   + account.module: improved access list
   + fixed HTML typo in node.module

ACTIONS:

- Jeroen: can jeroen2.theme be removed from ./themes/yaroon?
2001-05-02 20:52:19 +00:00
Dries Buytaert fead09a8de Welp. Large commit ahead.
CHANGES:

- Added "read" and "write" permissions into drupal but removed
  it again because - when finished after 3 hours of work - it
  was considered nothing but added complexity that didn't buy
  us anything. :I

  (I'll explain this in detail on the mailing list, I guess.)

- Added a very simple help.module to group all available
  documentation on a single page.

- Fixed bug in node_control(), book.module: UnConeD forgot to
  global $user when updating the combobox code.

- Removed static wishlist.module: in future, the wishlist can
  be maintained as a page in our collaborative book.

- Revised most of settings.module: tidied up the code and the
  descriptions to accompany the settings and introduced a new
  "default maximum number of nodes to display on the main page"
  variable.

- Revised most of comment.module: the administration interface
  looks better now, integrated node permissions, and -finally-
  made it possible to delete comments.

- Polished on:
   + account.module
   + structure.module
   + locale.module
   + module.module
   + forum.module

- Form-ified:
   + account.php
   + account.module
   + setting.module
   + cvs.module
   + submit.php
   + comment.module
   + forum.module
   + book.module
   + page.module
   + locale.module

- Updated CHANGELOG

INFO:

- Designed a "generic tracker system with optional backends"
  on paper.  The idea is to allow registered users to hot-list
  certain topics, individual nodes or threads (comments) and
  to "plug-in" output backends like - for instance - an e-mail
  digest.  The design requires "intelligent blocks" though.


TODO:

- I want to tidy up the headline.module and backend.class as
  well as merge in headlineRSS10.module.  Julian spent quite
  some time working on headline.module but I'm not sure what
  he changed and whether he'd contribute it back?
2001-04-30 17:13:08 +00:00
Dries Buytaert 828f36cdf1 - Addition: added a new, tiny forum module: I will use this forum
module to develop and test the permission system along with the
  regular nodes.  And hopefully, this forum module will grow into
  a very useable piece of code for drop.org.

  Requires a new SQL table "forum", see 2.00-to-x.xx.sql.

- Removed 1 unused hook from page.module.

- Removed 1 unused function from comment.inc.
2001-04-29 10:03:21 +00:00
Dries Buytaert cccb132c81 - Addition: added a "promote" field to the node table, which
makes "promoting nodes" to the main page possible.  Stories
  and reviews could be promoted by default, but - on accasion
  a good book entry could be manually promoted too.  Thus all
  existing content types can be shown on the main page, not
  just stories.

  Requires a SQL update, see 2.00-to-x.xx.sql!

- Addition: implemented "auto-post new submissions" feature
  to disable or by-pass the moderation queue in addition to
  "moderate new submissions".

  TODO: admin moderation versus registered user moderation.

- Addition: added category and topic support to page.module.
2001-04-21 14:19:20 +00:00
Dries Buytaert 73ad4c7658 - fixed bug in page.module: $theme->header() got called twice. 2001-04-17 21:21:37 +00:00
Dries Buytaert b1c66cb5de Another big update so please read this carefully because there is important information hidden in it.
Made it so that we can disable/enable comments on a category by category basis. In order to accomplish this I had to make a few (*temporary*) changes.

I moved all comment code from the "module level" (eg. story.module) to the "node level".  It was nothing but the logical next step in nodifying drupal.  This enables us to add comments to all existing content types including book entries.  But also for book entries, this to can be toggled on and off. :-)

Moreover module writers don't have to worry about the complex comment logic: it is "abstracted" away.  This implies that story.module got smaller, faster and easier to comprehend. :-)

In order to accomplish this, I had to update ALL THEMES, which I did - and on my way I updated Goofy, Oranzh and UnConeD - with the previous changes.  All themes are up-to-date now!  I also had to remove the [ reply to this story ] links, and temporally re-introcuded the "Add comment" button in the "Comment control".  Tempora lly that is, UnConeD. ;)

I plan to upgrade drop.org either tommorow or wednesday so test away if you have some time to kill. ;)

Oh, I also fixed a few bugs and made various small improvements.
2001-04-16 18:21:22 +00:00
Dries Buytaert b87d482b38 Last nights updates (under construction):
- added _type() hook so each module can return the content types he/she
    implements
2001-04-13 08:27:32 +00:00
Dries Buytaert 4711869f52 - fixed a small SQL bug in page.module
- slightly improved story.module, node.module and book.module
- made the "default theme" a setting from the setting page
- polished a bit on the export function: we can now export the
  book or parts thereof through the following url:

    1.  http://drop.org/export/book/
          (full book)
    2.  http://drop.org/export/book/nid
          (where nid is the node id to start with)

  The export routine demonstrates how it can be done yet the
  output is too basic and can only improve over time.
2001-04-11 19:44:24 +00:00
Dries Buytaert e46981ddb7 - small update 2001-04-07 17:04:22 +00:00
Dries Buytaert 38806b4a39 - fixed bug in common.inc: throttle()
- streamlined method invocation in node.inc
- added node_status() function to modules
- added NEW (mostly static) page module
- added NEW settings module
2001-04-07 15:02:28 +00:00