init repo

This commit is contained in:
nikolay ivanov
2014-07-05 18:22:49 +00:00
commit a8be6b9e72
17348 changed files with 9229832 additions and 0 deletions

View File

@@ -0,0 +1,65 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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
*
*/
Ext.define("SSE.controller.ApiEvents", {
mixins: {
observable: "Ext.mixin.Observable"
},
view: undefined,
widget: undefined,
element: undefined,
handlers: undefined,
settings: undefined,
enableKeyEvents: false,
isSelectMode: false,
hasCursor: false,
constructor: function (config) {
this.initConfig(config);
this.callParent(arguments);
return this;
},
init: function (view, widgetElem, canvasElem, handlers, settings) {
this.view = view;
this.widget = widgetElem;
this.element = canvasElem;
this.handlers = new window.Asc.asc_CHandlersList(handlers);
this.settings = $.extend(true, {},
this.defaults, settings);
return this;
},
destroy: function () {
$(window).off("." + this.namespace);
return this;
},
enableKeyEventsHandler: function (f) {
this.enableKeyEvents = !!f;
}
});

View File

@@ -0,0 +1,94 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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
*
*/
Ext.define("SSE.controller.Document", {
extend: "Ext.app.Controller",
config: {
refs: {},
control: {
"#id-btn-zoom-in": {
tap: "onZoomIn"
},
"#id-btn-zoom-out": {
tap: "onZoomOut"
}
}
},
_currZoom: 1,
_baseZoom: 1,
_maxZoom: 2,
_incrementZoom: 0.05,
init: function () {},
launch: function () {},
setApi: function (o) {
this.api = o;
if (this.api) {
this.api.asc_registerCallback("asc_onDoubleTapEvent", Ext.bind(this._onDoubleTapDocument, this));
this.api.asc_registerCallback("asc_onStartAction", Ext.bind(this._onLongActionBegin, this));
this.api.asc_registerCallback("asc_onEndAction", Ext.bind(this._onLongActionEnd, this));
}
},
_onLongActionBegin: function (type, id) {},
_onLongActionEnd: function (type, id) {
if (type === c_oAscAsyncActionType["BlockInteraction"]) {
switch (id) {
case c_oAscAsyncAction["Open"]:
var i = this.api.asc_getActiveWorksheetIndex();
this.api.asc_showWorksheet(i);
break;
}
}
},
_onDoubleTapDocument: function () {
if (this.api) {
if (this._currZoom != this._baseZoom) {
this._currZoom = this._baseZoom;
} else {
this._currZoom = this._maxZoom;
}
this.api.asc_setZoom(this._currZoom);
}
},
onZoomIn: function (event, node, opt) {
this._currZoom += this._incrementZoom;
if (this._currZoom > this._maxZoom) {
this._currZoom = this._maxZoom;
}
this.api.asc_setZoom(this._currZoom);
},
onZoomOut: function (event, node, opt) {
this._currZoom -= this._incrementZoom;
if (this._currZoom < this._baseZoom) {
this._currZoom = this._baseZoom;
}
this.api.asc_setZoom(this._currZoom);
}
});

View File

