Skip to content
  1. Feb 25, 2011
  2. Nov 15, 2006
  3. Apr 26, 2006
  4. Apr 11, 2006
  5. Mar 30, 2006
  6. Feb 21, 2006
  7. Feb 15, 2006
  8. Feb 14, 2006
  9. Jan 30, 2006
  10. Jan 12, 2006
  11. Jan 10, 2006
  12. Dec 31, 2005
  13. Dec 16, 2005
  14. Dec 03, 2005
  15. Nov 30, 2005
  16. Nov 09, 2005
  17. Nov 04, 2005
  18. Nov 01, 2005
  19. Oct 25, 2005
  20. Oct 21, 2005
  21. Oct 11, 2005
  22. Oct 07, 2005
  23. Sep 19, 2005
  24. Sep 02, 2005
  25. Aug 30, 2005
    • Dries Buytaert's avatar
      - Patch #7582 by Gerhard: improved node revisions! · d9d6a6e0
      Dries Buytaert authored
      All node revisions were stored in a serialized field in the node table and retrieved for _each_ page view although they are rarely needed. We created a separate revisions table which would be in principle identical to the node table, only that it could have several old copies of the same node.  This also allows us to revision-related information, and to provide log entries to non-book pages when a new revision is being created.
      
      TODO:
      
      1. Provide upgrade instructions for node module maintainers!
      2. Upgrade modules that implement node types.
      3. Provide an upgarde path for revisions.  Dependency on the upgrade system.
      d9d6a6e0
  26. Aug 28, 2005
    • Dries Buytaert's avatar
      - Patch #29785 by Chx: multiple node types were broken so we refactored · c9fc300b
      Dries Buytaert authored
        part of the node system!  If you have a module that implements node
        types, you'll have to udpate its CVS HEAD version.
      
        We replaced _node_name() and _node_types() by _node().  The new _node()
        hook let's you define one or more node types, including their names.
        The implementation of the _node() hook needs to:
      
         return array($type1 => array('name' => $name1, 'base' => $base1),
                      $type2 => array('name' => $name2, 'base' => $base2));
      
        where $type is the node type, $name is the human readable name of the type
        and $base is used instead of <hook> for <hook>_load, <hook>_view, etc.
      
        For example, the story module's node hook looks like this:
      
          function story_node() {
            return array('story' => array('name' => t('story'), 'base' => 'story'));
          }
      
        The page module's node hook module like:
      
          function page_node() {
            return array('page' => array('name' => t('page'), 'base' => 'page'));
          }
      
        However, more complex node modules like the project module and the
        flexinode module can use the 'base' parameter to specify a different base.
      
        The project module implements two node types, proejcts and issues, so it
        can do:
      
          function project_node() {
            return array(
             array('project_project' => array('name' => t('project'), 'base' => 'project'),
             array('project_issue' => array('name' => t('issue'), 'base' => 'project_issue'));
          }
      
        In the flexinode module's case there can only one base ...
      
        This hook will simplify the CCK, and will make it easy (or easier) to merge
        the story and page module.
      
        In addition, node_list() became node_get_types().  In addition, we created
        the following functions: node_get_name($type) and node_get_base($type).
      c9fc300b
  27. Aug 25, 2005
  28. Aug 22, 2005
  29. Aug 07, 2005
  30. Aug 02, 2005
  31. Jul 19, 2005
  32. Jul 17, 2005
  33. Jul 13, 2005