Skip to main content
Home  ›  Blog

2sxc 12.04 Released with 12 Amazing new Features

Global, Site and App Settings which merge for use in Images, Web-Resources and turnOn which changes everything. For Dnn and Oqtane.

We will create special blogs for each of the new important topics, but here just the summary / highlights for 12.04

1. Global and Site Settings which Merge with the App

  1. Settings can now be configured at 4 levels
  2. We have both System Settings containing things that are standardized, and you can create Custom Settings which can be anything you want
  3. The new DynamicStack merges all these settings so that Razor will automatically get the most relevant
  4. ...so if a Site setting overrides a Global setting, then Razor will see that value
  5. The admin UIs let you analyze what values apply and where they come from 

In code, you can get Settings like this: @Settings.GoogleMaps.ApiKey

Read more about

2. Image Links based on Settings

The settings have configuration bundles which rule how images should be displayed - what size, quality etc. Razor Templates can just use these settings to auto-generate image links like this:

@Link.Image(someImage, Settings.Images.Lightbox)

It also allows you to add factors - so if you have a 2 column layout you would write:

@Link.Image(someImage, Settings.Images.Content, factor: 0.5)

Since you can configure settings at global, site or app level, this lets you standardize things any way you want. 

3. Settings Based Web-Resource Management

A common problem is that various themes and apps load different versions of Bootstrap, jQuery, Fancybox or whatever. This slows the page and causes hard to fix collisions. The new Settings have a system to manage these. It also lets you determine if a Web-Resource should be enabled or disabled. Razor-code then does this:

GetService<IPageService>().Activate("turnOn", "jQuery", "fancybox4", "FontAwesome5");

Internally everything is then automatically handled, ensuring proper load-order, proper dependency handling (so if a resource needs other resources, these will also be loaded), single-loading etc. 

If your skin already loads some of these resources, you can simply change a setting to disable some resources. 

4. Global and Site-Level Resources 

Just like the settings we alse created a Resources stack with the same functionality. So your code can now do things like:

@Resources.GoogleMaps.MissingApiKey

And in the background the best matching resource will magically be picked from the View, App, Site, Global or Preset. 

5. turnOn

Properly loading and starting JS in modern environments where only parts of the page reload (like AJAX) or are magically SPA treated (like Oqtane) present big challenges. These will become even bigger with the advent of CSP (newer security features in JavaScript) and when we want to get rid of jQuery. 

turnOn solves all of these problems, and is now included by default. Read more in the turnOn docs and turnOn blog

6. New Input Types

Long awaited improvements are new input types:

  • number-dropdown
  • empty-message - ideal for when you need to show a complex message with links and more using a formula

We also improved the dropdowns of string and number to have a simple notation. Check it out 💪

7. Insanely Improved Content-Templates

We completely reworked and simplified the Content Templates using the latest and greatest best practices. More than two weeks of work were invested and this merits an own blog. But you should really try it!

8. VS Code Online Editor Integration

Our built in code editor can now use Visual Studio Code (VS Code) in the browser based editor called Monaco. This is still preview, so you'll need to go into debug mode to try this. 

9. Performance

We're crazy about performance, and 2sxc 12.04 is the fastest 2sxc ever! Lots of love was invested for this.

10. Oqtanify

2sxc 12 runs on DNN and Oqtane, and we're continuously improving it to best work with Oqtane. Unfortunately Oqtane 2.2 introduced breaking changes, but now we're back up to speed and everything works again, better than ever. 

11. Edit UI Love and Performance

Petar has been working hard on the Edit UI to improve the performance in all browsers. You'll be surprised as to how fast the dialogs switch around - like never before. 

12. Way more Under the Hood

Way more was done, including major refactoring of code to drop some history. Both the UI and the backend has gotten serious love and it's a real joy to see how everything is getting better, cleaner and faster in each new release. 

That's just the release blog 😉. We'll write more about the features in the upcomming days. 

Love from Switzerland and Croatia
iJungleboy, Petar, Tonci


Daniel Mettler grew up in the jungles of Indonesia and is founder and CEO of 2sic internet solutions in Switzerland and Liechtenstein, an 20-head web specialist with over 800 DNN projects since 1999. He is also chief architect of 2sxc (see github), an open source module for creating attractive content and DNN Apps.

Read more posts by Daniel Mettler