I'm happy to announce the release of mojoPortal 2.2.8.1, available now on the download page.
Bug Fix
The main reason for this release is to fix a bug in the MS SQL version of the blog that was introduced in version 2.2.8.0. I'm surprised it took 5 days for anyone to report this bug, it was causing an error when adding new blog posts and this prevented the friendly url from being created to link to the post. Once it was reported I felt it needed an immediate fix and release. We are on a short release cycle anyway, typically we release every 2-8 weeks but any time a significant bug is confirmed we like to get a fixed release out as soon as possible.
If you are upgrading from 2.2.7.9 or higher, you don't have to upload the ClientScript or Data folders as nothing has changed there. Those are big folders so it should help not having to upload them.
New Stuff
YUI
Even though its only been a week since the last release there are some new things in this release worth mentioning. I've been gradually trying to eliminate the places where we were using ExtJs since they changed the license and we can no longer get upgrades, I'm focusing on YUI and jQuery and MS Ajax for UI enhancements. I previously removed all the use of ExtJs Tabs and implemented YUI tabs. In this release I implemented a YuiGridView, which is an ASP.NET GridView decorated with the YUI DataTable javascript. I had previously implemented a similar ExtJsGridView and was using it in quite a few places in mojoPortal, but now I have replaced all of those with the new YUI version.
Using the Google CDN
We've been shipping all the YUI and jQuery javascript with mojoPortal for a while. YUI is fairly large, its a lot of files and added a lot to the size of our package. Yahoo has had their own CDN (Content Delivery Network) that allowed you to just load the YUI files from the Yahoo servers, but they don't have support for SSL, so in the past it seemed better to include the files within the site, otherwise on secure pages IE users would get the pesky warning about the page having both secure and insecure content. Recently I saw this blog post in the YUI blog mentioning that google is now also hosting YUI on their CDN which does support SSL. So now we can leave out all of that YUI javascript from our package and load it from the google CDN. This is now enabled by default in mojoPortal, though there is a web.config setting that allows you to disable it if you have some reason why you want to host the files yourself, you still can do that, but its up to you to download the latest YUI and configure it in Web.config. We are also loading jQuery from the Google CDN. The only reason I can think of not to use the google CDN is if your site is on a private network and your users don't have internet access. To me that would be a very unusual use case, but in this case you would want to host all the javascript on the server.
WebStore Gets Its First Report
I implemented a Sales Overview report for the WebStore. I debated with myself whether to show you this screen shot, but I generally lean toward transparency so decided to show my own sales on this report. You can see that I'm clearly not making a living selling products yet.
For reference, the store opened on July 23, 2008 with only the Buy Me a Beer product. Event Calendar Pro went on sale August 20th, 2008, and Form Wizard Pro went on sale Sept 29, 2008. Sales are currently only a trickle and I have a long way to go to get to my goal of selling 50 units per month, which is the point where I would start to make a decent living. For now I am still living primarily on savings, but I am optimistic about reaching my goals before I run out of savings. I think I need to add iCal import and export to the Event Calendar Pro and I need to add support for multi page forms or surveys in Form Wizard Pro to make them more popular, and having a few more products would be good. However, I still think the main thing is to improve the popularity of mojoPortal since my products only target users of mojoPortal, and to that end I've outlined some things on my road map that I think will help get there. Anyway, the main idea of the screen shot is to show the new report. The tables are using the YUIGridView I mentioned, and the Chart is ZedGraph.