@@ -0,0 +1,297 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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
*
*/
Ext.define("SSE.controller.Main", {
extend: "Ext.app.Controller",
editMode: false,
requires: ["Ext.Anim", "Ext.MessageBox", "SSE.controller.ApiEvents", "SSE.view.OpenCsvPanel"],
config: {
refs: {
mainView: "semainview"
}
},
launch: function () {
if (!this._isSupport()) {
Common.Gateway.reportError(undefined, this.unsupportedBrowserErrorText);
return;
}
this.initControl();
Common.component.Analytics.initialize("UA-12442749-13", "Spreadsheet Mobile");
var app = this.getApplication();
this.api = new Asc.spreadsheet_api("id-sdkeditor", "", SSE.controller.ApiEvents, {},
{});
this.api.asc_Init("../../../sdk/Fonts/");
this.api.asc_setMobileVersion(true);
this.api.asc_registerCallback("asc_onAdvancedOptions", Ext.bind(this.onAdvancedOptions, this));
this.api.asc_registerCallback("asc_onOpenDocumentProgress", Ext.bind(this.onOpenDocumentProgress, this));
this.api.asc_registerCallback("asc_onEndAction", Ext.bind(this.onLongActionEnd, this));
this.api.asc_registerCallback("asc_onError", Ext.bind(this.onError, this));
this.api.asc_registerCallback("asc_onSaveUrl", Ext.bind(this.onSaveUrl, this));
this.api.asc_registerCallback("asc_onGetEditorPermissions", Ext.bind(this.onEditorPermissions, this));
Ext.each(app.getControllers(), function (controllerName) {
var controller = app.getController(controllerName);
controller && Ext.isFunction(controller.setApi) && controller.setApi(this.api);
},
this);
this.initApi();
this.editorConfig = {};
Common.Gateway.on("init", Ext.bind(this.loadConfig, this));
Common.Gateway.on("opendocument", Ext.bind(this.loadDocument, this));
Common.Gateway.on("showmessage", Ext.bind(this.onExternalMessage, this));
Common.Gateway.on("processsaveresult", Ext.bind(this.onProcessSaveResult, this));
Common.Gateway.ready();
},
initControl: function () {},
initApi: function () {},
loadConfig: function (data) {
this.editorConfig = Ext.merge(this.editorConfig, data.config);
if ((this.editorConfig.user === undefined || this.editorConfig.user === null)) {
this.editorConfig.user = {};
if (this.editorConfig.users) {
this.editorConfig.userId = this.editorConfig.userId || 0;
for (var i = 0; i < this.editorConfig.users.length; i++) {
if (this.editorConfig.users[i].id === this.editorConfig.userId) {
this.editorConfig.user = {
id: this.editorConfig.users[i].id,
name: this.editorConfig.users[i].username
};
break;
}
}
}
}
this.editorConfig.user.id = this.editorConfig.user.id || ("uid-" + Ext.Date.now());
this.editorConfig.user.name = this.editorConfig.user.name || this.textAnonymous;
},
loadDocument: function (data) {
if (data.doc) {
this.permissions = data.doc.permissions;
var docInfo = {
Id: data.doc.key,
Url: data.doc.url,
Title: data.doc.title,
Format: data.doc.fileType,
Options: data.doc.options,
VKey: data.doc.vkey,
Origin: data.doc.origin,
UserId: this.editorConfig.user.id,
UserName: this.editorConfig.user.name
};
this.api.asc_setDocInfo(docInfo);
this.api.asc_getEditorPermissions();
Common.component.Analytics.trackEvent("Load", "Start");
}
},
onEditorPermissions: function (params) {
this.permissions.edit !== false && (this.permissions.edit = params.asc_getCanEdit());
var modeEdit = this.permissions.edit === true && this.editorConfig.mode !== "view";
this.api.asc_setViewerMode(modeEdit);
this.api.asc_LoadDocument();
var profileName = this.getApplication().getCurrentProfile().getName();
this.getApplication().getController(profileName + ".Main").setMode(modeEdit);
},
goBack: function () {
Common.Gateway.goBack();
},
onError: function (id, level) {
this._hideLoadSplash();
var config = {
closable: false
};
switch (id) {
case c_oAscError.ID.Unknown:
config.message = this.unknownErrorText;
break;
case c_oAscError.ID.ConvertationTimeout:
config.message = this.convertationTimeoutText;
break;
case c_oAscError.ID.ConvertationError:
config.message = this.convertationErrorText;
break;
case c_oAscError.ID.DownloadError:
config.message = this.downloadErrorText;
break;
case c_oAscError.ID.UplImageSize:
config.message = this.uploadImageSizeMessage;
break;
case c_oAscError.ID.UplImageExt:
config.message = this.uploadImageExtMessage;
break;
case c_oAscError.ID.UplImageFileCount:
config.message = this.uploadImageFileCountMessage;
break;
case c_oAscError.ID.VKeyEncrypt:
config.msg = this.errorKeyEncrypt;
break;
case c_oAscError.ID.KeyExpire:
config.msg = this.errorKeyExpire;
break;
case c_oAscError.ID.UserCountExceed:
config.msg = this.errorUsersExceed;
break;
default:
config.message = this.errorDefaultMessage.replace("%1", id);
break;
}
if (level == c_oAscError.Level.Critical) {
Common.Gateway.reportError(id, config.message);
config.title = this.criticalErrorTitle;
config.message += "<br/>" + this.criticalErrorExtText;
config.buttons = Ext.Msg.OK;
config.fn = function (btn) {
if (btn == "ok") {
window.location.reload();
}
};
} else {
config.title = this.notcriticalErrorTitle;
config.buttons = Ext.Msg.OK;
config.fn = Ext.emptyFn;
}
Ext.Msg.show(config);
},
onSaveUrl: function (url) {
Common.Gateway.save(url);
},
onExternalMessage: function (msg) {
if (msg) {
this._hideLoadSplash();
Ext.Msg.show({
title: msg.title,
msg: "<br/>" + msg.msg,
icon: Ext.Msg[msg.severity.toUpperCase()],
buttons: Ext.Msg.OK
});
Common.component.Analytics.trackEvent("External Error", msg.title);
}
},
onAdvancedOptions: function (advOptions) {
if (advOptions.asc_getOptionId() == c_oAscAdvancedOptionsID["CSV"]) {
var preloader = Ext.get("loading-mask"),
me = this;
Ext.Anim.run(preloader, "slide", {
out: true,
direction: "up",
duration: 250,
after: function () {
preloader.hide();
}
});
var viewAdvOptionsCsv = Ext.Viewport.add({
xtype: "seopencsvpanel",
left: 0,
top: 0,
width: "100%",
height: "100%"
});
Ext.Anim.run(viewAdvOptionsCsv, "slide", {
out: false,
direction: "up",
duration: 1000
});
viewAdvOptionsCsv.on("close", Ext.bind(function (panel, result) {
preloader.show();
Ext.Anim.run(preloader, "slide", {
out: false,
direction: "down",
duration: 1000
});
Ext.Anim.run(viewAdvOptionsCsv, "slide", {
out: true,
direction: "down",
duration: 1000,
after: function () {
Ext.Viewport.remove(viewAdvOptionsCsv);
if (me.api) {
me.api.asc_setAdvancedOptions(c_oAscAdvancedOptionsID["CSV"], new Asc.asc_CCSVAdvancedOptions(result.encoding, result.delimiter));
}
}
});
},
this));
}
},
onOpenDocumentProgress: function (progress) {
var elem = document.getElementById("loadmask-text");
if (elem) {
var proc = (progress["CurrentFont"] + progress["CurrentImage"]) / (progress["FontsCount"] + progress["ImagesCount"]);
elem.innerHTML = this.textLoadingDocument + ": " + Math.round(proc * 100) + "%";
}
},
onOpenDocument: function () {
this._hideLoadSplash();
if (this.api) {
this.api.asc_cleanSelection();
}
},
onLongActionEnd: function (type, id) {
if (type === c_oAscAsyncActionType["BlockInteraction"]) {
switch (id) {
case c_oAscAsyncAction["Open"]:
this.onOpenDocument();
break;
}
}
},
_hideLoadSplash: function () {
var preloader = Ext.get("loading-mask");
if (preloader) {
Ext.Anim.run(preloader, "fade", {
out: true,
duration: 1000,
after: function () {
preloader.destroy();
}
});
}
},
_isSupport: function () {
return (Ext.browser.is.WebKit && (Ext.os.is.iOS || Ext.os.is.Android || Ext.os.is.Desktop));
},
printText: "Printing...",
criticalErrorTitle: "Error",
notcriticalErrorTitle: "Warning",
errorDefaultMessage: "Error code: %1",
criticalErrorExtText: 'Press "Ok" to reload view page.',
uploadImageSizeMessage: "Maximium image size limit exceeded.",
uploadImageExtMessage: "Unknown image format.",
uploadImageFileCountMessage: "No images uploaded.",
unknownErrorText: "Unknown error.",
convertationTimeoutText: "Convertation timeout exceeded.",
convertationErrorText: "Convertation failed.",
downloadErrorText: "Download failed.",
unsupportedBrowserErrorText: "Your browser is not supported.",
errorKeyEncrypt: "Unknown key descriptor",
errorKeyExpire: "Key descriptor expired",
errorUsersExceed: "Count of users was exceed",
textAnonymous: "Anonymous",
textLoadingDocument: "LOADING DOCUMENT"
});

