Files
IlLievitario-Service/image_backend.php
T

112 lines
4.0 KiB
PHP

<?php
// inclusione del file contenente la classe
require_once "./include.php";
require_once "./myDropBoxObj.php";
use PHPImageWorkshop\ImageWorkshop;
require_once 'PHPImageWorkshop/ImageWorkshop.php'; // Be sure of the path to the class
//include "./SimpleImage.php";
$app->get('/photo/publish/:imageID', function ($imageID) use ($app) {
$mysqlconnetion = new MysqlClass;
$query = "update immagini set published = 1, published_date = NOW() where id = " . $imageID;
$mysqlconnetion->insertRecord($query);
$mysqlconnetion->disconnetti();
});
$app->delete('/photo/:imageID', function ($imageID) use ($app,$dirRicetteDropBox) {
$mysqlconnetion = new MysqlClass;
$query = "select id_ricette, type_format from immagini where id = " . $imageID;
$retObj = $mysqlconnetion->queryToObject($query, false);
$ext = "";
if ($retObj["type_format"] == "image/jpeg") {
$ext = "jpeg";
} else if ($retObj["type_format"] == "image/png") {
$ext = "png";
}
$dropBoxObj = new myDropBox();
$folder = $dirRicetteDropBox . "/" . $retObj["id_ricette"];
$imageFileName = $imageID . "_full_ricetta." . $ext;
$dropBoxObj->Delete($folder . "/" . $imageFileName);
$imageFileName = $imageID . "_medium_ricetta." . $ext;
$dropBoxObj->Delete($folder . "/" . $imageFileName);
$imageFileName = $imageID . "_thumb_ricetta." . $ext;
$dropBoxObj->Delete($folder . "/" . $imageFileName);
$query = "delete from immagini where id = " . $imageID;
$mysqlconnetion->executeQuery($query);
$mysqlconnetion->disconnetti();
});
$app->post('/photos', function () use ($app, $dirRicetteDropBox) {
$idRicette = $app->request()->post('ricetta_id');
$profileID = $app->request()->post('keyStore');
$tmpFileName = $_FILES['image']["tmp_name"];
$layer = ImageWorkshop::initFromPath($tmpFileName);
// istanza della classe
$mysqlconnetion = new MysqlClass;
//$mysqlconneti on->connetti();
$query = "insert into immagini(id_ricette, type_format, from_profile_id, uploaded_date) " .
"values(" . $idRicette . ", '" . image_type_to_mime_type(exif_imagetype($tmpFileName)) .
"', '" . $profileID . "', NOW())";
$newID = $mysqlconnetion->insertRecord($query);
$ext = image_type_to_extension(exif_imagetype($tmpFileName), FALSE);
$folder = $dirRicetteDropBox . "/" . $idRicette;
$imageFileName = $newID . "_full_ricetta." . $ext;
$dropBoxObj = new myDropBox();
resizeImage($dropBoxObj, $layer, 640, dirname($tmpFileName), $imageFileName, $folder);
$imageMediumFileName = $newID . "_medium_ricetta." . $ext;
resizeImage($dropBoxObj, $layer, 320, dirname($tmpFileName), $imageMediumFileName, $folder);
$thumbFileName = $newID . "_thumb_ricetta." . $ext;
resizeImage($dropBoxObj, $layer, 80, dirname($tmpFileName), $thumbFileName, $folder);
$mysqlconnetion->disconnetti();
echo $newID;
});
$app->put('/photos/:imageID', function ($imageID) use ($app, $dirRicetteDropBox) {
$tmpFileName = $_FILES['image']["tmp_name"];
$layer = ImageWorkshop::initFromPath($tmpFileName);
// istanza della classe
$mysqlconnetion = new MysqlClass;
//$mysqlconneti on->connetti();
$query = "update immagini set (type_format = '" . image_type_to_mime_type(exif_imagetype($tmpFileName)) . "', " .
" where id=" . $imageID;
$newID = $mysqlconnetion->insertRecord($query);
$folder = $dirRicetteDropBox . "/" . $newID;
$imageFileName = $newID . "_full_ricetta." . $ext;
resizeImage($dropBoxObj, $layer, 640, dirname($tmpFileName), $imageFileName, $folder);
$imageMediumFileName = $newID . "_medium_ricetta." . $ext;
resizeImage($dropBoxObj, $layer, 320, dirname($tmpFileName), $imageMediumFileName, $folder);
$thumbFileName = $newID . "_thumb_ricetta." . $ext;
resizeImage($dropBoxObj, $layer, 80, dirname($tmpFileName), $thumbFileName, $folder);
$mysqlconnetion->disconnetti();
return $newID;
});