220 people following this project (follow)

Project Description
mojoPortal is an extensible, cross database, mobile friendly, content management system (CMS) and web application framework written in C# ASP.NET. mojoPortal has many included features like Blogs, Forums, Event Calendar, Google and Bing Maps, Contact Form, Polls, Surveys, Audio and Video Players, ecommerce & more. Easy to learn, easy to use, easy to extend. If you know how to make an ASP.NET UserControl then you already know how to implement a feature that can plug into mojoPortal. Get results quickly by building your next web site or application using mojoPortal. For the database you can use MS SQL 2005-2008/SqlAzure/SQL CE, MySql, PostgreSql, SQLite, or Firbird Sql. It can even run on Linux using Mono. mojoPortal places a lot of emphasis on web standards and accessibility. Virtually all of the administrative features can be used even if javascript is disabled. mojoPortal ships with about 30 good looking skins. Anyone with a good understanding of html and css should find it straightforward creating custom skins. mojoPortal also runs well in Medium Trust hosting.

mojoPortal targets .NET 4.0 and .NET 3.5 SP1. The last release to target 2.0 is version 2.2.7.9

"A Solid CMS Option for .NET Shops" - Information Week
Best Non-PHP Content Management System - 2007 CMS Awards

**Important Note!**
We recently changed our source code repository to Mercurial. The easiest way to get the latest stable source code is using TortoiseHG:
https://hg01.codeplex.com/mojoportal
See Getting the Code with TortoiseHG for full instructions.
The source code (in the repository) is now pre-configured for 4.0 .NET, for instructions on using 3.5 .NET see the mojoPortal .NET 4 Transition Plan.
Working with the source code requires Visual Studio 2010.

For complete information, documentation and support forums, please visit http://www.mojoportal.com

mojoPortal Installation Guide
Easy Skinning with Artisteer
mojoPortal Hello World Developer Quick Start
Developer Training Videos
mojoPortal Documentation
mojoPortal Support Forums
mojoPortal Project Road Map

To learn how to use mojoPortal, you may find it helpful to watch these video tutorials:
mojoPortal User Guide Quick Start
How To Manage The Site Hierarchy
How To Publish Content on Multiple Pages
More Training Videos


 mojoPortal Change Blog News Feed 
Tuesday, April 24, 2012  |  From mojoPortal Change Blog

This month we have slew of very nice new mojoPortal sites designed by our friends over at TRIAD Communications/Next Level Interactive. They are very good designers and we have featured sites from them several times in the past. Both the TRIAD Communications site and the Next Level Interactive site also run on mojoPortal, though the Next Level Interactive site is mainly using Flash rather than Html for the UI. We love it when designers use mojoPortal not only for their customers but also for their own sites.


Here is a full list of new sites they let me know about recently followed by screen shots of a few of them:

All of these sites have very professional designs and are worth a look, here are screen shots of a few of them:


Rock and Recovery Site


The Burton D. Morgan Foundation


Leadership Akron


Qylex IT


We'd love to hear about the sites you are bringing online with mojoPortal. If you have a high profile site or a design that you're particularly proud of, or a site showing custom features you've built on mojoPortal, let us know, maybe we'll feature your site(s) in a blog post.


Follow us on twitter or become a fan on Facebook


follow us on twitter become a fan on facebook




Joe Audette  ...Tweet This

Thursday, April 19, 2012  |  From mojoPortal Change Blog

I'm happy to announce the initial release of Site Membership Pro, available now in the mojoPortal Store. Site Membership Pro is an add on product for mojoPortal that makes it easy to monetize access to your premium site content.


Site Membership Pro


See the product page for full details. As with our other products, customers who purchase Site Membership Pro get free upgrades for the life of the product.


Follow us on twitter or become a fan on Facebook


follow us on twitter become a fan on facebook


Joe Audette  ...Tweet This

Wednesday, April 18, 2012  |  From mojoPortal Change Blog

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

What's New?

A new Control for Nivo Slider


Thanks to Matt Wilkinson who contributed a control that makes it easy to use Nivo Slider, a jQuery widget that does fancy slide show transistions. This control can be used in layout.master or in custom features. You basically add the control and point it to a folder that has images for the slide show. The images in the folder must all be the same size, and you must specify the width of the images on the control, so example usage is like this:


<portal:NivoSlider ID="NivoSlider1" runat="server" ImageFolder='~/Data/Sites/1/nivoimages' ImageWidth='618px' />


Then you also need to add one of these included skins for Nivo Slider to the style.config file of your skin:


<file cssvpath="/Data/style/nivoslider/default/default.css" imagebasevpath="/Data/style/nivoslider/default/">none</file>
<file cssvpath="/Data/style/nivoslider/orman/orman.css" imagebasevpath="/Data/style/nivoslider/orman/">none</file>


or you can copy and rename one of those and modify it as you like.

A new QRCodeImage control


QR Code


QR Codes are often used in printed materials to encode an url for a web page. There are apps for most smart phones and tablets that can scan the QR Code and navigate to the web page. We've added this control in the "PrinterFriendly" skin so that if people print a page on your site using the printer friendly view a QR Code will be included at the bottom automatically.


Since we don't update the skins in the site specific folders during upgrades you may want to copy the new version of the printerfirendly skin from /Data/skins to /Data/Sites/[SiteID]/skins or you can add it directly to the layout.master of your copy like this:


<portal:QRCodeImage id="qr1" runat="server" AutoDetectPageUrl="true" />


You could also use this control in custom features, you can encode any text value, if you set AutoDetectUrl to false and add the attribute TextToEncode="Any text you want to encode as a QR Code" you could use it for other purposes. The control uses the google charts api to generate the QR code image so it can't work if you are offline or your site is on a private intranet with no access to the internet.

Lots of Little Improvements


There is a new section in Site Settings for Company Info as well as some convenience controls to make it easy to show company info in the footer of your site by embedding some new convenience controls in your layout.master file that will automatically pull in the compnay info from site settings. Examples:


