Posts in Category: Releases

mojoPortal 2.2.5.3 Released

I'm happy to announce the release of mojoPortal 2.2.5.3.

This is a relatively minor upgrade. There are a few bug fixes for little things reported in the forums.

Upgrade to FCKeditor 2.6

Upgrade to ExtJs 2.0.2

The package for Mono has been tested and works on Mono 1.9

As always, be sure and backup your site and database before upgrading and post in the forums if you have any trouble.

I've also created some new documentation to help with installation and upgrades.

Web.config Guide describes how to make upgrading easier by using a user.config file in conjunction with Web.config

Uploading Files to a Hosted Server gives a few tips for uploading files to your server.

Getting the most from your blog with Odiogo and Feedburner.

There is still time to help pick designs for new mojoPortal skins. I will be starting on the new skins after I get back from the MySql Conference and will probably blog again about some of the suggestions next week during the conference.

If you're going to the MySql Conference I hope to see you there. I'll be in Santa Clara all week. My first ever trip to Silicon Valley.

Cross Platform .NET Development with Mono and MySQL Visit Our Booth at the MySQL Conference

We've got a booth in the DotOrg Pavillion, so come by and see us. I'm also co-presenting with Joseph Hill of Novell for the session "Cross Platform .NET Development with Mono and MySQL". Its very exciting for me because support for Mono and MySql were my very first goals and milestones for mojoPortal when I began the project. The other interesting thing is that mojoPortal has projects and solutions for MonoDevelop in addition to those for Visual Studio, so its one of the few .NET projects with developers collaborating across Windows and *nix platforms.

Gravatar Joe Audette is the founder of the mojoPortal project and was the primary developer until February 2017.

mojoPortal 2.2.5.2 Released

I'm happy to announce the release of mojoPortal 2.2.5.2.

New this release:

AddThis.com button added to blog and to skins to make it easy for others to bookmark and share your site pages using popular bookmarking services. See my previous post for more info.

Contact Form Improvements

The contact form now persists messages to the database so messages are not lost if smtp is not configured. A cool new UI for reviewing messages has been added. It uses ExtJs Window for which I implemented a new .NET WebControl.

screen shot of message list

The window and the panes are re-sizable by dragging. I also added a Web.config option that should help users who have been reporting problems with contact form messages not being encoded correctly for Russian and other languages.

<!-- leave this blank for ascii encoding -->
<add key="SmtpPreferredEncoding" value="" />
<!-- example for Russian encoding
<add key="SmtpPreferredEncoding" value="koi8-r" />
-->

New Skin - extjsViewport1

I also implemented a new skin based on the ExtJs complex layout example, its named extjsViewport1.

screen shot of extjsViewport1 skin

I'm really just scratching the surface so far, I think it will be possible to have feature instances collapse accordian style and the possiblity to drag and drop feature instances to re-arrange content on the page. So far just some foundation work is done, but it is usable.

As always, be sure and backup your site and database before upgrading and if you have any troubles post in the forums and I will try to help.

 

Gravatar Joe Audette is the founder of the mojoPortal project and was the primary developer until February 2017.

mojoPortal 2.2.5.1 Released

I've just released mojoPortal 2.2.5.1, which is a bug fix release for things reported in the forums since the 2.2.5.0 release.

Specifically there was a bug in the Google Maps that caused it to not have the width and height so it made the map disappear.

There was a bug in the new folder image gallery.

There was a bug in the MS SQL version that prevented login if the site was configured for encrypted passwords and login using email.

I've also added better error handling around the search index builders due to a few reports of errors that I was not able to reproduce.

See my previous post for details about new features and enhancements.

I'd also like to mention that I've been working on some new video tutorials.

Gravatar Joe Audette is the founder of the mojoPortal project and was the primary developer until February 2017.

mojoPortal 2.2.5.0 Released

I'm happy to announce the release of mojoPortal 2.2.5.0.

This release contains some significant database schema changes, almost every table has some new columns. As with every upgrade, its important that you backup your site and your database before upgrading so that you can get back to a known working condition should anything go wrong. I fully expect the upgrade to go smoothly and my advice about backing up is no different than any other release. I just figure that since the upgrade scripts are touching so many tables it merits emphasizing this precaution.

So why were so many tables modified this time? Well its laying the foundation for some things to come.

Architectural Changes - Guids are Good

Although we are using integer ids on most tables in mojoPortal (which is optimal for performance), we have added Guids (Globally Unique Identifiers) to most tables that can be thought of as supplemental primary keys and foreign keys. Guids are guaranteed to be unique across machines. It seems almost impossible but supposedly you can generate Guids all day and never make the same one twice or conflict with ones generated on other machines. So what are the benefits of having these Guids on your tables?

One benefit is that it makes it more feasible if you need to combine data from 2 mojoPortal sites into one site. It still would require some custom query work, but the basic idea is that the imported data would not get the same integer ids as it had in the previous system, but the relationships between rows could be re-established using the Guids.