View File

@@ -0,0 +1,96 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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
*
*/
Ext.define("SSE.controller.Search", {
extend: "Ext.app.Controller",
config: {
refs: {
nextResult: "#id-btn-search-prev",
previousResult: "#id-btn-search-next",
searchField: "#id-field-search"
},
control: {
"#id-btn-search-prev": {
tap: "onPreviousResult"
},
"#id-btn-search-next": {
tap: "onNextResult"
},
"#id-field-search": {
keyup: "onSearchKeyUp",
change: "onSearchChange",
clearicontap: "onSearchClear"
}
}
},
_step: -1,
init: function () {},
setApi: function (o) {
this.api = o;
},
onNextResult: function () {
var searchField = this.getSearchField();
if (this.api && searchField) {
this.api.asc_findText(searchField.getValue(), true, true);
}
},
onPreviousResult: function () {
var searchField = this.getSearchField();
if (this.api && searchField) {
this.api.asc_findText(searchField.getValue(), true, false);
}
},
onSearchKeyUp: function (field, e) {
var keyCode = e.event.keyCode,
searchField = this.getSearchField();
if (keyCode == 13 && this.api) {
this.api.asc_findText(searchField.getValue(), true, true);
}
this.updateNavigation();
},
onSearchChange: function (field, newValue, oldValue) {
this.updateNavigation();
},
onSearchClear: function (field, e) {
this.updateNavigation();
window.focus();
document.activeElement.blur();
},
updateNavigation: function () {
var searchField = this.getSearchField(),
nextResult = this.getNextResult(),
previousResult = this.getPreviousResult();
if (searchField && nextResult && previousResult) {
nextResult.setDisabled(searchField.getValue() == "");
previousResult.setDisabled(searchField.getValue() == "");
}
}
});

View File

@@ -0,0 +1,96 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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
*
*/
Ext.define("SSE.controller.WorksheetList", {
extend: "Ext.app.Controller",
config: {
refs: {
worksheetList: {
selector: "seworksheetlist list"
}
}
},
init: function () {
this.control({
"seworksheetlist list": {
itemtap: this._worksheetSelect
}
});
},
setApi: function (o) {
this.api = o;
if (this.api) {
this.api.asc_registerCallback("asc_onEndAction", Ext.bind(this.onLongActionEnd, this));
}
},
_worksheetSelect: function (dataview, index, target, record, event, eOpts) {
if (this.api) {
var dataIndex = record.data.index;
if ((dataIndex > -1) && (this.api.asc_getActiveWorksheetIndex() != dataIndex)) {
this.api.asc_showWorksheet(dataIndex);
}
}
},
_loadWorksheets: function () {
if (this.api) {
var worksheetsStore = Ext.getStore("Worksheets"),
worksheetList = this.getWorksheetList();
if (worksheetsStore && worksheetList) {
worksheetsStore.removeAll(false);
var worksheetsCount = this.api.asc_getWorksheetsCount();
if (worksheetsCount) {
for (var i = 0; i < worksheetsCount; i++) {
var result = {
text: this.api.asc_getWorksheetName(i),
index: i
};
worksheetsStore.add(result);
}
var rec = worksheetsStore.findRecord("index", this.api.asc_getActiveWorksheetIndex());
if (rec) {
worksheetList.select(rec);
} else {
worksheetList.select(worksheetsStore.getAt(0));
}
}
}
}
},
onLongActionEnd: function (type, id) {
if (type === c_oAscAsyncActionType["BlockInteraction"]) {
switch (id) {
case c_oAscAsyncAction["Open"]:
this._loadWorksheets();
break;
}
}
}
});

View File

@@ -0,0 +1,76 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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
*
*/
Ext.define("SSE.controller.phone.Main", {
extend: "SSE.controller.Main",
requires: ["Ext.Anim"],
config: {
refs: {
viewToolbar: "viewtoolbar",
searchToolbar: "searchtoolbar"
},
control: {}
},
launch: function () {
this.callParent(arguments);
},
initControl: function () {
this.callParent(arguments);
},
initApi: function () {
this.callParent(arguments);
},
setApi: function (o) {
this.api = o;
this.api.asc_enableKeyEvents(true);
},
setDocumentName: function (name) {
var caption = this.getDocumentNameLabel();
if (caption) {
caption.setHtml(Ext.String.htmlEncode(name));
}
},
onTapBack: function () {
Common.Gateway.goBack();
},
setMode: function (mode) {
var viewToolbar = this.getViewToolbar(),
searchToolbar = this.getSearchToolbar();
if (mode == "edit") {
viewToolbar && viewToolbar.hide();
searchToolbar && searchToolbar.hide();
this.api && this.api.asc_enableKeyEvents(true);
} else {
viewToolbar && viewToolbar.show();
this.api && this.api.asc_enableKeyEvents(false);
}
}
});

View File

@@ -0,0 +1,73 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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
*
*/
Ext.define("SSE.controller.tablet.Main", {
extend: "SSE.controller.Main",
requires: ["Ext.Anim"],
config: {
refs: {
viewToolbar: "viewtoolbar",
searchToolbar: "searchtoolbar"
},
control: {}
},
launch: function () {
this.callParent(arguments);
},
initControl: function () {
this.callParent(arguments);
},
initApi: function () {
this.callParent(arguments);
},
setApi: function (o) {
this.api = o;
this.api.asc_enableKeyEvents(true);
},
setDocumentName: function (name) {
var caption = this.getDocumentNameLabel();
if (caption) {
caption.setHtml(Ext.String.htmlEncode(name));
}
},
setMode: function (mode) {
var viewToolbar = this.getViewToolbar(),
searchToolbar = this.getSearchToolbar();
if (mode == "edit") {
viewToolbar && viewToolbar.hide();
searchToolbar && searchToolbar.hide();
this.api && this.api.asc_enableKeyEvents(true);
} else {
viewToolbar && viewToolbar.show();
this.api && this.api.asc_enableKeyEvents(false);
}
}
});

View File

@@ -0,0 +1,261 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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
*
*/
Ext.define("SSE.controller.toolbar.View", {
extend: "Ext.app.Controller",
config: {
refs: {
viewToolbar: "viewtoolbar",
searchToolbar: "searchtoolbar",
worksheetPanel: "#id-worksheets-panel",
doneButton: "#id-tb-btn-view-done",
searchButton: "#id-tb-btn-search",
fullscreenButton: "#id-tb-btn-fullscreen",
shareButton: "#id-tb-btn-view-share",
worksheetsButton: "#id-tb-btn-pages"
},
control: {
doneButton: {
tap: "onTapDoneButton"
},
searchButton: {
tap: "onTapSearchButton"
},
fullscreenButton: {
tap: "onTapFullscreenButton"
},
shareButton: {
tap: "onTapShareButton"
},
worksheetsButton: {
tap: "onTapWorksheets"
},
"#id-worksheets-panel seworksheetlist list": {
itemtap: "onSelectWorksheet"
}
},
searchMode: false,
fullscreenMode: false
},
launch: function () {
this.callParent(arguments);
Common.Gateway.on("init", Ext.bind(this.loadConfig, this));
},
initControl: function () {
this.callParent(arguments);
},
initApi: function () {},
setApi: function (o) {
this.api = o;
if (this.api) {
this.api.asc_registerCallback("asc_onTapEvent", Ext.bind(this.onSingleTapDocument, this));
}
},
loadConfig: function (data) {
var doneButton = this.getDoneButton();
if (doneButton && data && data.config && data.config.canBackToFolder === true) {
doneButton.show();
}
},
applySearchMode: function (search) {
if (!Ext.isBoolean(search)) {
Ext.Logger.error("Invalid parameters.");
} else {
var me = this,
searchToolbar = me.getSearchToolbar(),
searchButton = me.getSearchButton();
if (searchToolbar) {
if (search) {
searchButton && searchButton.addCls("x-button-pressing");
if (me.getFullscreenMode()) {
searchToolbar.show({
easing: "ease-out",
preserveEndState: true,
autoClear: false,
from: {
top: "22px",
opacity: 0.3
},
to: {
top: "44px",
opacity: 0.9
}
});
} else {
searchToolbar.show();
}
} else {
if (me.getFullscreenMode()) {
searchToolbar.hide({
easing: "ease-in",
to: {
top: "22px",
opacity: 0.3
}
});
} else {
searchToolbar.hide();
}
}
}
return search;
}
},
applyFullscreenMode: function (fullscreen) {
if (!Ext.isBoolean(fullscreen)) {
Ext.Logger.error("Invalid parameters.");
} else {
var viewToolbar = this.getViewToolbar(),
searchToolbar = this.getSearchToolbar(),
fullscreenButton = this.getFullscreenButton(),
popClipCmp = Ext.ComponentQuery.query("popclip");
if (popClipCmp.length > 0) {
popClipCmp[0].hide();
}
if (viewToolbar && searchToolbar) {
if (fullscreen) {
fullscreenButton && fullscreenButton.addCls("x-button-pressing");
viewToolbar.setStyle({
position: "absolute",
left: 0,
top: 0,
right: 0,
opacity: 0.9,
"z-index": 17
});
searchToolbar.setStyle({
position: "absolute",
left: 0,
top: "44px",
right: 0,
opacity: 0.9,
"z-index": 16
});
this.setHiddenToolbars(true);
} else {
viewToolbar.setStyle({
position: "initial",
opacity: 1
});
searchToolbar.setStyle({
position: "initial",
opacity: 1
});
viewToolbar.setDocked("top");
searchToolbar.setDocked("top");
}
}
return fullscreen;
}
},
setHiddenToolbars: function (hide) {
var viewToolbar = this.getViewToolbar(),
searchToolbar = this.getSearchToolbar();
if (viewToolbar && searchToolbar) {
if (hide) {
viewToolbar.hide({
easing: "ease-out",
from: {
opacity: 0.9
},
to: {
opacity: 0
}
});
searchToolbar.hide({
easing: "ease-out",
from: {
opacity: 0.9
},
to: {
opacity: 0
}
});
} else {
viewToolbar.show({
preserveEndState: true,
easing: "ease-in",
from: {
opacity: 0
},
to: {
opacity: 0.9
}
});
this.getSearchMode() && searchToolbar.show({
preserveEndState: true,
easing: "ease-in",
from: {
opacity: 0
},
to: {
opacity: 0.9
}
});
}
}
},
onTapDoneButton: function () {
Common.Gateway.goBack();
},
onTapSearchButton: function (btn) {
this.setSearchMode(!this.getSearchMode());
},
onTapFullscreenButton: function (btn) {
this.setFullscreenMode(!this.getFullscreenMode());
if (this.api) {
this.api.asc_Resize();
}
},
onTapShareButton: function () {
this.api && this.api.asc_Print();
Common.component.Analytics.trackEvent("ToolBar View", "Share");
},
onSingleTapDocument: function () {
var viewToolbar = this.getViewToolbar();
if (viewToolbar && this.getFullscreenMode()) {
this.setHiddenToolbars(!viewToolbar.isHidden());
}
},
onTapWorksheets: function () {
var worksheetPanel = this.getWorksheetPanel(),
worksheetsButton = this.getWorksheetsButton();
if (worksheetPanel) {
worksheetPanel.showBy(worksheetsButton);
}
},
onSelectWorksheet: function (dataview, index, target, record, event, eOpts) {
var worksheetPanel = this.getWorksheetPanel();
if (worksheetPanel) {
worksheetPanel.hide();
}
}
});

