mojoPortal 2.2.3.4 Release

I'm happy to announce the release of mojoPortal 2.2.3.4, its available now on the download page.

New this release:

 

Setup System

A lot of work has gone into the Setup routine this version to make things much smoother for installation and upgrade. As I mentioned in my previous post, setup is now driven primarily by xml config files so that third party developers can easily make their own features participate in the setup process and you can even leave out built in features. I had mentioned in the previous post that I didn't have automatic schema creation and upgrade working in Firebird Sql, but now I have got it working so creation of the database objects is fully automated for clean installation and upgrades in all data layers. You just create a database, set the connection string, make the Data folder writable by the web process. Then navigate to yoursiteroot/Setup/Default.aspx and the setup process does the rest.

The initial pages that get created are also driven by xml config files so you can specify what pages to create when packaging builds of mojoPortal based applications and you can put instances of features on the page. There are also xml files that allow adding additional items to the Administration Menu. You can even customize the Setup page with your own branding in the header.

Google SiteMap Generator

Also as mentioned in a previous post, we now have an automatic google site map feature.

Other improvements...

Added an Error log viewer in the Administration Menu
Changed the Child Page Menu rendering to be more like a Site Map of pages beneath the parent.
bug fixes for bugs reported since last release

As always be sure and back everything up before doing an upgrade and post in the forums if you run into difficulty. When you upload the new files to the web I suggest you upload the Setup folder first before uploading the rest of the files. That way you can be sure all the setup scripts have arrived on the server before the Setup routine gets invoked.

New Poll Feature landed in svn

A new Poll feature has landed in svn trunk contributed by Christian Fredh. It allows you to create and manage polls easily.

Currently it only supports MS SQL, but I plan to implement the other data layers soon based on the MS SQL version.

Great Work Christian!

New Setup System landed in svn trunk

Heads up to anyone working with the sourcecode from svn trunk. I've just merged the new Setup system. The new system provides a lot more helpful information during setup and is designed such that if an error happens, the process can continue if the cause of the error is corrected. When doing a clean install, all you have to do is create the database and set the connection string with a user that has sufficient permission to create the schema and the Setup will do the rest including creating all needed database objects. The only data layer where I have not got it working correctly yet is Firebird, but it fails gracefully and tells the user where to find the scripts that need to be run manually. I think I may yet be able to get this automated in Firebird but it looks like it will not work using the same approach as all the other data layers so I will have to try to make it work a different way than the others do.

In addition to the new automated schema creation, the new Setup system installs features based on xml configuration files so it will be easy for third party developers to package their own features into the setup process as well as the ability to leave included features out if they want to. You can even make a custom header file so the setup screen shows your own custom branding during install.

The system also allows configuration of pages that will be created during setup. You can specify pages in the xml and which features to put on a page. Currently it is limited to just putting an instance of a feature on a page and setting its title, it cannot set any properties on the instance except for the included Html Content module. For the Html Content module you can specify a content template so that actual html content is on the page. For all other features like the Blog for example, it can put a blog on a page and give it a title but it can't currently put a post in the blog. Maybe I can come up with  design to do things like that later if they seem important.

I am still refining and testing a little bit and would appreciate anyone testing this from svn trunk and letting me know any issues so I can fix them and then can make a new release.

Other improvements that also landed in svn trunk.

  • Automatic Google Site Map you can submit to google using yoursiteroot/SiteMap.ashx
  • Page Settings now has settings for Search Engine Optimization, ie, you can configure the changefrequency, and the priority within a site for each page. This determines how it will appear in the Google Site Map.
  • Feature Names are now localizable
  • A simple log viewer has been implemented in the Admin section to allow viewing the error log without having to download via ftp.
  • Improved the Child Page Menu so it now renders more like the Site Map page, showing all pages below the current page
  • Fixed a bug that was happening when creating new pages using SQLite

I would like to release these improvements soon so any help in testing would be great.

Automatic Google Site Maps Feature landed in svn

Yesterday I implemented a feature to generate a dynamic Google Site Map from the ASP.NET SiteMapProvider used in mojoPortal. My implementation is pretty basic right now, I'm using the defaults for the optional attributes changefreq and priority and leaving out lastmod for now, but I intend to add database fields to capture and manage those properties for each page in the content management system, hopefully before the next release.

You can see the sitemap for this site at http://www.mojoportal.com/SiteMap.ashx

I checked the initial implementation into svn/trunk yesterday and am merging a few improvements now so anyone working with the source code from svn can get it now.

You submit your sitemap to google in the Webmaster tools. Doing so is supposed to help google (and perhaps other search engines) crawl your site and index your content, you know all the SEO stuff to give you more ROI on your web content, blah blah ;-)

Anyway this feature will make it easy to submit your site map and it will stay up to date automatically.

mojoPortal 2.2.3.3 Release

I'm happy to announce the release of mojoPortal 2.2.3.3, its available now on the download page.

New this release:

Added a search feature to the member list

Repaired the broken SQLite data layer, it is now working better than ever using the new Mono.Data.Sqlite library.

Added support for Firebird Sql

Updated to the newest versions of NeatUpload, Lucene.NET, and log4net

Miscellaneous bug fixes as reported in the forums.

If you run into any difficulties please post in the forums.

Don't forget to nominate mojoPortal for the Open Source CMS Award!

I bet there aren't too many other projects out there supporting 5 different databases.

UPDATE 2007-07-26:

I discovered a significant bug today, file uploads are not working in the Gallery, Shared Files and File Manager due to some issues with NeatUpload. Its my own fault really because I upgraded to the latest svn version of NeatUpload instead of the stable release. I did test after the upgrade but not thoroughly, I saw the progress bar and it looked like it uploaded but it did not and in my haste I failed to notice. In any case I have it fixed here by switching to the stable release, just doing some final testing now on Mono and then will be packaging up a new set of files. If you already installed the release files I think the only 2 files that you will need to replace will be Brettle.Web.NeatUpload.dll and Web/NeatUpload/Progress.aspx. I'll post another update later after I have uploaded the new files. Sorry for any inconvenience.

UPDATE 2007-07-26 Part 2:

I've updated the files on the download server with the fix for the above noted bug. As I mentioned, if you already installed the release version from the previos download, the only files to replace are Web/bin/Brettle.Web.NeatUpload.dll and Web/NeatUpload/Progress.aspx