Posts in Category: Releases

mojoPortal Released 

I'm happy to announce the release of mojoPortal, available now on our download page. This release is a minor update with a few bug fixes and improvements.

What's New?

  • Upgrade to CKEditor 4.2.1
  • added support for 'optgroup' to mojoDropDownList and new mojoListBox
  • added options for alternate email from address and alias for forum notification
  • shared files added config setting for cache header of non-attachment downloads
  • added setting in the blog to allow showing calendar navigation on post detail page default to true
  • added generic.browser file so new browsers are assumed to support cookies
  • new configuration option for mutli-site installations that use related sites mode it is possible to configure all sites to use the same media folder for user uploads by adding this setting as true
    <add key="UseSameContentFolderForRelatedSiteMode" value="true"/>
  • fixed bug in forums where user threads page in multi-site installations with related sites mode showed forum threads from other sites
  • fixed bug in forums where unsubscribing from notification did not work unless authenticated
  • fixed bug in pgsql data layer that caused an error when creating a newsletter
  • fixed bug where janrain inputs were not shown in site settings unless the legacy open id was enabled in web.config
  • fixed bug in folder child sites where facebook like in HTML content feature had a relative URL for the URL to like
  • added required field validator for module title in content wizard

Stay tuned, we will soon be announcing an update to Form Wizard Pro that uses the new support for 'optgroup' in dropdown list questions, and we are also about to release a new add-on product, Fund Raiser Pro that depends on this new version of mojoPortal.

Follow us on twitter or become a fan on Facebook

follow us on twitter become a fan on facebook


Gravatar Joe Audette is the founder of the mojoPortal project and was the primary developer until February 2017.
Posted by mojoPortal Thursday, September 19, 2013 9:23:00 AM Categories: Releases

mojoPortal Released 

I'm happy to announce the release of mojoPortal, available now on our download page. This is primarily a bug fix release. 

What's New?

upgrade from CKeditor 4.0.3 to 4.2
upgrade from TinyMCE 3.5.7 to 3.5.8
Some work is also in progress to support TinyMCE 4.x but so far there are still some issues with the file browser integration so we did not upgrade to that branch of TinyMCE just yet.

Thomas Nicolaïdès - implemented clickable folder crumbs in Shared Files

WebStore -  implemented a cart link that can be embedded in the layout.master file so it can be on every page.
To use this you first add a control declaration at the top of your layout.master file like this:
<%@ Register Namespace="WebStore.UI.Controls" Assembly="WebStore.UI" TagPrefix="webstore" %>

Then you can add the control anywhere you want on layout.master. I put it with the other top navigation links as in this example:

<div id="wraptopnav">
    <div class="topnav">
        <portal:WelcomeMessage id="WelcomeMessage" runat="server" RenderAsListItem="true" ListItemCSS="firstnav" />
        <portal:HomeLink id="HomeLink" runat="server" RenderAsListItem="true" />
        <portal:MobileSkinLink ID="mobileskin" runat="server" RenderAsListItem="true" />
        <portal:LoginLink id="LoginLink" runat="server" RenderAsListItem="true" />
        <portal:LogoutLink id="LogoutLink" runat="server" RenderAsListItem="true" />
        <portal:RegisterLink id="RegisterLink" runat="server" RenderAsListItem="true" />
        <portal:UserProfileLink id="UserProfileLink" runat="server" RenderAsListItem="true" />
        <portal:MailboxLink id="MailboxLink1" runat="server" RenderAsListItem="true"  />
        <portal:MyPageLink id="MyPageLink1" runat="server" RenderAsListItem="true" />
        <portal:MemberListLink id="MemberListLink" runat="server" RenderAsListItem="true"  />
        <portal:SiteMapLink id="SiteMapLink2" runat="server" CssClass="sitelink" RenderAsListItem="true"  />
        <webstore:FlexCartLink id="cartlink1" runat="server" PageId="490" ModuleId="733" ModuleGuid="4482d498-ea94-48dc-b4cd-b28b6abb0ad2" IncludeItemCount="true" IncludeCartTotal="true" LiteralTopMarkup="<li class='topnavitem cartnav'><span class='ui-icon ui-icon-cart'></span>" LiteralBottomMarkup="</li>" CssClass="sitelink" />

