closedir($dhandle); ksort($comments); // Sort comments by date, oldest first. $messages = array_merge($messages, $comments); } $CIPHERDATA = json_encode($messages); // If the paste was meant to be read only once, delete it. if (property_exists($paste->meta, 'burnafterreading') && $paste->meta->burnafterreading) { deletePaste($pasteid); } return array($CIPHERDATA, '', ''); } $CIPHERDATA = ''; $ERRORMESSAGE = ''; $STATUS = ''; if (!empty($_GET['deletetoken']) && !empty($_GET['pasteid'])) { list($CIPHERDATA, $ERRORMESSAGE, $STATUS) = processPasteDelete($_GET['pasteid'], $_GET['deletetoken']); } else { if (!empty($_SERVER['QUERY_STRING'])) { list($CIPHERDATA, $ERRORMESSAGE, $STATUS) = processPasteFetch($_SERVER['QUERY_STRING']); } } require_once "lib/rain.tpl.class.php"; header('Content-Type: text/html; charset=utf-8'); $page = new RainTPL(); $page->assign('CIPHERDATA', htmlspecialchars($CIPHERDATA, ENT_NOQUOTES)); // We escape it here because ENT_NOQUOTES can't be used in RainTPL templates. $page->assign('VERSION', $VERSION); $page->assign('ERRORMESSAGE', $ERRORMESSAGE); $page->assign('STATUS', $STATUS); $page->draw('page');
if (!is_file($filename)) { // Check that paste exists. return array('', 'Paste does not exist!', ''); } } else { return array('', 'Invalid data!', ''); } // Get the paste itself. $paste = json_decode(file_get_contents($filename)); $messages = array($paste); // The paste itself is the first in the list of encrypted messages. $CIPHERDATA = json_encode($messages); return array($CIPHERDATA, '', ''); } if ($showmode) { $pasteObj = processPasteFetch($pasteid); } ?> <html lang="en"> <head> <meta charset="utf-8"> <title>ybin | private paste</title> <link rel="stylesheet" type="text/css" href="/css/main.css"> <link rel="stylesheet" type="text/css" href="/css/font-awesome.min.css"> <script src="/js/jquery.js"></script> <script src="/js/sjcl.js"></script> <script src="/js/base64.js"></script> <script src="/js/rawdeflate.js"></script> <script src="/js/rawinflate.js"></script>