mojoPortal 2.6

mojoPortal 2.6

Today, we're pleased to announce the release of mojoPortal 2.6. We had planned on releasing this version much sooner but we kept adding features! In the future, we're planning on releasing about once per month. Larger features will take more time but our community shouldn't wait for smaller enhancements.

With this release, we're introducing SuperFlexi and the Blog Post List modules. We also have a lot of enhancements and new features for existing modules. Finally, we've made some improvements to Framework and we're releasing a new free skin called "Scout", which can be downloaded from the mojoSkins project.

Where to Get It?

Head over to our GitHub Releases Page.

SuperFlexi

The SuperFlexi module is intended to serve as an easy templating system that works as a go-between for front-end developers and users. Developers can easily create "Solutions" that determine, to a large extent, the module's uses; controlling both what kind of input users can store in the database and what markup is created on the page. Users can then simply select a "Solution" in the module settings, and create their content with straightforward easily-understood forms, which will then be rendered as determined by the developers defined markup.

SuperFlexi aims to give end users much easier control over their content, even when that content might normally be quite complicated (as in the case of sliders, tables, structured or gridded HTML, and many other things). Possible uses for SuperFlexi are virtually limitless and we're really excited to be adding it as a core module in mojoPortal 2.6.

With mojoPortal 2.6, we're including 8 solutions; Accordion, Banner Slider, Icon Blocks, Image Blocks, Personnel List, Quick Links, Social Media Links, and Tabs. Each of these is demonstrated on the mojoPortal Demo Site. Please note, SuperFlexi does not currently support SQLite and PGSQL. We should have support for those database platforms in a couple of weeks.

To learn more about SuperFlexi, check out the documentation. We've also created a new Forum, just for SuperFlexi.

Blog Post List Module

So, for a very long time, the official guidance for showing a list of blog posts on pages other than the page your blog is on was to use the Feed Manager to consume your blog's RSS Feed. This meant that the Feed Manager had to make an http(s) connection back to your site, consume the feed, cache the feed contents in the database, and then query the database for the cached contents. Granted, the connection and subsequent caching only happened on a set interval but it was very unnecessary. We decided to cut out the middle-man (Feed Manager) and create a module which connects directly to a chosen Blog module and displays the posts. We went a step further by creating a Razor View Engine for this new module. Yes, you read that right, Razor. You can create Razor views to control the display of this new module.

To learn more about the Blog Post List module, head over to the documentation.

Blog Updates

We spent some time on the Blog and besides the wonderful new Razor-enabled Blog Post List, we have added Post Featured Image, Blog Featured Post, and automatic Meta Content creation for Facebook, Twitter, and Schema.org.

Post Featured Image

You can now easily add a featured image to each of your blog posts. This image will be used in the meta elements added to the page for Facebook, Twitter, and other social media outlets. The image is also treated a bit special by the Blog in that it is shown at the top of posts. More on the Post Featured Image.

Featured Post

This feature allows you to set a single post in your blog as "Featured". That post will always be at the top of the post list, even when using the Blog Post List module. More on the Blog Featured Post.

Automatic Meta Content Creation