You must configure the pageid moduleid and ModuleGuid to match those values for your WebStore. The example extra markup uses the cart icon from jqueryui.

added module setting for date format in comments feature
added a new setting in html content to disable the click event for slide show slides so that clickable content within the slides can be clicked
added a Web.config option to lookup paramterized urls for 301 redirect - false by default

made it possible to style tables and mojoGridView using jqueryui, to do this you need these settings in
<mp:mojoGridView runat="server"

<mp:mojoGridView runat="server" SkinID="FileManager"

<mp:mojoGridView runat="server" SkinID="SharedFiles"

added an option on FlexMenu for StartingNodePageId
added a Web.config option to show publish workflow icon for unsubmitted draft
made the contact form set the focus to the email box if there is any email validation error
fixed a few region specific languages in ckeditor that were not previously available

made email template editor also edit the plain text version of the template
added a Web.config option to limit Active Directory to root DN

fixed bug in Forums where thread subject was unfiltered in page title element causing a potential XSS vulnerability. Anyone using the forums should definitely upgrade to get this security fix.
fixed bug in Forums where non editors could not edit their own older posts even when the settings was -1 which should allow it.
fixed bug in mssql data layer for Forums where unsubscribe was returning false even on success causing the wrong message to be shown to the user.
fixed bug in sqlce data layer where redirect list paging did not work
fixed bug in comment system don't show user inputs for name, email, and url by default if user is authenticated
fixed bug in pgsql data layer when saving a module definition setting from the ui
fixed bug in blog when using jquery datepicker for calendar nav the date format in links was not correct if not using English
fixed bug in blog where blog sitemap did not work correctly if not using friendly urls
fixed bug Blog should use addthis accountid from blog settings if specified
fixed some validation problems in the blog feed, added some new settings for feed language, managing editor, iTunes categories, logo url
fixed bug in file manager where uploading to root folder failed
fixed bug in Shared Files, when editing a file in a sub fodler it would be moved to root folder
fixed bug in Shared Files where it was possible to make a child folder the parent
fixed bug Shared Files was not updating the upload date when a file was updated
fixed bug in parentpagedialog when configured to start fully expanded
fixed bug Janrain widget should use the new implementation by default
fixed javascript error in IE 8 when using the new file uploader
fixed bug inline editor should use style and content templates
fixed bug in payment gateway where currencyCulture was not used to format currency. 
fixed bug sitemenu and pagemenu should set the ismobileskin property on flexmenu

Follow us on twitter or become a fan on Facebook

follow us on twitter become a fan on facebook

Gravatar Joe Audette is the founder of the mojoPortal project and was the primary developer until February 2017.
Posted by mojoPortal Monday, July 29, 2013 10:06:00 AM Categories: Releases Security

mojoPortal Released 

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

The main new item this release is an all new file uploader with support for drag and drop, multiple file selection and a progress bar in modern browsers.

new file uploader

For many years we've used NeatUpload for file uploads which also provided a progress bar and multi file selection. Dean Brettle, the author of NeatUpload stopped supporting it in May of 2010 and now it has become a bit long in the tooth. It depended on Flash for multi file selection in some browsers and it did not work in medium trust hosting and was beginning to have some problems in newer versions of Firefox. Specifically it depended on a really old version of swfupload (which itself is now also an abandoned project). NeatUpload has served us well over the years but many of the problems that is solved are no longer existing problems or are easier to solve in modern web browsers so we felt the time had come to replace it.

