Código de: api/upload.php
<?
## Variáveis POST
$ID = $_POST['ID'];
$acao = $_POST['acao'];
$path = $_POST['path'];
## Diretório
$ds = '/';
//var_dump($_POST, $_FILES, $_REQUEST);
##################
##### UPLOAD #####
##################
if ( $ID ) {
// Pasta Arquivos Enviados pelo Usuário
$path = HD.$S->tag.$ds.$AUTH->entidade->id.$ds.$ID.$ds;
$path_min = $path.'min'.$ds;
if (!is_dir($path_min)) { @mkdir($path_min, 0777, true);}
## Nome Arquivo (MT)
$o = array (' ', '.'); $n = array ('', '');
$mt = str_replace($o, $n, microtime());
$arquivo = $mt.'.jpg';
#CORE WIDEIMAGE ;)
require('app/core/WideImage/WideImage.php');
if ( $imagem = $_FILES['cropped_image'] ) {
$x = $_POST['x'] ?? 0;
$y = $_POST['y'] ?? 0;
$w = $_POST['w'] ?? 0;
$h = $_POST['h'] ?? 0;
$image = $image2 = WideImage::load($imagem['tmp_name']);
$image = $image->crop($x, $y, $w, $h);
//$image = $image->resize(800, 400, 'outside');
$upload = $image->saveToFile($path.$arquivo, 80);
//$image = $image->crop($x, $y, $w, $h);
$image = $image->crop(50%-125, 50%-125, 550, 400);
$upload_min = $image->saveToFile($path_min.$arquivo, 80);
$data = array(
'path' => $path,
'arquivo' => $arquivo,
);
if ( $IMAGEM->atualizarImagem($ID, $data) ) {
$return = array (
'success' => true,
'ID' => $capa,
'arquivo' => DIR.$path.$arquivo,
'msg' => 'Imagem atualizada.',
'mtipo' => 'info'
);
} else {
$return = array (
'success' => false,
'error' => 0,
'msg' => 'Arquivo inexistente ou inválido.',
'mtipo' => 'error'
);
}
} else {
$return = array (
'success' => false,
'error' => 0,
'msg' => 'Esta imagem é muito grande ou não pode ser procesado.',
'mtipo' => 'error'
);
}
} else {
$return = array (
'success' => false,
'error' => 0,
'titulo' => 'Esta Imagem é muito Grande!',
'msg' => 'Esta imagem ultrapassa as medidas permitidas (1600x1600px).',
'mtipo' => 'error'
);
}
##### RESPOSTA GLOBAL
header("Content-Type: application/json; charset=utf-8");
echo json_encode($return);