Knowledge is power. We love to share it.

News related to Mono products, services and latest developments in our community.

denis

MonoX Localization (Obsolete)

04/06/2010 By denis 0
This content has not been rated yet. 
Bookmark and Share
Please note that this article is obsolete, please read the following article for more information ASP.NET localization settings in MonoX

Localization is one of the areas in which we made a very significant progress during the past few years. First release of MonoX included only a default support for localization: you were able to localize the user interface elements using the standard .resx approach, but you had to open an additional portal for each of the target languages that were required for localization. Content synchronization was rather difficult, so we decided to redesign this feature and introduce a flexible arhitecture with support for run-time localization. This means that you don't have to use Visual Studio or other tools to change localization resource files; everything can be done through the browser-based administration interface.

A single portal instance can support unlimited number of localized sites, where each site has the same structure, but different (localized) content. You can change the navigation hierarchy and modify the layout of every localized page. Each of the existing pages (administration etc.) can be fully localized using the Language management section. Note that MonoX can use both resource (resx) files and a database to store localization values. You can switch between resx and database modes by changing the globalization tag in the Web.config file. The database mode is specified by adding the following attribute to the globalization key:

resourceProviderFactoryType="MonoSoftware.Web.Localization.DBResourceProviderFactory, MonoSoftware.Web.Localization"

This feature gives you a complete control over the localization process, since it would be impossible to localize all resources at run time (both built-in and custom ones) using only a resx approach. It is possible to export values from database to resx files and vice versa, both for a single page/control or for a whole portal at once. Additionally, MonoX uses a translation engines to suggest a correct translation for each localization resource.

The default portal demo at http://monox.mono-software.com has its localized Croatian version at http://monox.mono-software.com/language/hr-HR/Default.aspx 
denis

MonoX, five years after

04/06/2010 By denis 0
This content has not been rated yet. 
Bookmark and Share
This week we are finally releasing the new version of MonoX, our portal engine built on top of ASP.NET Web Parts framework. The main idea of Web Parts Framework is to let end users create and configure Web pages by dragging in functional blocks (called Web Parts) and setting properties on these blocks. This configuration happens right inside the Web page, using nothing but a standard Web browser. To change a page in the site, you browse to this page, switch to edit mode and change it. Non-technical users can change the layout of their page by dragging and dropping the web parts to different zones on the page. Each of the parts exposes a configuration user interface to change its behavior and appearance.

We have used a concept similar to Web parts in the first commercial release of MonoX portal framework (published during 2003). It was based on a very popular IBuySpy portal application, and introduced drag and drop and visual configuration features that are now accepted in the new Web part framework. However, the initial version was not using the standard API, as it was not available at that time. Nevertheless, it enabled us and our clients to build very sophisticated portal solutions.

This new version of MonoX fully supports all the features of ASP.NET 2.0 Web part framework. To the best of our knowledge, it is the only commercially available product including this feature, as other portal products use proprietary Web part/module architectures. In addition, MonoX fully support all other standard ASP.NET 2.0 features, including personalization, master pages, themes and provider models, and adds significant additional functionality described in the user manual that is a part of the installation package.

There are a few custom large-scale portals that were built on top of the MonoX v2. EmployIreland.ie is one of them; it includes dozens of custom Web parts and shows how far can you go with MonoX. We encourage all potential users to download the trial version and try it on their local machines - there are so many features that cannot be presented on a public Web site.
denis

Integrating your portal with third-party components

11/06/2008 By denis 0
This content has not been rated yet. 
Bookmark and Share
One of the design decisions we had to make quite early was whether to develop our own blog, forum and similar packages, or to use the existing software from third-party vendors. Integrating the old ASP.NET forums (now Community Server) with the first version of MonoX was quite a challenge, as we had to rewrite the portions of the original code, change SQL stored procedures, introduce triggers to keep portal and forum users in sync, etc. At the end, so much effort was invested during the integration process that writing a new package from scratch seemed much more attractive.

This time we again made a quick overview of the existing third-party packages and soon realized that we will have a much easier job this time. There are a few excellent open source systems - it wouldn't make too much sense to reinvent a wheel with yet another blog or forum or whatever. The key to success in this story is ASP.NET  2.0 provider model. As you probably know, a provider is a software module that provides a uniform interface between a service and a data source. Providers abstract physical storage media, in much the same way that device drivers abstract physical hardware devices. In our case, integrating MonoX with the leading blog, e-commerce and forum engines requires just a few changes in their configuration files. The benefits are huge: you can enable single sign-on feature and have all the user and role information stored in the main portal database. All authorization and authentication tasks will be performed by the main portal, so there will be no multiple login pages that confuse users; moreover, user maintenance tasks will become much easier, as all relevant data are kept in the single location.

Information regarding the integration with BlogEngine.Net and YetAnotherForum can be found in our MonoX support forum.