Commit c2d14e0f authored by Maxim Kadushkin's avatar Maxim Kadushkin

[common] added utils.js to embed

parent 3c44af10
/*
*
* (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
*
*/
+function () {
!window.common && (window.common = {});
!common.utils && (common.utils = {});
common.utils = new(function(){
return {
openLink: function(url) {
if (url) {
var newDocumentPage = window.open(url, '_blank');
if (newDocumentPage)
newDocumentPage.focus();
}
}
, dialogPrint: function(url) {
$('#id-print-frame').remove();
if ( !!url ) {
var iframePrint = document.createElement("iframe");
iframePrint.id = "id-print-frame";
iframePrint.style.display = 'none';
iframePrint.style.visibility = "hidden";
iframePrint.style.position = "fixed";
iframePrint.style.right = "0";
iframePrint.style.bottom = "0";
document.body.appendChild(iframePrint);
iframePrint.onload = function () {
iframePrint.contentWindow.focus();
iframePrint.contentWindow.print();
iframePrint.contentWindow.blur();
window.focus();
};
iframePrint.src = url;
}
}
};
})();
}();
...@@ -338,6 +338,7 @@ ...@@ -338,6 +338,7 @@
<!--application--> <!--application-->
<script type="text/javascript" src="../../common/Gateway.js"></script> <script type="text/javascript" src="../../common/Gateway.js"></script>
<script type="text/javascript" src="../../common/Analytics.js"></script> <script type="text/javascript" src="../../common/Analytics.js"></script>
<script type="text/javascript" src="../../common/embed/lib/util/utils.js"></script>
<script type="text/javascript" src="../../common/embed/lib/view/modals.js"></script> <script type="text/javascript" src="../../common/embed/lib/view/modals.js"></script>
<script type="text/javascript" src="js/ApplicationView.js"></script> <script type="text/javascript" src="js/ApplicationView.js"></script>
<script type="text/javascript" src="js/ApplicationController.js"></script> <script type="text/javascript" src="js/ApplicationController.js"></script>
......
...@@ -42,7 +42,7 @@ var ApplicationController = new(function(){ ...@@ -42,7 +42,7 @@ var ApplicationController = new(function(){
minEmbedHeight = 600, minEmbedHeight = 600,
embedCode = '<iframe allowtransparency="true" frameborder="0" scrolling="no" src="{embed-url}" width="{width}" height="{height}"></iframe>', embedCode = '<iframe allowtransparency="true" frameborder="0" scrolling="no" src="{embed-url}" width="{width}" height="{height}"></iframe>',
created = false, created = false,
iframePrint = null; ttOffset = [0, -10];
// Initialize analytics // Initialize analytics
// ------------------------- // -------------------------
...@@ -138,14 +138,6 @@ var ApplicationController = new(function(){ ...@@ -138,14 +138,6 @@ var ApplicationController = new(function(){
$('#page-number').val(number + 1); $('#page-number').val(number + 1);
} }
function onHyperlinkClick(url) {
if (url) {
var newDocumentPage = window.open(url, '_blank');
if (newDocumentPage)
newDocumentPage.focus();
}
}
function onLongActionBegin(type, id) { function onLongActionBegin(type, id) {
var text = ''; var text = '';
switch (id) switch (id)
...@@ -225,27 +217,7 @@ var ApplicationController = new(function(){ ...@@ -225,27 +217,7 @@ var ApplicationController = new(function(){
} }
function onPrintUrl(url) { function onPrintUrl(url) {
if (iframePrint) { common.utils.dialogPrint(url);
iframePrint.parentNode.removeChild(iframePrint);
iframePrint = null;
}
if (!iframePrint) {
iframePrint = document.createElement("iframe");
iframePrint.id = "id-print-frame";
iframePrint.style.display = 'none';
iframePrint.style.visibility = "hidden";
iframePrint.style.position = "fixed";
iframePrint.style.right = "0";
iframePrint.style.bottom = "0";
document.body.appendChild(iframePrint);
iframePrint.onload = function() {
iframePrint.contentWindow.focus();
iframePrint.contentWindow.print();
iframePrint.contentWindow.blur();
window.focus();
};
}
if (url) iframePrint.src = url;
} }
function hidePreloader() { function hidePreloader() {
...@@ -262,7 +234,7 @@ var ApplicationController = new(function(){ ...@@ -262,7 +234,7 @@ var ApplicationController = new(function(){
api.asc_registerCallback('asc_onMouseMoveStart', onDocMouseMoveStart); api.asc_registerCallback('asc_onMouseMoveStart', onDocMouseMoveStart);
api.asc_registerCallback('asc_onMouseMoveEnd', onDocMouseMoveEnd); api.asc_registerCallback('asc_onMouseMoveEnd', onDocMouseMoveEnd);
api.asc_registerCallback('asc_onMouseMove', onDocMouseMove); api.asc_registerCallback('asc_onMouseMove', onDocMouseMove);
api.asc_registerCallback('asc_onHyperlinkClick', onHyperlinkClick); api.asc_registerCallback('asc_onHyperlinkClick', common.utils.openLink);
api.asc_registerCallback('asc_onDownloadUrl', onDownloadUrl); api.asc_registerCallback('asc_onDownloadUrl', onDownloadUrl);
api.asc_registerCallback('asc_onPrint', onPrint); api.asc_registerCallback('asc_onPrint', onPrint);
...@@ -316,13 +288,13 @@ var ApplicationController = new(function(){ ...@@ -316,13 +288,13 @@ var ApplicationController = new(function(){
ApplicationView.tools.get('#idt-fullscreen') ApplicationView.tools.get('#idt-fullscreen')
.on('click', function(){ .on('click', function(){
openLink(embedConfig.fullscreenUrl); common.utils.openLink(embedConfig.fullscreenUrl);
}); });
ApplicationView.tools.get('#idt-download') ApplicationView.tools.get('#idt-download')
.on('click', function(){ .on('click', function(){
if ( !!embedConfig.saveUrl ){ if ( !!embedConfig.saveUrl ){
openLink(embedConfig.saveUrl); common.utils.openLink(embedConfig.saveUrl);
} else } else
if (api && permissions.print!==false){ if (api && permissions.print!==false){
api.asc_Print($.browser.chrome || $.browser.safari || $.browser.opera); api.asc_Print($.browser.chrome || $.browser.safari || $.browser.opera);
...@@ -532,12 +504,6 @@ var ApplicationController = new(function(){ ...@@ -532,12 +504,6 @@ var ApplicationController = new(function(){
$txtheight.val(newHeight + 'px'); $txtheight.val(newHeight + 'px');
} }
function openLink(url){
var newDocumentPage = window.open(url);
if (newDocumentPage)
newDocumentPage.focus();
}
function createController(){ function createController(){
if (created) if (created)
return me; return me;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment