Posts From October, 2010

mojoPortal Released

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

A few weeks ago I was on the verge of releasing my new add on product In Site Analytics Pro, but when I tested the package I discovered that the graphs did not work in Medium Trust hosting. It turned out to be a problem with ZedGraph that was easily fixed by re-compiling it with the AllowPartialyTrustedCallers attribute set to true. However, since both mojoPortal and In Site Analytics use ZedGraph, they really need to both be compile against the same version of ZedGraph. There are ways around such issues with configuration to map assembly versions, but to keep things simple I decided to wait and release a new version of mojoPortal with the new version of ZedGraph before releasing In Site Analytics Pro. So I went through our list of to do items and things that have been requested by the community to find a few low hanging fruit items that could be finished quickly to make the mojoPortal upgrade more appealing. I will follow up in the next few days and make the first release In Site Analytics Pro, but it will require mojoPortal or newer.

What's New?

In recent versions, we added a Facebook like button and a Tweet This button in the blog, in this release we made it also possible to have the Facebook like button and/or the Tweet This button in the RSS feed so that users who subscribe to the feed using Google Reader or other Feed Readers can also Like or Tweet your posts. We also added logic so that if a blog post is saved with a blank url, the url is generated by server side code.

Thanks to a good suggestion from Tim Cadenbach, we added some nice ajaxy transitions for the jQuery UI tabs and Accordion used in administrative features and elsewhere.

Added a setting in Site Settings to require a Captcha on the Registration page.

Added a setting in Site Settings to require users to type their email address twice on the registration page (to avoid typos during registration).

Added a setting in Site Settings to show a Password Strength Meter on the registration page to encourage strong passwords.

Added a setting in Site Settings to require a Captcha on the login page, not something I generally recommend doing but if your security requirements call for this it is now possible.

Added support for a new token in newsletters for #viewaswebpage# which is replaced with a link to the web page version of the newsletter.

There was a usability issue previously with the forum notification emails where an opt out link was shown for both the forum as a whole and for just the thread regardless of whether the user was really subscribed to both the forum and the thread. Now we have different notification templates for each scenario so that only opt out links are shown for notifications the user is actually subscribed to.

Added an automatic machine key generator to the Security Advisor page to make it easier to create a custom machine key.

screen shot of machine key generator

Bug Fixes

  • Fixed issue where ZedGraph was not working in Medium Trust
  • Fixed issue where multi file selection for bulk upload did not work in IE after a recent Flash update
  • Fixed Member list paging bug in pgsql data layer

Don't forget that we are moving this site to a new server this evening so there may be some down time during the move.

If you haven't already, please vote for mojoPortal in the 2010 Open Source CMS Awards


Vote For mojoPortal in the 2010 CMS Awards


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.

In Site Analytics is Now on

Hello mojoPortal friends,

I've been working hard for the last few months to complete a new add on product for mojoPortal named In Site Analytics Pro. It is basically feature complete for what I envisioned for the first release and you can check it out on our demo site where you can login with the credentials and the password is admin

I'm still doing a little work on the data management page, but that is a page I would lock down so you can't see it on the demo site anyway for security reasons. Once I complete that I still have to produce documentation for installation, configuration and use before I put it on sale in the mojoPortal store. For now I invite you to check it out on our demo site and let me know any feedback positive or negative.

The primary features are the ability to have traffic reports and charts from Google Analytics in your site and the ability to capture the data from Google Analytics into the database for long term storage. Google only promises keep the data for 2 years, in practice it seems they keep it about 3.5 years, so harvesting the data allows you to keep historic data that would otherwise be lost over time. 

The charts and reports can work directly from the Google Analytics Data API or from the database. Only MS SQL and MySql will be supported for data capture, but installations of mojoPortal using other database platforms can still use the charts and reports directly from the API. It is also possible and preferable to use a separate database for the analytics data instead of keeping it in the same db as the site. It can be a large amount of data over time, much larger than the actual site data. You could also use any db platform for the site but still use MS SQL or MySql for In Site Analytics, I will be producing documentation about how to do that.

The main charts and reporting plugs into the Administration menu and is protected by roles, but there are also 2 features that plug into the content system to allow you to publish a traffic chart and visitor map on public pages of your site as I have done on our Community page.

