Posts in Category: Releases

mojoPortal 2.3.1.5 Released

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

Whats New?

Tiny MCE Editor Rises To The Top

For a long time now the FCKeditor has been the best editor available out of the box in mojoPortal. It was the only one with the ability to browse and upload images and files, it was the only one with integration for our Content Template System and Content Style System, and it was the only one with a spelling checker. Not anymore! I had not upgraded the Tiny MCE editor in a long time, I had tried to once and it broke and I was busy so I reverted to the working version. But recently we've been having some issues with FCKeditor so I decided to give the Tiny MCE upgrade another try. At did not work as before but I pursued it and debugged it and found how to make it work. Then I began looking closer at the documentation and found it was really good, it even described the basic steps to build your own image browser/uploader and integrate it. I also learned how to integrate our content templates and styles. Implementing the file browse and upload was both challenging and fun. I used the jQuery File Tree, which I then extended to be able to monitor folder selection in addition to file selection, and to pre expand to the current folder after a full postback/redirect which we do when uploading files or creating folders. Then I found that they actually provide .NET code in their library to implement spell checking against the google spelling checker services. The code was very easy to integrate and it works so much nicer than the spelling checker in FCKeditor. You basically click the spell checker button and it puts squiggly lines under suspect words, you right click it and it suggests a correction. So nice! I'm notorious for typos in my blog posts, this is going to help!

CKeditor 3.0

So where does this leave us with FCKeditor you might ask. Well, the makers of FCKeditor are moving forward with a revamped version named CKeditor and they just made the first release of CKeditor 3.0. It's also already integrated with mojoPortal and I've enabled it in the new release for you to check it out. It does not have image browse or upload and it is no integrated with our content templates or styles, but it does work. The biggest problem is there is not yet enough good documentation to figure out how to do those things, but it looks very promising and I'm sure the documentation will get there at some point.

New Permissions Tab In Site Settings

In polishing up the image browse and upload experience I decided to move some settings that were previously in Web.config into Site Settings to make it easier to manage. Specifically we now have a Roles That Can Browse and Upload setting. Users in the selected roles can browse and upload starting at the /Data/Sites/[SiteID]/media folder. This is appropriate for content authors. Admins and Content Admins can browse from the /Data/Sites/[SiteID]/ folder as before. There is also a separate Roles That Can Upload and Browse to a User Specific Location. This is appropriate for users who you don't want to be able to browse your media but can upload and broswe images and other files. For example you can allow forum users to upload files if they are in these roles. The allowed file extensions are controlled from Web.config. You will find these settings in a new tab named "Permissions" under the Site Settings > Security Tab.

NeatUpload 1.3.18 Upgrade

I also upgraded to the latest version of NeatUpload. But even better, I read the documentation again and noticed something I should have noticed a long time ago. Dean Brettle, the author of NeatUpload has built in an easy to use Multi-File upload, so I have integrated it into the File Manager, Shared Files, Image Gallery, and Folder Gallery features to allow you to batch upload files. If you have Flash 8 or higher you can even ctrl-select files all at once. Pretty sweet! NeatUpload is really the best upload component for ASP.NET and its free.

Changed The DOCTYPE to Html 5 for included skins

I was tempted to do this last release but after more experiments with Html 5 I decided to do it this release. If you don't agree its easy enough to change it back to Html 1.0 Transitional in the layout.master file of your skin. This only applies to the skins I ship, if you are upgrading and have an existing skin using Xhtml it will continue to be the same. Be aware that I'm aware that there are a few places where pages do not validate as Html 5 including the login and registration pages. If you have a problem with that then please just keep using Xhtml doctype. Html 5 is still just a draft so I'm not going to get too worried about a few places where it doesn't validate, the spec may change before it becomes a standard. It validates on most pages. The things that don't validate are iframes with frameborder and scrolling attributes. Making them validate would make the page ugly and it has zero impact on any user if the page doesn't validate there, it works in all known browsers.

Minor Blog Enhancement

Added a new setting for the default allowed comment days in a blog. Previously if comments were enabled it just defaulted to 90 days and if you wanted something different you had to edit the setting on each post. Now you can set your own default.

Removed Site Office