The other benefit and perhaps the more important one is that it allows flexible relationships between tables that make it easier to re-use some functionality across features. For example, I plan soon to implement some things like Content Rating and Content Versioning. So for example I will need a ContentHistory table for the versioning so I can store a copy of every change to a content instance. Instead of implementing this versioning just for the Html Content feature, I'm implementing it in a way that multiple features can use it. So instead of having joins between the ContentHistory table and the HtmlContent table, I will store the history using the Guid that identifies the Html Content instance. It will be able to retrieve its history by passing in its Guid. I could then re-use it in the Blog feature if I want because blog items have their own Guids and can retrieve their history by passing in a Guid. Same thing for the event calendar feature. So basically the ContentHistory table doesn't care which features store their history in it and doesn't have any hard foreign key relationships, but instead loose relationships by virtue of Guids. So the ContentHistory table will have a column named ContentGuid which can relate to the Guid columns of any feature specific tables.

Consider the ContentRating table, again it will have a column named ContentGuid, but I could pass in any feature instance specific Guid, or I could even pass in a page Guid and have ratings at the page level or content instance level. I'll be able to re-use it in Blogs, Html Content, Events, Forums, or anywhere else I need to use it. It will of course be up to the feature or page or whatever to know how to retrieve its ratings or history using its own Guids.

I have not yet implemented  Content Ratings or Content Versioning, but with the Guids in place I can now implement it once and use it in flexible ways across various features. You won't notice anything in the user experience yet from this addition of Guid columns, but the value of this will be more apparent in future releases. These are just examples too, there are actually a lot more things like tagging, meta data and other sub systems that I want to be able to re-use across features and the use of Guids will make that much easier to implement.

Also, this release introduces SubSonic into our architecture which will make it much easier going forward to support all the different databases. See my previous post for more information about the use of SubSonic in mojoPortal.

Blog Enhancements

Its now possible to have a google map in your blog posts by entering a location. Not sure how often you will find that useful, but its there if you need it. A more exciting enhancement to the blog is support for Odiogo, a free service that can generate audio podcasts from you posts automatically. To use it all you have to do is enter your Odiogo feed id and podcast url into the blog settings. Both of these enhancements were pretty low hanging fruit, that is, easy to implement.

Event Calendar Enhancements

Its now possible to enter a location for an Event and have a google map appear in the event details page. The google maps api key now can be stored in Site Settings for all google map enabled features.

Forum Enhancement

A small but useful enhancement is the ability to view threads by user. For any user that has made forum posts now a link to "View Posts" appears below their forum signature as well as on the member list and profile pages.

A New Image Gallery

I blogged about this new feature here.

More work on WebStore

I've been working a lot recently on getting the WebStore feature working on MySql for two reasons. One is so that I can demo it at the MySql Conference. The other is so that I can open up a store on this site to sell premium features. Its very challenging making a living as an open source developer when you give away your products. I do ok when I get consulting work but that is sporadic and not all the work I get has any benefit to the mojoPortal project so sometimes its actually slowing down progress of the project when I take consulting work. Most of the actual progress is still happening when I'm working for free on my own time. So I'm hoping that I can come up with some premium features that you would be willing to pay for. The core of mojoPortal will always remain open source but I need to get some revenue stream going so that I can afford to keep working on improving the core features. I'm also going to roll out a corporate benefactor program soon to make it easier for companies who are building their infrastructure on mojoPortal to get involved in supporting the project financially and influencing the direction of progress.

The WebStore feature should still be considered very experimental, but as I get it running on this site and begin to use it in actual commerce, it will get polished up more quickly and soon be in a condition for others to use.

This release also includes fixes for various bugs posted in the forums since the last release.

As always, be sure and backup your site and database before upgrading, and if you run into any problems post in the forums and I will try to help.

New Tutorial Videos

Gravatar Joe Audette is the founder of the mojoPortal project and was the primary developer until February 2017.

mojoPortal 2.2.4.6-b Released

I've just released mojoPortal 2.2.4.6-b, its available now on the download page.

Nothing changed in the core schema thats why the version only changed to -b. However there are some changes that make it worth the effort to upgrade.

The Poll Feature by Christian Fredh and the Survey Feature by Rob Henry have been revamped to make them a little more user friendly and more consistent with other features. These are 2 very cool features which up till now I haven't used much myself because this site is running on MySql and they were only implemented for MS SQL. Rob actually implemented most of the MySql layer for the Survey recently so I picked up where he left off and finished it then went on and implemented MySql for the Poll as well. You can try them out on this site, the Poll is here and the Survey is here. Go ahead and try them, I'd be interested in your answers to some of the questions I created.

Another new feature is the link browser in the FCKeditor is now implemented so you can browse and link to pages in the site or files in the file system more easily.

As always back up your site and db before upgrading. You'll want to be sure and get the new Web.config file, don't try to keep the old one, just restore any customizations from the old one to the new one.

Although the core schema didn't change you still need to visit the /Setup/Default.aspx page after uploading the new files so it can upgrade the Poll and Survey.

Other than these new features there are only a couple of minor bug fixes. The SQLite blog bug is fixed and it was the worst one reported since the previous release.

Also wanted to mention as noted in Miguel's blog, mojoPortal is also available in rpm format for a few flavors of Linux. The root folder is here, you can drill down through the different distros to find the correct package. This is all thanks to the magic of the OpenSuse Build service and Joseph Hill who initially set it up for mojoPortal. The rpms don't have the very latest release but they are easier to install. I plan to get involved in keeping them up to date after I learn how.