Page 1 2 3
PART 1
Ever wanted a spell checker for the WYSIWYG editor in DotNetNuke 3.x? Well it’s possible to do and I’m going to show you how step by step.
I’m going to class the process of integrating a spell checker as intermediate in the required skill. This is mainly due to fact we’ll need to modify and compile the HtmlProvider implementation. Nothing too complex but will require you to have Visual Studio, 30 minutes and you’ll have a spell checker in DotNetNuke.
Background
Before we begin I think it’s useful to stop and think about a couple of things.
- A spell check is a different type of application to a regular web app, it will need both server side and client side scripting in order to work. We’ll use JavaScript to make it all happen.
- Whenever we develop anything we should always do this on our development environment and make backups of the original files. Then after testing on the development environment we can deploy in the live environment.
I can only get the spell checker to work in Internet Explorer at the moment, I’m sure that it can work in FireFox just a JavaScript issue stops it at the moment. If anyone knows the fixes free feel to contact me. I have now got a fix so that this will work in a FireFox browser as well as Internet Explorer.
- The spell checker will only work in full trust mode, if your site is running in medium trust you won’t be able to get it to work. The reason is that the NetSpell assembly is strong named and it’s not annotated with AllowPartiallyTrustedCallersAttribute. To read more about this I suggest this excellent article from Microsoft.
Getting Started
First make sure you have a working development install of DotNetNuke 3.x you need to have the source code version. I’m going to use 3.2.x in this tutorial however I’ll tested it with other 3.x versions and they work the same.
Next let’s take a backup of a couple of files. I’m going to create a folder called “pre netspell backup”. Into this folder I’m going to copy the following files from my DotNetNuke install.
- Web.config
- Bin\DotNetNuke.Ftb3HtmlEditorProvider.dll
- Providers\HtmlEditorProviders\*.*
Now we have backup of these files we can start making the changes we need safe in the knowledge we have a get “out of jail for free” card.
The spell checker engine we are going to use is the excellent Net Spell by Paul Welter, it’s released under the BSD license. Download the latest version, at the time of writing the latest version is 2.1.7.
Unzip NetSpell to a folder called NetSpell somewhere on your local machine, don’t unzip the contents in the DotNetNuke folder.
There are a couple of files we need to copy from the NetSpell folder to our DotNetNuke install. I’ll explain what each file does as we copy them.
First copy the file NetSpell.SpellChecker.dll from the bin folder into the bin folder of DNN. This is the compiled assembly that contains all the business logic to do the actual spell checking.
Next we need a dictionary file, I’m only going to copy the dictionary file for my locale which is en_GB. If you take a look in the folder called “dic” in the NetSpell folder you’ll see all the available dictionaries.
So create a folder called “dictionary” in the root of your DNN install and copy the dictionary that you will use.

Next we need three files that will provide the UI for the spell checker. These files are located in the folder demo\Demo.Web.FreeTextBox in the NetSpell folder. Copy spell.js, spell.css and SpellCheck.aspx to the root of your DotNetNuke install.
Next Page >>