This site uses cookies. By continuing you accept the use of cookies.I Accept

About two weeks ago we released a new major version of SiteFactory CMS. One of the main features is “Isolated Modules”.

The Isolated Modules functionality is a great leap from our traditional way of developing modules. They work more like “Apps” in modern cell phones. They can utilize all functionality that exists in the core library, and other parts of the system can read information from each module.

What is Isolated Modules?

Every module has its own configuration file. The configuration file can be filled with module specific settings. It also defines the appearance of the module in SiteFactory CMS. The module can also contain CSS- and JScript files. When the module is loaded into the system, it collects and implements any found CSS- and/or JScript files.

Web forms and translation resources are also packaged within the module and are structured as defined in the configuration files. Since each module has its own translation resources there can never be a collision between system translation and module translation. An Isolated Module can easily be packaged and deployed in any SiteFactory CMS implementation. Since every part of the module is very structured it’s easy to write deployment scripts. From the Developer Central in SiteFactory CMS we can manage every Isolated Module and deploy them on the site.

When developing an Isolated Module, you often need to get configuration values, translation resource values and other module specific data. So we developed a base class that every module can inherit from. The class knows exactly which module the developer is working with and therefor it’s easy to work with the module.

image

Some examples

image

GetConfigurationValue reads from the specific module’s configuration file.

image

GetTranslationValue reads from the module’s translation resource. The module is aware of the current user’s culture and picks the value from the correct translation file based on that culture.

These are just two of many module-related functions and methods that the system provides to the developers.

Widgets can also be developed for each module and the widgets get the same possibilities as the Web Forms, to read its module specific information. When adding a widget to a module, the Dashboard automatically discovers it and makes it available for the users.

Why do we call it Isolated Modules?

As you have read, this kind of module comes with their own forms, css, scripts, settings and translation resources. Even though they can consume assets from the entire site, they are also very isolated. A module cannot ever read information from another module by accident. For instance, when a translation resource is requested in a module, the system only looks in that particular module.

Security

Security settings are configured in each module and these settings are read by the system so that the administrators can allow or prohibit users from accessing whole or parts of the module. By default, only administrators can access modules.

Closing comments

The way we develop modules in SiteFactory CMS has always been one of our most powerful features. With the Isolated Modules we made them even more powerful. Existing modules at out customers' sites are not to be considered out-dated, they are only developed in a different way.

The new functionality gives the developer a more manageable way to develop modules as every asset is placed in a better structure. An isolated structure.

Post a comment

Post a comment