In-Portal uses CKEditor as it's WYSIWYG editor. In the In-Portal 5.2.x version the CKEditor 3.6.3 is being used and in In-Portal 5.3.x version it was upgraded to 4.2.0.
- unique string used for browser cache reset on CKEditor upgrades
Problem is that this connector is no longer being shipped with CKEditor 4.x releases and we've reused connector from CKEditor 3.x. That created a problem, because browser cache reset string stayed the same and after CKEditor upgrade users still see old CKEditor version until they manually do full cache reset.
When changing CKEditor plugin code without upgrading to new CKEditor version the old plugin code is being used, because it is cached by the browser.
- update the "version" and "timestamp" constants and "timestamp" property of "CKEditor" class to have values coming from "ckeditor.js" (statically)
- add "WysiwygEditorTimestamp" system setting:
- after: "EnablePageContentRevisionControl"
- section: Configuration > Website > Advanced
- sub-section: Admin Console Settings
- control: textbox
- default: empty
- title (main translation of "la_config_WysiwygEditorTimestamp" phrase): "WYSIWYG Editor Timestamp"
- hint (hint translation of "la_config_WysiwygEditorTimestamp" phrase): "Change value to invalidate WYSIWYG editor assets, e.g. CSS, JS, Plugins."
- in "fckFCKHelper::getEditor" method if "WysiwygEditorTimestamp" system setting isn't empty set "$editor->timestamp" property into it's value
- update test plan to demonstrate, that user timestamp is used, when specified and default timestamp is used, when user timestamp is empty