View File

@@ -0,0 +1,44 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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
*
*/
Ext.define("SSE.model.Worksheet", {
extend: "Ext.data.Model",
config: {
fields: [{
name: "index",
type: "int"
},
{
name: "text",
type: "string"
}]
}
});

View File

@@ -0,0 +1,48 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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
*
*/
Ext.define("SSE.profile.Phone", {
extend: "Ext.app.Profile",
config: {
name: "phone",
namespace: "phone",
controllers: ["Main", "SSE.controller.Document", "SSE.controller.Search", "SSE.controller.WorksheetList", "SSE.controller.toolbar.View"],
views: ["Main"],
models: ["SSE.model.Worksheet"],
stores: ["SSE.store.Worksheets"]
},
isActive: function () {
return (Ext.os.is.Phone && (Ext.os.is.iOS || Ext.os.is.Android));
},
launch: function () {
Ext.widget("sephonemain");
}
});

View File

@@ -0,0 +1,48 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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
*
*/
Ext.define("SSE.profile.Tablet", {
extend: "Ext.app.Profile",
config: {
name: "tablet",
namespace: "tablet",
controllers: ["Main", "SSE.controller.Document", "SSE.controller.Search", "SSE.controller.WorksheetList", "SSE.controller.toolbar.View"],
views: ["Main"],
models: ["SSE.model.Worksheet"],
stores: ["SSE.store.Worksheets"]
},
isActive: function () {
return (Ext.browser.is.WebKit && ((Ext.os.is.Tablet && (Ext.os.is.iOS || Ext.os.is.Android)) || Ext.os.is.Desktop));
},
launch: function () {
Ext.widget("setabletmain");
}
});

View File

@@ -0,0 +1,37 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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
*
*/
Ext.define("SSE.store.Worksheets", {
extend: "Ext.data.Store",
config: {
model: "SSE.model.Worksheet"
}
});

View File

@@ -0,0 +1,38 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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
*
*/
Ext.define("SSE.view.Main", {
extend: "Ext.Container",
alias: "widget.semainview",
initialize: function () {
this.callParent(arguments);
}
});

View File

