1. 14 Aug, 2004 1 commit
  2. 12 Aug, 2004 1 commit
    • Dries's avatar
      · 0f088b79
      Dries authored
      - Patch #9983 by Stefan: various code style improvements.
      0f088b79
  3. 10 Aug, 2004 3 commits
    • Dries's avatar
      · 4a35c8aa
      Dries authored
      - Patch #8155 by JonBob: removed legacy _system() hook.
      4a35c8aa
    • 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
  4. 06 Aug, 2004 1 commit
  5. 04 Aug, 2004 1 commit
    • Dries's avatar
      · c71bfded
      Dries authored
      - Patch #9657: more intelligent theme() function.  Hopefully, Adrian will be
        able to use this patch too.
      c71bfded
  6. 31 Jul, 2004 1 commit
    • Dries's avatar
      · 9945bca5
      Dries authored
      - Patch #9650 by Adrian: this change introduces a module_load function, which maintains a list of modules that have already been loaded in a static array, and will not load another module of the same name, or if the file does not exist.
      
      Modules can be stored anywhere, as there is now a set of functions called module_get_filename, and module_set_filename .. which allow system_listing and module_list to specify the locations of the files.
      
      A new function module_load_all() replaces the hardcoded includes in module_init, and loads all modules which have been enabled, using module_load.
      
      module_listing no longer includes files itself, instead it just keeps the listing (and sets the filenames).
      
      This patch is a requirement for the multisite configuration patch, as overriding modules are currently being loaded due to the only protection of loading them is include_once.
      9945bca5
  7. 22 Jul, 2004 1 commit
    • Steven Wittens's avatar
      System.module improvements: · b2882bf2
      Steven Wittens authored
      - #8193: Moving the two instances of the timezone list into a function.
      - #3859: Adding drupal_goto for module/theme/settings pages. Aside from general drupal_goto usability, this fixes the bug of menu items not immediately appearing after enabling a module.
      b2882bf2
  8. 09 Jul, 2004 1 commit
  9. 08 Jul, 2004 2 commits
    • Dries's avatar
      · a0671877
      Dries authored
      - Patch #8509 by Killes and Steven: added support for sending compressed
        pages.  Useful to reduce your site's bandwidth.
      a0671877
    • Dries's avatar
      - Fixed braino. Reported by Steven. · 64b12b4a
      Dries authored
      64b12b4a
  10. 07 Jul, 2004 3 commits
    • Dries's avatar
      · d3904c05
      Dries authored
      - Usability improvements: reworked/simplified the timezone/date settings a
        little and made the form groups use consistent titles.
      d3904c05
    • Dries's avatar
      · 6a43d01e
      Dries authored
      - Usability: improved the error reporting of the file system settings on the
        'home » administer » settings" page.
      6a43d01e
    • Dries's avatar
  11. 04 Jul, 2004 1 commit
    • 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
  12. 27 Jun, 2004 1 commit
    • Dries's avatar
      I refactored quite a bit of the user.module: · 1b1c4702
      Dries authored
      $ diffstat user.patch
      database/database.mysql |    4
      database/database.pgsql |    2
      database/updates.inc    |   10 -
      modules/block.module    |   20 +-
      modules/locale.module   |    9
      modules/profile.module  |  108 +++++++----
      modules/system.module   |    8
      modules/user.module     |  456 +++++++++++++++++++-----------------------------
      8 files changed, 289 insertions(+), 328 deletions(-)
      
      More functionality, less code.  Here is a list of the changes:
      
      - Some user API changes:
         + When $type is 'form', you have to return an associative array of groups.  In turn, each group is an array with a 'title', 'data' and 'weight'.
         + A new $type has been added, namely 'categories'.  User settings can be organized in categories.  Categories can be sorted, as can the groups within a category.  (Ordering 'categories' is somewhat broken due to a bug in the menu system.)
      
      - The 'my account > edit' page will use subtabs for each 'category'.  Read: you can break down the account settings into multiple subpages.
      
      - Profile module improvements:
         + Added support for private fields to the profile module!
         + Improved workflow of profile administration pages.
         + Improved the form descriptions.
      
      - Code improvements:
         + Unified user_edit() and user_admin_edit().
         + Unified and cleaned up the validation code.  Fixed some validation glitches too.
      1b1c4702
  13. 20 Jun, 2004 2 commits
  14. 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
  15. 01 May, 2004 1 commit
    • Dries's avatar
      · 7332215a
      Dries authored
      - Patch #7483 by Gerhard: system_user should not return $edit.
      7332215a
  16. 29 Apr, 2004 1 commit
  17. 27 Apr, 2004 1 commit
  18. 21 Apr, 2004 1 commit
    • 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
  19. 21 Mar, 2004 1 commit
    • Dries's avatar
      - More profile module improvements: · 754f2ac2
      Dries authored
        + Updated the _user() hook's "$type == 'view'" case to match the
           "$type == 'edit'" case.  That is, both have to return an associtive
           array of the format array('category' => 'fields').
      
         + Updated the profile pages to group fields by category.  Made possible
           thanks to the above change.
      
         + Moved logic out of the theme_ functions.
      754f2ac2
  20. 20 Mar, 2004 1 commit
  21. 11 Mar, 2004 1 commit
    • Dries's avatar
      · 2101f6c4
      Dries authored
      - Rewrote the profile module:
      
         + Added a 'created' field to the users table and renamed the 'timestamp'
           fied to 'changed' (cfr. node table).  Update.php will try to determine
           a 'created' timestamp for existing users.
      
         + The profile module no longer uses serialized data but has its own set
           of tables.  Known existing profile data is migrated by these new tables.
             TODO: migrate the birthday field.
      
         + The profile fields can be grouped, and within each group, profile fields
           can be sorted using weights.
      
         + The profile pages can be themed.
      
         + The profiles can be browsed based on certain properties/settings.
      
         + Change the _user hook: (i) 'private_view' and 'public_view' are merged
           into 'view' as there are no private fields and (ii) 'edit_form' has
           been renamed to 'edit'.
      
         + Avatar handling has been refactored and is now part of the user module.
           The users table has a dedicted 'picture' field.
      
         + Simplified the way themes should use display/visualize pictures or
           avatars.
      
         + Made it possible for administrators to replace or delete avatars.
      
         + ...
      
        I hope this make for a good base to build on collectively.
      2101f6c4
  22. 01 Mar, 2004 1 commit
    • Dries's avatar
      · 0f980c24
      Dries authored
      - Removed broken throttle.
      0f980c24
  23. 19 Feb, 2004 1 commit
  24. 15 Feb, 2004 1 commit
    • Dries's avatar
      · 4b0b2d02
      Dries authored
      - Patch by Steven: removed redundant permission checks.  These are no longer
        required thanks to the new 404 handling.
      4b0b2d02
  25. 10 Feb, 2004 1 commit
  26. 08 Feb, 2004 1 commit
  27. 07 Feb, 2004 2 commits
    • Dries's avatar
      · e28bbf67
      Dries authored
      - Batch two with profile module improvements:
         + Reworked the 'account administration' page.
         + Fixed bug in the 'edit account' page.
         + Removed some dead code from the system.module.
      e28bbf67
    • Dries's avatar
      - First batch of profile module improvements: · 5a8129e0
      Dries authored
         + Tidied up the profile configuration page: grouped form elements.
      
         + Tidied up the block configuration settings: removed hard-coded
           table.
      
         + Changed the profile API to return the preferred group name, and
           changed the user module to group settings.  Modules implementing
           the _user hook will need to be udpated.
      
         + Removed register_form and register_validate for now.
      5a8129e0
  28. 23 Jan, 2004 1 commit
    • Dries's avatar
      · b85eb11e
      Dries authored
      Patch 5287 by Stefan: multiline help texts should become inside a single $output.
      b85eb11e
  29. 19 Jan, 2004 1 commit
    • Dries's avatar
      · 652fb347
      Dries authored
      - Removed instances of the 'throttle_enable' variable.
      652fb347
  30. 11 Jan, 2004 1 commit
  31. 05 Jan, 2004 1 commit
    • Steven Wittens's avatar
      Committed filter separation patch: all filter-related things are now in... · c2151b52
      Steven Wittens authored
      Committed filter separation patch: all filter-related things are now in filter.module (which is a required module).
      To do this cleanly, I reorganised some bits of system.module: there is now a generic handler available for simple variable-get/set based configuration pages. Look at filter_admin() or system_view() for example usage.
      
      (based on the patch by Goba)
      c2151b52
  32. 29 Dec, 2003 2 commits