web-apps/apps/documenteditor/mobile/src/index_dev.html

192 lines
6.1 KiB
HTML
Raw Normal View History

2020-07-31 17:33:13 +00:00
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<!--
Customize this policy to fit your own app's needs. For more guidance, see:
https://github.com/apache/cordova-plugin-whitelist/blob/master/README.md#content-security-policy
Some notes:
* https://ssl.gstatic.com is required only on Android and is needed for TalkBack to function properly
* Disables use of inline scripts in order to mitigate risk of XSS vulnerabilities. To change this:
* Enable inline JS: add 'unsafe-inline' to default-src
-->
<meta http-equiv="Content-Security-Policy" content="default-src * 'self' 'unsafe-inline' 'unsafe-eval' data: gap: content:">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, minimum-scale=1, user-scalable=no, minimal-ui, viewport-fit=cover">
<meta name="theme-color" content="#007aff">
<meta name="format-detection" content="telephone=no">
<meta name="msapplication-tap-highlight" content="no">
<title>Desktop Editor</title>
<meta name="apple-mobile-web-app-capable" content="yes">
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent">
<link rel="apple-touch-icon" href="static/icons/apple-touch-icon.png">
<link rel="icon" href="static/icons/favicon.png">
2021-09-12 21:51:01 +00:00
<style type="text/css">
body {
/*background-color: red;*/
margin: 0;
}
.skl-navbar {
--box-logo-height: 26px;
--skl-navbar-height: 44px;
--skl-pixel-ratio: 1;
}
.skl-navbar--md {
--skl-navbar-height: 56px;
}
.skl-pixel-ratio--2 {
--skl-pixel-ratio: 2;
}
.skl-navbar {
height: calc(var(--skl-navbar-height) + var(--box-logo-height));
width: 100%;
/*background-color: #446995;*/
position: relative;
}
.skl-navbar.skl-navbar--md {
height: calc(56px + 26px);
background-color: #446995;
}
.skl-navbar::before {
content: '';
position: absolute;
width: 100%;
}
.skl-navbar:not(.skl-navbar--md)::before {
background-color: rgba(0,0,0,0.25);
display: block;
z-index: 15;
top: auto;
right: auto;
bottom: 0;
left: 0;
height: 1px;
transform-origin: 50% 100%;
transform: scaleY(calc(1 / var(--skl-pixel-ratio)));
}
.skl-navbar.skl-navbar--md::before {
right: 0;
width: 100%;
top: 100%;
bottom: auto;
height: 8px;
pointer-events: none;
background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.25) 0%, rgba(0, 0, 0, 0.08) 40%, rgba(0, 0, 0, 0.04) 50%, rgba(0, 0, 0, 0) 90%, rgba(0, 0, 0, 0) 100%)
}
.skl-lines {
display: none;
}
.skl-line {
height: 15px;
margin: 30px;
background: #e2e2e2;
overflow: hidden;
position: relative;
-webkit-animation: flickerAnimation 2s infinite ease-in-out;
animation: flickerAnimation 2s infinite ease-in-out;
}
@keyframes flickerAnimation {
0% { opacity:0.1; }
50% { opacity:1; }
100% { opacity:0.1; }
}
@-o-keyframes flickerAnimation{
0% { opacity:0.1; }
50% { opacity:1; }
100% { opacity:0.1; }
}
@-moz-keyframes flickerAnimation{
0% { opacity:0.1; }
50% { opacity:1; }
100% { opacity:0.1; }
}
@-webkit-keyframes flickerAnimation{
0% { opacity:0.1; }
50% { opacity:1; }
100% { opacity:0.1; }
}
</style>
2020-07-31 17:33:13 +00:00
<!-- built styles file will be auto injected -->
</head>
<body>
2021-09-12 21:51:01 +00:00
<section class="skl-container">
<div class="skl-navbar"></div>
<div class="skl-lines">
<div class="skl-line"></div>
<div class="skl-line"></div>
<div class="skl-line"></div>
</div>
</section>
2020-07-31 17:33:13 +00:00
<script>
2020-10-09 20:05:45 +00:00
const isAndroid = /Android/.test(navigator.userAgent);
if ( isAndroid && navigator.platform == 'Win32' )
// Framework7 doesn't set Device.android flag when navigator.platform == 'Win32', change it for debug
navigator.__defineGetter__('platform', () => 'Win32Debug');
2021-09-12 21:51:01 +00:00
let navbar = document.querySelector('.skl-navbar');
if ( window.devicePixelRatio ) {
if ( navbar ) {
navbar.classList.add(`skl-pixel-ratio--${Math.floor(window.devicePixelRatio)}`);
}
}
if ( !isAndroid ) {
const ua = navigator.userAgent;
const iPad = ua.match(/(iPad).*OS\s([\d_]+)/);
const iPhone = !iPad && ua.match(/(iPhone\sOS|iOS)\s([\d_]+)/);
if ( !iPad && !iPhone ) {
Object.defineProperty(navigator, 'userAgent', {
get: function () { return `iPad; CPU OS 11_0 ${ua}`; }
});
}
2021-09-12 21:51:01 +00:00
} else {
if ( navbar ) {
navbar.classList.add('skl-navbar--md');
}
}
2020-07-31 17:33:13 +00:00
const getUrlParams = () => {
let e,
a = /\+/g, // Regex for replacing addition symbol with a space
r = /([^&=]+)=?([^&]*)/g,
d = s => decodeURIComponent(s.replace(a, " ")),
q = window.location.search.substring(1),
urlParams = {};
while (e = r.exec(q))
urlParams[d(e[1])] = d(e[2]);
return urlParams;
};
let params = getUrlParams(),
2021-07-16 11:24:41 +00:00
lang = (params["lang"] || 'en').split(/[\-\_]/)[0];
2020-07-31 17:33:13 +00:00
window.frameEditorId = params["frameEditorId"];
window.parentOrigin = params["parentOrigin"];
2020-08-13 10:35:58 +00:00
window.Common = {Locale: {currentLang: lang}};
2020-07-31 17:33:13 +00:00
</script>
<script type="text/javascript" src="../../../vendor/jquery/jquery.min.js"></script>
<div id="app"></div>
<!-- built script files will be auto injected -->
</body>
</html>