@@ -0,0 +1,656 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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
*
*/
Ext.define("SSE.view.OpenCsvPanel", {
extend: "Ext.form.Panel",
alias: "widget.seopencsvpanel",
requires: ["Ext.form.Panel", "Ext.form.FieldSet", "Ext.field.Select"],
config: {
style: "padding: 0;"
},
initialize: function () {
var me = this;
this.add({
xtype: "fieldset",
title: this.txtTitle,
instructions: this.txtHint,
defaults: {
labelWidth: "36%"
},
items: [{
xtype: "selectfield",
name: "encoding",
label: this.txtEncoding,
options: [{
value: 37,
text: "IBM EBCDIC (US-Canada)"
},
{
value: 437,
text: "OEM United States"
},
{
value: 500,
text: "IBM EBCDIC (International)"
},
{
value: 708,
text: "Arabic (ASMO 708)"
},
{
value: 720,
text: "Arabic (DOS)"
},
{
value: 737,
text: "Greek (DOS)"
},
{
value: 775,
text: "Baltic (DOS)"
},
{
value: 850,
text: "Western European (DOS)"
},
{
value: 852,
text: "Central European (DOS)"
},
{
value: 855,
text: "OEM Cyrillic"
},
{
value: 857,
text: "Turkish (DOS)"
},
{
value: 858,
text: "OEM Multilingual Latin I"
},
{
value: 860,
text: "Portuguese (DOS)"
},
{
value: 861,
text: "Icelandic (DOS)"
},
{
value: 862,
text: "Hebrew (DOS)"
},
{
value: 863,
text: "French Canadian (DOS)"
},
{
value: 864,
text: "Arabic (864) "
},
{
value: 865,
text: "Nordic (DOS)"
},
{
value: 866,
text: "Cyrillic (DOS)"
},
{
value: 869,
text: "Greek, Modern (DOS)"
},
{
value: 870,
text: "IBM EBCDIC (Multilingual Latin-2)"
},
{
value: 874,
text: "Thai (Windows)"
},
{
value: 875,
text: "IBM EBCDIC (Greek Modern)"
},
{
value: 932,
text: "Japanese (Shift-JIS)"
},
{
value: 936,
text: "Chinese Simplified (GB2312)"
},
{
value: 949,
text: "Korean"
},
{
value: 950,
text: "Chinese Traditional (Big5)"
},
{
value: 1026,
text: "IBM EBCDIC (Turkish Latin-5)"
},
{
value: 1047,
text: "IBM Latin-1"
},
{
value: 1140,
text: "IBM EBCDIC (US-Canada-Euro)"
},
{
value: 1141,
text: "IBM EBCDIC (Germany-Euro)"
},
{
value: 1142,
text: "IBM EBCDIC (Denmark-Norway-Euro)"
},
{
value: 1143,
text: "IBM EBCDIC (Finland-Sweden-Euro)"
},
{
value: 1144,
text: "IBM EBCDIC (Italy-Euro)"
},
{
value: 1145,
text: "IBM EBCDIC (Spain-Euro)"
},
{
value: 1146,
text: "IBM EBCDIC (UK-Euro)"
},
{
value: 1147,
text: "IBM EBCDIC (France-Euro)"
},
{
value: 1148,
text: "IBM EBCDIC (International-Euro)"
},
{
value: 1149,
text: "IBM EBCDIC (Icelandic-Euro)"
},
{
value: 1200,
text: "Unicode"
},
{
value: 1201,
text: "Unicode (Big-Endian)"
},
{
value: 1250,
text: "Central European (Windows)"
},
{
value: 1251,
text: "Cyrillic (Windows)"
},
{
value: 1252,
text: "Western European (Windows)"
},
{
value: 1253,
text: "Greek (Windows)"
},
{
value: 1254,
text: "Turkish (Windows)"
},
{
value: 1255,
text: "Hebrew (Windows) "
},
{
value: 1256,
text: "Arabic (Windows) "
},
{
value: 1257,
text: "Baltic (Windows)"
},
{
value: 1258,
text: "Vietnamese (Windows)"
},
{
value: 1361,
text: "Korean (Johab)"
},
{
value: 10000,
text: "Western European (Mac)"
},
{
value: 10001,
text: "Japanese (Mac)"
},
{
value: 10002,
text: "Chinese Traditional (Mac)"
},
{
value: 10003,
text: "Korean (Mac)"
},
{
value: 10004,
text: "Arabic (Mac) "
},
{
value: 10005,
text: "Hebrew (Mac)"
},
{
value: 10006,
text: "Greek (Mac) "
},
{
value: 10007,
text: "Cyrillic (Mac)"
},
{
value: 10008,
text: "Chinese Simplified (Mac)"
},
{
value: 10010,
text: "Romanian (Mac)"
},
{
value: 10017,
text: "Ukrainian (Mac)"
},
{
value: 10021,
text: "Thai (Mac)"
},
{
value: 10029,
text: "Central European (Mac) "
},
{
value: 10079,
text: "Icelandic (Mac)"
},
{
value: 10081,
text: "Turkish (Mac)"
},
{
value: 10082,
text: "Croatian (Mac)"
},
{
value: 12000,
text: "Unicode (UTF-32)"
},
{
value: 12001,
text: "Unicode (UTF-32 Big-Endian)"
},
{
value: 20000,
text: "Chinese Traditional (CNS)"
},
{
value: 20001,
text: "TCA Taiwan"
},
{
value: 20002,
text: "Chinese Traditional (Eten)"
},
{
value: 20003,
text: "IBM5550 Taiwan"
},
{
value: 20004,
text: "TeleText Taiwan"
},
{
value: 20005,
text: "Wang Taiwan"
},
{
value: 20105,
text: "Western European (IA5)"
},
{
value: 20106,
text: "German (IA5)"
},
{
value: 20107,
text: "Swedish (IA5) "
},
{
value: 20108,
text: "Norwegian (IA5) "
},
{
value: 20127,
text: "US-ASCII"
},
{
value: 20261,
text: "T.61 "
},
{
value: 20269,
text: "ISO-6937"
},
{
value: 20273,
text: "IBM EBCDIC (Germany)"
},
{
value: 20277,
text: "IBM EBCDIC (Denmark-Norway) "
},
{
value: 20278,
text: "IBM EBCDIC (Finland-Sweden)"
},
{
value: 20280,
text: "IBM EBCDIC (Italy)"
},
{
value: 20284,
text: "IBM EBCDIC (Spain)"
},
{
value: 20285,
text: "IBM EBCDIC (UK)"
},
{
value: 20290,
text: "IBM EBCDIC (Japanese katakana)"
},
{
value: 20297,
text: "IBM EBCDIC (France)"
},
{
value: 20420,
text: "IBM EBCDIC (Arabic)"
},
{
value: 20423,
text: "IBM EBCDIC (Greek)"
},
{
value: 20424,
text: "IBM EBCDIC (Hebrew)"
},
{
value: 20833,
text: "IBM EBCDIC (Korean Extended)"
},
{
value: 20838,
text: "IBM EBCDIC (Thai)"
},
{
value: 20866,
text: "Cyrillic (KOI8-R)"
},
{
value: 20871,
text: "IBM EBCDIC (Icelandic) "
},
{
value: 20880,
text: "IBM EBCDIC (Cyrillic Russian)"
},
{
value: 20905,
text: "IBM EBCDIC (Turkish)"
},
{
value: 20924,
text: "IBM Latin-1 "
},
{
value: 20932,
text: "Japanese (JIS 0208-1990 and 0212-1990)"
},
{
value: 20936,
text: "Chinese Simplified (GB2312-80) "
},
{
value: 20949,
text: "Korean Wansung "
},
{
value: 21025,
text: "IBM EBCDIC (Cyrillic Serbian-Bulgarian)"
},
{
value: 21866,
text: "Cyrillic (KOI8-U)"
},
{
value: 28591,
text: "Western European (ISO) "
},
{
value: 28592,
text: "Central European (ISO)"
},
{
value: 28593,
text: "Latin 3 (ISO)"
},
{
value: 28594,
text: "Baltic (ISO)"
},
{
value: 28595,
text: "Cyrillic (ISO) "
},
{
value: 28596,
text: "Arabic (ISO)"
},
{
value: 28597,
text: "Greek (ISO) "
},
{
value: 28598,
text: "Hebrew (ISO-Visual)"
},
{
value: 28599,
text: "Turkish (ISO)"
},
{
value: 28603,
text: "Estonian (ISO)"
},
{
value: 28605,
text: "Latin 9 (ISO)"
},
{
value: 29001,
text: "Europa"
},
{
value: 38598,
text: "Hebrew (ISO-Logical)"
},
{
value: 50220,
text: "Japanese (JIS)"
},
{
value: 50221,
text: "Japanese (JIS-Allow 1 byte Kana) "
},
{
value: 50222,
text: "Japanese (JIS-Allow 1 byte Kana - SO/SI)"
},
{
value: 50225,
text: "Korean (ISO)"
},
{
value: 50227,
text: "Chinese Simplified (ISO-2022)"
},
{
value: 51932,
text: "Japanese (EUC)"
},
{
value: 51936,
text: "Chinese Simplified (EUC) "
},
{
value: 51949,
text: "Korean (EUC)"
},
{
value: 52936,
text: "Chinese Simplified (HZ)"
},
{
value: 54936,
text: "Chinese Simplified (GB18030)"
},
{
value: 57002,
text: "ISCII Devanagari "
},
{
value: 57003,
text: "ISCII Bengali "
},
{
value: 57004,
text: "ISCII Tamil"
},
{
value: 57005,
text: "ISCII Telugu "
},
{
value: 57006,
text: "ISCII Assamese "
},
{
value: 57007,
text: "ISCII Oriya"
},
{
value: 57008,
text: "ISCII Kannada"
},
{
value: 57009,
text: "ISCII Malayalam "
},
{
value: 57010,
text: "ISCII Gujarati"
},
{
value: 57011,
text: "ISCII Punjabi"
},
{
value: 65000,
text: "Unicode (UTF-7)"
},
{
value: 65001,
text: "Unicode (UTF-8)"
}]
},
{
xtype: "selectfield",
name: "delimiter",
label: this.txtDelimiter,
options: [{
value: 4,
text: ","
},
{
value: 2,
text: ";"
},
{
value: 3,
text: ":"
},
{
value: 1,
text: this.txtTab
},
{
value: 5,
text: this.txtSpace
}]
}]
});
this.add({
xtype: "button",
text: "OK",
handler: function () {
me.fireEvent("close", this, {
encoding: me.getValues().encoding,
delimiter: me.getValues().delimiter
});
}
});
},
txtEncoding: "Encoding ",
txtDelimiter: "Delimiter",
txtTab: "Tab",
txtSpace: "Space",
txtTitle: "Choose CSV opening options",
txtHint: "Please enter the information above."
});

