handle most of the boilerplate stuff
parent
0d43a84c2b
commit
dcf5719eaf
@ -0,0 +1,30 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html class="cp pad">
|
||||||
|
<head>
|
||||||
|
<title>CryptPad</title>
|
||||||
|
<meta content="text/html; charset=utf-8" http-equiv="content-type"/>
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
|
<script async data-bootload="/customize/template.js" data-main="/common/boot.js?ver=1.0" src="/bower_components/requirejs/require.js?ver=2.1.15"></script>
|
||||||
|
<style>
|
||||||
|
html, body {
|
||||||
|
margin: 0px;
|
||||||
|
padding: 0px;
|
||||||
|
}
|
||||||
|
#pad-iframe {
|
||||||
|
position:fixed;
|
||||||
|
top:0px;
|
||||||
|
left:0px;
|
||||||
|
bottom:0px;
|
||||||
|
right:0px;
|
||||||
|
width:100%;
|
||||||
|
height:100%;
|
||||||
|
border:none;
|
||||||
|
margin:0;
|
||||||
|
padding:0;
|
||||||
|
overflow:hidden;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<iframe id="pad-iframe"></iframe><script src="/common/noscriptfix.js"></script>
|
||||||
|
|
@ -0,0 +1,13 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<meta content="text/html; charset=utf-8" http-equiv="content-type"/>
|
||||||
|
<script src="/bower_components/jquery/dist/jquery.min.js"></script>
|
||||||
|
<script async data-bootload="/todo/inner.js" data-main="/common/boot.js?ver=1.0" src="/bower_components/requirejs/require.js?ver=2.1.15"></script>
|
||||||
|
<style>.loading-hidden, .loading-hidden * {display: none !important;}</style>
|
||||||
|
</head>
|
||||||
|
<body class="loading-hidden">
|
||||||
|
<div id="toolbar" class="toolbar-container"></div>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
|
|
@ -0,0 +1,15 @@
|
|||||||
|
define([
|
||||||
|
'jquery',
|
||||||
|
//'css!/bower_components/components-font-awesome/css/font-awesome.min.css',
|
||||||
|
//'css!/bower_components/bootstrap/dist/css/bootstrap.min.css',
|
||||||
|
//'less!/file/todo.less',
|
||||||
|
//'less!/customize/src/less/cryptpad.less',
|
||||||
|
'less!/customize/src/less/toolbar.less',
|
||||||
|
], function ($) {
|
||||||
|
$('.loading-hidden').removeClass('loading-hidden');
|
||||||
|
// dirty hack to get rid the flash of the lock background
|
||||||
|
/*
|
||||||
|
setTimeout(function () {
|
||||||
|
$('#app').addClass('ready');
|
||||||
|
}, 100);*/
|
||||||
|
});
|
@ -0,0 +1,83 @@
|
|||||||
|
define([
|
||||||
|
'jquery',
|
||||||
|
'/bower_components/chainpad-crypto/crypto.js',
|
||||||
|
'/bower_components/chainpad-netflux/chainpad-netflux.js',
|
||||||
|
'/common/toolbar2.js',
|
||||||
|
'/common/cryptpad-common.js',
|
||||||
|
'/common/visible.js',
|
||||||
|
'/common/notify.js',
|
||||||
|
|
||||||
|
//'/common/media-tag.js',
|
||||||
|
//'/bower_components/file-saver/FileSaver.min.js',
|
||||||
|
|
||||||
|
//'css!/bower_components/components-font-awesome/css/font-awesome.min.css',
|
||||||
|
'less!/customize/src/less/cryptpad.less',
|
||||||
|
], function ($, Crypto, realtimeInput, Toolbar, Cryptpad /*, Visible, Notify*/) {
|
||||||
|
var Messages = Cryptpad.Messages;
|
||||||
|
//var saveAs = window.saveAs;
|
||||||
|
//var Nacl = window.nacl;
|
||||||
|
|
||||||
|
var APP = window.APP = {};
|
||||||
|
|
||||||
|
$(function () {
|
||||||
|
|
||||||
|
var andThen = function () {
|
||||||
|
var ifrw = $('#pad-iframe')[0].contentWindow;
|
||||||
|
var $iframe = $('#pad-iframe').contents();
|
||||||
|
var $body = $iframe.find('body');
|
||||||
|
|
||||||
|
$body.on('dragover', function (e) { e.preventDefault(); });
|
||||||
|
$body.on('drop', function (e) { e.preventDefault(); });
|
||||||
|
|
||||||
|
Cryptpad.addLoadingScreen();
|
||||||
|
|
||||||
|
var Title;
|
||||||
|
|
||||||
|
var uploadMode = false;
|
||||||
|
|
||||||
|
var $bar = $iframe.find('.toolbar-container');
|
||||||
|
|
||||||
|
var secret;
|
||||||
|
var hexFileName;
|
||||||
|
if (window.location.hash) {
|
||||||
|
secret = Cryptpad.getSecrets();
|
||||||
|
if (!secret.keys) { throw new Error("You need a hash"); } // TODO
|
||||||
|
hexFileName = Cryptpad.base64ToHex(secret.channel);
|
||||||
|
} else {
|
||||||
|
uploadMode = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
Title = Cryptpad.createTitle({}, function(){}, Cryptpad);
|
||||||
|
|
||||||
|
var displayed = ['useradmin', 'newpad', 'limit', 'upgrade'];
|
||||||
|
if (secret && hexFileName) {
|
||||||
|
displayed.push('fileshare');
|
||||||
|
}
|
||||||
|
|
||||||
|
var configTb = {
|
||||||
|
displayed: displayed,
|
||||||
|
ifrw: ifrw,
|
||||||
|
common: Cryptpad,
|
||||||
|
//hideDisplayName: true,
|
||||||
|
$container: $bar,
|
||||||
|
};
|
||||||
|
|
||||||
|
if (uploadMode) {
|
||||||
|
displayed.push('pageTitle');
|
||||||
|
configTb.pageTitle = Messages.upload_title;
|
||||||
|
}
|
||||||
|
|
||||||
|
var toolbar = APP.toolbar = Toolbar.create(configTb);
|
||||||
|
toolbar.$rightside.html(''); // Remove the drawer if we don't use it to hide the toolbar
|
||||||
|
|
||||||
|
// we're in upload mode
|
||||||
|
Cryptpad.removeLoadingScreen();
|
||||||
|
};
|
||||||
|
|
||||||
|
Cryptpad.ready(function () {
|
||||||
|
andThen();
|
||||||
|
//Cryptpad.reportAppUsage();
|
||||||
|
});
|
||||||
|
|
||||||
|
});
|
||||||
|
});
|
@ -0,0 +1,136 @@
|
|||||||
|
@import "/customize/src/less/variables.less";
|
||||||
|
@import "/customize/src/less/mixins.less";
|
||||||
|
|
||||||
|
@button-border: 2px;
|
||||||
|
|
||||||
|
html, body {
|
||||||
|
margin: 0px;
|
||||||
|
height: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
#toolbar {
|
||||||
|
display: flex; // We need this to remove a 3px border at the bottom of the toolbar
|
||||||
|
}
|
||||||
|
|
||||||
|
body {
|
||||||
|
display: flex;
|
||||||
|
flex-flow: column;
|
||||||
|
}
|
||||||
|
#app {
|
||||||
|
flex: 1;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
#app.ready {
|
||||||
|
background: url('/customize/bg3.jpg') no-repeat center center;
|
||||||
|
background-size: cover;
|
||||||
|
background-position: center;
|
||||||
|
}
|
||||||
|
.cryptpad-toolbar {
|
||||||
|
padding: 0px;
|
||||||
|
display: inline-block;
|
||||||
|
}
|
||||||
|
#file, #dl {
|
||||||
|
display: block;
|
||||||
|
height: 100%;
|
||||||
|
width: 100%;
|
||||||
|
border: @button-border solid black;
|
||||||
|
}
|
||||||
|
|
||||||
|
.inputfile {
|
||||||
|
width: 0.1px;
|
||||||
|
height: 0.1px;
|
||||||
|
opacity: 0;
|
||||||
|
overflow: hidden;
|
||||||
|
position: absolute;
|
||||||
|
z-index: -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
media-tag {
|
||||||
|
img {
|
||||||
|
max-width: 100%;
|
||||||
|
max-height: ~"calc(100vh - 96px)";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#upload-form, #download-form {
|
||||||
|
padding: 0px;
|
||||||
|
margin: 0px;
|
||||||
|
|
||||||
|
position: relative;
|
||||||
|
width: 50vh;
|
||||||
|
height: 50vh;
|
||||||
|
display: block;
|
||||||
|
margin: 50px auto;
|
||||||
|
max-width: 80vw;
|
||||||
|
label {
|
||||||
|
line-height: ~"calc(50vh - 20px)";
|
||||||
|
text-align: center;
|
||||||
|
position: relative;
|
||||||
|
padding: 10px;
|
||||||
|
white-space: nowrap;
|
||||||
|
overflow: hidden;
|
||||||
|
text-overflow: ellipsis;
|
||||||
|
height: 50vh;
|
||||||
|
box-sizing: border-box;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#download-form {
|
||||||
|
label {
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
white-space: normal;
|
||||||
|
word-wrap: break-word;
|
||||||
|
span {
|
||||||
|
width: 50vh;
|
||||||
|
max-width: 80vw;
|
||||||
|
text-align: center;
|
||||||
|
line-height: 1.5em;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.hovering {
|
||||||
|
background-color: rgba(255, 0, 115, 0.5) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.block {
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
.hidden {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
.inputfile + label {
|
||||||
|
//border: 2px solid black;
|
||||||
|
//background-color: rgba(50, 50, 50, .10);
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
|
||||||
|
.inputfile:focus + label,
|
||||||
|
.inputfile + label:hover {
|
||||||
|
//background-color: rgba(50, 50, 50, 0.30);
|
||||||
|
}
|
||||||
|
|
||||||
|
#progress {
|
||||||
|
position: absolute;
|
||||||
|
top: 0;
|
||||||
|
left: 0;
|
||||||
|
height: 100%;
|
||||||
|
|
||||||
|
|
||||||
|
transition: width 200ms;
|
||||||
|
width: 0%;
|
||||||
|
max-width: 100%;
|
||||||
|
max-height: 100%;
|
||||||
|
background-color: rgba(255, 0, 115, 0.75);
|
||||||
|
z-index: 10000;
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
|
||||||
|
body #uploadStatusContainer {
|
||||||
|
background-color: rgba(255, 255, 255, 0.9);
|
||||||
|
color: black;
|
||||||
|
opacity: 0.9;
|
||||||
|
}
|
Loading…
Reference in New Issue