mirror of
https://github.com/Tygs/0bin.git
synced 2023-08-10 21:13:00 +03:00
Merge new theme
This commit is contained in:
@@ -1,158 +1,65 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>0bin - encrypted pastebin</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta name="description" content="0bin is a client-side-encrypted
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>0bin - encrypted pastebin</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta name="description"
|
||||
content="0bin is a client-side-encrypted
|
||||
pastebin featuring burn after reading, history, and
|
||||
a clipboard">
|
||||
|
||||
<link rel="shortcut icon" href="/favicon.ico">
|
||||
<link rel="shortcut icon" href="/favicon.ico">
|
||||
|
||||
%if settings.COMPRESSED_STATIC_FILES:
|
||||
<link href="/static/css/style.min.css?{{ VERSION }}" rel="stylesheet" />
|
||||
%else:
|
||||
<link href="/static/css/prettify.css" rel="stylesheet" />
|
||||
<link href="/static/css/bootstrap.css" rel="stylesheet">
|
||||
<link href="/static/css/style.css?{{ VERSION }}" rel="stylesheet">
|
||||
%end
|
||||
%if settings.COMPRESSED_STATIC_FILES:
|
||||
<link href="/static/css/style.min.css?{{ VERSION }}"
|
||||
rel="stylesheet" />
|
||||
%else:
|
||||
<link href="/static/css/prettify.css" rel="stylesheet" />
|
||||
<link href="/static/css/desert.css" rel="stylesheet" />
|
||||
<link href="/static/css/bootswatch.4.5.css" rel="stylesheet">
|
||||
<link href="/static/css/style.css?{{ VERSION }}" rel="stylesheet">
|
||||
%end
|
||||
|
||||
<!-- Le HTML5 shim, for IE7-8 support of HTML5 elements -->
|
||||
<!--[if lt IE 9]>
|
||||
<script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
|
||||
<![endif]-->
|
||||
</head>
|
||||
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="topnav" >
|
||||
<a class="brand" href="/"><span>ø</span>bin<em>.net</em></a>
|
||||
<span class="tagline">"A client side encrypted PasteBin"<br><span>All pastes are AES256 encrypted, we cannot know what you paste...</span>
|
||||
</span>
|
||||
|
||||
<body>
|
||||
|
||||
<div class="navbar navbar-fixed-top" id="menu-top">
|
||||
<div class="navbar-inner">
|
||||
<div class="container">
|
||||
<a class="btn btn-navbar" data-toggle="collapse" data-target=".nav-collapse">
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
</a>
|
||||
<a class="brand" href="/"><span>ø</span>bin<em>.net</em></a>
|
||||
<div class="nav-collapse">
|
||||
<ul class="nav">
|
||||
|
||||
%for i, entry in enumerate(settings.MENU):
|
||||
<li>
|
||||
%if "mailto:" in entry[1]:
|
||||
<a :href="formatEmail('{{ entry[1].replace('mailto:', '').replace('@', '__AT__') }}')" class="email-link">
|
||||
{{ entry[0] }}
|
||||
</a>
|
||||
%else:
|
||||
<a href="{{ entry[1] }}">{{ entry[0] }}</a>
|
||||
%end
|
||||
|
||||
</li>
|
||||
%end
|
||||
|
||||
</ul>
|
||||
<p class="about pull-right">
|
||||
"A client side encrypted PasteBin"<br>
|
||||
<span>All pastes are AES256 encrypted, we cannot know what you paste...</span>
|
||||
</p>
|
||||
</div>
|
||||
<!--/.nav-collapse -->
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<noscript class="noscript">
|
||||
|
||||
<div class="container jumbotron">
|
||||
<h1 class="display-4">This site requires Javascript</h1>
|
||||
<p class="lead">This pastebin uses client-side encryption, and therefore, it needs JavaScript to work.</p>
|
||||
<p>It seems like your browser doesn't have JavaScript enabled.</p>
|
||||
<p>Please enable JavaScript for this website or use a JavaScript-capable web browser.</p>
|
||||
</div>
|
||||
|
||||
</noscript>
|
||||
|
||||
<div class="container app" id="wrap-content" v-cloak>
|
||||
<div class="row">
|
||||
<div class="span2">
|
||||
<div class="well sidebar-nav">
|
||||
<ul class="nav nav-list previous-pastes">
|
||||
<li class="nav-header">Previous pastes</li>
|
||||
<li class="item local-storage" v-if="previousPastes.length === 0">
|
||||
<em class="grey">
|
||||
Your previous pastes will be saved in your browser using
|
||||
<a href="http://www.w3.org/TR/webstorage/">localStorage</a>.
|
||||
</em>
|
||||
</li>
|
||||
<li class="item no-local-storage">
|
||||
<em class="grey">
|
||||
Sorry your browser does not support
|
||||
<a href="http://www.w3.org/TR/webstorage/">LocalStorage</a>,
|
||||
We cannot display your previous pastes.
|
||||
</em>
|
||||
</li>
|
||||
<li :class="{item: true, active: paste.isCurrent}" v-for="paste in previousPastes">
|
||||
<a :href="paste.link" @click="forceLoadPaste(paste.link)">
|
||||
{% paste.prefix %}{% paste.displayDate %}
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<!--/.well -->
|
||||
</div>
|
||||
<!--/span-->
|
||||
|
||||
<div id='main' class="span10">
|
||||
|
||||
|
||||
<p :class="'alert alert-' + msg.type" v-for="msg in messages">
|
||||
<a class="close" data-dismiss="alert" href="#" @click.prevent="$event.target.parentNode.remove()">×</a>
|
||||
<strong class="title" v-if="msg.title" v-html="msg.title"></strong>
|
||||
<span class="message" v-html="msg.content"></span>
|
||||
<a v-if="msg.action.message" href="#"
|
||||
@click.once.prevent="msg.action.callback($event)">{% msg.action.message %}</a>
|
||||
</p>
|
||||
|
||||
{{!base}}
|
||||
|
||||
</div>
|
||||
<!--/span-->
|
||||
<nav >
|
||||
<ul>
|
||||
<li class="submenu" ><a href="#" onclick="ToggleMenu()">Previous pastes +</a>
|
||||
<ul class="previous-pastes" id="topmenu">
|
||||
<li class="item active"><a href="#">No paste yet...</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
<!--/row-->
|
||||
|
||||
<hr>
|
||||
|
||||
<footer>
|
||||
<blockquote>
|
||||
<p>“Few persons can be made to believe that it is not quite an easy thing to invent a method of secret writing
|
||||
which shall baffle investigation. Yet it may be roundly asserted that human ingenuity cannot concoct a cipher
|
||||
which human ingenuity cannot resolve...”</p>
|
||||
<small>Edgar Allan Poe</small>
|
||||
</blockquote>
|
||||
|
||||
|
||||
%if settings.DISPLAY_COUNTER:
|
||||
<h4 id="pixels-total">
|
||||
<p>ø</p>
|
||||
<strong>{{ pastes_count }}</strong> <br />pastes øbinned
|
||||
</h4>
|
||||
%end
|
||||
<noscript class="container noscript">
|
||||
<p>This pastebin uses client-side encryption. Therefore, it needs JavaScript enabled.</p>
|
||||
<p>It seems like your browser doesn't have JavaScript enable.</p>
|
||||
<p>Please enable JavaScript for this website or use a JavaScript-capable web browser.</p>
|
||||
</noscript>
|
||||
|
||||
<div class="container-md" id="wrap-content">
|
||||
<div id='main' >{{!base}}</div>
|
||||
</div>
|
||||
|
||||
<footer class="footer">
|
||||
<a href="https://www.0bin.net/">Create a paste</a> - <a href="/faq/">Faq</a> - <a href="https://github.com/sametmax/0bin">Github</a>
|
||||
<br>
|
||||
<p class="greetings span12">
|
||||
Based on an original idea from
|
||||
<a href="http://sebsauvage.net/paste/">sebsauvage.net</a><br>
|
||||
<a href="http://sametmax.com">Sam & Max</a>
|
||||
</p>
|
||||
%if settings.DISPLAY_COUNTER:
|
||||
<strong>{{ pastes_count }}</strong> pastes øbinned
|
||||
%end
|
||||
</footer>
|
||||
|
||||
</div>
|
||||
<!--/wrap-content-->
|
||||
|
||||
<script src="/static/js/vue.js"></script>
|
||||
%if settings.COMPRESSED_STATIC_FILES:
|
||||
@@ -167,14 +74,31 @@
|
||||
|
||||
</script>
|
||||
|
||||
%if settings.COMPRESSED_STATIC_FILES:
|
||||
<script src="/static/js/additional.min.js?{{ VERSION }}"></script>
|
||||
%else:
|
||||
%if settings.COMPRESSED_STATIC_FILES:
|
||||
<script src="/static/js/additional.min.js?{{ settings.VERSION }}"></script>
|
||||
%else:
|
||||
<script src="/static/js/lzw.js"></script>
|
||||
<script src="/static/js/prettify.min.js"></script>
|
||||
<script src="/static/js/ZeroClipboard.js"></script>
|
||||
%end
|
||||
|
||||
<script src="/static/js/lzw.js"></script>
|
||||
<script src="/static/js/prettify.min.js"></script>
|
||||
%end
|
||||
<p id="alert-template" class="alert-primary">
|
||||
<a class="close" data-dismiss="alert" href="#">×</a>
|
||||
<strong class="title"></strong>
|
||||
<span class="message"></span>
|
||||
</p>
|
||||
|
||||
<script>
|
||||
function ToggleMenu() {
|
||||
var x = document.getElementById("topmenu");
|
||||
if (x.style.display === "none") {
|
||||
x.style.display = "block";
|
||||
} else {
|
||||
x.style.display = "none";
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
</body>
|
||||
</body>
|
||||
|
||||
</html>
|
||||
|
||||
@@ -2,11 +2,9 @@
|
||||
|
||||
<h1>FAQ</h1>
|
||||
|
||||
<hr width="90%">
|
||||
|
||||
<dl>
|
||||
<dt>How does 0bin work?</dt>
|
||||
<dd>
|
||||
<table>
|
||||
<tr>How does 0bin work?</tr>
|
||||
<td>
|
||||
<p>A random key is generated and used to encrypt the paste, thanks to
|
||||
the <a href="http://crypto.stanford.edu/sjcl/">sjcl</a>
|
||||
JavaScript library.</p>
|
||||
@@ -19,10 +17,10 @@
|
||||
JavaScript will use it to decrypt the content sent by the server.</p>
|
||||
<p>The browser never sends the hash to the server, so the latter does not
|
||||
receives the key at any time.</p>
|
||||
</dd>
|
||||
</td>
|
||||
|
||||
<dt>But JavaScript encryption is not secure!</dt>
|
||||
<dd>
|
||||
<tr>But JavaScript encryption is not secure!</tr>
|
||||
<td>
|
||||
<p>No, it isn't.</p>
|
||||
<p>The goal of 0bin is <strong>not</strong> to protect the user and their data
|
||||
(including, obviously, their secrets).</p>
|
||||
@@ -36,9 +34,9 @@
|
||||
you decide to host a 0bin server, the encryption feature hopefully be used as a defense.
|
||||
This is not proven, though! :-)
|
||||
|
||||
</dd>
|
||||
<dt>What if the server changes the JavaScript code? And what happens in the case of a <a href="https://en.wikipedia.org/wiki/Man-in-the-middle_attack">MITM attack</a>?</dt>
|
||||
<dd>
|
||||
</td>
|
||||
<tr>What if the server changes the JavaScript code? And what happens in the case of a <a href="https://en.wikipedia.org/wiki/Man-in-the-middle_attack">MITM attack</a>?</tr>
|
||||
<td>
|
||||
<p>Read above.</p>
|
||||
<p>0bin is not built, and does not aim, to protect user data - but rather the host.
|
||||
If any user data is compromised, 0bin still provides the host with
|
||||
@@ -52,19 +50,19 @@
|
||||
for emails.</p>
|
||||
<p>It would be unlikely for those softwares to fail you. Errors will nearly always come from your side - you ought to have a perfect <a href="https://en.wikipedia.org/wiki/Operations_security">operations security</a>
|
||||
if you do not want your data to be leaked. Remember to use your common sense.</p>
|
||||
</dd>
|
||||
<dt>How did the idea of 0bin emerge?</dt>
|
||||
<dd>
|
||||
</td>
|
||||
<tr>How did the idea of 0bin emerge?</tr>
|
||||
<td>
|
||||
<p>0bin is based on <a href="http://sebsauvage.net/wiki/doku.php?id=php:zerobin">sebsauvage's work</a>.
|
||||
The project sprang as a reaction to <a href="https://www.zdnet.com/blog/security/pastebin-to-hunt-for-hacker-pastes-anonymous-cries-censorship/11336">the implementation of a moderation system on Pastebin</a>,
|
||||
due to the significant amount of illegal content pasted on it, or that it linked to.</p>
|
||||
</dd>
|
||||
<dt>How can I get 0bin?</dt>
|
||||
<dd>
|
||||
</td>
|
||||
<tr>How can I get 0bin?</tr>
|
||||
<td>
|
||||
<p>0bin is an open-source project, and the code is hosted on <a href="https://github.com/sametmax/0bin">GitHub</a>.
|
||||
You can either download a tarball or clone the repository.</p>
|
||||
</dd>
|
||||
</dl>
|
||||
</td>
|
||||
</table>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
@@ -1,39 +1,59 @@
|
||||
<p class="file-upload" v-if="support.fileUpload">
|
||||
<input type="button" class="btn btn-upload" value="Upload File" :value="isUploading ? 'Uploading...': 'Upload file'"
|
||||
:disabled="isUploading">
|
||||
<input type="file" class="hide-upload" id="file-upload" @change="handleUpload($event.target.files)">
|
||||
</p>
|
||||
|
||||
<form class="well" method="post" action="/paste/create" @submit.prevent="encryptAndSendPaste()">
|
||||
<p class="paste-option">
|
||||
<label for="expiration">Expiration:</label>
|
||||
<select id="expiration" name="expiration" v-model="newPaste.expiration">
|
||||
<option value="burn_after_reading">Burn after reading</option>
|
||||
<option selected value="1_day">1 day</option>
|
||||
<option value="1_month">1 month</option>
|
||||
<option value="never">Never</option>
|
||||
</select>
|
||||
<button type="submit" class="btn btn-primary">Submit</button>
|
||||
</p>
|
||||
<p>
|
||||
<div class="progress progress-striped active" v-show="isLoading">
|
||||
<div class="d-flex justify-content-between">
|
||||
|
||||
<div>
|
||||
<label class="col-form-label">Upload text/img:</label>
|
||||
<div class="file-upload" v-if="support.fileUpload">
|
||||
<input type="button" class="btn btn-primary" :value="isUploading ? 'Uploading...': 'Upload file'"
|
||||
:disabled="isUploading">
|
||||
<input type="file" class="hide-upload" id="file-upload" @change="handleUpload($event.target.files)">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group select-date paste-option">
|
||||
<label class="col-form-label">Expiration:</label>
|
||||
<div class="input-group">
|
||||
<select id="expiration" name="expiration" class="custom-select" v-model="newPaste.expiration">
|
||||
<option value="burn_after_reading">Burn after reading</option>
|
||||
<option selected value="1_day">1 day</option>
|
||||
<option value="1_month">1 month</option>
|
||||
<option value="never">Never</option>
|
||||
</select>
|
||||
<div class="input-group-append">
|
||||
<button type="submit" class="btn btn-primary">Submit</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<div class="progress-bar progress-bar-striped progress" v-show="isLoading">
|
||||
<div class="bar"></div>
|
||||
</div>
|
||||
<textarea rows="10" style="width:100%" class="input-xlarge" id="content" name="content" autofocus
|
||||
v-on:keydown.prevent.ctrl.enter="encryptAndSendPaste()"></textarea>
|
||||
</p>
|
||||
<textarea rows="10" style="width:100%;"
|
||||
class="form-control"
|
||||
id="content" name="content" autofocus
|
||||
@keydown.prevent.ctrl.enter="encryptAndSendPaste()"></textarea>
|
||||
</div>
|
||||
|
||||
<div class="form-group select-date paste-option down" v-if="displayBottomToolBar">
|
||||
<label class="col-form-label">Expiration:</label>
|
||||
<div class="input-group">
|
||||
<select id="expiration" name="expiration" class="custom-select" v-model="newPaste.expiration">
|
||||
<option value="burn_after_reading">Burn after reading</option>
|
||||
<option selected value="1_day">1 day</option>
|
||||
<option value="1_month">1 month</option>
|
||||
<option value="never">Never</option>
|
||||
</select>
|
||||
<div class="input-group-append">
|
||||
<button type="submit" class="btn btn-primary">Submit</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<p class="paste-option down" v-if="displayBottomToolBar">
|
||||
<label for="expiration">Expiration:</label>
|
||||
<select id="expiration" name="expiration" v-model="newPaste.expiration">
|
||||
<option value="burn_after_reading">Burn after reading</option>
|
||||
<option selected value="1_day">1 day</option>
|
||||
<option value="1_month">1 month</option>
|
||||
<option value="never">Never</option>
|
||||
</select>
|
||||
<button type="submit" class="btn btn-primary">Submit</button>
|
||||
</p>
|
||||
</form>
|
||||
|
||||
|
||||
% rebase("base", settings=settings, pastes_count=pastes_count)
|
||||
|
||||
|
||||
@@ -21,52 +21,61 @@
|
||||
|
||||
<div class="well paste-form">
|
||||
<form action="/" method="get" accept-charset="utf-8">
|
||||
<p class="lnk-option">
|
||||
<a id="clip-button" v-if="support.clipboard" href="#" @click.prevent="copyToClipboard()">Copy To Clipboard</a> |
|
||||
|
||||
<a id="email-link" href="#" @click="handleSendByEmail($event)">Email this</a>
|
||||
<div class="d-flex justify-content-between">
|
||||
|
||||
<div class="btn-group" role="group" >
|
||||
<button v-if="support.clipboard" @click.prevent="copyToClipboard()" type="button" id="clip-button" class="btn btn-secondary">Copy To Clipboard</button>
|
||||
<button type="button" id="email-link" class="btn btn-secondary" @click="handleSendByEmail($event)>Email this</button>
|
||||
</div>
|
||||
|
||||
<span class="paste-option btn-group top">
|
||||
<button class="btn btn-clone" @click.prevent="handleClone()"><i class="icon-camera"></i> Clone</button>
|
||||
<button class="btn" v-if="downloadLink.url">
|
||||
<a :href="downloadLink.url" :download="downloadLink.name"><i class="icon-download"></i> Download</a>
|
||||
<div>
|
||||
<span class="paste-option btn-group">
|
||||
<button class="btn btn-clone btn-secondary" @click.prevent="handleClone()">Clone</button>
|
||||
|
||||
<button class="btn btn-secondar" v-if="downloadLink.url">
|
||||
<a :href="downloadLink.url" :download="downloadLink.name"> Download</a>
|
||||
</button>
|
||||
|
||||
|
||||
<button class="btn">New Paste</button>
|
||||
</span>
|
||||
</p>
|
||||
|
||||
<div class="progress progress-striped active" v-show="isLoading">
|
||||
<div class="bar"></div>
|
||||
<button class="btn btn-secondary">New Paste</button>
|
||||
</span>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="progress-container">
|
||||
<div class="progress progress-bar progress-bar-striped active" v-show="isLoading">
|
||||
<div class="bar"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
%expiration = paste.humanized_expiration
|
||||
%if expiration:
|
||||
<p id="expiration-tag">Expire {{ expiration }}</p>
|
||||
<span id="expiration-tag">Expire {{ expiration }}</span>
|
||||
%end
|
||||
|
||||
<p>
|
||||
<pre id="paste-content" class="prettyprint">
|
||||
<code>
|
||||
{{ paste.content }}
|
||||
</code>
|
||||
</pre>
|
||||
</p>
|
||||
<pre id="paste-content" class="prettyprint">
|
||||
<code>
|
||||
{{ paste.content }}
|
||||
</code>
|
||||
</pre>
|
||||
|
||||
<p v-if="currentPaste.ownerKey">
|
||||
<button type="button" class="btn btn-danger" @click="handleDeletePaste()">Delete this paste</button>
|
||||
</p>
|
||||
<div class="d-flex justify-content-between down">
|
||||
<div v-if="currentPaste.ownerKey">
|
||||
<button class="btn btn-clone btn-secondary" @click="handleDeletePaste()">Delete Paste</button>
|
||||
</div>
|
||||
<div>
|
||||
<span class="paste-option btn-group">
|
||||
<button class="btn btn-clone btn-secondary" @click.prevent="handleClone()">Clone</button>
|
||||
|
||||
<button class="btn btn-secondar" v-if="downloadLink.url">
|
||||
<a :href="downloadLink.url" :download="downloadLink.name"> Download</a>
|
||||
</button>
|
||||
|
||||
<p class="paste-option btn-group bottom">
|
||||
<button class="btn btn-clone" @click.prevent="handleClone()"><i class="icon-camera"></i> Clone</button>
|
||||
|
||||
<button class="btn" v-if="downloadLink.url">
|
||||
<a :href="downloadLink.url" :download="downloadLink.name"><i class="icon-download"></i> Download</a>
|
||||
</button>
|
||||
|
||||
<button class="btn">New Paste</button>
|
||||
</p>
|
||||
<button class="btn btn-secondary">New Paste</button>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</form>
|
||||
</div>
|
||||
@@ -74,39 +83,72 @@
|
||||
<!-- For cloning -->
|
||||
<div class="submit-form clone">
|
||||
<form class="well" method="post" action="/paste/create" @submit.prevent="encryptAndSendPaste()">
|
||||
<p class="paste-option">
|
||||
<label for="expiration">Expiration:</label>
|
||||
<select id="expiration" name="expiration" v-model="newPaste.expiration">
|
||||
<option value="burn_after_reading">Burn after reading</option>
|
||||
<option selected value="1_day">1 day</option>
|
||||
<option value="1_month">1 month</option>
|
||||
<option value="never">Never</option>
|
||||
</select>
|
||||
<button type="submit" class="btn btn-primary">Submit</button>
|
||||
<button class="btn btn-danger" @click.prevent="handleCancelClone()">Cancel clone</button>
|
||||
</p>
|
||||
|
||||
<div>
|
||||
<div class="progress progress-striped active" v-show="isLoading">
|
||||
<div class="d-flex justify-content-between">
|
||||
|
||||
<div>
|
||||
<label class="col-form-label"> </label>
|
||||
<div class="file-upload">
|
||||
<button type="button" class="btn btn-danger" @click.prevent="handleCancelClone()">Cancel clone</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group select-date-clone paste-option">
|
||||
<label class="col-form-label" >Expiration:</label>
|
||||
<div class="input-group">
|
||||
<select id="expiration" name="expiration" class="custom-select" v-model="newPaste.expiration">
|
||||
<option value="burn_after_reading">Burn after reading</option>
|
||||
<option selected value="1_day">1 day</option>
|
||||
<option value="1_month">1 month</option>
|
||||
<option value="never">Never</option>
|
||||
</select>
|
||||
<div class="input-group-append">
|
||||
<button type="submit" class="btn btn-primary">Submit</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="progress-container progress-clone" >
|
||||
<div class="progress progress-bar progress-bar-striped active" v-show="isLoading">
|
||||
<div class="bar"></div>
|
||||
</div>
|
||||
<textarea rows="10" style="width:100%;" class="input-xlarge" id="content" name="content" autofocus
|
||||
v-on:keydown.prevent.ctrl.enter="encryptAndSendPaste()"></textarea>
|
||||
</div>
|
||||
|
||||
<p class="paste-option down" v-if="displayBottomToolBar">
|
||||
<label for="expiration">Expiration:</label>
|
||||
<select id="expiration" name="expiration" v-model="newPaste.expiration">
|
||||
<option value="burn_after_reading">Burn after reading</option>
|
||||
<option selected value="1_day">1 day</option>
|
||||
<option value="1_month">1 month</option>
|
||||
<option value="never">Never</option>
|
||||
</select>
|
||||
<button type="submit" class="btn btn-primary">Submit</button>
|
||||
</p>
|
||||
<div>
|
||||
<textarea rows="10" style="width:100%;"
|
||||
class=" form-control" @keydown.prevent.ctrl.enter="encryptAndSendPaste()"
|
||||
id="content" name="content"></textarea>
|
||||
</div>
|
||||
|
||||
<div class="d-flex justify-content-between" v-if="displayBottomToolBar">>
|
||||
|
||||
<div>
|
||||
<label class="col-form-label"> </label>
|
||||
<div class="file-upload">
|
||||
<button type="button" class="btn btn-danger" @click.prevent="handleCancelClone()">Cancel clone</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group select-date-clone paste-option">
|
||||
<label class="col-form-label" >Expiration:</label>
|
||||
<div class="input-group">
|
||||
<select id="expiration" name="expiration" class="custom-select" v-model="newPaste.expiration">
|
||||
<option value="burn_after_reading">Burn after reading</option>
|
||||
<option selected value="1_day">1 day</option>
|
||||
<option value="1_month">1 month</option>
|
||||
<option value="never">Never</option>
|
||||
</select>
|
||||
<div class="input-group-append">
|
||||
<button type="submit" class="btn btn-primary">Submit</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
% rebase("base", settings=settings, pastes_count=pastes_count)
|
||||
|
||||
Reference in New Issue
Block a user