We previously needed to provide a separate web.config file which enabled NeatUpload in Full Trust hosting but we no longer need any separate configuration, all the included features of mojoPortal "just work" in Medium Trust with no special configuration needed. Some of the file uploader features such as drag and drop, multi file selection and upload progress bar do not work in older web browsers but it does degrade to normal one at a time file upload in those browsers while modern browsers get the best user experience. NeatUpload is no longer included with mojoPortal so as long as you don't have any custom features that depend on it you can safely remove the /NeatUpload folder from your eisting installation after upgrading and remove the file Brettle.Web.NeatUpload.dll from the /bin folder. Developers are encouraged to look at how we implemented the file upload in mojoPortal features and replace your own use of NeatUpload in custom features to be consistent.

New Version of AjaxControlToolkit

We upgraded to the Jan2013 version (from July2012 version) of AjaxControlToolkit. Since this is used also in our add on products Form Wizard Pro, Event Calendar Pro, and Web Invoice Pro, we have corresponding upgrades to those add on products for compatibility with this release of mojoPortal.

Other Stuff

  • upgrade to CKeditor 4.0.3
  • upgrade to jQuery 1.9.1 and jQueryUI 1.10.2
  • upgrade from jPlayer 2.1.0 to 2.3.0
  • various minor bug fixes for things reported in the forums since the last release

Follow us on twitter or become a fan on Facebook

follow us on twitter become a fan on facebook

Gravatar Joe Audette is the founder of the mojoPortal project and was the primary developer until February 2017.
Posted by mojoPortal Tuesday, April 30, 2013 11:38:00 AM Categories: Features jQuery Pro Products Releases

mojoPortal Released 

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

This release includes a number of bug fixes and a few other improvements since the previous release. The most interesting new feature is support for inline editing in the Html Content feature when using CKEditor which has also been upgraded to version 4.0.2. With inline editing, users with edit permissions can just click into the content and the editor will appear as shown below in a screen shot from our demo site.

inline editing with CKeditor

When you click out of the content if it has changed it is saved by an ajax post to a service url. There is a little lock icon that toggles enabling and disabling the inline editor. This was needed otherwise if a user had edit permission and wanted to click a link within the content, it would launch the editor instead of navigating to the link. The inline editor also works in iPhone and iPad. For now inline editing is only implemented in the Html Content feature but depending on feedback we may implement it in other features in the future. It can also be disabled in case you don't like it and the traditional edit link that goes to the edit page also still works. To disabled inline editing in an installation you would add this in user.config:

<add key="EnableInlineEditing" value="false" />

In the last release we introduced a new Recent Content feature as well as an RSS url that could retrieve recent content based on query string parameters that could limit the results to a specific feature. Since the Recent Content feature that plugs into CMS pages could be configured to show content from multiple features we decided it would be more user friendly to expose an RSS link directly in the feature that will use the settings from the feature so that the feed will include the same content as the feature on the page.

In the previous release we upgraded to the latest jQuery but we missed a few plugins that were not compatible which caused a few bugs in various places such as the image cropper and the file manager. These have been fixed. The jPlayer plugin used in our Audio and Video players also is still not yet compatible with the latest jQuery so we automatically load the jQuery Migrate plugin when it is loaded to provide compatibility until they come out with an update to the jPlayer plugin.

We also upgraded to the newest version of the NivoSlider jQuery plugin which is integrated in the Image Gallery feature. It now supports captions and the web size image will link to the full size image.

There was also a bug introduced in the last release for the forums where forum threads could be lost from the search index when other threads were updated. This has now been fixed and anyone using the forums should rebuild the search index again after upgrading to restore any missing forum items from the search index.

Follow us on twitter or become a fan on Facebook

follow us on twitter become a fan on facebook

Gravatar Joe Audette is the founder of the mojoPortal project and was the primary developer until February 2017.
Posted by mojoPortal Friday, March 08, 2013 1:13:00 PM Categories: Features jQuery Releases