Site Office was a prototype UI and plug-in system that was disabled by default and included no real working features that plugged in just a few stubs to demonstrate the plug-in system. It was designed for more of an application style UI rather than public web site UI. I originally built it using ExtJs but they changed licenses and I could no longer get upgrades. I've done some preliminary work to re-implement it using YUI but its not finished. I decided to remove it because the ExtJs javascript was about 9MB on disk so this reduced the size of our download packages. Developers who still want to use it can still get it from svn and deploy it themselves.

New and Updated Translations

New Hebrew translation thanks to Daniel Szasz

New Polish translation thanks to Przemyslaw Luiewski

Updated German translation thanks to Jan Aengenvoort

Bug Fixes

There were a number of bug fixes, primarily issues with some features when used in folder based child sites. A few issues that only affected pgsql. Thanks to all who reported these issues!

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

mojoPortal 2.3.1.3 Released

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

What's New

Content Workflow!

Huge thanks go out to Kevin Needham! He did a great job implementing Content Workflow for mojoPortal. Currently its only supported in the Html Content feature but it is extensible so we can use it in other features going forward. Kevin did a great job figuring out where things needed to go, it showed he really understands the mojoPortal code. People have been asking for a better way to have a content approval process for a long time and it certainly wasn't trivial coming up with a plan and implementing it so it fit in well with the existing architecture. He proposed a strategy that made sense up front before he began and then was able to implement it without much involvement from me. He setup a private demo site so I could review the functionality for usability before he submitted the code. The code he submitted was very high quality, I implemented the alternate database support and did a little re-factoring here and there but he pretty much nailed it. I hope he will continue to be involved with the project as it was a pleasure working with him to get his work integrated into the core of mojoPortal.

Web Store Improvements

As mentioned in my previous blog post, the Web Store now supports teaser files for download products. The main use case I focused on was the ability to sell mp3 files with a teaser file and media player so musicians can use mojoPortal to sell their own mp3 files on their own web site using PayPal or any of the other supported payment options. It should be useful for other use cases as well, like selling pdf e-books and maybe having 1 free chapter or table of contents as a teaser file. It could also support a trial version for selling software downloads.

Additionally I implemented a back end order entry system so an admin can create orders. This is useful for situations where the customer does not want to purchase directly on the web site. Recently a school system inquired about buying my products with a PO number and having me invoice them, so I whipped this feature up so that I could create the order after receiving payment by check.

Miscellaneous

We've also added a setting to the blog for the default comments allowed days. Previously it always defaulted to 90 days and you would have to change it on each new post if that was not the desired setting, but now you can set a default preference.

Updated Italian Resources thanks to Diego Mora
Updated French Resources thanks to Thomas Nicolaïdès
Updated Japanese Resources thanks to Suzuki Teko

Its now possible to use Html 5 doctype easily if you choose to as mentioned in this previous post.

Various minor bug fixes as reported in the forums since the last release.

Note: You should add this to the style.config file in your skins:

<file cssvpath="/Data/style/cluetip/jquery.cluetip.css" imagebasevpath="/Data/style/cluetip/">none</file>

to support a new jQuery tooltip we use in the content workflow.

 

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

mojoPortal 2.3.1.0 Released

I'm happy to announce the release of mojoPortal 2.3.1.0 available now on our download page.

This is primarily a bug fix release.

Fixed Issues

Fixed an issue in the WebStore where using EURO currency with PayPal the amounts returned from PayPal were not being correctly parsed.

Fixed a bug in CryptoHelper that was causing an error in some environments when encrypting or decrypting data.

Fixed missing titles on some edit pages that were a side effect of our refactoring of page titles to give more control over them in the last release.

Downgraded YUI from 2.7.0 to 2.6.0 when using the Google CDN, because of a bug in YUI 2.7.0 where an FCKeditor inside a YUI tab sometimes was not visible in IE.

Added required field validators in the Content Style Template editor because leaving the element blank could cause the FCKeditor to throw an error.

Implemented a Content Delete Handler provider system to make a more consistent way of deleting related content when a module instance is deleted. Previously some features were not cleaning out their data when a content instance was deleted.

