Add image upload and image watermarking
[photocalendar.git] / confirmUpload.php
blob:a/confirmUpload.php -> blob:b/confirmUpload.php
--- a/confirmUpload.php
+++ b/confirmUpload.php
@@ -1,1 +1,46 @@
+<?php
+include("common.inc.php");
+include_header("confirmUpload");
+$error = false;
 
+if (!isset($_FILES['userfile'])) {
+	echo 'No file was uploaded. You should start from the <a href="upload.php">upload page</a>';
+	$error = true;
+} else {
+ $imageinfo = getimagesize($_FILES['userfile']['tmp_name']);
+ $source_image_type = $imageinfo['mime'];
+$source_image_width = $imageinfo[0];
+ $source_image_height = $imageinfo[1];
+}
+
+if($error == false && ($source_image_type != 'image/png' && $source_image_type != 'image/jpeg')) {
+    echo "Sorry, we only accept PNG and JPEG images. Your image was of type '$source_image_type'.<br>";
+	$error = true;
+} 
+if($error == false && ($source_image_width < MIN_IMAGE_SIZE || $source_image_height < MIN_IMAGE_SIZE)) {
+    echo "Sorry, we only accept images larger than ".MIN_IMAGE_SIZE." pixels. Your image was $source_image_width x $source_image_height pixels big. <br>";
+	$error = true;
+} 
+ 
+if($error == false && ($source_image_width != $source_image_height)) {
+    echo "Sorry, we only accept images that are exactly square (the height is the same as the width). Your image was $source_image_width x $source_image_height pixels big. <br>";
+	$error = true;
+} 
+if (!$error) {
+	$fileExtension = ($source_image_type == 'image/png' ? ".png" : ".jpg");
+	$fileDate = getNextAvailableDate();
+	echo "Uploaded file meets all necessary requirements, next available date is $fileDate <br>";
+	$uploaddir = '/var/spool/uploads/'; # Outside of web root
+	$uploadfile = DATA_DIR  . $fileDate . $fileExtension;
+	if (file_exists($uploadfile)) {
+		echo "Oh no! A file for $fileDate already exists! Please retry in a moment<br>";
+	} else {
+		if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile)) {
+		    echo "File was successfully uploaded.\n<br>";
+		} else {
+		    echo "File uploading failed.\n<br>";
+		}
+	}
+}
+include_footer();
+?>