Below are some screen shots to give you an idea of the features, but it is best to check it out on our demo site.

screen shot of insite analytics dashboard

screen shot of insite analytics visitor map

note that the map can be re-sized by dragging the bottom right corner

screen shot of todays traffic report

Thanks in advance for any feedback!

Vote For mojoPortal in the 2010 CMS Awards


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.

mojoPortal Released

mojoPortal is now available on our download page.

This is a compatibility update for the changes in ASP.NET that resulted from the security patch recently released by Microsoft and now available from Windows Update. I blogged about this issue previously and provided a workaround for the compatibility issue, this new release eliminates the need for the workaround.

Before the security update, there was a possibility for a System.Security.Cryptography.CryptographicException when decrypting the role cookie if the machine key had changed and the user was already authenticated. We already had error handling for this error, but after the security update the behavior changed and it would throw a more generic HttpException there which we were not handling, and this would cause users who were previously authenticated to experience an error until they cleared the cookie. Even without a machine key change, the same error could happen if a user was authenticated before the windows update was applied, the error could happen for that user after the update was applied (because there were also changes to how cookies are encrypted in the security update) In this release we have added handling for the new more generic exception so the cookie will be reset if this error occurs and the user will not experience an error on your site.

We've also removed the previous workaround for the ASP.NET security issue since it is not needed after the update is applied.

Other Changes

Thanks to Steve Railsback of Colorado State University we have some new CSS that can be used to add images to the Administration menu. It uses some Crystal Icons which are licensed under LGPL. I've updated many of the included skins that ship with mojoPortal to use the new icons, you can easily add them to your skin by adding this to your style.config file:

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

It will transform the admin menu from a plain looking vertical list to a list of images with hover effects like this:

screen shot of admin icons

This release also has:

  • upgrade to CKeditor 3.4.1
  • upgrade to TinyMCE
  • updated Italian resource files thanks to Diego Mora
  • fixed a bug where menu items that were configured as unclickable were still clickable in the breadcrumbs

I'd also like to point out a new article in the skinning documentation written by Steve Land, Using Wireframe Skins. Steve has shared a skin he designed to solve the problem of how to keep your discussions with clients focused on functionality when you need to. It is a very common issue that the customer can easily get side tracked onto colors and other visual aspects which is fine if you are trying to discuss the design but distracting if you are trying to focus the discussion on functionality or other non-design aspects of the site. The wireframe skin can help with this because it is designed to not be distracting and to clearly represent that the design is not what is being shown. Please let Steve know if you find his wireframe skin useful if there is interest he might make more variations.

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.

The fix for the ASP.NET Security Bug is now available on Windows Update

The fix for the ASP.NET  security bug is now available in windows update. However, the change has a negative side effect for the current release of mojoPortal which may cause authenticated users to experience an error on your site. The error occurs when trying to decrypt the role cookie which was encrypted before the update was applied. Previously, if there was an error decrypting a role cookie, it was throwing a System.Security.Cryptography.CrypotgraphicException (which we were handling so the user would not experience any error). After the windows update it now throws a more generic HttpException which the current release does not handle so the user will see the error page, and the only way to solve it is to clear the cookie. I have added handling for the changed error for the next release of mojoPortal, but you may begin seeing this error after you or your host applies the security fix.

There is one workaround you can do right away to solve this problem, you can add code to the ErrorPage.aspx in the root to clear the role cookie so that at least the user will only see the error page one time. To do this, edit the ErrorPage.aspx file with a text editor. At the top add this:

<%@ Import Namespace="mojoPortal.Business" %>
<%@ Import Namespace="mojoPortal.Business.WebHelpers" %>
<%@ Import Namespace="mojoPortal.Web" %>

then add this code to the bottom of the Page_Load event:

after this existing line of code:

if (disposable != null) { disposable.Dispose(); }

add this:

            SiteSettings siteSettings = CacheHelper.GetCurrentSiteSettings();
            if (siteSettings != null)
                string roleCookieName = SiteUtils.GetRoleCookieName(siteSettings);
                HttpCookie roleCookie = new HttpCookie(roleCookieName, string.Empty);
                roleCookie.HttpOnly = true;
                roleCookie.Path = "/";

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