Maximo Anywhere Multi language support issue - maximo

I am using Maximo Anywhere 7.5.2 (Work Execution) App. I added a new folder for a new language (Ex: AB) under translation/nls/AB, after deploying the app. App should load the label data from AB but it always load as "English" only.
<echo>Copying generated artifact en over real translation</echo>
<copy file="${application.home}/common/js/generated/application/translation/nls/artifact.js" tofile="${application.home}/common/js/application/translation/nls/artifact.js"/>
<echo>Copying artifact en to en-gb to support UK</echo>
<copy file="${application.home}/common/js/application/translation/nls/artifact.js" tofile="${application.home}/common/js/application/translation/nls/AB/artifact.js"/>
Note: If I copy nls/AB/artifact.js directly to nls/artifact.js.Pl help

I don't think you're going to be able to do this yourself as a customization. There are lots of pieces along the way that also need to support the new language. The Dojo build, and dojo libraries, the native Android or iOS messages, the worklight/mobilefirst strings (which we also translate and override in a different way).
But just to give you a little more information about how Javascript handles translations, if you open up the main artifact.js file, at the bottom, you'll see a list of langcode and locales with true or false, to indicate whether to try and load that language or not. You'll need to add your custom language there, set to true, change your main browser language to that language and then try in chrome simulator.
Can you wait for a potential enhancement request to support this language?

Related

Kentico Language Packs

I need to change Kentico date format to dd/MM/yyyy. I tried following the settings here
https://docs.xperience.io/k12sp/configuring-kentico/reference-web-config-application-keys#ReferenceWeb.configapplicationkeys-Userinterfaceculturesettings
but looks like I'm gonna need a CMS.resx pack. Where do I get this language pack for Australia (en-AU)?
The language packs are available for download on the Devnet portal. However, in case of EN-AU, if you do not require translation of the resource strings to the Australian English (I guess the EN-AU is pretty much the same as EN-US in this case), you can simply copy the CMS.resx file and rename it CMS.en-au.resx.
Or, you can use the CMSDefaultUICulture web.config key and set the default UI culture to EN-AU and then, the system will take the CMS.resx as the EN-AU culture's resource file. For more details please see the documentation on setting up multilingual UI.

Write custom grid layouts with extbase/fluid but without any extension like gridelements