mojoPortal Released 

I'm happy to announce the release of mojoPortal, available now on our download page. This is a significant update with many improvements.

UPDATE 2013-02-14 We have found that our .NET 3.5 package for this release is broken under medium trust due to an error generated by Lucene.NET. We are looking into a solution to this but for now, those hosted under .NET 3.5 medium trust should not upgrade. The best solution is to move to .NET 4/4.5 hosting since we are approaching the end of support for .NET 3.5.

UPDATE 2013-02-14 We were able to use conditional compilation to make the .NET 3.5 builds use the older version of Lucene.NET and this fixed the medium trust error for the package. So it is now safe to upgrade .NET 3.5 installations.

What's New?

Recent Content Feature

Lots of people have asked if there is a way to show recently created or updated content. The challenge with this has always been that features are self-contained and pages are just containers for feature instances so the don't have knowledge of the feature content so there was not an easy way to list new content except at the feature level. For example features like the blog and forums expose RSS feeds so one could pull recent content from those feeds into a feed manager instance, but there wasn't a good way to do it for the HTML Content feature which is the main content feature. However, we recently revamped our internal search index to keep track of created and modified dates so that searches could be filtered by date (also new in this release). Once that was completed we realized that one way to get recent content in a feature agnostic way is to retrieve it from the search index based on the created or modified date. This is exactly what the new Recent Content Feature does. You can set a maximum number of days old to include, which features to include and whether to use the created date or modified date. So this now works with all features that support search. The Recent Content feature can be placed on a page like any other feature and configured as you wish. There is also now a Recent Content RSS feed that can be enabled and then used with the Feed Manager feature to show recent content. I'll be documenting how to do that soon but the stand alone Recent Content feature is probably more user-friendly for most people.

Search Engine Improvements

As mentioned above the internal Lucene.NET search engine has been revamped. In addition to the created and modified dates it can also store the author name and this can be optionally shown in the search results for features that populate it. We also upgraded to the latest version of Lucene.NET (3.0.3). As a result of these changes, after upgrading it is recommended to rebuild the search index so it gets populated with the new fields. There were some breaking changes so developers who have implemented their own custom features that support search and use our internal search engine should see the notes in this forum thread.

There is also a corresponding update to our Event Calendar Pro product to be compatible with the search engine changes. This is a free update for customers who already purchased Event Calendar Pro.

Blog Improvements

Previously the map settings for the blog were at the feature instance level which meant that all maps in all posts had to use the same settings. These settings are now per post so you can get more creative with maps in your blog posts. There is also a new setting if you want to show a search input in the blog.

Forum Improvements

There is a new setting if you want to automatically close threads older than a certain number of days. Individual threads can now be left out of the google site map for the forums and/or marked with a NOINDEX meta tag if you don't feel that the thread has any content of value. There are also new settings to allow showing the CMS page side content on the forum detail pages which is useful for ad placement for example.

Miscellaneous Improvements

  • Content Style templates can now be imported and exported thanks to Joe Davis of i7MEDIA
  • Upgraded to CKEditor 4.0.1
  • There is a new menu control named FlexMenu included in this release. Unlike the ASP.NET Menu and Treeview controls it does not add any javascript so you can add your own if needed and not get any conflicts that those menus are prone to.
  • Updated the CDN settings to use jQuery 1.9 and jQueryUI 1.10.0. Also updated included plugins to compatible versions. However, if you are using any custom plugins or javascript that is not compatible with the new version of jQuery we have a way to include a compatibility script. See the important skin changes article for details.
  • Bug fixes for things reported in the forums since the last release.

Follow us on twitter or become a fan on Facebook

follow us on twitter become a fan on facebook

Gravatar Joe Audette is the founder of the mojoPortal project and was the primary developer until February 2017.
Posted by mojoPortal Thursday, February 07, 2013 9:09:00 AM Categories: Features jQuery Pro Products Releases Site Design