In 4.5.3, one of the primary goals was to minimize post backs. This goal was across the entire module, from end users to moderators and module administrators. For moderators and module administrators, finding areas to enhance via Ajax was pretty easy, all we had to do was look at where those users spend a large portion of their time within the module. However, for typical end users the areas a developer can expose an Ajax experience quickly is very limited because of the nature of forums and SEO.
If you are using a forum in a site like this one, you want all of your publicly available pages to be indexed by the search engines so the search engine users can find your site and content. For this to be possible, the search engine bots must be able to read links that take them to a new page they can crawl and index the content on this page (ie. a URL is available with parameters that, when clicked, navigates the user to the desired view with the content they are expecting). Because of this, and many other reasons, we decided against moving any of the standard forum views (ie. groups, forums, threads, posts) to an Ajax experience which really only left a minimal number of options for end users. Well, one of those options is the "My Settings" area which I will outline below.
Overview:
When users click the "My Settings" link at the top of the forum they are now navigated to the User Control Panel. The control panel is a DHTML menu that is grouped into 3 sections. The number of sub-items that each of the 3 sections contain varies depended on the forum's configuration. Each sub-section has a link that, when clicked, will load a different control to the right hand side of the DHTML menu and will also set an 'arrow' image so the end user knows which one they are currently view.
Notifications:
Email notifications work (to end users) exactly as they did before. Users can subscribe to threads and forums. When first viewing the notification area the user is presented with a list of forums they are subscribed to. Unlike before, which used a treeview control to render each forum available to the user, users only see the forums they are currently subscribed to from here. If users want to subscribe to a particular forum, they simply navigate to the one they wish to subscribe to (ie. view threads of it) and click the checkbox at the bottom right (this was an option in all previous versions of the module as well). If they want to unsubscribe, they simply navigate to this view and check those forums they wish to unsubscribe from and then click the "Remove Selected Forums". Also worth noting, different than before, is that you see the details about the forum you are viewing just as if you were viewing a list of forums. You can navigate to the last post as well as the forum itself.
Next to the word "Forums" at the top, you will see a tab-like interface that also has a "Threads" link. When clicked, this will list all threads the user has subscribed to. Similar to the subscribed forums, users can unsubscribe from this view or they can visit the thread and unsubscribe just like before. If they wish to subscribe, it is done exaclty as it was before (by visiting a particular thread and clicking the checkbox on the bottom right). Not much has really changed for this part, there is just now a single point where a user can view all threads they are subsribed to.
Bookmarks:
Bookmarks are a new feature. Bookmarks allow site users to bookmark a threads so they can easily find their favorite threads within all forums. Users can bookmark a thread by visiting a thread and clicking the bookmark icon located to the left of the post rating drop down list (upper left of the module). If users wish to remove a thread from their list of bookmarked threads, they can either navigate to the thread and click the bookmark icon or they can do so from the bookmark interface shown in the image above just like they unsubscribe from forums or threads for notifications. Personally, I like to use bookmarks to track threads that I may be subscribed to at the forum level.
Settings:
Settings were available to users in all previous versions of the module. The only thing really new in this area, besides how it is accessed, is the "Enable My Post Notify" option. This is used to avoid receiving email notifications of your own posts (when unchecked).
Profile:
Similar to Settings, the majority of the profile section was available in previous versions of the module via "My Settings". What has changed is how it is broken down now (into various sub-sections) and also what is available to the end user. The "Edit Profile" sub-section no longer contains the information such as ICQ, MSN, etc and instead will offload profile properties to the core. This was done because we have been seeing the usage of many third party profile modules/providers. In the future, we hope to have tighter integration with these type of modules by utilizing the abstract profile provider methods of the core as well as looking at ways to create an API for such a thing (think of viewing a user's profile in a completely different module, but being integrated with the forum).Under the profile section, users can also edit their signature or manage their avatars (if available).
Well, thats the new user control panel. In the next few days I will cover the new moderator control panel, which looks and functions very similar to the user control panel.