See the download page for details. mojoPortal now supports multiple sites using one installation and db.
Each site must have a different host name entered in the mp_SiteHosts table, if no matching host name is found the first site in the mp_Sites table is returned. The sites sharing a single installation each have separate users and content but they do share the same culture. To support a different culture, you still need a separate installation and db.
As always, if you have any trouble with mojoPortal, please post in the forums and I will try to help as soon as possible.
Next steps in the development plan
Support for PostgreSQL is coming soon thanks to Joseph Hill of GotMono.com!
Page/Menu hierarchy improvements.
Currently, you can't create more than one menu item that points to the same page and you can't create menu items that point outside the page hierarchy either on site or off site. I am going to change this so you can create "pages" that just point to a link which can be an exisiting page in the site or an external link. You will also be able to configure whether it opens in the same window or a new one. Also I will implement a feature so that a page can be configured to automatically display links to its child pages. For example, consider the Documentation menu item on this site, it is really just a container menu for other pages with specific documentation. With the current implementation I had to add an Html Module to that page and manually add links to its child pages. The next version will have a checkbox in the page configuration to do this automatically.
Moving content modules to different pages is a much needed feature that should be pretty easy to implement. It can be done now manually by changing the PageID of the module in the database but I will make this very easy to do.
Module Consolidation
Not long ago I added features to the Html Module to allow configuring it for multiple items to support articles and announcements. Now I see that there is almost a feature overlap with the blog module. If the Html module had RSS, Comments and Archive capabilities the blog module would not be needed because the Html module could be configured as a blog. I am planning to create a new Content Module that will combine all these features and will also add a content rating system and the ability to attach a threaded discussion to any content. At that point I will move the current Blog and Html Modules out of the core and into separate assemblies. This will provide backward compatibility for users with exisiting installations that are already using the Blog and Html modules and will also provide a reference architecture for others who may want to build external modules that plug in to mojoPortal.
Search
I had been thinking I would use Lucene.NET as the search engine for the site but now I'm leaning back toward using traditional db search capabilities. My reasoning on this is that pages in mojoPortal can be configured as only visible to users in certain roles. I think the search needs to take into account whether the user is logged in and what roles the user is a member of in order to only display content that the user has rights to view. I can easily pass the user id as a parameter for searching in the db and limit results to content on pages the user can see. I haven't figured out a way to do something similar with Lucene but I am open to suggestions if those of you more familiar with Lucene.NET see something I am missing.