<portal:OrganizationControl id="oc1" runat="server" /> will include the company info marked up with Schema.org Organization markup. There are also a few literal controls that can be used separately:
<portal:CompanyPhoneLiteral id="litPhone" runat="server" />
<portal:CompanyFaxLiteral id="litFax" runat="server" />
<portal:PublicEmail id="litEmail" runat="server" />


There is a new Site Created Event Handler Provider system (usage is yet to be documented), contributed by Joe Davis that allows you to plugin custom code that can execute when additional sites are created.


Blog Category list and Archive list views now use the same settings as the main post list so that they show full posts or excerpts in a paged list instead of just titles.


There is a new setting in Image Gallery to automatically start the colorbox slide show when the page loads.


In the html content feature users with full edit permission can now publish a draft without submitting it through the approval process.


Improved usability for user role management on manage user page.


Made role permissions UI in page settings consistent with module settings where the links are under the security tab for improved usability


Added support for content on the login page.


Added count of members to role list in role manager page


When using LDAP Authentication with fallback to database authentication it is now possible to allow the users with database accounts to login with their email address in addition to the loginname.


Added config settings to make it possible to control the cache duration for 301 redirects or to disable caching.


Restored previously removed support to use cache dependency files based on a config setting to support small web clusters with a shared drive, where dependency files are the easiest way to clear the cache on all the nodes that share the drive without having to use a distrubuted cache.


Added rel="next" and rel="prev" meta links on paged Forums and Lists features to improve the SEO of those features.


Added support for checkboxlist questions in custom user profile with example in comments in mojoProfile.config.


Upgraded from CKeditor 3.6.2 to 3.6.3


Upgraded from TinyMCE 3.4.7 to 3.4.9


Updated to newest version of jcarousel


Update to newer version of google data libraries


Added custom body css class on closed page to make it easier to style the closed page.


Removed un-needed css class from artisteer theme.skin files, was causing a problem in webstore layout where it did not use the full page width.


Bug Fixes


  • fixed login, password recovery and registration issues when user exists but is flagged as deleted
  • fixed bug in profileview.aspx where custom profile boolean properties were not showing the images for true or false
  • fixed bug in PermissionEdit.aspx where All Users was not checked even if it was saved correctly in the database
  • fixed incorrect parameter type for compiledmeta field in MySql data layer
  • fixed bug in MySql data layer for database logging, incorrect parameter type
  • fixed a bug in the blog where an auto-generated excerpt was being used in the post list even when explicitely created in the editor
  • fixed bug in blog where detail view did not use the blogauthor override setting
  • fixed bug in blog - option to show side pane content and top and bottom content should work in all blog supporting pages
  • fixed bug where new user notification did not work in child sites when using related sites mode
  • fixed a bug in the editors where the unsaved changes warning from spanish resources was causing CKeditor to not work at all and causing unsaved changes prompt to not work in TinyMCE
  • fixed bug in SiteStatisiticsModule where it was hard coded to use 1 for the site id
  • fixed bug in newsletter administration where paging did not work
  • fixed bug in Flickr Gallery - don't specify a default size in flickr gallery script so it will not reduce image quality
  • fixed bug - check for null on all paypal IPN paramaters in webstore
  • fixed bug in webstore where media player was shown on offer detail page even when no teaser file was present

Follow us on twitter or become a fan on Facebook


follow us on twitter become a fan on facebook


Joe Audette  ...Tweet This

Thursday, April 05, 2012  |  From mojoPortal Change Blog

In our last newsletter I mentioned that I was working on a new add on product for mojoPortal named Site Membership Pro.


I've received quite a few emails expressing interest in this product and I'm happy to report that the first release is ready to ship and will be available soon in the mojoPortal store.


Site Membership Pro


However, Site Membership Pro depends on a few small changes I've recently implemented in the core of mojoPortal, so I'll have to wait until after the next release of mojoPortal before I can make it available. My plan is to make a new release of mojoPortal soon, I'm going through our project tracker looking for small things I can complete to round out a new release to make it worthwhile upgrade.


In the mean time, I've created a demo site to show the public facing side of the feature at smpdemo.mojoportal.com.  You can also try out the back end administration of the feature on our main demo site where you can login as the administrator, but you'll need to add it to a page manually and then you will see the "Settings" and "Manage" links.

What Is Site Membership Pro?


Site Membership Pro provides additional functionality on top of mojoPortal to make it easy to monetize access to your premium site content.


mojoPortal already provides role based security so that you can use roles to protect your premium content. For example you could create a role named "Members Only" and you could set that role as the only allowed View Role on pages in your site that contain premium content. However, managing the roles assigned to a user is a manual process in mojoPortal that can be done by Administrators, Role Adminsitrators or Roles That Can Manage Users. So one would have to go to each user who should be given access to premium content and add the user to the "Members Only" role.


Site Membership Pro provides the missing pieces to make it easy to sell membership subscriptions and automatically grant the user the role or roles that provide access to the premium content on your site when they complete a subscription purchase.


You define Membsership Levels which have a name and one or more roles that are provided with this level of membership. You could keep it simple and just have one level for "Members Only", or you could have multiple tiers of access like Gold, Silver and Bronze each providing different roles that protect sections of your site content.


Then you define Membership Product(s) which grant the user one of the Membership Levels (and the associated roles) for a specified number of days for a specified price. Products can be enabled or disabled and they can have begin and end dates that determine when they are on sale. A grace period can also be specified on the product such that users are not removed from the granted role(s) until after a certain number days after the actual expiration date.


When a user pruchases a membership product they are immediately granted the roles provided by the membership level when the payment has cleared. The begin and end dates of the membership are set at the time of purchase and a background task handles removing roles from the user when the membership expires or the grace period is over (if the user has not renewed).


