Merge
This commit is contained in:
commit
60e0feecfc
|
@ -50,7 +50,6 @@
|
|||
lang: <language code>,
|
||||
location: <location>,
|
||||
canCoAuthoring: <can coauthoring documents>,
|
||||
canAutosave: <can autosave documents>,
|
||||
canBackToFolder: <can return to folder> - deprecated. use "customization.goback" parameter,
|
||||
createUrl: 'create document url',
|
||||
sharingSettingsUrl: 'document sharing settings url',
|
||||
|
@ -96,7 +95,7 @@
|
|||
info: 'Some info',
|
||||
logo: ''
|
||||
},
|
||||
about: false,
|
||||
about: true,
|
||||
feedback: {
|
||||
visible: false,
|
||||
url: http://...
|
||||
|
@ -105,15 +104,18 @@
|
|||
url: 'http://...',
|
||||
text: 'Go to London'
|
||||
},
|
||||
chat: false,
|
||||
comments: false,
|
||||
chat: true,
|
||||
comments: true,
|
||||
zoom: 100,
|
||||
compactToolbar: false,
|
||||
leftMenu: true,
|
||||
rightMenu: true,
|
||||
toolbar: true,
|
||||
header: true,
|
||||
autosave: true
|
||||
statusBar: true,
|
||||
autosave: true,
|
||||
forcesave: false,
|
||||
commentAuthorOnly: false
|
||||
},
|
||||
plugins: {
|
||||
autoStartGuid: 'asc.{FFE1F462-1EA2-4391-990D-4CC84940B754}',
|
||||
|
@ -129,8 +131,7 @@
|
|||
events: {
|
||||
'onReady': <document ready callback>,
|
||||
'onBack': <back to folder callback>,
|
||||
'onDocumentStateChange': <document state changed callback>,
|
||||
'onSave': <save request callback>
|
||||
'onDocumentStateChange': <document state changed callback>
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -258,25 +259,26 @@
|
|||
};
|
||||
|
||||
var _onMessage = function(msg) {
|
||||
if (msg && msg.frameEditorId == placeholderId) {
|
||||
var events = _config.events || {},
|
||||
handler = events[msg.event],
|
||||
res;
|
||||
|
||||
if (msg.event === 'onRequestEditRights' && !handler) {
|
||||
_applyEditRights(false, 'handler is\'n defined');
|
||||
if ( msg ) {
|
||||
if ( msg.type === "onExternalPluginMessage" ) {
|
||||
_sendCommand(msg);
|
||||
} else
|
||||
if (msg.event === 'onInternalMessage' && msg.data && msg.data.type == 'localstorage') {
|
||||
_callLocalStorage(msg.data.data);
|
||||
} else {
|
||||
if (msg.event === 'onReady') {
|
||||
_onReady();
|
||||
}
|
||||
if ( msg.frameEditorId == placeholderId ) {
|
||||
var events = _config.events || {},
|
||||
handler = events[msg.event],
|
||||
res;
|
||||
|
||||
if (handler) {
|
||||
res = handler.call(_self, { target: _self, data: msg.data });
|
||||
if (msg.event === 'onSave' && res !== false) {
|
||||
_processSaveResult(true);
|
||||
if (msg.event === 'onRequestEditRights' && !handler) {
|
||||
_applyEditRights(false, 'handler isn\'t defined');
|
||||
} else if (msg.event === 'onInternalMessage' && msg.data && msg.data.type == 'localstorage') {
|
||||
_callLocalStorage(msg.data.data);
|
||||
} else {
|
||||
if (msg.event === 'onReady') {
|
||||
_onReady();
|
||||
}
|
||||
|
||||
if (handler) {
|
||||
res = handler.call(_self, {target: _self, data: msg.data});
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -517,7 +519,8 @@
|
|||
var data = {
|
||||
type: evt.type,
|
||||
x: evt.x - r.left,
|
||||
y: evt.y - r.top
|
||||
y: evt.y - r.top,
|
||||
event: evt
|
||||
};
|
||||
|
||||
_sendCommand({
|
||||
|
@ -539,7 +542,6 @@
|
|||
return {
|
||||
showError : _showError,
|
||||
showMessage : _showMessage,
|
||||
applyEditRights : _applyEditRights,
|
||||
processSaveResult : _processSaveResult,
|
||||
processRightsChange : _processRightsChange,
|
||||
denyEditingRights : _denyEditingRights,
|
||||
|
@ -564,7 +566,7 @@
|
|||
lang: 'en',
|
||||
canCoAuthoring: true,
|
||||
customization: {
|
||||
about: false,
|
||||
about: true,
|
||||
feedback: false
|
||||
}
|
||||
}
|
||||
|
|
|
@ -65,7 +65,6 @@
|
|||
'onRequestEmailAddresses': onRequestEmailAddresses,
|
||||
'onRequestStartMailMerge': onRequestStartMailMerge,
|
||||
'onRequestHistoryClose': onRequestHistoryClose,
|
||||
'onSave': onDocumentSave,
|
||||
'onError': onError
|
||||
}
|
||||
});
|
||||
|
@ -195,12 +194,6 @@
|
|||
docEditor.applyEditRights(true, "Someone is editing this document right now. Please try again later.");
|
||||
}
|
||||
|
||||
function onDocumentSave(event) {
|
||||
var url = event.data;
|
||||
// if you want to async save process return false
|
||||
// and call api.processSaveResult when ready
|
||||
}
|
||||
|
||||
function onError(event) {
|
||||
// critical error happened
|
||||
// examine event.data.errorCode and event.data.errorDescription for details
|
||||
|
|
|
@ -142,13 +142,6 @@ if (Common === undefined) {
|
|||
_postMessage({ event: 'onReady' });
|
||||
},
|
||||
|
||||
save: function(url) {
|
||||
_postMessage({
|
||||
event: 'onSave',
|
||||
data: url
|
||||
});
|
||||
},
|
||||
|
||||
requestEditRights: function() {
|
||||
_postMessage({ event: 'onRequestEditRights' });
|
||||
},
|
||||
|
|
|
@ -401,7 +401,7 @@ define([
|
|||
$(document).off('mouseup', onMouseUp);
|
||||
};
|
||||
|
||||
var onAfterHideMenu = function(e) {
|
||||
var onAfterHideMenu = function(e, isFromInputControl) {
|
||||
me.cmpEl.find('.dropdown-toggle').blur();
|
||||
if (me.cmpEl.hasClass('active') !== me.pressed)
|
||||
me.cmpEl.trigger('button.internal.active', [me.pressed]);
|
||||
|
@ -486,14 +486,16 @@ define([
|
|||
setDisabled: function(disabled) {
|
||||
if (this.rendered && this.disabled != disabled) {
|
||||
var el = this.cmpEl,
|
||||
isGroup = el.hasClass('btn-group');
|
||||
isGroup = el.hasClass('btn-group'),
|
||||
me = this;
|
||||
|
||||
disabled = (disabled===true);
|
||||
|
||||
if (disabled !== el.hasClass('disabled')) {
|
||||
var decorateBtn = function(button) {
|
||||
button.toggleClass('disabled', disabled);
|
||||
(disabled) ? button.attr({disabled: disabled}) : button.removeAttr('disabled');
|
||||
if (!me.options.allowMouseEventsOnDisabled)
|
||||
(disabled) ? button.attr({disabled: disabled}) : button.removeAttr('disabled');
|
||||
};
|
||||
|
||||
decorateBtn(el);
|
||||
|
|
|
@ -294,10 +294,10 @@ define([
|
|||
e.preventDefault();
|
||||
},
|
||||
|
||||
onAfterHideMenu: function(e) {
|
||||
onAfterHideMenu: function(e, isFromInputControl) {
|
||||
this.cmpEl.find('.dropdown-toggle').blur();
|
||||
this.trigger('hide:after', this, e);
|
||||
Common.NotificationCenter.trigger('menu:hide');
|
||||
this.trigger('hide:after', this, e, isFromInputControl);
|
||||
Common.NotificationCenter.trigger('menu:hide', this, isFromInputControl);
|
||||
},
|
||||
|
||||
onAfterKeydownMenu: function(e) {
|
||||
|
|
|
@ -193,7 +193,7 @@ define([
|
|||
me.onAfterHideMenu(e);
|
||||
}, 10);
|
||||
} else if (e.keyCode != Common.UI.Keys.RETURN && e.keyCode != Common.UI.Keys.CTRL && e.keyCode != Common.UI.Keys.SHIFT && e.keyCode != Common.UI.Keys.ALT){
|
||||
if (!this.isMenuOpen())
|
||||
if (!this.isMenuOpen() && !e.ctrlKey)
|
||||
this.openMenu();
|
||||
|
||||
if (e.keyCode == Common.UI.Keys.UP || e.keyCode == Common.UI.Keys.DOWN) {
|
||||
|
|
|
@ -59,7 +59,8 @@ define([
|
|||
enableKeyEvents : false,
|
||||
beforeOpenHandler : null,
|
||||
additionalMenuItems : null,
|
||||
showLast: true
|
||||
showLast: true,
|
||||
minWidth: -1
|
||||
},
|
||||
|
||||
template: _.template([
|
||||
|
@ -85,6 +86,8 @@ define([
|
|||
this.rootWidth = 0;
|
||||
this.rootHeight = 0;
|
||||
this.rendered = false;
|
||||
this.needFillComboView = false;
|
||||
this.minWidth = this.options.minWidth;
|
||||
|
||||
this.fieldPicker = new Common.UI.DataView({
|
||||
cls: 'field-picker',
|
||||
|
@ -209,11 +212,13 @@ define([
|
|||
},
|
||||
|
||||
checkSize: function() {
|
||||
if (this.cmpEl) {
|
||||
if (this.cmpEl && this.cmpEl.is(':visible')) {
|
||||
var me = this,
|
||||
width = this.cmpEl.width(),
|
||||
height = this.cmpEl.height();
|
||||
|
||||
if (width < this.minWidth) return;
|
||||
|
||||
if (this.rootWidth != width || this.rootHeight != height) {
|
||||
this.rootWidth = width;
|
||||
this.rootHeight = height;
|
||||
|
@ -304,10 +309,10 @@ define([
|
|||
}
|
||||
},
|
||||
|
||||
onAfterHideMenu: function(e) {
|
||||
onAfterHideMenu: function(e, isFromInputControl) {
|
||||
this.menuPicker.selectedBeforeHideRec = this.menuPicker.getSelectedRec()[0]; // for DataView - onKeyDown - Return key
|
||||
(this.showLast) ? this.menuPicker.showLastSelected() : this.menuPicker.deselectAll();
|
||||
this.trigger('hide:after', this, e);
|
||||
this.trigger('hide:after', this, e, isFromInputControl);
|
||||
},
|
||||
|
||||
onFieldPickerSelect: function(picker, item, record) {
|
||||
|
@ -315,6 +320,7 @@ define([
|
|||
},
|
||||
|
||||
onMenuPickerSelect: function(picker, item, record, fromKeyDown) {
|
||||
this.needFillComboView = this.disabled;
|
||||
if (this.disabled || fromKeyDown===true) return;
|
||||
|
||||
this.fillComboView(record, false);
|
||||
|
@ -375,6 +381,17 @@ define([
|
|||
this.cmpEl.toggleClass('disabled', disabled);
|
||||
$('button', this.openButton.cmpEl).toggleClass('disabled', disabled);
|
||||
this.fieldPicker.setDisabled(disabled);
|
||||
|
||||
if (this.needFillComboView && !disabled) {
|
||||
var picker = this.menuPicker;
|
||||
if (picker) {
|
||||
var record = picker.getSelectedRec();
|
||||
if (record) {
|
||||
record = record[0];
|
||||
this.fillComboView(record || picker.store.at(0), false);
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
isDisabled: function() {
|
||||
|
@ -383,6 +400,8 @@ define([
|
|||
|
||||
fillComboView: function(record, forceSelect, forceFill) {
|
||||
if (!_.isUndefined(record) && record instanceof Backbone.Model){
|
||||
this.needFillComboView = false;
|
||||
|
||||
var me = this,
|
||||
store = me.menuPicker.store,
|
||||
fieldPickerEl = $(me.fieldPicker.el);
|
||||
|
@ -405,7 +424,7 @@ define([
|
|||
|
||||
var indexRec = store.indexOf(record),
|
||||
countRec = store.length,
|
||||
maxViewCount = Math.floor((fieldPickerEl.width()) / (me.itemWidth + (me.itemMarginLeft || 0) + (me.itemMarginRight || 0) + (me.itemPaddingLeft || 0) + (me.itemPaddingRight || 0) +
|
||||
maxViewCount = Math.floor(Math.max(fieldPickerEl.width(), me.minWidth) / (me.itemWidth + (me.itemMarginLeft || 0) + (me.itemMarginRight || 0) + (me.itemPaddingLeft || 0) + (me.itemPaddingRight || 0) +
|
||||
(me.itemBorderLeft || 0) + (me.itemBorderRight || 0))),
|
||||
newStyles = [];
|
||||
|
||||
|
@ -437,6 +456,10 @@ define([
|
|||
}
|
||||
},
|
||||
|
||||
clearComboView: function() {
|
||||
this.fieldPicker.store.reset([]);
|
||||
},
|
||||
|
||||
selectByIndex: function(index) {
|
||||
if (index < 0)
|
||||
this.fieldPicker.deselectAll();
|
||||
|
|
|
@ -405,6 +405,7 @@ define([
|
|||
item.off('click').off('toggle');
|
||||
item.remove();
|
||||
});
|
||||
this.rendered && this.cmpEl.find('.menu-scroll').off('click').remove();
|
||||
|
||||
me.items = [];
|
||||
},
|
||||
|
@ -439,9 +440,9 @@ define([
|
|||
e.preventDefault();
|
||||
},
|
||||
|
||||
onAfterHideMenu: function(e) {
|
||||
this.trigger('hide:after', this, e);
|
||||
Common.NotificationCenter.trigger('menu:hide', this);
|
||||
onAfterHideMenu: function(e, isFromInputControl) {
|
||||
this.trigger('hide:after', this, e, isFromInputControl);
|
||||
Common.NotificationCenter.trigger('menu:hide', this, isFromInputControl);
|
||||
},
|
||||
|
||||
onAfterKeydownMenu: function(e) {
|
||||
|
|
|
@ -347,7 +347,7 @@ define([
|
|||
var value = this.getRawValue();
|
||||
if (this.value != value) {
|
||||
this.onEnterValue();
|
||||
return false;
|
||||
return (this.value == value);
|
||||
}
|
||||
} else {
|
||||
this.onEnterValue();
|
||||
|
|
|
@ -63,7 +63,10 @@ define([
|
|||
'<div class="slider multi-slider-gradient">',
|
||||
'<div class="track"></div>',
|
||||
'<% _.each(items, function(item) { %>',
|
||||
'<div class="thumb img-commonctrl" style=""></div>',
|
||||
'<div class="thumb img-commonctrl" style="">',
|
||||
'<div class="thumb-top"></div>',
|
||||
'<div class="thumb-bottom"></div>',
|
||||
'</div>',
|
||||
'<% }); %>',
|
||||
'</div>'
|
||||
].join('')),
|
||||
|
@ -98,6 +101,7 @@ define([
|
|||
me.thumbs[i].thumb.on('dblclick', null, function() {
|
||||
me.trigger('thumbdblclick', me);
|
||||
});
|
||||
me.thumbs[i].thumbcolor = me.thumbs[i].thumb.find('> div');
|
||||
}
|
||||
|
||||
if (me.styleStr!=='') {
|
||||
|
@ -118,6 +122,7 @@ define([
|
|||
setColorValue: function(color, index) {
|
||||
var ind = (index!==undefined) ? index : this.currentThumb;
|
||||
this.colorValues[ind] = color;
|
||||
this.thumbs[ind].thumbcolor.css('background-color', color);
|
||||
this.changeGradientStyle();
|
||||
},
|
||||
|
||||
|
@ -145,6 +150,18 @@ define([
|
|||
}
|
||||
style = Common.Utils.String.format('linear-gradient(to right, {0} {1}%, {2} {3}%)', this.colorValues[0], this.getValue(0), this.colorValues[1], this.getValue(1));
|
||||
this.trackEl.css('background', style);
|
||||
},
|
||||
|
||||
sortThumbs: function() {
|
||||
var recalc_indexes = Common.UI.MultiSlider.prototype.sortThumbs.call(this),
|
||||
new_colors = [],
|
||||
me = this;
|
||||
_.each (recalc_indexes, function(recalc_index) {
|
||||
new_colors.push(me.colorValues[recalc_index]);
|
||||
});
|
||||
this.colorValues = new_colors;
|
||||
this.trigger('sortthumbs', me, recalc_indexes);
|
||||
return recalc_indexes;
|
||||
}
|
||||
});
|
||||
});
|
||||
|
|
|
@ -338,16 +338,21 @@ define([
|
|||
e.preventDefault();
|
||||
e.stopPropagation();
|
||||
|
||||
var index = e.data,
|
||||
var index = e.data.index,
|
||||
lastValue = me.thumbs[index].value,
|
||||
minValue = (index-1<0) ? 0 : me.thumbs[index-1].position,
|
||||
maxValue = (index+1<me.thumbs.length) ? me.thumbs[index+1].position : 100,
|
||||
pos = Math.max(minValue, Math.min(maxValue, (Math.round((e.pageX*Common.Utils.zoom() - me.cmpEl.offset().left - me._dragstart) / me.width * 100)))),
|
||||
position = Math.round((e.pageX*Common.Utils.zoom() - me.cmpEl.offset().left - me._dragstart) / me.width * 100),
|
||||
need_sort = position < minValue || position > maxValue,
|
||||
pos = Math.max(0, Math.min(100, position)),
|
||||
value = pos/me.delta + me.minValue;
|
||||
|
||||
me.setThumbPosition(index, pos);
|
||||
me.thumbs[index].value = value;
|
||||
|
||||
if (need_sort)
|
||||
me.sortThumbs();
|
||||
|
||||
$(document).off('mouseup', onMouseUp);
|
||||
$(document).off('mousemove', onMouseMove);
|
||||
|
||||
|
@ -362,16 +367,21 @@ define([
|
|||
e.preventDefault();
|
||||
e.stopPropagation();
|
||||
|
||||
var index = e.data,
|
||||
var index = e.data.index,
|
||||
lastValue = me.thumbs[index].value,
|
||||
minValue = (index-1<0) ? 0 : me.thumbs[index-1].position,
|
||||
maxValue = (index+1<me.thumbs.length) ? me.thumbs[index+1].position : 100,
|
||||
pos = Math.max(minValue, Math.min(maxValue, (Math.round((e.pageX*Common.Utils.zoom() - me.cmpEl.offset().left - me._dragstart) / me.width * 100)))),
|
||||
position = Math.round((e.pageX*Common.Utils.zoom() - me.cmpEl.offset().left - me._dragstart) / me.width * 100),
|
||||
need_sort = position < minValue || position > maxValue,
|
||||
pos = Math.max(0, Math.min(100, position)),
|
||||
value = pos/me.delta + me.minValue;
|
||||
|
||||
me.setThumbPosition(index, pos);
|
||||
me.thumbs[index].value = value;
|
||||
|
||||
if (need_sort)
|
||||
me.sortThumbs();
|
||||
|
||||
if (Math.abs(value-lastValue)>0.001)
|
||||
me.trigger('change', me, value, lastValue);
|
||||
};
|
||||
|
@ -379,7 +389,7 @@ define([
|
|||
var onMouseDown = function (e) {
|
||||
if ( me.disabled ) return;
|
||||
|
||||
var index = e.data,
|
||||
var index = e.data.index,
|
||||
thumb = me.thumbs[index].thumb;
|
||||
|
||||
me._dragstart = e.pageX*Common.Utils.zoom() - thumb.offset().left - thumb.width()/2;
|
||||
|
@ -389,8 +399,8 @@ define([
|
|||
(index == idx) ? item.thumb.css('z-index', 500) : item.thumb.css('z-index', '');
|
||||
});
|
||||
|
||||
$(document).on('mouseup', null, index, onMouseUp);
|
||||
$(document).on('mousemove', null, index, onMouseMove);
|
||||
$(document).on('mouseup', null, e.data, onMouseUp);
|
||||
$(document).on('mousemove', null, e.data, onMouseMove);
|
||||
};
|
||||
|
||||
var onTrackMouseDown = function (e) {
|
||||
|
@ -441,7 +451,7 @@ define([
|
|||
index: index
|
||||
});
|
||||
me.setValue(index, me.options.values[index]);
|
||||
thumb.on('mousedown', null, index, onMouseDown);
|
||||
thumb.on('mousedown', null, me.thumbs[index], onMouseDown);
|
||||
});
|
||||
me.setActiveThumb(0, true);
|
||||
|
||||
|
@ -489,6 +499,18 @@ define([
|
|||
if (disabled !== this.disabled)
|
||||
this.cmpEl.toggleClass('disabled', disabled);
|
||||
this.disabled = disabled;
|
||||
},
|
||||
|
||||
sortThumbs: function() {
|
||||
this.thumbs.sort(function(a, b) {
|
||||
return (a.position - b.position);
|
||||
});
|
||||
var recalc_indexes = [];
|
||||
_.each (this.thumbs, function(thumb, index) {
|
||||
recalc_indexes.push(thumb.index);
|
||||
thumb.index = index;
|
||||
});
|
||||
return recalc_indexes;
|
||||
}
|
||||
});
|
||||
});
|
||||
|
|
|
@ -698,7 +698,8 @@ define([
|
|||
editText : false,
|
||||
editTextInPopover : false,
|
||||
showReplyInPopover : false,
|
||||
scope : t.view
|
||||
scope : t.view,
|
||||
editable : t.mode.canEditComments || (data.asc_getReply(i).asc_getUserId() == t.currentUserId)
|
||||
}));
|
||||
}
|
||||
|
||||
|
@ -1047,7 +1048,8 @@ define([
|
|||
editTextInPopover : (this.editPopover ? true : false),
|
||||
showReplyInPopover : false,
|
||||
hideAddReply : !_.isUndefined(this.hidereply) ? this.hidereply : (this.showPopover ? true : false),
|
||||
scope : this.view
|
||||
scope : this.view,
|
||||
editable : this.mode.canEditComments || (data.asc_getUserId() == this.currentUserId)
|
||||
});
|
||||
if (comment) {
|
||||
var replies = this.readSDKReplies(data);
|
||||
|
@ -1078,7 +1080,8 @@ define([
|
|||
editText : false,
|
||||
editTextInPopover : false,
|
||||
showReplyInPopover : false,
|
||||
scope : this.view
|
||||
scope : this.view,
|
||||
editable : this.mode.canEditComments || (data.asc_getReply(i).asc_getUserId() == this.currentUserId)
|
||||
}));
|
||||
}
|
||||
|
||||
|
@ -1229,7 +1232,7 @@ define([
|
|||
for (i = 0; i < comments.length; ++i) {
|
||||
comment = this.findComment(comments[i].asc_getId());
|
||||
if (comment) {
|
||||
comment.set('editTextInPopover', true);
|
||||
comment.set('editTextInPopover', t.mode.canEditComments);// dont't edit comment when customization->commentAuthorOnly is true
|
||||
comment.set('hint', false);
|
||||
this.popoverComments.push(comment);
|
||||
}
|
||||
|
|
|
@ -114,6 +114,7 @@ define([
|
|||
createExternalEditor.apply(this);
|
||||
}
|
||||
this.isExternalEditorVisible = true;
|
||||
this.isHandlerCalled = false;
|
||||
}, this),
|
||||
'hide': _.bind(function(cmp){
|
||||
if (externalEditor) {
|
||||
|
@ -138,6 +139,8 @@ define([
|
|||
},
|
||||
|
||||
handler: function(result, value) {
|
||||
if (this.isHandlerCalled) return;
|
||||
this.isHandlerCalled = true;
|
||||
externalEditor && externalEditor.serviceCommand('queryClose',{mr:result});
|
||||
return true;
|
||||
},
|
||||
|
|
|
@ -57,6 +57,7 @@ define([
|
|||
this.currentArrColors = [];
|
||||
this.currentDocId = '';
|
||||
this.currentDocIdPrev = '';
|
||||
this.currentRev = 0;
|
||||
},
|
||||
|
||||
events: {
|
||||
|
@ -74,6 +75,7 @@ define([
|
|||
setApi: function(api) {
|
||||
this.api = api;
|
||||
this.api.asc_registerCallback('asc_onDownloadUrl', _.bind(this.onDownloadUrl, this));
|
||||
this.api.asc_registerCallback('asc_onExpiredToken', _.bind(this.onExpiredToken, this));
|
||||
return this;
|
||||
},
|
||||
|
||||
|
@ -127,6 +129,7 @@ define([
|
|||
this.currentArrColors = record.get('arrColors');
|
||||
this.currentDocId = record.get('docId');
|
||||
this.currentDocIdPrev = record.get('docIdPrev');
|
||||
this.currentRev = rev;
|
||||
|
||||
if ( _.isEmpty(url) || (urlGetTime - record.get('urlGetTime') > 5 * 60000)) {
|
||||
_.delay(function() {
|
||||
|
@ -134,12 +137,15 @@ define([
|
|||
}, 10);
|
||||
} else {
|
||||
var urlDiff = record.get('urlDiff'),
|
||||
token = record.get('token'),
|
||||
hist = new Asc.asc_CVersionHistory();
|
||||
hist.asc_setDocId(_.isEmpty(urlDiff) ? this.currentDocId : this.currentDocIdPrev);
|
||||
hist.asc_setUrl(url);
|
||||
hist.asc_setUrlChanges(urlDiff);
|
||||
hist.asc_setCurrentChangeId(this.currentChangeId);
|
||||
hist.asc_setArrColors(this.currentArrColors);
|
||||
hist.asc_setToken(token);
|
||||
hist.asc_setIsRequested(false);
|
||||
this.api.asc_showRevision(hist);
|
||||
|
||||
var commentsController = this.getApplication().getController('Common.Controllers.Comments');
|
||||
|
@ -166,7 +172,8 @@ define([
|
|||
var diff = (this.currentChangeId===undefined) ? null : opts.data.changesUrl, // if revision has changes, but serverVersion !== app.buildVersion -> hide revision changes
|
||||
url = (!_.isEmpty(diff) && opts.data.previous) ? opts.data.previous.url : opts.data.url,
|
||||
docId = opts.data.key ? opts.data.key : this.currentDocId,
|
||||
docIdPrev = opts.data.previous && opts.data.previous.key ? opts.data.previous.key : this.currentDocIdPrev;
|
||||
docIdPrev = opts.data.previous && opts.data.previous.key ? opts.data.previous.key : this.currentDocIdPrev,
|
||||
token = opts.data.token;
|
||||
|
||||
if (revisions && revisions.length>0) {
|
||||
for(var i=0; i<revisions.length; i++) {
|
||||
|
@ -178,6 +185,7 @@ define([
|
|||
rev.set('docId', docId, {silent: true});
|
||||
rev.set('docIdPrev', docIdPrev, {silent: true});
|
||||
}
|
||||
rev.set('token', token, {silent: true});
|
||||
}
|
||||
}
|
||||
var hist = new Asc.asc_CVersionHistory();
|
||||
|
@ -186,6 +194,8 @@ define([
|
|||
hist.asc_setDocId(_.isEmpty(diff) ? docId : docIdPrev);
|
||||
hist.asc_setCurrentChangeId(this.currentChangeId);
|
||||
hist.asc_setArrColors(this.currentArrColors);
|
||||
hist.asc_setToken(token);
|
||||
hist.asc_setIsRequested(true);
|
||||
this.api.asc_showRevision(hist);
|
||||
|
||||
var commentsController = this.getApplication().getController('Common.Controllers.Comments');
|
||||
|
@ -194,6 +204,13 @@ define([
|
|||
}
|
||||
},
|
||||
|
||||
onExpiredToken: function() {
|
||||
var me = this;
|
||||
_.delay(function() {
|
||||
Common.Gateway.requestHistoryData(me.currentRev); // получаем url-ы для ревизий
|
||||
}, 10);
|
||||
},
|
||||
|
||||
onClickBackToDocument: function () {
|
||||
// reload editor
|
||||
Common.Gateway.requestHistoryClose();
|
||||
|
|
|
@ -511,15 +511,7 @@ define([
|
|||
_setReviewStatus(false);
|
||||
} else {
|
||||
me.api.asc_HaveRevisionsChanges() && me.view.markChanges(true);
|
||||
|
||||
var value = Common.localStorage.getItem("de-track-changes");
|
||||
if ( value!== null && parseInt(value) == 1) {
|
||||
_setReviewStatus(true);
|
||||
|
||||
} else {
|
||||
_setReviewStatus(false);
|
||||
|
||||
}
|
||||
_setReviewStatus(Common.localStorage.getBool("de-track-changes"));
|
||||
}
|
||||
|
||||
if ( Common.localStorage.getBool("de-settings-spellcheck") )
|
||||
|
|
|
@ -186,13 +186,13 @@ function getParent($this) {
|
|||
return $parent && $parent.length ? $parent : $this.parent();
|
||||
}
|
||||
|
||||
function clearMenus() {
|
||||
function clearMenus(isFromInputControl) {
|
||||
$('.dropdown-toggle').each(function (e) {
|
||||
var $parent = ($(this)).parent();
|
||||
if (!$parent.hasClass('open')) return;
|
||||
$parent.trigger(e = $.Event('hide.bs.dropdown'));
|
||||
if (e.isDefaultPrevented()) return;
|
||||
$parent.removeClass('open').trigger('hidden.bs.dropdown');
|
||||
$parent.removeClass('open').trigger('hidden.bs.dropdown', isFromInputControl);
|
||||
})
|
||||
}
|
||||
|
||||
|
@ -217,7 +217,7 @@ $(document)
|
|||
|
||||
function onDropDownClick(e) {
|
||||
if (e.which == 1 || e.which == undefined)
|
||||
clearMenus();
|
||||
clearMenus(/form-control/.test(e.target.className));
|
||||
}
|
||||
|
||||
if (!!clickDefHandler) {
|
||||
|
|
|
@ -75,7 +75,8 @@ define([
|
|||
scope : null,
|
||||
hide : false,
|
||||
hint : false,
|
||||
dummy : undefined
|
||||
dummy : undefined,
|
||||
editable : true
|
||||
}
|
||||
});
|
||||
Common.Models.Reply = Backbone.Model.extend({
|
||||
|
@ -89,7 +90,8 @@ define([
|
|||
id : Common.UI.getId(), // internal
|
||||
editText : false,
|
||||
editTextInPopover : false,
|
||||
scope : null
|
||||
scope : null,
|
||||
editable : true
|
||||
}
|
||||
});
|
||||
});
|
||||
|
|
|
@ -64,6 +64,7 @@ define([
|
|||
urlGetTime : '',
|
||||
docId: '',
|
||||
docIdPrev: '',
|
||||
token: '',
|
||||
arrColors: [], // array of user colors for all changes of current version
|
||||
markedAsVersion: false,
|
||||
canRestore: false,
|
||||
|
|
|
@ -29,7 +29,9 @@
|
|||
<% if (!item.get("editText")) { %>
|
||||
<div class="user-message" data-can-copy="true"><%=scope.pickLink(item.get("reply"))%></div>
|
||||
<div class="btns-reply-ct">
|
||||
<div class="btn-edit img-commonctrl" data-value="<%=item.get("id")%>"></div>
|
||||
<% if (item.get("editable")) { %>
|
||||
<div class="btn-edit img-commonctrl" data-value="<%=item.get("id")%>"></div>
|
||||
<% } %>
|
||||
<div class="btn-delete img-commonctrl" data-value="<%=item.get("id")%>"></div>
|
||||
</div>
|
||||
<% } else { %>
|
||||
|
@ -57,7 +59,9 @@
|
|||
|
||||
<% if (!editText && !lock) { %>
|
||||
<div class="edit-ct">
|
||||
<div class="btn-edit img-commonctrl"></div>
|
||||
<% if (editable) { %>
|
||||
<div class="btn-edit img-commonctrl"></div>
|
||||
<% } %>
|
||||
<div class="btn-delete img-commonctrl"></div>
|
||||
<% if (resolved) { %>
|
||||
<div class="btn-resolve-check img-commonctrl" data-toggle="tooltip"></div>
|
||||
|
|
|
@ -30,7 +30,9 @@
|
|||
<div class="user-message"><%=scope.pickLink(item.get("reply"))%></div>
|
||||
<% if (!hint) { %>
|
||||
<div class="btns-reply-ct">
|
||||
<div class="btn-edit img-commonctrl" data-value="<%=item.get("id")%>"></div>
|
||||
<% if (item.get("editable")) { %>
|
||||
<div class="btn-edit img-commonctrl" data-value="<%=item.get("id")%>"></div>
|
||||
<%}%>
|
||||
<div class="btn-delete img-commonctrl" data-value="<%=item.get("id")%>"></div>
|
||||
</div>
|
||||
<%}%>
|
||||
|
@ -60,7 +62,9 @@
|
|||
|
||||
<% if (!editTextInPopover && !lock && !hint) { %>
|
||||
<div class="edit-ct">
|
||||
<div class="btn-edit img-commonctrl"></div>
|
||||
<% if (editable) { %>
|
||||
<div class="btn-edit img-commonctrl"></div>
|
||||
<% } %>
|
||||
<div class="btn-delete img-commonctrl"></div>
|
||||
<% if (resolved) { %>
|
||||
<div class="btn-resolve-check img-commonctrl" data-toggle="tooltip"></div>
|
||||
|
|
|
@ -1,7 +1,6 @@
|
|||
<div id="header-container">
|
||||
<div id="header-logo"></div>
|
||||
<div id="header-caption"><div><%= headerCaption %></div></div>
|
||||
<div id="header-developer" class="hidden"><div><%= headerDeveloper %></div></div>
|
||||
<div id="header-documentcaption"><div><%= documentCaption %></div></div>
|
||||
<div id="header-back" style="display: <%= canBack ? 'table-cell' : 'none' %>;"><div><%= textBack %></div></div>
|
||||
</div>
|
|
@ -71,7 +71,7 @@ define([
|
|||
|
||||
var templateRightBox = '<section>' +
|
||||
'<label id="rib-doc-name" class="status-label"></label>' +
|
||||
'<a href="#" id="rib-save-status" class="status-label locked">All changes saved</a>' +
|
||||
'<a href="#" id="rib-save-status" class="status-label locked"><%= textSaveEnd %></a>' +
|
||||
'<div class="elset">' +
|
||||
// '<span class="btn-slot text" id="slot-btn-users"></span>' +
|
||||
'<section id="tlb-box-users" class="box-cousers dropdown"">' +
|
||||
|
@ -90,7 +90,7 @@ define([
|
|||
'</section>';
|
||||
|
||||
var templateLeftBox = '<section>' +
|
||||
'<div id="header-logo"></div>'
|
||||
'<div id="header-logo"></div>' +
|
||||
'</section>';
|
||||
|
||||
function onAddUser(model, collection, opts) {
|
||||
|
@ -239,7 +239,7 @@ define([
|
|||
$labelChangeRights[(!mode.isOffline && !mode.isReviewOnly && mode.sharingSettingsUrl && mode.sharingSettingsUrl.length)?'show':'hide']();
|
||||
$panelUsers[(storeUsers.size() > 1 || !mode.isOffline && !mode.isReviewOnly && mode.sharingSettingsUrl && mode.sharingSettingsUrl.length) ? 'show' : 'hide']();
|
||||
|
||||
$saveStatus.attr('data-width', this.textSaveExpander);
|
||||
$saveStatus.attr('data-width', me.textSaveExpander);
|
||||
if ( appConfig.canUseHistory ) {
|
||||
// $saveStatus.on('click', function(e) {
|
||||
// me.fireEvent('history:show', ['header']);
|
||||
|
@ -253,7 +253,6 @@ define([
|
|||
options: {
|
||||
branding: {},
|
||||
headerCaption: 'Default Caption',
|
||||
// headerDeveloper: 'DEVELOPER MODE',
|
||||
documentCaption: '',
|
||||
canBack: false
|
||||
},
|
||||
|
@ -273,10 +272,10 @@ define([
|
|||
this.options = this.options ? _({}).extend(this.options, options) : options;
|
||||
|
||||
this.headerCaption = this.options.headerCaption;
|
||||
// this.headerDeveloper = this.txtHeaderDeveloper;
|
||||
this.documentCaption = this.options.documentCaption;
|
||||
this.canBack = this.options.canBack;
|
||||
this.branding = this.options.customization;
|
||||
this.isModified = false;
|
||||
|
||||
me.btnGoBack = new Common.UI.Button({
|
||||
id: 'btn-goback',
|
||||
|
@ -322,7 +321,8 @@ define([
|
|||
if ( role == 'right' ) {
|
||||
var $html = $(_.template(templateRightBox, {
|
||||
tipUsers: this.labelCoUsersDescr,
|
||||
txtAccessRights: this.txtAccessRights
|
||||
txtAccessRights: this.txtAccessRights,
|
||||
textSaveEnd: this.textSaveEnd
|
||||
}));
|
||||
|
||||
if ( this.canBack === true ) {
|
||||
|
@ -334,7 +334,7 @@ define([
|
|||
Common.Utils.String.htmlEncode(this.documentCaption) );
|
||||
}
|
||||
|
||||
this.labelDocName = $html.find('#doc-name');
|
||||
this.labelDocName = $html.find('#rib-doc-name');
|
||||
$userList = $html.find('.cousers-list');
|
||||
$panelUsers = $html.find('.box-cousers');
|
||||
$btnUsers = $html.find('.btn-users');
|
||||
|
@ -377,10 +377,11 @@ define([
|
|||
return this.headerCaption;
|
||||
},
|
||||
|
||||
setDocumentCaption: function (value, applyOnly) {
|
||||
setDocumentCaption: function(value) {
|
||||
!value && (value = '');
|
||||
|
||||
this.documentCaption = value;
|
||||
this.isModified && (value += '*');
|
||||
if ( this.labelDocName )
|
||||
this.labelDocName.html(Common.Utils.String.htmlEncode(value));
|
||||
|
||||
|
@ -392,6 +393,8 @@ define([
|
|||
},
|
||||
|
||||
setDocumentChanged: function (changed) {
|
||||
this.isModified = changed;
|
||||
|
||||
var _name = Common.Utils.String.htmlEncode(this.documentCaption);
|
||||
changed && (_name += '*');
|
||||
|
||||
|
@ -408,10 +411,6 @@ define([
|
|||
return this.canBack;
|
||||
},
|
||||
|
||||
setDeveloperMode: function (mode) {
|
||||
// $('#header-developer').toggleClass('hidden', !mode);
|
||||
},
|
||||
|
||||
setCanRename: function (rename) {
|
||||
// var dc = $('#header-documentcaption div');
|
||||
// if (rename) {
|
||||
|
@ -456,8 +455,17 @@ define([
|
|||
},
|
||||
|
||||
textBack: 'Go to Documents',
|
||||
// txtHeaderDeveloper: 'DEVELOPER MODE',
|
||||
txtRename: 'Rename'
|
||||
txtRename: 'Rename',
|
||||
itemBackNewTab: 'Open in New Tab',
|
||||
itemBackCurrTab: 'Open in Current Tab',
|
||||
textSaveBegin: 'Saving...',
|
||||
textSaveEnd: 'All changes saved',
|
||||
textSaveChanged: 'Modified',
|
||||
textSaveExpander: 'All changes saved',
|
||||
txtAccessRights: 'Change access rights',
|
||||
tipAccessRights: 'Manage document access rights',
|
||||
labelCoUsersDescr: 'Document is currently being edited by several users.',
|
||||
tipViewUsers: 'View users and manage document access rights'
|
||||
}
|
||||
}(), Common.Views.Header || {}))
|
||||
});
|
||||
|
|
|
@ -712,7 +712,17 @@ define([
|
|||
txtAcceptAll: 'Accept all Changes',
|
||||
txtReject: 'Reject',
|
||||
txtRejectCurrent: 'Reject current Changes',
|
||||
txtRejectAll: 'Reject all Changes'
|
||||
txtRejectAll: 'Reject all Changes',
|
||||
hintNext: 'To Next Change',
|
||||
hintPrev: 'To Previous Change',
|
||||
txtPrev: 'Previous',
|
||||
txtNext: 'Next',
|
||||
txtTurnon: 'Turn On',
|
||||
txtSpelling: 'Spell checking',
|
||||
txtDocLang: 'Language',
|
||||
tipSetDocLang: 'Set Document Language',
|
||||
tipSetSpelling: 'Spell checking',
|
||||
tipReview: 'Review'
|
||||
}
|
||||
}()), Common.Views.ReviewChanges || {}))
|
||||
});
|
|
@ -295,7 +295,7 @@
|
|||
height: 20px;
|
||||
line-height: @line-height-base;
|
||||
background-color: #EE3525;
|
||||
margin: 18px 25px;
|
||||
margin: 10px 18px;
|
||||
padding: 2px 10px;
|
||||
color: #fff;
|
||||
overflow: hidden;
|
||||
|
|
|
@ -7,34 +7,6 @@
|
|||
// cursor: pointer;
|
||||
//}
|
||||
|
||||
//#header-developer {
|
||||
// background-color: #ffb400;
|
||||
// padding-left: 15px + @app-header-height / 3;
|
||||
// & > div {
|
||||
// position: relative;
|
||||
// background-color: #ffb400;
|
||||
// color: #6e4e00 !important;
|
||||
// padding-right: 15px;
|
||||
// cursor: default;
|
||||
// z-index: 1;
|
||||
// white-space: nowrap;
|
||||
// height: @app-header-height;
|
||||
// line-height: @app-header-height;
|
||||
//
|
||||
// &:after {
|
||||
// content: '';
|
||||
// position: absolute;
|
||||
// top: 0;
|
||||
// right: -@app-header-height / 2;
|
||||
// width: @app-header-height / 2;
|
||||
// height: @app-header-height;
|
||||
// border-top: @app-header-height / 2 solid transparent;
|
||||
// border-left: @app-header-height / 3 solid #ffb400;
|
||||
// border-bottom: @app-header-height / 2 solid transparent;
|
||||
// }
|
||||
// }
|
||||
//}
|
||||
|
||||
//#header-documentcaption {
|
||||
// width: 100%;
|
||||
// max-width: 100px;
|
||||
|
|
|
@ -4,10 +4,41 @@
|
|||
|
||||
.thumb {
|
||||
top: 18px;
|
||||
background-position: @multislide-thumb-offset-x @multislide-thumb-offset-y;
|
||||
background: none;
|
||||
|
||||
&.active {
|
||||
background-position: @multislide-thumb-offset-x @multislide-thumb-offset-y - 30px;
|
||||
.thumb-top {
|
||||
position: absolute;
|
||||
top: 2px;
|
||||
left: 2px;
|
||||
width: 9px;
|
||||
height: 9px;
|
||||
background-color: #ffffff;
|
||||
-moz-transform: rotate(45deg);
|
||||
-ms-transform: rotate(45deg);
|
||||
-webkit-transform: rotate(45deg);
|
||||
-o-transform: rotate(45deg);
|
||||
transform: rotate(45deg);
|
||||
border-top: solid 1px @gray-darker;
|
||||
border-left: solid 1px @gray-darker;
|
||||
border-radius: 0 3px;
|
||||
box-sizing: content-box;
|
||||
}
|
||||
|
||||
.thumb-bottom {
|
||||
position: absolute;
|
||||
top: 6px;
|
||||
left: 1px;
|
||||
width: 10px;
|
||||
height: 8px;
|
||||
background-color: #ffffff;
|
||||
border: solid 1px @gray-darker;
|
||||
border-top: none;
|
||||
border-radius: 2px;
|
||||
box-sizing: content-box;
|
||||
}
|
||||
|
||||
&.active .thumb-bottom {
|
||||
border-bottom-width: 2px;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -181,6 +181,8 @@ define([
|
|||
if (this.mode.canUseHistory)
|
||||
this.leftMenu.setOptionsPanel('history', this.getApplication().getController('Common.Controllers.History').getView('Common.Views.History'));
|
||||
|
||||
this.mode.isTrial && this.leftMenu.setDeveloperMode(true);
|
||||
|
||||
Common.util.Shortcuts.resumeEvents();
|
||||
return this;
|
||||
},
|
||||
|
@ -191,6 +193,7 @@ define([
|
|||
this.leftMenu.setOptionsPanel('plugins', this.getApplication().getController('Common.Controllers.Plugins').getView('Common.Views.Plugins'));
|
||||
} else
|
||||
this.leftMenu.btnPlugins.hide();
|
||||
this.mode.isTrial && this.leftMenu.setDeveloperMode(true);
|
||||
},
|
||||
|
||||
clickMenuFileItem: function(menu, action, isopts) {
|
||||
|
|
|
@ -69,7 +69,8 @@ define([
|
|||
toolbar: '#viewport #toolbar',
|
||||
leftMenu: '#viewport #left-menu, #viewport #id-toolbar-full-placeholder-btn-settings, #viewport #id-toolbar-short-placeholder-btn-settings',
|
||||
rightMenu: '#viewport #right-menu',
|
||||
header: '#viewport #header'
|
||||
header: '#viewport #header',
|
||||
statusBar: '#statusbar'
|
||||
};
|
||||
|
||||
Common.localStorage.setId('text');
|
||||
|
@ -103,8 +104,8 @@ define([
|
|||
weakCompare : function(obj1, obj2){return obj1.type === obj2.type;}
|
||||
});
|
||||
|
||||
this._state = {isDisconnected: false, usersCount: 1, fastCoauth: true, startModifyDocument: true, lostEditingRights: false, licenseWarning: false};
|
||||
|
||||
this._state = {isDisconnected: false, usersCount: 1, fastCoauth: true, lostEditingRights: false, licenseWarning: false};
|
||||
this.languages = null;
|
||||
// Initialize viewport
|
||||
|
||||
if (!Common.Utils.isBrowserSupported()){
|
||||
|
@ -135,10 +136,13 @@ define([
|
|||
this.api.asc_registerCallback('asc_onDocumentContentReady', _.bind(this.onDocumentContentReady, this));
|
||||
this.api.asc_registerCallback('asc_onOpenDocumentProgress', _.bind(this.onOpenDocument, this));
|
||||
this.api.asc_registerCallback('asc_onDocumentUpdateVersion', _.bind(this.onUpdateVersion, this));
|
||||
this.api.asc_registerCallback('asc_onServerVersion', _.bind(this.onServerVersion, this));
|
||||
this.api.asc_registerCallback('asc_onAdvancedOptions', _.bind(this.onAdvancedOptions, this));
|
||||
this.api.asc_registerCallback('asc_onDocumentName', _.bind(this.onDocumentName, this));
|
||||
this.api.asc_registerCallback('asc_onPrintUrl', _.bind(this.onPrintUrl, this));
|
||||
this.api.asc_registerCallback('asc_onMeta', _.bind(this.onMeta, this));
|
||||
this.api.asc_registerCallback('asc_onSpellCheckInit', _.bind(this.loadLanguages, this));
|
||||
|
||||
Common.NotificationCenter.on('api:disconnect', _.bind(this.onCoAuthoringDisconnect, this));
|
||||
Common.NotificationCenter.on('goback', _.bind(this.goBack, this));
|
||||
|
||||
|
@ -167,6 +171,8 @@ define([
|
|||
if (!/area_id/.test(e.target.id)) {
|
||||
if (/msg-reply/.test(e.target.className))
|
||||
me.dontCloseDummyComment = true;
|
||||
else if (/chat-msg-text/.test(e.target.id))
|
||||
me.dontCloseChat = true;
|
||||
}
|
||||
});
|
||||
|
||||
|
@ -179,6 +185,8 @@ define([
|
|||
me.api.asc_enableKeyEvents(true);
|
||||
if (/msg-reply/.test(e.target.className))
|
||||
me.dontCloseDummyComment = false;
|
||||
else if (/chat-msg-text/.test(e.target.id))
|
||||
me.dontCloseChat = false;
|
||||
}
|
||||
}
|
||||
}).on('dragover', function(e) {
|
||||
|
@ -217,14 +225,23 @@ define([
|
|||
},
|
||||
'menu:show': function(e){
|
||||
},
|
||||
'menu:hide': function(e){
|
||||
if (!me.isModalShowed)
|
||||
'menu:hide': function(e, isFromInputControl){
|
||||
if (!me.isModalShowed && !isFromInputControl)
|
||||
me.api.asc_enableKeyEvents(true);
|
||||
},
|
||||
'edit:complete': _.bind(me.onEditComplete, me)
|
||||
});
|
||||
|
||||
this.initNames(); //for shapes
|
||||
|
||||
Common.util.Shortcuts.delegateShortcuts({
|
||||
shortcuts: {
|
||||
'command+s,ctrl+s': _.bind(function (e) {
|
||||
e.preventDefault();
|
||||
e.stopPropagation();
|
||||
}, this)
|
||||
}
|
||||
});
|
||||
}
|
||||
},
|
||||
|
||||
|
@ -540,10 +557,13 @@ define([
|
|||
application.getController('DocumentHolder').getView().focus();
|
||||
|
||||
if (this.api) {
|
||||
var cansave = this.api.asc_isDocumentCanSave();
|
||||
var isSyncButton = $('.btn-icon', toolbarView.btnSave.cmpEl).hasClass('btn-synch');
|
||||
var cansave = this.api.asc_isDocumentCanSave(),
|
||||
forcesave = this.appOptions.forcesave;
|
||||
var isSyncButton = $('.icon', toolbarView.btnSave.cmpEl).hasClass('btn-synch');
|
||||
if (toolbarView.btnSave.isDisabled() !== (!cansave && !isSyncButton || this._state.isDisconnected || this._state.fastCoauth && this._state.usersCount>1))
|
||||
toolbarView.btnSave.setDisabled(!cansave && !isSyncButton || this._state.isDisconnected || this._state.fastCoauth && this._state.usersCount>1);
|
||||
if (toolbarView.btnSave.isDisabled() !== (!cansave && !isSyncButton && !forcesave || this._state.isDisconnected || this._state.fastCoauth && this._state.usersCount>1 && !forcesave))
|
||||
toolbarView.btnSave.setDisabled(!cansave && !isSyncButton && !forcesave || this._state.isDisconnected || this._state.fastCoauth && this._state.usersCount>1 && !forcesave);
|
||||
}
|
||||
},
|
||||
|
||||
|
@ -568,41 +588,35 @@ define([
|
|||
if (action) {
|
||||
this.setLongActionView(action)
|
||||
} else {
|
||||
if ( id==Asc.c_oAscAsyncAction.Save ) {
|
||||
var me = this;
|
||||
if ( me._state.fastCoauth && me._state.usersCount > 1 ) {
|
||||
if ( !me._state.timerSave &&
|
||||
Date.now() - me._state.isSaving < 500 )
|
||||
{
|
||||
me._state.timerSave = setTimeout(function () {
|
||||
me.getApplication().getController('Viewport').getView('Common.Views.Header').setSaveStatus('end');
|
||||
delete me._state.timerSave;
|
||||
}, 500);
|
||||
}
|
||||
} else {
|
||||
me.getApplication().getController('Viewport').getView('Common.Views.Header').setSaveStatus('end');
|
||||
}
|
||||
} else {
|
||||
if (id==Asc.c_oAscAsyncAction['Save'] || id==Asc.c_oAscAsyncAction['ForceSaveButton']) {
|
||||
if (this._state.fastCoauth && this._state.usersCount>1) {
|
||||
var me = this;
|
||||
me._state.timerSave = setTimeout(function () {
|
||||
me.getApplication().getController('Viewport').getView('Common.Views.Header').setSaveStatus('end');
|
||||
delete me._state.timerSave;
|
||||
}, 500);
|
||||
} else
|
||||
this.getApplication().getController('Viewport').getView('Common.Views.Header').setSaveStatus('end');
|
||||
} else
|
||||
this.getApplication().getController('Statusbar').setStatusCaption('');
|
||||
}
|
||||
}
|
||||
|
||||
action = this.stackLongActions.get({type: Asc.c_oAscAsyncActionType.BlockInteraction});
|
||||
action ? this.setLongActionView(action) : this.loadMask && this.loadMask.hide();
|
||||
|
||||
if (id==Asc.c_oAscAsyncAction['Save'] && (!this._state.fastCoauth || this._state.usersCount<2))
|
||||
if ((id==Asc.c_oAscAsyncAction['Save'] || id==Asc.c_oAscAsyncAction['ForceSaveButton']) && (!this._state.fastCoauth || this._state.usersCount<2))
|
||||
this.synchronizeChanges();
|
||||
|
||||
if ( type == Asc.c_oAscAsyncActionType.BlockInteraction &&
|
||||
(!this.getApplication().getController('LeftMenu').dlgSearch || !this.getApplication().getController('LeftMenu').dlgSearch.isVisible()) &&
|
||||
!( id == Asc.c_oAscAsyncAction['ApplyChanges'] && this.dontCloseDummyComment ) ) {
|
||||
!( id == Asc.c_oAscAsyncAction['ApplyChanges'] && (this.dontCloseDummyComment || this.dontCloseChat)) ) {
|
||||
// this.onEditComplete(this.loadMask); //если делать фокус, то при принятии чужих изменений, заканчивается свой композитный ввод
|
||||
this.api.asc_enableKeyEvents(true);
|
||||
}
|
||||
},
|
||||
|
||||
setLongActionView: function(action) {
|
||||
var title = '', text = '';
|
||||
var title = '', text = '', force = false;
|
||||
|
||||
switch (action.id) {
|
||||
case Asc.c_oAscAsyncAction['Open']:
|
||||
|
@ -611,7 +625,9 @@ define([
|
|||
break;
|
||||
|
||||
case Asc.c_oAscAsyncAction['Save']:
|
||||
this._state.isSaving = Date.now();
|
||||
case Asc.c_oAscAsyncAction['ForceSaveButton']:
|
||||
clearTimeout(this._state.timerSave);
|
||||
force = true;
|
||||
// title = this.saveTitleText;
|
||||
// text = this.saveTextText;
|
||||
break;
|
||||
|
@ -696,7 +712,7 @@ define([
|
|||
if (!this.isShowOpenDialog)
|
||||
this.loadMask.show();
|
||||
} else
|
||||
if ( action.id == Asc.c_oAscAsyncAction.Save ) {
|
||||
if ( action.id == Asc.c_oAscAsyncAction.Save || action.id == Asc.c_oAscAsyncAction['ForceSaveButton']) {
|
||||
this.getApplication().getController('Viewport').getView('Common.Views.Header').setSaveStatus('begin');
|
||||
} else {
|
||||
this.getApplication().getController('Statusbar').setStatusCaption(text);
|
||||
|
@ -704,64 +720,13 @@ define([
|
|||
},
|
||||
|
||||
onApplyEditRights: function(data) {
|
||||
var application = this.getApplication();
|
||||
application.getController('Statusbar').setStatusCaption('');
|
||||
this.getApplication().getController('Statusbar').setStatusCaption('');
|
||||
|
||||
if (data) {
|
||||
if (data.allowed) {
|
||||
data.requestrights = true;
|
||||
this.appOptions.isEdit= true;
|
||||
|
||||
this.onLongActionBegin(Asc.c_oAscAsyncActionType['BlockInteraction'],ApplyEditRights);
|
||||
|
||||
var me = this;
|
||||
setTimeout(function(){
|
||||
me.applyModeCommonElements();
|
||||
me.applyModeEditorElements();
|
||||
me.api.asc_setViewMode(false);
|
||||
|
||||
var timer_rp = setInterval(function(){
|
||||
clearInterval(timer_rp);
|
||||
|
||||
var toolbarController = application.getController('Toolbar'),
|
||||
rightmenuController = application.getController('RightMenu'),
|
||||
leftmenuController = application.getController('LeftMenu'),
|
||||
documentHolderController = application.getController('DocumentHolder'),
|
||||
fontsControllers = application.getController('Common.Controllers.Fonts');
|
||||
|
||||
leftmenuController.setMode(me.appOptions).createDelayedElements();
|
||||
|
||||
rightmenuController.createDelayedElements();
|
||||
|
||||
Common.NotificationCenter.trigger('layout:changed', 'main');
|
||||
|
||||
var timer_sl = setInterval(function(){
|
||||
if (window.styles_loaded) {
|
||||
clearInterval(timer_sl);
|
||||
|
||||
documentHolderController.getView().createDelayedElements();
|
||||
documentHolderController.getView().changePosition();
|
||||
me.loadLanguages();
|
||||
|
||||
var shapes = me.api.asc_getPropertyEditorShapes();
|
||||
if (shapes)
|
||||
me.fillAutoShapes(shapes[0], shapes[1]);
|
||||
|
||||
me.fillTextArt(me.api.asc_getTextArtPreviews());
|
||||
me.updateThemeColors();
|
||||
toolbarController.activateControls();
|
||||
|
||||
me.api.UpdateInterfaceState();
|
||||
}
|
||||
}, 50);
|
||||
},50);
|
||||
}, 100);
|
||||
} else {
|
||||
Common.UI.info({
|
||||
title: this.requestEditFailedTitleText,
|
||||
msg: data.message || this.requestEditFailedMessageText
|
||||
});
|
||||
}
|
||||
if (data && !data.allowed) {
|
||||
Common.UI.info({
|
||||
title: this.requestEditFailedTitleText,
|
||||
msg: data.message || this.requestEditFailedMessageText
|
||||
});
|
||||
}
|
||||
},
|
||||
|
||||
|
@ -827,8 +792,7 @@ define([
|
|||
|
||||
me.updateWindowTitle(true);
|
||||
|
||||
value = Common.localStorage.getItem("de-settings-inputmode");
|
||||
me.api.SetTextBoxInputMode(value!==null && parseInt(value) == 1);
|
||||
me.api.SetTextBoxInputMode(Common.localStorage.getBool("de-settings-inputmode"));
|
||||
|
||||
/** coauthoring begin **/
|
||||
if (me.appOptions.isEdit && !me.appOptions.isOffline && me.appOptions.canCoAuthoring) {
|
||||
|
@ -893,6 +857,12 @@ define([
|
|||
|
||||
me.api.asc_setAutoSaveGap(value);
|
||||
|
||||
if (me.appOptions.canForcesave) {// use asc_setIsForceSaveOnUserSave only when customization->forcesave = true
|
||||
value = Common.localStorage.getItem("de-settings-forcesave");
|
||||
me.appOptions.forcesave = (value===null) ? me.appOptions.canForcesave : (parseInt(value)==1);
|
||||
me.api.asc_setIsForceSaveOnUserSave(me.appOptions.forcesave);
|
||||
}
|
||||
|
||||
if (me.needToUpdateVersion)
|
||||
Common.NotificationCenter.trigger('api:disconnect');
|
||||
var timer_sl = setInterval(function(){
|
||||
|
@ -902,7 +872,7 @@ define([
|
|||
toolbarController.createDelayedElements();
|
||||
|
||||
documentHolderController.getView().createDelayedElements();
|
||||
me.loadLanguages();
|
||||
me.setLanguages();
|
||||
|
||||
var shapes = me.api.asc_getPropertyEditorShapes();
|
||||
if (shapes)
|
||||
|
@ -984,6 +954,8 @@ define([
|
|||
return;
|
||||
}
|
||||
|
||||
if ( this.onServerVersion(params.asc_getBuildVersion()) ) return;
|
||||
|
||||
this.permissions.review = (this.permissions.review === undefined) ? (this.permissions.edit !== false) : this.permissions.review;
|
||||
|
||||
if (params.asc_getRights() !== Asc.c_oRights.Edit)
|
||||
|
@ -1008,12 +980,16 @@ define([
|
|||
this.appOptions.canHistoryRestore= this.editorConfig.canHistoryRestore && !!this.permissions.changeHistory;
|
||||
this.appOptions.canUseMailMerge= this.appOptions.canLicense && this.appOptions.canEdit && !this.appOptions.isOffline;
|
||||
this.appOptions.canSendEmailAddresses = this.appOptions.canLicense && this.editorConfig.canSendEmailAddresses && this.appOptions.canEdit && this.appOptions.canCoAuthoring;
|
||||
this.appOptions.canComments = (licType === Asc.c_oLicenseResult.Success) && !((typeof (this.editorConfig.customization) == 'object') && this.editorConfig.customization.comments===false);
|
||||
this.appOptions.canChat = (licType === Asc.c_oLicenseResult.Success) && !this.appOptions.isOffline && !((typeof (this.editorConfig.customization) == 'object') && this.editorConfig.customization.chat===false);
|
||||
this.appOptions.canComments = (licType === Asc.c_oLicenseResult.Success || licType === Asc.c_oLicenseResult.SuccessLimit) && !((typeof (this.editorConfig.customization) == 'object') && this.editorConfig.customization.comments===false);
|
||||
this.appOptions.canChat = (licType === Asc.c_oLicenseResult.Success || licType === Asc.c_oLicenseResult.SuccessLimit) && !this.appOptions.isOffline && !((typeof (this.editorConfig.customization) == 'object') && this.editorConfig.customization.chat===false);
|
||||
this.appOptions.canEditStyles = this.appOptions.canLicense && this.appOptions.canEdit;
|
||||
this.appOptions.canPrint = (this.permissions.print !== false);
|
||||
this.appOptions.canRename = !!this.permissions.rename;
|
||||
this.appOptions.buildVersion = params.asc_getBuildVersion();
|
||||
this.appOptions.canForcesave = this.appOptions.isEdit && !this.appOptions.isOffline && (typeof (this.editorConfig.customization) == 'object' && !!this.editorConfig.customization.forcesave);
|
||||
this.appOptions.forcesave = this.appOptions.canForcesave;
|
||||
this.appOptions.canEditComments= this.appOptions.isOffline || !(typeof (this.editorConfig.customization) == 'object' && this.editorConfig.customization.commentAuthorOnly);
|
||||
this.appOptions.isTrial = params.asc_getTrial();
|
||||
|
||||
if ( this.appOptions.isLightVersion ) {
|
||||
this.appOptions.canUseHistory =
|
||||
|
@ -1037,7 +1013,6 @@ define([
|
|||
if (this.appOptions.canBranding)
|
||||
headerView.setBranding(this.editorConfig.customization);
|
||||
|
||||
params.asc_getTrial() && headerView.setDeveloperMode(true);
|
||||
this.appOptions.canRename && headerView.setCanRename(true);
|
||||
|
||||
this.appOptions.canBrandingExt = params.asc_getCanBranding() && (typeof this.editorConfig.customization == 'object' || this.editorConfig.plugins);
|
||||
|
@ -1081,6 +1056,7 @@ define([
|
|||
documentHolder.setMode(this.appOptions);
|
||||
|
||||
this.api.asc_registerCallback('asc_onSendThemeColors', _.bind(this.onSendThemeColors, this));
|
||||
this.api.asc_registerCallback('asc_onDownloadUrl', _.bind(this.onDownloadUrl, this));
|
||||
|
||||
if (this.api) {
|
||||
var translateChart = new Asc.asc_CChartTranslate();
|
||||
|
@ -1147,13 +1123,10 @@ define([
|
|||
Common.Utils.Metric.setCurrentMetric(value);
|
||||
me.api.asc_SetDocumentUnits((value==Common.Utils.Metric.c_MetricUnits.inch) ? Asc.c_oAscDocumentUnits.Inch : ((value==Common.Utils.Metric.c_MetricUnits.pt) ? Asc.c_oAscDocumentUnits.Point : Asc.c_oAscDocumentUnits.Millimeter));
|
||||
|
||||
value = Common.localStorage.getItem('de-hidden-rulers');
|
||||
me.api.asc_SetViewRulers(value===null || parseInt(value) === 0);
|
||||
me.api.asc_SetViewRulers(!Common.localStorage.getBool('de-hidden-rulers'));
|
||||
|
||||
me.api.asc_registerCallback('asc_onDocumentModifiedChanged', _.bind(me.onDocumentModifiedChanged, me));
|
||||
me.api.asc_registerCallback('asc_onDocumentCanSaveChanged', _.bind(me.onDocumentCanSaveChanged, me));
|
||||
me.api.asc_registerCallback('asc_onSaveUrl', _.bind(me.onSaveUrl, me));
|
||||
me.api.asc_registerCallback('asc_onDownloadUrl', _.bind(me.onDownloadUrl, me));
|
||||
/** coauthoring begin **/
|
||||
me.api.asc_registerCallback('asc_onCollaborativeChanges', _.bind(me.onCollaborativeChanges, me));
|
||||
me.api.asc_registerCallback('asc_OnTryUndoInFastCollaborative',_.bind(me.onTryUndoInFastCollaborative, me));
|
||||
|
@ -1308,6 +1281,10 @@ define([
|
|||
config.msg = this.errorAccessDeny;
|
||||
break;
|
||||
|
||||
case Asc.c_oAscError.ID.UplImageUrl:
|
||||
config.msg = this.errorBadImageUrl;
|
||||
break;
|
||||
|
||||
default:
|
||||
config.msg = this.errorDefaultMessage.replace('%1', id);
|
||||
break;
|
||||
|
@ -1404,7 +1381,8 @@ define([
|
|||
title = headerView.getDocumentCaption() + ' - ' + title;
|
||||
|
||||
if (isModified) {
|
||||
if (!_.isUndefined(title) && (!this._state.fastCoauth || this._state.usersCount<2 )) {
|
||||
clearTimeout(this._state.timerCaption);
|
||||
if (!_.isUndefined(title)) {
|
||||
title = '* ' + title;
|
||||
}
|
||||
}
|
||||
|
@ -1412,20 +1390,15 @@ define([
|
|||
if (window.document.title != title)
|
||||
window.document.title = title;
|
||||
|
||||
if (!this._state.fastCoauth || this._state.usersCount<2 )
|
||||
Common.Gateway.setDocumentModified(isModified);
|
||||
else if ( this._state.startModifyDocument!==undefined && this._state.startModifyDocument === isModified){
|
||||
Common.Gateway.setDocumentModified(isModified);
|
||||
this._state.startModifyDocument = (this._state.startModifyDocument) ? !this._state.startModifyDocument : undefined;
|
||||
}
|
||||
Common.Gateway.setDocumentModified(isModified);
|
||||
if (isModified && (!this._state.fastCoauth || this._state.usersCount<2))
|
||||
this.getApplication().getController('Statusbar').setStatusCaption('', true);
|
||||
|
||||
this._state.isDocModified = isModified;
|
||||
}
|
||||
},
|
||||
|
||||
onDocumentModifiedChanged: function() {
|
||||
if (this._state.fastCoauth && this._state.usersCount>1 && this._state.startModifyDocument===undefined ) return;
|
||||
|
||||
var isModified = this.api.asc_isDocumentCanSave();
|
||||
if (this._state.isDocModified !== isModified) {
|
||||
Common.Gateway.setDocumentModified(this.api.isDocumentModified());
|
||||
|
@ -1439,9 +1412,10 @@ define([
|
|||
var toolbarView = this.getApplication().getController('Toolbar').getView('Toolbar');
|
||||
|
||||
if (toolbarView) {
|
||||
var isSyncButton = $('.btn-icon', toolbarView.btnSave.cmpEl).hasClass('btn-synch');
|
||||
if (toolbarView.btnSave.isDisabled() !== (!isModified && !isSyncButton || this._state.isDisconnected || this._state.fastCoauth && this._state.usersCount>1))
|
||||
toolbarView.btnSave.setDisabled(!isModified && !isSyncButton || this._state.isDisconnected || this._state.fastCoauth && this._state.usersCount>1);
|
||||
var isSyncButton = $('.icon', toolbarView.btnSave.cmpEl).hasClass('btn-synch'),
|
||||
forcesave = this.appOptions.forcesave;
|
||||
if (toolbarView.btnSave.isDisabled() !== (!isModified && !isSyncButton && !forcesave || this._state.isDisconnected || this._state.fastCoauth && this._state.usersCount>1 && !forcesave))
|
||||
toolbarView.btnSave.setDisabled(!isModified && !isSyncButton && !forcesave || this._state.isDisconnected || this._state.fastCoauth && this._state.usersCount>1 && !forcesave);
|
||||
}
|
||||
|
||||
/** coauthoring begin **/
|
||||
|
@ -1456,9 +1430,10 @@ define([
|
|||
toolbarView = toolbarController.getView('Toolbar');
|
||||
|
||||
if (toolbarView && this.api) {
|
||||
var isSyncButton = $('.btn-icon', toolbarView.btnSave.cmpEl).hasClass('btn-synch');
|
||||
if (toolbarView.btnSave.isDisabled() !== (!isCanSave && !isSyncButton || this._state.isDisconnected || this._state.fastCoauth && this._state.usersCount>1))
|
||||
toolbarView.btnSave.setDisabled(!isCanSave && !isSyncButton || this._state.isDisconnected || this._state.fastCoauth && this._state.usersCount>1);
|
||||
var isSyncButton = $('.icon', toolbarView.btnSave.cmpEl).hasClass('btn-synch'),
|
||||
forcesave = this.appOptions.forcesave;
|
||||
if (toolbarView.btnSave.isDisabled() !== (!isCanSave && !isSyncButton && !forcesave || this._state.isDisconnected || this._state.fastCoauth && this._state.usersCount>1 && !forcesave))
|
||||
toolbarView.btnSave.setDisabled(!isCanSave && !isSyncButton && !forcesave || this._state.isDisconnected || this._state.fastCoauth && this._state.usersCount>1 && !forcesave);
|
||||
}
|
||||
},
|
||||
|
||||
|
@ -1495,8 +1470,12 @@ define([
|
|||
hidePreloader: function() {
|
||||
if (!this._state.customizationDone) {
|
||||
this._state.customizationDone = true;
|
||||
if (this.appOptions.customization && !this.appOptions.isDesktopApp)
|
||||
this.appOptions.customization.about = true;
|
||||
if (this.appOptions.customization) {
|
||||
if (this.appOptions.isDesktopApp)
|
||||
this.appOptions.customization.about = false;
|
||||
else if (!this.appOptions.canBrandingExt)
|
||||
this.appOptions.customization.about = true;
|
||||
}
|
||||
Common.Utils.applyCustomization(this.appOptions.customization, mapCustomizationElements);
|
||||
if (this.appOptions.canBrandingExt) {
|
||||
Common.Utils.applyCustomization(this.appOptions.customization, mapCustomizationExtElements);
|
||||
|
@ -1508,10 +1487,6 @@ define([
|
|||
$('#loading-mask').hide().remove();
|
||||
},
|
||||
|
||||
onSaveUrl: function(url) {
|
||||
Common.Gateway.save(url);
|
||||
},
|
||||
|
||||
onDownloadUrl: function(url) {
|
||||
if (this._state.isFromGatewayDownloadAs)
|
||||
Common.Gateway.downloadAs(url);
|
||||
|
@ -1535,6 +1510,25 @@ define([
|
|||
});
|
||||
},
|
||||
|
||||
onServerVersion: function(buildVersion) {
|
||||
if (this.changeServerVersion) return true;
|
||||
|
||||
if (DocsAPI.DocEditor.version() !== buildVersion && !window.compareVersions) {
|
||||
this.changeServerVersion = true;
|
||||
Common.UI.warning({
|
||||
title: this.titleServerVersion,
|
||||
msg: this.errorServerVersion,
|
||||
callback: function() {
|
||||
_.defer(function() {
|
||||
Common.Gateway.updateVersion();
|
||||
})
|
||||
}
|
||||
});
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
},
|
||||
|
||||
/** coauthoring begin **/
|
||||
// fillUserStore: function(users){
|
||||
// if (!_.isEmpty(users)){
|
||||
|
@ -1549,7 +1543,7 @@ define([
|
|||
if (this._state.hasCollaborativeChanges) return;
|
||||
this._state.hasCollaborativeChanges = true;
|
||||
if (this.appOptions.isEdit)
|
||||
this.getApplication().getController('Statusbar').setStatusCaption(this.txtNeedSynchronize);
|
||||
this.getApplication().getController('Statusbar').setStatusCaption(this.txtNeedSynchronize, true);
|
||||
},
|
||||
/** coauthoring end **/
|
||||
|
||||
|
@ -1671,15 +1665,15 @@ define([
|
|||
}
|
||||
},
|
||||
|
||||
loadLanguages: function() {
|
||||
var apiLangs = this.api.asc_getSpellCheckLanguages(),
|
||||
langs = [], info;
|
||||
loadLanguages: function(apiLangs) {
|
||||
var langs = [], info;
|
||||
_.each(apiLangs, function(lang, index, list){
|
||||
info = Common.util.LanguageInfo.getLocalLanguageName(lang.asc_getId());
|
||||
lang = parseInt(lang);
|
||||
info = Common.util.LanguageInfo.getLocalLanguageName(lang);
|
||||
langs.push({
|
||||
title: info[1],
|
||||
tip: info[0],
|
||||
code: lang.asc_getId()
|
||||
code: lang
|
||||
});
|
||||
}, this);
|
||||
|
||||
|
@ -1689,9 +1683,16 @@ define([
|
|||
return 0;
|
||||
});
|
||||
|
||||
this.getApplication().getController('DocumentHolder').getView().setLanguages(langs);
|
||||
this.getApplication().getController('Statusbar').setLanguages(langs);
|
||||
this.getApplication().getController('Common.Controllers.ReviewChanges').setLanguages(langs);
|
||||
this.languages = langs;
|
||||
window.styles_loaded && this.setLanguages();
|
||||
},
|
||||
|
||||
setLanguages: function() {
|
||||
if (this.languages && this.languages.length>0) {
|
||||
this.getApplication().getController('DocumentHolder').getView().setLanguages(this.languages);
|
||||
this.getApplication().getController('Statusbar').setLanguages(this.languages);
|
||||
this.getApplication().getController('Common.Controllers.ReviewChanges').setLanguages(this.languages);
|
||||
}
|
||||
},
|
||||
|
||||
onInsertTable: function() {
|
||||
|
@ -1801,6 +1802,11 @@ define([
|
|||
if (this._state.fastCoauth && !oldval)
|
||||
this.synchronizeChanges();
|
||||
}
|
||||
if (this.appOptions.canForcesave) {
|
||||
value = Common.localStorage.getItem("de-settings-forcesave");
|
||||
this.appOptions.forcesave = (value===null) ? this.appOptions.canForcesave : (parseInt(value)==1);
|
||||
this.api.asc_setIsForceSaveOnUserSave(this.appOptions.forcesave);
|
||||
}
|
||||
},
|
||||
|
||||
onDocumentName: function(name) {
|
||||
|
@ -1894,11 +1900,18 @@ define([
|
|||
return null;
|
||||
};
|
||||
|
||||
var arr = [];
|
||||
var arr = [],
|
||||
baseUrl = _.isEmpty(plugins.url) ? "" : plugins.url;
|
||||
|
||||
if (baseUrl !== "")
|
||||
console.log("Obsolete: The url parameter is deprecated. Please check the documentation for new plugin connection configuration.");
|
||||
|
||||
pluginsData.forEach(function(item){
|
||||
item = baseUrl + item; // for compatibility with previouse version of server, where plugins.url is used.
|
||||
var value = _getPluginJson(item);
|
||||
if (value) {
|
||||
value.baseUrl = item.substring(0, item.lastIndexOf("config.json"));
|
||||
value.oldVersion = (baseUrl !== "");
|
||||
arr.push(value);
|
||||
}
|
||||
});
|
||||
|
@ -1916,7 +1929,7 @@ define([
|
|||
if (plugins) {
|
||||
var arr = [], arrUI = [];
|
||||
plugins.pluginsData.forEach(function(item){
|
||||
if (uiCustomize!==undefined && pluginStore.findWhere({baseUrl : item.baseUrl})) return;
|
||||
if (uiCustomize!==undefined && (pluginStore.findWhere({baseUrl : item.baseUrl}) || pluginStore.findWhere({guid : item.guid}))) return;
|
||||
|
||||
var variations = item.variations,
|
||||
variationsArr = [];
|
||||
|
@ -1928,12 +1941,19 @@ define([
|
|||
}
|
||||
}
|
||||
if (isSupported && (isEdit || itemVar.isViewer)) {
|
||||
var icons = itemVar.icons;
|
||||
if (item.oldVersion) { // for compatibility with previouse version of server, where plugins.url is used.
|
||||
icons = [];
|
||||
itemVar.icons.forEach(function(icon){
|
||||
icons.push(icon.substring(icon.lastIndexOf("\/")+1));
|
||||
});
|
||||
}
|
||||
item.isUICustomizer ? arrUI.push(item.baseUrl + itemVar.url) :
|
||||
variationsArr.push(new Common.Models.PluginVariation({
|
||||
description: itemVar.description,
|
||||
index: variationsArr.length,
|
||||
url : itemVar.url,
|
||||
icons : itemVar.icons,
|
||||
url : (item.oldVersion) ? (itemVar.url.substring(itemVar.url.lastIndexOf("\/")+1) ) : itemVar.url,
|
||||
icons : icons,
|
||||
isViewer: itemVar.isViewer,
|
||||
EditorsSupport: itemVar.EditorsSupport,
|
||||
isVisual: itemVar.isVisual,
|
||||
|
@ -2084,7 +2104,10 @@ define([
|
|||
errorSessionAbsolute: 'The document editing session has expired. Please reload the page.',
|
||||
errorSessionIdle: 'The document has not been edited for quite a long time. Please reload the page.',
|
||||
errorSessionToken: 'The connection to the server has been interrupted. Please reload the page.',
|
||||
errorAccessDeny: 'You are trying to perform an action you do not have rights for.<br>Please contact your Document Server administrator.'
|
||||
errorAccessDeny: 'You are trying to perform an action you do not have rights for.<br>Please contact your Document Server administrator.',
|
||||
titleServerVersion: 'Editor updated',
|
||||
errorServerVersion: 'The editor version has been updated. The page will be reloaded to apply the changes.',
|
||||
errorBadImageUrl: 'Image url is incorrect'
|
||||
}
|
||||
})(), DE.Controllers.Main || {}))
|
||||
});
|
|
@ -273,10 +273,7 @@ define([
|
|||
this.rightmenu.shapeSettings.createDelayedElements();
|
||||
var selectedElements = this.api.getSelectedElements();
|
||||
if (selectedElements.length>0) {
|
||||
var open = Common.localStorage.getItem("de-hide-right-settings");
|
||||
open = (open===null || parseInt(open) == 0);
|
||||
|
||||
this.onFocusObject(selectedElements, open);
|
||||
this.onFocusObject(selectedElements, !Common.localStorage.getBool("de-hide-right-settings"));
|
||||
}
|
||||
}
|
||||
},
|
||||
|
|
|
@ -134,7 +134,7 @@ define([
|
|||
_process_changestip();
|
||||
} else
|
||||
if ( me.api.asc_IsTrackRevisions() ) {
|
||||
if ( Common.localStorage.getItem("de-track-changes") ) {
|
||||
if ( Common.localStorage.getBool("de-track-changes") ) {
|
||||
// show tooltip "track changes in this document"
|
||||
_process_changestip();
|
||||
} else {
|
||||
|
@ -216,9 +216,16 @@ define([
|
|||
this.statusbar.reloadLanguages(langs);
|
||||
},
|
||||
|
||||
setStatusCaption: function(text) {
|
||||
if (text.length)
|
||||
this.statusbar.showStatusMessage(text); else
|
||||
setStatusCaption: function(text, force, delay) {
|
||||
if (this.timerCaption && ( ((new Date()) < this.timerCaption) || text.length==0 ) && !force )
|
||||
return;
|
||||
|
||||
this.timerCaption = undefined;
|
||||
if (text.length) {
|
||||
this.statusbar.showStatusMessage(text);
|
||||
if (delay>0)
|
||||
this.timerCaption = (new Date()).getTime() + delay;
|
||||
} else
|
||||
this.statusbar.clearStatusMessage();
|
||||
},
|
||||
|
||||
|
@ -246,11 +253,11 @@ define([
|
|||
Common.localStorage.setItem(storage, 1);
|
||||
|
||||
tip.hide();
|
||||
me.btnTurnReview.updateHint(this.tipReview);
|
||||
me.btnTurnReview.updateHint(me.tipReview);
|
||||
},
|
||||
'closeclick': function() {
|
||||
tip.hide();
|
||||
me.btnTurnReview.updateHint(this.tipReview);
|
||||
me.btnTurnReview.updateHint(me.tipReview);
|
||||
}
|
||||
});
|
||||
|
||||
|
@ -259,6 +266,7 @@ define([
|
|||
|
||||
zoomText : 'Zoom {0}%',
|
||||
textHasChanges : 'New changes have been tracked',
|
||||
textTrackChanges: 'The document is opened with the Track Changes mode enabled'
|
||||
textTrackChanges: 'The document is opened with the Track Changes mode enabled',
|
||||
tipReview : 'Review'
|
||||
}, DE.Controllers.Statusbar || {}));
|
||||
});
|
|
@ -474,7 +474,7 @@ define([
|
|||
var btnHorizontalAlign = this.toolbar.btnHorizontalAlign;
|
||||
|
||||
if (btnHorizontalAlign.rendered) {
|
||||
var iconEl = $('.btn-icon', btnHorizontalAlign.cmpEl);
|
||||
var iconEl = $('.icon', btnHorizontalAlign.cmpEl);
|
||||
|
||||
if (iconEl) {
|
||||
iconEl.removeClass(btnHorizontalAlign.options.icls);
|
||||
|
@ -677,7 +677,7 @@ define([
|
|||
need_disable = toolbar.mnuPageNumCurrentPos.isDisabled() && toolbar.mnuPageNumberPosPicker.isDisabled();
|
||||
toolbar.mnuInsertPageNum.setDisabled(need_disable);
|
||||
|
||||
need_disable = paragraph_locked || header_locked || in_header || in_equation && !btn_eq_state;
|
||||
need_disable = paragraph_locked || header_locked || in_header || in_equation && !btn_eq_state || this.api.asc_IsCursorInFootnote();
|
||||
toolbar.btnsPageBreak.disable(need_disable);
|
||||
|
||||
need_disable = paragraph_locked || header_locked || !can_add_image || in_equation;
|
||||
|
@ -704,6 +704,10 @@ define([
|
|||
|
||||
toolbar.btnEditHeader.setDisabled(in_equation);
|
||||
|
||||
need_disable = paragraph_locked || in_equation || in_image || in_header;
|
||||
if (need_disable !== toolbar.btnNotes.isDisabled())
|
||||
toolbar.btnNotes.setDisabled(need_disable);
|
||||
|
||||
if (toolbar.listStylesAdditionalMenuItem && (frame_pr===undefined) !== toolbar.listStylesAdditionalMenuItem.isDisabled())
|
||||
toolbar.listStylesAdditionalMenuItem.setDisabled(frame_pr===undefined);
|
||||
|
||||
|
@ -725,7 +729,7 @@ define([
|
|||
var styleRec = listStyle.menuPicker.store.findWhere({
|
||||
title: name
|
||||
});
|
||||
this._state.prstyle = (listStyle.menuPicker.store.length>0) ? name : undefined;
|
||||
this._state.prstyle = (listStyle.menuPicker.store.length>0 || window.styles_loaded) ? name : undefined;
|
||||
|
||||
listStyle.menuPicker.selectRecord(styleRec);
|
||||
listStyle.resumeEvents();
|
||||
|
@ -849,14 +853,14 @@ define([
|
|||
onSave: function(e) {
|
||||
if (this.api) {
|
||||
var isModified = this.api.asc_isDocumentCanSave();
|
||||
var isSyncButton = $('.btn-icon', this.toolbar.btnSave.cmpEl).hasClass('btn-synch');
|
||||
if (!isModified && !isSyncButton)
|
||||
var isSyncButton = $('.icon', this.toolbar.btnSave.cmpEl).hasClass('btn-synch');
|
||||
if (!isModified && !isSyncButton && !this.toolbar.mode.forcesave)
|
||||
return;
|
||||
|
||||
this.api.asc_Save();
|
||||
}
|
||||
|
||||
this.toolbar.btnSave.setDisabled(true);
|
||||
this.toolbar.btnSave.setDisabled(!this.toolbar.mode.forcesave);
|
||||
|
||||
Common.NotificationCenter.trigger('edit:complete', this.toolbar);
|
||||
|
||||
|
@ -887,8 +891,7 @@ define([
|
|||
if (me.api) {
|
||||
var res = (copy) ? me.api.Copy() : me.api.Paste();
|
||||
if (!res) {
|
||||
var value = Common.localStorage.getItem("de-hide-copywarning");
|
||||
if (!(value && parseInt(value) == 1)) {
|
||||
if (!Common.localStorage.getBool("de-hide-copywarning")) {
|
||||
(new Common.Views.CopyWarningDialog({
|
||||
handler: function(dontshow) {
|
||||
if (dontshow) Common.localStorage.setItem("de-hide-copywarning", 1);
|
||||
|
@ -1004,7 +1007,7 @@ define([
|
|||
onMenuHorizontalAlignSelect: function(menu, item) {
|
||||
this._state.pralign = undefined;
|
||||
var btnHorizontalAlign = this.toolbar.btnHorizontalAlign,
|
||||
iconEl = $('.btn-icon', btnHorizontalAlign.cmpEl);
|
||||
iconEl = $('.icon', btnHorizontalAlign.cmpEl);
|
||||
|
||||
if (iconEl) {
|
||||
iconEl.removeClass(btnHorizontalAlign.options.icls);
|
||||
|
@ -1877,7 +1880,7 @@ define([
|
|||
me._state.prstyle = title;
|
||||
style.put_Name(title);
|
||||
characterStyle.put_Name(title + '_character');
|
||||
style.put_Next(nextStyle.asc_getName());
|
||||
style.put_Next((nextStyle) ? nextStyle.asc_getName() : null);
|
||||
me.api.asc_AddNewStyle(style);
|
||||
}
|
||||
Common.NotificationCenter.trigger('edit:complete', me.toolbar);
|
||||
|
@ -2501,7 +2504,7 @@ define([
|
|||
store: this.getApplication().getCollection('Common.Collections.TextArt'),
|
||||
parentMenu: this.toolbar.mnuInsertTextArt.menu,
|
||||
showLast: false,
|
||||
itemTemplate: _.template('<div class="item-art"><img src="<%= imageUrl %>" id="<%= id %>"></div>')
|
||||
itemTemplate: _.template('<div class="item-art"><img src="<%= imageUrl %>" id="<%= id %>" style="width:50px;height:50px;"></div>')
|
||||
});
|
||||
|
||||
this.toolbar.mnuTextArtPicker.on('item:click', function(picker, item, record, e) {
|
||||
|
@ -2615,7 +2618,8 @@ define([
|
|||
if (self._state.prstyle) styleRec = listStyles.menuPicker.store.findWhere({title: self._state.prstyle});
|
||||
listStyles.fillComboView((styleRec) ? styleRec : listStyles.menuPicker.store.at(0), true);
|
||||
Common.NotificationCenter.trigger('edit:complete', this);
|
||||
}
|
||||
} else if (listStyles.rendered)
|
||||
listStyles.clearComboView();
|
||||
window.styles_loaded = true;
|
||||
},
|
||||
|
||||
|
@ -2737,7 +2741,10 @@ define([
|
|||
onAppShowed: function (config) {
|
||||
var me = this;
|
||||
|
||||
me.toolbar.render(config);
|
||||
var isCompactView = Common.localStorage.getItem("de-compact-toolbar");
|
||||
isCompactView = !config.isEdit || !!(isCompactView !== null && parseInt(isCompactView) == 1 || isCompactView === null && config.customization && config.customization.compactToolbar);
|
||||
|
||||
me.toolbar.render(_.extend(config, {isCompactView: isCompactView}));
|
||||
|
||||
if ( config.isEdit ) {
|
||||
var tab = {action: 'review', caption: me.toolbar.textTabReview};
|
||||
|
@ -2747,16 +2754,7 @@ define([
|
|||
me.toolbar.addTab(tab, $panel, 3);
|
||||
}
|
||||
}
|
||||
|
||||
if ( config.isEdit && !Common.localStorage.itemExists("de-compact-toolbar") &&
|
||||
config.customization && config.customization.compactToolbar )
|
||||
{
|
||||
this.toolbar.setFolded(true);
|
||||
this.toolbar.mnuitemCompactToolbar.setChecked(true, true);
|
||||
|
||||
Common.NotificationCenter.trigger('layout:changed', 'toolbar');
|
||||
Common.NotificationCenter.trigger('edit:complete', this.toolbar);
|
||||
}
|
||||
},
|
||||
|
||||
onAppReady: function (config) {
|
||||
|
|
|
@ -166,7 +166,7 @@ define([
|
|||
|
||||
if (this._isChartStylesChanged) {
|
||||
if (rec)
|
||||
this.cmbChartStyle.fillComboView(this.cmbChartStyle.menuPicker.getSelectedRec(),true);
|
||||
this.cmbChartStyle.fillComboView(this.cmbChartStyle.menuPicker.getSelectedRec()[0],true);
|
||||
else
|
||||
this.cmbChartStyle.fillComboView(this.cmbChartStyle.menuPicker.store.at(0), true);
|
||||
}
|
||||
|
|
|
@ -1693,8 +1693,7 @@ define([
|
|||
if (me.api) {
|
||||
var res = (item.value == 'cut') ? me.api.Cut() : ((item.value == 'copy') ? me.api.Copy() : me.api.Paste());
|
||||
if (!res) {
|
||||
var value = Common.localStorage.getItem("de-hide-copywarning");
|
||||
if (!(value && parseInt(value) == 1)) {
|
||||
if (!Common.localStorage.getBool("de-hide-copywarning")) {
|
||||
(new Common.Views.CopyWarningDialog({
|
||||
handler: function(dontshow) {
|
||||
if (dontshow) Common.localStorage.setItem("de-hide-copywarning", 1);
|
||||
|
@ -2117,8 +2116,8 @@ define([
|
|||
{ caption: '--' },
|
||||
menuImageAdvanced
|
||||
]
|
||||
}).on('hide:after', function(menu) {
|
||||
me.fireEvent('editcomplete', me);
|
||||
}).on('hide:after', function(menu, e, isFromInputControl) {
|
||||
if (!isFromInputControl) me.fireEvent('editcomplete', me);
|
||||
me.currentMenu = null;
|
||||
});
|
||||
|
||||
|
@ -2685,13 +2684,13 @@ define([
|
|||
menuHyperlinkSeparator,
|
||||
menuParagraphAdvancedInTable
|
||||
]
|
||||
}).on('hide:after', function(menu) {
|
||||
}).on('hide:after', function(menu, e, isFromInputControl) {
|
||||
if (me.suppressEditComplete) {
|
||||
me.suppressEditComplete = false;
|
||||
return;
|
||||
}
|
||||
|
||||
me.fireEvent('editcomplete', me);
|
||||
if (!isFromInputControl) me.fireEvent('editcomplete', me);
|
||||
me.currentMenu = null;
|
||||
});
|
||||
|
||||
|
@ -3064,13 +3063,13 @@ define([
|
|||
menuStyleSeparator,
|
||||
menuStyle
|
||||
]
|
||||
}).on('hide:after', function(menu, e) {
|
||||
}).on('hide:after', function(menu, e, isFromInputControl) {
|
||||
if (me.suppressEditComplete) {
|
||||
me.suppressEditComplete = false;
|
||||
return;
|
||||
}
|
||||
|
||||
me.fireEvent('editcomplete', me);
|
||||
if (!isFromInputControl) me.fireEvent('editcomplete', me);
|
||||
me.currentMenu = null;
|
||||
});
|
||||
|
||||
|
@ -3096,8 +3095,8 @@ define([
|
|||
items: [
|
||||
menuEditHeaderFooter
|
||||
]
|
||||
}).on('hide:after', function(menu) {
|
||||
me.fireEvent('editcomplete', me);
|
||||
}).on('hide:after', function(menu, e, isFromInputControl) {
|
||||
if (!isFromInputControl) me.fireEvent('editcomplete', me);
|
||||
me.currentMenu = null;
|
||||
});
|
||||
|
||||
|
@ -3119,7 +3118,9 @@ define([
|
|||
setLanguages: function(langs){
|
||||
var me = this;
|
||||
|
||||
if (langs && langs.length > 0) {
|
||||
if (langs && langs.length > 0 && me.langParaMenu && me.langTableMenu) {
|
||||
me.langParaMenu.menu.removeAll();
|
||||
me.langTableMenu.menu.removeAll();
|
||||
_.each(langs, function(lang, index){
|
||||
me.langParaMenu.menu.addItem(new Common.UI.MenuItem({
|
||||
caption : lang.title,
|
||||
|
|
|
@ -124,14 +124,18 @@ define([
|
|||
'<td class="left"><label><%= scope.txtInput %></label></td>',
|
||||
'<td class="right"><div id="fms-chb-input-mode"/></td>',
|
||||
'</tr>','<tr class="divider edit"></tr>',
|
||||
'<tr>',
|
||||
'<tr class="edit">',
|
||||
'<td class="left"><label><%= scope.textAlignGuides %></label></td>',
|
||||
'<td class="right"><span id="fms-chb-align-guides" /></td>',
|
||||
'</tr>','<tr class="divider"></tr>',
|
||||
'</tr>','<tr class="divider edit"></tr>',
|
||||
'<tr class="autosave">',
|
||||
'<td class="left"><label id="fms-lbl-autosave"><%= scope.textAutoSave %></label></td>',
|
||||
'<td class="right"><span id="fms-chb-autosave" /></td>',
|
||||
'</tr>','<tr class="divider autosave"></tr>',
|
||||
'<tr class="forcesave">',
|
||||
'<td class="left"><label id="fms-lbl-forcesave"><%= scope.textForceSave %></label></td>',
|
||||
'<td class="right"><span id="fms-chb-forcesave" /></td>',
|
||||
'</tr>','<tr class="divider forcesave"></tr>',
|
||||
/** coauthoring begin **/
|
||||
'<tr class="coauth changes">',
|
||||
'<td class="left"><label><%= scope.strCoAuthMode %></label></td>',
|
||||
|
@ -199,7 +203,12 @@ define([
|
|||
}
|
||||
}, this));
|
||||
this.lblAutosave = $('#fms-lbl-autosave');
|
||||
|
||||
|
||||
this.chForcesave = new Common.UI.CheckBox({
|
||||
el: $('#fms-chb-forcesave'),
|
||||
labelText: this.strForcesave
|
||||
});
|
||||
|
||||
this.chAlignGuides = new Common.UI.CheckBox({
|
||||
el: $('#fms-chb-align-guides'),
|
||||
labelText: this.strAlignGuides
|
||||
|
@ -309,6 +318,7 @@ define([
|
|||
this.mode = mode;
|
||||
$('tr.edit', this.el)[mode.isEdit?'show':'hide']();
|
||||
$('tr.autosave', this.el)[mode.isEdit ? 'show' : 'hide']();
|
||||
$('tr.forcesave', this.el)[mode.canForcesave ? 'show' : 'hide']();
|
||||
if (this.mode.isDesktopApp && this.mode.isOffline) {
|
||||
this.chAutosave.setCaption(this.strAutoRecover);
|
||||
this.lblAutosave.text(this.textAutoRecover);
|
||||
|
@ -320,10 +330,9 @@ define([
|
|||
},
|
||||
|
||||
updateSettings: function() {
|
||||
var value = Common.localStorage.getItem("de-settings-inputmode");
|
||||
this.chInputMode.setValue(value!==null && parseInt(value) == 1);
|
||||
this.chInputMode.setValue(Common.localStorage.getBool("de-settings-inputmode"));
|
||||
|
||||
value = Common.localStorage.getItem("de-settings-zoom");
|
||||
var value = Common.localStorage.getItem("de-settings-zoom");
|
||||
value = (value!==null) ? parseInt(value) : (this.mode.customization && this.mode.customization.zoom ? parseInt(this.mode.customization.zoom) : 100);
|
||||
var item = this.cmbZoom.store.findWhere({value: value});
|
||||
this.cmbZoom.setValue(item ? parseInt(item.get('value')) : (value>0 ? value+'%' : 100));
|
||||
|
@ -363,6 +372,12 @@ define([
|
|||
value = 0;
|
||||
this.chAutosave.setValue(fast_coauth || (value===null ? this.mode.canCoAuthoring : parseInt(value) == 1));
|
||||
|
||||
if (this.mode.canForcesave) {
|
||||
value = Common.localStorage.getItem("de-settings-forcesave");
|
||||
value = (value === null) ? this.mode.canForcesave : (parseInt(value) == 1);
|
||||
this.chForcesave.setValue(value);
|
||||
}
|
||||
|
||||
value = Common.localStorage.getItem("de-settings-spellcheck");
|
||||
this.chSpell.setValue(value===null || parseInt(value) == 1);
|
||||
|
||||
|
@ -383,6 +398,8 @@ define([
|
|||
Common.localStorage.setItem("de-settings-fontrender", this.cmbFontRender.getValue());
|
||||
Common.localStorage.setItem("de-settings-unit", this.cmbUnit.getValue());
|
||||
Common.localStorage.setItem("de-settings-autosave", this.chAutosave.isChecked() ? 1 : 0);
|
||||
if (this.mode.canForcesave)
|
||||
Common.localStorage.setItem("de-settings-forcesave", this.chForcesave.isChecked() ? 1 : 0);
|
||||
Common.localStorage.setItem("de-settings-spellcheck", this.chSpell.isChecked() ? 1 : 0);
|
||||
Common.localStorage.setItem("de-settings-showsnaplines", this.chAlignGuides.isChecked() ? 1 : 0);
|
||||
Common.localStorage.save();
|
||||
|
@ -443,7 +460,9 @@ define([
|
|||
strAutoRecover: 'Turn on autorecover',
|
||||
txtInch: 'Inch',
|
||||
txtFitPage: 'Fit to Page',
|
||||
txtFitWidth: 'Fit to Width'
|
||||
txtFitWidth: 'Fit to Width',
|
||||
textForceSave: 'Save to Server',
|
||||
strForcesave: 'Always save to server (otherwise save to server on document close)'
|
||||
}, DE.Views.FileMenuPanels.Settings || {}));
|
||||
|
||||
DE.Views.FileMenuPanels.RecentFiles = Common.UI.BaseView.extend({
|
||||
|
|
|
@ -347,6 +347,24 @@ define([
|
|||
Common.NotificationCenter.trigger('layout:changed', 'history');
|
||||
},
|
||||
|
||||
setDeveloperMode: function(mode) {
|
||||
if ( !this.$el.is(':visible') ) return;
|
||||
|
||||
if (!this.developerHint) {
|
||||
this.developerHint = $('<div id="developer-hint">' + this.txtDeveloper + '</div>').appendTo(this.$el);
|
||||
this.devHeight = this.developerHint.outerHeight();
|
||||
$(window).on('resize', _.bind(this.onWindowResize, this));
|
||||
}
|
||||
this.developerHint.toggleClass('hidden', !mode);
|
||||
|
||||
var lastbtn = this.$el.find('button.btn-category:visible:last-of-type');
|
||||
this.minDevPosition = lastbtn.offset().top - lastbtn.offsetParent().offset().top + lastbtn.height() + 20;
|
||||
this.onWindowResize();
|
||||
},
|
||||
|
||||
onWindowResize: function() {
|
||||
this.developerHint.css('top', Math.max((this.$el.height()-this.devHeight)/2, this.minDevPosition));
|
||||
},
|
||||
/** coauthoring begin **/
|
||||
tipComments : 'Comments',
|
||||
tipChat : 'Chat',
|
||||
|
@ -355,6 +373,7 @@ define([
|
|||
tipSupport : 'Feedback & Support',
|
||||
tipFile : 'File',
|
||||
tipSearch : 'Search',
|
||||
tipPlugins : 'Plugins'
|
||||
tipPlugins : 'Plugins',
|
||||
txtDeveloper: 'DEVELOPER MODE'
|
||||
}, DE.Views.LeftMenu || {}));
|
||||
});
|
||||
|
|
|
@ -161,11 +161,11 @@ define([
|
|||
menuStyle: 'min-width: 150px;',
|
||||
editable: false,
|
||||
data: [
|
||||
{ displayValue: '1, 2, 3,...', value: c_oAscNumberingFormat.Decimal, maskExp: /[0-9]/, defValue: 1 },
|
||||
{ displayValue: 'a, b, c,...', value: c_oAscNumberingFormat.LowerLetter, maskExp: /[a-z]/, defValue: 'a' },
|
||||
{ displayValue: 'A, B, C,...', value: c_oAscNumberingFormat.UpperLetter, maskExp: /[A-Z]/, defValue: 'A' },
|
||||
{ displayValue: 'i, ii, iii,...', value: c_oAscNumberingFormat.LowerRoman, maskExp: /[ivxlcdm]/, defValue: 'i' },
|
||||
{ displayValue: 'I, II, III,...', value: c_oAscNumberingFormat.UpperRoman, maskExp: /[IVXLCDM]/, defValue: 'I' }
|
||||
{ displayValue: '1, 2, 3,...', value: Asc.c_oAscNumberingFormat.Decimal, maskExp: /[0-9]/, defValue: 1 },
|
||||
{ displayValue: 'a, b, c,...', value: Asc.c_oAscNumberingFormat.LowerLetter, maskExp: /[a-z]/, defValue: 'a' },
|
||||
{ displayValue: 'A, B, C,...', value: Asc.c_oAscNumberingFormat.UpperLetter, maskExp: /[A-Z]/, defValue: 'A' },
|
||||
{ displayValue: 'i, ii, iii,...', value: Asc.c_oAscNumberingFormat.LowerRoman, maskExp: /[ivxlcdm]/, defValue: 'i' },
|
||||
{ displayValue: 'I, II, III,...', value: Asc.c_oAscNumberingFormat.UpperRoman, maskExp: /[IVXLCDM]/, defValue: 'I' }
|
||||
]
|
||||
});
|
||||
this.cmbFormat.setValue(this.FormatType);
|
||||
|
@ -291,19 +291,19 @@ define([
|
|||
|
||||
var me = this;
|
||||
switch (record.value) {
|
||||
case c_oAscNumberingFormat.UpperRoman: // I, II, III, ...
|
||||
case Asc.c_oAscNumberingFormat.UpperRoman: // I, II, III, ...
|
||||
this.spnStart.options.toCustomFormat = this._10toRome;
|
||||
this.spnStart.options.fromCustomFormat = this._Rometo10;
|
||||
break;
|
||||
case c_oAscNumberingFormat.LowerRoman: // i, ii, iii, ...
|
||||
case Asc.c_oAscNumberingFormat.LowerRoman: // i, ii, iii, ...
|
||||
this.spnStart.options.toCustomFormat = function(value) { return me._10toRome(value).toLocaleLowerCase(); };
|
||||
this.spnStart.options.fromCustomFormat = function(value) { return me._Rometo10(value.toLocaleUpperCase()); };
|
||||
break;
|
||||
case c_oAscNumberingFormat.UpperLetter: // A, B, C, ...
|
||||
case Asc.c_oAscNumberingFormat.UpperLetter: // A, B, C, ...
|
||||
this.spnStart.options.toCustomFormat = this._10toS;
|
||||
this.spnStart.options.fromCustomFormat = this._Sto10;
|
||||
break;
|
||||
case c_oAscNumberingFormat.LowerLetter: // a, b, c, ...
|
||||
case Asc.c_oAscNumberingFormat.LowerLetter: // a, b, c, ...
|
||||
this.spnStart.options.toCustomFormat = function(value) { return me._10toS(value).toLocaleLowerCase(); };
|
||||
this.spnStart.options.fromCustomFormat = function(value) { return me._Sto10(value.toLocaleUpperCase()); };
|
||||
break;
|
||||
|
|
|
@ -457,8 +457,8 @@ define([
|
|||
this.mnuColorPicker.updateColors(Common.Utils.ThemeColor.getEffectColors(), Common.Utils.ThemeColor.getStandartColors());
|
||||
},
|
||||
|
||||
onHideMenus: function(e){
|
||||
this.fireEvent('editcomplete', this);
|
||||
onHideMenus: function(menu, e, isFromInputControl){
|
||||
if (!isFromInputControl) this.fireEvent('editcomplete', this);
|
||||
},
|
||||
|
||||
setLocked: function (locked) {
|
||||
|
|
|
@ -79,42 +79,48 @@ define([
|
|||
asctype: Common.Utils.documentSettingsType.Paragraph,
|
||||
enableToggle: true,
|
||||
disabled: true,
|
||||
toggleGroup: 'tabpanelbtnsGroup'
|
||||
toggleGroup: 'tabpanelbtnsGroup',
|
||||
allowMouseEventsOnDisabled: true
|
||||
});
|
||||
this.btnTable = new Common.UI.Button({
|
||||
hint: this.txtTableSettings,
|
||||
asctype: Common.Utils.documentSettingsType.Table,
|
||||
enableToggle: true,
|
||||
disabled: true,
|
||||
toggleGroup: 'tabpanelbtnsGroup'
|
||||
toggleGroup: 'tabpanelbtnsGroup',
|
||||
allowMouseEventsOnDisabled: true
|
||||
});
|
||||
this.btnImage = new Common.UI.Button({
|
||||
hint: this.txtImageSettings,
|
||||
asctype: Common.Utils.documentSettingsType.Image,
|
||||
enableToggle: true,
|
||||
disabled: true,
|
||||
toggleGroup: 'tabpanelbtnsGroup'
|
||||
toggleGroup: 'tabpanelbtnsGroup',
|
||||
allowMouseEventsOnDisabled: true
|
||||
});
|
||||
this.btnHeaderFooter = new Common.UI.Button({
|
||||
hint: this.txtHeaderFooterSettings,
|
||||
asctype: Common.Utils.documentSettingsType.Header,
|
||||
enableToggle: true,
|
||||
disabled: true,
|
||||
toggleGroup: 'tabpanelbtnsGroup'
|
||||
toggleGroup: 'tabpanelbtnsGroup',
|
||||
allowMouseEventsOnDisabled: true
|
||||
});
|
||||
this.btnChart = new Common.UI.Button({
|
||||
hint: this.txtChartSettings,
|
||||
asctype: Common.Utils.documentSettingsType.Chart,
|
||||
enableToggle: true,
|
||||
disabled: true,
|
||||
toggleGroup: 'tabpanelbtnsGroup'
|
||||
toggleGroup: 'tabpanelbtnsGroup',
|
||||
allowMouseEventsOnDisabled: true
|
||||
});
|
||||
this.btnShape = new Common.UI.Button({
|
||||
hint: this.txtShapeSettings,
|
||||
asctype: Common.Utils.documentSettingsType.Shape,
|
||||
enableToggle: true,
|
||||
disabled: true,
|
||||
toggleGroup: 'tabpanelbtnsGroup'
|
||||
toggleGroup: 'tabpanelbtnsGroup',
|
||||
allowMouseEventsOnDisabled: true
|
||||
});
|
||||
|
||||
this.btnTextArt = new Common.UI.Button({
|
||||
|
@ -122,7 +128,8 @@ define([
|
|||
asctype: Common.Utils.documentSettingsType.TextArt,
|
||||
enableToggle: true,
|
||||
disabled: true,
|
||||
toggleGroup: 'tabpanelbtnsGroup'
|
||||
toggleGroup: 'tabpanelbtnsGroup',
|
||||
allowMouseEventsOnDisabled: true
|
||||
});
|
||||
|
||||
this._settings = [];
|
||||
|
@ -142,20 +149,19 @@ define([
|
|||
|
||||
this.trigger('render:before', this);
|
||||
|
||||
var open = Common.localStorage.getItem("de-hide-right-settings");
|
||||
open = (open===null || parseInt(open) == 0);
|
||||
var open = !Common.localStorage.getBool("de-hide-right-settings");
|
||||
el.css('width', ((open) ? MENU_SCALE_PART : SCALE_MIN) + 'px');
|
||||
el.show();
|
||||
|
||||
el.html(this.template({}));
|
||||
|
||||
this.btnText.el = $('#id-right-menu-text'); this.btnText.render();
|
||||
this.btnTable.el = $('#id-right-menu-table'); this.btnTable.render();
|
||||
this.btnImage.el = $('#id-right-menu-image'); this.btnImage.render();
|
||||
this.btnHeaderFooter.el = $('#id-right-menu-header'); this.btnHeaderFooter.render();
|
||||
this.btnChart.el = $('#id-right-menu-chart'); this.btnChart.render();
|
||||
this.btnShape.el = $('#id-right-menu-shape'); this.btnShape.render();
|
||||
this.btnTextArt.el = $('#id-right-menu-textart'); this.btnTextArt.render();
|
||||
this.btnText.setElement($('#id-right-menu-text'), false); this.btnText.render();
|
||||
this.btnTable.setElement($('#id-right-menu-table'), false); this.btnTable.render();
|
||||
this.btnImage.setElement($('#id-right-menu-image'), false); this.btnImage.render();
|
||||
this.btnHeaderFooter.setElement($('#id-right-menu-header'), false); this.btnHeaderFooter.render();
|
||||
this.btnChart.setElement($('#id-right-menu-chart'), false); this.btnChart.render();
|
||||
this.btnShape.setElement($('#id-right-menu-shape'), false); this.btnShape.render();
|
||||
this.btnTextArt.setElement($('#id-right-menu-textart'), false); this.btnTextArt.render();
|
||||
|
||||
this.btnText.on('click', _.bind(this.onBtnMenuClick, this));
|
||||
this.btnTable.on('click', _.bind(this.onBtnMenuClick, this));
|
||||
|
|
|
@ -1341,6 +1341,18 @@ define([
|
|||
this.sldrGradient.on('thumbdblclick', function(cmp){
|
||||
me.btnGradColor.cmpEl.find('button').dropdown('toggle');
|
||||
});
|
||||
this.sldrGradient.on('sortthumbs', function(cmp, recalc_indexes){
|
||||
var colors = [],
|
||||
currentIdx;
|
||||
_.each (recalc_indexes, function(recalc_index, index) {
|
||||
colors.push(me.GradColor.colors[recalc_index]);
|
||||
if (me.GradColor.currentIdx == recalc_index)
|
||||
currentIdx = index;
|
||||
});
|
||||
me.OriginalFillType = null;
|
||||
me.GradColor.colors = colors;
|
||||
me.GradColor.currentIdx = currentIdx;
|
||||
});
|
||||
this.fillControls.push(this.sldrGradient);
|
||||
|
||||
this.cmbBorderSize = new Common.UI.ComboBorderSizeEditable({
|
||||
|
|
|
@ -291,7 +291,7 @@ define([
|
|||
var me = this;
|
||||
|
||||
function _btn_render(button, slot) {
|
||||
button.el = slot;
|
||||
button.setElement(slot, false);
|
||||
button.render();
|
||||
}
|
||||
|
||||
|
@ -345,6 +345,7 @@ define([
|
|||
},
|
||||
|
||||
reloadLanguages: function(array) {
|
||||
this.langMenu.removeAll();
|
||||
_.each(array, function(item) {
|
||||
this.langMenu.addItem({
|
||||
iconCls : item['tip'],
|
||||
|
|
|
@ -107,10 +107,11 @@ define([
|
|||
menuStyle : 'width: 100%; max-height: 290px;',
|
||||
editable : false,
|
||||
cls : 'input-group-nr',
|
||||
data : this.options.formats
|
||||
data : this.options.formats,
|
||||
disabled : (this.options.formats.length==0)
|
||||
});
|
||||
|
||||
this.cmbNextStyle.setValue(this.options.formats[0].value);
|
||||
if (this.options.formats.length>0)
|
||||
this.cmbNextStyle.setValue(this.options.formats[0].value);
|
||||
},
|
||||
|
||||
show: function() {
|
||||
|
@ -129,7 +130,7 @@ define([
|
|||
|
||||
getNextStyle: function () {
|
||||
var me = this;
|
||||
return me.cmbNextStyle.getValue();
|
||||
return (me.options.formats.length>0) ? me.cmbNextStyle.getValue() : null;
|
||||
},
|
||||
|
||||
onBtnClick: function(event) {
|
||||
|
|
|
@ -430,7 +430,7 @@ define([
|
|||
if (this._initSettings)
|
||||
this.createDelayedElements();
|
||||
|
||||
this.disableControls(this._locked);
|
||||
this.disableControls(this._locked); // need to update combodataview after disabled state
|
||||
|
||||
if (props )
|
||||
{
|
||||
|
@ -461,7 +461,7 @@ define([
|
|||
|
||||
if (this._isTemplatesChanged) {
|
||||
if (rec)
|
||||
this.cmbTableTemplate.fillComboView(this.cmbTableTemplate.menuPicker.getSelectedRec(),true);
|
||||
this.cmbTableTemplate.fillComboView(this.cmbTableTemplate.menuPicker.getSelectedRec()[0],true);
|
||||
else
|
||||
this.cmbTableTemplate.fillComboView(this.cmbTableTemplate.menuPicker.store.at(0), true);
|
||||
}
|
||||
|
|
|
@ -916,6 +916,18 @@ define([
|
|||
this.sldrGradient.on('thumbdblclick', function(cmp){
|
||||
me.btnGradColor.cmpEl.find('button').dropdown('toggle');
|
||||
});
|
||||
this.sldrGradient.on('sortthumbs', function(cmp, recalc_indexes){
|
||||
var colors = [],
|
||||
currentIdx;
|
||||
_.each (recalc_indexes, function(recalc_index, index) {
|
||||
colors.push(me.GradColor.colors[recalc_index]);
|
||||
if (me.GradColor.currentIdx == recalc_index)
|
||||
currentIdx = index;
|
||||
});
|
||||
me.OriginalFillType = null;
|
||||
me.GradColor.colors = colors;
|
||||
me.GradColor.currentIdx = currentIdx;
|
||||
});
|
||||
this.lockedControls.push(this.sldrGradient);
|
||||
|
||||
this.cmbBorderSize = new Common.UI.ComboBorderSizeEditable({
|
||||
|
|
|
@ -1039,7 +1039,7 @@ define([
|
|||
id: 'id-toolbar-btn-notes',
|
||||
cls: 'btn-toolbar',
|
||||
iconCls: 'btn-notes',
|
||||
caption: 'Footnotes',
|
||||
caption: me.capBtnInsFootnote,
|
||||
split: true,
|
||||
menu: true
|
||||
});
|
||||
|
@ -1335,6 +1335,7 @@ define([
|
|||
|
||||
this.fireEvent('render:after', [this]);
|
||||
|
||||
me.isCompactView = mode.isCompactView;
|
||||
/** coauthoring begin **/
|
||||
this.showSynchTip = !Common.localStorage.getBool("de-hide-synch");
|
||||
this.needShowSynchTip = false;
|
||||
|
@ -1749,6 +1750,9 @@ define([
|
|||
// if (this.mode.isDesktopApp || this.mode.canBrandingExt && this.mode.customization && this.mode.customization.header === false)
|
||||
// this.mnuitemHideTitleBar.hide();
|
||||
|
||||
if (this.mode.canBrandingExt && this.mode.customization && this.mode.customization.statusBar===false)
|
||||
this.mnuitemHideStatusBar.hide();
|
||||
|
||||
this.btnMarkers.setMenu(
|
||||
new Common.UI.Menu({
|
||||
items: [
|
||||
|
@ -2329,7 +2333,7 @@ define([
|
|||
}
|
||||
|
||||
this._state.hasCollaborativeChanges = true;
|
||||
var iconEl = $('.btn-icon', this.btnSave.cmpEl);
|
||||
var iconEl = $('.icon', this.btnSave.cmpEl);
|
||||
iconEl.removeClass(this.btnSaveCls);
|
||||
iconEl.addClass('btn-synch');
|
||||
if (this.showSynchTip) {
|
||||
|
@ -2364,7 +2368,7 @@ define([
|
|||
|
||||
synchronizeChanges: function () {
|
||||
if (this.btnSave.rendered) {
|
||||
var iconEl = $('.btn-icon', this.btnSave.cmpEl);
|
||||
var iconEl = $('.icon', this.btnSave.cmpEl);
|
||||
|
||||
if (iconEl.hasClass('btn-synch')) {
|
||||
iconEl.removeClass('btn-synch');
|
||||
|
@ -2372,7 +2376,7 @@ define([
|
|||
if (this.synchTooltip)
|
||||
this.synchTooltip.hide();
|
||||
this.btnSave.updateHint(this.btnSaveTip);
|
||||
this.btnSave.setDisabled(true);
|
||||
this.btnSave.setDisabled(!this.mode.forcesave);
|
||||
this._state.hasCollaborativeChanges = false;
|
||||
}
|
||||
}
|
||||
|
@ -2390,7 +2394,7 @@ define([
|
|||
if (cls !== this.btnSaveCls && this.btnSave.rendered) {
|
||||
this.btnSaveTip = ((length > 1) ? this.tipSaveCoauth : this.tipSave ) + Common.Utils.String.platformKey('Ctrl+S');
|
||||
|
||||
var iconEl = $('.btn-icon', this.btnSave.cmpEl);
|
||||
var iconEl = $('.icon', this.btnSave.cmpEl);
|
||||
if (!iconEl.hasClass('btn-synch')) {
|
||||
iconEl.removeClass(this.btnSaveCls);
|
||||
iconEl.addClass(cls);
|
||||
|
@ -2679,11 +2683,36 @@ define([
|
|||
mniNoteSettings: 'Notes Settings',
|
||||
textGotoFootnote: 'Go to Footnotes',
|
||||
tipChangeChart: 'Change Chart Type',
|
||||
capBtnInsPagebreak: 'Page Break',
|
||||
capBtnInsImage: 'Picture',
|
||||
capBtnInsTable: 'Table',
|
||||
capBtnInsChart: 'Chart',
|
||||
capBtnInsLink: 'Hyperlink',
|
||||
textTabFile: 'File',
|
||||
textTabHome: 'Home',
|
||||
textTabInsert: 'Insert',
|
||||
textTabLayout: 'Page Layout',
|
||||
textTabReview: 'Review'
|
||||
capBtnInsShape: 'Shape',
|
||||
capBtnInsTextbox: 'Text',
|
||||
capBtnInsDropcap: 'Drop Cap',
|
||||
capBtnInsFootnote: 'Footnotes',
|
||||
capBtnInsEquation: 'Equation',
|
||||
capBtnInsHeader: 'Headers/Footers',
|
||||
capBtnColumns: 'Columns',
|
||||
capBtnPageOrient: 'Orientation',
|
||||
capBtnMargins: 'Margins',
|
||||
capBtnPageSize: 'Size',
|
||||
tipImgAlign: 'Align objects',
|
||||
tipImgGroup: 'Group objects',
|
||||
tipImgWrapping: 'Wrap text',
|
||||
tipSendForward: 'Send forward',
|
||||
tipSendBackward: 'Send backward',
|
||||
capImgAlign: 'Align',
|
||||
capImgGroup: 'Group',
|
||||
capImgForward: 'Move forward',
|
||||
capImgBackward: 'Move backward',
|
||||
capImgWrapping: 'Wrapping'
|
||||
}
|
||||
})(), DE.Views.Toolbar || {}));
|
||||
});
|
||||
|
|
|
@ -189,6 +189,7 @@ require([
|
|||
,'common/main/lib/controller/ExternalMergeEditor'
|
||||
,'common/main/lib/controller/ReviewChanges'
|
||||
], function() {
|
||||
window.compareVersions = true;
|
||||
app.start();
|
||||
});
|
||||
}, function(err) {
|
||||
|
|
|
@ -217,6 +217,7 @@
|
|||
"DE.Controllers.Main.errorMailMergeLoadFile": "Fehler beim Laden\t",
|
||||
"DE.Controllers.Main.errorMailMergeSaveFile": "Merge ist fehlgeschlagen.",
|
||||
"DE.Controllers.Main.errorProcessSaveResult": "Speichern ist fehlgeschlagen.\n",
|
||||
"DE.Controllers.Main.errorServerVersion": "Editor-Version wurde aktualisiert. Die Seite wird neu geladen, um die Änderungen zu übernehmen.",
|
||||
"DE.Controllers.Main.errorSessionAbsolute": "Die Bearbeitungssitzung des Dokumentes ist abgelaufen. Laden Sie die Seite neu.",
|
||||
"DE.Controllers.Main.errorSessionIdle": "Das Dokument wurde lange nicht bearbeitet. Laden Sie die Seite neu.",
|
||||
"DE.Controllers.Main.errorSessionToken": "Die Verbindung zum Server wurde unterbrochen. Laden Sie die Seite neu.",
|
||||
|
@ -268,6 +269,7 @@
|
|||
"DE.Controllers.Main.textStrict": "Formaler Modus",
|
||||
"DE.Controllers.Main.textTryUndoRedo": "Undo/Redo Optionen sind für den halbformalen Zusammenbearbeitungsmodus deaktiviert.<br>Klicken Sie auf den Button \"Formaler Modus\", um den formalen Zusammenbearbeitungsmodus zu aktivieren, um die Datei, ohne Störungen anderer Benutzer zu bearbeiten und die Änderungen erst nachdem Sie sie gespeichert haben, zu senden. Sie können zwischen den Zusammenbearbeitungsmodi mit der Hilfe der erweiterten Einstellungen von Editor umschalten.",
|
||||
"DE.Controllers.Main.titleLicenseExp": "Lizenz ist abgelaufen",
|
||||
"DE.Controllers.Main.titleServerVersion": "Editor wurde aktualisiert",
|
||||
"DE.Controllers.Main.titleUpdateVersion": "Version wurde geändert",
|
||||
"DE.Controllers.Main.txtArt": "Hier den Text eingeben",
|
||||
"DE.Controllers.Main.txtBasicShapes": "Standardformen",
|
||||
|
|
|
@ -146,7 +146,7 @@
|
|||
"Common.Views.Header.textSaveChanged": "Modified",
|
||||
"Common.Views.Header.textSaveExpander": "All changes saved",
|
||||
"Common.Views.Header.textBack": "Go to Documents",
|
||||
"Common.Views.Header.txtHeaderDeveloper": "DEVELOPER MODE",
|
||||
"del_Common.Views.Header.txtHeaderDeveloper": "DEVELOPER MODE",
|
||||
"Common.Views.Header.txtRename": "Rename",
|
||||
"Common.Views.Header.txtAccessRights": "Change access rights",
|
||||
"Common.Views.Header.tipAccessRights": "Manage document access rights",
|
||||
|
@ -315,6 +315,9 @@
|
|||
"DE.Controllers.Main.warnLicenseExp": "Your license has expired.<br>Please update your license and refresh the page.",
|
||||
"DE.Controllers.Main.warnNoLicense": "You are using an open source version of ONLYOFFICE. The version has limitations for concurrent connections to the document server (20 connections at a time).<br>If you need more please consider purchasing a commercial license.",
|
||||
"DE.Controllers.Main.warnProcessRightsChange": "You have been denied the right to edit the file.",
|
||||
"DE.Controllers.Main.titleServerVersion": "Editor updated",
|
||||
"DE.Controllers.Main.errorServerVersion": "The editor version has been updated. The page will be reloaded to apply the changes.",
|
||||
"DE.Controllers.Main.errorBadImageUrl": "Image URL is incorrect",
|
||||
"DE.Controllers.Statusbar.textHasChanges": "New changes have been tracked",
|
||||
"DE.Controllers.Statusbar.textTrackChanges": "The document is opened with the Track Changes mode enabled",
|
||||
"DE.Controllers.Statusbar.zoomText": "Zoom {0}%",
|
||||
|
@ -969,6 +972,8 @@
|
|||
"DE.Views.FileMenuPanels.Settings.txtPt": "Point",
|
||||
"DE.Views.FileMenuPanels.Settings.txtSpellCheck": "Spell Checking",
|
||||
"DE.Views.FileMenuPanels.Settings.txtWin": "as Windows",
|
||||
"DE.Views.FileMenuPanels.Settings.textForceSave": "Save to Server",
|
||||
"DE.Views.FileMenuPanels.Settings.strForcesave": "Always save to server (otherwise save to server on document close)",
|
||||
"DE.Views.HeaderFooterSettings.textBottomCenter": "Bottom Center",
|
||||
"DE.Views.HeaderFooterSettings.textBottomLeft": "Bottom Left",
|
||||
"DE.Views.HeaderFooterSettings.textBottomRight": "Bottom Right",
|
||||
|
@ -1086,6 +1091,7 @@
|
|||
"DE.Views.LeftMenu.tipSearch": "Search",
|
||||
"DE.Views.LeftMenu.tipSupport": "Feedback & Support",
|
||||
"DE.Views.LeftMenu.tipTitles": "Titles",
|
||||
"DE.Views.LeftMenu.txtDeveloper": "DEVELOPER MODE",
|
||||
"DE.Views.MailMergeEmailDlg.cancelButtonText": "Cancel",
|
||||
"DE.Views.MailMergeEmailDlg.filePlaceholder": "PDF",
|
||||
"DE.Views.MailMergeEmailDlg.okButtonText": "Send",
|
||||
|
|
|
@ -141,7 +141,14 @@
|
|||
"Common.Views.ExternalMergeEditor.textTitle": "Receptores de Fusión de Correo",
|
||||
"Common.Views.Header.openNewTabText": "Abrir en pestaña nueva",
|
||||
"Common.Views.Header.textBack": "Ir a Documentos",
|
||||
"Common.Views.History.textHistoryHeader": "Volver a Documento",
|
||||
"Common.Views.Header.txtHeaderDeveloper": "MODO DE DESARROLLO",
|
||||
"Common.Views.Header.txtRename": "Renombrar",
|
||||
"Common.Views.History.textCloseHistory": "Cerrar historial",
|
||||
"Common.Views.History.textHide": "Plegar",
|
||||
"Common.Views.History.textHideAll": "Ocultar cambios detallados",
|
||||
"Common.Views.History.textRestore": "Restaurar",
|
||||
"Common.Views.History.textShow": "Desplegar",
|
||||
"Common.Views.History.textShowAll": "Mostrar cambios detallados",
|
||||
"Common.Views.ImageFromUrlDialog.cancelButtonText": "Cancelar",
|
||||
"Common.Views.ImageFromUrlDialog.okButtonText": "Aceptar",
|
||||
"Common.Views.ImageFromUrlDialog.textUrl": "Pegar URL de imagen:",
|
||||
|
@ -158,13 +165,17 @@
|
|||
"Common.Views.OpenDialog.cancelButtonText": "Cancelar",
|
||||
"Common.Views.OpenDialog.okButtonText": "Aceptar",
|
||||
"Common.Views.OpenDialog.txtEncoding": "Codificación",
|
||||
"Common.Views.OpenDialog.txtPassword": "Password",
|
||||
"Common.Views.OpenDialog.txtPassword": "Contraseña",
|
||||
"Common.Views.OpenDialog.txtTitle": "Elegir opciones de %1",
|
||||
"Common.Views.OpenDialog.txtTitleProtected": "Protected File",
|
||||
"Common.Views.PluginDlg.textLoading": "Loading",
|
||||
"Common.Views.OpenDialog.txtTitleProtected": "Archivo protegido",
|
||||
"Common.Views.PluginDlg.textLoading": "Cargando",
|
||||
"Common.Views.Plugins.strPlugins": "Plugins",
|
||||
"Common.Views.Plugins.textLoading": "Loading",
|
||||
"Common.Views.Plugins.textStart": "Start",
|
||||
"Common.Views.Plugins.textLoading": "Cargando",
|
||||
"Common.Views.Plugins.textStart": "Iniciar",
|
||||
"Common.Views.RenameDialog.cancelButtonText": "Cancelar",
|
||||
"Common.Views.RenameDialog.okButtonText": "Aceptar",
|
||||
"Common.Views.RenameDialog.textName": "Nombre de archivo",
|
||||
"Common.Views.RenameDialog.txtInvalidName": "El nombre de archivo no debe contener los símbolos siguientes:",
|
||||
"Common.Views.ReviewChanges.txtAccept": "Aceptar",
|
||||
"Common.Views.ReviewChanges.txtAcceptAll": "Aceptar Todos los Cambios",
|
||||
"Common.Views.ReviewChanges.txtAcceptCurrent": "Aceptar Cambios Actuales",
|
||||
|
@ -185,7 +196,6 @@
|
|||
"DE.Controllers.LeftMenu.warnDownloadAs": "Si sigue guardando en este formato todas las características a excepción del texto se perderán.<br> ¿Está seguro de que quiere continuar?",
|
||||
"DE.Controllers.Main.applyChangesTextText": "Cargando cambios...",
|
||||
"DE.Controllers.Main.applyChangesTitleText": "Cargando cambios",
|
||||
"DE.Controllers.Main.convertationErrorText": "Fallo de conversión.",
|
||||
"DE.Controllers.Main.convertationTimeoutText": "Tiempo de conversión está superado.",
|
||||
"DE.Controllers.Main.criticalErrorExtText": "Pulse \"OK\" para regresar al documento.",
|
||||
"DE.Controllers.Main.criticalErrorTitle": "Error",
|
||||
|
@ -195,6 +205,7 @@
|
|||
"DE.Controllers.Main.downloadMergeTitle": "Descargando",
|
||||
"DE.Controllers.Main.downloadTextText": "Cargando documento...",
|
||||
"DE.Controllers.Main.downloadTitleText": "Cargando documento",
|
||||
"DE.Controllers.Main.errorAccessDeny": "Usted no tiene permisos para realizar la acción que está intentando hacer.<br> Por favor, contacte con el Administrador del Servidor de Documentos.",
|
||||
"DE.Controllers.Main.errorCoAuthoringDisconnect": "Se ha perdido la conexión con servidor. El documento no puede ser editado ahora.",
|
||||
"DE.Controllers.Main.errorConnectToServer": "No se pudo guardar el documento. Por favor, compruebe la configuración de conexión o póngase en contacto con el administrador.<br>Al hacer clic en el botón \"Aceptar\", se le pedirá que descargue el documento.<br> Encuentre más información acerca de la conexión Servidor de Documentos<a href=\"https://api.onlyoffice.com/editors/callback\" target=\"_blank\">here</a>",
|
||||
"DE.Controllers.Main.errorDatabaseConnection": "Error externo.<br>Error de conexión de base de datos. Por favor póngase en contacto con soporte si el error se mantiene.",
|
||||
|
@ -206,11 +217,17 @@
|
|||
"DE.Controllers.Main.errorMailMergeLoadFile": "Error de carga",
|
||||
"DE.Controllers.Main.errorMailMergeSaveFile": "Error de fusión.",
|
||||
"DE.Controllers.Main.errorProcessSaveResult": "Problemas al guardar",
|
||||
"DE.Controllers.Main.errorServerVersion": "La versión del editor ha sido actualizada. La página será recargada para aplicar los cambios.",
|
||||
"DE.Controllers.Main.errorSessionAbsolute": "Sesión de editar el documento ha expirado. Por favor, recargue la página.",
|
||||
"DE.Controllers.Main.errorSessionIdle": "El documento no ha sido editado durante bastante tiempo. Por favor, recargue la página.",
|
||||
"DE.Controllers.Main.errorSessionToken": "Conexión al servidor ha sido interrumpido. Por favor, recargue la página.",
|
||||
"DE.Controllers.Main.errorStockChart": "Orden de las filas incorrecto. Para crear un gráfico de cotizaciones introduzca los datos en la hoja de la forma siguiente:<br> precio de apertura, precio máximo, precio mínimo, precio de cierre.",
|
||||
"DE.Controllers.Main.errorToken": "El token de seguridad de documento tiene un formato incorrecto.<br>Por favor, contacte con el Administrador del Servidor de Documentos.",
|
||||
"DE.Controllers.Main.errorTokenExpire": "El token de seguridad de documento ha sido expirado.<br>Por favor, contacte con el Administrador del Servidor de Documentos.",
|
||||
"DE.Controllers.Main.errorUpdateVersion": "Se ha cambiado la versión del archivo. La página será actualizada.",
|
||||
"DE.Controllers.Main.errorUserDrop": "No se puede acceder al archivo ahora.",
|
||||
"DE.Controllers.Main.errorUsersExceed": "El número de usuarios permitido según su plan de precios fue excedido",
|
||||
"DE.Controllers.Main.errorViewerDisconnect": "Connection is lost. You can still view the document,<br>but will not be able to download or print until the connection is restored.",
|
||||
"DE.Controllers.Main.errorViewerDisconnect": "Se pierde la conexión. Usted todavía puede visualizar el documento,<br> pero no puede descargar o imprimirlo hasta que la conexión sea restaurada.",
|
||||
"DE.Controllers.Main.leavePageText": "Hay cambios no guardados en este documento. Haga clic en 'Permanecer en esta página', después 'Guardar' para guardarlos. Haga clic en 'Abandonar esta página' para descartar todos los cambios no guardados.",
|
||||
"DE.Controllers.Main.loadFontsTextText": "Cargando datos...",
|
||||
"DE.Controllers.Main.loadFontsTitleText": "Cargando datos",
|
||||
|
@ -225,7 +242,7 @@
|
|||
"DE.Controllers.Main.mailMergeLoadFileText": "Cargando fuente de datos...",
|
||||
"DE.Controllers.Main.mailMergeLoadFileTitle": "Cargando fuente de datos",
|
||||
"DE.Controllers.Main.notcriticalErrorTitle": "Aviso",
|
||||
"DE.Controllers.Main.openErrorText": "An error has occurred while opening the file",
|
||||
"DE.Controllers.Main.openErrorText": "Se ha producido un error al abrir el archivo ",
|
||||
"DE.Controllers.Main.openTextText": "Abriendo documento...",
|
||||
"DE.Controllers.Main.openTitleText": "Abriendo documento",
|
||||
"DE.Controllers.Main.printTextText": "Imprimiendo documento...",
|
||||
|
@ -233,7 +250,7 @@
|
|||
"DE.Controllers.Main.reloadButtonText": "Recargar página",
|
||||
"DE.Controllers.Main.requestEditFailedMessageText": "Alguien está editando este documento en este momento. Por favor, inténtelo de nuevo más tarde.",
|
||||
"DE.Controllers.Main.requestEditFailedTitleText": "Acceso negado",
|
||||
"DE.Controllers.Main.saveErrorText": "An error has occurred while saving the file",
|
||||
"DE.Controllers.Main.saveErrorText": "Se ha producido un error al guardar el archivo ",
|
||||
"DE.Controllers.Main.savePreparingText": "Preparando para guardar",
|
||||
"DE.Controllers.Main.savePreparingTitle": "Preparando para guardar.Espere por favor...",
|
||||
"DE.Controllers.Main.saveTextText": "Guardando documento...",
|
||||
|
@ -244,14 +261,15 @@
|
|||
"DE.Controllers.Main.splitMaxColsErrorText": "El número de columnas debe ser menos que %1.",
|
||||
"DE.Controllers.Main.splitMaxRowsErrorText": "El número de filas debe ser menos que %1.",
|
||||
"DE.Controllers.Main.textAnonymous": "Anónimo",
|
||||
"DE.Controllers.Main.textBuyNow": "Visit website",
|
||||
"DE.Controllers.Main.textBuyNow": "Visitar sitio web",
|
||||
"DE.Controllers.Main.textCloseTip": "Pulse para cerrar el consejo",
|
||||
"DE.Controllers.Main.textContactUs": "Contact sales",
|
||||
"DE.Controllers.Main.textContactUs": "Contactar con equipo de ventas",
|
||||
"DE.Controllers.Main.textLoadingDocument": "Cargando documento",
|
||||
"DE.Controllers.Main.textNoLicenseTitle": "ONLYOFFICE open source version",
|
||||
"DE.Controllers.Main.textNoLicenseTitle": "Versión de código abierto de ONLYOFFICE",
|
||||
"DE.Controllers.Main.textStrict": "Modo estricto",
|
||||
"DE.Controllers.Main.textTryUndoRedo": "Las funciones Anular/Rehacer se desactivan para el modo co-edición rápido.<br>Haga Clic en el botón \"modo estricto\" para cambiar al modo de co-edición estricta para editar el archivo sin la interferencia de otros usuarios y enviar sus cambios sólo después de guardarlos. Se puede cambiar entre los modos de co-edición usando los ajustes avanzados de edición.",
|
||||
"DE.Controllers.Main.titleLicenseExp": "License expired",
|
||||
"DE.Controllers.Main.titleLicenseExp": "Licencia ha expirado",
|
||||
"DE.Controllers.Main.titleServerVersion": "Editor ha sido actualizado",
|
||||
"DE.Controllers.Main.titleUpdateVersion": "Versión ha cambiado",
|
||||
"DE.Controllers.Main.txtArt": "Su texto aquí",
|
||||
"DE.Controllers.Main.txtBasicShapes": "Formas básicas",
|
||||
|
@ -279,13 +297,14 @@
|
|||
"DE.Controllers.Main.uploadImageTitleText": "Subiendo imagen",
|
||||
"DE.Controllers.Main.warnBrowserIE9": "Este aplicación tiene baja capacidad en IE9. Utilice IE10 o superior",
|
||||
"DE.Controllers.Main.warnBrowserZoom": "La configuración actual de zoom de su navegador no está soportada por completo. Por favor restablezca zoom predeterminado pulsando Ctrl+0.",
|
||||
"DE.Controllers.Main.warnLicenseExp": "Your license has expired.<br>Please update your license and refresh the page.",
|
||||
"DE.Controllers.Main.warnNoLicense": "You are using an open source version of ONLYOFFICE. The version has limitations for concurrent connections to the document server (20 connections at a time).<br>If you need more please consider purchasing a commercial license.",
|
||||
"DE.Controllers.Main.warnLicenseExp": "Su licencia ha expirado.<br>Por favor, actualice su licencia y después recargue la página.",
|
||||
"DE.Controllers.Main.warnNoLicense": "Usted está usando la versión de código abierto de ONLYOFFICE. Esta versión tiene limitaciones respecto a la cantidad de conexiones concurrentes al servidor de documentos (20 conexiones simultáneamente).<br>Si se requiere más, considere la posibilidad de adquirir la licencia comercial.",
|
||||
"DE.Controllers.Main.warnProcessRightsChange": "El derecho de edición del archivo es denegado",
|
||||
"DE.Controllers.Statusbar.textHasChanges": "Nuevos cambios han sido encontrado",
|
||||
"DE.Controllers.Statusbar.textTrackChanges": "El documento se abre con el modo de cambio de pista activado",
|
||||
"DE.Controllers.Statusbar.zoomText": "Zoom {0}%",
|
||||
"DE.Controllers.Toolbar.confirmAddFontName": "El tipo de letra que usted va a guardar no está disponible en este dispositivo. <br>El estilo de letra se mostrará usando uno de los tipos de letra del dispositivo, el tipo de letra guardado va a usarse cuando esté disponible.<br>¿Desea continuar?",
|
||||
"DE.Controllers.Toolbar.confirmDeleteFootnotes": "¿Usted desea eliminar todas las notas a pie de página?",
|
||||
"DE.Controllers.Toolbar.notcriticalErrorTitle": "Aviso",
|
||||
"DE.Controllers.Toolbar.textAccent": "Acentos",
|
||||
"DE.Controllers.Toolbar.textBracket": "Paréntesis",
|
||||
|
@ -621,13 +640,13 @@
|
|||
"DE.Controllers.Toolbar.txtSymbol_xsi": "Csi",
|
||||
"DE.Controllers.Toolbar.txtSymbol_zeta": "Dseda",
|
||||
"DE.Views.ChartSettings.textAdvanced": "Mostrar ajustes avanzados",
|
||||
"DE.Views.ChartSettings.textArea": "Gráfico de área",
|
||||
"DE.Views.ChartSettings.textBar": "Gráfico de barras",
|
||||
"DE.Views.ChartSettings.textArea": "Área",
|
||||
"DE.Views.ChartSettings.textBar": "Barra",
|
||||
"DE.Views.ChartSettings.textChartType": "Cambiar tipo de gráfico",
|
||||
"DE.Views.ChartSettings.textColumn": "Gráfico de columnas",
|
||||
"DE.Views.ChartSettings.textEditData": "Editar datos",
|
||||
"DE.Views.ChartSettings.textHeight": "Altura",
|
||||
"DE.Views.ChartSettings.textLine": "Gráfico de líneas",
|
||||
"DE.Views.ChartSettings.textLine": "Línea",
|
||||
"DE.Views.ChartSettings.textOriginalSize": "Tamaño Predeterminado",
|
||||
"DE.Views.ChartSettings.textPie": "Gráfico circular",
|
||||
"DE.Views.ChartSettings.textPoint": "Gráfico de Punto",
|
||||
|
@ -859,6 +878,7 @@
|
|||
"DE.Views.DropcapSettingsAdvanced.tipFontName": "Nombre de letra",
|
||||
"DE.Views.DropcapSettingsAdvanced.txtNoBorders": "Sin bordes",
|
||||
"DE.Views.FileMenu.btnBackCaption": "Ir a Documentos",
|
||||
"DE.Views.FileMenu.btnCloseMenuCaption": "Cerrar menú",
|
||||
"DE.Views.FileMenu.btnCreateNewCaption": "Crear nuevo",
|
||||
"DE.Views.FileMenu.btnDownloadCaption": "Descargar como...",
|
||||
"DE.Views.FileMenu.btnHelpCaption": "Ayuda...",
|
||||
|
@ -866,6 +886,7 @@
|
|||
"DE.Views.FileMenu.btnInfoCaption": "Info sobre documento...",
|
||||
"DE.Views.FileMenu.btnPrintCaption": "Imprimir",
|
||||
"DE.Views.FileMenu.btnRecentFilesCaption": "Abrir reciente...",
|
||||
"DE.Views.FileMenu.btnRenameCaption": "Renombrar...",
|
||||
"DE.Views.FileMenu.btnReturnCaption": "Volver a Documento",
|
||||
"DE.Views.FileMenu.btnRightsCaption": "Derechos de acceso...",
|
||||
"DE.Views.FileMenu.btnSaveAsCaption": "Guardar como",
|
||||
|
@ -920,8 +941,8 @@
|
|||
"DE.Views.FileMenuPanels.Settings.textMinute": "Cada minuto",
|
||||
"DE.Views.FileMenuPanels.Settings.txtAll": "Ver todo",
|
||||
"DE.Views.FileMenuPanels.Settings.txtCm": "Centímetro",
|
||||
"DE.Views.FileMenuPanels.Settings.txtFitPage": "Fit to Page",
|
||||
"DE.Views.FileMenuPanels.Settings.txtFitWidth": "Fit to Width",
|
||||
"DE.Views.FileMenuPanels.Settings.txtFitPage": "Ajustar a la página",
|
||||
"DE.Views.FileMenuPanels.Settings.txtFitWidth": "Ajustar al ancho",
|
||||
"DE.Views.FileMenuPanels.Settings.txtInch": "Pulgada",
|
||||
"DE.Views.FileMenuPanels.Settings.txtInput": "Entrada alternativa",
|
||||
"DE.Views.FileMenuPanels.Settings.txtLast": "Ver últimos",
|
||||
|
@ -956,8 +977,8 @@
|
|||
"DE.Views.HyperlinkSettingsDialog.txtEmpty": "Este campo es obligatorio",
|
||||
"DE.Views.HyperlinkSettingsDialog.txtNotUrl": "Este campo debe ser URL en el formato \"http://www.example.com\"",
|
||||
"DE.Views.ImageSettings.textAdvanced": "Mostrar ajustes avanzados",
|
||||
"DE.Views.ImageSettings.textEdit": "Edit",
|
||||
"DE.Views.ImageSettings.textEditObject": "Edit Object",
|
||||
"DE.Views.ImageSettings.textEdit": "Editar",
|
||||
"DE.Views.ImageSettings.textEditObject": "Editar objeto",
|
||||
"DE.Views.ImageSettings.textFromFile": "De archivo",
|
||||
"DE.Views.ImageSettings.textFromUrl": "De URL",
|
||||
"DE.Views.ImageSettings.textHeight": "Altura",
|
||||
|
@ -978,6 +999,10 @@
|
|||
"DE.Views.ImageSettingsAdvanced.strMargins": "Márgenes interiores",
|
||||
"DE.Views.ImageSettingsAdvanced.textAbsoluteWH": "Absoluto",
|
||||
"DE.Views.ImageSettingsAdvanced.textAlignment": "Alineación",
|
||||
"DE.Views.ImageSettingsAdvanced.textAlt": "Texto alternativo",
|
||||
"DE.Views.ImageSettingsAdvanced.textAltDescription": "Descripción",
|
||||
"DE.Views.ImageSettingsAdvanced.textAltTip": "Representación de texto alternativa de la información sobre el objeto visual, que se leerá para las personas con deficiencia visual o deterioro cognitivo para ayudarles a entender mejor, que información contiene la imagen, autoforma, gráfica o tabla.",
|
||||
"DE.Views.ImageSettingsAdvanced.textAltTitle": "Título",
|
||||
"DE.Views.ImageSettingsAdvanced.textArrows": "Flechas",
|
||||
"DE.Views.ImageSettingsAdvanced.textAspectRatio": "Bloquear relación de aspecto",
|
||||
"DE.Views.ImageSettingsAdvanced.textBeginSize": "Tamaño inicial",
|
||||
|
@ -1097,6 +1122,25 @@
|
|||
"DE.Views.MailMergeSettings.txtPrev": "a registro anterior",
|
||||
"DE.Views.MailMergeSettings.txtUntitled": "Sin título",
|
||||
"DE.Views.MailMergeSettings.warnProcessMailMerge": "Imposible empezar fusión",
|
||||
"DE.Views.NoteSettingsDialog.textApply": "Aplicar",
|
||||
"DE.Views.NoteSettingsDialog.textApplyTo": "Aplicar cambios a",
|
||||
"DE.Views.NoteSettingsDialog.textCancel": "Cancelar",
|
||||
"DE.Views.NoteSettingsDialog.textContinue": "Continua",
|
||||
"DE.Views.NoteSettingsDialog.textCustom": "Símbolo especial",
|
||||
"DE.Views.NoteSettingsDialog.textDocument": "Todo el documento",
|
||||
"DE.Views.NoteSettingsDialog.textEachPage": "Reiniciar cada página",
|
||||
"DE.Views.NoteSettingsDialog.textEachSection": "Reiniciar cada sección",
|
||||
"DE.Views.NoteSettingsDialog.textFootnote": "Nota a pie de página",
|
||||
"DE.Views.NoteSettingsDialog.textFormat": "Formato",
|
||||
"DE.Views.NoteSettingsDialog.textInsert": "Insertar",
|
||||
"DE.Views.NoteSettingsDialog.textLocation": "Ubicación",
|
||||
"DE.Views.NoteSettingsDialog.textNumbering": "Numeración",
|
||||
"DE.Views.NoteSettingsDialog.textNumFormat": "Formato de número",
|
||||
"DE.Views.NoteSettingsDialog.textPageBottom": "Al pie de la página",
|
||||
"DE.Views.NoteSettingsDialog.textSection": "Sección actual",
|
||||
"DE.Views.NoteSettingsDialog.textStart": "Empezar con",
|
||||
"DE.Views.NoteSettingsDialog.textTextBottom": "Bajo el texto",
|
||||
"DE.Views.NoteSettingsDialog.textTitle": "Ajustes de las notas a pie de página",
|
||||
"DE.Views.PageMarginsDialog.cancelButtonText": "Cancelar",
|
||||
"DE.Views.PageMarginsDialog.notcriticalErrorTitle": "Aviso",
|
||||
"DE.Views.PageMarginsDialog.okButtonText": "Aceptar",
|
||||
|
@ -1196,7 +1240,7 @@
|
|||
"DE.Views.ShapeSettings.strSize": "Tamaño",
|
||||
"DE.Views.ShapeSettings.strStroke": "Trazo",
|
||||
"DE.Views.ShapeSettings.strTransparency": "Opacidad ",
|
||||
"DE.Views.ShapeSettings.strType": "Type",
|
||||
"DE.Views.ShapeSettings.strType": "Tipo",
|
||||
"DE.Views.ShapeSettings.textAdvanced": "Mostrar ajustes avanzados",
|
||||
"DE.Views.ShapeSettings.textBorderSizeErr": "El valor numérico es incorrecto.<br>Por favor, introduzca un valor de 0 a 1584 puntos.",
|
||||
"DE.Views.ShapeSettings.textColor": "Color de relleno",
|
||||
|
@ -1317,6 +1361,10 @@
|
|||
"DE.Views.TableSettingsAdvanced.textAlign": "Alineación",
|
||||
"DE.Views.TableSettingsAdvanced.textAlignment": "Alineación",
|
||||
"DE.Views.TableSettingsAdvanced.textAllowSpacing": "Espacio entre celdas",
|
||||
"DE.Views.TableSettingsAdvanced.textAlt": "Texto alternativo",
|
||||
"DE.Views.TableSettingsAdvanced.textAltDescription": "Descripción",
|
||||
"DE.Views.TableSettingsAdvanced.textAltTip": "Representación de texto alternativa de la información sobre el objeto visual, que se leerá para las personas con deficiencia visual o deterioro cognitivo para ayudarles a entender mejor, que información contiene la imagen, autoforma, gráfica o tabla.",
|
||||
"DE.Views.TableSettingsAdvanced.textAltTitle": "Título",
|
||||
"DE.Views.TableSettingsAdvanced.textAnchorText": "Texto",
|
||||
"DE.Views.TableSettingsAdvanced.textAutofit": "Cambiar tamaño automáticamente para ajustar a contenido",
|
||||
"DE.Views.TableSettingsAdvanced.textBackColor": "Fondo de celda",
|
||||
|
@ -1388,7 +1436,7 @@
|
|||
"DE.Views.TextArtSettings.strSize": "Tamaño",
|
||||
"DE.Views.TextArtSettings.strStroke": "Trazo",
|
||||
"DE.Views.TextArtSettings.strTransparency": "Opacidad ",
|
||||
"DE.Views.TextArtSettings.strType": "Type",
|
||||
"DE.Views.TextArtSettings.strType": "Tipo",
|
||||
"DE.Views.TextArtSettings.textBorderSizeErr": "El valor numérico es incorrecto.<br>Por favor, introduzca un valor de 0 a 1584 puntos.",
|
||||
"DE.Views.TextArtSettings.textColor": "Color Fill",
|
||||
"DE.Views.TextArtSettings.textDirection": "Dirección ",
|
||||
|
@ -1404,6 +1452,7 @@
|
|||
"DE.Views.TextArtSettings.textTransform": "Transformar",
|
||||
"DE.Views.TextArtSettings.txtNoBorders": "Sin línea",
|
||||
"DE.Views.Toolbar.mniCustomTable": "Insertar tabla personalizada",
|
||||
"DE.Views.Toolbar.mniDelFootnote": "Eliminar todas las notas al pie de página",
|
||||
"DE.Views.Toolbar.mniEditDropCap": "Ajustes de letra capital",
|
||||
"DE.Views.Toolbar.mniEditFooter": "Editar pie de página",
|
||||
"DE.Views.Toolbar.mniEditHeader": "Editar encabezado",
|
||||
|
@ -1411,12 +1460,15 @@
|
|||
"DE.Views.Toolbar.mniHiddenChars": "Caracteres no imprimibles",
|
||||
"DE.Views.Toolbar.mniImageFromFile": "Imagen de archivo",
|
||||
"DE.Views.Toolbar.mniImageFromUrl": "Imagen de URL",
|
||||
"DE.Views.Toolbar.mniInsFootnote": "Insertar nota a pie de página",
|
||||
"DE.Views.Toolbar.mniNoteSettings": "Ajustes de las notas a pie de página",
|
||||
"DE.Views.Toolbar.strMenuNoFill": "Sin relleno",
|
||||
"DE.Views.Toolbar.textArea": "Área",
|
||||
"DE.Views.Toolbar.textAutoColor": "Automático",
|
||||
"DE.Views.Toolbar.textBar": "Gráfico de barras",
|
||||
"DE.Views.Toolbar.textBold": "Negrita",
|
||||
"DE.Views.Toolbar.textBottom": "Inferior: ",
|
||||
"DE.Views.Toolbar.textCharts": "Gráficos",
|
||||
"DE.Views.Toolbar.textColumn": "Gráfico de columnas",
|
||||
"DE.Views.Toolbar.textColumnsLeft": "Izquierdo",
|
||||
"DE.Views.Toolbar.textColumnsOne": "Uno",
|
||||
|
@ -1428,11 +1480,13 @@
|
|||
"DE.Views.Toolbar.textEvenPage": "Página par",
|
||||
"DE.Views.Toolbar.textFitPage": "Ajustar a la página",
|
||||
"DE.Views.Toolbar.textFitWidth": "Ajustar a ancho",
|
||||
"DE.Views.Toolbar.textGotoFootnote": "Pasar a las notas a pie de página",
|
||||
"DE.Views.Toolbar.textHideLines": "Ocultar reglas",
|
||||
"DE.Views.Toolbar.textHideStatusBar": "Ocultar barra de estado",
|
||||
"DE.Views.Toolbar.textHideTitleBar": "Ocultar barra de título",
|
||||
"DE.Views.Toolbar.textInMargin": "En margen",
|
||||
"DE.Views.Toolbar.textInsColumnBreak": "Insertar Grieta de Columna",
|
||||
"DE.Views.Toolbar.textInsertPageCount": "Insertar el número de páginas",
|
||||
"DE.Views.Toolbar.textInsertPageNumber": "Insertar número de página",
|
||||
"DE.Views.Toolbar.textInsPageBreak": "Insertar salto de página",
|
||||
"DE.Views.Toolbar.textInsSectionBreak": "Insertar salto de sección",
|
||||
|
@ -1440,7 +1494,7 @@
|
|||
"DE.Views.Toolbar.textInsTextArt": "Insertar Texto de Arte",
|
||||
"DE.Views.Toolbar.textInText": "En texto",
|
||||
"DE.Views.Toolbar.textItalic": "Cursiva",
|
||||
"DE.Views.Toolbar.textLandscape": "Landscape",
|
||||
"DE.Views.Toolbar.textLandscape": "Horizontal",
|
||||
"DE.Views.Toolbar.textLeft": "Izquierdo: ",
|
||||
"DE.Views.Toolbar.textLine": "Gráfico de líneas",
|
||||
"DE.Views.Toolbar.textMarginsLast": "último personalizado",
|
||||
|
@ -1457,7 +1511,7 @@
|
|||
"DE.Views.Toolbar.textPageSizeCustom": "Tamaño de página personalizado",
|
||||
"DE.Views.Toolbar.textPie": "Gráfico circular",
|
||||
"DE.Views.Toolbar.textPoint": "Gráfico de Punto",
|
||||
"DE.Views.Toolbar.textPortrait": "Portrait",
|
||||
"DE.Views.Toolbar.textPortrait": "Vertical",
|
||||
"DE.Views.Toolbar.textRight": "Derecho: ",
|
||||
"DE.Views.Toolbar.textStock": "De cotizaciones",
|
||||
"DE.Views.Toolbar.textStrikeout": "Tachado",
|
||||
|
@ -1480,6 +1534,7 @@
|
|||
"DE.Views.Toolbar.tipAlignLeft": "Alinear a la izquierda",
|
||||
"DE.Views.Toolbar.tipAlignRight": "Alinear a la derecha",
|
||||
"DE.Views.Toolbar.tipBack": "Atrás",
|
||||
"DE.Views.Toolbar.tipChangeChart": "Cambiar tipo de gráfico",
|
||||
"DE.Views.Toolbar.tipClearStyle": "Borrar estilo",
|
||||
"DE.Views.Toolbar.tipColorSchemas": "Cambiar combinación de colores",
|
||||
"DE.Views.Toolbar.tipColumns": "Insertar columnas",
|
||||
|
@ -1509,6 +1564,7 @@
|
|||
"DE.Views.Toolbar.tipMarkers": "Viñetas",
|
||||
"DE.Views.Toolbar.tipMultilevels": "Esquema",
|
||||
"DE.Views.Toolbar.tipNewDocument": "Nuevo documento",
|
||||
"DE.Views.Toolbar.tipNotes": "Notas a pie de página",
|
||||
"DE.Views.Toolbar.tipNumbers": "Numeración",
|
||||
"DE.Views.Toolbar.tipOpenDocument": "Abrir documento",
|
||||
"DE.Views.Toolbar.tipPageBreak": "Insertar salto de página o de sección",
|
||||
|
|
|
@ -217,6 +217,7 @@
|
|||
"DE.Controllers.Main.errorMailMergeLoadFile": "Échec du chargement",
|
||||
"DE.Controllers.Main.errorMailMergeSaveFile": "Fusionner échoué.",
|
||||
"DE.Controllers.Main.errorProcessSaveResult": "Échec de l'enregistrement",
|
||||
"DE.Controllers.Main.errorServerVersion": "La version de l'éditeur a été mise à jour. La page sera rechargée pour appliquer les modifications.",
|
||||
"DE.Controllers.Main.errorSessionAbsolute": "La session de la modification de document a expiré.Veuillez recharger la page.",
|
||||
"DE.Controllers.Main.errorSessionIdle": "Le document n'est pas modifié depuis longtemps. Veuillez recharger la page.",
|
||||
"DE.Controllers.Main.errorSessionToken": "La connexion au serveur a été interrompue. Veuillez recharger la page.",
|
||||
|
@ -268,6 +269,7 @@
|
|||
"DE.Controllers.Main.textStrict": "Mode strict",
|
||||
"DE.Controllers.Main.textTryUndoRedo": "Les fonctions annuler/rétablir sont désactivées pour le mode de co-édition rapide.<br>Cliquez sur le bouton \"Mode strict\" pour passer au mode de la co-édition stricte pour modifier le fichier sans interférence d'autres utilisateurs et envoyer vos modifications seulement après que vous les enregistrez. Vous pouvez basculer entre les modes de co-édition à l'aide de paramètres avancés d'éditeur.",
|
||||
"DE.Controllers.Main.titleLicenseExp": "Licence expirée",
|
||||
"DE.Controllers.Main.titleServerVersion": "L'éditeur est mis à jour",
|
||||
"DE.Controllers.Main.titleUpdateVersion": "Version a été modifiée",
|
||||
"DE.Controllers.Main.txtArt": "Votre texte ici",
|
||||
"DE.Controllers.Main.txtBasicShapes": "Formes de base",
|
||||
|
@ -726,7 +728,7 @@
|
|||
"DE.Views.DocumentHolder.spellcheckText": "Vérification orthographique",
|
||||
"DE.Views.DocumentHolder.splitCellsText": "Fractionner la cellule...",
|
||||
"DE.Views.DocumentHolder.splitCellTitleText": "Fractionner la cellule",
|
||||
"DE.Views.DocumentHolder.styleText": "Formatage de style",
|
||||
"DE.Views.DocumentHolder.styleText": "En tant que style",
|
||||
"DE.Views.DocumentHolder.tableText": "Tableau",
|
||||
"DE.Views.DocumentHolder.textAlign": "Aligner",
|
||||
"DE.Views.DocumentHolder.textArrange": "Organiser",
|
||||
|
@ -829,7 +831,7 @@
|
|||
"DE.Views.DocumentHolder.txtTopAndBottom": "Haut et bas",
|
||||
"DE.Views.DocumentHolder.txtUnderbar": "Barre en dessous d'un texte",
|
||||
"DE.Views.DocumentHolder.txtUngroup": "Dissocier",
|
||||
"DE.Views.DocumentHolder.updateStyleText": "Mise à jour %1 de style",
|
||||
"DE.Views.DocumentHolder.updateStyleText": "Mettre à jour le style %1 ",
|
||||
"DE.Views.DocumentHolder.vertAlignText": "Alignement vertical",
|
||||
"DE.Views.DropcapSettingsAdvanced.cancelButtonText": "Annuler",
|
||||
"DE.Views.DropcapSettingsAdvanced.okButtonText": "OK",
|
||||
|
@ -840,7 +842,7 @@
|
|||
"DE.Views.DropcapSettingsAdvanced.textAtLeast": "Au moins ",
|
||||
"DE.Views.DropcapSettingsAdvanced.textAuto": "Auto",
|
||||
"DE.Views.DropcapSettingsAdvanced.textBackColor": "Couleur d'arrière-plan",
|
||||
"DE.Views.DropcapSettingsAdvanced.textBorderColor": "Couleur de la bordure",
|
||||
"DE.Views.DropcapSettingsAdvanced.textBorderColor": "Couleur",
|
||||
"DE.Views.DropcapSettingsAdvanced.textBorderDesc": "Cliquez sur le diagramme ou utilisez les boutons pour sélectionner les bordures",
|
||||
"DE.Views.DropcapSettingsAdvanced.textBorderWidth": "Taille de bordure",
|
||||
"DE.Views.DropcapSettingsAdvanced.textBottom": "En bas",
|
||||
|
@ -1188,15 +1190,15 @@
|
|||
"DE.Views.ParagraphSettingsAdvanced.strStrike": "Biffés",
|
||||
"DE.Views.ParagraphSettingsAdvanced.strSubscript": "Indice",
|
||||
"DE.Views.ParagraphSettingsAdvanced.strSuperscript": "Exposant",
|
||||
"DE.Views.ParagraphSettingsAdvanced.strTabs": "Onglet",
|
||||
"DE.Views.ParagraphSettingsAdvanced.strTabs": "Tabulation",
|
||||
"DE.Views.ParagraphSettingsAdvanced.textAlign": "Alignement",
|
||||
"DE.Views.ParagraphSettingsAdvanced.textBackColor": "Couleur d'arrière-plan",
|
||||
"DE.Views.ParagraphSettingsAdvanced.textBorderColor": "Couleur de la bordure",
|
||||
"DE.Views.ParagraphSettingsAdvanced.textBorderColor": "Couleur",
|
||||
"DE.Views.ParagraphSettingsAdvanced.textBorderDesc": "Cliquez sur le diagramme ou utilisez les boutons pour sélectionner les bordures et appliquez le style choisi",
|
||||
"DE.Views.ParagraphSettingsAdvanced.textBorderWidth": "Taille de bordure",
|
||||
"DE.Views.ParagraphSettingsAdvanced.textBottom": "En bas",
|
||||
"DE.Views.ParagraphSettingsAdvanced.textCharacterSpacing": "Espacement des caractères",
|
||||
"DE.Views.ParagraphSettingsAdvanced.textDefault": "Onglet par défaut",
|
||||
"DE.Views.ParagraphSettingsAdvanced.textDefault": "Par défaut",
|
||||
"DE.Views.ParagraphSettingsAdvanced.textEffects": "Effets",
|
||||
"DE.Views.ParagraphSettingsAdvanced.textLeft": "A gauche",
|
||||
"DE.Views.ParagraphSettingsAdvanced.textNewColor": "Couleur personnalisée",
|
||||
|
@ -1208,7 +1210,7 @@
|
|||
"DE.Views.ParagraphSettingsAdvanced.textSpacing": "Espacement",
|
||||
"DE.Views.ParagraphSettingsAdvanced.textTabCenter": "Centre",
|
||||
"DE.Views.ParagraphSettingsAdvanced.textTabLeft": "A gauche",
|
||||
"DE.Views.ParagraphSettingsAdvanced.textTabPosition": "Position d'onglet",
|
||||
"DE.Views.ParagraphSettingsAdvanced.textTabPosition": "Position",
|
||||
"DE.Views.ParagraphSettingsAdvanced.textTabRight": "A droite",
|
||||
"DE.Views.ParagraphSettingsAdvanced.textTitle": "Paragraphe - Paramètres avancés",
|
||||
"DE.Views.ParagraphSettingsAdvanced.textTop": "En haut",
|
||||
|
@ -1303,7 +1305,7 @@
|
|||
"DE.Views.Statusbar.txAccessRights": "Changer les droits d'accès",
|
||||
"DE.Views.Statusbar.txtPageNumInvalid": "Numéro de page non valide",
|
||||
"DE.Views.StyleTitleDialog.textHeader": "Créer un nouveau style",
|
||||
"DE.Views.StyleTitleDialog.textNextStyle": "Style de paragraphe suivant",
|
||||
"DE.Views.StyleTitleDialog.textNextStyle": "Style du nouveau paragraphe",
|
||||
"DE.Views.StyleTitleDialog.textTitle": "Titre",
|
||||
"DE.Views.StyleTitleDialog.txtEmpty": "Ce champ est obligatoire",
|
||||
"DE.Views.StyleTitleDialog.txtNotEmpty": "Le champ ne doit pas être vide",
|
||||
|
@ -1367,7 +1369,7 @@
|
|||
"DE.Views.TableSettingsAdvanced.textAutofit": "Redimensionner automatiquement pour ajuster au contenu",
|
||||
"DE.Views.TableSettingsAdvanced.textBackColor": "Fond de la cellule",
|
||||
"DE.Views.TableSettingsAdvanced.textBelow": "en dessous",
|
||||
"DE.Views.TableSettingsAdvanced.textBorderColor": "Couleur de la bordure",
|
||||
"DE.Views.TableSettingsAdvanced.textBorderColor": "Couleur",
|
||||
"DE.Views.TableSettingsAdvanced.textBorderDesc": "Cliquez sur le diagramme ou utilisez les boutons pour sélectionner bordures et appliquez le style choisi",
|
||||
"DE.Views.TableSettingsAdvanced.textBordersBackgroung": "Bordures et arrière-plan",
|
||||
"DE.Views.TableSettingsAdvanced.textBorderWidth": "Taille de bordure",
|
||||
|
@ -1515,10 +1517,10 @@
|
|||
"DE.Views.Toolbar.textStrikeout": "Barré",
|
||||
"DE.Views.Toolbar.textStyleMenuDelete": "Supprimer le style",
|
||||
"DE.Views.Toolbar.textStyleMenuDeleteAll": "Supprimer tous les styles personnalisés",
|
||||
"DE.Views.Toolbar.textStyleMenuNew": "Nouveau style de la sélection",
|
||||
"DE.Views.Toolbar.textStyleMenuRestore": "Rétablir les options par défaut",
|
||||
"DE.Views.Toolbar.textStyleMenuRestoreAll": "Restaurer tous styles par défaut",
|
||||
"DE.Views.Toolbar.textStyleMenuUpdate": "Mise à jour de la sélection",
|
||||
"DE.Views.Toolbar.textStyleMenuNew": "Nouveau style à partir du fragment sélectionné",
|
||||
"DE.Views.Toolbar.textStyleMenuRestore": "Restaurer les paramètres par défaut",
|
||||
"DE.Views.Toolbar.textStyleMenuRestoreAll": "Restaurer tous les styles par défaut",
|
||||
"DE.Views.Toolbar.textStyleMenuUpdate": "Mettre à jour selon la sélection",
|
||||
"DE.Views.Toolbar.textSubscript": "Indice",
|
||||
"DE.Views.Toolbar.textSuperscript": "Exposant",
|
||||
"DE.Views.Toolbar.textTitleError": "Erreur",
|
||||
|
|
|
@ -217,6 +217,7 @@
|
|||
"DE.Controllers.Main.errorMailMergeLoadFile": "Сбой при загрузке",
|
||||
"DE.Controllers.Main.errorMailMergeSaveFile": "Не удалось выполнить слияние.",
|
||||
"DE.Controllers.Main.errorProcessSaveResult": "Сбой при сохранении.",
|
||||
"DE.Controllers.Main.errorServerVersion": "Версия редактора была обновлена. Страница будет перезагружена, чтобы применить изменения.",
|
||||
"DE.Controllers.Main.errorSessionAbsolute": "Время сеанса редактирования документа истекло. Пожалуйста, обновите страницу.",
|
||||
"DE.Controllers.Main.errorSessionIdle": "Документ долгое время не редактировался. Пожалуйста, обновите страницу.",
|
||||
"DE.Controllers.Main.errorSessionToken": "Подключение к серверу было прервано. Пожалуйста, обновите страницу.",
|
||||
|
@ -268,6 +269,7 @@
|
|||
"DE.Controllers.Main.textStrict": "Строгий режим",
|
||||
"DE.Controllers.Main.textTryUndoRedo": "Функции отмены и повтора действий отключены в Быстром режиме совместного редактирования.<br>Нажмите на кнопку 'Строгий режим' для переключения в Строгий режим совместного редактирования, чтобы редактировать файл без вмешательства других пользователей и отправлять изменения только после того, как вы их сохраните. Переключаться между режимами совместного редактирования можно с помощью Дополнительных параметров редактора.",
|
||||
"DE.Controllers.Main.titleLicenseExp": "Истек срок действия лицензии",
|
||||
"DE.Controllers.Main.titleServerVersion": "Редактор обновлен",
|
||||
"DE.Controllers.Main.titleUpdateVersion": "Версия изменилась",
|
||||
"DE.Controllers.Main.txtArt": "Введите ваш текст",
|
||||
"DE.Controllers.Main.txtBasicShapes": "Основные фигуры",
|
||||
|
@ -301,7 +303,7 @@
|
|||
"DE.Controllers.Statusbar.textHasChanges": "Отслежены новые изменения",
|
||||
"DE.Controllers.Statusbar.textTrackChanges": "Документ открыт при включенном режиме отслеживания изменений",
|
||||
"DE.Controllers.Statusbar.zoomText": "Масштаб {0}%",
|
||||
"DE.Controllers.Toolbar.confirmAddFontName": "Шрифт, который вы собираетесь сохранить, недоступен на этом устройстве.<br>Стиль текста будет отображаться с использованием одного из системных шрифтов; сохраненный шрифт будет использоваться, когда он будет доступен.<br>Вы хотите продолжить?",
|
||||
"DE.Controllers.Toolbar.confirmAddFontName": "Шрифт, который вы хотите сохранить, недоступен на этом устройстве.<br>Стиль текста будет отображаться с помощью одного из системных шрифтов. Сохраненный шрифт будет использоваться, когда он станет доступен.<br>Вы хотите продолжить?",
|
||||
"DE.Controllers.Toolbar.confirmDeleteFootnotes": "Вы хотите удалить все сноски?",
|
||||
"DE.Controllers.Toolbar.notcriticalErrorTitle": "Внимание",
|
||||
"DE.Controllers.Toolbar.textAccent": "Диакритические знаки",
|
||||
|
|
|
@ -62,3 +62,19 @@ button.notify .btn-menu-comments {background-position: -0*@toolbar-icon-size -60
|
|||
background-color: @gray-light;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
#developer-hint {
|
||||
position: absolute;
|
||||
left: 0;
|
||||
padding: 12px 0;
|
||||
background-color: #ffb400;
|
||||
color: #6e4e00 !important;
|
||||
white-space: nowrap;
|
||||
line-height: 20px;
|
||||
writing-mode: vertical-rl;
|
||||
-moz-transform: rotate(180deg);
|
||||
-ms-transform: rotate(180deg);
|
||||
-webkit-transform: rotate(180deg);
|
||||
-o-transform: rotate(180deg);
|
||||
transform: rotate(180deg);
|
||||
}
|
|
@ -361,6 +361,7 @@
|
|||
color: #ffffff;
|
||||
font: 11px arial;
|
||||
white-space: nowrap;
|
||||
letter-spacing: 1px;
|
||||
}
|
||||
|
||||
#id-toolbar-menu-auto-fontcolor > a.selected {
|
||||
|
|
|
@ -479,8 +479,7 @@ define([
|
|||
|
||||
me.updateWindowTitle(true);
|
||||
|
||||
value = Common.localStorage.getItem("de-settings-inputmode");
|
||||
me.api.SetTextBoxInputMode(value!==null && parseInt(value) == 1);
|
||||
me.api.SetTextBoxInputMode(Common.localStorage.getBool("de-settings-inputmode"));
|
||||
|
||||
/** coauthoring begin **/
|
||||
if (me.appOptions.isEdit && me.appOptions.canLicense && !me.appOptions.isOffline && me.appOptions.canCoAuthoring) {
|
||||
|
|
|
@ -6,8 +6,6 @@ var sdk_dev_scrpipts = [
|
|||
"../../../../sdkjs/common/docscoapicommon.js",
|
||||
"../../../../sdkjs/common/docscoapi.js",
|
||||
"../../../../sdkjs/common/spellcheckapi.js",
|
||||
"../../../../sdkjs/common/spellCheckLanguage.js",
|
||||
"../../../../sdkjs/common/spellCheckLanguagesAll.js",
|
||||
"../../../../sdkjs/common/apiCommon.js",
|
||||
"../../../../sdkjs/common/SerializeCommonWordExcel.js",
|
||||
"../../../../sdkjs/common/editorscommon.js",
|
||||
|
|
Loading…
Reference in a new issue