<?php /* * Paste <https://github.com/jordansamuel/PASTE> * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License * as published by the Free Software Foundation; either version 3 * of the License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License in GPL.txt for more details. */ define('IN_ADMIN', 1); require_once('common.php'); updateAdminHistory($conn); $query = $conn->query('SELECT * FROM site_info'); if ($row = $query->fetch()) { $title = Trim($row['title']); $des = Trim($row['des']); $baseurl = Trim($row['baseurl']); $keyword = Trim($row['keyword']); $site_name = Trim($row['site_name']); $email = Trim($row['email']); $twit = Trim($row['twit']); $face = Trim($row['face']); $gplus = Trim($row['gplus']); $ga = Trim($row['ga']); $additional_scripts = Trim($row['additional_scripts']); } $query = "SELECT * FROM captcha WHERE id = '1'"; $result = $conn->query('SELECT * FROM captcha WHERE id = 1'); if ($row = $result->fetch()) { $cap_e = $row['cap_e']; $mode = $row['mode']; $mul = $row['mul']; $allowed = $row['allowed']; $color = $row['color']; $recaptcha_sitekey = $row['recaptcha_sitekey']; $recaptcha_secretkey = $row['recaptcha_secretkey']; } $result = $conn->query("SELECT * FROM site_permissions WHERE id='1'"); if ($row = $result->fetch()) { $disableguest = Trim($row['disableguest']); $siteprivate = Trim($row['siteprivate']); } $result = $conn->query("SELECT * FROM mail WHERE id='1'"); if ($row = $result->fetch()) { $verification = Trim($row['verification']); $smtp_host = Trim($row['smtp_host']); $smtp_username = Trim($row['smtp_username']); $smtp_password = Trim($row['smtp_password']); $smtp_port = Trim($row['smtp_port']); $protocol = Trim($row['protocol']); $auth = Trim($row['auth']); $socket = Trim($row['socket']); } /* Update the configuration if necessary */ if ($_SERVER['REQUEST_METHOD'] === 'POST') { if (isset($_POST['manage'])) { $query = $conn->prepare( 'UPDATE site_info SET title = ?, des = ?, baseurl = ?, keyword = ?, site_name = ?, email = ?, twit = ?, face = ?, gplus = ?, ga = ?, additional_scripts = ? WHERE id = 1' ); $query->execute([ trim($_POST['title']), trim($_POST['des']), trim($_POST['baseurl']), trim($_POST['keyword']), trim($_POST['site_name']), trim($_POST['email']), trim($_POST['twit']), trim($_POST['face']), trim($_POST['gplus']), trim($_POST['ga']), trim($_POST['additional_scripts']) ]); $msg = '<div class="paste-alert alert3" style="text-align: center;"> Configuration saved </div>'; } if (isset($_POST['cap'])) { $query = $conn->prepare( 'UPDATE captcha SET cap_e = ?, mode = ?, mul = ?, allowed = ?, color = ?, recaptcha_sitekey = ?, recaptcha_secretkey = ? WHERE id = 1' ); $query->execute([ trim($_POST['cap_e']), trim($_POST['mode']), trim($_POST['mul']), trim($_POST['allowed']), trim($_POST['color']), trim($_POST['recaptcha_sitekey']), trim($_POST['recaptcha_secretkey']) ]); $msg = '<div class="paste-alert alert3" style="text-align: center;"> Captcha settings saved </div>'; } if (isset($_POST['permissions'])) { $query = $conn->prepare('UPDATE site_permissions SET disableguest = ?, siteprivate = ? WHERE id = 1'); $query->execute([ trim($_POST['disableguest']), trim($_POST['siteprivate']) ]); $msg = '<div class="paste-alert alert3" style="text-align: center;"> Site permissions saved. </div>'; } } if (isset($_POST['smtp_code'])) { $query = $conn->prepare( 'UPDATE mail SET verification = ?, smtp_host = ?, smtp_port = ?, smtp_username = ?, smtp_password = ?, socket = ?, protocol = ?, auth = ? WHERE id = 1' ); $query->execute([ trim($_POST['verification']), trim($_POST['smtp_host']), trim($_POST['smtp_port']), trim($_POST['smtp_user']), trim($_POST['socket']), trim($_POST['auth']), trim($_POST['protocol']) ]); $msg = ' <div class="paste-alert alert3" style="text-align: center;"> Mail settings updated </div>'; } ?> <!DOCTYPE html> <html lang="en"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1"> <title>Paste - Configuration</title> <link rel="shortcut icon" href="favicon.ico"> <link href="css/paste.css" rel="stylesheet" type="text/css" /> </head> <body> <div id="top" class="clearfix"> <!-- Start App Logo --> <div class="applogo"> <a href="../" class="logo">Paste</a> </div> <!-- End App Logo --> <!-- Start Top Right --> <ul class="top-right"> <li class="dropdown link"> <a href="#" data-toggle="dropdown" class="dropdown-toggle profilebox"><b>Admin</b><span class="caret"></span></a> <ul class="dropdown-menu dropdown-menu-list dropdown-menu-right"> <li><a href="admin.php">Settings</a></li> <li><a href="?logout">Logout</a></li> </ul> </li> </ul> <!-- End Top Right --> </div> <!-- END TOP --> <div class="content"> <!-- START CONTAINER --> <div class="container-widget"> <!-- Start Menu --> <?php include 'menu.php';?> <!-- End Menu --> <!-- Start Configuration Panel --> <div class="row"> <div class="col-md-12"> <div class="panel panel-widget"> <div class="panel-body"> <?php if (isset($msg)) echo $msg; ?> <div role="tabpanel"> <!-- Nav tabs --> <ul class="nav nav-tabs nav-line" role="tablist" style="text-align: center;"> <li role="presentation" class="active"><a href="#siteinfo" aria-controls="siteinfo" role="tab" data-toggle="tab">Site Info</a></li> <li role="presentation"><a href="#permissions" aria-controls="permissions" role="tab" data-toggle="tab">Permissions</a></li> <li role="presentation"><a href="#captcha" aria-controls="captcha" role="tab" data-toggle="tab">Captcha Settings</a></li> <li role="presentation"><a href="#mail" aria-controls="mail" role="tab" data-toggle="tab">Mail Settings</a></li> </ul> <!-- Tab panes --> <div class="tab-content"> <div role="tabpanel" class="tab-pane active" id="siteinfo"> <form class="form-horizontal" method="POST" action="<?php echo $_SERVER['PHP_SELF']; ?>"> <div class="form-group"> <label class="col-sm-2 control-label form-label">Site Name</label> <div class="col-sm-10"> <input type="text" class="form-control" name="site_name" placeholder="The name of your site" value="<?php echo (isset($_POST['site_name']))?$_POST['site_name']:$site_name; // Prevent special characters on $_POST ?>"> </div> </div> <div class="form-group"> <label class="col-sm-2 control-label form-label">Site Title</label> <div class="col-sm-10"> <input type="text" class="form-control" name="title" placeholder="Site title tag" value="<?php echo (isset($_POST['title']))?$_POST['title']:$title; // Prevent special characters on $_POST ?>"> </div> </div> <div class="form-group"> <label class="col-sm-2 control-label form-label">Domain name</label> <div class="col-sm-1" style="padding:5px;"> <span class="badge"> <?php if ($_SERVER['HTTPS'] == "on") { echo "https://"; } else { echo "http://"; }?> </span> </div> <div class="col-sm-5"> <input type="text" class="form-control" name="baseurl" placeholder="eg: pastethis.in (no trailing slash)" value="<?php echo (isset($_POST['baseurl']))?$_POST['baseurl']:$baseurl; // Prevent special characters on $_POST ?>"> </div> </div> <div class="form-group"> <label class="col-sm-2 control-label form-label">Site Description</label> <div class="col-sm-10"> <input type="text" class="form-control" name="des" placeholder="Site description" value="<?php echo (isset($_POST['des']))?$_POST['des']:$des; // Prevent special characters on $_POST ?>"> </div> </div> <div class="form-group"> <label class="col-sm-2 control-label form-label">Site Keywords</label> <div class="col-sm-10"> <input type="text" class="form-control" name="keyword" placeholder="Keywords (separated by a comma)" value="<?php echo $keyword; ?>"> </div> </div> <div class="form-group"> <label class="col-sm-2 control-label form-label">Google Analytics</label> <div class="col-sm-10"> <input type="text" class="form-control" name="ga" placeholder="Google Analytics ID" value="<?php echo $ga; ?>"> </div> </div> <div class="form-group"> <label class="col-sm-2 control-label form-label">Admin Email</label> <div class="col-sm-10"> <input type="text" class="form-control" name="email" placeholder="Email" value="<?php echo (isset($_POST['email']))?$_POST['email']:$email; // Prevent special characters on $_POST ?>"> </div> </div> <div class="form-group"> <label class="col-sm-2 control-label form-label">Facebook URL</label> <div class="col-sm-10"> <input type="text" class="form-control" name="face" placeholder="Facebook URL" value="<?php echo $face; ?>"> </div> </div> <div class="form-group"> <label class="col-sm-2 control-label form-label">Twitter URL</label> <div class="col-sm-10"> <input type="text" class="form-control" name="twit" placeholder="Twitter URL" value="<?php echo $twit; ?>"> </div> </div> <div class="form-group"> <label class="col-sm-2 control-label form-label">Google+ URL</label> <div class="col-sm-10"> <input type="text" class="form-control" name="gplus" placeholder="Google+ URL" value="<?php echo $gplus; ?>"> </div> </div> <div class="form-group"> <label class="col-sm-2 control-label form-label">Additional Site Scripts</label> <div class="col-sm-10"> <textarea class="form-control" id="additional_scripts" name="additional_scripts" rows="8"><?php echo (isset($_POST['additional_scripts']))?$_POST['additional_scripts']:$additional_scripts; // Prevent special characters on $_POST ?></textarea> </div> </div> <input type="hidden" name="manage" value="manage" /> <div class="form-group"> <div class="col-sm-offset-2 col-sm-10"> <button type="submit" class="btn btn-default">Save</button> </div> </div> </form> </div> <!-- Permissions --> <div role="tabpanel" class="tab-pane" id="permissions"> <form class="form-horizontal" method="POST" action="<?php echo $_SERVER['PHP_SELF']; ?>"> <div class="checkbox checkbox-primary"> <input <?php if ($disableguest == "on") echo 'checked="true"'; ?> type="checkbox" name="disableguest" id="disableguest"> <label for="disableguest"> Only allow registered users to paste </label> </div> <div class="checkbox checkbox-primary"> <input <?php if ($siteprivate == "on") echo 'checked="true"'; ?> type="checkbox" name="siteprivate" id="siteprivate"> <label for="siteprivate"> Make site private (no Recent Pastes or Archives) </label> </div> <br /> <input type="hidden" name="permissions" value="permissions" /> <div class="form-group"> <div class="col-sm-offset-2 col-sm-10"> <button type="submit" class="btn btn-default">Save</button> </div> </div> </form> </div> <!-- Captcha pane --> <div role="tabpanel" class="tab-pane" id="captcha"> <form class="form-horizontal" method="POST" action="<?php echo $_SERVER['PHP_SELF']; ?>"> <div class="checkbox checkbox-primary"> <input <?php if ( $cap_e == "on" ) echo 'checked="true"'; ?> type="checkbox" name="cap_e" id="cap_e"> <label for="cap_e">Enable Captcha</label> </div> <br /> <div class="form-group row"> <label for="mode" class="col-sm-1 col-form-label">Captcha Type</label> <select class="selectpicker" name="mode"> <?php if ( $mode == "reCAPTCHA" ) { echo '<option selected="">reCAPTCHA</option>'; } else { echo '<option>reCAPTCHA</option>'; } if ( $mode == "Easy" ) { echo '<option selected="">Easy</option>'; } else { echo '<option>Easy</option>'; } if ( $mode == "Normal" ) { echo '<option selected="">Normal</option>'; } else { echo '<option>Normal</option>'; } if ( $mode == "Tough" ) { echo '<option selected="">Tough</option>'; } else { echo '<option>Tough</option>'; } ?> </select> </div> <hr /> <div class="panel-title"> Internal Captcha Settings: </div> <div class="checkbox checkbox-primary"> <input <?php if ( $mul == "on" ) echo 'checked="true"'; ?> type="checkbox" name="mul" id="mul"> <label for="mul">Enable multiple backgrounds</label> </div> <br /> <div class="form-group row"> <label for="allowed" class="col-sm-1 col-form-label">Captcha Characters</label> <div class="col-sm-10"> <input type="text" id="allowed" name="allowed" placeholder="Allowed Characters" value="<?php echo $allowed; ?>"> </div> </div> <div class="form-group row"> <label for="color" class="col-sm-1 col-form-label">Captcha Text Colour</label> <div class="col-sm-10"> <input type="text" id="color" name="color" placeholder="Captcha Text Colour" value="<?php echo $color; ?>"> </div> </div> <hr /> <div class="panel-title"> reCAPTCHA Settings: </div> <div class="form-group row"> <label for="recaptcha_sitekey" class="col-sm-1 col-form-label">Site Key</label> <div class="col-sm-10"> <input type="text" id="recaptcha_sitekey" name="recaptcha_sitekey" placeholder="Site Key" value="<?php echo $recaptcha_sitekey; ?>"> </div> </div> <div class="form-group row"> <label for="recaptcha_secretkey" class="col-sm-1 col-form-label">Secret Key</label> <div class="col-sm-10"> <input type="text" id="recaptcha_secretkey" name="recaptcha_secretkey" placeholder="Site Key" value="<?php echo $recaptcha_secretkey; ?>"> </div> </div> <input type="hidden" name="cap" value="cap" /> <div class="form-group"> <div class="col-sm-offset-2 col-sm-10"> <button type="submit" class="btn btn-default">Save</button> </div> </div> </form> </div> <!-- Mail Settings --> <div role="tabpanel" class="tab-pane" id="mail"> <form class="form-horizontal" method="POST" action="<?php echo $_SERVER['PHP_SELF']; ?>"> <div class="form-group"> <div class="panel-title"> Registration Settings </div> <label class="col-sm-2 control-label form-label">Email Verification</label> <select class="selectpicker" name="verification"> <?php if ($verification == 'enabled') { echo '<option selected value="enabled">Enabled</option>'; echo '<option value="disabled">Disabled</option>'; } else { echo '<option value="enabled">Enabled</option>'; echo '<option selected value="disabled">Disabled</option>'; } ?> </select> </div> <div class="form-group"> <div class="panel-title"> Mail Settings </div> <label class="col-sm-2 control-label form-label">Mail Protocol</label> <select class="selectpicker" name="protocol"> <?php if ($protocol == '1') { echo '<option selected value="1">PHP Mail</option>'; echo '<option value="2">SMTP</option>'; } else { echo '<option value="1">PHP Mail</option>'; echo '<option selected value="2">SMTP</option>'; } ?> </select> </div> <div class="form-group"> <label class="col-sm-2 control-label form-label">SMTP Auth</label> <select class="selectpicker" name="auth"> <?php if ($auth == 'true') { echo '<option selected value="true">True</option> <option value="false">False</option>'; } else { echo '<option value="true">True</option> <option selected value="false">False</option>'; } ?> </select> </div> <div class="form-group"> <label class="col-sm-2 control-label form-label">SMTP Protocol</label> <select class="selectpicker" name="socket"> <?php if ($socket == 'tls') { echo ' <option selected value="tls">TLS</option> <option value="ssl">SSL</option>'; } else { echo ' <option value="tls">TLS</option> <option selected value="ssl">SSL</option>'; } ?> </select> </div> <div class="form-group"> <label class="col-sm-2 control-label form-label">SMTP Host</label> <div class="col-sm-10"> <input type="text" class="form-control" placeholder="eg smtp.gmail.com" name="smtp_host" value="<?php echo $smtp_host; ?>"> </div> </div> <div class="form-group"> <label class="col-sm-2 control-label form-label">SMTP Port</label> <div class="col-sm-10"> <input type="text" class="form-control" name="smtp_port" placeholder="eg 465 for SSL or 587 for TLS" value="<?php echo $smtp_port; ?>"> </div> </div> <div class="form-group"> <label class="col-sm-2 control-label form-label">SMTP User</label> <div class="col-sm-10"> <input type="text" class="form-control" name="smtp_user" placeholder="eg user@gmail.com" value="<?php echo $smtp_username; ?>"> </div> </div> <div class="form-group"> <label class="col-sm-2 control-label form-label">SMTP Password</label> <div class="col-sm-10"> <input type="password" class="form-control" id="smtp_pass" name="smtp_pass" placeholder="Email password" value="<?php echo($smtp_password); ?>"> </div> </div> <div class="form-group"> <div class="col-sm-offset-2 col-sm-10"> <button style="margin-bottom: 2%;" id="smtppasstoggle" type="button" class="btn btn-default" onclick="if (smtp_pass.type == 'text') {smtp_pass.type = 'password';} else {smtp_pass.type = 'text';}">Toggle password</button> </div> <input type="hidden" name="smtp_code" value="smtp"> <div class="form-group"> <div class="col-sm-offset-2 col-sm-10"> <button type="submit" class="btn btn-default">Save</button> </div> </div> </form> </div> </div> </div> </div> </div> </div> </div> <!-- End Configuration Panel --> </div> <!-- END CONTAINER --> <!-- Start Footer --> <div class="row footer"> <div class="col-md-6 text-left"> <a href="https://github.com/jordansamuel/PASTE" target="_blank">Updates</a> — <a href="https://github.com/jordansamuel/PASTE/issues" target="_blank">Bugs</a> </div> <div class="col-md-6 text-right"> Powered by <a href="https://phpaste.sourceforge.io" target="_blank">Paste</a> </div> </div> <!-- End Footer --> </div> <!-- End content --> <script type="text/javascript" src="js/jquery.min.js"></script> <script type="text/javascript" src="js/bootstrap.min.js"></script> <script type="text/javascript" src="js/bootstrap-select.js"></script> <script> function show() { var smtppassword = document.getElementById('smtp_pass'); smtppassword.setAttribute('type', 'text'); } function hide() { var smtppassword = document.getElementById('smtp_pass'); smtppassword.setAttribute('type', 'password'); } if($('#smtppasstoggle').is(':checked')) { show(); } else { hide(); } </script> </body> </html>