You can also configure notifications on the products so that users can recieve reminders when their membership is coming up for renewal. Reminders can be configured as a specific number of days before or after either the end date of a membership or the end of the grace period. You can create multiple reminders per product so that you have a series of them to encourage renewal.


You can also define reminder templates for plain text email messages. Templates support some token replacement and you must assign a template to a reminder in order to save it. So the reminder will send a plain text email replacing the tokens from the template at the scheduled time if the user has not renewed.


The same background task that manages removing users from roles if their membership expires also handles sending the reminder messages.


Note that the reminders are intended to provide a link back to your site so the user can renew his membership before it expires. To renew, users have to go through the checkout process. Site Membership Pro does not retain any credit card information and does not automatically charge cards to renew subscriptions. Possibly in the future we will look into available APIs from PayPal and others for recurring payments but we have no plans to retain credit card information in the future. The risks and liability potential involved with retaining credit card information without proper infrastructure and staff to secure the data far outweigh the fact that it would be nice to be able to do that.


Since users probably don't want to go through the checkout process every month it is recommended to structure your membership products with fairly long durations like 6 months or one year as opposed to a month at a time. Free products are also supported so you could have one product that provides a free trial of Premium Access for a limited number of days and a One Year Subscription for $120 for example. You can also mark a product as available only for new members, so that existing members can't get the free trial offer.


Supports Authorize.NET, PlugNPay, PayPal, Google Checkout - ie the same payment systems supported in all mojoPortal ecommerce products (WebStore, Event Calendar Pro, Web Invoice Pro). I'm also investigating adding support for WorldPay for all our ecommerce products in the near future.


The initial release will support MS SQL and MySql, other database platforms may be supported later depending ion demand.

What Site Membership Pro Does Not Do


Site Membership Pro is NOT a replacement for the site registration system. User's must register or sign in to purchase premium membership, so they need to go through the normal registration process first to get a free account, then once they complete the membership purchase they are immediately granted the roles provided by the membership.


Site Membership Pro is not involved in protecting your premiumm content, that is done by configuring roles that can view pages in your site and is built in functionality of mojoPortal.


Site Membership Pro does not retain any credit card information and cannot automatically charge cards when membership renewal is due.


Site Membership Pro does not prevent an Administrator, Role Administrator or Roles That Can Manage Users from adding or removing users from roles.


Follow us on twitter or become a fan on Facebook


follow us on twitter become a fan on facebook


Joe Audette  ...Tweet This

Friday, March 23, 2012  |  From mojoPortal Change Blog

I've just uploaded Event Calendar Pro 3.4.0.5 This is a minor upgrade with just a few little improvements that some customers have been asking for.

What's New?


Improvements to the event editor to get rid of some jumpiness that could happen when additional settings were shown or hidden based on checkbox selection. Previously this was done using UpdatePanel which was the cuase of the jumpiness. All UpdatePanels have been removed from the event editor page and the showing and hiding of things is done with jQuery making it much smoother.


Added settings to allow not requiring or showing address and phone fields on the registration form when the event is free.


Added a setting to use the Event Summary instead of Event Detail in the outbound feed. Often people consume the feed in the mojoPortal Feed Manager on their home page to show upcoming events but they don't want to show the full details.


Added a setting to control how far into the future events are included in the feed. Previously it was hard coded to 180 days, this is now just a default setting that can be changed.


Added more css classes on the body element in edit/admin pages


Added config settings to allow hiding the start and end time on List View and event Detail view if the start and end time is configured to the same value.


Updated the article Event Calendar Pro Tips and Tricks to cover some of the new and previously undocumented config settings.


Event Calendar Pro


We've got lots of plans for future enhancements for Event Calendar Pro, but wanted to get this small update out for the folks who requested these minor improvements. As with the previous release of Event Calendar Pro, this release requires mojoPortal 2.3.8.1 or higher.


This is a free upgrade for existing customers who have already purchased Event Calendar Pro. To download the new version just sign into www.mojoportal.com as the user who made the purchase, then click the "My Account" link at the top of the page and go to Order History. You'll be able to download the latest version from your order details.


Follow us on twitter or become a fan on Facebook


follow us on twitter become a fan on facebook


Joe Audette  ...Tweet This

Monday, February 27, 2012  |  From mojoPortal Change Blog

It seems like developing applications for the iPad is all the rage these days as it has become a very popular device.  I’ve thought about developing an iPad app for mojoPortal, it would be fun to learn how to develop apps for iPad and iPhone, but honestly my plate is pretty full just working on mojoPortal itself and add on products for it. So I got to wondering if there were any apps already in existence for the iPad that could work with mojoPortal similar to Windows Live Writer which is the best Windows desktop application for blogging. In case you missed it, in version 2.3.7.5 we improved our support for Windows Live Writer so that you can now edit CMS pages with Html content in addition to Blog posts. I thought it would be pretty cool if there is an iPad application that offers similar functionality as Windows Live Writer.


So I tried a few iPad applications including the WordPress app, BlogPress, and Blogsy. I found Blogsy to be the most feature rich user friendly one of the group. All of these apps support Wordpress and some of them support a few additional blogging platforms and since mojoPortal is much less known than the big blogging platforms I would not expect the developers of those apps to be interested in working on specific support for mojoPortal. So instead I decided to try to support more of the Wordpress API in mojoPortal so that these apps could be used with mojoPortal just as if they were using  Wordpress. I used all 3 of these apps in testing to make sure I was correctly implementing the Wordpress methods, but Blogsy is by far the best one that I could recommend to mojoPortal users who would like to blog from their iPad.


IMG_0012


In Blogsy you configure mojoPortal the same as if it were a self hosted Wordpress site. So you enter the url to your Blog page (use https if you have SSL installed) and your login credentials.


