This commit is contained in:
Alexander Trofimov
2015-06-25 11:27:08 +03:00
parent dbf21ee32f
commit a10605c91f
174 changed files with 24121 additions and 8908 deletions

View File

@@ -7,6 +7,10 @@
<meta name="description" content="">
<meta name="author" content="">
<!-- debug begin -->
<link rel="stylesheet/less" type="text/css" href="resources/less/application.less" />
<!-- debug end -->
<!-- splash -->
<style type="text/css">
@@ -22,23 +26,131 @@
z-index: 20002;
}
.loadmask-body {
position:relative;
top:44%;
.loader-page {
top: 50%;
left: 50%;
width: 50px;
height: 180px;
position: absolute;
margin-top: -100px;
}
.loadmask-logo {
display:inline-block;
min-width:220px;
min-height:62px;
vertical-align:top;
background-image:url('./resources/img/loading-logo.gif');
background-repeat:no-repeat;
.romb {
width: 40px;
height: 40px;
-webkit-transform: rotate(135deg) skew(20deg, 20deg);
-moz-transform: rotate(135deg) skew(20deg, 20deg);
-ms-transform: rotate(135deg) skew(20deg, 20deg);
-o-transform: rotate(135deg) skew(20deg, 20deg);
position: absolute;
background: red;
border-radius: 6px;
-webkit-animation: movedown 3s infinite ease;
-moz-animation: movedown 3s infinite ease;
-ms-animation: movedown 3s infinite ease;
-o-animation: movedown 3s infinite ease;
animation: movedown 3s infinite ease;
}
#blue {
z-index: 3;
background: #55bce6;
-webkit-animation-name: blue;
-moz-animation-name: blue;
-ms-animation-name: blue;
-o-animation-name: blue;
animation-name: blue;
}
#red {
z-index:1;
background: #de7a59;
-webkit-animation-name: red;
-moz-animation-name: red;
-ms-animation-name: red;
-o-animation-name: red;
animation-name: red;
}
#green {
z-index: 2;
background: #a1cb5c;
-webkit-animation-name: green;
-moz-animation-name: green;
-ms-animation-name: green;
-o-animation-name: green;
animation-name: green;
}
@-webkit-keyframes red {
0% { top:120px; background: #de7a59; }
10% { top:120px; background: #F2CBBF; }
14% { background: #f4f4f4; top:120px; }
15% { background: #f4f4f4; top:0;}
20% { background: #E6E4E4; }
30% { background: #D2D2D2; }
40% { top:120px; }
100% { top:120px; background: #de7a59; }
}
@keyframes red {
0% { top:120px; background: #de7a59; }
10% { top:120px; background: #F2CBBF; }
14% { background: #f4f4f4; top:120px; }
15% { background: #f4f4f4; top:0; }
20% { background: #E6E4E4; }
30% { background: #D2D2D2; }
40% { top:120px; }
100% { top:120px; background: #de7a59; }
}
@-webkit-keyframes green {
0% { top:110px; background: #a1cb5c; opacity:1; }
10% { top:110px; background: #CBE0AC; opacity:1; }
14% { background: #f4f4f4; top:110px; opacity:1; }
15% { background: #f4f4f4; top:0; opacity:1; }
20% { background: #f4f4f4; top:0; opacity:0; }
25% { background: #EFEFEF; top:0; opacity:1; }
30% { background:#E6E4E4; }
70% { top:110px; }
100% { top:110px; background: #a1cb5c; }
}
@keyframes green {
0% { top:110px; background: #a1cb5c; opacity:1; }
10% { top:110px; background: #CBE0AC; opacity:1; }
14% { background: #f4f4f4; top:110px; opacity:1; }
15% { background: #f4f4f4; top:0; opacity:1; }
20% { background: #f4f4f4; top:0; opacity:0; }
25% { background: #EFEFEF; top:0; opacity:1; }
30% { background:#E6E4E4; }
70% { top:110px; }
100% { top:110px; background: #a1cb5c; }
}
@-webkit-keyframes blue {
0% { top:100px; background: #55bce6; opacity:1; }
10% { top:100px; background: #BFE8F8; opacity:1; }
14% { background: #f4f4f4; top:100px; opacity:1; }
15% { background: #f4f4f4; top:0; opacity:1; }
20% { background: #f4f4f4; top:0; opacity:0; }
25% { background: #f4f4f4; top:0; opacity:0; }
45% { background: #EFEFEF; top:0; opacity:0,2; }
100% { top:100px; background: #55bce6; }
}
@keyframes blue {
0% { top:100px; background: #55bce6; opacity:1; }
10% { top:100px; background: #BFE8F8; opacity:1; }
14% { background: #f4f4f4; top:100px; opacity:1; }
15% { background: #f4f4f4; top:0; opacity:1; }
20% { background: #f4f4f4; top:0; opacity:0; }
25% { background: #fff; top:0; opacity:0; }
45% { background: #EFEFEF; top:0; opacity:0,2; }
100% { top:100px; background: #55bce6; }
}
</style>
<link href="../../../3rdparty/bootstrap/css/bootstrap.css" rel="stylesheet">
<!--[if lt IE 9]>
<script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
@@ -46,6 +158,11 @@
<body class="embed-body">
<!-- debug begin -->
<script type="text/javascript">var less=less||{};less.env='development';</script>
<script src="../../../vendor/less/dist/less-1.5.1.js" type="text/javascript"></script>
<!-- debug end -->
<!--facebook button-->
<div id="fb-root"></div>
<script>(function(d, s, id) {
@@ -60,11 +177,12 @@
<!--twitter button-->
<script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");</script>
<div id="loading-mask" class="loadmask">
<div class="loadmask-body" align="center">
<div class="loadmask-logo"></div>
</div>
<div class="loader-page">
<div class="romb" id="blue"></div>
<div class="romb" id="green"></div>
<div class="romb" id="red"></div>
</div>
</div>
<div id="editor_sdk" class="viewer" style="overflow: hidden;"></div>
@@ -79,14 +197,14 @@
<div class="toolbar" id="toolbar">
<ul class="left">
<li><a class="brand-logo" href="http://www.onlyoffice.com/" target="_blank"></a></li>
<li><a id="header-logo" class="brand-logo" href="http://www.onlyoffice.com/" target="_blank"></a></li>
<li class="separator"></li>
<li id="id-btn-copy"><button class="control-btn"><i class="control-icon-save"></i><span>Save Copy</span></button></li>
<li id="id-btn-share"><button class="control-btn"><i class="control-icon-share"></i><span>Share</span></button></li>
<li id="id-btn-embed"><button class="control-btn"><i class="control-icon-embed"></i><span>Embed</span></button></li>
</ul>
<ul class="right">
<li><input id="page-number" style="width: 25px" type="text" value="0"><span class="text" id="pages">of 0</span></li>
<li><input id="page-number" class="form-control input-sm" style="width: 25px;" type="text" value="0"><span class="text" id="pages">of 0</span></li>
<li class="separator"></li>
<li><button id="id-btn-fullscreen" class="control-btn no-caption"><i class="control-icon-fullscreen"></i></button></li>
<li><button id="id-btn-close" class="control-btn no-caption"><i class="control-icon-close"></i></button></li>
@@ -110,112 +228,20 @@
<div class="cmd-loader-title">Please wait...</div>
</div>
<!--3td party-->
<script type="text/javascript" src="../../../3rdparty/jquery/jquery-1.8.1.min.js"></script>
<script type="text/javascript" src="../../../3rdparty/bootstrap/js/bootstrap.js"></script>
<script type="text/javascript" src="../../../3rdparty/ZeroClipboard/ZeroClipboard.min.js"></script>
<script type="text/javascript" src="../../../3rdparty/sockjs/sockjs-0.3.min.js"></script>
<script type="text/javascript" src="../../../3rdparty/xregexp/xregexp-all-min.js"></script>
<!--vendor-->
<script type="text/javascript" src="../../../vendor/jquery/jquery.min.js"></script>
<script type="text/javascript" src="../../../vendor/jquery.browser/dist/jquery.browser.min.js"></script>
<script type="text/javascript" src="../../../vendor/bootstrap/dist/js/bootstrap.js"></script>
<script type="text/javascript" src="../../../vendor/ZeroClipboard/ZeroClipboard.min.js"></script>
<script type="text/javascript" src="../../../vendor/sockjs/sockjs.min.js"></script>
<script type="text/javascript" src="../../../vendor/xregexp/xregexp-all-min.js"></script>
<!--sdk-->
<script type="text/javascript" src="../../../sdk/Common/AllFonts.js"></script>
<script type="text/javascript" src="../../../sdk/Common/browser.js"></script>
<script type="text/javascript" src="../../../sdk/Common/docscoapisettings.js"></script>
<script type="text/javascript" src="../../../sdk/Common/docscoapicommon.js"></script>
<script type="text/javascript" src="../../../sdk/Common/docscoapi.js"></script>
<script type="text/javascript" src="../../../sdk/Common/wordcopypaste.js"></script>
<script type="text/javascript" src="../../../sdk/Common/downloaderfiles.js"></script>
<script type="text/javascript" src="../../../sdk/Common/editorscommon.js"></script>
<script type="text/javascript" src="../../../sdk/Common/apiCommon.js"></script>
<script type="text/javascript" src="../../../sdk/Common/Shapes/Serialize.js"></script>
<script type="text/javascript" src="../../../sdk/Common/Shapes/SerializeWriter.js"></script>
<script type="text/javascript" src="../../../sdk/Common/FontsFreeType/font_engine.js"></script>
<script type="text/javascript" src="../../../sdk/Common/FontsFreeType/FontFile.js"></script>
<script type="text/javascript" src="../../../sdk/Common/FontsFreeType/FontManager.js"></script>
<script type="text/javascript" src="../../../sdk/Word/Drawing/Externals.js"></script>
<script type="text/javascript" src="../../../sdk/Word/Drawing/GlobalLoaders.js"></script>
<script type="text/javascript" src="../../../sdk/Word/Drawing/Metafile.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Drawing/ThemeLoader.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/Format/Table.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/Format/CollaborativeEditing.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/Styles.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/Format/Table.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/Format/Paragraph.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/Format/FontClassification.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/Format/ParagraphContent.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/Format/Spelling.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/Format/Comments.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/GraphicObjects.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/States.js"></script>
<script type="text/javascript" src="../../../sdk/Common/Charts/DrawingObjects.js"></script>
<script type="text/javascript" src="../../../sdk/Common/commonDefines.js"></script>
<script type="text/javascript" src="../../../sdk/Common/SerializeCommonWordExcel.js"></script>
<script type="text/javascript" src="../../../sdk/Word/Editor/Serialize2.js"></script>
<script type="text/javascript" src="../../../sdk/Common/Charts/charts.js"></script>
<script type="text/javascript" src="../../../sdk/Excel/graphics/DrawingContextWord.js"></script>
<script type="text/javascript" src="../../../sdk/Common/trackFile.js"></script>
<script type="text/javascript" src="../../../sdk/Word/Editor/SerializeCommon.js"></script>
<script type="text/javascript" src="../../../sdk/Word/Drawing/GraphicsEvents.js"></script>
<script type="text/javascript" src="../../../sdk/Word/Drawing/WorkEvents.js"></script>
<script type="text/javascript" src="../../../sdk/Word/Drawing/Controls.js"></script>
<script type="text/javascript" src="../../../sdk/Word/Drawing/Rulers.js"></script>
<script type="text/javascript" src="../../../sdk/Word/Editor/Common.js"></script>
<script type="text/javascript" src="../../../sdk/Word/Editor/Sections.js"></script>
<script type="text/javascript" src="../../../sdk/Common/scroll.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/History.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/FlowObjects.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/Format/DocumentContent.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/Format/Presentation.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/SlideShowInfo.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/PresentationProperties.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/Format/Shape.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/Format/GraphicFrame.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/Numbering.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/TrackObjects/AdjustmentTracks.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/TrackObjects/MoveTracks.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/TrackObjects/NewShapeTracks.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/TrackObjects/PolyLine.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/TrackObjects/ResizeTracks.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/TrackObjects/RotateTracks.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/TrackObjects/Spline.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/Format/TextBody.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/Format/Image.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/Format/GroupShape.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/Format/ChartTitle.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/Format/Chart.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/Format/ChartLayout.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/Format/Slide.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/Format/SlideMaster.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/Format/Layout.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/Drawing/Geometry.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/Drawing/CreateGoemetry.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/Drawing/ColorArray.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/Drawing/Math.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/Drawing/Path.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/Drawing/ArcTo.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/Drawing/GraphicFigure.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/Drawing/Clone.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/Drawing/CImage.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/Drawing/Spline.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/Drawing/PolyLine.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/Drawing/Hit.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/Drawing/Joined.js"></script>
<script type="text/javascript" src="../../../sdk/Word/Drawing/Graphics.js"></script>
<script type="text/javascript" src="../../../sdk/Word/Drawing/Overlay.js"></script>
<script type="text/javascript" src="../../../sdk/Word/Drawing/HatchPattern.js"></script>
<script type="text/javascript" src="../../../sdk/Word/Drawing/ShapeDrawer.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Drawing/Transitions.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Drawing/DrawingDocument.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Drawing/HtmlPage.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/Format.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/apiDefines.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/api.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/apiCommon.js"></script>
<script type="text/javascript" src="../../../sdk/Common/Shapes/EditorSettings.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/themes/Themes.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/sdk-all.js"></script>
<!--application-->
<link href="resources/css/application.css" rel="stylesheet">
<!--<link href="resources/css/application.css" rel="stylesheet">-->
<script type="text/javascript" src="../../common/Gateway.js"></script>
<script type="text/javascript" src="../../common/Analytics.js"></script>
<script type="text/javascript" src="js/ApplicationView.js"></script>

View File

@@ -189,7 +189,7 @@
<div class="toolbar" id="toolbar">
<ul class="left">
<li><a class="brand-logo" href="http://www.onlyoffice.com/" target="_blank"></a></li>
<li><a id="header-logo" class="brand-logo" href="http://www.onlyoffice.com/" target="_blank"></a></li>
<li class="separator"></li>
<li id="id-btn-copy"><button class="control-btn"><i class="control-icon-save"></i><span>Save Copy</span></button></li>
<li id="id-btn-share"><button class="control-btn"><i class="control-icon-share"></i><span>Share</span></button></li>

View File

@@ -30,7 +30,8 @@
*
*/
var ApplicationController = new(function () {
var me, api, docConfig = {},
var me, api, config = {},
docConfig = {},
embedConfig = {},
permissions = {},
maxPages = 0,
@@ -40,6 +41,7 @@
embedCode = '<iframe allowtransparency="true" frameborder="0" scrolling="no" src="{embed-url}" width="{width}" height="{height}"></iframe>',
maxZIndex = 9090,
created = false;
Common.Analytics.initialize("UA-12442749-13", "Embedded ONLYOFFICE Presentation");
if (typeof isBrowserSupported !== "undefined" && !isBrowserSupported()) {
Common.Gateway.reportError(undefined, "Your browser is not supported.");
return;
@@ -77,6 +79,7 @@
}
}
function loadConfig(data) {
config = $.extend(config, data.config);
embedConfig = $.extend(embedConfig, data.config.embedded);
$("#id-short-url").text(embedConfig.shareUrl || "Unavailable");
$("#id-textarea-embed").text(embedCode.replace("{embed-url}", embedConfig.embedUrl).replace("{width}", minEmbedWidth).replace("{height}", minEmbedHeight));
@@ -96,7 +99,7 @@
if (typeof embedConfig.fullscreenUrl === "undefined") {
$("#id-btn-fullscreen").hide();
}
if (typeof data.config.canBackToFolder === "undefined" || !data.config.canBackToFolder) {
if (typeof config.canBackToFolder === "undefined" || !config.canBackToFolder) {
$("#id-btn-close").hide();
}
if (embedConfig.toolbarDocked === "top") {
@@ -122,6 +125,8 @@
docInfo.put_Format(docConfig.fileType);
docInfo.put_VKey(docConfig.vkey);
if (api) {
api.asc_registerCallback("asc_onGetEditorPermissions", onEditorPermissions);
api.asc_getEditorPermissions();
api.asc_enableKeyEvents(true);
api.SetViewMode(true);
api.LoadDocument(docInfo);
@@ -204,6 +209,15 @@
hidePreloader();
Common.Analytics.trackEvent("Load", "Complete");
}
function onEditorPermissions(params) {
if (params.asc_getCanBranding() && (typeof config.customization == "object") && config.customization && config.customization.logoUrlEmbedded) {
$("#header-logo").css({
"background-image": 'url("' + config.customization.logoUrlEmbedded + '")',
"background-position": "0 center",
"background-repeat": "no-repeat"
});
}
}
function showMask() {
$("#id-loadmask").modal({
backdrop: "static",

View File

@@ -94,7 +94,7 @@
this.api.asc_registerCallback("asc_onThumbnailsShow", _.bind(this.onThumbnailsShow, 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));
}
this.api.asc_registerCallback("asc_onCountPages", _.bind(this.onApiCountPages, this));
@@ -110,10 +110,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();
@@ -214,7 +218,7 @@
this.leftMenu.getMenu("file").disableMenu("save", status);
},
clickStatusbarUsers: function () {
if (this.mode.canCoAuthoring) {
if (this.mode.canCoAuthoring && this.mode.canChat) {
if (this.leftMenu.btnChat.pressed) {
this.leftMenu.close();
} else {
@@ -366,13 +370,13 @@
}
break;
case "chat":
if (this.mode.canCoAuthoring && (!previewPanel || !previewPanel.isVisible())) {
if (this.mode.canCoAuthoring && this.mode.canChat && (!previewPanel || !previewPanel.isVisible())) {
Common.UI.Menu.Manager.hideAll();
this.leftMenu.showMenu("chat");
}
return false;
case "comments":
if (this.mode.canCoAuthoring && this.mode.isEdit && (!previewPanel || !previewPanel.isVisible()) && !this._state.no_slides) {
if (this.mode.canCoAuthoring && this.mode.isEdit && this.mode.canComments && (!previewPanel || !previewPanel.isVisible()) && !this._state.no_slides) {
Common.UI.Menu.Manager.hideAll();
this.leftMenu.showMenu("comments");
this.getApplication().getController("Common.Controllers.Comments").focusOnInput();

View File

@@ -33,6 +33,11 @@
PE.Controllers.Main = Backbone.Controller.extend(_.extend((function () {
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", "SlideLayouts"],
@@ -148,14 +153,16 @@
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;
this.appOptions.lang = this.editorConfig.lang;
this.appOptions.sharingSettingsUrl = this.editorConfig.sharingSettingsUrl;
this.appOptions.canAnalytics = false;
this.appOptions.customization = this.editorConfig.customization;
this.getApplication().getController("Viewport").getView("Common.Views.Header").setCanBack(this.editorConfig.canBackToFolder === true);
if (this.editorConfig.lang) {
this.api.asc_setLocale(this.editorConfig.lang);
@@ -177,7 +184,6 @@
docInfo.put_UserId(this.editorConfig.user.id);
docInfo.put_UserName(this.editorConfig.user.name);
docInfo.put_CallbackUrl(this.editorConfig.callbackUrl);
docInfo.put_OfflineApp(this.editorConfig.nativeApp === true);
}
this.api.asc_registerCallback("asc_onGetEditorPermissions", _.bind(this.onEditorPermissions, this));
this.api.asc_setDocInfo(docInfo);
@@ -198,7 +204,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
@@ -406,9 +412,11 @@
value = window.localStorage.getItem("pe-settings-zoom");
var zf = (value !== null) ? parseInt(value) : -1;
(zf == -1) ? this.api.zoomFitToPage() : this.api.zoom(zf);
Common.Utils.isIE9m && tips.push(me.warnBrowserIE9); ! Common.Utils.isGecko && (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 && (Math.abs(me.getBrowseZoomLevel() - 1) > 0.1) && tips.push(Common.Utils.String.platformKey(me.warnBrowserZoom, "{0}"));
if (tips.length) {
me.showTips(tips);
}
}
me.api.asc_registerCallback("asc_onStartAction", _.bind(me.onLongActionBegin, me));
me.api.asc_registerCallback("asc_onEndAction", _.bind(me.onLongActionEnd, me));
@@ -441,7 +449,7 @@
statusbarController.createDelayedElements();
leftmenuController.getView("LeftMenu").disableMenu("all", false);
if (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.getView("DocumentHolder").setApi(me.api).on("editcomplete", _.bind(me.onEditComplete, me));
application.getController("Viewport").getView("DocumentPreview").setApi(me.api).on("editcomplete", _.bind(me.onEditComplete, me));
@@ -480,8 +488,9 @@
}
me.api.asc_setAutoSaveGap(value);
if (this.appOptions.canAnalytics) {
Common.Gateway.on("applyeditrights", _.bind(me.onApplyEditRights, me));
Common.component.Analytics.initialize("UA-12442749-13", "Presentation 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));
@@ -500,15 +509,18 @@
onEditorPermissions: function (params) {
this.permissions.edit !== false && (this.permissions.edit = params.asc_getCanEdit());
this.permissions.download !== false && (this.permissions.download = params.asc_getCanDownload());
this.appOptions.canCoAuthoring = params.asc_getCanCoAuthoring();
this.appOptions.canCoAuthoring = true;
this.appOptions.canEdit = this.permissions.edit === true;
this.appOptions.isEdit = this.appOptions.canEdit && this.editorConfig.mode !== "view";
this.appOptions.canDownload = !this.appOptions.nativeApp && this.permissions.download;
this.appOptions.canAutosave = this.editorConfig.canAutosave !== false && params.asc_getIsAutosaveEnable();
this.appOptions.canAnalytics = params.asc_getIsAnalyticsEnable();
this.appOptions.canBranding = params.asc_getCanBranding() && (typeof(this.editorConfig.branding) == "object");
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.getApplication().getController("Viewport").getView("Common.Views.Header").setBranding(this.editorConfig.branding);
this.getApplication().getController("Viewport").getView("Common.Views.Header").setBranding(this.editorConfig.customization);
}
this.applyModeCommonElements();
this.applyModeEditorElements();
@@ -530,7 +542,7 @@
documentHolder = app.getController("DocumentHolder").getView("DocumentHolder");
if (headerView) {
headerView.setHeaderCaption(this.appOptions.isEdit ? "Presentation Editor" : "Presentation Viewer");
headerView.setVisible(!this.appOptions.nativeApp && !value);
headerView.setVisible(!this.appOptions.nativeApp && !value && !this.appOptions.isDesktopApp);
}
viewport && viewport.setMode(this.appOptions, true);
statusbarView && statusbarView.setMode(this.appOptions);
@@ -807,6 +819,10 @@
}
},
hidePreloader: function () {
if ( !! this.appOptions.customization && !this.appOptions.customization.done) {
this.appOptions.customization.done = true;
Common.Utils.applyCustomization(this.appOptions.customization, mapCustomizationElements);
}
Common.NotificationCenter.trigger("layout:changed", "main");
$("#loading-mask").hide().remove();
},

View File

@@ -803,20 +803,25 @@
onCopyPaste: function (copy, e) {
var me = this;
if (me.api) {
var value = window.localStorage.getItem("pe-hide-copywarning");
if (! (value && parseInt(value) == 1) && this._state.show_copywarning) {
(new Common.Views.CopyWarningDialog({
handler: function (dontshow) {
copy ? me.api.Copy() : me.api.Paste();
if (dontshow) {
window.localStorage.setItem("pe-hide-copywarning", 1);
}
Common.NotificationCenter.trigger("edit:complete", me.toolbar);
}
})).show();
} else {
if (typeof window["AscDesktopEditor"] === "object") {
copy ? me.api.Copy() : me.api.Paste();
Common.NotificationCenter.trigger("edit:complete", me.toolbar);
} else {
var value = window.localStorage.getItem("pe-hide-copywarning");
if (! (value && parseInt(value) == 1) && this._state.show_copywarning) {
(new Common.Views.CopyWarningDialog({
handler: function (dontshow) {
copy ? me.api.Copy() : me.api.Paste();
if (dontshow) {
window.localStorage.setItem("pe-hide-copywarning", 1);
}
Common.NotificationCenter.trigger("edit:complete", me.toolbar);
}
})).show();
} else {
copy ? me.api.Copy() : me.api.Paste();
Common.NotificationCenter.trigger("edit:complete", me.toolbar);
}
}
Common.component.Analytics.trackEvent("ToolBar", "Copy Warning");
} else {

View File

@@ -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>

View File

@@ -581,7 +581,7 @@
me.api.asc_registerCallback("asc_onDialogAddHyperlink", _.bind(onDialogAddHyperlink, me));
me.api.asc_registerCallback("asc_doubleClickOnChart", onDoubleClickOnChart);
}
me.mode = mode; ! (me.mode.canCoAuthoring && me.mode.isEdit) ? Common.util.Shortcuts.suspendEvents(hkComments) : Common.util.Shortcuts.resumeEvents(hkComments);
me.mode = mode; ! (me.mode.canCoAuthoring && me.mode.isEdit && me.mode.canComments) ? Common.util.Shortcuts.suspendEvents(hkComments) : Common.util.Shortcuts.resumeEvents(hkComments);
me.editorConfig = {
user: mode.user
};
@@ -650,7 +650,7 @@
}
},
addComment: function (item, e, eOpt) {
if (this.api && this.mode.canCoAuthoring && this.mode.isEdit) {
if (this.api && this.mode.canCoAuthoring && this.mode.isEdit && this.mode.canComments) {
this.suppressEditComplete = true;
this.api.asc_enableKeyEvents(false);
var controller = PE.getController("Common.Controllers.Comments");
@@ -673,20 +673,24 @@
onCutCopyPaste: function (item, e) {
var me = this;
if (me.api) {
var value = window.localStorage.getItem("pe-hide-copywarning");
if (! (value && parseInt(value) == 1) && me.show_copywarning) {
(new Common.Views.CopyWarningDialog({
handler: function (dontshow) {
(item.value == "cut") ? me.api.Cut() : ((item.value == "copy") ? me.api.Copy() : me.api.Paste());
if (dontshow) {
window.localStorage.setItem("pe-hide-copywarning", 1);
}
me.fireEvent("editcomplete", me);
}
})).show();
} else {
if (typeof window["AscDesktopEditor"] === "object") {
(item.value == "cut") ? me.api.Cut() : ((item.value == "copy") ? me.api.Copy() : me.api.Paste());
me.fireEvent("editcomplete", me);
} else {
var value = window.localStorage.getItem("pe-hide-copywarning");
if (! (value && parseInt(value) == 1) && me.show_copywarning) {
(new Common.Views.CopyWarningDialog({
handler: function (dontshow) {
(item.value == "cut") ? me.api.Cut() : ((item.value == "copy") ? me.api.Copy() : me.api.Paste());
if (dontshow) {
window.localStorage.setItem("pe-hide-copywarning", 1);
}
me.fireEvent("editcomplete", me);
}
})).show();
} else {
(item.value == "cut") ? me.api.Cut() : ((item.value == "copy") ? me.api.Copy() : me.api.Paste());
me.fireEvent("editcomplete", me);
}
}
} else {
me.fireEvent("editcomplete", me);
@@ -1330,7 +1334,7 @@
menuAddHyperlinkPara.hyperProps.value = new CHyperlinkProperty();
menuAddHyperlinkPara.hyperProps.value.put_Text(text);
}
menuAddCommentPara.setVisible(!isInChart && me.api.can_AddQuotedComment() !== false && me.mode.canCoAuthoring);
menuAddCommentPara.setVisible(!isInChart && me.api.can_AddQuotedComment() !== false && me.mode.canCoAuthoring && me.mode.canComments);
menuCommentParaSeparator.setVisible(menuAddCommentPara.isVisible() || menuAddHyperlinkPara.isVisible() || menuHyperlinkPara.isVisible());
menuAddHyperlinkPara.setDisabled(disabled);
menuHyperlinkPara.setDisabled(disabled);
@@ -1386,7 +1390,7 @@
menuAddHyperlinkTable.setDisabled(value.paraProps.locked || disabled);
menuHyperlinkTable.setDisabled(value.paraProps.locked || disabled);
}
menuAddCommentTable.setVisible(me.api.can_AddQuotedComment() !== false && me.mode.canCoAuthoring);
menuAddCommentTable.setVisible(me.api.can_AddQuotedComment() !== false && me.mode.canCoAuthoring && me.mode.canComments);
menuAddCommentTable.setDisabled(!_.isUndefined(value.paraProps) && value.paraProps.locked || disabled);
menuHyperlinkSeparator.setVisible(menuAddHyperlinkTable.isVisible() || menuHyperlinkTable.isVisible() || menuAddCommentTable.isVisible());
},
@@ -1515,7 +1519,7 @@
menuShapeAdvanced.setVisible(_.isUndefined(value.imgProps) && _.isUndefined(value.chartProps));
menuChartEdit.setVisible(_.isUndefined(value.imgProps) && !_.isUndefined(value.chartProps) && (_.isUndefined(value.shapeProps) || value.shapeProps.isChart));
menuImgShapeSeparator.setVisible(menuImageAdvanced.isVisible() || menuShapeAdvanced.isVisible() || menuChartEdit.isVisible());
menuAddCommentImg.setVisible(me.api.can_AddQuotedComment() !== false && me.mode.canCoAuthoring);
menuAddCommentImg.setVisible(me.api.can_AddQuotedComment() !== false && me.mode.canCoAuthoring && me.mode.canComments);
menuCommentSeparatorImg.setVisible(menuAddCommentImg.isVisible());
menuAddCommentImg.setDisabled(disabled);
menuImgShapeAlign.setDisabled(disabled);

View File

@@ -106,6 +106,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",
@@ -135,6 +140,9 @@
"info": (new PE.Views.FileMenuPanels.DocumentInfo({
menu: me
})).render(),
"rights": (new PE.Views.FileMenuPanels.DocumentRights({
menu: me
})).render(),
"help": (new PE.Views.FileMenuPanels.Help({
menu: me
})).render()
@@ -166,16 +174,17 @@
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.mode.canBack ? this.$el.find("#fm-btn-back").show().prev().show() : this.$el.find("#fm-btn-back").hide().prev().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.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 + "...");
@@ -193,6 +202,9 @@
})).render();
}
}
if (this.mode.targetApp == "desktop") {
this.$el.find("#fm-btn-create, #fm-btn-back, #fm-btn-create+.devider").hide();
}
this.panels["help"].setLangConfig(this.mode.lang);
},
setMode: function (mode, delay) {
@@ -241,6 +253,7 @@
btnSaveCaption: "Save",
btnDownloadCaption: "Download as...",
btnInfoCaption: "Document Info...",
btnRightsCaption: "Access Rights...",
btnCreateNewCaption: "Create New",
btnRecentFilesCaption: "Open Recent...",
btnPrintCaption: "Print",

View File

@@ -339,8 +339,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 () {
@@ -349,11 +348,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)) {
@@ -390,13 +384,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);
}
@@ -408,6 +395,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"
},
PE.Views.FileMenuPanels.DocumentInfo || {}));
PE.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);
},
@@ -416,34 +468,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"
},
PE.Views.FileMenuPanels.DocumentInfo || {}));
PE.Views.FileMenuPanels.DocumentRights || {}));
PE.Views.FileMenuPanels.Help = Common.UI.BaseView.extend({
el: "#panel-help",
menu: undefined,

View File

@@ -178,16 +178,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"]();
}
}
},
@@ -211,13 +215,17 @@
this.btnThumbs.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);
}
this.fireEvent("panel:show", [this, "", false]);
},

View File

@@ -1564,6 +1564,10 @@
nativeBtnGroup.hide();
}
}
if (mode.isDesktopApp) {
$(".toolbar-group-native").hide();
this.mnuitemHideTitleBar.hide();
}
},
changeViewMode: function (item, compact) {
var me = this,

View File

@@ -304,6 +304,7 @@
"PE.Views.FileMenu.btnPrintCaption": "Drucken",
"PE.Views.FileMenu.btnRecentFilesCaption": "Zuletzt benutzte öffnen...",
"PE.Views.FileMenu.btnReturnCaption": "Zurück zur Präsentation",
"PE.Views.FileMenu.btnRightsCaption": "Access Rights...",
"PE.Views.FileMenu.btnSaveCaption": "Speichern",
"PE.Views.FileMenu.btnSettingsCaption": "Erweiterte Einstellungen...",
"PE.Views.FileMenu.btnToEditCaption": "Präsentation bearbeiten",
@@ -313,10 +314,10 @@
"PE.Views.FileMenuPanels.CreateNew.newDocumentText": "Neue Präsentation",
"PE.Views.FileMenuPanels.CreateNew.noTemplatesText": "Es gibt keine Vorlagen",
"PE.Views.FileMenuPanels.DocumentInfo.txtAuthor": "Autor",
"PE.Views.FileMenuPanels.DocumentInfo.txtBtnAccessRights": "Zugriffsrechte ändern",
"PE.Views.FileMenuPanels.DocumentRights.txtBtnAccessRights": "Zugriffsrechte ändern",
"PE.Views.FileMenuPanels.DocumentInfo.txtDate": "Erstellungsdatum",
"PE.Views.FileMenuPanels.DocumentInfo.txtPlacement": "Speicherort",
"PE.Views.FileMenuPanels.DocumentInfo.txtRights": "Personen mit Berechtigungen",
"PE.Views.FileMenuPanels.DocumentRights.txtRights": "Personen mit Berechtigungen",
"PE.Views.FileMenuPanels.DocumentInfo.txtTitle": "Titel der Präsentation",
"PE.Views.FileMenuPanels.Settings.okButtonText": "Übernehmen",
"PE.Views.FileMenuPanels.Settings.strAlignGuides": "Ausrichtungslinien einschalten",

View File

@@ -301,6 +301,7 @@
"PE.Views.FileMenu.btnDownloadCaption": "Download as...",
"PE.Views.FileMenu.btnHelpCaption": "Help...",
"PE.Views.FileMenu.btnInfoCaption": "Presentation Info...",
"PE.Views.FileMenu.btnRightsCaption": "Access Rights...",
"PE.Views.FileMenu.btnPrintCaption": "Print",
"PE.Views.FileMenu.btnRecentFilesCaption": "Open Recent...",
"PE.Views.FileMenu.btnReturnCaption": "Back to Presentation",
@@ -313,10 +314,10 @@
"PE.Views.FileMenuPanels.CreateNew.newDocumentText": "New Presentation",
"PE.Views.FileMenuPanels.CreateNew.noTemplatesText": "There are no templates",
"PE.Views.FileMenuPanels.DocumentInfo.txtAuthor": "Author",
"PE.Views.FileMenuPanels.DocumentInfo.txtBtnAccessRights": "Change access rights",
"PE.Views.FileMenuPanels.DocumentRights.txtBtnAccessRights": "Change access rights",
"PE.Views.FileMenuPanels.DocumentInfo.txtDate": "Creation Date",
"PE.Views.FileMenuPanels.DocumentInfo.txtPlacement": "Location",
"PE.Views.FileMenuPanels.DocumentInfo.txtRights": "Persons who have rights",
"PE.Views.FileMenuPanels.DocumentRights.txtRights": "Persons who have rights",
"PE.Views.FileMenuPanels.DocumentInfo.txtTitle": "Presentation Title",
"PE.Views.FileMenuPanels.Settings.okButtonText": "Apply",
"PE.Views.FileMenuPanels.Settings.strAlignGuides": "Turn on alignment guides",

View File

@@ -304,6 +304,7 @@
"PE.Views.FileMenu.btnPrintCaption": "Imprimir",
"PE.Views.FileMenu.btnRecentFilesCaption": "Abrir reciente...",
"PE.Views.FileMenu.btnReturnCaption": "Ir a presentación",
"PE.Views.FileMenu.btnRightsCaption": "Derechos de acceso...",
"PE.Views.FileMenu.btnSaveCaption": "Guardar",
"PE.Views.FileMenu.btnSettingsCaption": "Ajustes avanzados...",
"PE.Views.FileMenu.btnToEditCaption": "Editar presentación",
@@ -313,10 +314,10 @@
"PE.Views.FileMenuPanels.CreateNew.newDocumentText": "Presentación nueva",
"PE.Views.FileMenuPanels.CreateNew.noTemplatesText": "No hay ningunas plantillas",
"PE.Views.FileMenuPanels.DocumentInfo.txtAuthor": "Autor",
"PE.Views.FileMenuPanels.DocumentInfo.txtBtnAccessRights": "Cambiar derechos de acceso",
"PE.Views.FileMenuPanels.DocumentRights.txtBtnAccessRights": "Cambiar derechos de acceso",
"PE.Views.FileMenuPanels.DocumentInfo.txtDate": "Fecha de creación",
"PE.Views.FileMenuPanels.DocumentInfo.txtPlacement": "Ubicación",
"PE.Views.FileMenuPanels.DocumentInfo.txtRights": "Personas que tienen derechos",
"PE.Views.FileMenuPanels.DocumentRights.txtRights": "Personas que tienen derechos",
"PE.Views.FileMenuPanels.DocumentInfo.txtTitle": "Título de presentación",
"PE.Views.FileMenuPanels.Settings.okButtonText": "Aplicar",
"PE.Views.FileMenuPanels.Settings.strAlignGuides": "Activar guías de alineación",

View File

@@ -313,10 +313,10 @@
"PE.Views.FileMenuPanels.CreateNew.newDocumentText": "Nouvelle présentation",
"PE.Views.FileMenuPanels.CreateNew.noTemplatesText": "Pas de modèles",
"PE.Views.FileMenuPanels.DocumentInfo.txtAuthor": "Auteur",
"PE.Views.FileMenuPanels.DocumentInfo.txtBtnAccessRights": "Changer les droits d'accès",
"PE.Views.FileMenuPanels.DocumentRights.txtBtnAccessRights": "Changer les droits d'accès",
"PE.Views.FileMenuPanels.DocumentInfo.txtDate": "Date de création",
"PE.Views.FileMenuPanels.DocumentInfo.txtPlacement": "Emplacement",
"PE.Views.FileMenuPanels.DocumentInfo.txtRights": "Personnes qui ont des droits",
"PE.Views.FileMenuPanels.DocumentRights.txtRights": "Personnes qui ont des droits",
"PE.Views.FileMenuPanels.DocumentInfo.txtTitle": "Titre de la présentation",
"PE.Views.FileMenuPanels.Settings.okButtonText": "Appliquer",
"PE.Views.FileMenuPanels.Settings.strAlignGuides": "Activer les repères d'alignement",

View File

@@ -313,10 +313,10 @@
"PE.Views.FileMenuPanels.CreateNew.newDocumentText": "Nuova presentazione",
"PE.Views.FileMenuPanels.CreateNew.noTemplatesText": "Nessun modello",
"PE.Views.FileMenuPanels.DocumentInfo.txtAuthor": "Autore",
"PE.Views.FileMenuPanels.DocumentInfo.txtBtnAccessRights": "Cambia diritti di accesso",
"PE.Views.FileMenuPanels.DocumentRights.txtBtnAccessRights": "Cambia diritti di accesso",
"PE.Views.FileMenuPanels.DocumentInfo.txtDate": "Data di creazione",
"PE.Views.FileMenuPanels.DocumentInfo.txtPlacement": "Percorso",
"PE.Views.FileMenuPanels.DocumentInfo.txtRights": "Persone con diritti",
"PE.Views.FileMenuPanels.DocumentRights.txtRights": "Persone con diritti",
"PE.Views.FileMenuPanels.DocumentInfo.txtTitle": "Titolo presentazione",
"PE.Views.FileMenuPanels.Settings.okButtonText": "Applica",
"PE.Views.FileMenuPanels.Settings.strAlignGuides": "Turn on alignment guides",

View File

@@ -313,10 +313,10 @@
"PE.Views.FileMenuPanels.CreateNew.newDocumentText": "Nova apresentação",
"PE.Views.FileMenuPanels.CreateNew.noTemplatesText": "Não há modelos",
"PE.Views.FileMenuPanels.DocumentInfo.txtAuthor": "Autor",
"PE.Views.FileMenuPanels.DocumentInfo.txtBtnAccessRights": "Alterar direitos de acesso",
"PE.Views.FileMenuPanels.DocumentRights.txtBtnAccessRights": "Alterar direitos de acesso",
"PE.Views.FileMenuPanels.DocumentInfo.txtDate": "Data de criação",
"PE.Views.FileMenuPanels.DocumentInfo.txtPlacement": "Localização",
"PE.Views.FileMenuPanels.DocumentInfo.txtRights": "Pessoas que têm direitos",
"PE.Views.FileMenuPanels.DocumentRights.txtRights": "Pessoas que têm direitos",
"PE.Views.FileMenuPanels.DocumentInfo.txtTitle": "Título de apresentação",
"PE.Views.FileMenuPanels.Settings.okButtonText": "Aplicar",
"PE.Views.FileMenuPanels.Settings.strAlignGuides": "Turn on alignment guides",

View File

@@ -304,6 +304,7 @@
"PE.Views.FileMenu.btnPrintCaption": "Печать",
"PE.Views.FileMenu.btnRecentFilesCaption": "Открыть последние...",
"PE.Views.FileMenu.btnReturnCaption": "Вернуться к презентации",
"PE.Views.FileMenu.btnRightsCaption": "Права доступа...",
"PE.Views.FileMenu.btnSaveCaption": "Сохранить",
"PE.Views.FileMenu.btnSettingsCaption": "Дополнительные параметры...",
"PE.Views.FileMenu.btnToEditCaption": "Редактировать",
@@ -313,10 +314,10 @@
"PE.Views.FileMenuPanels.CreateNew.newDocumentText": "Новая презентация",
"PE.Views.FileMenuPanels.CreateNew.noTemplatesText": "Шаблоны отсутствуют",
"PE.Views.FileMenuPanels.DocumentInfo.txtAuthor": "Автор",
"PE.Views.FileMenuPanels.DocumentInfo.txtBtnAccessRights": "Изменить права доступа",
"PE.Views.FileMenuPanels.DocumentRights.txtBtnAccessRights": "Изменить права доступа",
"PE.Views.FileMenuPanels.DocumentInfo.txtDate": "Дата создания",
"PE.Views.FileMenuPanels.DocumentInfo.txtPlacement": "Размещение",
"PE.Views.FileMenuPanels.DocumentInfo.txtRights": "Люди, имеющие права",
"PE.Views.FileMenuPanels.DocumentRights.txtRights": "Люди, имеющие права",
"PE.Views.FileMenuPanels.DocumentInfo.txtTitle": "Название презентации",
"PE.Views.FileMenuPanels.Settings.okButtonText": "Применить",
"PE.Views.FileMenuPanels.Settings.strAlignGuides": "Включить направляющие выравнивания",

View File

@@ -313,10 +313,10 @@
"PE.Views.FileMenuPanels.CreateNew.newDocumentText": "Nova predstavitev",
"PE.Views.FileMenuPanels.CreateNew.noTemplatesText": "Ni predlog",
"PE.Views.FileMenuPanels.DocumentInfo.txtAuthor": "Avtor",
"PE.Views.FileMenuPanels.DocumentInfo.txtBtnAccessRights": "Spremeni pravice dostopa",
"PE.Views.FileMenuPanels.DocumentRights.txtBtnAccessRights": "Spremeni pravice dostopa",
"PE.Views.FileMenuPanels.DocumentInfo.txtDate": "Datum nastanka",
"PE.Views.FileMenuPanels.DocumentInfo.txtPlacement": "Lokacija",
"PE.Views.FileMenuPanels.DocumentInfo.txtRights": "Osebe, ki imajo pravice",
"PE.Views.FileMenuPanels.DocumentRights.txtRights": "Osebe, ki imajo pravice",
"PE.Views.FileMenuPanels.DocumentInfo.txtTitle": "Naslov predstavitve",
"PE.Views.FileMenuPanels.Settings.okButtonText": "Uporabi",
"PE.Views.FileMenuPanels.Settings.strAlignGuides": "Vključi vodnike poravnave",

View File

@@ -313,10 +313,10 @@
"PE.Views.FileMenuPanels.CreateNew.newDocumentText": "Yeni Sunum",
"PE.Views.FileMenuPanels.CreateNew.noTemplatesText": "Şablon yok",
"PE.Views.FileMenuPanels.DocumentInfo.txtAuthor": "Yayıncı",
"PE.Views.FileMenuPanels.DocumentInfo.txtBtnAccessRights": "Erişim haklarını değiştir",
"PE.Views.FileMenuPanels.DocumentRights.txtBtnAccessRights": "Erişim haklarını değiştir",
"PE.Views.FileMenuPanels.DocumentInfo.txtDate": "Oluşturulma tarihi",
"PE.Views.FileMenuPanels.DocumentInfo.txtPlacement": "Lokasyon",
"PE.Views.FileMenuPanels.DocumentInfo.txtRights": "Hakkı olan kişiler",
"PE.Views.FileMenuPanels.DocumentRights.txtRights": "Hakkı olan kişiler",
"PE.Views.FileMenuPanels.DocumentInfo.txtTitle": "Sunum Başlığı",
"PE.Views.FileMenuPanels.Settings.okButtonText": "Uygula",
"PE.Views.FileMenuPanels.Settings.strAlignGuides": "Turn on alignment guides",

View File

@@ -397,7 +397,8 @@
}
}
#panel-info {
#panel-info,
#panel-rights {
padding: 0 30px;
table {
tr {

View File

@@ -39,6 +39,7 @@
return;
}
this.initControl();
Common.component.Analytics.initialize("UA-12442749-13", "Presentation Editor Mobile");
var api = this.api,
app = this.getApplication(),
profile = app.getCurrentProfile();

View File

@@ -18,154 +18,149 @@
overflow: hidden;
border: none;
background-color: #f4f4f4;
z-index: 20002;
z-index: 100;
}
.loadmask-body {
position:relative;
top:44%;
.loader-page {
top: 50%;
left: 50%;
width: 50px;
height: 180px;
position: absolute;
margin-top: -100px;
}
.loadmask-logo {
display: inline-block;
min-width:220px;
min-height:62px;
vertical-align: top;
background-image: url('./resources/img/loading-logo.gif');
background-image: -webkit-image-set(url('./resources/img/loading-logo.gif') 1x, url('./resources/img/loading-logo@2x.gif') 2x);
background-repeat: no-repeat;
.romb {
width: 40px;
height: 40px;
-webkit-transform: rotate(135deg) skew(20deg, 20deg);
-moz-transform: rotate(135deg) skew(20deg, 20deg);
-ms-transform: rotate(135deg) skew(20deg, 20deg);
-o-transform: rotate(135deg) skew(20deg, 20deg);
position: absolute;
background: red;
border-radius: 6px;
-webkit-animation: movedown 3s infinite ease;
-moz-animation: movedown 3s infinite ease;
-ms-animation: movedown 3s infinite ease;
-o-animation: movedown 3s infinite ease;
animation: movedown 3s infinite ease;
}
#blue {
z-index: 3;
background: #55bce6;
-webkit-animation-name: blue;
-moz-animation-name: blue;
-ms-animation-name: blue;
-o-animation-name: blue;
animation-name: blue;
}
#red {
z-index:1;
background: #de7a59;
-webkit-animation-name: red;
-moz-animation-name: red;
-ms-animation-name: red;
-o-animation-name: red;
animation-name: red;
}
#green {
z-index: 2;
background: #a1cb5c;
-webkit-animation-name: green;
-moz-animation-name: green;
-ms-animation-name: green;
-o-animation-name: green;
animation-name: green;
}
@-webkit-keyframes red {
0% { top:120px; background: #de7a59; }
10% { top:120px; background: #F2CBBF; }
14% { background: #f4f4f4; top:120px; }
15% { background: #f4f4f4; top:0;}
20% { background: #E6E4E4; }
30% { background: #D2D2D2; }
40% { top:120px; }
100% { top:120px; background: #de7a59; }
}
@keyframes red {
0% { top:120px; background: #de7a59; }
10% { top:120px; background: #F2CBBF; }
14% { background: #f4f4f4; top:120px; }
15% { background: #f4f4f4; top:0; }
20% { background: #E6E4E4; }
30% { background: #D2D2D2; }
40% { top:120px; }
100% { top:120px; background: #de7a59; }
}
@-webkit-keyframes green {
0% { top:110px; background: #a1cb5c; opacity:1; }
10% { top:110px; background: #CBE0AC; opacity:1; }
14% { background: #f4f4f4; top:110px; opacity:1; }
15% { background: #f4f4f4; top:0; opacity:1; }
20% { background: #f4f4f4; top:0; opacity:0; }
25% { background: #EFEFEF; top:0; opacity:1; }
30% { background:#E6E4E4; }
70% { top:110px; }
100% { top:110px; background: #a1cb5c; }
}
@keyframes green {
0% { top:110px; background: #a1cb5c; opacity:1; }
10% { top:110px; background: #CBE0AC; opacity:1; }
14% { background: #f4f4f4; top:110px; opacity:1; }
15% { background: #f4f4f4; top:0; opacity:1; }
20% { background: #f4f4f4; top:0; opacity:0; }
25% { background: #EFEFEF; top:0; opacity:1; }
30% { background:#E6E4E4; }
70% { top:110px; }
100% { top:110px; background: #a1cb5c; }
}
@-webkit-keyframes blue {
0% { top:100px; background: #55bce6; opacity:1; }
10% { top:100px; background: #BFE8F8; opacity:1; }
14% { background: #f4f4f4; top:100px; opacity:1; }
15% { background: #f4f4f4; top:0; opacity:1; }
20% { background: #f4f4f4; top:0; opacity:0; }
25% { background: #f4f4f4; top:0; opacity:0; }
45% { background: #EFEFEF; top:0; opacity:0,2; }
100% { top:100px; background: #55bce6; }
}
@keyframes blue {
0% { top:100px; background: #55bce6; opacity:1; }
10% { top:100px; background: #BFE8F8; opacity:1; }
14% { background: #f4f4f4; top:100px; opacity:1; }
15% { background: #f4f4f4; top:0; opacity:1; }
20% { background: #f4f4f4; top:0; opacity:0; }
25% { background: #fff; top:0; opacity:0; }
45% { background: #EFEFEF; top:0; opacity:0,2; }
100% { top:100px; background: #55bce6; }
}
</style>
<!--<script src="http://192.168.3.65:3030/target/target-script-min.js#anonymous"></script>-->
<!-- vendors -->
<script type="text/javascript" src="../../../vendor/touch/sencha-touch-debug.js"></script>
<script type="text/javascript" src="../../../vendor/jquery/jquery-1.7.1.min.js"></script>
<script type="text/javascript" src="../../../vendor/sockjs/sockjs-0.3.min.js"></script>
<script type="text/javascript" src="../../../vendor/xregexp/xregexp-all-min.js"></script>
<script type="text/javascript" src="../../../vendor/jquery/jquery.min.js"></script>
<script type="text/javascript" src="../../../vendor/sockjs/sockjs.min.js"></script>
<script type="text/javascript" src="../../../vendor/underscore/underscore-min.js"></script>
<script type="text/javascript" src="../../../vendor/megapixel/src/megapix-image.js"></script>
<script type="text/javascript" src="../../../vendor/xregexp/xregexp-all-min.js"></script>
<!-- Application -->
<script type="text/javascript" src="../../common/Analytics.js"></script>
<script type="text/javascript" src="../../common/Gateway.js"></script>
<script type="text/javascript" src="../../common/mobile/loader.js"></script>
<script type="text/javascript" src="app.js"></script>
<script type="text/javascript" src="../../common/locale.js"></script>
<!-- SDK -->
<script type="text/javascript" src="../../../sdk/Common/AllFonts.js"></script>
<script type="text/javascript" src="../../../sdk/Common/browser.js"></script>
<script type="text/javascript" src="../../../sdk/Common/docscoapisettings.js"></script>
<script type="text/javascript" src="../../../sdk/Common/docscoapicommon.js"></script>
<script type="text/javascript" src="../../../sdk/Common/docscoapi.js"></script>
<script type="text/javascript" src="../../../sdk/Common/wordcopypaste.js"></script>
<script type="text/javascript" src="../../../sdk/Common/downloaderfiles.js"></script>
<script type="text/javascript" src="../../../sdk/Common/editorscommon.js"></script>
<script type="text/javascript" src="../../../sdk/Common/apiCommon.js"></script>
<script type="text/javascript" src="../../../sdk/Common/Shapes/Serialize.js"></script>
<script type="text/javascript" src="../../../sdk/Common/Shapes/SerializeWriter.js"></script>
<script type="text/javascript" src="../../../sdk/Common/FontsFreeType/font_engine.js"></script>
<script type="text/javascript" src="../../../sdk/Common/FontsFreeType/FontFile.js"></script>
<script type="text/javascript" src="../../../sdk/Common/FontsFreeType/FontManager.js"></script>
<script type="text/javascript" src="../../../sdk/Word/Drawing/Externals.js"></script>
<script type="text/javascript" src="../../../sdk/Word/Drawing/GlobalLoaders.js"></script>
<script type="text/javascript" src="../../../sdk/Word/Drawing/Metafile.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Drawing/ThemeLoader.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/Format/Table.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/Format/CollaborativeEditing.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/Styles.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/Format/Table.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/Format/Paragraph.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/Format/FontClassification.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/Format/ParagraphContent.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/Format/Spelling.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/Format/Comments.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/GraphicObjects.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/States.js"></script>
<script type="text/javascript" src="../../../sdk/Common/Charts/DrawingObjects.js"></script>
<script type="text/javascript" src="../../../sdk/Common/commonDefines.js"></script>
<script type="text/javascript" src="../../../sdk/Common/SerializeCommonWordExcel.js"></script>
<script type="text/javascript" src="../../../sdk/Word/Editor/Serialize2.js"></script>
<script type="text/javascript" src="../../../sdk/Common/Charts/charts.js"></script>
<script type="text/javascript" src="../../../sdk/Excel/graphics/DrawingContextWord.js"></script>
<script type="text/javascript" src="../../../sdk/Common/trackFile.js"></script>
<script type="text/javascript" src="../../../sdk/Word/Editor/SerializeCommon.js"></script>
<script type="text/javascript" src="../../../sdk/Word/Drawing/GraphicsEvents.js"></script>
<script type="text/javascript" src="../../../sdk/Word/Drawing/WorkEvents.js"></script>
<script type="text/javascript" src="../../../sdk/Word/Drawing/Controls.js"></script>
<script type="text/javascript" src="../../../sdk/Word/Drawing/Rulers.js"></script>
<script type="text/javascript" src="../../../sdk/Word/Editor/Common.js"></script>
<script type="text/javascript" src="../../../sdk/Word/Editor/Sections.js"></script>
<script type="text/javascript" src="../../../sdk/Common/scroll.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/History.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/FlowObjects.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/Format/DocumentContent.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/Format/Presentation.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/SlideShowInfo.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/PresentationProperties.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/Format/Shape.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/Format/GraphicFrame.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/Numbering.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/TrackObjects/AdjustmentTracks.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/TrackObjects/MoveTracks.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/TrackObjects/NewShapeTracks.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/TrackObjects/PolyLine.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/TrackObjects/ResizeTracks.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/TrackObjects/RotateTracks.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/TrackObjects/Spline.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/Format/TextBody.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/Format/Image.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/Format/GroupShape.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/Format/ChartTitle.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/Format/Chart.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/Format/ChartLayout.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/Format/Slide.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/Format/SlideMaster.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/Format/Layout.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/Drawing/Geometry.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/Drawing/CreateGoemetry.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/Drawing/ColorArray.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/Drawing/Math.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/Drawing/Path.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/Drawing/ArcTo.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/Drawing/GraphicFigure.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/Drawing/Clone.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/Drawing/CImage.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/Drawing/Spline.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/Drawing/PolyLine.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/Drawing/Hit.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/Drawing/Joined.js"></script>
<script type="text/javascript" src="../../../sdk/Word/Drawing/Graphics.js"></script>
<script type="text/javascript" src="../../../sdk/Word/Drawing/Overlay.js"></script>
<script type="text/javascript" src="../../../sdk/Word/Drawing/HatchPattern.js"></script>
<script type="text/javascript" src="../../../sdk/Word/Drawing/ShapeDrawer.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Drawing/Transitions.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Drawing/DrawingDocument.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Drawing/HtmlPage.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/Editor/Format.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/apiDefines.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/api.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/apiCommon.js"></script>
<script type="text/javascript" src="../../../sdk/Common/Shapes/EditorSettings.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/themes/Themes.js"></script>
</head>
<body>
<!--<link rel="stylesheet" href="resources/css/application.css" type="text/css"/>-->
<script type="text/javascript">
if (!(Ext.browser.is.WebKit && (Ext.os.is.iOS || Ext.os.is.Android || Ext.os.is.Desktop))) {
document.write(
'<div id="unsuported-view-id" class="unsuported-view"></div>'
);
} else {
document.write(
'<div id="loading-mask" class="loadmask">' +
'<div class="loadmask-body" align="center">' +
'<div class="loadmask-logo"></div>' +
'</div>' +
'</div>');
}
var injectStyleElement = function(url) {
var style = document.createElement('link'),
documentHead = typeof document != 'undefined' && (document.head || document.getElementsByTagName('head')[0]);
@@ -182,11 +177,39 @@
return false;
};
injectStyleElement(
(window.devicePixelRatio > 1)
? 'resources/css/application-retina.css'
: 'resources/css/application-normal.css'
injectStyleElement((window.devicePixelRatio > 1)
? 'resources/css/application-retina.css'
: 'resources/css/application-normal.css'
);
</script>
<script type="text/javascript" src="../../common/Analytics.js"></script>
<script type="text/javascript" src="../../common/Gateway.js"></script>
<script type="text/javascript" src="../../common/mobile/loader.js"></script>
<script type="text/javascript" src="app.js"></script>
<script type="text/javascript" src="../../common/locale.js"></script>
<!-- SDK -->
<script type="text/javascript" src="../../../sdk/Common/AllFonts.js"></script>
<script type="text/javascript" src="../../../sdk/PowerPoint/sdk-all.js"></script>
</head>
<body>
<script type="text/javascript">
if (!(Ext.browser.is.WebKit && (Ext.os.is.iOS || Ext.os.is.Android || Ext.os.is.Desktop))) {
document.write(
'<div id="unsuported-view-id" class="unsuported-view"></div>'
);
} else {
document.write(
'<div id="loading-mask" class="loadmask">' +
'<div class="loader-page">' +
'<div class="romb" id="blue"></div>' +
'<div class="romb" id="green"></div>' +
'<div class="romb" id="red"></div>' +
'</div>' +
'</div>');
}
</script>
</body>
</html>