Merge branch 'feature/new-mobile' of https://github.com/ONLYOFFICE/web-apps into feature/new-mobile
This commit is contained in:
commit
93350b3c5d
|
@ -121,7 +121,7 @@ require([
|
|||
'DocumentHolder'
|
||||
, 'CellEditor'
|
||||
, 'Statusbar'
|
||||
// ,'Settings'
|
||||
,'Settings'
|
||||
// ,'EditContainer'
|
||||
// ,'EditText'
|
||||
// ,'EditParagraph'
|
||||
|
@ -191,7 +191,7 @@ require([
|
|||
'spreadsheeteditor/mobile/app/controller/DocumentHolder'
|
||||
, 'spreadsheeteditor/mobile/app/controller/CellEditor'
|
||||
, 'spreadsheeteditor/mobile/app/controller/Statusbar'
|
||||
// ,'documenteditor/mobile/app/controller/Settings'
|
||||
, 'spreadsheeteditor/mobile/app/controller/Settings'
|
||||
// ,'documenteditor/mobile/app/controller/edit/EditContainer'
|
||||
// ,'documenteditor/mobile/app/controller/edit/EditText'
|
||||
// ,'documenteditor/mobile/app/controller/edit/EditParagraph'
|
||||
|
|
|
@ -35,7 +35,7 @@
|
|||
* Settings.js
|
||||
* Document Editor
|
||||
*
|
||||
* Created by Alexander Yuzhin on 10/7/16
|
||||
* Created by Maxim Kadushkin on 12/05/2016
|
||||
* Copyright (c) 2016 Ascensio System SIA. All rights reserved.
|
||||
*
|
||||
*/
|
||||
|
@ -43,11 +43,11 @@
|
|||
|
||||
define([
|
||||
'core',
|
||||
'documenteditor/mobile/app/view/Settings'
|
||||
'spreadsheeteditor/mobile/app/view/Settings'
|
||||
], function (core) {
|
||||
'use strict';
|
||||
|
||||
DE.Controllers.Settings = Backbone.Controller.extend((function() {
|
||||
SSE.Controllers.Settings = Backbone.Controller.extend((function() {
|
||||
// private
|
||||
var rootView,
|
||||
inProgress,
|
||||
|
@ -62,26 +62,23 @@ define([
|
|||
],
|
||||
|
||||
initialize: function () {
|
||||
Common.SharedSettings.set('readerMode', false);
|
||||
Common.NotificationCenter.on('settingscontainer:show', _.bind(this.initEvents, this));
|
||||
|
||||
this.addListeners({
|
||||
'Settings': {
|
||||
'page:show' : this.onPageShow
|
||||
, 'settings:showhelp': function(e) {
|
||||
window.open('http://support.onlyoffice.com/', "_blank");
|
||||
this.hideModal();
|
||||
}
|
||||
}
|
||||
});
|
||||
},
|
||||
|
||||
setApi: function (api) {
|
||||
var me = this;
|
||||
me.api = api;
|
||||
|
||||
me.api.asc_registerCallback('asc_onGetDocInfoStart', _.bind(me._onApiGetDocInfoStart, me));
|
||||
me.api.asc_registerCallback('asc_onGetDocInfoStop', _.bind(me._onApiGetDocInfoEnd, me));
|
||||
me.api.asc_registerCallback('asc_onDocInfo', _.bind(me._onApiDocInfo, me));
|
||||
me.api.asc_registerCallback('asc_onGetDocInfoEnd', _.bind(me._onApiGetDocInfoEnd, me));
|
||||
me.api.asc_registerCallback('asc_onDocumentName', _.bind(me._onApiDocumentName, me));
|
||||
},
|
||||
// setApi: function (api) {
|
||||
// var me = this;
|
||||
// me.api = api;
|
||||
// },
|
||||
|
||||
onLaunch: function () {
|
||||
this.createView('Settings').render();
|
||||
|
@ -92,12 +89,6 @@ define([
|
|||
},
|
||||
|
||||
initEvents: function () {
|
||||
|
||||
|
||||
// $('#font-bold').single('click', _.bind(me.onBold, me));
|
||||
// $('#font-italic').single('click', _.bind(me.onItalic, me));
|
||||
// $('#font-underline').single('click', _.bind(me.onUnderline, me));
|
||||
// $('#font-strikethrough').single('click', _.bind(me.onStrikethrough, me));
|
||||
},
|
||||
|
||||
rootView : function() {
|
||||
|
@ -107,7 +98,7 @@ define([
|
|||
showModal: function() {
|
||||
if (Common.SharedSettings.get('phone')) {
|
||||
modalView = uiApp.popup(
|
||||
'<div class="popup container-settings">' +
|
||||
'<div class="popup settings container-settings">' +
|
||||
'<div class="content-block">' +
|
||||
'<div class="view settings-root-view navbar-through">' +
|
||||
this.getView('Settings').rootLayout() +
|
||||
|
@ -117,7 +108,7 @@ define([
|
|||
);
|
||||
} else {
|
||||
modalView = uiApp.popover(
|
||||
'<div class="popover container-settings">' +
|
||||
'<div class="popover settings container-settings">' +
|
||||
'<div class="popover-angle"></div>' +
|
||||
'<div class="popover-inner">' +
|
||||
'<div class="content-block">' +
|
||||
|
@ -153,72 +144,19 @@ define([
|
|||
onPageShow: function(view) {
|
||||
var me = this;
|
||||
$('#settings-search').single('click', _.bind(me._onSearch, me));
|
||||
$('#settings-readermode input:checkbox').single('change', _.bind(me._onReaderMode, me));
|
||||
$('#settings-edit-document').single('click', _.bind(me._onEditDocumet, me));
|
||||
$('#settings-edit-document').single('click', _.bind(me._onEditDocument, me));
|
||||
$(modalView).find('.formats a').single('click', _.bind(me._onSaveFormat, me));
|
||||
},
|
||||
|
||||
|
||||
// API handlers
|
||||
|
||||
_onApiGetDocInfoStart: function () {
|
||||
var me = this;
|
||||
inProgress = true;
|
||||
infoObj = {
|
||||
PageCount : 0,
|
||||
WordsCount : 0,
|
||||
ParagraphCount : 0,
|
||||
SymbolsCount : 0,
|
||||
SymbolsWSCount : 0
|
||||
};
|
||||
|
||||
_.defer(function(){
|
||||
if (!inProgress)
|
||||
return;
|
||||
|
||||
$('#statistic-pages').html(me.txtLoading);
|
||||
$('#statistic-words').html(me.txtLoading);
|
||||
$('#statistic-paragraphs').html(me.txtLoading);
|
||||
$('#statistic-symbols').html(me.txtLoading);
|
||||
$('#statistic-spaces').html(me.txtLoading);
|
||||
}, 2000);
|
||||
},
|
||||
|
||||
_onApiGetDocInfoEnd: function() {
|
||||
inProgress = false;
|
||||
|
||||
$('#statistic-pages').html(infoObj.PageCount);
|
||||
$('#statistic-words').html(infoObj.WordsCount);
|
||||
$('#statistic-paragraphs').html(infoObj.ParagraphCount);
|
||||
$('#statistic-symbols').html(infoObj.SymbolsCount);
|
||||
$('#statistic-spaces').html(infoObj.SymbolsWSCount);
|
||||
},
|
||||
|
||||
_onApiDocInfo: function(obj) {
|
||||
if (obj) {
|
||||
if (obj.get_PageCount() > -1)
|
||||
infoObj.PageCount = obj.get_PageCount();
|
||||
if (obj.get_WordsCount() > -1)
|
||||
infoObj.WordsCount = obj.get_WordsCount();
|
||||
if (obj.get_ParagraphCount() > -1)
|
||||
infoObj.ParagraphCount = obj.get_ParagraphCount();
|
||||
if (obj.get_SymbolsCount() > -1)
|
||||
infoObj.SymbolsCount = obj.get_SymbolsCount();
|
||||
if (obj.get_SymbolsWSCount() > -1)
|
||||
infoObj.SymbolsWSCount = obj.get_SymbolsWSCount();
|
||||
}
|
||||
},
|
||||
|
||||
_onApiDocumentName: function(name) {
|
||||
$('#settings-document-title').html(name ? name : '-');
|
||||
},
|
||||
|
||||
_onEditDocumet: function() {
|
||||
_onEditDocument: function() {
|
||||
Common.Gateway.requestEditRights();
|
||||
},
|
||||
|
||||
_onSearch: function (e) {
|
||||
var toolbarView = DE.getController('Toolbar').getView('Toolbar');
|
||||
var toolbarView = SSE.getController('Toolbar').getView('Toolbar');
|
||||
|
||||
if (toolbarView) {
|
||||
toolbarView.showSearch();
|
||||
|
@ -227,22 +165,6 @@ define([
|
|||
this.hideModal();
|
||||
},
|
||||
|
||||
_onReaderMode: function (e) {
|
||||
var me = this;
|
||||
|
||||
Common.SharedSettings.set('readerMode', !Common.SharedSettings.get('readerMode'));
|
||||
|
||||
me.api && me.api.ChangeReaderMode();
|
||||
|
||||
if (Common.SharedSettings.get('phone')) {
|
||||
_.defer(function () {
|
||||
me.hideModal();
|
||||
}, 1000);
|
||||
}
|
||||
|
||||
Common.NotificationCenter.trigger('readermode:change', Common.SharedSettings.get('readerMode'));
|
||||
},
|
||||
|
||||
_onSaveFormat: function(e) {
|
||||
var me = this,
|
||||
format = $(e.currentTarget).data('format');
|
||||
|
|
|
@ -2,8 +2,8 @@
|
|||
<div id="settings-root-view">
|
||||
<div class="navbar">
|
||||
<div class="navbar-inner">
|
||||
<div class="center sliding">Settings</div>
|
||||
<div class="right"><% if (phone) { %><a href="#" class="link close-popup">Done</a><% } %></div>
|
||||
<div class="center sliding"><%= scope.textSettings %></div>
|
||||
<div class="right"><% if (phone) { %><a href="#" class="link close-popup"><%= scope.textDone %></a><% } %></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="pages">
|
||||
|
@ -11,18 +11,20 @@
|
|||
<div class="page-content">
|
||||
<div class="list-block">
|
||||
<ul>
|
||||
<!--<li>-->
|
||||
<!--<a id="settings-search" class="item-link no-indicator">-->
|
||||
<!--<div class="item-content">-->
|
||||
<!--<div class="item-media">-->
|
||||
<!--<i class="icon icon-search"></i>-->
|
||||
<!--</div>-->
|
||||
<!--<div class="item-inner">-->
|
||||
<!--<div class="item-title">Search</div>-->
|
||||
<!--</div>-->
|
||||
<!--</div>-->
|
||||
<!--</a>-->
|
||||
<!--</li>-->
|
||||
<% if (phone) { %>
|
||||
<li>
|
||||
<a id="settings-search" class="item-link no-indicator">
|
||||
<div class="item-content">
|
||||
<div class="item-media">
|
||||
<i class="icon icon-search"></i>
|
||||
</div>
|
||||
<div class="item-inner">
|
||||
<div class="item-title"><%= scope.textFind %></div>
|
||||
</div>
|
||||
</div>
|
||||
</a>
|
||||
</li>
|
||||
<% } %>
|
||||
<li>
|
||||
<a id="settings-edit-document" class="item-link no-indicator">
|
||||
<div class="item-content">
|
||||
|
@ -30,27 +32,11 @@
|
|||
<i class="icon icon-edit"></i>
|
||||
</div>
|
||||
<div class="item-inner">
|
||||
<div class="item-title">Edit Document</div>
|
||||
<div class="item-title"><%= scope.textEditDoc %></div>
|
||||
</div>
|
||||
</div>
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<div id="settings-readermode" class="item-content">
|
||||
<div class="item-media">
|
||||
<i class="icon icon-reader"></i>
|
||||
</div>
|
||||
<div class="item-inner">
|
||||
<div class="item-title">Reader Mode</div>
|
||||
<div class="item-after">
|
||||
<label class="label-switch">
|
||||
<input type="checkbox">
|
||||
<div class="checkbox"></div>
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
<li>
|
||||
<a id="settings-download" class="item-link">
|
||||
<div class="item-content">
|
||||
|
@ -58,7 +44,7 @@
|
|||
<i class="icon icon-download"></i>
|
||||
</div>
|
||||
<div class="item-inner">
|
||||
<div class="item-title">Download</div>
|
||||
<div class="item-title"><%= scope.textDownload %></div>
|
||||
</div>
|
||||
</div>
|
||||
</a>
|
||||
|
@ -70,7 +56,7 @@
|
|||
<i class="icon icon-info"></i>
|
||||
</div>
|
||||
<div class="item-inner">
|
||||
<div class="item-title">Document Info</div>
|
||||
<div class="item-title"><%= scope.textDocInfo %></div>
|
||||
</div>
|
||||
</div>
|
||||
</a>
|
||||
|
@ -94,7 +80,7 @@
|
|||
<i class="icon icon-help"></i>
|
||||
</div>
|
||||
<div class="item-inner">
|
||||
<div class="item-title">Help</div>
|
||||
<div class="item-title"><%= scope.textHelp %></div>
|
||||
</div>
|
||||
</div>
|
||||
</a>
|
||||
|
@ -106,7 +92,7 @@
|
|||
<i class="icon icon-about"></i>
|
||||
</div>
|
||||
<div class="item-inner">
|
||||
<div class="item-title">About</div>
|
||||
<div class="item-title"><%= scope.textAbout %></div>
|
||||
</div>
|
||||
</div>
|
||||
</a>
|
||||
|
@ -124,79 +110,41 @@
|
|||
<div class="navbar-inner">
|
||||
<div class="left sliding">
|
||||
<a href="#" class="back link">
|
||||
<i class="icon icon-back"></i>
|
||||
<% if (!android) { %>
|
||||
<span>Back</span>
|
||||
<% } %>
|
||||
<i class="icon icon-back"></i><% if (!android) { %><span><%= scope.textBack %></span><% } %>
|
||||
</a>
|
||||
</div>
|
||||
<div class="center sliding">Document Info</div>
|
||||
<div class="center sliding"><%= scope.textDocInfo %></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="pages">
|
||||
<div class="page" data-page="settings-info-view">
|
||||
<div class="page-content">
|
||||
<div class="content-block-title">Document title</div>
|
||||
<div class="content-block-title"><%= scope.textDocTitle %></div>
|
||||
<div class="list-block">
|
||||
<ul>
|
||||
<li class="item-content">
|
||||
<div class="item-inner">
|
||||
<div id="settings-document-title" class="item-title">Loading...</div>
|
||||
<div id="settings-document-title" class="item-title"><%= scope.textLoading %></div>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="content-block-title">Author</div>
|
||||
<div class="content-block-title"><%= scope.textAuthor %></div>
|
||||
<div class="list-block">
|
||||
<ul>
|
||||
<li class="item-content">
|
||||
<div class="item-inner">
|
||||
<div id="settings-document-autor" class="item-title">Loading...</div>
|
||||
<div id="settings-document-autor" class="item-title"><%= scope.textLoading %></div>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="content-block-title">Create date</div>
|
||||
<div class="content-block-title"><%= scope.textCreateDate %></div>
|
||||
<div class="list-block">
|
||||
<ul>
|
||||
<li class="item-content">
|
||||
<div class="item-inner">
|
||||
<div id="settings-document-date" class="item-title">Loading...</div>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="content-block-title">Statistic</div>
|
||||
<div class="list-block">
|
||||
<ul>
|
||||
<li class="item-content">
|
||||
<div class="item-inner">
|
||||
<div class="item-title">Pages</div>
|
||||
<div class="item-after" id="statistic-pages">0</div>
|
||||
</div>
|
||||
</li>
|
||||
<li class="item-content">
|
||||
<div class="item-inner">
|
||||
<div class="item-title">Paragraphs</div>
|
||||
<div class="item-after" id="statistic-paragraphs">0</div>
|
||||
</div>
|
||||
</li>
|
||||
<li class="item-content">
|
||||
<div class="item-inner">
|
||||
<div class="item-title">Words</div>
|
||||
<div class="item-after" id="statistic-words">0</div>
|
||||
</div>
|
||||
</li>
|
||||
<li class="item-content">
|
||||
<div class="item-inner">
|
||||
<div class="item-title">Symbols</div>
|
||||
<div class="item-after" id="statistic-symbols">0</div>
|
||||
</div>
|
||||
</li>
|
||||
<li class="item-content">
|
||||
<div class="item-inner">
|
||||
<div class="item-title">Spaces</div>
|
||||
<div class="item-after" id="statistic-spaces">0</div>
|
||||
<div id="settings-document-date" class="item-title"><%= scope.textLoading %></div>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
|
@ -212,35 +160,35 @@
|
|||
<div class="navbar-inner">
|
||||
<div class="left sliding">
|
||||
<a href="#" class="back link">
|
||||
<i class="icon icon-back"></i><% if (!android) { %><span>Back</span><% } %>
|
||||
<i class="icon icon-back"></i><% if (!android) { %><span><%= scope.textBack %></span><% } %>
|
||||
</a>
|
||||
</div>
|
||||
<div class="center sliding">Download</div>
|
||||
<div class="center sliding"><%= scope.textDownload %></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="pages">
|
||||
<div class="page formats" data-page="settings-download-view">
|
||||
<div class="page-content">
|
||||
<div class="content-block-title">Download As...</div>
|
||||
<div class="content-block-title"><%= scope.textDownloadAs %></div>
|
||||
<div class="list-block">
|
||||
<ul>
|
||||
<li>
|
||||
<a data-format="65" class="item-link no-indicator">
|
||||
<a data-format="<%= saveas.xlsx %>" class="item-link no-indicator">
|
||||
<div class="item-content">
|
||||
<div class="item-media">
|
||||
<i class="icon icon-search"></i>
|
||||
<i class="icon icon-format-xlsx"></i>
|
||||
</div>
|
||||
<div class="item-inner">
|
||||
<div class="item-title">DOCX</div>
|
||||
<div class="item-title">XLSX</div>
|
||||
</div>
|
||||
</div>
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a data-format="513" class="item-link no-indicator">
|
||||
<a data-format="<%= saveas.pdf %>" class="item-link no-indicator">
|
||||
<div class="item-content">
|
||||
<div class="item-media">
|
||||
<i class="icon icon-search"></i>
|
||||
<i class="icon icon-format-pdf"></i>
|
||||
</div>
|
||||
<div class="item-inner">
|
||||
<div class="item-title">PDF</div>
|
||||
|
@ -249,37 +197,25 @@
|
|||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a data-format="69" class="item-link no-indicator">
|
||||
<a data-format="<%= saveas.ods %>" class="item-link no-indicator">
|
||||
<div class="item-content">
|
||||
<div class="item-media">
|
||||
<i class="icon icon-search"></i>
|
||||
<i class="icon icon-format-ods"></i>
|
||||
</div>
|
||||
<div class="item-inner">
|
||||
<div class="item-title">TXT</div>
|
||||
<div class="item-title">ODS</div>
|
||||
</div>
|
||||
</div>
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a data-format="67" class="item-link no-indicator">
|
||||
<a data-format="<%= saveas.csv %>" class="item-link no-indicator">
|
||||
<div class="item-content">
|
||||
<div class="item-media">
|
||||
<i class="icon icon-search"></i>
|
||||
<i class="icon icon-format-CSV"></i>
|
||||
</div>
|
||||
<div class="item-inner">
|
||||
<div class="item-title">ODT</div>
|
||||
</div>
|
||||
</div>
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a data-format="2051" class="item-link no-indicator">
|
||||
<div class="item-content">
|
||||
<div class="item-media">
|
||||
<i class="icon icon-search"></i>
|
||||
</div>
|
||||
<div class="item-inner">
|
||||
<div class="item-title">HTML</div>
|
||||
<div class="item-title">CSV</div>
|
||||
</div>
|
||||
</div>
|
||||
</a>
|
||||
|
@ -297,10 +233,7 @@
|
|||
<div class="navbar-inner">
|
||||
<div class="left sliding">
|
||||
<a href="#" class="back link">
|
||||
<i class="icon icon-back"></i>
|
||||
<% if (!android) { %>
|
||||
<span>Back</span>
|
||||
<% } %>
|
||||
<i class="icon icon-back"></i><% if (!android) { %><span><%= scope.textBack %></span><% } %>
|
||||
</a>
|
||||
</div>
|
||||
<div class="center sliding">Version History</div>
|
||||
|
@ -326,13 +259,10 @@
|
|||
<div class="navbar-inner">
|
||||
<div class="left sliding">
|
||||
<a href="#" class="back link">
|
||||
<i class="icon icon-back"></i>
|
||||
<% if (!android) { %>
|
||||
<span>Back</span>
|
||||
<% } %>
|
||||
<i class="icon icon-back"></i><% if (!android) { %><span><%= scope.textBack %></span><% } %>
|
||||
</a>
|
||||
</div>
|
||||
<div class="center sliding">About</div>
|
||||
<div class="center sliding"><%= scope.textAbout %></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="pages">
|
||||
|
@ -343,13 +273,13 @@
|
|||
</div>
|
||||
<div class="content-block">
|
||||
<h3>DOCUMENT EDITOR</h3>
|
||||
<h3>Version 4.1</h3>
|
||||
<h3><%= scope.textVersion %> 4.2</h3>
|
||||
</div>
|
||||
<div class="content-block">
|
||||
<h3 class="vendor">Ascensio System SIA</h3>
|
||||
<p><label>address:</label><a class="external" href="#">Lubanas st. 125a-25, Riga, Latvia, EU, LV-1021</a></p>
|
||||
<p><label>email:</label><a class="external" target="_blank" href="mailto:support@onlyoffice.com">support@onlyoffice.com</a></p>
|
||||
<p><label>tel:</label><a class="external" target="_blank" href="tel:+371 660-16425">+371 660-16425</a></p>
|
||||
<p><label><%= scope.textAddress %>:</label><a class="external" href="#">Lubanas st. 125a-25, Riga, Latvia, EU, LV-1021</a></p>
|
||||
<p><label><%= scope.textEmail %>:</label><a class="external" target="_blank" href="mailto:support@onlyoffice.com">support@onlyoffice.com</a></p>
|
||||
<p><label><%= scope.textTel %>:</label><a class="external" target="_blank" href="tel:+371 660-16425">+371 660-16425</a></p>
|
||||
<p><a class="external" target="_blank" href="http://www.onlyoffice.com">www.onlyoffice.com</a></p>
|
||||
</div>
|
||||
</div>
|
||||
|
|
212
apps/spreadsheeteditor/mobile/app/view/Settings.js
Normal file
212
apps/spreadsheeteditor/mobile/app/view/Settings.js
Normal file
|
@ -0,0 +1,212 @@
|
|||
/*
|
||||
*
|
||||
* (c) Copyright Ascensio System Limited 2010-2016
|
||||
*
|
||||
* This program is a free software product. You can redistribute it and/or
|
||||
* modify it under the terms of the GNU Affero General Public License (AGPL)
|
||||
* version 3 as published by the Free Software Foundation. In accordance with
|
||||
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
|
||||
* that Ascensio System SIA expressly excludes the warranty of non-infringement
|
||||
* of any third-party rights.
|
||||
*
|
||||
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
|
||||
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
|
||||
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
|
||||
*
|
||||
* You can contact Ascensio System SIA at Lubanas st. 125a-25, Riga, Latvia,
|
||||
* EU, LV-1021.
|
||||
*
|
||||
* The interactive user interfaces in modified source and object code versions
|
||||
* of the Program must display Appropriate Legal Notices, as required under
|
||||
* Section 5 of the GNU AGPL version 3.
|
||||
*
|
||||
* Pursuant to Section 7(b) of the License you must retain the original Product
|
||||
* logo when distributing the program. Pursuant to Section 7(e) we decline to
|
||||
* grant you any rights under trademark law for use of our trademarks.
|
||||
*
|
||||
* All the Product's GUI elements, including illustrations and icon sets, as
|
||||
* well as technical writing content are licensed under the terms of the
|
||||
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
|
||||
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
|
||||
*
|
||||
*/
|
||||
|
||||
/**
|
||||
* Settings.js
|
||||
* Document Editor
|
||||
*
|
||||
* Created by Maxim Kadushkin on 12/05/2016
|
||||
* Copyright (c) 2016 Ascensio System SIA. All rights reserved.
|
||||
*
|
||||
*/
|
||||
|
||||
define([
|
||||
'text!spreadsheeteditor/mobile/app/template/Settings.template',
|
||||
'jquery',
|
||||
'underscore',
|
||||
'backbone'
|
||||
], function (settingsTemplate, $, _, Backbone) {
|
||||
'use strict';
|
||||
|
||||
SSE.Views.Settings = Backbone.View.extend(_.extend((function() {
|
||||
// private
|
||||
var isEdit;
|
||||
|
||||
return {
|
||||
// el: '.view-main',
|
||||
|
||||
template: _.template(settingsTemplate),
|
||||
|
||||
events: {
|
||||
//
|
||||
},
|
||||
|
||||
initialize: function() {
|
||||
Common.NotificationCenter.on('settingscontainer:show', _.bind(this.initEvents, this));
|
||||
|
||||
Common.Gateway.on('opendocument', _.bind(this.loadDocument, this));
|
||||
},
|
||||
|
||||
initEvents: function () {
|
||||
var me = this;
|
||||
|
||||
$('#settings-document-info').single('click', _.bind(me.showDocumentInfo, me));
|
||||
$('#settings-download').single('click', _.bind(me.showDownload, me));
|
||||
$('#settings-history').single('click', _.bind(me.showHistory, me));
|
||||
$('#settings-help').single('click', _.bind(me.showHelp, me));
|
||||
$('#settings-about').single('click', _.bind(me.showAbout, me));
|
||||
|
||||
me.initControls();
|
||||
},
|
||||
|
||||
// Render layout
|
||||
render: function() {
|
||||
this.layout = $('<div/>').append(this.template({
|
||||
android : Common.SharedSettings.get('android'),
|
||||
phone : Common.SharedSettings.get('phone'),
|
||||
scope : this
|
||||
, saveas: {
|
||||
xlsx: Asc.c_oAscFileType.XLSX,
|
||||
pdf: Asc.c_oAscFileType.PDF,
|
||||
ods: Asc.c_oAscFileType.ODS,
|
||||
csv: Asc.c_oAscFileType.CSV
|
||||
}
|
||||
}));
|
||||
|
||||
return this;
|
||||
},
|
||||
|
||||
setMode: function (mode) {
|
||||
isEdit = (mode === 'edit')
|
||||
},
|
||||
|
||||
rootLayout: function () {
|
||||
if (this.layout) {
|
||||
var $layout = this.layout.find('#settings-root-view'),
|
||||
isPhone = Common.SharedSettings.get('phone');
|
||||
|
||||
if (isEdit) {
|
||||
$layout.find('#settings-edit-document').hide();
|
||||
$layout.find('#settings-search .item-title').text(this.textFindAndReplace)
|
||||
} else {
|
||||
}
|
||||
|
||||
return $layout.html();
|
||||
}
|
||||
|
||||
return '';
|
||||
},
|
||||
|
||||
initControls: function() {
|
||||
//
|
||||
},
|
||||
|
||||
showPage: function(templateId) {
|
||||
var rootView = SSE.getController('Settings').rootView();
|
||||
|
||||
if (rootView && this.layout) {
|
||||
var $content = this.layout.find(templateId);
|
||||
|
||||
// Android fix for navigation
|
||||
if (Framework7.prototype.device.android) {
|
||||
$content.find('.page').append($content.find('.navbar'));
|
||||
}
|
||||
|
||||
rootView.router.load({
|
||||
content: $content.html()
|
||||
});
|
||||
|
||||
this.fireEvent('page:show', this);
|
||||
}
|
||||
},
|
||||
|
||||
showDocumentInfo: function() {
|
||||
this.showPage('#settings-info-view');
|
||||
|
||||
var document = Common.SharedSettings.get('document') || {},
|
||||
info = document.info || {};
|
||||
|
||||
$('#settings-document-title').html(document.title ? document.title : this.unknownText);
|
||||
$('#settings-document-autor').html(info.author ? info.author : this.unknownText);
|
||||
$('#settings-document-date').html(info.created ? info.created : this.unknownText);
|
||||
},
|
||||
|
||||
showDownload: function () {
|
||||
this.showPage('#settings-download-view');
|
||||
},
|
||||
|
||||
showHistory: function () {
|
||||
this.showPage('#settings-history-view');
|
||||
},
|
||||
|
||||
showHelp: function () {
|
||||
this.fireEvent('settings:showhelp');
|
||||
},
|
||||
|
||||
showAbout: function () {
|
||||
this.showPage('#settings-about-view');
|
||||
},
|
||||
|
||||
loadDocument: function(data) {
|
||||
var permissions = {};
|
||||
|
||||
if (data.doc) {
|
||||
permissions = _.extend(permissions, data.doc.permissions);
|
||||
|
||||
if (permissions.edit === false) {
|
||||
$('#settings-edit-document').hide();
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
unknownText: 'Unknown',
|
||||
textFindAndReplace: 'Find and Replace',
|
||||
textSettings: 'Settings',
|
||||
textDone: 'Done',
|
||||
textFind: 'Find',
|
||||
textEditDoc: 'Edit Document',
|
||||
textReader: 'Reader Mode',
|
||||
textDownload: 'Download',
|
||||
textDocInfo: 'Document Info',
|
||||
textHelp: 'Help',
|
||||
textAbout: 'About',
|
||||
textBack: 'Back',
|
||||
textDocTitle: 'Document title',
|
||||
textLoading: 'Loading...',
|
||||
textAuthor: 'Author',
|
||||
textCreateDate: 'Create date',
|
||||
textStatistic: 'Statistic',
|
||||
textPages: 'Pages',
|
||||
textParagraphs: 'Paragraphs',
|
||||
textWords: 'Words',
|
||||
textSymbols: 'Symbols',
|
||||
textSpaces: 'Spaces',
|
||||
textDownloadAs: 'Download As...',
|
||||
textVersion: 'Version',
|
||||
textAddress: 'address',
|
||||
textEmail: 'email',
|
||||
textTel: 'tel'
|
||||
|
||||
}
|
||||
})(), SSE.Views.Settings || {}))
|
||||
});
|
|
@ -68,15 +68,6 @@ define([
|
|||
// Set innerHTML and get the references to the DOM elements
|
||||
initialize: function() {
|
||||
var me = this;
|
||||
|
||||
Common.NotificationCenter.on('readermode:change', function (reader) {
|
||||
if (reader) {
|
||||
me.hideSearch();
|
||||
$('#toolbar-search').addClass('disabled');
|
||||
} else {
|
||||
$('#toolbar-search').removeClass('disabled');
|
||||
}
|
||||
});
|
||||
},
|
||||
|
||||
// Render layout
|
||||
|
@ -144,7 +135,7 @@ define([
|
|||
|
||||
// Settings
|
||||
showSettings: function () {
|
||||
// SSE.getController('Settings').showModal();
|
||||
SSE.getController('Settings').showModal();
|
||||
}
|
||||
}
|
||||
})(), SSE.Views.Toolbar || {}))
|
||||
|
|
Loading…
Reference in a new issue