Now Wordpress of course is a PHP application (not a .NET app) and the Url for the API is yoursiteroot/xmlrpc.php (you don't enter this url in Blogsy but that is the url it will use to talk to mojoPortal) so we have a handler mapping in our Web.config file that maps requests for xmlrpc.php to our metaweblogapi.ashx handler. This probably only works in IIS 7.x and it may not work if you have PHP installed and configured for your site, but it does work for me.  I don’t have PHP installed so not sure what would happen if it is, but in most hosting control panels you can disable PHP for your site even if it is installed on the server, so hopefully it will work for you.


<add name="WordpressXmlRpcHandler" verb="POST" path="*xmlrpc.php" type="mojoPortal.Web.BlogUI.metaweblogapi, mojoPortal.Features.UI" preCondition="integratedMode"/>


When I first began work on the additional API methods and testing with Blogsy I was getting a lot of crashes. Adding an image from the iPad photostream for example was causing a crash after it uploaded the image to the server. But I contacted the Blogsy guys and they both helped me with advice that the images needed to be named a certain way with a prefix, and they also fixed things in their app to make it more robust and reduce the crashing and now it is working pretty well. I have a first generation iPad and suspect these apps work even better with newer iPads that have more memory available, but it works well enough even on my older iPad.


IMG_0009
You can create and edit posts, you can publish or post as draft. It supports inserting images from your Photostream, local storage, Fickr, Picasso, and even videos from YouTube. You can assign and edit categories. You can create and edit CMS pages with Html content in addition to Blog posts. The only missing feature is the ability to set the parent page of a CMS page so you can’t manage the site hierarchy the same as you can with Windows Live Writer, but who knows if enough people request it maybe they will add support for parent pages in a future update to Blogsy.


The additional support for the Wordpress API is included in mojoPortal 2.3.8.1 but I’m just now getting around to documenting it so that people know they can try it. If you have an iPad I hope you’ll give it a try. If you have any troubles with it or any feedback positive or negative let us know. In theory it should work with any Wordpress client. While Windows Live Writer is still the best Windows app for blogging, in the Mac world apps like MarsEdit should theoretically work though I haven’t actually tested it yet.


A quick shout of thanks out to the Blogsy guys for their help and support. I highly recommend you give their app a try if you have an iPad. Its very inexpensive ($5 if I recall correctly), I actually think they could get away with raising the price a bit because it is the best blogging tool currently available on iPad and they are very passionate about it and constantly improving it and listening to the feedback from their customers.


Follow us on twitter or become a fan on Facebook


follow us on twitter become a fan on facebook


Joe Audette  ...Tweet This

Thursday, February 23, 2012  |  From mojoPortal Change Blog

Our first site for this month's mojoPortal Sightings is Collins Language Pioneers in Dictionary Publishing Since 1819. Thanks to Vijay Karla for letting us know about this one.


Collins Language


 Our good friends at DM2 Creative Marketing Communications also submitted a nice site for Umbrella Collection.


Umbrella Collection


We also received a nice testimonial from the California Commission on Peace Officer Standards and Training. We featured their site in a blog post back in December 2010, when they first launched their site on mojoPortal. Recently they took their site mobile using our add on product Mobile Kit Pro.


California POST Mobile version



My name is Mike, I'm the web applications developer at the Commission on Peace Officer Standards and Training (POST for short). We've been using MojoPortal at POST for over a year now. We recently bought and implemented a mobile site using your Mobile Kit Pro. Prior to this I had hand coded a JqueryMobile/HTML version of our mobile site with a small subset of the pages available on the full site. With MobileKitPro we now allow our users to access all the pages available on the main site on mobile devices. Over the past year and a half we have created custom modules for MojoPortal, I was very impressed that most of these modules worked with the new mobile site without much tweaking.


Thanks so much for your hard work on MobileKitPro.


You're welcome to come check out our site on your Android/iPhone at http://post.ca.gov


-Mike

We've had similar feedback from quite a few customers using Mobile Kit Pro, it really does make it very easy to deliver a good experience for iPhone, Android Phone, and Windows 7 Phone. Although we don't offically support Blackberry mainly because we don't have a device to test with, Mike also told us it is working well for their Blackberry users.


We'd love to hear about the sites you are bringing online with mojoPortal. If you have a high profile site or a design that you're particularly proud of, or a site showing custom features you've built on mojoPortal, let us know, maybe we'll feature your site(s) in a blog post.


Follow us on twitter or become a fan on Facebook


follow us on twitter become a fan on facebook


Joe Audette  ...Tweet This

Thursday, January 26, 2012  |  From mojoPortal Change Blog

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

What’s New?

Security Updates


Stronger password hashing for hashed password format. Previously we were using MD5 without salt, but now we use sha512 with a random 128 character salt per user. Existing users will be automatically updated to the stronger hash the next time they login.


For encrypted passwords we’ve also updated to use a 128 character random salt per user. Existing users will be updated with a salt the next time they login.


In version 2.3.7.6 we changed the SSL behavior to keep users in a secure session once they sign in. After the release we noticed that the canonical url was using https for secure requests and http for insecure requests which could affect SEO since the canonical url should not vary. We’ve changed it in this release such that if the page does not require SSL and the site does not require SSL for all pages, then the canonical url will use http, otherwise it will use https. This way it will be consistent and not vary to make sure there is no inconsistency if search engines happen to crawl the pages using https.


When a user’s roles are changed, the role cookie will now be updated automatically on the next authenticated page request. Previously, if you added a user to a role or removed him from a role he needed to logout and login again to get the new role cookie.

Usability Improvements


We’ve made the role permissions more clear on Page Settings and Feature Instance Settings. There has been some confusion in the past about a special case of permissions. By default Administrators and Content Administrators can access and edit any content without adding them to the allowed roles, but we had a special case where if you set the allowed roles to only Administrators then the content could be locked down to only Administrators and Content Administrators would no longer have access. In the past this has not been an obvious feature from the UI and users who did not know about that feature would mistakenly check the box for Administrators, accidently locking out Content Administrators. We’ve now made it more clear in the UI with radio buttons above the role lists for Page and Content View and Edit Permissions like this:


page-permissions


Note that if you want to lock some content down so that only Administrators can access it, you should set both the page view/edit permissions and the feature instance view/edit permissions to Only Administrators. Otherwise if you only secure the page, Content Administrators can still access the content instance from Content Manager outside the context of the page security.


A related change is that now if you have more than 20 roles, by default we use separate pages for page and feature instance permissions, and the site level permissions have been moved out of the Site Settings page into their own pages. This was done because of a change in behavior in ASP.NET after a recent security update. Now if a page is using postback with more than 1000 form elements, it causes an error, and we moved these things to reduce the number of form elements on a page because if you have a lot of roles the checkboxes for each role for each permission adds up to a lot of form elements and combined with other form elements on the site settings page and hidden elements used for viewstate some users were getting errors when they would save site settings due to too many form elements. There is a workaround to allow more form elements but we wanted to make it work without doing that so it seemed like a better idea to reduce the number of form elements by not having as many things all on one page. We also did some viewstate optimization to reduce un-needed viewstate in some features.


We also added paging to the /Admin/SecurityRoles.aspx page which shows the users for a given role, and we made the feature instance settings page use the same skin as the page when using page specific skins.

Blog Improvements


The blog now shows the post categories for a post in the post list and in the post detail. We’ve also implemented more of the Wordpress API, so in addition to being able to use Windows Live Writer, it is also now possible to use Wordpress clients such as the Blogsy app for iPad. I’ll be documenting that soon but basically you configure it as if you were using Wordpress.

Html Content Improvements


Several people have reported problems when trying to use javascript in the Html Content Feature, the WYSIWYG editors such as CKeditor and TinyMCE tend to do some “cleanup” on the markup which sometimes removed things that people intended to be there. In CKeditor for example you could get around it by saving while still in Html view, but the next time you opened the content in the editor it would run the “cleanup” and mess up your javascript. For content instances where you are using javascript and just want to edit the raw html without interferance from the WYSIWYG editor, you can go into the settings and un-check the box for “Use WYSIWYG Editor?”, and then it will just use a plain text area when you go to edit that content instance.

Most Additional Language Resource Files are Now In a Separate Download


As the number of translations and partial translations of resource files has grown over time, it has added to the size of the download, but more importantly it has increased the amount of time it takes for the ASP.NET compiler to compile the files for the initial request when a site is first started up, or the application pool is recycled such as when deploying an upgrade. Each of those .resx files is compiled by the ASP.NET compiler and over time as we have got so many of them it has become too much and it adds significant time to the initial site startup. So we now have a separate languagepack.zip that has the additional languages. You can copy the language resource files you need from there into your /App_GlobalResources folder. For those upgrading, you may already have a lot of existing resource files in that folder that you don’t need. My advice would be to delete the languages you are not supporting in your site from the /App_GlobalResources folder just before upgrading. Do not delete the English resource files though because those are needed for fallback when other languages have missing keys. The English files are named without a language code like Resource.resx and BlogResources.resx whereas other languages have a language code like Resource.ru.resx and BlogResources.ru.resx for Russian. The main package now only contains the resource files for English and Italian and the other languages are all in the languagepack.zip

WebStore Improvements


The way payment gateways was plugged in in the past for card processing gateways like Authorize.NET and PlugNPay was kind of a mess, it is now a true provider model so that new gateways can be implemented in separate assemblies (dlls) and plugged in by configuration, so it should be easier now to implement new gateways. I’ll be documenting this soon. It doesn’t affect PayPal or Google Checkout because those are special cases where we don’t process the credit card payment on our own site, it happens at the PayPal or Google Checkout site and those payment gateways can be used in addition to a standard card processing gateway where the user doesn’t leave your site to complete the transaction. The new provider model is only for standard card processing gateways.


There was also some redundancy with the old way we implemented Authorize.NET and PlugNPay, they each had their own separate log for logging transactions which was redundant and would have only become worse if we kept adding new logs for each new payment gateway, so we now have a consolidated payment log used by all standard card processing gateways (ie ones that implement IPaymentGateway provider). The upgrade script will migrate existing data form the old Authorize.NET and PlugNPay Logs. Since our add on features Web Invoice Pro and Event Calendar Pro also use the payment gateways, we have corresponding upgrades of those features and you should upgrade them at the same time as you upgrade mojoPortal to make sure that going forward new transactions are being logged in the new common payment log (Note that this really only matters if you’ve been using Authorize.NET in those add on products).


In WebStore it is now also possible to move an order from one site user to another one on the AdminOrderDetail.aspx page. I’ve needed to do this in the past when the user who completed the order no longer works at the company that purchased a product so a different user needed to be able to get the product updates.

Miscellaneous


The Feed Manager now supports relative urls for use with internal feeds using the ~/ syntax to represent the site root.


When using Folder based child sites with related sites mode, closing the master site now closes all the sites


FCKEditor has been removed and is no longer included with mojoPortal because it is no longer kept up to date and doesn’t work well with newer browsers. CKeditor is the new generation of FCKeditor and we’ve included both of them for quite a while. Note however, that if you are upgrading from an older version, the FCKeditor files are still on disk from previouse installation, we are not deleting files during upgrades, so if you really wanted to keep using FCKeditor you could re-enable it by using a custom configuration file to plug in FCKeditor. But, my advice is don't use it, it has problems in newer browsers like IE 9 anyway and CKEditor is a better product.


Fixed a bug where the Janrain Engage sign in system wasn’t working correctly when using multiple sites with related sites mode, we’ve also updated to the newer Janrain Engage widget code.


Fixed some issues with theme caching where it wasn’t always loading the correct theme.skin file when using page specific skins.


Fixed a problem where the SiteRoot was being cached as a property on SiteSettings and then used in various places to build urls. The problem was that if you were accessing the site with more than one url such as using a domain name and by ip address, the cached site root might not be correct for the context of a specific request. This property has now been deprecated and all places in mojoPortal where we were using it are now using SiteUtils.GetNavigationSiteRoot() to make sure the site root is calculated in the context of the current request.


Joe Audette  ...Tweet This

Wednesday, December 28, 2011  |  From mojoPortal Change Blog

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


The major highlights of this release are support for Artisteer 3.1 and new Audio Player and Video Player features contributed by our newest team member Kerry Doan.

Artisteer 3.1 Support


For those who don't know Artisteer is a web desgin tool that makes it easy to create attractive web designs without any knowledge of HTML or CSS. Artisteer 3.1 was released on November 30 and I think it is the best version of Artisteer so far so I wanted to make it even easier to design skins for mojoPortal than it has been in previous versions. So we created a whole new set of Artisteer 3.1 skins that are included in this release of mojoPortal and we moved most of the older skins into the extra-skins.zip download that we make available with each release.


a skin designed in Artisteer 3.1


We've made a skin for each of the possible layout configurations in Artisteer 3.1, so the main thing is selecting the correct skin to start with as indicated in the documentation. In previous versions we didn't have examples for all the possible combinations so it sometimes required editing the layout.master file, but for this release one of the included skins should have exactly what you need in the layout.master file and as long as you choose the right one it should work much easier. The .artx files for all of the new designs are also available in the ArtisteerFiles.zip in case you'd like to modify any of the designs using Artisteer.


The changes in mojoPortal to support Artisteer 3.1 required some changes in the theme.skin file for skins created in older versions of Artisteer, so those of you with skins created in older versions will need to edit the theme.skin file of your existing skins as indicated in the  Important Skin Changes sticky thread in the design forum. You should always review that thread and the Upgrading From Previous Versions article before upgrading.


Speaking of skins, some of you have asked for the skin that we used previously on this site before our new design. That skin, designed by Joe Davis of i7MEDIA is now available in our extra-skins.zip and is named i7media-whitenblue

Audio and Video Players


The New Audio and Video features based on jPlayer are also an exciting addition to the built in feature set.


Audio and Video Players


Huge thanks to Kerry Doan for his hard work on these features.


There are also a number smaller improvements and bug fixes for things reported in the forums since the last release, and there is a change in behavior when using SSL. We no longer redirect out of SSL on pages marked as not requiring it for reasons discussed in the new document Use SSL.


Follow us on twitter or become a fan on Facebook


follow us on twitter become a fan on facebook


Joe Audette  ...Tweet This

Tuesday, December 27, 2011  |  From mojoPortal Change Blog

Hope everyone had a Merry Christmas and are still enjoying the holiday season as we approach the new year!


This month is going by quickly but I wanted to get in our usual monthly post of mojoPortal sightings. DM2 Creative Marketing Communications has been cranking out the mojoPortal sites lately.  They were also the designers of last months sites, and of course we are fans of their work since they also created the design for this site.


Road Tankers Northern Ltd is the UK's leading tanker specialist.


Road Tankers Northern


Switch Training and Consultancy Limited provides training and consultancy to help organizations better manage their finances.


Switch Training


We'd love to hear about the sites you are bringing online with mojoPortal. If you have a high profile site or a design that you're particularly proud of, or a site showing custom features you've built on mojoPortal, let us know, maybe we'll feature your site(s) in a blog post.


Follow us on twitter or become a fan on Facebook


follow us on twitter become a fan on facebook


Joe Audette  ...Tweet This

Wednesday, December 07, 2011  |  From mojoPortal Change Blog

Thanks to Kerry Doan for implementing and contributing support for jPlayer in mojoPortal, the next release will include an Audio Player and a Video Player feature.


medai player screen shot


You can see it in action now on our demo site. We should be shipping another new release of mojoPortal that includes these features by the end of the month.


Follow us on twitter or become a fan on Facebook


follow us on twitter become a fan on facebook


Joe Audette  ...Tweet This

Thursday, December 01, 2011  |  From mojoPortal Change Blog


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



This is a significant release with lots of new goodness.



Improvements to Windows Live Writer support (in the Blog)



A completely new implementation of metaweblog api with new support for Creating and Editing CMS pages in addition to Blog posts.





Support for Windows Azure AppFabric cache and new guidance for hosting mojoPortal on Windows Azure.



New option to close a site so that it can only be browsed by Administrators and Content Administrators.



New button in Add/Edit Pages (aka PageTree.aspx) to resort child pages of the selected page alphabetically.



Use of WYSIWYG editors CKeditor and TinyMCE is now possible in IOS 5 devices.



Upgraded to TinyMCE 3.4.7



AllowPersistentLogin setting has been promoted from a Web.config setting to a site setting.



Default roles for new root level pages has been promoted from a web,.config setting to site settings.



If you were using the Web.config settings for the 2 items above you will need to go into site settings and specify the settings there since the web.config settings are no longer used.



New permission for Roles That Are Allowed To Set Page Level Skins (when page level skins are enabled).



New feature to reset a guid parameter used in the URL for the csshandler, by resetting the guid you can force all users to re-load the CSS for the skin.



In permission settings, Administrators and Content Administrators roles are filtered out of role lists for permissions where they don't need to be added because they have intrinsic permission as special system roles.



File Dialog used in the editors now shows meaningful messages when a user's file system quotas prevent upload



Updated to jQuery 1.7.1 and jQueryUI 1.8.16 when using the Google



CDN


WebStore


Improvements



There is a new provider model for OrderCompletedEventHandlers that allows developers to plugin custom code that will be executed after payment clears on an order.



It is now possible to checkout in webstore with a zero



balance


Forum


Improvements



New setting to copy the posting user on the notifications.

New setting to suppress email notifications when a user edits an existing post.

New setting to limit the timespan in which a user may edit his post.



Follow us on twitter or become a fan on Facebook



follow us on twitter become a fan on facebook



Joe Audette  ...Tweet This

Monday, November 28, 2011  |  From mojoPortal Change Blog


This month's mojoPortal sightings include Clearview, the UK's leading regional glazing industry magazine.



Clearview



and Total Waste Managers Ltd



Total Waste Managers



Both sites were designed by DM2 Creative Marketing Communications in the UK, the same designers who came up with the latest design for this site.



We'd love to hear about the sites you are bringing online with mojoPortal. If you have a high profile site or a design that you're particularly proud of, or a site showing custom features you've built on mojoPortal, let us know, maybe we'll feature your site(s) in a blog post.



 



Follow us on twitter or become a fan on Facebook



follow us on twitter become a fan on facebook



Joe Audette  ...Tweet This

Thursday, November 24, 2011  |  From mojoPortal Change Blog


Black Friday starts early at Arvixe Web Hosting, starting today, Thursday, Thanksgiving 2011 and lasting for 48 hours.



Arvixe Web Hosting



If you purchase hosting between now and the end of the day Friday you get 50% off their already low prices and the savings is continued for the life of your hosting account, that is you get the same discount ongoing as long as you continue to renew the account.



Not only that but if you click our ad and purchase hosting we get a nice contribution from Arvixe no matter how low the price is for you, so its a big help to the mojoPortal project when you click our Arvixe ads before you buy hosting.  Arvixe is the top financial contributor to the mojoPortal project so we are very thankful to them. If you need web hosting now is a really good time to sign up.



We are very thankful for all of you in our awesome mojoPortal Community and wish you all a very Happy Thanksgiving!



 



Follow us on twitter or become a fan on Facebook



follow us on twitter become a fan on facebook



Joe Audette  ...Tweet This

Monday, November 07, 2011  |  From mojoPortal Change Blog


More and more people are accessing the web using smart phones and tablets and while much progress has been made to provide a good web experience for those devices, until now one major shortcoming has been the lack of support for use of web based WYSIWYG editors like CKeditor and TinyMCE. The problem has been that while the WYSIWYG editors would display ok, they did not trigger the keyboard input so they were not usable because clicking/touching them did not put the focus in the editor and did not bring up the keyboard. The best solution we could come up with was to force the use of a plain old textarea which would trigger the keyboard but required entering raw html making it more tedious to use and requiring knowledge of html from the user. We tried to make it a little better by using MarkitUp to at least provide a toolbar with some helpful html elements as shown below in this screen shot from an old iPhone 3.



iPhone 3 editor



HTML 5 actually defines a contentEditable attribute which is intended for use in making web pages editable but it wasn't supported in previous versions of IOS/Mobile Safari until now with the recent release of IOS 5. Fortunately for us the makers of the popular open source WYSIWYG editors have been working on this using the beta versions of IOS 5 so that now since the official release both of these editors can work in iPhones and iPads that have IOS 5. Shown below is a screen shot of TinyMCE used in iPhone 4S.



TinyMCE in iPhone



We've modified mojoPortal to take advantage of this and not force the plain textarea if we detect an IOS 5 device. This change is already in our source code repository and will be in the next release of mojoPortal. You can also try it out on our demo site using your IOS 5 device. For other devices we still use the textarea approach but I suspect that over time we will be able to enable the WYSIWYG editors for even more devices.



I'm very excited that this major limitation has been overcome in IOS 5 and especially for iPad which is a great web browsing experience and now is even better since you can actually edit your content easily. Huge kudos to the developers of TinyMCE and CKeditor for their great work in supporting mobile devices.



 



Follow us on twitter or become a fan on Facebook



follow us on twitter become a fan on facebook



Joe Audette  ...Tweet This

Monday, October 31, 2011  |  From mojoPortal Change Blog


Any mojoPortal community members in or near Raleigh, North Carolina?



I'll be attending IndieConf on Saturday November 19, 2011 in Raleigh, NC. IndieConf is a small conference for independent web developers and designers, freelancers and entrepreneurs. I'll be participating in a panel discussion about transitioning from a consulting business to a product sales business. It was kind of a last minute thing so I'm not scheduled for any presentations about mojoPortal, but I'll be hanging out and attending various sessions in addition to the panel I'll be participating in. I'd certainly enjoy getting to meet some mojoPortal community members there.



indieconf 2011 Raleigh, NC November 19, 2011



If you are in the area and interested in attending contact me (joe dot audette at g mail dotcom). I can give the the first 3 people who contact me a discount code for free admission, and after those are gone I can give any number of people a discount code for $30 off the registration fee.



 



Follow us on twitter or become a fan on Facebook



follow us on twitter become a fan on facebook



Joe Audette  ...Tweet This

Wednesday, October 26, 2011  |  From mojoPortal Change Blog


As many of you know mojoPortal is in the Windows Web Application Gallery and can be easily installed using the Platform Installer. However when we make new releases of mojoPortal it can be several weeks before we get the new version into the Web Application Gallery. We usually wait a little while to make sure we shake out any bugs before submitting updates to the Gallery and then once we do submit it it may take a few days to a week before it is updated there.



Now we have a custom product feed that can be used in the Platform Installer and we can update our own feed immediately when we make new releases. Our custom feed also has packages for SQL CE, SQLite, PostgreSQL and Firebird Sql packages of mojoPortal, in addition to the package for MS SQL, whereas the only package we have in the Web App Gallery is for MS SQL.



The product feed is brand new and I just revamped our article Installing mojoPortal Using the Web Platform Installer to provide full step by step details about how to add our product feed and install mojoPortal.



Once you've added our product feed to the Platform Installer a new mojoPortal tab appears and shows all of our latest packages for .NET 4.



mojoPortal Feed in the Platform Installer



The Platform Installer can install SQL Express if you don't already have it installed. Of course the packages for SQL CE and SQLite are the easiest to install because they are file based databases and have no database software that needs to be installed. You can install the packages for PostgreSql or Firebird but for those packages you would have to manually install the database server software and set your connection string in user.config.



We're always looking for ways to make things easier and I've been meaning to get this product feed put together for quite a while now. I once had made a feed as a static xml file but it was not easy to keep up to date so I ended up not keeping it up to date. The new feed is a custom .ashx file that I can easily edit with the new file information and it generates the feed, so it will be much easier to keep it updated as we make new releases of mojoPortal.



 



Follow us on twitter or become a fan on Facebook



follow us on twitter become a fan on facebook



Joe Audette  ...Tweet This

Tuesday, October 25, 2011  |  From mojoPortal Change Blog


I've just uploaded a new release of Form Wizard Pro version 2.6.0.4. Like the previous version this release requires mojoPortal 2.3.7.0 or higher.



As always it is a free upgrade for existing customers who have purchased Form Wizard Pro (sign into this site as the user who purchased, then click the "My Account" link at the top of the page then "Order History").



Form Wizard Pro



For those who don't know, Form Wizard Pro makes it very easy for you to create custom forms and simple surveys on your site with drag and drop arrangement of the questions. It can be used for a variety of things such as custom contact forms, quote requests, job applications (it supports file uploads), simple surveys (multi page forms), etc. You can browse the submissions as a grid or page through them one at a time and you can export to Excel or Word. You can also import and export questions or even complete form definitions. Give it a try on our demo site.


What's New in This Release?



  • New setting to enable question aliases. Question aliases allow you to use a shorter question name in the grid views and data exports. This can be very helpful since long question text can be unwieldy as a column heading in a grid.

  • New setting to enable option aliases for list type questions (checkboxes, radio buttons, drop down list question types). Similar to question aliases, you may want to display a longer value to the user but use a shorter value as the actual result. For example you may show a list of stores and display the street address which is more understandable for the user who is submitting the form, but internally you may want to use store numbers as the actual submitted result.

  • A way to visually group questions. We added a new setting for "Flatten Pages as Groups", if chedcked then what would normally be a multi page form will have all the questions on a single page, but the questions will be grouped into divs with a CSS class="qgroup qgroup1" where the numeric part of the second class is based on the page number. This way you have a class that can be used to style groups consistently or style specific groups differently.

  • It is now possible to override the text on the "Submit" button.

  • Vertical layout instead of grid layout when exporting to Word.


The sales of our add-on products is what makes the continued development of mojoPortal possible. Why not make your site even better and support our work?



 



Follow us on twitter or become a fan on Facebook



follow us on twitter become a fan on facebook



Joe Audette  ...Tweet This

Monday, October 24, 2011  |  From mojoPortal Change Blog

This month's mojoPortal sightings includes the Appraising in Delaware site designed by IndigoTea, as well as the IndigoTea site.


Appraising in Delaware a site powered by mojoPortal


I like the retro 50's style and the laid back pastel colors.


I also like the IndigoTea site, and its always nice to see designers that use mojoPortal for their own sites as well as for their customers.


IndigoTea a site powered by mojoPortaal


IndigoTea is also giving away a couple of free mojoPortal skins this month, one of them naturally has a Halloween design since it is October


We'd love to hear about the sites you are bringing online with mojoPortal. If you have a high profile site or a design that you're particularly proud of, or a site showing custom features you've built on mojoPortal, let us know, maybe we'll feature your site(s) in a blog post.


Follow us on twitter or become a fan on Facebook


follow us on twitter become a fan on facebook


Joe Audette  ...Tweet This

Thursday, September 29, 2011  |  From mojoPortal Change Blog


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



Since the last release, the focus of our work has been on improved web farm support. We've completed abstraction layers for the file system and for caching, and we've implemented a log4net appender that can log to the database. We are still working on various providers that can plug into the new abstraction layers and other improvements, so our work on web farm support will continue into October. We've almost completed our support and guidance documentation for Windows Azure, we have some of the web farm documentation online now, but we will be completing that work and making an announcement about it soon. After that we will turn our efforts to more traditional types of web farms using the Amazon EC2 cloud, and the Microsoft Web Farm Framework.



So, for now much of the web farm improvements are just architectural changes that won't be things users will notice. Other highlights of this release include:



  • Implemented an option to log errors and informational logging to the database instead of the file system

  • Upgraded to TinyMCE 3.4.5

  • Upgraded to CKeditor 3.6.2

  • Upgraded to the latest AjaxControlToolkit

  • Updated to latest version of Recaptcha library

  • Updated the google maps to use the new v3 API, thanks to Jamie Eubanks for his work on this

  • Added Whois ip address lookup dialog in most places where ip addresses are displayed


Updated Add On Products



The update to AjaxControlToolkit required us to also make new releases of Event Calendar Pro, Form Wizard Pro, and Web Invoice Pro, because these features use the AjaxControlToolkit and they need to use the same version of the AjaxControlToolit as mojoPortal. So you'll need to upgrade these products at the same time as you upgrade mojoPortal. 



Event Calendar Pro 3.4.0.2 includes new links to allow users to easily add events to Google Calendar, Yahoo Calendar, Windows Live Calendar, and Outlook/iCalendar. We also added a new text area that can be shown during event registration to capture additional information from users who register or purchase tickets for events. You can provide instructions that will be shown above the text area to let your users know what additional information is needed. As mentioned above this version was also updated to use the latest version of AjaxControlToolkit to keep it compatible with the latest version of mojoPortal.



Form Wizard Pro 2.6.0.3 includes a minor improvement to allow file uploads to be configured as optional instead of required. It also was updated to use the latest AjaxControlToolkit for compatibility with mojoPortal 2.3.7.0.



 



Vote mojoPortal for the 2011 Open Source Awards



 



Follow us on twitter or become a fan on Facebook



follow us on twitter become a fan on facebook



Joe Audette  ...Tweet This

 mojoPortal Change Blog News Feed 

Last edited Jul 17 2011 at 5:00 PM by joeaudette, version 30