Last release we introduced support for search results highlighting. This brought with it a possibility for an information disclosure if the user had view permissions on the page but not the module. In the past only the page title was shown so there was no disclosure of the content but with fragments of the actual content now being shown in search results we needed to store the module view permissions in the search index in order to be able to filter search results based on those roles in addition to page view roles. In order to get the view roles into your search index requires rebuilding the search index. In order to not break existing search indexes I had to keep the default to not filter by the module view roles otherwise since the roles are not in the exisiting index all search results would be filtered out. In a new installation the preferred settings are in user.config.sample so that new installations should always filter by module view roles. Those who upgrade and rebuild their search index should add this to their user.config file: <add key="SearchIncludeModuleRoleFilters" value="true" />
This issue only affects those who have content on a page filtered by module view roles in addition to page view roles and only if you are using search results highlighting.

There is a corresponding minor update release for Event Calendar Pro to make it write module permissions also to the search index for events. Customers can download the new 0.0.1.5 version from their purchase history.

Fixed an issue where our App Keep Alive feature did not work in IIS 7 using Integrated Pipeline mode.

Fixed an issue in our SmartCombo dropdown when using Chinese characters.

Fixed an issue in the Image Gallery where the Greybox did not work if the caption had an apostrophy.

Fixed a similar issue in the blog where a script error would occur in IE in the blog if Odiogo was enabled and the blog title had an apostrophy.

Previously some skins had corner rounders surrounding the PageMenu control but if there were no child pages for the current page in the SiteMenu then the PageMenu would not be visible but the corner rounders would still be there. We solved this by moving the CornerRounders into the PageMenu control and out of the layout.master. This way if the menu is not visible neither are the corner rounders.

What Else?

We now force the use of a plain text editor in iPhone because none of the wysiwyg editors can work in iPhone due to the way they create png images of the page for zooming. So even though the editor rendered correctly because javascript is supported, there was no way to click in the editors. So now you can edit site content, make blog posts or anything you like using the iPhone though it does require knowledge of html.

Based on user feedback, I implemented additional CSS classes and and example skin showing how to layout forms with the labels above the form fields. Whereas most of the skins have the label on the left side of the input, andreasvicklund-02 now has forms with the labels above the inputs. Also I think now all the Cancel buttons have been changed to links which was also suggested as a usability improvement.

There was also a request to add a per instance unique CSS class on Html content instances so that it is easier when you want to style a particular content instance different that the others. I implemented this so that there is a wrapper div with class=modulex where x is the module id. This allows you to easily overrid ethe styles for particular instance. I did the same thing for blogs and links and a few other places.

Updated Italian resource files thanks to Diego Mora.

 

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

mojoPortal 2.3.0.8 Released

I'm very happy to announce the release of mojoPortal 2.3.0.8, available now on our download page.

What's New?

Search Engine Improvements

The mojoPortal search engine now supports filtering results by feature and results highlighting, as well as support for Open Search with automatic discovery. A number of changes were made to what we store in the search index, so to take advantage of the new features requires changing some config settings and rebuilding the search index which may or may not be trivial depending on the size and activity level of your site. For backward compatibility we have kept the default settings such that the exisiting search index should continue to work as it has, but to take advantage of the new features you should put this in your user.config for a new installation before doing a search or for an existing site you can add these settings to user.config and then rebuild the search index.

<add key="DisableSearchFeatureFilters" value="false" />
<add key="SearchUseBackwardCompatibilityMode" value="false" />
<add key="EnableSearchResultsHighlighting" value="true" />

SEO (Search Engine Optimization) Improvements

I did a lot of analysis using the new free IIS SEO Toolkit and made a number of small changes based on the results. Its now possible for you to control the default title format for pages and to use extensionless urls in IIS 7.

Content Template Editor

Now you can create and save custom content templates and they will show up in the FCKeditor.

Content Style Editor

Its now possible for you to create and save content style templates that appear in the Style dropdown list in FCKeditor.

Skin Improvements

We include about 30 good looking skins in mojoPortal, but a number of the skins were designed for 800x600 screen resolutions so even though they were good looking it seemed to me that some of them were not being used very much because they are too narrow. So I made most of the narrow skins wider. Also we needed good examples of suckerfish style menus. The mitchinson-earthy skin had something close but it did not work very well so I re-implemented it using the jQuery Superfish menu and I made the mitchinson-earthy-alt1 which uses a vertical superfish menu. So now I think we have a lot of skins that be can useful as a starting point for customization. There is also a new Preview/Browse link in the Administration Menu > Site Settings page to allow you to easily preview the available skins.

Other Updates

Upgraded to the newest version of NeatUpload and the newest version of the AjaxControlToolkit.

