const textAreaId = "#description"; const tinyMceLangPath = '/js/tinymce/langs/it.js'; const currentLocation = window.location.pathname; const privacyPaths = { edit: '/privacy/edit', view: '/privacy/view', accept_privacy: '/privacy/accept_privacy', view_public: '/privacy/view_public', } const configs = { [privacyPaths.edit]: { selector: textAreaId, language_url: tinyMceLangPath, language: 'it', setup: function (editor) { editor.on('change', function () { editor.save(); }); } }, [privacyPaths.view]: { selector: textAreaId, license_key: 'gpl', language_url: tinyMceLangPath, language: 'it', readonly: true, menubar: false, toolbar: '', height: 400, }, [privacyPaths.accept_privacy]: { selector: textAreaId, license_key: 'gpl', language_url: tinyMceLangPath, language: 'it', readonly: true, menubar: false, toolbar: '', height: 400 }, [privacyPaths.view_public]: { selector: textAreaId, license_key: 'gpl', language_url: tinyMceLangPath, language: 'it', readonly: true, menubar: false, toolbar: '', height: 400, }, }; console.log(currentLocation); const config = configs[currentLocation]; if (config) { tinymce.init(config); } else { console.error('No config found for current location'); }