DotNetNuke Daily Tip #11 7/20/06 Upgrade to DNN 4.3.3!
This will be the last DNN Daily Tip for the week. I'm headed to Denver tomorrow for a race this weekend and meetings with a client on Monday, so I'll likely not post again until I return.
What's today's tip? It's a special one ;) Upgrade to the latest version of DotNetNuke, 4.3.3/3.3.3! The 4.3.3 package dropped late yesterday afternoon and DotNetNuke.com was upgraded to this "final release" early this morning. What is the 3.3.3 release? It's basically the same release as 4.3.3 but for the .Net 1.1 Framework, 4.3.3 is for the 2.0 platform.
Some of the items that the 4.3.3/3.3.3 release include. If you're not running on the 2.0 framework yet, I'd highly recommend looking into it. I've started moving all of my sites over from 1.1 to 2.0 with the latest few releases of DNN.
Membership Management
CAPTCHA
- add the ability to display a small image with embedded
text which bots can not read. Prevents brute force
dictionary login attacks.
Login Redirect
- after login there is now a way to redirect a user to a
specific page
Password Generation -
the ability for an admin to automatically generate a secure
password for a user on account creation
HttpContext
- eliminate dependence on HttpContext
Public Registration
- the system sends an email to the user on public
registration ( to prevent cases where another user registers
with their email address )
Profile Change Notification - when any profile attribute is changed, the owner of the
account is notified ( using the original email address ).
This is to alert people in the event that an unauthorized
user has gained access to their account and made changes to
their profile ( password, email ).
User Account Creation Notification - when an admin creates a user account they have an option
to send the account details to the user
Force Profile Update
- ability to force a user to update their user profile
Force Password Change
- ability to force a user to change their password
Password Complexity
- added the ability to define some passord complexity
requirements ( ie. mixed upper/lower case, numeric and
alpha-numeric, etc... )
Display Name Field
- the membership schema stores the DisplayName of the user
for demographic purposes - this item is critical for
international users where their name is not represented as
"FirstName LastName". Modules should link to the DisplayName
for audit purposes rather than using FirstName and
LastName.
Preserve Login Parameters -
when a user is directed to the login screen, the system
retains the original url ( with parameters ) so that it can
redirect back after successful login ( especially useful in
nested module UIs like Forum )
Logout Behavior
- after logging out, the user remains on the same page
rather than being redirected to the home page ( the only
reason they are being redirected now is because they may no
longer have access to the page because of roles - but this
is largely unnecessary and is handled other ways ).
Automated Verified Registration URL
- the email sent to user when using he Verified Registration
process now contains a URL which a user can click to very
quickly validate their account
User Lockout Notification
- enhance the user lockout ( 3 unsuccessful logins ) to send
an email to the admin to notify them of the event
Role Management
Effective Date - effective date is used to
specify when a role becomes active ( we already had
ExpiryDate which specifies when role access terminates )
RSVP code
- this is a code which can be assigned to a role which would
allow a user to obtain access to thge role if they entered
the RSVP value. A use case would be an administrator working
with a group of users could send them an RSVP code which
they could then enter on the site to get instant access,
rather than the admin having to assign the users to roles
manually
Avatar field - the
administrator should be able to associate an avatar to a
role.
Role Groups - administration
mechanism to group roles within the same portal to provide a
faster, easier way to manage/assign them. This affects the
Role Management, User Role management, and Permissions
grids.
Manage User Roles - once a site
has more than 1000 users the user combobox, displayed when
you access Manage User Roles from the Roles UI, contains too
much data and sometimes times out. As a result there is no
easy way to see the users who are assigned to a role ( the
bottom portion of the UI ).
Profile Management
Module Profile Properties
- Modules can add profile properties for module-specific
information.
Portal Properties - the
Profile Properties are defined at the Portal level (not the
host level)
Dynamic Definition - the
Portal level properties are managed by the Portal
Administrator
Searchable - Profile
Properties are Searchable (ie we should be able to do Find
Users By City or Find Users with Green Eyes)
Public/Private Data
- the User have the ability to specify which profile items
are public vs. private.
File Management
Storage Location
- new Folder level specification to identify whether files
should be stored on the file system ( unsecure ), file
system ( secure ), or database ( secure ).
File Manager
- refactored to use the database as the source for
file/folder information rather than the physical file
system. Improved user interface to accomodate new Storage
Location options as well as provide Synchronization at the
folder level.
File/Folder Association
- added referential integrity between the Files and Folders
table
File Server - HTTP Handler for
serving files regardless of Storage Location. Takes
advantage of Folder permissions to ensure secure access to
files.
URLControl - leverage folder
permissions and storage location in file selection and
upload options.
Usability
Copy Content - in Add Page, a new option
which allows an admin to select a page and the granularly
select the modules to copy as well as whether to make a New,
Copy, or Reference.
Page Template -
template which defines a default set of modules to insert
into the page when the page is added. The template is based
on a portal template fragment and is currently defined at
the host level. The default template provided contains a
single HTML/Text module which helps address the usability
issue of new portal administrators who do not understand
that you need to add modules to your page once it is
created.
Host Space - increased host
space capacity from 999.
Module Title Editing - enabled AJAX-style editing of the Module Title by
default
ClientAPI - fixes and
enhancements to ClientAPI javascript library as well as
navigation controls ( ie. treeview, SolPartMenu, DNNMenu
)
Navigation Provider - fixes and
enhancements to Navigation provider library
AJAX
- fixes and enhancements to DNN AJAX library
URL Rewriter - adjusted logic so that full URL can be used in rewriter
rules. There is also a new editor in the Host Settings to
manage the URL Rewriter rules.
Rich Text Editor
- added support for URLControl in hyperlink popup so that a
user can select from a file, page, or external URL. Also
added Insert Smiley option.
Newsletter - added ability to enter From: address.
Framework
AccessDeniedURL
- for modules which need to restrict access based on portal
permissions, a new property has been added to
PortalModuleBase to deal with the business rules of
unauthorized users.
Module Actions -
Moved ModuleActions from Container to PortalModuleBase for
proper encapsulation of ModuleAction collection ( no longer
dependent on the existence of an Actions skin object ).
Allow custom module actions to be created as sub-items below
the root.
Permissions Grids -
refactored to handle viewstate properly, allow extensibility
for custom permission types, and eliminate errors related to
rolenames containing embedded colons.
Data Access
Generic Methods - new generic data access
methods as part of core DataProvider. The purpose is to
simplify DAL development for modules where a full Data
Provider is not necessary. Detailed tutorial provides
information on how they can be leveraged.
Performance
Module Settings
- both module settings and tab module settings are now
cached for performance benefit.
Module Definitions/Installer
Version - display the module version in the default Module
Definitions view
Interfaces - display
module interface settings in the Edit Module Definitions UI
and ensure the SupportedFeatures bits are set properly when
updating
PA Packager - when using
the Include Source option, the PA packager will now follow
the DNN core naming convention and use *_source.zip as part
of the filename for the source resource file.
Module Definitions
- you now now install a module directly from a *.dnn
manifest file without having to upload the ZIP
Module Packager
- Added to DNN 4 for Dynamic modules
Module Installer
- now automatically adds codeSubDirectory to web.config in
DNN4 for C# module and granular assemblies
Module Cleanup
- allows a ##.##.##.txt file to be included for removing
deprecated/legacy files on upgrade of a module
Module Templates
- Updated module templates for 2.0 framework development
E-Commerce
Subscriptions - new portal settings to
manage PayPalIPN behavior.
Text Banner - added support
for a "display url" for text banners ( via the ImageURL
property ). Also optimized the FindBanners stored procedure
to exclude expired banners.
Design
HTML Skins
- skins created as HTML files can now include a section. The
skin parsing engine will parse the content within the BODY
tag when creating the ASCX skin file.
Other
SMTP Settings - added ability to use port number
Core Modules
- New Versions of most core modules are included with
release.
New Modules - Store, Forums,
Blogs, Gallery included with the release.
New DNN4 Module Example - Reports Module, includes a working 2.0 code as an example
of module development under the .Net 2.0 framework.
Stay tuned for another DotNetNuke Daily Tip coming next week!