2016-08-09 09:54:42 +00:00
< ? php
use PrivateBin\I18n ;
?> <!DOCTYPE html>
2020-02-01 08:15:14 +00:00
< html lang = " <?php echo I18n::_('en'); ?> " >
2016-07-19 12:02:26 +00:00
< head >
< meta charset = " utf-8 " />
< meta name = " robots " content = " noindex " />
2018-11-21 22:32:06 +00:00
< meta name = " google " content = " notranslate " >
2017-01-01 15:33:11 +00:00
< title >< ? php echo I18n :: _ ( $NAME ); ?> </title>
2016-08-09 09:54:42 +00:00
< link type = " text/css " rel = " stylesheet " href = " css/privatebin.css?<?php echo rawurlencode( $VERSION ); ?> " />
< ? php
if ( $SYNTAXHIGHLIGHTING ) :
?>
< link type = " text/css " rel = " stylesheet " href = " css/prettify/prettify.css?<?php echo rawurlencode( $VERSION ); ?> " />
< ? php
if ( strlen ( $SYNTAXHIGHLIGHTINGTHEME )) :
?>
< link type = " text/css " rel = " stylesheet " href = " css/prettify/<?php echo rawurlencode( $SYNTAXHIGHLIGHTINGTHEME ); ?>.css?<?php echo rawurlencode( $VERSION ); ?> " />
< ? php
2016-07-26 06:19:35 +00:00
endif ;
2016-08-09 09:54:42 +00:00
endif ;
?>
2019-06-16 07:30:59 +00:00
< script type = " text/javascript " data - cfasync = " false " src = " js/jquery-3.4.1.js " integrity = " sha512-bnIvzh6FU75ZKxp0GXLH9bewza/OIw6dLVh9ICg0gogclmYGguQJWl8U30WpbsGTqbIiAwxTsbe76DErLq5EDQ== " crossorigin = " anonymous " ></ script >
2016-08-16 09:11:03 +00:00
< ? php
2018-07-21 06:44:04 +00:00
if ( $QRCODE ) :
?>
2019-06-16 08:13:53 +00:00
< script async type = " text/javascript " data - cfasync = " false " src = " js/kjua-0.6.0.js " integrity = " sha512-GEEIHvphDt1NmaxzX8X1ZkBiGKXCv+Ofzwi8SMEH5wQVWqdGIvBO/fnxxKZ90RU1bVp6srS68nHIpZo6iVcG9g== " crossorigin = " anonymous " ></ script >
2018-07-21 06:44:04 +00:00
< ? php
endif ;
2016-08-16 09:11:03 +00:00
if ( $ZEROBINCOMPATIBILITY ) :
?>
2018-06-30 15:55:59 +00:00
< script type = " text/javascript " data - cfasync = " false " src = " js/base64-1.7.js " integrity = " sha512-JdwsSP3GyHR+jaCkns9CL9NTt4JUJqm/BsODGmYhBcj5EAPKcHYh+OiMfyHbcDLECe17TL0hjXADFkusAqiYgA== " crossorigin = " anonymous " ></ script >
2016-08-16 09:11:03 +00:00
< ? php
endif ;
?>
2019-05-11 08:39:42 +00:00
< script type = " text/javascript " data - cfasync = " false " src = " js/zlib-1.2.11.js " integrity = " sha512-Yey/0yoaVmSbqMEyyff3DIu8kCPwpHvHf7tY1AuZ1lrX9NPCMg87PwzngMi+VNbe4ilCApmePeuKT869RTcyCQ== " crossorigin = " anonymous " ></ script >
2020-01-07 19:11:12 +00:00
< script type = " text/javascript " data - cfasync = " false " src = " js/base-x-3.0.7.js " integrity = " sha512-/Bi1AJIP0TtxEB+Jh6Hk809H1G7vn4iJV80qagslf0+Hm0UjUi1s3qNrn1kZULjzUYuaf6ck0ndLGJ7MxWLmgQ== " crossorigin = " anonymous " ></ script >
2018-06-30 15:55:59 +00:00
< script type = " text/javascript " data - cfasync = " false " src = " js/rawinflate-0.3.js " integrity = " sha512-g8uelGgJW9A/Z1tB6Izxab++oj5kdD7B4qC7DHwZkB6DGMXKyzx7v5mvap2HXueI2IIn08YlRYM56jwWdm2ucQ== " crossorigin = " anonymous " ></ script >
2016-08-09 09:54:42 +00:00
< ? php
if ( $SYNTAXHIGHLIGHTING ) :
?>
2018-07-01 17:17:05 +00:00
< script type = " text/javascript " data - cfasync = " false " src = " js/prettify.js?<?php echo rawurlencode( $VERSION ); ?> " integrity = " sha512-puO0Ogy++IoA2Pb9IjSxV1n4+kQkKXYAEUtVzfZpQepyDPyXk8hokiYDS7ybMogYlyyEIwMLpZqVhCkARQWLMg== " crossorigin = " anonymous " ></ script >
2016-08-09 09:54:42 +00:00
< ? php
endif ;
if ( $MARKDOWN ) :
?>
2020-01-07 18:58:05 +00:00
< script type = " text/javascript " data - cfasync = " false " src = " js/showdown-1.9.1.js " integrity = " sha512-nRri7kqh3iRLdHbhtjfe8w9eAQPmt+ubH5U88UZyKbz6O9Q0q4haaXF0krOUclKmRJou/kKZYulgBHvHXPqOvg== " crossorigin = " anonymous " ></ script >
2016-08-09 09:54:42 +00:00
< ? php
2016-07-19 12:02:26 +00:00
endif ;
2016-08-09 09:54:42 +00:00
?>
2019-11-02 16:31:26 +00:00
< script type = " text/javascript " data - cfasync = " false " src = " js/purify-2.0.7.js " integrity = " sha512-XjNEK1xwh7SJ/7FouwV4VZcGW9cMySL3SwNpXgrURLBcXXQYtZdqhGoNdEwx9vwLvFjUGDQVNgpOrTsXlSTiQg== " crossorigin = " anonymous " ></ script >
2019-09-22 19:18:19 +00:00
< script type = " text/javascript " data - cfasync = " false " src = " js/legacy.js?<?php echo rawurlencode( $VERSION ); ?> " integrity = " sha512-LYos+qXHIRqFf5ZPNphvtTB0cgzHUizu2wwcOwcwz/VIpRv9lpcBgPYz4uq6jx0INwCAj6Fbnl5HoKiLufS2jg== " crossorigin = " anonymous " ></ script >
2020-02-01 15:30:41 +00:00
< script type = " text/javascript " data - cfasync = " false " src = " js/privatebin.js?<?php echo rawurlencode( $VERSION ); ?> " integrity = " sha512-N9tv/+S54wMKM/g9RefBwWaIvpYJ59TUWPy2LGi5jA5mt0RqkRbl4QIuaEOpUiTDynUN/KXd0zUUtB/0Ig3j5g== " crossorigin = " anonymous " ></ script >
2017-01-08 09:13:12 +00:00
< link rel = " apple-touch-icon " href = " img/apple-touch-icon.png?<?php echo rawurlencode( $VERSION ); ?> " sizes = " 180x180 " />
< link rel = " icon " type = " image/png " href = " img/favicon-32x32.png?<?php echo rawurlencode( $VERSION ); ?> " sizes = " 32x32 " />
< link rel = " icon " type = " image/png " href = " img/favicon-16x16.png?<?php echo rawurlencode( $VERSION ); ?> " sizes = " 16x16 " />
2016-07-19 12:02:26 +00:00
< link rel = " manifest " href = " manifest.json?<?php echo rawurlencode( $VERSION ); ?> " />
2017-01-08 09:13:12 +00:00
< link rel = " mask-icon " href = " img/safari-pinned-tab.svg?<?php echo rawurlencode( $VERSION ); ?> " color = " #ffcc00 " />
< link rel = " shortcut icon " href = " img/favicon.ico " >
2016-07-19 12:02:26 +00:00
< meta name = " msapplication-config " content = " browserconfig.xml " >
< meta name = " theme-color " content = " #ffe57e " />
</ head >
2019-06-23 17:45:40 +00:00
< body data - compression = " <?php echo rawurlencode( $COMPRESSION ); ?> " >
2016-07-19 12:02:26 +00:00
< header >
< div id = " aboutbox " >
2017-01-01 15:33:11 +00:00
< ? php echo I18n :: _ ( '%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted <i>in the browser</i> using 256 bits AES. More information on the <a href="https://privatebin.info/">project page</a>.' , I18n :: _ ( $NAME )); ?> <br />
2016-08-09 09:54:42 +00:00
< ? php
if ( strlen ( $NOTICE )) :
?>
2020-02-01 08:15:14 +00:00
< span class = " blink " > ▶ </ span > < ? php echo I18n :: encode ( $NOTICE );
2016-08-09 09:54:42 +00:00
endif ;
?>
2016-07-19 12:02:26 +00:00
</ div >
2017-01-01 15:33:11 +00:00
< h1 class = " title reloadlink " >< ? php echo I18n :: _ ( $NAME ); ?> </h1><br />
2016-08-09 09:54:42 +00:00
< h2 class = " title " >< ? php echo I18n :: _ ( 'Because ignorance is bliss' ); ?> </h2><br />
2016-07-19 12:02:26 +00:00
< h3 class = " title " >< ? php echo $VERSION ; ?> </h3>
2020-02-01 07:46:59 +00:00
< noscript >< div id = " noscript " class = " nonworking " >< ? php echo I18n :: _ ( 'JavaScript is required for %s to work. Sorry for the inconvenience.' , I18n :: _ ( $NAME )); ?> </div></noscript>
2019-09-19 18:01:10 +00:00
< div id = " oldnotice " class = " nonworking hidden " >< ? php echo I18n :: _ ( '%s requires a modern browser to work.' , I18n :: _ ( $NAME )), PHP_EOL ; ?>
2016-07-19 12:02:26 +00:00
< a href = " https://www.mozilla.org/firefox/ " > Firefox </ a > ,
< a href = " https://www.opera.com/ " > Opera </ a > ,
2017-03-05 10:10:52 +00:00
< a href = " https://www.google.com/chrome " > Chrome </ a > …
2016-07-19 12:02:26 +00:00
</ div >
2019-06-17 19:40:37 +00:00
< ? php
if ( $HTTPWARNING ) :
?>
2019-09-19 17:14:48 +00:00
< div id = " httpnotice " class = " errorMessage hidden " >
2019-06-21 17:03:45 +00:00
< ? php echo I18n :: _ ( 'This website is using an insecure connection! Please only use it for testing.' ); ?>
2019-06-22 05:52:18 +00:00
< span class = " small " >< ? php echo I18n :: _ ( 'For more information <a href="%s">see this FAQ entry</a>.' , 'https://github.com/PrivateBin/PrivateBin/wiki/FAQ#why-does-it-show-me-an-error-about-an-insecure-connection' ); ?> </span>
2019-06-21 17:03:45 +00:00
</ div >
2019-09-19 17:14:48 +00:00
< div id = " insecurecontextnotice " class = " errorMessage hidden " >
< ? php echo I18n :: _ ( 'Your browser may require an HTTPS connection to support the WebCrypto API. Try <a href="%s">switching to HTTPS</a>.' , $HTTPSLINK ); ?>
</ div >
2019-06-17 19:40:37 +00:00
< ? php
endif ;
?>
2016-07-19 12:02:26 +00:00
</ header >
< section >
< article >
2017-03-12 13:16:08 +00:00
< div id = " loadingindicator " class = " hidden " >< ? php echo I18n :: _ ( 'Loading…' ); ?> </div>
2020-02-01 08:15:14 +00:00
< div id = " status " >< ? php echo I18n :: encode ( $STATUS ); ?> </div>
< div id = " errormessage " class = " hidden " >< ? php echo I18n :: encode ( $ERROR ); ?> </div>
2016-07-19 12:02:26 +00:00
< div id = " toolbar " >
2016-08-09 09:54:42 +00:00
< button id = " newbutton " class = " reloadlink hidden " >< img src = " img/icon_new.png " width = " 11 " height = " 15 " alt = " " />< ? php echo I18n :: _ ( 'New' ); ?> </button>
2017-04-11 20:25:14 +00:00
< button id = " retrybutton " class = " reloadlink hidden " >< ? php echo I18n :: _ ( 'Retry' ), PHP_EOL ; ?> </button>
2016-08-09 09:54:42 +00:00
< button id = " sendbutton " class = " hidden " >< img src = " img/icon_send.png " width = " 18 " height = " 15 " alt = " " />< ? php echo I18n :: _ ( 'Send' ); ?> </button>
< button id = " clonebutton " class = " hidden " >< img src = " img/icon_clone.png " width = " 15 " height = " 17 " alt = " " />< ? php echo I18n :: _ ( 'Clone' ); ?> </button>
< button id = " rawtextbutton " class = " hidden " >< img src = " img/icon_raw.png " width = " 15 " height = " 15 " alt = " " />< ? php echo I18n :: _ ( 'Raw text' ); ?> </button>
2019-08-21 21:36:22 +00:00
< button id = " emaillink " class = " hidden " >< img src = " img/icon_email.png " width = " 15 " height = " 15 " alt = " " />< ? php echo I18n :: _ ( 'Email' ); ?> </button>
2017-12-25 13:59:15 +00:00
< ? php
if ( $QRCODE ) :
?>
< button id = " qrcodelink " class = " hidden " >< img src = " img/icon_qr.png " width = " 15 " height = " 15 " alt = " " />< ? php echo I18n :: _ ( 'QR code' ); ?> </button>
< ? php
endif ;
?>
2016-08-09 09:54:42 +00:00
< div id = " expiration " class = " hidden button " >< ? php echo I18n :: _ ( 'Expires' ); ?> :
< select id = " pasteExpiration " name = " pasteExpiration " >
< ? php
foreach ( $EXPIRE as $key => $value ) :
?>
2016-07-19 12:02:26 +00:00
< option value = " <?php echo $key ; ?> " < ? php
2016-08-09 09:54:42 +00:00
if ( $key == $EXPIREDEFAULT ) :
?> selected="selected"<?php
endif ;
?> ><?php echo $value; ?></option>
< ? php
endforeach ;
?>
2016-07-19 12:02:26 +00:00
</ select >
</ div >
< div id = " remainingtime " class = " hidden " ></ div >
< div id = " burnafterreadingoption " class = " button hidden " >
2016-08-15 12:24:42 +00:00
< input type = " checkbox " id = " burnafterreading " name = " burnafterreading " < ? php
2016-08-09 09:54:42 +00:00
if ( $BURNAFTERREADINGSELECTED ) :
?> checked="checked"<?php
endif ;
?> />
< label for = " burnafterreading " >< ? php echo I18n :: _ ( 'Burn after reading' ); ?> </label>
</ div >
< ? php
if ( $DISCUSSION ) :
?>
2017-02-25 08:35:55 +00:00
< div id = " opendiscussionoption " class = " button hidden " >
2016-08-15 12:24:42 +00:00
< input type = " checkbox " id = " opendiscussion " name = " opendiscussion " < ? php
2016-08-09 09:54:42 +00:00
if ( $OPENDISCUSSION ) :
?> checked="checked"<?php
endif ;
?> />
2018-07-21 06:44:04 +00:00
< label for = " opendiscussion " >< ? php echo I18n :: _ ( 'Open discussion' ); ?> </label>
2016-08-09 09:54:42 +00:00
</ div >
< ? php
2016-07-19 12:02:26 +00:00
endif ;
2016-08-09 09:54:42 +00:00
if ( $PASSWORD ) :
?>
2016-07-19 12:02:26 +00:00
< div id = " password " class = " hidden " >
2016-08-09 09:54:42 +00:00
< input type = " password " id = " passwordinput " placeholder = " <?php echo I18n::_('Password (recommended)'); ?> " size = " 32 " />
</ div >
< ? php
endif ;
?>
< div id = " formatter " class = " button hidden " >< ? php echo I18n :: _ ( 'Format' ); ?> :
< select id = " pasteFormatter " name = " pasteFormatter " >
< ? php
foreach ( $FORMATTER as $key => $value ) :
?>
2016-07-19 12:02:26 +00:00
< option value = " <?php echo $key ; ?> " < ? php
2016-08-09 09:54:42 +00:00
if ( $key == $FORMATTERDEFAULT ) :
?> selected="selected"<?php
endif ;
?> ><?php echo $value; ?></option>
< ? php
endforeach ;
?>
2016-07-19 12:02:26 +00:00
</ select >
2016-08-09 09:54:42 +00:00
</ div >
< ? php
if ( strlen ( $LANGUAGESELECTION )) :
?>
2016-07-19 12:02:26 +00:00
< div id = " language " class = " button " >
2016-08-09 09:54:42 +00:00
< select name = " lang " >
< ? php
foreach ( $LANGUAGES as $key => $value ) :
?>
2016-08-09 12:46:32 +00:00
< option data - lang = " <?php echo $key ; ?> " value = " <?php echo $key ; ?> " < ? php
2016-08-09 09:54:42 +00:00
if ( $key == $LANGUAGESELECTION ) :
?> selected="selected"<?php
endif ;
?> ><?php echo $value[0]; ?> (<?php echo $value[1]; ?>)</option>
< ? php
endforeach ;
?>
2016-07-19 12:02:26 +00:00
</ select >
2016-08-09 09:54:42 +00:00
</ div >
< ? php
endif ;
?>
2016-07-19 12:02:26 +00:00
</ div >
2018-01-02 07:23:11 +00:00
< ? php
if ( $QRCODE ) :
?>
< div id = " qrcode-display " ></ div >
< ? php
endif ;
?> <div id="pastesuccess" class="hidden">
2016-07-19 12:02:26 +00:00
< div id = " deletelink " ></ div >
2018-02-25 09:09:19 +00:00
< div id = " pastelink " ></ div >
2016-08-09 09:54:42 +00:00
< ? php
if ( strlen ( $URLSHORTENER )) :
?>
2020-02-01 08:15:14 +00:00
< button id = " shortenbutton " data - shortener = " <?php echo I18n::encode( $URLSHORTENER ); ?> " >< img src = " img/icon_shorten.png " width = " 13 " height = " 15 " />< ? php echo I18n :: _ ( 'Shorten URL' ); ?> </button>
2016-08-09 09:54:42 +00:00
< ? php
endif ;
?>
</ div >
< ? php
if ( $FILEUPLOAD ) :
?>
< div id = " attachment " class = " hidden " >< a >< ? php echo I18n :: _ ( 'Download attachment' ); ?> </a></div>
2016-07-19 12:02:26 +00:00
< div id = " attach " class = " hidden " >
2016-08-09 09:54:42 +00:00
< span id = " clonedfile " class = " hidden " >< ? php echo I18n :: _ ( 'Cloned file attached.' ); ?> </span>
< span id = " filewrap " >< ? php echo I18n :: _ ( 'Attach a file' ); ?> : <input type="file" id="file" name="file" /></span>
2017-05-13 19:43:32 +00:00
< span id = " dragAndDropFileName " class = " dragAndDropFile " >< ? php echo I18n :: _ ( 'alternatively drag & drop a file or paste an image from the clipboard' ); ?> </span>
2016-08-09 09:54:42 +00:00
< button id = " fileremovebutton " >< ? php echo I18n :: _ ( 'Remove attachment' ); ?> </button>
</ div >
< ? php
endif ;
?>
2016-07-19 12:02:26 +00:00
< div id = " preview " class = " hidden " >
2016-08-09 09:54:42 +00:00
< button id = " messageedit " >< ? php echo I18n :: _ ( 'Editor' ); ?> </button>
< button id = " messagepreview " >< ? php echo I18n :: _ ( 'Preview' ); ?> </button>
2016-07-19 12:02:26 +00:00
</ div >
2017-02-12 14:35:37 +00:00
< div id = " attachmentPreview " class = " hidden " ></ div >
2016-07-19 12:02:26 +00:00
< div id = " prettymessage " class = " hidden " >
< pre id = " prettyprint " class = " prettyprint linenums:1 " ></ pre >
</ div >
2017-03-12 13:16:08 +00:00
< div id = " plaintext " class = " hidden " ></ div >
2016-07-19 12:02:26 +00:00
< textarea id = " message " name = " message " cols = " 80 " rows = " 25 " class = " hidden " ></ textarea >
</ article >
</ section >
< section >
< div id = " discussion " class = " hidden " >
2016-08-09 09:54:42 +00:00
< h4 class = " title " >< ? php echo I18n :: _ ( 'Discussion' ); ?> </h4>
2017-03-12 13:16:08 +00:00
< div id = " commentcontainer " ></ div >
2016-07-19 12:02:26 +00:00
</ div >
</ section >
2017-03-12 13:16:08 +00:00
< ? php
if ( $DISCUSSION ) :
?>
2018-04-30 18:01:38 +00:00
< div id = " serverdata " class = " hidden " aria - hidden = " true " >
2017-03-12 13:16:08 +00:00
< div id = " templates " >
< article id = " commenttemplate " class = " comment " >< div class = " commentmeta " >< span class = " nickname " > name </ span >< span class = " commentdate " > 0000 - 00 - 00 </ span ></ div >< div class = " commentdata " > c </ div >< button class = " btn btn-default btn-sm " >< ? php echo I18n :: _ ( 'Reply' ); ?> </button></article>
< div id = " commenttailtemplate " class = " comment " >< button class = " btn btn-default btn-sm " >< ? php echo I18n :: _ ( 'Add comment' ); ?> </button></div>
2017-03-13 20:11:26 +00:00
< div id = " replytemplate " class = " reply hidden " >< input type = " text " id = " nickname " class = " form-control " title = " <?php echo I18n::_('Optional nickname…'); ?> " placeholder = " <?php echo I18n::_('Optional nickname…'); ?> " />< textarea id = " replymessage " class = " replymessage form-control " cols = " 80 " rows = " 7 " ></ textarea >< br />< div id = " replystatus " role = " alert " class = " statusmessage hidden alert " >< span class = " glyphicon " aria - hidden = " true " ></ span > </ div >< button id = " replybutton " class = " btn btn-default btn-sm " >< ? php echo I18n :: _ ( 'Post comment' ); ?> </button></div>
2017-03-12 13:16:08 +00:00
</ div >
2018-04-30 18:01:38 +00:00
</ div >
2017-03-12 13:16:08 +00:00
< ? php
endif ;
2019-08-15 23:28:42 +00:00
?>
< ? php
if ( $FILEUPLOAD ) :
?>
< div id = " dropzone " class = " hidden " tabindex = " -1 " aria - hidden = " true " ></ div >
< ? php
endif ;
2017-03-12 13:16:08 +00:00
?>
2017-12-25 13:59:15 +00:00
< section class = " container " >
2016-12-12 17:37:54 +00:00
< div id = " noscript " role = " alert " class = " nonworking alert alert-info noscript-hide " >< span class = " glyphicon glyphicon-exclamation-sign " aria - hidden = " true " >
< span > < ? php echo I18n :: _ ( 'Loading…' ); ?> </span><br>
< span class = " small " >< ? php echo I18n :: _ ( 'In case this message never disappears please have a look at <a href="https://github.com/PrivateBin/PrivateBin/wiki/FAQ#why-does-not-the-loading-message-go-away">this FAQ for information to troubleshoot</a>.' ); ?> </span>
</ div >
</ section >
2016-07-19 12:02:26 +00:00
</ body >
</ html >