Commit Graph

105 Commits (74e7bcdf7f2a6f088fa2ef76f8425b8379a9f7c5)

Author SHA1 Message Date
Dries Buytaert 7b8a409675 - Patch #29385 by chx: no ?> add end of files. 2005-08-25 21:14:17 +00:00
Dries Buytaert f3b28d37d1 - Patch #27947 by Robert Douglas: simplified code, removed SQL query. 2005-08-10 20:52:00 +00:00
Dries Buytaert 63a10fdce8 - Bug 23810: removed redundant variable from SQL query. 2005-08-10 20:48:40 +00:00
Dries Buytaert 7625a4e91a - Patch #27737 by Gerhard: format_name($object) -> theme('username', $object).
Usernames can now be themed; eg. an icon/avatar could be added.

  TODO: update contributed modules + update the migration docs.
2005-08-01 05:14:05 +00:00
Steven Wittens e4096e1418 - #27551: Rename check_output() to check_markup(). Needs contrib updates! 2005-07-29 21:06:33 +00:00
Dries Buytaert 58aee8cdad - Patch #25603 by Stefan: made the sizes of forms consistent.
TODO: document the defaults in the PHPdoc comments.
2005-06-27 18:33:33 +00:00
Dries Buytaert 8436082fe1 - Removing some whitespace 2005-06-06 14:07:04 +00:00
Steven Wittens 1a3f0ddb86 - #23685: urlencode() profile field names and values in the URL (any dynamic data in an url should be urlencoded to prevent characters like # and & from being interpreted by the browser/server). 2005-06-01 04:29:57 +00:00
Dries Buytaert 229e2e4f23 - Bugfix: changed -> access 2005-05-12 16:20:36 +00:00
Dries Buytaert 4d80b374e9 - Modified patch #21617 by Robin: added confirmation screen to delete profile fields. (I tidied up the coding style and fixed two typos.) 2005-05-01 09:41:23 +00:00
Dries Buytaert a76a1e1f3f - Patch 20910 by chx: centralize print theme page. 2005-04-24 16:34:36 +00:00
Dries Buytaert 0fb6af111e - Fixed broken query 2005-04-21 18:49:06 +00:00
Dries Buytaert 05e9c8c76c - Patch #12737 by pyromanfo: added support for private profile fields. 2005-04-18 20:58:39 +00:00
Dries Buytaert a2e0957bbb - Modified version of patch #20115 by Nedjo: added author information block.
I rewrote part of the patch to improve the themability of the block, as
  well as its default look.  I also left out the 'Recent posts' for now and
  shuffled some code around.
2005-04-18 20:37:32 +00:00
Steven Wittens 23bccfd1c8 - #4166: Respect 'access userlist' permission for profile data. 2005-04-11 22:48:27 +00:00
Dries Buytaert a3e9b35afc - Patch #19451 by JonBob: improved consistency of module descriptions. We should write guidelines for this -- maybe in the PHPDoc code of the _help hook. 2005-04-01 15:55:02 +00:00
Steven Wittens be14203534 - #18817: Clean up plain-text checking (see drupal-devel!) 2005-03-31 09:25:33 +00:00
Steven Wittens c3f1f7345e - #18939 (Stefan): Always use paragraph tags around page help text. 2005-03-18 07:07:04 +00:00
Steven Wittens cc3fd1715f - #16271: Clean up Admin - users - configure. 2005-01-28 20:49:00 +00:00
Dries Buytaert 696ac8a9d8 - Patch #15937 by wulff: made it so that titles of profile fields only need to be unique within a single category. 2005-01-24 21:39:58 +00:00
Dries Buytaert fe58724f25 - Small bugfix + small improvement. 2005-01-04 19:52:33 +00:00
Dries Buytaert 2b17b3a966 - Patch #13907 by Neil: less ways to set the page title.
* Less logic in theme code.
   * Encourages use of the menu system.
   * Easier to find where a title or breadcrumb comes from in other people's code because there are less places to look. Look in menu and then grep for the appropriate set function. Looking for calls to theme_page() is hard because there are too many of them.
   * Very slightly more efficient.
2004-12-15 21:19:42 +00:00
Dries Buytaert 3d491defbd - Patch #14035 by Goba: fixed problem with UTF-8 conversion when mixing LOWER() and strtolower(). 2004-12-07 17:42:35 +00:00
Dries Buytaert fa97839088 - Patch 13180 by chx: renamed check_query() to db_escape_string() and implemtented it properly per database backend.
Read the manual for pg_escape_string:  "Use of this function is recommended instead of addslashes()." Or read sqlite_escape_string: "addslashes() should NOT be used to quote your strings for SQLite queries; it will lead to strange results when retrieving your data."
2004-11-21 08:25:17 +00:00
Dries Buytaert 869a91b72e - Patch #11505 by Steven: 'my account' information is not saved.
+ Drupal 4.4 stored profile data in the serialized user->data column. Drupal 4.5 stores profile data in tables (but user->data is still available and used for other stuff, like locale or themes).  The update from 4.4 to 4.5 didn't remove the old data from the user->data column properly, because there is no mechanism in user_save to do so (it did try to unset the fields, but this has no effect).

  + On registration, hook_user('insert') is invoked after saving the data column. This means that any module-specific data is put into the data field. We cannot move hook_user('insert') higher up, because before that point, we do not have a complete $user object yet.
