bug fix
This commit is contained in:
@@ -167,7 +167,7 @@
|
||||
this.editorConfig = data.config;
|
||||
},
|
||||
setMode: function (permissions) {
|
||||
this.permissions = permissions; ! (this.permissions.canCoAuthoring && this.permissions.isEdit) ? Common.util.Shortcuts.suspendEvents(this.hkComments) : Common.util.Shortcuts.resumeEvents(this.hkComments);
|
||||
this.permissions = permissions; ! (this.permissions.canCoAuthoring && this.permissions.isEdit && this.permissions.canComments) ? Common.util.Shortcuts.suspendEvents(this.hkComments) : Common.util.Shortcuts.resumeEvents(this.hkComments);
|
||||
},
|
||||
setApi: function (api) {
|
||||
this.api = api;
|
||||
@@ -187,22 +187,26 @@
|
||||
onCopyPaste: function (item) {
|
||||
var me = this;
|
||||
if (me.api) {
|
||||
var value = window.localStorage.getItem("sse-hide-copywarning");
|
||||
if (! (value && parseInt(value) == 1) && me.show_copywarning) {
|
||||
(new Common.Views.CopyWarningDialog({
|
||||
handler: function (dontshow) {
|
||||
(item.value == "cut") ? me.api.asc_Cut() : ((item.value == "copy") ? me.api.asc_Copy() : me.api.asc_Paste());
|
||||
if (dontshow) {
|
||||
window.localStorage.setItem("sse-hide-copywarning", 1);
|
||||
}
|
||||
Common.NotificationCenter.trigger("edit:complete", me.documentHolder);
|
||||
}
|
||||
})).show();
|
||||
} else {
|
||||
if (typeof window["AscDesktopEditor"] === "object") {
|
||||
(item.value == "cut") ? me.api.asc_Cut() : ((item.value == "copy") ? me.api.asc_Copy() : me.api.asc_Paste());
|
||||
Common.NotificationCenter.trigger("edit:complete", me.documentHolder);
|
||||
} else {
|
||||
var value = window.localStorage.getItem("sse-hide-copywarning");
|
||||
if (! (value && parseInt(value) == 1) && me.show_copywarning) {
|
||||
(new Common.Views.CopyWarningDialog({
|
||||
handler: function (dontshow) {
|
||||
(item.value == "cut") ? me.api.asc_Cut() : ((item.value == "copy") ? me.api.asc_Copy() : me.api.asc_Paste());
|
||||
if (dontshow) {
|
||||
window.localStorage.setItem("sse-hide-copywarning", 1);
|
||||
}
|
||||
Common.NotificationCenter.trigger("edit:complete", me.documentHolder);
|
||||
}
|
||||
})).show();
|
||||
} else {
|
||||
(item.value == "cut") ? me.api.asc_Cut() : ((item.value == "copy") ? me.api.asc_Copy() : me.api.asc_Paste());
|
||||
Common.NotificationCenter.trigger("edit:complete", me.documentHolder);
|
||||
}
|
||||
Common.component.Analytics.trackEvent("ToolBar", "Copy Warning");
|
||||
}
|
||||
Common.component.Analytics.trackEvent("ToolBar", "Copy Warning");
|
||||
}
|
||||
},
|
||||
onInsertEntire: function (item) {
|
||||
@@ -342,7 +346,7 @@
|
||||
}
|
||||
},
|
||||
onAddComment: function (item) {
|
||||
if (this.api && this.permissions.canCoAuthoring && this.permissions.isEdit) {
|
||||
if (this.api && this.permissions.canCoAuthoring && this.permissions.isEdit && this.permissions.canComments) {
|
||||
this.api.asc_enableKeyEvents(false);
|
||||
var controller = SSE.getController("Common.Controllers.Comments"),
|
||||
cellinfo = this.api.asc_getCellInfo();
|
||||
@@ -910,8 +914,8 @@
|
||||
documentHolder.pmiColumnWidth.setVisible(iscolmenu || isallmenu);
|
||||
documentHolder.pmiEntireHide.setVisible(iscolmenu || isrowmenu);
|
||||
documentHolder.pmiEntireShow.setVisible(iscolmenu || isrowmenu);
|
||||
documentHolder.ssMenu.items[10].setVisible(iscellmenu && !iscelledit && this.permissions.canCoAuthoring);
|
||||
documentHolder.pmiAddComment.setVisible(iscellmenu && !iscelledit && this.permissions.canCoAuthoring);
|
||||
documentHolder.ssMenu.items[10].setVisible(iscellmenu && !iscelledit && this.permissions.canCoAuthoring && this.permissions.canComments);
|
||||
documentHolder.pmiAddComment.setVisible(iscellmenu && !iscelledit && this.permissions.canCoAuthoring && this.permissions.canComments);
|
||||
documentHolder.pmiCellMenuSeparator.setVisible(iscellmenu || isrowmenu || iscolmenu || isallmenu || insfunc);
|
||||
documentHolder.pmiEntireHide.isrowmenu = isrowmenu;
|
||||
documentHolder.pmiEntireShow.isrowmenu = isrowmenu;
|
||||
|
||||
@@ -103,7 +103,7 @@
|
||||
this.api.asc_registerCallback("asc_onRenameCellTextEnd", _.bind(this.onRenameText, this));
|
||||
this.api.asc_registerCallback("asc_onСoAuthoringDisconnect", _.bind(this.onApiServerDisconnect, this));
|
||||
Common.NotificationCenter.on("api:disconnect", _.bind(this.onApiServerDisconnect, this));
|
||||
if (this.mode.canCoAuthoring) {
|
||||
if (this.mode.canCoAuthoring && this.mode.canChat) {
|
||||
this.api.asc_registerCallback("asc_onCoAuthoringChatReceiveMessage", _.bind(this.onApiChatMessage, this));
|
||||
}
|
||||
if (!this.mode.isEditDiagram) {
|
||||
@@ -120,10 +120,14 @@
|
||||
},
|
||||
createDelayedElements: function () {
|
||||
if (this.mode.canCoAuthoring) {
|
||||
this.leftMenu.btnComments[this.mode.isEdit ? "show" : "hide"]();
|
||||
this.leftMenu.btnChat.show();
|
||||
this.leftMenu.setOptionsPanel("chat", this.getApplication().getController("Common.Controllers.Chat").getView("Common.Views.Chat"));
|
||||
this.leftMenu.setOptionsPanel("comment", this.getApplication().getController("Common.Controllers.Comments").getView("Common.Views.Comments"));
|
||||
this.leftMenu.btnComments[this.mode.isEdit && this.mode.canComments ? "show" : "hide"]();
|
||||
if (this.mode.canComments) {
|
||||
this.leftMenu.setOptionsPanel("comment", this.getApplication().getController("Common.Controllers.Comments").getView("Common.Views.Comments"));
|
||||
}
|
||||
this.leftMenu.btnChat[this.mode.canChat ? "show" : "hide"]();
|
||||
if (this.mode.canChat) {
|
||||
this.leftMenu.setOptionsPanel("chat", this.getApplication().getController("Common.Controllers.Chat").getView("Common.Views.Chat"));
|
||||
}
|
||||
} else {
|
||||
this.leftMenu.btnChat.hide();
|
||||
this.leftMenu.btnComments.hide();
|
||||
@@ -236,7 +240,7 @@
|
||||
}
|
||||
},
|
||||
clickStatusbarUsers: function () {
|
||||
if (this.mode.canCoAuthoring) {
|
||||
if (this.mode.canCoAuthoring && this.mode.canChat) {
|
||||
if (this.leftMenu.btnChat.pressed) {
|
||||
this.leftMenu.close();
|
||||
} else {
|
||||
@@ -523,13 +527,13 @@
|
||||
}
|
||||
break;
|
||||
case "chat":
|
||||
if (this.mode.canCoAuthoring) {
|
||||
if (this.mode.canCoAuthoring && this.mode.canChat) {
|
||||
Common.UI.Menu.Manager.hideAll();
|
||||
this.leftMenu.showMenu("chat");
|
||||
}
|
||||
return false;
|
||||
case "comments":
|
||||
if (this.mode.canCoAuthoring && this.mode.isEdit) {
|
||||
if (this.mode.canCoAuthoring && this.mode.isEdit && this.mode.canComments) {
|
||||
Common.UI.Menu.Manager.hideAll();
|
||||
this.leftMenu.showMenu("comments");
|
||||
this.getApplication().getController("Common.Controllers.Comments").focusOnInput();
|
||||
|
||||
@@ -34,6 +34,11 @@
|
||||
var InitApplication = -254;
|
||||
var ApplyEditRights = -255;
|
||||
var LoadingDocument = -256;
|
||||
var mapCustomizationElements = {
|
||||
about: "button#left-btn-about",
|
||||
feedback: "button#left-btn-support",
|
||||
goback: "#fm-btn-back > a, #header-back > div"
|
||||
};
|
||||
return {
|
||||
models: [],
|
||||
collections: ["ShapeGroups", "TableTemplates"],
|
||||
@@ -159,8 +164,9 @@
|
||||
this.appOptions.user = this.editorConfig.user;
|
||||
this.appOptions.canBack = this.editorConfig.nativeApp !== true && this.editorConfig.canBackToFolder === true;
|
||||
this.appOptions.nativeApp = this.editorConfig.nativeApp === true;
|
||||
this.appOptions.canCreateNew = !_.isEmpty(this.editorConfig.createUrl);
|
||||
this.appOptions.canOpenRecent = this.editorConfig.nativeApp !== true && this.editorConfig.recent !== undefined;
|
||||
this.appOptions.isDesktopApp = this.editorConfig.targetApp == "desktop";
|
||||
this.appOptions.canCreateNew = !_.isEmpty(this.editorConfig.createUrl) && !this.appOptions.isDesktopApp;
|
||||
this.appOptions.canOpenRecent = this.editorConfig.nativeApp !== true && this.editorConfig.recent !== undefined && !this.appOptions.isDesktopApp;
|
||||
this.appOptions.templates = this.editorConfig.templates;
|
||||
this.appOptions.recent = this.editorConfig.recent;
|
||||
this.appOptions.createUrl = this.editorConfig.createUrl;
|
||||
@@ -169,6 +175,7 @@
|
||||
this.appOptions.canAnalytics = false;
|
||||
this.appOptions.sharingSettingsUrl = this.editorConfig.sharingSettingsUrl;
|
||||
this.appOptions.isEditDiagram = this.editorConfig.mode == "editdiagram";
|
||||
this.appOptions.customization = this.editorConfig.customization;
|
||||
this.headerView = this.getApplication().getController("Viewport").getView("Common.Views.Header");
|
||||
this.headerView.setCanBack(this.editorConfig.canBackToFolder === true);
|
||||
if (this.editorConfig.lang) {
|
||||
@@ -191,7 +198,6 @@
|
||||
docInfo.VKey = data.doc.vkey;
|
||||
docInfo.Origin = data.doc.origin;
|
||||
docInfo.CallbackUrl = this.editorConfig.callbackUrl;
|
||||
docInfo.OfflineApp = this.editorConfig.nativeApp === true;
|
||||
this.headerView.setDocumentCaption(data.doc.title);
|
||||
}
|
||||
if (this.appOptions.isEditDiagram) {
|
||||
@@ -214,7 +220,7 @@
|
||||
onProcessRightsChange: function (data) {
|
||||
if (data && data.enabled === false) {
|
||||
this.api.asc_coAuthoringDisconnect();
|
||||
this.getApplication().getController("LeftMenu").leftMenu.getMenu("file").panels["info"].onLostEditRights();
|
||||
this.getApplication().getController("LeftMenu").leftMenu.getMenu("file").panels["rights"].onLostEditRights();
|
||||
Common.UI.warning({
|
||||
title: this.notcriticalErrorTitle,
|
||||
msg: _.isEmpty(data.message) ? this.warnProcessRightsChange : data.message
|
||||
@@ -417,7 +423,7 @@
|
||||
leftmenuController.setMode(me.appOptions).createDelayedElements().setApi(me.api);
|
||||
leftMenuView.disableMenu("all", false);
|
||||
if (!me.appOptions.isEditDiagram && me.appOptions.canBranding) {
|
||||
me.getApplication().getController("LeftMenu").leftMenu.getMenu("about").setLicInfo(me.editorConfig.branding);
|
||||
me.getApplication().getController("LeftMenu").leftMenu.getMenu("about").setLicInfo(me.editorConfig.customization);
|
||||
}
|
||||
documentHolderController.setApi(me.api).loadConfig({
|
||||
config: me.editorConfig
|
||||
@@ -471,15 +477,18 @@
|
||||
}
|
||||
me.api.asc_setAutoSaveGap(value);
|
||||
if (me.appOptions.canAnalytics) {
|
||||
Common.Gateway.on("applyeditrights", _.bind(me.onApplyEditRights, me));
|
||||
Common.component.Analytics.initialize("UA-12442749-13", "Spreadsheet Editor");
|
||||
}
|
||||
Common.Gateway.on("applyeditrights", _.bind(me.onApplyEditRights, me));
|
||||
Common.Gateway.on("processsaveresult", _.bind(me.onProcessSaveResult, me));
|
||||
Common.Gateway.on("processrightschange", _.bind(me.onProcessRightsChange, me));
|
||||
Common.Gateway.on("processmouse", _.bind(me.onProcessMouse, me));
|
||||
$(document).on("contextmenu", _.bind(me.onContextMenu, me));
|
||||
Common.Utils.isIE9m && tips.push(me.warnBrowserIE9); ! Common.Utils.isGecko && !me.appOptions.isEditDiagram && !me.appOptions.nativeApp && (Math.abs(me.getBrowseZoomLevel() - 1) > 0.1) && tips.push(Common.Utils.String.platformKey(me.warnBrowserZoom, "{0}"));
|
||||
if (tips.length) {
|
||||
me.showTips(tips);
|
||||
if ( !! window["AscDesktopEditor"]) {
|
||||
Common.Utils.isIE9m && tips.push(me.warnBrowserIE9); ! Common.Utils.isGecko && !me.appOptions.isEditDiagram && !me.appOptions.nativeApp && (Math.abs(me.getBrowseZoomLevel() - 1) > 0.1) && tips.push(Common.Utils.String.platformKey(me.warnBrowserZoom, "{0}"));
|
||||
if (tips.length) {
|
||||
me.showTips(tips);
|
||||
}
|
||||
}
|
||||
},
|
||||
onOpenDocument: function (progress) {
|
||||
@@ -494,10 +503,13 @@
|
||||
this.permissions.download !== false && (this.permissions.download = params.asc_getCanDownload());
|
||||
this.appOptions.canAutosave = this.editorConfig.canAutosave !== false && params.asc_getIsAutosaveEnable();
|
||||
this.appOptions.canAnalytics = params.asc_getIsAnalyticsEnable();
|
||||
this.appOptions.canCoAuthoring = params.asc_getCanCoAuthoring();
|
||||
this.appOptions.canBranding = params.asc_getCanBranding() && (typeof(this.editorConfig.branding) == "object");
|
||||
this.appOptions.canCoAuthoring = true;
|
||||
this.appOptions.canLicense = params.asc_getCanLicense ? params.asc_getCanLicense() : false;
|
||||
this.appOptions.canComments = this.appOptions.canLicense && !((typeof(this.editorConfig.customization) == "object") && this.editorConfig.customization.comments === false);
|
||||
this.appOptions.canChat = this.appOptions.canLicense && !((typeof(this.editorConfig.customization) == "object") && this.editorConfig.customization.chat === false);
|
||||
this.appOptions.canBranding = params.asc_getCanBranding() && (typeof(this.editorConfig.customization) == "object");
|
||||
if (this.appOptions.canBranding) {
|
||||
this.headerView.setBranding(this.editorConfig.branding);
|
||||
this.headerView.setBranding(this.editorConfig.customization);
|
||||
}
|
||||
}
|
||||
this.appOptions.canEdit = this.permissions.edit === true;
|
||||
@@ -521,7 +533,7 @@
|
||||
statusbarView = app.getController("Statusbar").getView("Statusbar");
|
||||
if (this.headerView) {
|
||||
this.headerView.setHeaderCaption(this.appOptions.isEdit ? "Spreadsheet Editor" : "Spreadsheet Viewer");
|
||||
this.headerView.setVisible(!this.appOptions.nativeApp && !value && !this.appOptions.isEditDiagram);
|
||||
this.headerView.setVisible(!this.appOptions.nativeApp && !value && !this.appOptions.isDesktopApp && !this.appOptions.isEditDiagram);
|
||||
}
|
||||
viewport && viewport.setMode(this.appOptions, true);
|
||||
statusbarView && statusbarView.setMode(this.appOptions);
|
||||
@@ -870,6 +882,10 @@
|
||||
}
|
||||
},
|
||||
hidePreloader: function () {
|
||||
if ( !! this.appOptions.customization && !this.appOptions.customization.done) {
|
||||
this.appOptions.customization.done = true;
|
||||
Common.Utils.applyCustomization(this.appOptions.customization, mapCustomizationElements);
|
||||
}
|
||||
this.stackLongActions.pop({
|
||||
id: InitApplication,
|
||||
type: c_oAscAsyncActionType.BlockInteraction
|
||||
|
||||
@@ -287,20 +287,25 @@
|
||||
onCopyPaste: function (copy, e) {
|
||||
var me = this;
|
||||
if (me.api) {
|
||||
var value = window.localStorage.getItem("sse-hide-copywarning");
|
||||
if (! (value && parseInt(value) == 1) && this._state.show_copywarning) {
|
||||
(new Common.Views.CopyWarningDialog({
|
||||
handler: function (dontshow) {
|
||||
copy ? me.api.asc_Copy() : me.api.asc_Paste();
|
||||
if (dontshow) {
|
||||
window.localStorage.setItem("sse-hide-copywarning", 1);
|
||||
}
|
||||
Common.NotificationCenter.trigger("edit:complete", me.toolbar);
|
||||
}
|
||||
})).show();
|
||||
} else {
|
||||
if (typeof window["AscDesktopEditor"] === "object") {
|
||||
copy ? me.api.asc_Copy() : me.api.asc_Paste();
|
||||
Common.NotificationCenter.trigger("edit:complete", me.toolbar);
|
||||
} else {
|
||||
var value = window.localStorage.getItem("sse-hide-copywarning");
|
||||
if (! (value && parseInt(value) == 1) && this._state.show_copywarning) {
|
||||
(new Common.Views.CopyWarningDialog({
|
||||
handler: function (dontshow) {
|
||||
copy ? me.api.asc_Copy() : me.api.asc_Paste();
|
||||
if (dontshow) {
|
||||
window.localStorage.setItem("sse-hide-copywarning", 1);
|
||||
}
|
||||
Common.NotificationCenter.trigger("edit:complete", me.toolbar);
|
||||
}
|
||||
})).show();
|
||||
} else {
|
||||
copy ? me.api.asc_Copy() : me.api.asc_Paste();
|
||||
Common.NotificationCenter.trigger("edit:complete", me.toolbar);
|
||||
}
|
||||
}
|
||||
Common.component.Analytics.trackEvent("ToolBar", "Copy Warning");
|
||||
} else {
|
||||
|
||||
@@ -11,6 +11,7 @@
|
||||
<li id="fm-btn-create" class="fm-btn" />
|
||||
<li class="devider" />
|
||||
<li id="fm-btn-info" class="fm-btn" />
|
||||
<li id="fm-btn-rights" class="fm-btn" />
|
||||
<li class="devider" class="fm-btn" />
|
||||
<li id="fm-btn-settings" class="fm-btn" />
|
||||
<li class="devider" />
|
||||
@@ -23,6 +24,7 @@
|
||||
<div id="panel-recentfiles" class="content-box" />
|
||||
<div id="panel-createnew" class="content-box" />
|
||||
<div id="panel-info" class="content-box" />
|
||||
<div id="panel-rights" class="content-box" />
|
||||
<div id="panel-settings" class="content-box" />
|
||||
<div id="panel-help" class="content-box" />
|
||||
</div>
|
||||
@@ -102,6 +102,11 @@
|
||||
action: "info",
|
||||
caption: this.btnInfoCaption,
|
||||
canFocused: false
|
||||
}), new Common.UI.MenuItem({
|
||||
el: $("#fm-btn-rights", this.el),
|
||||
action: "rights",
|
||||
caption: this.btnRightsCaption,
|
||||
canFocused: false
|
||||
}), new Common.UI.MenuItem({
|
||||
el: $("#fm-btn-settings", this.el),
|
||||
action: "opts",
|
||||
@@ -131,6 +136,9 @@
|
||||
"info": (new SSE.Views.FileMenuPanels.DocumentInfo({
|
||||
menu: me
|
||||
})).render(),
|
||||
"rights": (new SSE.Views.FileMenuPanels.DocumentRights({
|
||||
menu: me
|
||||
})).render(),
|
||||
"help": (new SSE.Views.FileMenuPanels.Help({
|
||||
menu: me
|
||||
})).render()
|
||||
@@ -161,18 +169,18 @@
|
||||
this.api.asc_enableKeyEvents(true);
|
||||
},
|
||||
applyMode: function () {
|
||||
this.items[0][this.mode.canBack ? "show" : "hide"]();
|
||||
this.items[0].$el.find("+.devider")[this.mode.canBack ? "show" : "hide"]();
|
||||
this.items[5][this.mode.canOpenRecent ? "show" : "hide"]();
|
||||
this.items[6][this.mode.canCreateNew ? "show" : "hide"]();
|
||||
this.items[6].$el.find("+.devider")[this.mode.canCreateNew ? "show" : "hide"]();
|
||||
this.items[3][this.mode.canDownload ? "show" : "hide"]();
|
||||
this.items[1][this.mode.isEdit ? "show" : "hide"]();
|
||||
this.items[2][!this.mode.isEdit && this.mode.canEdit ? "show" : "hide"]();
|
||||
this.items[8][this.mode.isEdit ? "show" : "hide"]();
|
||||
this.items[8].$el.find("+.devider")[this.mode.isEdit ? "show" : "hide"]();
|
||||
this.items[8][(this.document && this.document.info && (this.document.info.sharingSettings && this.document.info.sharingSettings.length > 0 || this.mode.sharingSettingsUrl && this.mode.sharingSettingsUrl.length)) ? "show" : "hide"]();
|
||||
this.items[9][this.mode.isEdit ? "show" : "hide"]();
|
||||
this.items[9].$el.find("+.devider")[this.mode.isEdit ? "show" : "hide"]();
|
||||
this.panels["opts"].setMode(this.mode);
|
||||
this.panels["info"].setMode(this.mode).updateInfo(this.document);
|
||||
this.panels["rights"].setMode(this.mode).updateInfo(this.document);
|
||||
if (this.mode.canCreateNew) {
|
||||
if (this.mode.templates && this.mode.templates.length) {
|
||||
$("a", this.items[6].$el).text(this.btnCreateNewCaption + "...");
|
||||
@@ -230,6 +238,7 @@
|
||||
btnSaveCaption: "Save",
|
||||
btnDownloadCaption: "Download as...",
|
||||
btnInfoCaption: "Document Info...",
|
||||
btnRightsCaption: "Access Rights...",
|
||||
btnCreateNewCaption: "Create New",
|
||||
btnRecentFilesCaption: "Open Recent...",
|
||||
btnPrintCaption: "Print",
|
||||
|
||||
@@ -117,7 +117,7 @@
|
||||
panel: this.printSettings,
|
||||
iconCls: "mnu-print"
|
||||
}]),
|
||||
itemTemplate: _.template(['<div id="<%= id %>" class="settings-item-wrap">', '<div><span class="settings-icon <%= iconCls %>"/><span class="caption"><%= name %></span></div>', "</div>"].join(""))
|
||||
itemTemplate: _.template(['<div id="<%= id %>" class="settings-item-wrap">', '<div class="settings-icon <%= iconCls %>" style="display: inline-block;" >', "</div><%= name %>", "</div>"].join(""))
|
||||
});
|
||||
this.viewSettingsPicker.on("item:select", _.bind(function (dataview, itemview, record) {
|
||||
var panel = record.get("panel");
|
||||
@@ -594,8 +594,7 @@
|
||||
initialize: function (options) {
|
||||
Common.UI.BaseView.prototype.initialize.call(this, arguments);
|
||||
this.rendered = false;
|
||||
this.template = _.template(['<table class="main">', "<tr>", '<td class="left"><label>' + this.txtTitle + "</label></td>", '<td class="right"><label id="id-info-title">-</label></td>', "</tr>", '<tr class="author">', '<td class="left"><label>' + this.txtAuthor + "</label></td>", '<td class="right"><span class="userLink" id="id-info-author">-</span></td>', "</tr>", '<tr class="placement">', '<td class="left"><label>' + this.txtPlacement + "</label></td>", '<td class="right"><label id="id-info-placement">-</label></td>', "</tr>", '<tr class="date">', '<td class="left"><label>' + this.txtDate + "</label></td>", '<td class="right"><label id="id-info-date">-</label></td>', "</tr>", '<tr class="divider date"></tr>', '<tr class="rights">', '<td class="left" style="vertical-align: top;"><label>' + this.txtRights + "</label></td>", '<td class="right"><div id="id-info-rights"></div></td>', "</tr>", '<tr class="edit-rights">', '<td class="left"></td><td class="right"><button id="id-info-btn-edit" class="btn normal dlg-btn primary" style="margin-right: 10px;width: auto;">' + this.txtBtnAccessRights + "</button></td>", "</tr>", "</table>"].join(""));
|
||||
this.templateRights = _.template(["<table>", "<% _.each(users, function(item) { %>", "<tr>", '<td><span class="userLink"><%= Common.Utils.String.htmlEncode(item.user) %></span></td>', "<td><%= Common.Utils.String.htmlEncode(item.permissions) %></td>", "</tr>", "<% }); %>", "</table>"].join(""));
|
||||
this.template = _.template(['<table class="main">', "<tr>", '<td class="left"><label>' + this.txtTitle + "</label></td>", '<td class="right"><label id="id-info-title">-</label></td>', "</tr>", '<tr class="author">', '<td class="left"><label>' + this.txtAuthor + "</label></td>", '<td class="right"><span class="userLink" id="id-info-author">-</span></td>', "</tr>", '<tr class="placement">', '<td class="left"><label>' + this.txtPlacement + "</label></td>", '<td class="right"><label id="id-info-placement">-</label></td>', "</tr>", '<tr class="date">', '<td class="left"><label>' + this.txtDate + "</label></td>", '<td class="right"><label id="id-info-date">-</label></td>', "</tr>", '<tr class="divider date"></tr>', "</table>"].join(""));
|
||||
this.menu = options.menu;
|
||||
},
|
||||
render: function () {
|
||||
@@ -604,11 +603,6 @@
|
||||
this.lblPlacement = $("#id-info-placement");
|
||||
this.lblDate = $("#id-info-date");
|
||||
this.lblAuthor = $("#id-info-author");
|
||||
this.cntRights = $("#id-info-rights");
|
||||
this.btnEditRights = new Common.UI.Button({
|
||||
el: "#id-info-btn-edit"
|
||||
});
|
||||
this.btnEditRights.on("click", _.bind(this.changeAccessRights, this));
|
||||
this.rendered = true;
|
||||
this.updateInfo(this.doc);
|
||||
if (_.isUndefined(this.scroller)) {
|
||||
@@ -645,13 +639,6 @@
|
||||
this.lblPlacement.text(doc.info.folder);
|
||||
}
|
||||
this._ShowHideInfoItem("placement", doc.info.folder !== undefined && doc.info.folder !== null);
|
||||
if (doc.info.sharingSettings) {
|
||||
this.cntRights.html(this.templateRights({
|
||||
users: doc.info.sharingSettings
|
||||
}));
|
||||
}
|
||||
this._ShowHideInfoItem("rights", doc.info.sharingSettings !== undefined && doc.info.sharingSettings !== null && this._readonlyRights !== true);
|
||||
this._ShowHideInfoItem("edit-rights", !!this.sharingSettingsUrl && this.sharingSettingsUrl.length && this._readonlyRights !== true);
|
||||
} else {
|
||||
this._ShowHideDocInfo(false);
|
||||
}
|
||||
@@ -663,6 +650,71 @@
|
||||
this._ShowHideInfoItem("date", visible);
|
||||
this._ShowHideInfoItem("placement", visible);
|
||||
this._ShowHideInfoItem("author", visible);
|
||||
},
|
||||
setMode: function (mode) {
|
||||
return this;
|
||||
},
|
||||
txtTitle: "Document Title",
|
||||
txtAuthor: "Author",
|
||||
txtPlacement: "Placement",
|
||||
txtDate: "Creation Date"
|
||||
},
|
||||
SSE.Views.FileMenuPanels.DocumentInfo || {}));
|
||||
SSE.Views.FileMenuPanels.DocumentRights = Common.UI.BaseView.extend(_.extend({
|
||||
el: "#panel-rights",
|
||||
menu: undefined,
|
||||
initialize: function (options) {
|
||||
Common.UI.BaseView.prototype.initialize.call(this, arguments);
|
||||
this.rendered = false;
|
||||
this.template = _.template(['<table class="main">', '<tr class="rights">', '<td class="left" style="vertical-align: top;"><label>' + this.txtRights + "</label></td>", '<td class="right"><div id="id-info-rights"></div></td>', "</tr>", '<tr class="edit-rights">', '<td class="left"></td><td class="right"><button id="id-info-btn-edit" class="btn normal dlg-btn primary" style="margin-right: 10px;width: auto;">' + this.txtBtnAccessRights + "</button></td>", "</tr>", "</table>"].join(""));
|
||||
this.templateRights = _.template(["<table>", "<% _.each(users, function(item) { %>", "<tr>", '<td><span class="userLink"><%= Common.Utils.String.htmlEncode(item.user) %></span></td>', "<td><%= Common.Utils.String.htmlEncode(item.permissions) %></td>", "</tr>", "<% }); %>", "</table>"].join(""));
|
||||
this.menu = options.menu;
|
||||
},
|
||||
render: function () {
|
||||
$(this.el).html(this.template());
|
||||
this.cntRights = $("#id-info-rights");
|
||||
this.btnEditRights = new Common.UI.Button({
|
||||
el: "#id-info-btn-edit"
|
||||
});
|
||||
this.btnEditRights.on("click", _.bind(this.changeAccessRights, this));
|
||||
this.rendered = true;
|
||||
this.updateInfo(this.doc);
|
||||
if (_.isUndefined(this.scroller)) {
|
||||
this.scroller = new Common.UI.Scroller({
|
||||
el: $(this.el),
|
||||
suppressScrollX: true
|
||||
});
|
||||
}
|
||||
return this;
|
||||
},
|
||||
show: function () {
|
||||
Common.UI.BaseView.prototype.show.call(this, arguments);
|
||||
},
|
||||
hide: function () {
|
||||
Common.UI.BaseView.prototype.hide.call(this, arguments);
|
||||
},
|
||||
updateInfo: function (doc) {
|
||||
this.doc = doc;
|
||||
if (!this.rendered) {
|
||||
return;
|
||||
}
|
||||
doc = doc || {};
|
||||
if (doc.info) {
|
||||
if (doc.info.sharingSettings) {
|
||||
this.cntRights.html(this.templateRights({
|
||||
users: doc.info.sharingSettings
|
||||
}));
|
||||
}
|
||||
this._ShowHideInfoItem("rights", doc.info.sharingSettings !== undefined && doc.info.sharingSettings !== null && doc.info.sharingSettings.length > 0);
|
||||
this._ShowHideInfoItem("edit-rights", !!this.sharingSettingsUrl && this.sharingSettingsUrl.length && this._readonlyRights !== true);
|
||||
} else {
|
||||
this._ShowHideDocInfo(false);
|
||||
}
|
||||
},
|
||||
_ShowHideInfoItem: function (cls, visible) {
|
||||
$("tr." + cls, this.el)[visible ? "show" : "hide"]();
|
||||
},
|
||||
_ShowHideDocInfo: function (visible) {
|
||||
this._ShowHideInfoItem("rights", visible);
|
||||
this._ShowHideInfoItem("edit-rights", visible);
|
||||
},
|
||||
@@ -671,34 +723,35 @@
|
||||
return this;
|
||||
},
|
||||
changeAccessRights: function (btn, event, opts) {
|
||||
if (this._docAccessDlg) {
|
||||
return;
|
||||
}
|
||||
var me = this;
|
||||
var win = new Common.Views.DocumentAccessDialog({
|
||||
me._docAccessDlg = new Common.Views.DocumentAccessDialog({
|
||||
settingsurl: this.sharingSettingsUrl
|
||||
});
|
||||
win.on("accessrights", function (obj, rights) {
|
||||
me._docAccessDlg.on("accessrights", function (obj, rights) {
|
||||
me.doc.info.sharingSettings = rights;
|
||||
me._ShowHideInfoItem("rights", me.doc.info.sharingSettings !== undefined && me.doc.info.sharingSettings !== null && me.doc.info.sharingSettings.length > 0);
|
||||
me.cntRights.html(me.templateRights({
|
||||
users: me.doc.info.sharingSettings
|
||||
}));
|
||||
}).on("close", function (obj) {
|
||||
me._docAccessDlg = undefined;
|
||||
});
|
||||
win.show();
|
||||
me._docAccessDlg.show();
|
||||
},
|
||||
onLostEditRights: function () {
|
||||
this._readonlyRights = true;
|
||||
if (!this.rendered) {
|
||||
return;
|
||||
}
|
||||
this._ShowHideInfoItem("rights", false);
|
||||
this._ShowHideInfoItem("edit-rights", false);
|
||||
},
|
||||
txtTitle: "Document Title",
|
||||
txtAuthor: "Author",
|
||||
txtPlacement: "Placement",
|
||||
txtDate: "Creation Date",
|
||||
txtRights: "Persons who have rights",
|
||||
txtBtnAccessRights: "Change access rights"
|
||||
},
|
||||
SSE.Views.FileMenuPanels.DocumentInfo || {}));
|
||||
SSE.Views.FileMenuPanels.DocumentRights || {}));
|
||||
SSE.Views.FileMenuPanels.Help = Common.UI.BaseView.extend({
|
||||
el: "#panel-help",
|
||||
menu: undefined,
|
||||
|
||||
@@ -147,16 +147,20 @@
|
||||
},
|
||||
onCoauthOptions: function (e) {
|
||||
if (this.mode.canCoAuthoring) {
|
||||
this.panelComments[this.btnComments.pressed ? "show" : "hide"]();
|
||||
this.fireEvent((this.btnComments.pressed) ? "comments:show": "comments:hide", this);
|
||||
if (this.btnChat.pressed) {
|
||||
if (this.btnChat.$el.hasClass("notify")) {
|
||||
this.btnChat.$el.removeClass("notify");
|
||||
if (this.mode.canComments) {
|
||||
this.panelComments[this.btnComments.pressed ? "show" : "hide"]();
|
||||
this.fireEvent((this.btnComments.pressed) ? "comments:show": "comments:hide", this);
|
||||
}
|
||||
if (this.mode.canChat) {
|
||||
if (this.btnChat.pressed) {
|
||||
if (this.btnChat.$el.hasClass("notify")) {
|
||||
this.btnChat.$el.removeClass("notify");
|
||||
}
|
||||
this.panelChat.show();
|
||||
this.panelChat.focus();
|
||||
} else {
|
||||
this.panelChat["hide"]();
|
||||
}
|
||||
this.panelChat.show();
|
||||
this.panelChat.focus();
|
||||
} else {
|
||||
this.panelChat["hide"]();
|
||||
}
|
||||
}
|
||||
},
|
||||
@@ -179,13 +183,17 @@
|
||||
this.btnAbout.toggle(false);
|
||||
this.$el.width(SCALE_MIN);
|
||||
if (this.mode.canCoAuthoring) {
|
||||
this.panelComments["hide"]();
|
||||
this.panelChat["hide"]();
|
||||
if (this.btnComments.pressed) {
|
||||
this.fireEvent("comments:hide", this);
|
||||
if (this.mode.canComments) {
|
||||
this.panelComments["hide"]();
|
||||
if (this.btnComments.pressed) {
|
||||
this.fireEvent("comments:hide", this);
|
||||
}
|
||||
this.btnComments.toggle(false, true);
|
||||
}
|
||||
if (this.mode.canChat) {
|
||||
this.panelChat["hide"]();
|
||||
this.btnChat.toggle(false, true);
|
||||
}
|
||||
this.btnComments.toggle(false, true);
|
||||
this.btnChat.toggle(false, true);
|
||||
}
|
||||
},
|
||||
isOpened: function () {
|
||||
|
||||
@@ -909,7 +909,7 @@
|
||||
iconCls: "mnu-icon-item mnu-border-width",
|
||||
template: _.template('<a id="<%= id %>" tabindex="-1" type="menuitem"><span class="menu-item-icon" style="background-image: none; width: 11px; height: 11px; margin: 2px 7px 0 -9px; border-style: solid; border-width: 1px; border-color: #000;"></span><%= caption %></a>'),
|
||||
menu: (function () {
|
||||
var itemTemplate = _.template('<a id="<%= id %>" tabindex="-1" type="menuitem"><div style="width: 80px; height: 20px; margin-top: -3px; margin-bottom: -2px; background:url(\'resources/img/toolbar/BorderSize.png\') repeat-x scroll 0 -<%= options.offsety %>px;"></div></a>');
|
||||
var itemTemplate = _.template('<a id="<%= id %>" tabindex="-1" type="menuitem"><div class="border-size-item" style="background-position: 0 -<%= options.offsety %>px;"></div></a>');
|
||||
me.mnuBorderWidth = new Common.UI.Menu({
|
||||
style: "min-width: 100px;",
|
||||
menuAlign: "tl-tr",
|
||||
@@ -1884,13 +1884,12 @@
|
||||
checkable: true,
|
||||
checked: me.isCompactView,
|
||||
value: "compact"
|
||||
}), {
|
||||
}), me.mnuitemHideTitleBar = new Common.UI.MenuItem({
|
||||
caption: me.textHideTBar,
|
||||
checkable: true,
|
||||
checked: !!options.title,
|
||||
value: "title"
|
||||
},
|
||||
{
|
||||
}), {
|
||||
caption: me.textHideFBar,
|
||||
checkable: true,
|
||||
checked: !!options.formula,
|
||||
@@ -2206,6 +2205,10 @@
|
||||
nativeBtnGroup.hide();
|
||||
}
|
||||
}
|
||||
if (mode.isDesktopApp) {
|
||||
$(".toolbar-group-native").hide();
|
||||
this.mnuitemHideTitleBar.hide();
|
||||
}
|
||||
}
|
||||
},
|
||||
onApiSendThemeColorSchemes: function (schemas) {
|
||||
|
||||
Reference in New Issue
Block a user