Get username and lang from API config

This commit is contained in:
yflory 2024-05-15 11:37:03 +02:00
parent 3940b9c4be
commit 154b3e66c8
5 changed files with 22 additions and 10 deletions

View File

@ -35,11 +35,10 @@ var getStoredLanguage = function () { return localStorage && localStorage.getIte
var getBrowserLanguage = function () { return navigator.language || navigator.userLanguage || ''; };
var getLanguage = Messages._getLanguage = function () {
if (window.cryptpadLanguage) { return window.cryptpadLanguage; }
try {
if (getStoredLanguage()) { return getStoredLanguage(); }
} catch (e) { console.log(e); }
var l = getBrowserLanguage();
// Edge returns 'fr-FR' --> transform it to 'fr' and check again
try {
l = getStoredLanguage() || getBrowserLanguage();
} catch (e) { console.log(e); }
return map[l] ? l :
(map[l.split('-')[0]] ? l.split('-')[0] :
(map[l.split('_')[0]] ? l.split('_')[0] : 'en'));

View File

@ -1671,6 +1671,10 @@ define([
var lang = (window.cryptpadLanguage || navigator.language || navigator.userLanguage || '').slice(0,2);
let username = Util.find(privateData, ['integrationConfig', 'user', 'name'])
|| metadataMgr.getUserData().name
|| Messages.anonymous;
// Config
APP.ooconfig = {
"document": {
@ -1694,8 +1698,8 @@ define([
},
"user": {
"id": String(myOOId), //"c0c3bf82-20d7-4663-bf6d-7fa39c598b1d",
"firstname": metadataMgr.getUserData().name || Messages.anonymous,
"name": metadataMgr.getUserData().name || Messages.anonymous,
"firstname": username,
"name": username
},
"mode": "edit",
"lang": lang

View File

@ -17,7 +17,9 @@ define([
nThen(function (waitFor) {
DomReady.onReady(waitFor());
}).nThen(function (waitFor) {
var obj = SFCommonO.initIframe(waitFor, true, integration.pathname);
let lang = integration && integration.config && integration.config.editorConfig
&& integration.config.editorConfig.lang;
var obj = SFCommonO.initIframe(waitFor, true, integration.pathname, lang);
href = obj.href;
hash = obj.hash;
if (isIntegration) {

View File

@ -116,7 +116,8 @@
application: config.documentType,
document: blob,
ext: config.document.fileType,
autosave: config.autosave || 10
autosave: config.autosave || 10,
editorConfig: config.editorConfig || {}
}, function (obj) {
if (obj && obj.error) { reject(obj.error); return console.error(obj.error); }
resolve({});

View File

@ -155,7 +155,12 @@ define([
chan.on('START', function (data) {
console.warn('INNER START', data);
var href = Hash.hashToHref(data.key, data.application);
console.error(Hash.hrefToHexChannelId(href));
if (data.editorConfig.lang) {
var LS_LANG = "CRYPTPAD_LANG";
localStorage.setItem(LS_LANG, data.editorConfig.lang);
}
window.CP_integration_outer = {
pathname: `/${data.application}/`,
hash: data.key,
@ -163,7 +168,8 @@ define([
initialState: data.document,
config: {
fileType: data.ext,
autosave: data.autosave
autosave: data.autosave,
user: data.editorConfig.user
},
utils: {
onReady: onReady,