I look for a tutorial, help or an example that tells me what I have to do to write a grid element like 2-colums in basic typo3 (v9) with fluid but no other extension like gridelements, DCE, Templa Voila, etc. I want the same gridelements can do but I dont want to be depended to this extention and move it in my own site extention.
I tried the same with normal content elements (CE) like here:
https://docs.typo3.org/c/typo3/cms-fluid-styled-content/9.5/en-us/AddingYourOwnContentElements/Index.html
But how can I nest a CE in a CE? And how can I do this by drag&drop in the backend?
You can't. The page module doesn't support nesting
You can't nest CEs in a CE. On database level this would mean that you have to make a tt_content record a subrecord of a parent tt_content record. You run into several problems, basically the multilanguage support will be broken and the shortcut element does not function as you will expect it to. That is why the extensions "gridelements" and "mask" exist.
I integrated the gridelements configuration into my sitepackage. So I do not need to bother anymore with it.
Just for your info:
There is now an initiative that works on integrating this functionality into the core (Structured Content Initiative, https://typo3.org/article/a-structured-content-initiative/). Stay tuned to it.
There is nothing special about providing Gridelements via external files, since it's based on TSconfig, TypoScript and Fluid. That's why there is not that much about it in the documentation, since it's the same thing you would do with any other kind of sitepackage. The TSconfig and TypoScript parameters are already explained there, while the Fluid would be up to you anyway.
To have a kind of kickstarter just take any extensions providing Gridelements layouts as an example. A very popular one would be bootstrap_grids, which can be found in the TER or here: https://github.com/laxap/bootstrap_grids
You don't necessarily need the flexform controller of that extension, but the Configuration and Resources folders, show you how to configure stuff and you can see how that is included via ext_localconf.php
There are even comments i.e. in the TSconfig files to explain what is possible there and how to handle i.e. mixed environments with record and file based setups. Although it would be recommended to go for files.
You would at least have to add the necessary backend rendering methods to a draw item hook, that will modify the preview of the container element.
So basically you would have to rewrite everything that DCE, Flux, Gridelements or other similar extensions already do.
Which brings us to the question, why you want to avoid those extensions, since especially those three are well known, widely spread, well supported and available for currently supported TYPO3 versions.

Multilingual Jekyll website running on multiple domains

I'm trying to setup proper solution for multilingual website generated using Jekyll. I checked some plugins and tricks without plugin. But still not sure how to achieve it. I found that it's possible to generate output of every language into subfolder. Eg.:
/en/ contains English version of website
/cz/ contains Czech version of website
But in my case every language will be published on own domain (example.com, example.cz). And this is the moment where I'm getting some troubles with the implementation. When I'll have every language in own folder (/en/, /cz/) this means that also {{page.url}} and parmalinks will contain that /en/... or /cz/... part.
Could you help me to find the trick I need to use? What is correct setup in this case?
Note: The only solution which is close to my situation is this https://frozenfractal.com/blog/2016/5/13/building-a-multilingual-website-in-jekyll/ Here is not possible to implement language switcher because solution excludes all files in alternative languages. (When I'll be on www.example.com/contact I need to be able to switch to Czech alternative www.example.cz/kontakt.)
Two different urls makes sense to me. Google will have a different page rank for your sites, but that is the only downside I can think of. I would set the language and set alternate tags. You can use your page front matter to fill the alternate tags. If you succeed in building them from one repo, you might be able to automatically match the different language versions of your pages with an english page identifier (for your alternate tags). Source

How generate container page in English language in opencms8.5

I am new in opencms.I am working on application of opencms8.5 . Actually my application already developed in struts and spring and now i have to integrate that with opencms . Actually when i am trying to generate container page in English then it's creating page in Punjabi language. Can some one tell me how i have to do that.
second question is while i am trying to change my folder name in opencms workplace then it's giving error
Runtime error in JPA layer: org.apache.openjpa.persistence.PersistenceException
Please help me .
I have a few questions, the language you want is in the workplace? or the text onlie/offline?
For the wokplace
you just have to chage your language preferences.
For the pages:
I guess your cms is set on English and Punjabi. So you have to search for the porperty locale or locale-availabe (the second one is for change between languages in the elements) in the container page or folder set the locale "en".

Is there a clever way how to share custom controls among Xpages applications?

For our Xpages application stack we have to create cca. 100 controls that will cover our new UI parts/helpers and some additional services. These controls are meant to be very general and have to be used by many Xpages applications. Now question is how to share these controls among applications(databases). Controls need some managed beans to work, also some CSS, JS and images. To copy the whole stuff into each application and maintain it somehow is not the way (even design inheritance doesnt help here). What's more ... mixing these 100 controls among application specific controls is real hell as controls doesn't support any namespaces or some packages grouping (like java in Package Explorer), so at the end we have very long list of controls in DDE which is nightmare to navigate and work with.
We tried to use Extension Library approach and followed this tutorial
http://www-10.lotus.com/ldd/ddwiki.nsf/dx/Master_Table_of_Contents_for_XPages_Extensibility_APIs_Developer_Guide
... but honestly I tried 3 times on my computer from scratch and even example project from tutorial didn't work properly and still caused some errors in update site project. My colleague also tried this on his computer with no luck. And entire process as described in the article above is set of many java classes, XML and configuration files even for small control (eclipse plugin project -> feature project -> updated site project and then you have to install this update site test it and when bug occurs you have to run another cycle ...). Comparing to e.g. this http://tapestry.apache.org/component-classes.html its extremely heavy weight approach in Xpages.
So my question is, is there any other approach that can help us in this area to share controls among applications? Or is there any update expected in this area for upcoming Notes release e.g. R9.1 ?
the most efficient way to share controls is an extension library. It does come with a learning curve. You could use Nathan's XSP Starter Kit to ease your pain. Alternatively you can use the import/export plug-in from OpenNTF to move controls (and their supporting files) around.
In any case: XPages custom controls do support name spaces and grouping -> just have a look at the property panel of a control. You can define:
the namespace (defaults to xc, but you are free to design your own)
the group it should appear in
icons
how it looks at design time (to hide the inner workings)
So step 1 is to group and clean and then think about the distribution. Extlib definitely would be best.
There is good ol' method for sharing design elements in NSF: templates. You can make your database a template, and then inherit just specific design elements by copy/pasting them at designer level. In design element's properties view, Design tab, look for "Inherit from the design template" property. It contains template name from which you copied the element. Watch out for the property "Prohibit design refresh or replace to modify", it should be off.
This has some consequences when deploying the application to production, though, so please, read the documentation/help about template inheritance. Especially combination with XPages/custom controls requires the template to be built and signed.
We use it to share custom controls like application layout and picklists with no problems.

Resources