View File

@@ -0,0 +1,54 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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
*
*/
Ext.define("SSE.view.WorksheetList", {
extend: "Ext.Container",
requires: (["Ext.dataview.List", "Ext.XTemplate"]),
alias: ["widget.seworksheetlist"],
config: {
layout: {
type: "fit"
}
},
initialize: function () {
var worksheetItemTpl = Ext.create("Ext.XTemplate", '<tpl for=".">' + '<div class="worksheet-item">{text:htmlEncode}</div>' + "</tpl>");
this.add({
xtype: "list",
store: "Worksheets",
itemTpl: worksheetItemTpl,
singleSelect: true,
itemSelector: "div.worksheet-item",
emptyText: "",
cls: "x-worksheet-item x-select-overlay"
});
this.callParent(arguments);
}
});

View File

@@ -0,0 +1,86 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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
*
*/
Ext.define("SSE.view.phone.Main", {
extend: "SSE.view.Main",
alias: "widget.sephonemain",
requires: (["Ext.field.Search"]),
config: {
cls: "de-phone-main",
fullscreen: true,
layout: {
type: "vbox",
pack: "center"
}
},
initialize: function () {
var me = this;
this.add(Ext.create("SSE.view.phone.toolbar.View", {
hidden: true
}));
this.add(Ext.create("SSE.view.phone.toolbar.Search", {
hidden: true
}));
this.add({
xtype: "container",
id: "id-pnl-top-fixed",
docked: "top",
style: "opacity: 0;"
});
this.add({
xtype: "container",
layout: "vbox",
id: "id-container-document",
flex: 1,
items: [{
xtype: "container",
flex: 1,
id: "id-sdkeditor"
}]
});
this.add({
xtype: "panel",
layout: "fit",
width: 200,
height: 200,
id: "id-worksheets-panel",
top: 0,
left: 0,
modal: true,
hidden: true,
hideOnMaskTap: true,
items: [{
xtype: "seworksheetlist"
}]
});
this.callParent(arguments);
}
});

