Introduction
DotNetNuke is an excellent portal framework built with ASP.NET. We are currently using it to build a content management system for our corporate intranet. One of the nice things about DNN is that it is modularized - you can create custom modules that are easily integrated and moved around within the framework. They can also be distributed to other web sites based on the DNN framework.
Why a tool?
Creating a new module is fairly simple, but it does take some work in regards to developer and admin time. A sample module was distributed with the documentation. Creating a new module is based largely on cutting and pasting the module info from this document, tweaking it to include the name of your new module class, tying it in the edit module, creating a separate mobile module, building and then registering everything on the website itself. It is a tedious process, and just getting the "basic shell" setup can take up otherwise valuable developer and admin time.
CreateModuleTemplate
This tool, which is itself a DNN module, will assist the developers by creating the:
- Module ascx and vb
- EditModule ascx and vb
- MobileModule ascx and vb
- Registering the module with DNN
All in one quick easy step. The picture above will give you a basic clue how this looks and works. The main page was based off of DNN's own Module Properties page, but has been greatly enhanced with JavaScript to automate the process.
Customizable
The module is also easily customized. You can choose which modules will (or will not) be created by default simply by using checkboxes. The templates themselves are based on text files, which can be customized online using CreateModuleTemplate
, or by hand using your favorite editor. This allows you create module templates with your own tweaks built in.
Try it out
The download above contains the full code, and complete, detailed documentation on how the process works, including lots of images. But honestly, the process is so easy, you won't need it :)
Email-ware
If you do use CreateModuleTemplate
- do me favor, and drop me an email to let me know how you like it, and if it is working for you. All the info is in the download. If you have any suggestions or enhancements (or bug fixes) please let me know so I can update the code.
DNN 2.0
DNN 2.0 beta1 was released on Feb 14, 2004. I have created a new version of CreateModuleTemplate
that works with DNN2b1. Please make sure that you download the correct version of CMT for your DNN portal. Please note that this version is extremely new, and hasn't been extensively tested, nor does it take advantage of all the features available in DNN2b1. What it will do is create the module templates and register them in the most generic way possible for quick and smooth addition. The "icon" feature has been removed in this version (no icon is assigned by default), and the "version" field has been added, but no JavaScript is hooked up to that yet. Note that the docs are the same ones from v1, as nothing has functionally changed.
Warning: Since this is beta code running on a beta framework, I'd strongly suggest that it not be used in a production environment. As new changes appear in DNN2, this code may cease to function. Use at your own risk.