HTML Logo by World Wide Web Consortium ( Click to learn more about our commitment to accessibility and standards.

Moving forward with Composr

ocPortal has been relaunched as Composr CMS. ocPortal 9 is superseded by Composr 10.

Head over to for our new site, and to our migration roadmap. Existing ocPortal member accounts have been mirrored.

Papering over the Atlantic divide

Papering over the Atlantic divide ocPortal is primarily written in Britain, so naturally has always been developed in British English.

However, as patriotic as we may be, we have always been aware that this puts us at odds with most of the Internet, which standardises/standardizes on American English.

If it was purely a matter of standardisation we would have switched over to American English years ago, but practically speaking:
  1. We are unlikely to be able to remember to write in American consistently
  2. Based in Britain we often serve British customers, including UK government

One solution would have been for us to make American language packs, but these would be time consuming and painful to maintain, especially when mixed in with individual customisations users may have made.

Well, we finally have found a solution :). As soon as it crystallised in my mind, I decided to push it into v10, as we want to close off any of these legacy "WTH" kind of issues people might have felt were wrong in ocPortal.
0002048: Language string filtration - ocPortal feature tracker

The feature in summary:
v10 (Composr) now can automatically translate it's language strings to American English as it compiles language files. Additionally, it makes some other changes, such as applying US date format and using the word 'check' instead of 'tick (check)'. This is enabled via a new config option that defaults to 'On'.

Yes, out of the box Composr will refer to "catalogues" as "catalogs".

British users benefit too, as we can now just say 'tick' instead of 'tick (check)'.

Additional to all this, there are other improvements from this system, because we can now make grammatical assumptions and corrections we could not make with simple language string parameterisation.

You no longer can see messages like "This was posted on Yesterday", but rather just "This was posted Yesterday".

Generic messages like "The requested resource does not exist." will in many cases now be specific such as "The requested download category does not exist.".

Rather than Composr being referenced as "the software" (so that our debrand feature works), it now directly refers to whatever the configured brand is.

Quite a lot of other progress has happened with v10 recently…

The documentation has moved on enormously from our v9 documentation, after going through multiple rounds of review, and incorporation a great volume of new material written over many man months.

For EU users (in case you were feeling neglected), we now have out-of-the-box cookie console support, so that you can comply with pesky regulations.

For people who are spooked by surveillance agencies (so to speak), and want to run their sites fully with SSL, we now provide automatic support for fixing when community users post non-SSL resources. For example, if a member uses an HTTP image in their signature. We automatically upgrade or proxy HTTP URLs so that they are served securely, preventing your site being given "mixed-content warnings".

For the pedants out there, you'll be pleased that now underscores in page-names are now dashes. E.g. "lost-password" instead of "lost_password". Little things like this make it all a nicer system :).

I am trying hard to get v10 finished ASAP. So as always I thank everyone for their patience. v10 will be an amazing release, it's just a big and difficult one for us to get right, but we're determined for it to be a huge leap forward. Most of the remaining tasks rest around:
  • merging in patches made for client sites
  • further improvements to "The Repository", and scrapping of the old XML sync system
  • further work on the tutorials, pulling in and updating material written up over the years in various places
  • work on our own website, particularly refreshing all our structures to reflect the modern online world

View all


There have been no trackbacks yet

Moving forward with Composr

ocPortal has been relaunched as Composr CMS. ocPortal 9 is superseded by Composr 10.

Head over to for our new site, and to our migration roadmap. Existing ocPortal member accounts have been mirrored.

An error has occurred

Unfortunately a query has failed [INSERT INTO ocp2_stats (access_denied_counter, browser, operating_system, the_page, ip, the_user, date_and_time, referer, `get`, post, milliseconds) VALUES (0, 'CCBot/2.0 (', '', 'site/pages/modules/news.php', '', -1385721144, 1495989812, '', '<param>page=news</param>\n<param>type=view</param>\n<param>id=397</param>\n', '', 0)] [Duplicate entry '19560025' for key 'PRIMARY'] (version: 8-RC3, PHP version: 7.0.19, URL: /site/news/view/chris_grahams_blog/papering-over-the.htm)

Here is the stack trace:

The staff have been provided a ‘stack trace’ which may help them diagnose the problem.