Sharing posts on social media is a lot easier now because the special meta content markup that is necessary for sites like Twitter and Facebook to show correct titles and post images is now automatically added when you create a post. You can even edit the meta content that is created by editing the post and clicking the "Page Meta Data" tab (we're gonna change that to "Post Meta Data" in the next release).

Other Blog Updates

  • Added Display Settings for the Blog module to allow for easier skinning via CSS classes
  • Updated to actually move the blog navigation in markup instead of changing places with CSS * floats for easier styling
  • Cleaned up a lot of the default markup
  • Panels with no child elements will no longer be rendered
  • Added option to include comment body in comment notifications
  • Added SkinID="Blog" to CommentsWidget
  • Removed "Feed Links". These were links to old MSN, Yahoo and other defunct feed managers.
  • Added option to allow Post Title to be used as Page Heading when the PageHeading (or PageTitle) control is used in the layout.master for the skin

ASP.NET 4.6.2

mojoPortal now requires ASP.NET 4.6.2, which was released in August of 2016. Most hosting providers already support 4.6.2 so you should be fine upgrading your site. If your host doesn't support it and you purchase a hosting plan with i7MEDIA, we'll move your site for free.

TLS 1.2

mojoPortal will now enforce using TLS 1.2 for outgoing connections. This is important for connections to payment processors like Authorize.Net, WorldPay and PayPal.

Site Settings

The Site Settings page has a lot of options for configuring your site. We're actually working on moving more stuff from the web.config to the UI so it'll be easier to configure your site. Knowing that we are going to be adding even more to Site Settings, we implemented a few changes and reorganized some things to make using the Site Settings page easier. In the future, we plan on breaking this single page up into several smaller and more task oriented pages. In this release, you'll notice the following:

  • "Site Title" field moved to the General tab
  • "New Site" link removed (to add another site, go to Administration > Site List)
  • Skin options grouped on the General tab
  • Content Editor options grouped on the General tab
  • Registration options grouped on the Security > Main tab
  • User Account options grouped on the Security > Main tab
  • "Avatar System" option moved to User Account group under Security > Main tab
  • Password options grouped on the Security > Main tab
  • Security > OpenID tab renamed to "3rd Party Auth"
  • OpenID options grouped on the 3rd Party Auth tab
  • Windows Live options grouped on the 3rd Party Auth tab
  • "Host Name Mapping" and "Folder Name Mapping" moved to a single tab called "Site Mappings".
  • "SMTP Settings" tab renamed to "Mail Settings"
  • "Mail Settings" tab is always visible with information on how to enable the fields there. New sites will, by default, use this area for SMTP settings. You can enable this on your site by following the instructions here.
  • "Default Email From Address" and "Default Email From Alias" moved to "Mail Settings" tab
  • Reordered Recaptcha Site/Secret keys to match order on Recaptcha site
  • Added several contextual notes throughout the Site Settings page

Change Log

This change log isn't exhaustive because a lot of changes are already listed above. If we didn't list it above, it should be listed below.

Core

  • Updated mojoPortal to ASP.NET 4.6.2 and C# 7
  • Updated mojoPortal source code to use latest NuGet package management
  • Added RazorBridge method to allow use of MVC Razor Templating in Web Forms controls
  • Added MVC HTML Helper for internal Avatar and Gravatar use in Razor templates
  • Added Link control for inside/outside markup of the link
  • Added AutoEscapeStringForCsv method for exporting data in CSV format
  • Updated Gravatar in Forums to link to mojo user profile by default
  • Fixed File Manager/Page Picker for folder sites and sites running in a virtual directory
  • Moved First Name and Last Name fields to the General tab in the User Profile.
  • Added option to include comment body in notifications
  • Added ExportDynamicListToCSV method to ExportHelper
  • Added ImportHelper with GetDynamicListFromCSV method
  • Removed calls to jQueryFileTree and removed from ClientScripts
  • Removed calls to jQueryLayout
  • Removed call to greybox from Contact Form
  • Fixed possible XSS bug in help dialog
  • Removed WebStore from core (will be available as a separate download from the AddOn store)
  • Cleaned up user.config.sample file
  • Standardized on "Login" instead of "Sign In" (both were used before now)
  • Added Security Protocol information to "Security Advisor" (Administration > Security Advisor)
  • Added CombinePath method to DiskFileSystem file system provider.
  • Added FolderVirtualPath property to WebFile
  • Added NameProperty and ContentProperty to ContentMeta. This allows for creation of meta elements with custom names <meta property="foo" value="bar" /> instead of only allowing for <meta name="foo" content="bar" />

Skinning

  • Added FormGroupPanel control for settingrows to control their classes
  • Updated Site Settings page to use new FormGroupPanel control
  • Updated the Layout.Master.cs to expose SiteSettings (siteSettings), PageSettings (currentPage), isCmsPage and isMobileDevice to the Layout.Master for richer skinning functionality (Check out the layout.master in the Nature theme)
  • Updated CSSHander to allow for "https://" and non-http-specified ("//my-domain.com/") url calls
  • Updated Avatar.cs with new ExtraCssClass property
  • Cleaned up markup of CommentsWidget
  • Added themeable properties to CommentsWidget to help with skinning
  • Added themeable display settings for Contact Form
  • Cleaned up markup of the RelatedNewsletterSetting control
  • Cleaned up markup of HTMLCompare feature (used by version history)
  • Fixed Inline Editing in HTML Module for selecting files/images
  • Fixed CSSHandler for HTTPS URL calls
  • Fixed missing CKEditor Image2 Alignment Classes
  • Added InsideTopMarkup to replace LiteralExtraTopContent in BasePanel
  • Added InsideBottomMarkup to replace LiteralExtraBottomContent in BasePanel
  • Removed the .LESS CSS Utility from the Administration area. We recommend using a tool like Prepros for LESS management.

Picking up steam

mojoPortal has been getting some media attention lately, like this article from HostingAdvice.com. We've got some exciting new updates coming soon too, including new modules, expanded blog features, and new content creation tools. We've been working hard on things and hope to have a release ready soon.

We can truly appreciate a CMS that simplifies content entry and management for novice website owners without compromising the functionality demanded by seasoned developers. Kudos to the mojoPortal team for optimizing web development for folks across the board!

Thanks to the community for remaining patient as we work on these updates. mojoPortal is going to be better than ever.

mojoPortal 2.5

The team here at i7MEDIA is so very excited to release mojoPortal 2.5! This is our first release since taking over the mojoPortal project and we're already gearing up for the next one! 

Where to Get It?

Head over to our GitHub Releases Page.

Major Updates

  1. A new File Manager has been added which replaces all three managers in previous versions.

    Using the new File Manager

    FEATURES

    • Create folders
    • Upload multiple files
    • Delete files and folders
    • Copy files new
    • Move files from one folder to another new
    • Rename files and folders
    • Compress multiple files into a .zip file new
    • Extract a .zip file into the current directory new
    • Download single files and download multiple files as a .zip file [3] new
    • Edit document type files [1] new
    • Preview image files
    • Select files/mojoPortal pages to return to the WYSIWYG editor
    • Search files in currently viewed folder new
    • Change manager view between List and Grid new
  2. The new Page Manager

    Page Manager Pro has been added to the mojoPortal core. Now, everyone can enjoy easier page management with the new Page Manager. Drag-and-drop functionality makes it easy to move pages while the enhanced UI makes understanding a site's hierarchy much simpler, particularly on larger sites. We're still building the documentation on this feature but it's really self-explanatory.

Minor Improvements and Changes

  • CKEditor 4.6.2 (image2 extension is included by default now) with new moono, moono-dark, and moono-lisa (default) skins.
  • Image File Extensions are now configurable using web.config settings.
    <add key="ImageFileExtensions" value=".gif|.jpg|.jpeg|.png|.svg" />
  • Updated to Colorbox 1.6.4 and changed Colorbox theme configuration. See Important Skin Changes.
  • Added "RssFeedLinkFormat" display setting for Blog. See Important Skin Changes.
  • Added web.config setting to control showing feed links with https. Defaults to true. Set to false if this causes you problems with a feed reader.
    <add key="UseSSLForFeedLinks" value="true" />
  • Added Framework as the default skin and removed Artisteer skins. Artisteer is still supported but we recognize that the included Artisteer skins aren't very pretty so they have been removed from the release.
  • Renamed "Page List" and "Add/Edit Pages" to "Page Manager".

Bug Fixes

  • Removed non-existent local-fs.pubxml file reference from mojoPortal.Web.csproj
  • Fixed renaming of files on upload so all files are renamed properly.
  • Removed unneeded apple-touch-icon.png from the root of the install. This was causing the mojo dog image to show up on tablets. Skin developers should follow these instructions for adding touch icons to their skins.
  • Fixed WebStore FlexCartLink where IncludeCartTotalWhenZero did not do anything.
  • Fixed WebStore FlexCartLink where ModuleGuid was actually supposed to be StoreGuid. Neither are really needed so we don't do anything with ModuleGuid on this control anymore.
  • Fixed an issue where when you create a new site it wouldn't copy over folders inside a skin that were more than 1 level deep.

mojoSkins Project Release V1.0

Making mojoPortal Beautiful

Our team at i7MEDIA have been developing mojoPortal skins for a long time, and we've done a lot of fine-tuning of our skinning process over the years. Now we want to make the fruit of our labor, the Framework skin, available for the whole mojoPortal community, for free! In light of this, we've just launched our new mojoSkins project with a version 1.0 release. This first release comes as a package of 5 skins: Framework v3.3.7, and four skins created out of Framework using Bootswatch.

Expect Much More to Come!

Framework was always intended to be a very basic skin which we would then build our designs on top of. With this new project, we're going to have to change that direction a little bit, making improvements for its use by all of you. For instance, because it's been a very long time since any of our clients used the Webstore feature in mojoPortal, the current version of Framework in this release doesn't include styles for it. We will be fixing this, as well as adding styles for all of the Pro modules in the near future, fixing any bugs that arise, and making quality-of-life improvements for the end users where we can.

We want to ensure that everything is as good as possible while also keeping the skins as small as possible, since after all Framework is intended to be a base that you use to build your own design on top of, which is why we are also going to be adjusting mojoPortal's core code to better suit being used with skinning systems like Bootstrap and will adjust the Framework skin as needed to reflect those changes. We believe we can greatly reduce the amount of CSS needed in Framework by doing this (though it is already reasonably small).

While the skins in this first release are primarily targeted at other developers, who we want to provide with a solid foundation for skin creation in mojoPortal, we believe they will work well for anyone, developer or not, who wants to create a very clean mojoPortal site.

How Can I use it?

Using the new skins from this project is incredibly easy, here's the step-by-step:

  1. Download the skins from here.
  2. Extract the zip file you just downloaded.
  3. Each of the skins is included in the root of the zip in their own folder. Choose which skin(s) you'd like to use, and copy those folder(s) into the Data/Sites/1/Skins directory in your mojoPortal installation.*
  4. Sign into your mojoPortal site as an administrator.
  5. Click "Administration", then "Site Settings", and on that page, scroll down until you find the select input labeled "Skin".
  6. Your new skin(s) should be visible in the drop-down, select it and hit save.

That's it, you should now see the skin on your own site!

* Note: If you have a multiple site install, change the /1/ in the path described in step 3 to be /#/, where # is the site number of the mojoPortal site you'd like the skin to appear on.

How can I contribute?

We have already begun tracking issues in the project's GitHub repo, and look forward to community involvement as the project evolves. Please report any issues you notice, and feel free to do a pull request if you've managed to fix an issue yourself.

You can also create your own Bootswatch skins out of Framework, and submit them for inclusion in the project, which would be an awesome help.

A New Beginning

i7MEDIA Takes the Helm

It is an exciting day for the mojoPortal project! First, allow me to introduce myself. My name is Joe Davis. I am the Founder and President of i7MEDIA and a longtime supporter of mojoPortal. On Friday, February 3, 2017, I and Joe Audette, Founder of mojoPortal, completed an agreement for the sale of mojoPortal to i7MEDIA. This sale includes the open source project and the commercial modules available on the mojoPortal website from Joe Audette's company, Source Tree Solutions.

I have been using mojoPortal since 2008 and supporting it since 2009. I started my business in 2008 and set out to find a good content management system I could use to build websites for my customers. After a lot of trial and error, I came across mojoPortal and I was immediately drawn to its ease-of-use and friendly forum, fostered by Joe Audette. After 9 years of building sites with mojoPortal, contributing to the core, and providing support to my own clients and those around the world through the forums, I am thrilled that I, and my company, are able to ensure the further development of mojoPortal.

Rest assured mojoPortal will remain open source and there are no plans to change that. We (i7MEDIA) do, however, have plans for expanding mojoPortal to help it stay relevant and to provide the best .NET CMS platform on the market today.

You're sure to be wondering what Joe Audette has to say about all of this. Well, he is very enthusiastic about the new life of mojoPortal:

It gives me great satisfaction to know that I have created something that so many people have found useful and that it will continue to be used and supported by a top community member and his organization. Joe Davis and i7MEDIA have always been the most qualified consultants for mojoPortal other than myself, and I've always had great confidence in referring customers and projects to them over the years. Joe Davis has been a good friend and has been my go to guy when I needed to refer a customer or project that I did not have the capacity for. Whether you need design help, hosting, or custom feature development, i7MEDIA is the team you want with years of experience. mojoPortal was my baby for over a decade, and my baby is in good hands! Long live mojoPortal!

Joe Audette, mojoPortal Founder

What's Changing?

Basic Stuff

At first, we're going to focus on changing small things that will save site owners and site builders time. Some of these items are:

  • Ensuring that settings are logically organized and labeled properly.
  • Removing unnecessary markup (empty divs, excessive <br> elements, etc…).
  • Consolidating DB scripts.

Developer Support

Development of add-ons for mojoPortal isn't necessarily hard but there is a bit of a learning curve and quite a few steps one must take to prepare a working development environment. Our focus will be on cutting down on the number of steps and making the process easier overall. We will also explore possible MVC and WebApi implementations of some features, especially administration features like the File Manager. 

Additionally, we want to engage with the developers already using mojoPortal to get them contributing code to the project. GitHub provides a very simple mechanism for generating pull requests so if you have code you would like to contribute, we would be very grateful.

Beautiful Design

It has always been possible to create beautiful sites with mojoPortal but the built-in skins were not good examples. We're fixing that and we're committed to making sure that mojoPortal is seen as a designer-friendly CMS. To make that happen, we're going to implement some new functionality which will allow UI developers to include options for site owners to control various aspects of their skin.

Documentation Audit

mojoPortal is a fairly well-documented system but there is a lot of stuff that is just not needed anymore, other things have changed, and there's a lot that isn't documented. 

Commercial Add-On Pricing and Licensing

We're working on the licensing and pricing for the commercial add-ons. Some of them are going to be released as open source and others will see their prices change. The server licenses are back and are generally at a lower price than before. To see the new pricing, take a look at the store (we've renamed the page "Add-Ons" because in the near future we're going to have a marketplace so others can sell or list their own add-ons).

Licensing has changed for all commercial add-ons with regard to updates. Now, each purchase of an add-on will give the purchaser a year of updates to that add-on. If you purchase Form Wizard Pro on February 5, 2017, you can continue to download updates to the module through February 5, 2018.

When's the Next Update?

We expect to release a new version in the next couple of weeks with several small fixes, a few clean bootstrap-based skins, and a brand-new file manager to replace both of the current file managers and the link and image picker used in the WYSIWYG editors. That's right, one file manager that does it all. 

We Need Your Help

We purchased mojoPortal and we're committed to it being a success, again. We will need your help to make this happen. If you would like to help with documentation, let us know. If you would like to contribute code, check out how easy it is to submit a pull request. If you would like to help others looking for help, subscribe to the forums.

Here's to the Future of mojo!

I am very excited about the future of mojoPortal. We soft-launched the mojoPortal website over this past weekend and I have already received a few inquiries about what's going on and some messages of support. Thank you for taking the time to read this post. If you have any questions, please feel free to ask them in the forums or send us an email.

Gravatar Joe Davis is the mojoPortal Project Lead and the President of i7MEDIA.