1. 10 Aug, 2004 2 commits
    • Steven Wittens's avatar
      The Input formats - filter patch has landed. I still need to make update... · 660f9928
      Steven Wittens authored
      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.
      660f9928
    • Steven Wittens's avatar
      #7646 and more: · 88221c2f
      Steven Wittens authored
      - 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.
      88221c2f
  2. 06 Aug, 2004 2 commits
  3. 04 Aug, 2004 1 commit
    • Dries's avatar
      · a52cf829
      Dries authored
      - Patch #7458 by killes: conditionally include xmlrpc.inc.
      a52cf829
  4. 29 Jul, 2004 1 commit
    • Steven Wittens's avatar
      Fixing a rather nasty bug with page cache: · 6c73823b
      Steven Wittens authored
      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*
      6c73823b
  5. 22 Jul, 2004 1 commit
  6. 21 Jul, 2004 1 commit
  7. 13 Jul, 2004 1 commit
    • Dries's avatar
      · 50d78e98
      Dries authored
      - Patch #9238 by JonBob: added code and Doxygen comments to common.inc and
        bootstrap.inc.
      50d78e98
  8. 12 Jul, 2004 2 commits
  9. 11 Jul, 2004 1 commit
    • Dries's avatar
      · 323d9fe0
      Dries authored
      - Call 'exit' hook when drupal_goto() is called.  Also necessary for the
        devel.module.
      323d9fe0
  10. 08 Jul, 2004 1 commit
    • Dries's avatar
      · 02ae1ce6
      Dries authored
      - Many form_ functions called theme('form_element') with the wrong parameters!
      
      - Fixed order of parameters in form_checkboxes() (plural).
      02ae1ce6
  11. 04 Jul, 2004 2 commits
    • Dries's avatar
      · fe2b3e7c
      Dries authored
      - 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').
      fe2b3e7c
    • Dries's avatar
      f3aa8712
  12. 02 Jul, 2004 1 commit
    • Dries's avatar
      · 9986cb36
      Dries authored
      - 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).
      9986cb36
  13. 28 Jun, 2004 1 commit
  14. 21 Jun, 2004 2 commits
  15. 18 Jun, 2004 1 commit
    • Dries's avatar
      · 54b77d64
      Dries authored
      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').
      54b77d64
  16. 04 Jun, 2004 1 commit
  17. 02 Jun, 2004 2 commits
  18. 01 Jun, 2004 1 commit
  19. 31 May, 2004 1 commit
    • Dries's avatar
      · 7f08110a
      Dries authored
      - 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().
      7f08110a
  20. 28 May, 2004 1 commit
  21. 24 May, 2004 1 commit
  22. 22 May, 2004 1 commit
  23. 18 May, 2004 1 commit
    • Dries's avatar
      · 10c5e95a
      Dries authored
      - Made it possible for anonymous users to leave their name, e-mail address
        and the URL of their homepage.  Patch by Pablo.
      10c5e95a
  24. 15 May, 2004 1 commit
    • Dries's avatar
      · fed7e664
      Dries authored
      - Patch #6682 by jhriggs: added form_checkboxes(), much like form_radios()
        and updated some modules to take advantage of it.
      fed7e664
  25. 05 May, 2004 1 commit
  26. 03 May, 2004 1 commit
  27. 27 Apr, 2004 1 commit
  28. 26 Apr, 2004 1 commit
  29. 24 Apr, 2004 2 commits
  30. 21 Apr, 2004 2 commits
    • Dries's avatar
    • Dries's avatar
      · 7231c88a
      Dries authored
      - Added support for 403 handling.  Patch by JonBob.  As a side benefit,
        administrators will be able to define a custom 403 page, just as they
        can define 404 pages now.
      
        This needs to be documented in the "Changes since / migrating to ..."
        pages.
      7231c88a
  31. 15 Apr, 2004 1 commit
  32. 12 Apr, 2004 1 commit
    • Dries's avatar
      · be230467
      Dries authored
      - Patch #6947 by Ax: fixed a Doxygen warning, fixed some uninitialized varables.
      
        (I'm back from vacation.)
      be230467