View File

@@ -0,0 +1,68 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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
*
*/
Ext.define("SSE.view.phone.toolbar.Search", {
extend: "Ext.Toolbar",
xtype: "searchtoolbar",
requires: (["Ext.Label", "Ext.field.Search"]),
config: {
docked: "top",
minHeight: 52,
ui: "search"
},
initialize: function () {
this.add([{
xtype: "searchfield",
id: "id-field-search",
placeHolder: this.searchText,
flex: 1
},
{
xtype: "segmentedbutton",
allowToggle: false,
ui: "base",
items: [{
id: "id-btn-search-prev",
ui: "base",
iconCls: "search-prev",
disabled: true
},
{
id: "id-btn-search-next",
ui: "base",
iconCls: "search-next",
disabled: true
}]
}]);
this.callParent(arguments);
},
searchText: "Search"
});

View File

@@ -0,0 +1,78 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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
*
*/
Ext.define("SSE.view.phone.toolbar.View", {
extend: "Ext.Toolbar",
xtype: "viewtoolbar",
config: {
docked: "top",
minHeight: 44,
ui: "edit"
},
initialize: function () {
this.add([{
id: "id-tb-btn-view-done",
ui: "base-blue",
cls: "text-offset-12",
hidden: true,
text: this.doneText
},
{
xtype: "spacer"
},
{
id: "id-tb-btn-search",
ui: "base",
iconCls: "search"
},
{
id: "id-tb-btn-pages",
ui: "base",
iconCls: "pages"
},
{
id: "id-tb-btn-fullscreen",
ui: "base",
iconCls: "fullscreen"
},
{
xtype: "spacer"
},
{
id: "id-tb-btn-view-share",
ui: "base",
iconCls: "share"
}]);
this.callParent(arguments);
},
doneText: "Done",
editText: "Edit"
});

View File

@@ -0,0 +1,78 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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
*
*/
Ext.define("SSE.view.tablet.Main", {
extend: "SSE.view.Main",
alias: "widget.setabletmain",
requires: (["SSE.view.tablet.toolbar.Search", "SSE.view.tablet.toolbar.View", "SSE.view.WorksheetList"]),
config: {
fullscreen: true,
layout: {
type: "vbox",
pack: "center"
}
},
initialize: function () {
this.add(Ext.create("SSE.view.tablet.toolbar.View", {
hidden: true
}));
this.add(Ext.create("SSE.view.tablet.toolbar.Search", {
hidden: true
}));
this.add({
xtype: "container",
layout: "vbox",
id: "id-container-document",
flex: 1,
items: [{
xtype: "container",
flex: 1,
id: "id-sdkeditor"
}]
});
this.add({
xtype: "panel",
layout: "fit",
width: 200,
height: 200,
id: "id-worksheets-panel",
top: 0,
left: 0,
modal: true,
hidden: true,
hideOnMaskTap: true,
items: [{
xtype: "seworksheetlist"
}]
});
this.callParent(arguments);
}
});

View File

@@ -0,0 +1,68 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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
*
*/
Ext.define("SSE.view.tablet.toolbar.Search", {
extend: "Ext.Toolbar",
xtype: "searchtoolbar",
requires: (["Ext.Label", "Ext.field.Search"]),
config: {
docked: "top",
minHeight: 52,
ui: "search"
},
initialize: function () {
this.add([{
xtype: "searchfield",
id: "id-field-search",
placeHolder: this.searchText,
flex: 1
},
{
xtype: "segmentedbutton",
allowToggle: false,
ui: "base",
items: [{
id: "id-btn-search-prev",
ui: "base",
iconCls: "search-prev",
disabled: true
},
{
id: "id-btn-search-next",
ui: "base",
iconCls: "search-next",
disabled: true
}]
}]);
this.callParent(arguments);
},
searchText: "Search"
});

View File

@@ -0,0 +1,78 @@
/*
* (c) Copyright Ascensio System SIA 2010-2014
*
* 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
*
*/
Ext.define("SSE.view.tablet.toolbar.View", {
extend: "Ext.Toolbar",
xtype: "viewtoolbar",
config: {
docked: "top",
minHeight: 44,
ui: "edit"
},
initialize: function () {
this.add([{
id: "id-tb-btn-view-done",
ui: "base-blue",
cls: "text-offset-12",
hidden: true,
text: this.doneText
},
{
xtype: "spacer"
},
{
id: "id-tb-btn-search",
ui: "base",
iconCls: "search"
},
{
id: "id-tb-btn-pages",
ui: "base",
iconCls: "pages"
},
{
id: "id-tb-btn-fullscreen",
ui: "base",
iconCls: "fullscreen"
},
{
xtype: "spacer"
},
{
id: "id-tb-btn-view-share",
ui: "base",
iconCls: "share"
}]);
this.callParent(arguments);
},
doneText: "Done",
editText: "Edit"
});