2004-10-16 16:59:59 +00:00
Steven Wittens aaa214e4a8 #6595: Unifying profile.module textbox widths with user.module. 2004-10-13 20:35:46 +00:00
Steven Wittens c6281c464c Profile.module: removing incorrect use of strtolower which messes up UTF-8 data. 2004-09-20 23:42:11 +00:00
Dries Buytaert 2b9aaf7159 - Bugfix: making changes to the user profiles should flush the cache. 2004-09-19 13:33:08 +00:00
Dries Buytaert 6dbd0bcfb4 - Patch #6500 by Mathias with help from Steven: made it possible to add fields to the registration form. This feature used to exist. 2004-09-19 13:28:11 +00:00
Dries Buytaert 5c7983c4de - Patch #8179 by JonBob: reintroduced menu caching. 2004-09-16 07:17:56 +00:00
Dries Buytaert 94e30bf776 - Patch by JonBob: for consistency and readability, add brief descriptions of each source file inside the @file comment block at the head of the file. This helps with Doxygen indexing, and also allows neophytes to see what a file does immediately on opening the source, regardless of the organization of the hooks. 2004-08-21 06:42:38 +00:00
Dries Buytaert fa25c7a0ca - Code improvements by Stefan: use capital letters for header titles (and added some missing t() functions). 2004-08-19 15:41:57 +00:00
Dries Buytaert 83a739bd89 - Code improvements by Stefan: made all status messages consistent (and easier to translate). 2004-08-18 19:57:27 +00:00
Steven Wittens 6a380525d4 #10012 - Profile.module:
- Restoring broken update path.
- Adding birthday/date function back, with update path.
- Show private fields when viewing your own profile, or for admins.
- Do not allow browsing of private fields for non admins (403)
- Throw a 404 for browsing unbrowsable fields, rather than an SQL error
- Fixing input processing: nothing is filtered twice anymore, and I replaced several strip_tags with specialchars (more flexible).
- Minor admin UI tweaks + added friendly field type names.
2004-08-14 11:54:31 +00:00
Dries Buytaert d4a8bd5877 - Modified patch #9924 by njivi: added a basic member list to the profile module. (If this deprecates the memberlist module, it ought to be deprecated.)
I removed the permission njivi introduced and made the page title match the link title.
2004-08-12 22:03:31 +00:00
Dries Buytaert 4cad8d5c31 - Patch #9865 by njivy: avoid mangling %'s in the profile SQL query. 2004-08-09 05:40:16 +00:00
Dries Buytaert 90581e7349 - Patch #9866 by njivy: when the links are generated for each item in a list-type profile field, double quotes in the item name can break the link. To fix this, this patch gives drupal_specialchars() the ENT_QUOTES parameter to convert quotes into HTML entities. This fix is also applied to selection-type profile fields which can have the same problem. 2004-08-08 16:19:32 +00:00
Dries Buytaert 702a057683 - Patch #9478 by JonBob: allow printf-style arguments in pager_query.
Currently pager_query() is the black sheep of the database query family, because it does not allow for printf-style arguments to be inserted in the query. This is a problem because it introduces developer confusion when moving from an unpaged query to a paged one, and it encourages substitution of variables directly into the query, which can bypass our check_query() security feature.

  This patch adds this ability to pager_query(). The change is backwards-compatible, but a couple calls to the function in core have been changed to use the new capability.
2004-07-25 14:25:42 +00:00
Dries Buytaert ac5b5616c0 - More tab-improvements by JonBob: improved support for the default tabs! 2004-07-10 15:51:48 +00:00
Dries Buytaert bf42dddea7 - Usability improvement: users can also separate 'list items' (i.e. favorite
movies) using a comma.  Only few users actually read the form description,
  it seems ...
2004-07-08 15:17:21 +00:00
Dries Buytaert fe2b3e7c00 - 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').
2004-07-04 16:50:02 +00:00
Steven Wittens 72155f8bbf Using drupal_specialchars() instead of htmlentities(). htmlentities() is not UTF-8 safe. 2004-06-27 22:09:12 +00:00
Dries Buytaert 1b1c47025a I refactored quite a bit of the user.module:
$ 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.
2004-06-27 19:10:52 +00:00
Dries Buytaert fa2be0b8f0 - Fixed administration pages being broken due to tabs changes, improved form
handling and form descriptions and fixed an incorrect title.
2004-06-22 20:33:12 +00:00
Dries Buytaert 54b77d6435 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').
2004-06-18 15:04:37 +00:00
Dries Buytaert fbbf510511 - Patch #8105 by mathias: made the menu system aware of path aliases. 2004-06-01 21:58:46 +00:00
Dries Buytaert 7f08110a5e - 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().
2004-05-31 09:40:56 +00:00
Dries Buytaert 8c75cda0b1 - Added some error checking to the profile module. 2004-05-28 20:02:11 +00:00
Dries Buytaert 0e6221a192 - Patch #7585 by Gerhard: extra data added by profile.module to the user
object got saved in the user's data column even if there is a dedicated
  table for that information.
2004-05-05 21:17:25 +00:00
Kjartan Mannes dfd66f998d - Fixed sitewide timezone settings not being saved.
- Making sure profile fields are saved properly.
2004-04-29 23:27:15 +00:00