bootstrap.html 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="utf-8" />
  5. <meta http-equiv="X-UA-Compatible" content="IE=edge">
  6. <meta name="viewport" content="width=device-width, initial-scale=1">
  7. <meta name="robots" content="noindex" />
  8. <title>{function="i18n::_('PrivateBin')"}</title>
  9. <link type="text/css" rel="stylesheet" href="css/bootstrap/bootstrap-3.3.5.css" />
  10. <link type="text/css" rel="stylesheet" href="css/bootstrap/bootstrap-theme-3.3.5.css" />
  11. <link type="text/css" rel="stylesheet" href="css/bootstrap/privatebin.css?{$VERSION|rawurlencode}" />{if="$SYNTAXHIGHLIGHTING"}
  12. <link type="text/css" rel="stylesheet" href="css/prettify/prettify.css?{$VERSION|rawurlencode}" />{if="strlen($SYNTAXHIGHLIGHTINGTHEME)"}
  13. <link type="text/css" rel="stylesheet" href="css/prettify/{$SYNTAXHIGHLIGHTINGTHEME}.css?{$VERSION|rawurlencode}" />{/if}{/if}
  14. <script type="text/javascript" src="js/jquery-1.11.3.js"></script>
  15. <script type="text/javascript" src="js/sjcl-1.0.2.js"></script>
  16. <script type="text/javascript" src="js/base64-{$BASE64JSVERSION}.js"></script>
  17. <script type="text/javascript" src="js/rawdeflate-0.5.js"></script>
  18. <script type="text/javascript" src="js/rawinflate-0.3.js"></script>
  19. <script type="text/javascript" src="js/bootstrap-3.3.5.js"></script>{if="$SYNTAXHIGHLIGHTING"}
  20. <script type="text/javascript" src="js/prettify.js?{$VERSION|rawurlencode}"></script>{/if}{if="$MARKDOWN"}
  21. <script type="text/javascript" src="js/showdown-1.4.1.js"></script>{/if}
  22. <script type="text/javascript" src="js/privatebin.js?{$VERSION|rawurlencode}"></script>
  23. <!--[if lt IE 10]>
  24. <style type="text/css">#ienotice {display:block !important;} #oldienotice {display:block !important;}</style>
  25. <![endif]-->
  26. <link rel="apple-touch-icon" sizes="180x180" href="apple-touch-icon.png?{$VERSION|rawurlencode}">
  27. <link rel="icon" type="image/png" href="favicon-32x32.png" sizes="32x32?{$VERSION|rawurlencode}">
  28. <link rel="icon" type="image/png" href="favicon-16x16.png" sizes="16x16?{$VERSION|rawurlencode}">
  29. <link rel="manifest" href="manifest.json?{$VERSION|rawurlencode}">
  30. <link rel="mask-icon" href="safari-pinned-tab.svg?{$VERSION|rawurlencode}" color="#ffcc00">
  31. <meta name="theme-color" content="#ffe57e">
  32. </head>
  33. <body role="document">
  34. <nav class="navbar navbar-default navbar-static-top">
  35. <div class="navbar-header">
  36. <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
  37. <span class="sr-only">{function="i18n::_('Toggle navigation')"}</span>
  38. <span class="icon-bar"></span>
  39. <span class="icon-bar"></span>
  40. <span class="icon-bar"></span>
  41. </button>
  42. <a class="reloadlink navbar-brand" href="/">
  43. <img alt="{function="i18n::_('PrivateBin')"}" src="favicon-32x32.png" width="20" />
  44. </a>
  45. </div>
  46. <div id="navbar" class="navbar-collapse collapse">
  47. <ul class="nav navbar-nav">
  48. <li>
  49. <button id="newbutton" type="button" class="reloadlink hidden btn btn-default navbar-btn">
  50. <span class="glyphicon glyphicon-file" aria-hidden="true"></span> {function="i18n::_('New')"}
  51. </button>{if="$EXPIRECLONE"}
  52. <button id="clonebutton" type="button" class="hidden btn btn-default navbar-btn">
  53. <span class="glyphicon glyphicon-duplicate" aria-hidden="true"></span> {function="i18n::_('Clone')"}
  54. </button>{/if}
  55. <button id="rawtextbutton" type="button" class="hidden btn btn-default navbar-btn">
  56. <span class="glyphicon glyphicon-text-background" aria-hidden="true"></span> {function="i18n::_('Raw text')"}
  57. </button>
  58. </li>
  59. <li class="dropdown">
  60. <select id="pasteExpiration" name="pasteExpiration" class="hidden">
  61. {loop="EXPIRE"}
  62. <option value="{$key}"{if="$key == $EXPIREDEFAULT"} selected="selected"{/if}>{$value}</option>{/loop}
  63. </select>
  64. <a id="expiration" href="#" class="hidden dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">{function="i18n::_('Expires')"}: <span id="pasteExpirationDisplay">{$EXPIRE[$EXPIREDEFAULT]}</span> <span class="caret"></span></a>
  65. <ul class="dropdown-menu">
  66. {loop="EXPIRE"}
  67. <li>
  68. <a href="#" onclick="$('#pasteExpiration').val('{$key}');$('#pasteExpirationDisplay').text('{$value}');return false;">
  69. {$value}
  70. </a>
  71. </li>{/loop}
  72. </ul>
  73. </li>
  74. <li>
  75. <div id="burnafterreadingoption" class="navbar-text checkbox hidden">
  76. <label>
  77. <input type="checkbox" id="burnafterreading" name="burnafterreading" {if="$BURNAFTERREADINGSELECTED"} checked="checked"{/if} />
  78. {function="i18n::_('Burn after reading')"}
  79. </label>
  80. </div>
  81. </li>{if="$DISCUSSION"}
  82. <li>
  83. <div id="opendisc" class="navbar-text checkbox hidden">
  84. <label>
  85. <input type="checkbox" id="opendiscussion" name="opendiscussion" {if="$OPENDISCUSSION"} checked="checked"{/if} />
  86. {function="i18n::_('Open discussion')"}
  87. </label>
  88. </div>
  89. </li>{/if}{if="$PASSWORD"}
  90. <li>
  91. <div id="password" class="navbar-form hidden">
  92. <input type="password" id="passwordinput" placeholder="{function="i18n::_('Password (recommended)')"}" class="form-control" size="19"/>
  93. </div>
  94. </li>{/if}{if="$FILEUPLOAD"}
  95. <li id="attach" class="hidden dropdown">
  96. <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">{function="i18n::_('Attach a file')"} <span class="caret"></span></a>
  97. <ul class="dropdown-menu">
  98. <li id="filewrap">
  99. <div>
  100. <input type="file" id="file" name="file" />
  101. </div>
  102. </li>
  103. <li>
  104. <a id="fileremovebutton" href="#">
  105. {function="i18n::_('Remove attachment')"}
  106. </a>
  107. </li>
  108. </ul>
  109. </li>{/if}
  110. <li class="dropdown">
  111. <select id="pasteFormatter" name="pasteFormatter" class="hidden">
  112. {loop="FORMATTER"}
  113. <option value="{$key}"{if="$key == $FORMATTERDEFAULT"} selected="selected"{/if}>{$value}</option>{/loop}
  114. </select>
  115. <a id="formatter" href="#" class="hidden dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">{function="i18n::_('Format')"}: <span id="pasteFormatterDisplay">{$FORMATTER[$FORMATTERDEFAULT]}</span> <span class="caret"></span></a>
  116. <ul class="dropdown-menu">
  117. {loop="FORMATTER"}
  118. <li>
  119. <a href="#" onclick="$('#pasteFormatter').val('{$key}');$('#pasteFormatterDisplay').text('{$value}');return false;">
  120. {$value}
  121. </a>
  122. </li>{/loop}
  123. </ul>
  124. </li>
  125. </ul>
  126. <ul class="nav navbar-nav pull-right">{if="strlen($LANGUAGESELECTION)"}
  127. <li id="language" class="dropdown">
  128. <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false"><span class="glyphicon glyphicon-flag" aria-hidden="true"></span> {$LANGUAGES[$LANGUAGESELECTION][0]} <span class="caret"></span></a>
  129. <ul class="dropdown-menu">
  130. {loop="LANGUAGES"}
  131. <li>
  132. <a href="#" class="reloadlink" onclick="document.cookie='lang={$key}';">
  133. {$value[0]} ({$value[1]})
  134. </a>
  135. </li>{/loop}
  136. </ul>
  137. </li>{/if}
  138. <li>
  139. <button id="sendbutton" type="button" class="hidden btn btn-primary navbar-btn">
  140. <span class="glyphicon glyphicon-upload" aria-hidden="true"></span> {function="i18n::_('Send')"}
  141. </button>
  142. </li>
  143. </ul>
  144. </div>
  145. </nav>
  146. <header class="container">{if="strlen($NOTICE)"}
  147. <div role="alert" class="alert alert-info">
  148. <span class="glyphicon glyphicon-info-sign" aria-hidden="true"></span> {$NOTICE|htmlspecialchars}
  149. </div>{/if}
  150. <div id="remainingtime" role="alert" class="hidden alert alert-info">
  151. <span class="glyphicon glyphicon-info-sign" aria-hidden="true"></span>
  152. </div>{if="$FILEUPLOAD"}
  153. <div id="attachment" role="alert" class="hidden alert alert-info">
  154. <span class="glyphicon glyphicon-info-sign" aria-hidden="true"></span> <a>{function="i18n::_('Download attachment')"}</a> <span id="clonedfile" class="hidden">{function="i18n::_('Cloned file attached.')"}</span>
  155. </div>{/if}{if="strlen($STATUS)"}
  156. <div id="status" role="alert" class="alert alert-success">
  157. <span class="glyphicon glyphicon-ok" aria-hidden="true"></span> {$STATUS|htmlspecialchars}
  158. </div>{/if}
  159. <div id="errormessage" role="alert" class="{if="!strlen($ERROR)"}hidden {/if}alert alert-danger"><span class="glyphicon glyphicon-alert" aria-hidden="true"></span> {$ERROR|htmlspecialchars}</div>
  160. <noscript><div id="noscript" role="alert" class="nonworking alert alert-warning"><span class="glyphicon glyphicon-exclamation-sign" aria-hidden="true"></span> {function="i18n::_('Javascript is required for PrivateBin to work.<br />Sorry for the inconvenience.')"}</div></noscript>
  161. <div id="oldienotice" role="alert" class="hidden nonworking alert alert-danger"><span class="glyphicon glyphicon-alert" aria-hidden="true"></span> {function="i18n::_('PrivateBin requires a modern browser to work.')"}</div>
  162. <div id="ienotice" role="alert" class="hidden alert alert-warning"><span class="glyphicon glyphicon-question-sign" aria-hidden="true"></span> {function="i18n::_('Still using Internet Explorer? Do yourself a favor, switch to a modern browser:')"}
  163. <a href="http://www.mozilla.org/firefox/">Firefox</a>,
  164. <a href="http://www.opera.com/">Opera</a>,
  165. <a href="http://www.google.com/chrome">Chrome</a>,
  166. <a href="http://www.apple.com/safari">Safari</a>...
  167. </div>
  168. <div id="pasteresult" role="alert" class="hidden alert alert-success">
  169. <span class="glyphicon glyphicon-ok" aria-hidden="true"></span>
  170. <div id="deletelink"></div>
  171. <div id="pastelink">{if="strlen($URLSHORTENER)"}
  172. <button id="shortenbutton" data-shortener="{$URLSHORTENER|htmlspecialchars}" type="button" class="btn btn-primary">
  173. <span class="glyphicon glyphicon-send" aria-hidden="true"></span> {function="i18n::_('Shorten URL')"}
  174. </button>
  175. {/if}</div>
  176. </div>
  177. <ul id="preview" class="nav nav-tabs hidden">
  178. <li role="presentation" class="active"><a id="messageedit" href="#">{function="i18n::_('Editor')"}</a></li>
  179. <li role="presentation"><a id="messagepreview" href="#">{function="i18n::_('Preview')"}</a></li>
  180. </ul>
  181. </header>
  182. <section class="container">
  183. <article class="row">
  184. <div id="image" class="col-md-12 text-center hidden"></div>
  185. <div id="prettymessage" class="col-md-12 hidden">
  186. <pre id="prettyprint" class="col-md-12 prettyprint linenums:1"></pre>
  187. </div>
  188. <div id="cleartext" class="col-md-12 hidden"></div>
  189. <p class="col-md-12"><textarea id="message" name="message" cols="80" rows="25" class="form-control hidden"></textarea></p>
  190. </article>
  191. </section>
  192. <section class="container">
  193. <div id="discussion" class="hidden">
  194. <h4>{function="i18n::_('Discussion')"}</h4>
  195. <div id="comments"></div>
  196. </div>
  197. </section>
  198. <footer class="container">
  199. <div class="row">
  200. <h4 class="col-md-5 col-xs-8">{function="i18n::_('PrivateBin')"} <small>- {function="i18n::_('Because ignorance is bliss')"}</small></h4>
  201. <p class="col-md-1 col-xs-4 text-center">{$VERSION}</p>
  202. <p id="aboutbox" class="col-md-6 col-xs-12">
  203. {function="i18n::_('PrivateBin 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://github.com/PrivateBin/PrivateBin/wiki">project page</a>.')"}
  204. </p>
  205. </div>
  206. </footer>
  207. <div id="cipherdata" class="hidden">{$CIPHERDATA}</div>
  208. </body>
  209. </html>