Upgrade Notes

Customers who have purchased Event Calendar Pro and/or Form Wizard Pro, will need to upgrade to new releases of those products which have corresponding changes partly due to the newer version of AjaxToolkit. You can download the latest version from your order history under the "My Account" link.

Be sure to read an understand the changes to the search index and consider rebuilding your search index. If you have a custom skin you will need to add a new css class that is used to highlight the search results, the included skins all have this new css class:

.searchterm { color:black; background-color:yellow; }

 

 

 

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

mojoPortal 2.3.0.4 Released

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

Whats New?

RPX Instant Open ID Single Sign In Integration

Now you can allow users to easily register and sign in to your site with no new passwords using their existing account from Google, Yahoo, AOL, Microsoft,  Facebook, MySpace, Twitter and more. For complete details, see the RPX documentation here.

screen shot of rpx sign in widget

We've had support built in to mojoPortal for Open ID for a long time but this is much more user friendly, the user doesn't have to know anything about Open ID to use it. We still have suppport for standard Open ID authentication for those who would rather use it as is. In fact we also upgraded to the newer DotNetOpenAuth from the older DotNetOpenId (same project but they changed the name of the dll), and now it can work in Medium Trust environments, where previously, you have to remove the DotNetOpenId dll for Medium Trust to work. Of course the new RPX service also works fine in Medium Trust.

New Content Templates in the FCKeditor

You can now easily use a few UI widgets like the jQuery Accordion, jQuery Tabs, and YUI tabs right in the editor. There is a new toolbar item in the editor for choosing content templates, and we have pre-defined a few templates for these widgets.

screen shot of jquery accordion

screen shot of jquery tabs

In the near future we will also add the ability for you to create and edit your own templates.

TextArea Editor

For anyone who would rather use a plain text area for editing content rather thanone of our WYSIWYG editors, we now have a TextArea editor, thanks to a sponsorship from Felix Schudel. Since the WYSIWYG is much more friendly for most people, the TextArea editor is disabled by default, but it can be easily enabled by un-commenting it in the mojoEditor.config file.

WebStore Improvements

It is now possible to checkout without registration or sign in, if the order has no download products. So now people can buy me a beer without registering on this site ;-). There are also improvements to the offer administration, we added a new product picker dialog, and there is a new product site map for submitting to google and other search engines located at /yoursiteroot/WebStore/ProductSiteMap.ashx.

Blog Improvements

There is now an option in the blog to format the category list as a tag cloud. To use it you just enable the setting in the feature instance settings and then clear your browser cache to get the new css for the tag cloud. Soon we will be implementing categories/tags as a core system feature so it can be re-used by any feature and then we will replace the existing blog categories with the new system. This new category/tag system will then be used to easily add categories to the WebStore, EventCalendar Pro, and possibly other features. Note that if you have a custom skin, you will need to add this css for the tag cloud:

.tag-cloud { list-style-type:none; margin: 15px 0px 3px -30px;}
.tag-cloud li { display: inline; list-style-type:none; }
.tagcount { font-size: x-small;}
.tag-cloud .weight1 { font-size: 90%; }
.tag-cloud .weight2 { font-size: 110%; }
.tag-cloud .weight3 { font-size: 120%; }
.tag-cloud .weight4 { font-size: 130%; }
.tag-cloud .weight5 { font-size: 140%; }
.tag-cloud .weight6 { font-size: 150%; }
.tag-cloud .weight7 { font-size: 160%; }
.tag-cloud .weight8 { font-size: 180%; }
.tag-cloud .weight9 { font-size: 200%; }
.tag-cloud .weight10 { font-size: 210%; }

 

There have also been a number of minor enhancements and of course bug fixes for things reported in the forums since the last release.

Updated Releases For Event Calendar Pro and Form Wizard Pro

New minor release updates are available for customers who have purchased these features.  There were small changes made in these feature to correspond with changes in the core of mojoPortal. The Form Wizard also now uses the full editor toolbar for editing the form instructions and thank you message. Customers can download the updated versions from their purchase history and install them after upgrading to mojoPortal 2.3.0.4.

 Update 2009-05-22

Just updated to version 2.3.0.4.b to fix an issue where the breadcrumbs wrapper div was rendering on pages even if breadcrumbs were not enabled and this extra div could affect layout in some skin designs.

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