forked from GithubBackups/tinyib
Moving code from imgboard.php to functions.php
This commit is contained in:
parent
f0540cd221
commit
18432ee93a
76
imgboard.php
76
imgboard.php
@ -62,24 +62,8 @@ if (isset($_POST["message"]) || isset($_POST["file"])) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
$modpost = false;
|
list($loggedin, $isadmin) = manageCheckLogIn();
|
||||||
if (isset($_POST['modpost'])) {
|
$modpost = isModPost();
|
||||||
list($loggedin, $isadmin) = manageCheckLogIn();
|
|
||||||
if ($loggedin) {
|
|
||||||
$modpost = true;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
$parent = "0";
|
|
||||||
if (isset($_POST["parent"])) {
|
|
||||||
if ($_POST["parent"] != "0") {
|
|
||||||
if (!threadExistsByID($_POST['parent'])) {
|
|
||||||
fancyDie("Invalid parent thread ID supplied, unable to create post.");
|
|
||||||
}
|
|
||||||
|
|
||||||
$parent = $_POST["parent"];
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
$lastpost = lastPostByIP();
|
$lastpost = lastPostByIP();
|
||||||
if ($lastpost) {
|
if ($lastpost) {
|
||||||
@ -93,7 +77,7 @@ if (isset($_POST["message"]) || isset($_POST["file"])) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
$post = newPost();
|
$post = newPost();
|
||||||
$post['parent'] = $parent;
|
$post['parent'] =setParent();
|
||||||
$post['ip'] = $_SERVER['REMOTE_ADDR'];
|
$post['ip'] = $_SERVER['REMOTE_ADDR'];
|
||||||
|
|
||||||
list($post['name'], $post['tripcode']) = nameAndTripcode($_POST["name"]);
|
list($post['name'], $post['tripcode']) = nameAndTripcode($_POST["name"]);
|
||||||
@ -123,30 +107,7 @@ if (isset($_POST["message"]) || isset($_POST["file"])) {
|
|||||||
|
|
||||||
if (isset($_FILES['file'])) {
|
if (isset($_FILES['file'])) {
|
||||||
if ($_FILES['file']['name'] != "") {
|
if ($_FILES['file']['name'] != "") {
|
||||||
switch ($_FILES['file']['error']) {
|
validateFileUpload();
|
||||||
case UPLOAD_ERR_OK:
|
|
||||||
break;
|
|
||||||
case UPLOAD_ERR_FORM_SIZE:
|
|
||||||
fancyDie("That file is larger than 2 MB.");
|
|
||||||
break;
|
|
||||||
case UPLOAD_ERR_INI_SIZE:
|
|
||||||
fancyDie("The uploaded file exceeds the upload_max_filesize directive (" . ini_get('upload_max_filesize') . ") in php.ini.");
|
|
||||||
break;
|
|
||||||
case UPLOAD_ERR_PARTIAL:
|
|
||||||
fancyDie("The uploaded file was only partially uploaded.");
|
|
||||||
break;
|
|
||||||
case UPLOAD_ERR_NO_FILE:
|
|
||||||
fancyDie("No file was uploaded.");
|
|
||||||
break;
|
|
||||||
case UPLOAD_ERR_NO_TMP_DIR:
|
|
||||||
fancyDie("Missing a temporary folder.");
|
|
||||||
break;
|
|
||||||
case UPLOAD_ERR_CANT_WRITE:
|
|
||||||
fancyDie("Failed to write file to disk");
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
fancyDie("Unable to save the uploaded file.");
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!is_file($_FILES['file']['tmp_name']) || !is_readable($_FILES['file']['tmp_name'])) {
|
if (!is_file($_FILES['file']['tmp_name']) || !is_readable($_FILES['file']['tmp_name'])) {
|
||||||
fancyDie("File transfer failure. Please retry the submission.");
|
fancyDie("File transfer failure. Please retry the submission.");
|
||||||
@ -177,17 +138,7 @@ if (isset($_POST["message"]) || isset($_POST["file"])) {
|
|||||||
fancyDie("Only GIF, JPG, and PNG files are allowed.");
|
fancyDie("Only GIF, JPG, and PNG files are allowed.");
|
||||||
}
|
}
|
||||||
|
|
||||||
$hexmatches = postsByHex($post['file_hex']);
|
checkDuplicateImage($post['file_hex']);
|
||||||
if (count($hexmatches) > 0) {
|
|
||||||
foreach ($hexmatches as $hexmatch) {
|
|
||||||
if ($hexmatch["parent"] == "0") {
|
|
||||||
$goto = $hexmatch["id"];
|
|
||||||
} else {
|
|
||||||
$goto = $hexmatch["parent"];
|
|
||||||
}
|
|
||||||
fancyDie("Duplicate file uploaded. That file has already been posted <a href=\"res/" . $goto . ".html#" . $hexmatch["id"] . "\">here</a>.");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!move_uploaded_file($_FILES['file']['tmp_name'], $file_location)) {
|
if (!move_uploaded_file($_FILES['file']['tmp_name'], $file_location)) {
|
||||||
fancyDie("Could not copy uploaded file.");
|
fancyDie("Could not copy uploaded file.");
|
||||||
@ -197,23 +148,16 @@ if (isset($_POST["message"]) || isset($_POST["file"])) {
|
|||||||
fancyDie("File transfer failure. Please go back and try again.");
|
fancyDie("File transfer failure. Please go back and try again.");
|
||||||
}
|
}
|
||||||
|
|
||||||
$post['image_width'] = $file_info[0];
|
$post['image_width'] = $file_info[0]; $post['image_height'] = $file_info[1];
|
||||||
$post['image_height'] = $file_info[1];
|
|
||||||
|
|
||||||
if ($post['image_width'] > 250 || $post['image_height'] > 250) {
|
list($thumb_maxwidth, $thumb_maxheight) = thumbnailDimensions($post['image_width'], $post['image_height']);
|
||||||
$width = 250;
|
|
||||||
$height = 250;
|
if (!createThumbnail($file_location, $thumb_location, $thumb_maxwidth, $thumb_maxheight)) {
|
||||||
} else {
|
|
||||||
$width = $post['image_width'];
|
|
||||||
$height = $post['image_height'];
|
|
||||||
}
|
|
||||||
if (!createThumbnail($file_location, $thumb_location, $width, $height)) {
|
|
||||||
fancyDie("Could not create thumbnail.");
|
fancyDie("Could not create thumbnail.");
|
||||||
}
|
}
|
||||||
|
|
||||||
$thumb_info = getimagesize($thumb_location);
|
$thumb_info = getimagesize($thumb_location);
|
||||||
$post['thumb_width'] = $thumb_info[0];
|
$post['thumb_width'] = $thumb_info[0]; $post['thumb_height'] = $thumb_info[1];
|
||||||
$post['thumb_height'] = $thumb_info[1];
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -185,8 +185,82 @@ function manageCheckLogIn() {
|
|||||||
return array($loggedin, $isadmin);
|
return array($loggedin, $isadmin);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function setParent() {
|
||||||
|
if (isset($_POST["parent"])) {
|
||||||
|
if ($_POST["parent"] != "0") {
|
||||||
|
if (!threadExistsByID($_POST['parent'])) {
|
||||||
|
fancyDie("Invalid parent thread ID supplied, unable to create post.");
|
||||||
|
}
|
||||||
|
|
||||||
|
return $_POST["parent"];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return "0";
|
||||||
|
}
|
||||||
|
|
||||||
|
function isModPost() {
|
||||||
|
if (isset($_POST['modpost'])) {
|
||||||
|
list($loggedin, $isadmin) = manageCheckLogIn();
|
||||||
|
if ($loggedin) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
function validateFileUpload() {
|
||||||
|
switch ($_FILES['file']['error']) {
|
||||||
|
case UPLOAD_ERR_OK:
|
||||||
|
break;
|
||||||
|
case UPLOAD_ERR_FORM_SIZE:
|
||||||
|
fancyDie("That file is larger than 2 MB.");
|
||||||
|
break;
|
||||||
|
case UPLOAD_ERR_INI_SIZE:
|
||||||
|
fancyDie("The uploaded file exceeds the upload_max_filesize directive (" . ini_get('upload_max_filesize') . ") in php.ini.");
|
||||||
|
break;
|
||||||
|
case UPLOAD_ERR_PARTIAL:
|
||||||
|
fancyDie("The uploaded file was only partially uploaded.");
|
||||||
|
break;
|
||||||
|
case UPLOAD_ERR_NO_FILE:
|
||||||
|
fancyDie("No file was uploaded.");
|
||||||
|
break;
|
||||||
|
case UPLOAD_ERR_NO_TMP_DIR:
|
||||||
|
fancyDie("Missing a temporary folder.");
|
||||||
|
break;
|
||||||
|
case UPLOAD_ERR_CANT_WRITE:
|
||||||
|
fancyDie("Failed to write file to disk");
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
fancyDie("Unable to save the uploaded file.");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function checkDuplicateImage($hex) {
|
||||||
|
$hexmatches = postsByHex($hex);
|
||||||
|
if (count($hexmatches) > 0) {
|
||||||
|
foreach ($hexmatches as $hexmatch) {
|
||||||
|
if ($hexmatch["parent"] == "0") {
|
||||||
|
$goto = $hexmatch["id"];
|
||||||
|
} else {
|
||||||
|
$goto = $hexmatch["parent"];
|
||||||
|
}
|
||||||
|
fancyDie("Duplicate file uploaded. That file has already been posted <a href=\"res/" . $goto . ".html#" . $hexmatch["id"] . "\">here</a>.");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function thumbnailDimensions($width, $height) {
|
||||||
|
if ($width > 250 || $height > 250) {
|
||||||
|
return array(250, 250);
|
||||||
|
} else {
|
||||||
|
return array($width, $height);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
function createThumbnail($name, $filename, $new_w, $new_h) {
|
function createThumbnail($name, $filename, $new_w, $new_h) {
|
||||||
$system=explode(".", $filename);
|
$system = explode(".", $filename);
|
||||||
$system = array_reverse($system);
|
$system = array_reverse($system);
|
||||||
if (preg_match("/jpg|jpeg/", $system[0])) {
|
if (preg_match("/jpg|jpeg/", $system[0])) {
|
||||||
$src_img=imagecreatefromjpeg($name);
|
$src_img=imagecreatefromjpeg($name);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user