Commit e9e93f10 authored by Alexey Golubev's avatar Alexey Golubev

Merge

parents d59250ab f959680f
...@@ -286,7 +286,7 @@ ...@@ -286,7 +286,7 @@
_onAppReady(); _onAppReady();
} }
if (handler) { if (handler && typeof handler == "function") {
res = handler.call(_self, {target: _self, data: msg.data}); res = handler.call(_self, {target: _self, data: msg.data});
} }
} }
......
...@@ -58,6 +58,7 @@ define([ ...@@ -58,6 +58,7 @@ define([
this.currentDocId = ''; this.currentDocId = '';
this.currentDocIdPrev = ''; this.currentDocIdPrev = '';
this.currentRev = 0; this.currentRev = 0;
this.currentServerVersion = 0;
}, },
events: { events: {
...@@ -130,6 +131,7 @@ define([ ...@@ -130,6 +131,7 @@ define([
this.currentDocId = record.get('docId'); this.currentDocId = record.get('docId');
this.currentDocIdPrev = record.get('docIdPrev'); this.currentDocIdPrev = record.get('docIdPrev');
this.currentRev = rev; this.currentRev = rev;
this.currentServerVersion = record.get('serverVersion');
if ( _.isEmpty(url) || (urlGetTime - record.get('urlGetTime') > 5 * 60000)) { if ( _.isEmpty(url) || (urlGetTime - record.get('urlGetTime') > 5 * 60000)) {
_.delay(function() { _.delay(function() {
...@@ -146,6 +148,7 @@ define([ ...@@ -146,6 +148,7 @@ define([
hist.asc_setArrColors(this.currentArrColors); hist.asc_setArrColors(this.currentArrColors);
hist.asc_setToken(token); hist.asc_setToken(token);
hist.asc_setIsRequested(false); hist.asc_setIsRequested(false);
hist.asc_setServerVersion(this.currentServerVersion);
this.api.asc_showRevision(hist); this.api.asc_showRevision(hist);
var commentsController = this.getApplication().getController('Common.Controllers.Comments'); var commentsController = this.getApplication().getController('Common.Controllers.Comments');
...@@ -196,6 +199,7 @@ define([ ...@@ -196,6 +199,7 @@ define([
hist.asc_setArrColors(this.currentArrColors); hist.asc_setArrColors(this.currentArrColors);
hist.asc_setToken(token); hist.asc_setToken(token);
hist.asc_setIsRequested(true); hist.asc_setIsRequested(true);
hist.asc_setServerVersion(this.currentServerVersion);
this.api.asc_showRevision(hist); this.api.asc_showRevision(hist);
var commentsController = this.getApplication().getController('Common.Controllers.Comments'); var commentsController = this.getApplication().getController('Common.Controllers.Comments');
......
...@@ -73,7 +73,8 @@ define([ ...@@ -73,7 +73,8 @@ define([
isExpanded: true, isExpanded: true,
isVisible: true, isVisible: true,
allowSelected: true, allowSelected: true,
selected: false selected: false,
serverVersion: 0
} }
} }
}); });
......
...@@ -683,6 +683,40 @@ Common.Utils.fillUserInfo = function(info, lang, defname) { ...@@ -683,6 +683,40 @@ Common.Utils.fillUserInfo = function(info, lang, defname) {
return _user; return _user;
}; };
Common.Utils.createXhr = function () {
var xmlhttp;
try {
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
} catch (E) {
xmlhttp = false;
}
}
if (!xmlhttp && typeof XMLHttpRequest != 'undefined') {
xmlhttp = new XMLHttpRequest();
}
return xmlhttp;
};
Common.Utils.getConfigJson = function (url) {
if ( url ) {
try {
var xhrObj = Common.Utils.createXhr();
if ( xhrObj ) {
xhrObj.open('GET', url, false);
xhrObj.send('');
return JSON.parse(xhrObj.responseText);
}
} catch (e) {}
}
return null;
};
// Extend javascript String type // Extend javascript String type
String.prototype.strongMatch = function(regExp){ String.prototype.strongMatch = function(regExp){
if (regExp && regExp instanceof RegExp) { if (regExp && regExp instanceof RegExp) {
......
...@@ -183,7 +183,7 @@ define([ ...@@ -183,7 +183,7 @@ define([
}, },
closeNotVisualMode: function() { closeNotVisualMode: function() {
this.viewPluginsList.cmpEl.find('.selected').removeClass('selected'); this.viewPluginsList && this.viewPluginsList.cmpEl.find('.selected').removeClass('selected');
}, },
_onLoad: function() { _onLoad: function() {
......
...@@ -300,9 +300,11 @@ ...@@ -300,9 +300,11 @@
"DE.Controllers.Main.txtStyle_Heading_7": "Cabeçalho 7", "DE.Controllers.Main.txtStyle_Heading_7": "Cabeçalho 7",
"DE.Controllers.Main.txtStyle_Heading_8": "Cabeçalho 8", "DE.Controllers.Main.txtStyle_Heading_8": "Cabeçalho 8",
"DE.Controllers.Main.txtStyle_Heading_9": "Cabeçalho 9", "DE.Controllers.Main.txtStyle_Heading_9": "Cabeçalho 9",
"DE.Controllers.Main.txtStyle_Intense_Quote": "Citação intensa",
"DE.Controllers.Main.txtStyle_List_Paragraph": "Listar parágrafo", "DE.Controllers.Main.txtStyle_List_Paragraph": "Listar parágrafo",
"DE.Controllers.Main.txtStyle_No_Spacing": "Sem espaçamento", "DE.Controllers.Main.txtStyle_No_Spacing": "Sem espaçamento",
"DE.Controllers.Main.txtStyle_Normal": "Normal", "DE.Controllers.Main.txtStyle_Normal": "Normal",
"DE.Controllers.Main.txtStyle_Quote": "Citar",
"DE.Controllers.Main.txtStyle_Subtitle": "Legenda", "DE.Controllers.Main.txtStyle_Subtitle": "Legenda",
"DE.Controllers.Main.txtStyle_Title": "Titulo", "DE.Controllers.Main.txtStyle_Title": "Titulo",
"DE.Controllers.Main.txtXAxis": "Eixo X", "DE.Controllers.Main.txtXAxis": "Eixo X",
...@@ -1389,6 +1391,7 @@ ...@@ -1389,6 +1391,7 @@
"DE.Views.TableSettingsAdvanced.textAllowSpacing": "Permitir espaçamento entre células", "DE.Views.TableSettingsAdvanced.textAllowSpacing": "Permitir espaçamento entre células",
"DE.Views.TableSettingsAdvanced.textAlt": "Texto alternativo", "DE.Views.TableSettingsAdvanced.textAlt": "Texto alternativo",
"DE.Views.TableSettingsAdvanced.textAltDescription": "Descrição", "DE.Views.TableSettingsAdvanced.textAltDescription": "Descrição",
"DE.Views.TableSettingsAdvanced.textAltTip": "A representação alternativa baseada em texto da informação visual do objeto, que será lida para as pessoas com deficiências visuais ou cognitivas para ajudá-los a entender melhor que informação existe na imagem, auto-forma, gráfico ou tabela.",
"DE.Views.TableSettingsAdvanced.textAltTitle": "Título", "DE.Views.TableSettingsAdvanced.textAltTitle": "Título",
"DE.Views.TableSettingsAdvanced.textAnchorText": "Тexto", "DE.Views.TableSettingsAdvanced.textAnchorText": "Тexto",
"DE.Views.TableSettingsAdvanced.textAutofit": "Automaticamente redimensionado para ajustar conteúdo", "DE.Views.TableSettingsAdvanced.textAutofit": "Automaticamente redimensionado para ajustar conteúdo",
......
This source diff could not be displayed because it is too large. You can view the blob instead.
This diff is collapsed.
...@@ -635,8 +635,10 @@ define([ ...@@ -635,8 +635,10 @@ define([
application.getController('Common.Controllers.ExternalDiagramEditor').setApi(this.api).loadConfig({config:this.editorConfig, customization: this.editorConfig.customization}); application.getController('Common.Controllers.ExternalDiagramEditor').setApi(this.api).loadConfig({config:this.editorConfig, customization: this.editorConfig.customization});
pluginsController.setApi(me.api); pluginsController.setApi(me.api);
me.updatePlugins(me.plugins, false); if (me.plugins && me.plugins.pluginsData && me.plugins.pluginsData.length>0)
me.requestPlugins('../../../../plugins.json'); me.updatePlugins(me.plugins, false);
else
me.requestPlugins('../../../../plugins.json');
me.api.asc_registerCallback('asc_onPluginsInit', _.bind(me.updatePluginsList, me)); me.api.asc_registerCallback('asc_onPluginsInit', _.bind(me.updatePluginsList, me));
documentHolderController.setApi(me.api); documentHolderController.setApi(me.api);
...@@ -1653,95 +1655,24 @@ define([ ...@@ -1653,95 +1655,24 @@ define([
requestPlugins: function(pluginsPath) { // request plugins requestPlugins: function(pluginsPath) { // request plugins
if (!pluginsPath) return; if (!pluginsPath) return;
var _createXMLHTTPObject = function() { this.updatePlugins( Common.Utils.getConfigJson(pluginsPath), false );
var xmlhttp;
try {
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e) {
try {
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
catch (E) {
xmlhttp = false;
}
}
if (!xmlhttp && typeof XMLHttpRequest != 'undefined') {
xmlhttp = new XMLHttpRequest();
}
return xmlhttp;
};
var _getPluginJson = function(plugin) {
if (!plugin) return '';
try {
var xhrObj = _createXMLHTTPObject();
if (xhrObj && plugin) {
xhrObj.open('GET', plugin, false);
xhrObj.send('');
var pluginJson = eval("(" + xhrObj.responseText + ")");
return pluginJson;
}
}
catch (e) {}
return null;
};
var value = _getPluginJson(pluginsPath);
if (value)
this.updatePlugins(value, false);
}, },
updatePlugins: function(plugins, uiCustomize) { // plugins from config updatePlugins: function(plugins, uiCustomize) { // plugins from config
if (!plugins) return; if (!plugins) return;
var pluginsData = (uiCustomize) ? plugins.UIpluginsData : plugins.pluginsData; var pluginsData = (uiCustomize) ? plugins.UIpluginsData : plugins.pluginsData;
if (!pluginsData || pluginsData.length<1) return; if (!pluginsData || pluginsData.length<1) return;
var _createXMLHTTPObject = function() {
var xmlhttp;
try {
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e) {
try {
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
catch (E) {
xmlhttp = false;
}
}
if (!xmlhttp && typeof XMLHttpRequest != 'undefined') {
xmlhttp = new XMLHttpRequest();
}
return xmlhttp;
};
var _getPluginJson = function(plugin) {
if (!plugin) return '';
try {
var xhrObj = _createXMLHTTPObject();
if (xhrObj && plugin) {
xhrObj.open('GET', plugin, false);
xhrObj.send('');
var pluginJson = eval("(" + xhrObj.responseText + ")");
return pluginJson;
}
}
catch (e) {}
return null;
};
var arr = [], var arr = [],
baseUrl = _.isEmpty(plugins.url) ? "" : plugins.url; baseUrl = _.isEmpty(plugins.url) ? "" : plugins.url;
if (baseUrl !== "") if (baseUrl !== "")
console.log("Obsolete: The url parameter is deprecated. Please check the documentation for new plugin connection configuration."); console.warn("Obsolete: The url parameter is deprecated. Please check the documentation for new plugin connection configuration.");
pluginsData.forEach(function(item){ pluginsData.forEach(function(item){
item = baseUrl + item; // for compatibility with previouse version of server, where plugins.url is used. item = baseUrl + item; // for compatibility with previouse version of server, where plugins.url is used.
var value = _getPluginJson(item); var value = Common.Utils.getConfigJson(item);
if (value) { if (value) {
value.baseUrl = item.substring(0, item.lastIndexOf("config.json")); value.baseUrl = item.substring(0, item.lastIndexOf("config.json"));
value.oldVersion = (baseUrl !== ""); value.oldVersion = (baseUrl !== "");
...@@ -1749,11 +1680,17 @@ define([ ...@@ -1749,11 +1680,17 @@ define([
} }
}); });
if (arr.length>0) if (arr.length>0) {
var autostart = plugins.autostart || plugins.autoStartGuid;
if (typeof (autostart) == 'string')
autostart = [autostart];
plugins.autoStartGuid && console.warn("Obsolete: The autoStartGuid parameter is deprecated. Please check the documentation for new plugin connection configuration.");
this.updatePluginsList({ this.updatePluginsList({
autoStartGuid: plugins.autoStartGuid, autostart: autostart,
pluginsData: arr pluginsData: arr
}, !!uiCustomize); }, !!uiCustomize);
}
}, },
updatePluginsList: function(plugins, uiCustomize) { updatePluginsList: function(plugins, uiCustomize) {
...@@ -1762,18 +1699,9 @@ define([ ...@@ -1762,18 +1699,9 @@ define([
if (plugins) { if (plugins) {
var arr = [], arrUI = []; var arr = [], arrUI = [];
plugins.pluginsData.forEach(function(item){ plugins.pluginsData.forEach(function(item){
if (uiCustomize!==undefined && (pluginStore.findWhere({baseUrl : item.baseUrl}) || pluginStore.findWhere({guid : item.guid}))) return; var variationsArr = [];
item.variations.forEach(function(itemVar){
var variations = item.variations, if (_.contains(itemVar.EditorsSupport, 'word') && (isEdit || itemVar.isViewer)) {
variationsArr = [];
variations.forEach(function(itemVar){
var isSupported = false;
for (var i=0; i<itemVar.EditorsSupport.length; i++){
if (itemVar.EditorsSupport[i]=='slide') {
isSupported = true; break;
}
}
if (isSupported && (isEdit || itemVar.isViewer)){
var icons = itemVar.icons; var icons = itemVar.icons;
if (item.oldVersion) { // for compatibility with previouse version of server, where plugins.url is used. if (item.oldVersion) { // for compatibility with previouse version of server, where plugins.url is used.
icons = []; icons = [];
...@@ -1815,20 +1743,17 @@ define([ ...@@ -1815,20 +1743,17 @@ define([
if (uiCustomize!==false) // from ui customizer in editor config or desktop event if (uiCustomize!==false) // from ui customizer in editor config or desktop event
this.UICustomizePlugins = arrUI; this.UICustomizePlugins = arrUI;
if (uiCustomize === undefined) { // for desktop if ( !uiCustomize ) {
if (pluginStore) pluginStore.reset(arr); if (pluginStore) pluginStore.reset(arr);
this.appOptions.canPlugins = (pluginStore.length>0); this.appOptions.canPlugins = !pluginStore.isEmpty();
} else if (!uiCustomize) {
if (pluginStore) pluginStore.add(arr);
this.appOptions.canPlugins = (pluginStore.length>0);
} }
} else if (!uiCustomize){ } else if (!uiCustomize){
this.appOptions.canPlugins = false; this.appOptions.canPlugins = false;
} }
if (this.appOptions.canPlugins) { if (this.appOptions.canPlugins) {
this.getApplication().getController('Common.Controllers.Plugins').setMode(this.appOptions); this.getApplication().getController('Common.Controllers.Plugins').setMode(this.appOptions);
if (plugins.autoStartGuid) if (plugins.autostart && plugins.autostart.length>0)
this.api.asc_pluginRun(plugins.autoStartGuid, 0, ''); this.api.asc_pluginRun(plugins.autostart[0], 0, '');
} }
if (!uiCustomize) this.getApplication().getController('LeftMenu').enablePlugins(); if (!uiCustomize) this.getApplication().getController('LeftMenu').enablePlugins();
}, },
......
This diff is collapsed.
This diff is collapsed.
...@@ -617,8 +617,10 @@ define([ ...@@ -617,8 +617,10 @@ define([
if (!me.appOptions.isEditMailMerge && !me.appOptions.isEditDiagram) { if (!me.appOptions.isEditMailMerge && !me.appOptions.isEditDiagram) {
pluginsController.setApi(me.api); pluginsController.setApi(me.api);
me.updatePlugins(me.plugins, false); if (me.plugins && me.plugins.pluginsData && me.plugins.pluginsData.length>0)
me.requestPlugins('../../../../plugins.json'); me.updatePlugins(me.plugins, false);
else
me.requestPlugins('../../../../plugins.json');
me.api.asc_registerCallback('asc_onPluginsInit', _.bind(me.updatePluginsList, me)); me.api.asc_registerCallback('asc_onPluginsInit', _.bind(me.updatePluginsList, me));
} }
...@@ -1843,43 +1845,7 @@ define([ ...@@ -1843,43 +1845,7 @@ define([
requestPlugins: function(pluginsPath) { // request plugins requestPlugins: function(pluginsPath) { // request plugins
if (!pluginsPath) return; if (!pluginsPath) return;
var _createXMLHTTPObject = function() { this.updatePlugins( Common.Utils.getConfigJson(pluginsPath), false );
var xmlhttp;
try {
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e) {
try {
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
catch (E) {
xmlhttp = false;
}
}
if (!xmlhttp && typeof XMLHttpRequest != 'undefined') {
xmlhttp = new XMLHttpRequest();
}
return xmlhttp;
};
var _getPluginJson = function(plugin) {
if (!plugin) return '';
try {
var xhrObj = _createXMLHTTPObject();
if (xhrObj && plugin) {
xhrObj.open('GET', plugin, false);
xhrObj.send('');
var pluginJson = eval("(" + xhrObj.responseText + ")");
return pluginJson;
}
}
catch (e) {}
return null;
};
var value = _getPluginJson(pluginsPath);
if (value)
this.updatePlugins(value, false);
}, },
updatePlugins: function(plugins, uiCustomize) { // plugins from config updatePlugins: function(plugins, uiCustomize) { // plugins from config
...@@ -1888,49 +1854,15 @@ define([ ...@@ -1888,49 +1854,15 @@ define([
var pluginsData = (uiCustomize) ? plugins.UIpluginsData : plugins.pluginsData; var pluginsData = (uiCustomize) ? plugins.UIpluginsData : plugins.pluginsData;
if (!pluginsData || pluginsData.length<1) return; if (!pluginsData || pluginsData.length<1) return;
var _createXMLHTTPObject = function() {
var xmlhttp;
try {
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e) {
try {
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
catch (E) {
xmlhttp = false;
}
}
if (!xmlhttp && typeof XMLHttpRequest != 'undefined') {
xmlhttp = new XMLHttpRequest();
}
return xmlhttp;
};
var _getPluginJson = function(plugin) {
if (!plugin) return '';
try {
var xhrObj = _createXMLHTTPObject();
if (xhrObj && plugin) {
xhrObj.open('GET', plugin, false);
xhrObj.send('');
var pluginJson = eval("(" + xhrObj.responseText + ")");
return pluginJson;
}
}
catch (e) {}
return null;
};
var arr = [], var arr = [],
baseUrl = _.isEmpty(plugins.url) ? "" : plugins.url; baseUrl = _.isEmpty(plugins.url) ? "" : plugins.url;
if (baseUrl !== "") if (baseUrl !== "")
console.log("Obsolete: The url parameter is deprecated. Please check the documentation for new plugin connection configuration."); console.warn("Obsolete: The url parameter is deprecated. Please check the documentation for new plugin connection configuration.");
pluginsData.forEach(function(item){ pluginsData.forEach(function(item){
item = baseUrl + item; // for compatibility with previouse version of server, where plugins.url is used. item = baseUrl + item; // for compatibility with previouse version of server, where plugins.url is used.
var value = _getPluginJson(item); var value = Common.Utils.getConfigJson(item);
if (value) { if (value) {
value.baseUrl = item.substring(0, item.lastIndexOf("config.json")); value.baseUrl = item.substring(0, item.lastIndexOf("config.json"));
value.oldVersion = (baseUrl !== ""); value.oldVersion = (baseUrl !== "");
...@@ -1938,11 +1870,17 @@ define([ ...@@ -1938,11 +1870,17 @@ define([
} }
}); });
if (arr.length>0) if (arr.length>0) {
var autostart = plugins.autostart || plugins.autoStartGuid;
if (typeof (autostart) == 'string')
autostart = [autostart];
plugins.autoStartGuid && console.warn("Obsolete: The autoStartGuid parameter is deprecated. Please check the documentation for new plugin connection configuration.");
this.updatePluginsList({ this.updatePluginsList({
autoStartGuid: plugins.autoStartGuid, autostart: autostart,
pluginsData: arr pluginsData: arr
}, !!uiCustomize); }, !!uiCustomize);
}
}, },
updatePluginsList: function(plugins, uiCustomize) { updatePluginsList: function(plugins, uiCustomize) {
...@@ -1951,18 +1889,9 @@ define([ ...@@ -1951,18 +1889,9 @@ define([
if (plugins) { if (plugins) {
var arr = [], arrUI = []; var arr = [], arrUI = [];
plugins.pluginsData.forEach(function(item){ plugins.pluginsData.forEach(function(item){
if (uiCustomize!==undefined && (pluginStore.findWhere({baseUrl : item.baseUrl}) || pluginStore.findWhere({guid : item.guid}))) return; var variationsArr = [];
item.variations.forEach(function(itemVar){
var variations = item.variations, if (_.contains(itemVar.EditorsSupport, 'word') && (isEdit || itemVar.isViewer)) {
variationsArr = [];
variations.forEach(function(itemVar){
var isSupported = false;
for (var i=0; i<itemVar.EditorsSupport.length; i++){
if (itemVar.EditorsSupport[i]=='cell') {
isSupported = true; break;
}
}
if (isSupported && (isEdit || itemVar.isViewer)) {
var icons = itemVar.icons; var icons = itemVar.icons;
if (item.oldVersion) { // for compatibility with previouse version of server, where plugins.url is used. if (item.oldVersion) { // for compatibility with previouse version of server, where plugins.url is used.
icons = []; icons = [];
...@@ -2004,20 +1933,17 @@ define([ ...@@ -2004,20 +1933,17 @@ define([
if (uiCustomize!==false) // from ui customizer in editor config or desktop event if (uiCustomize!==false) // from ui customizer in editor config or desktop event
this.UICustomizePlugins = arrUI; this.UICustomizePlugins = arrUI;
if (uiCustomize === undefined) { // for desktop if ( !uiCustomize ) {
if (pluginStore) pluginStore.reset(arr); if (pluginStore) pluginStore.reset(arr);
this.appOptions.canPlugins = (pluginStore.length>0); this.appOptions.canPlugins = !pluginStore.isEmpty();
} else if (!uiCustomize) {
if (pluginStore) pluginStore.add(arr);
this.appOptions.canPlugins = (pluginStore.length>0);
} }
} else if (!uiCustomize){ } else if (!uiCustomize){
this.appOptions.canPlugins = false; this.appOptions.canPlugins = false;
} }
if (this.appOptions.canPlugins) { if (this.appOptions.canPlugins) {
this.getApplication().getController('Common.Controllers.Plugins').setMode(this.appOptions); this.getApplication().getController('Common.Controllers.Plugins').setMode(this.appOptions);
if (plugins.autoStartGuid) if (plugins.autostart && plugins.autostart.length>0)
this.api.asc_pluginRun(plugins.autoStartGuid, 0, ''); this.api.asc_pluginRun(plugins.autostart[0], 0, '');
} }
if (!uiCustomize) this.getApplication().getController('LeftMenu').enablePlugins(); if (!uiCustomize) this.getApplication().getController('LeftMenu').enablePlugins();
}, },
......
This source diff could not be displayed because it is too large. You can view the blob instead.
This diff is collapsed.
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment