png support: update database.sql, fix some typos, fix tinymce image browser
This commit is contained in:
parent
7cc8c369cb
commit
2438c6e45d
6 changed files with 35 additions and 20 deletions
|
@ -745,6 +745,7 @@ CREATE TABLE IF NOT EXISTS `photo` (
|
|||
`desc` text NOT NULL,
|
||||
`album` char(255) NOT NULL,
|
||||
`filename` char(255) NOT NULL,
|
||||
`type` CHAR(128) NOT NULL DEFAULT 'image/jpeg',
|
||||
`height` smallint(6) NOT NULL,
|
||||
`width` smallint(6) NOT NULL,
|
||||
`data` mediumblob NOT NULL,
|
||||
|
|
|
@ -105,9 +105,9 @@ class Photo {
|
|||
|
||||
|
||||
$dest = imagecreatetruecolor( $dest_width, $dest_height );
|
||||
imagealphablending($dest->image, false);
|
||||
imagealphablending($dest, false);
|
||||
imagesavealpha($dest, true);
|
||||
if ($this->type=='image/png') imagefill($dest, 0, 0, imagecolorallocatealpha($dest, 0, 0, 0, 127));; // fill with alpha
|
||||
if ($this->type=='image/png') imagefill($dest, 0, 0, imagecolorallocatealpha($dest, 0, 0, 0, 127)); // fill with alpha
|
||||
imagecopyresampled($dest, $this->image, 0, 0, 0, 0, $dest_width, $dest_height, $width, $height);
|
||||
if($this->image)
|
||||
imagedestroy($this->image);
|
||||
|
@ -164,9 +164,9 @@ class Photo {
|
|||
|
||||
|
||||
$dest = imagecreatetruecolor( $dest_width, $dest_height );
|
||||
imagealphablending($dest->image, false);
|
||||
imagealphablending($dest, false);
|
||||
imagesavealpha($dest, true);
|
||||
if ($this->type=='image/png') imagefill($dest, 0, 0, imagecolorallocatealpha($dest, 0, 0, 0, 127));; // fill with alpha
|
||||
if ($this->type=='image/png') imagefill($dest, 0, 0, imagecolorallocatealpha($dest, 0, 0, 0, 127)); // fill with alpha
|
||||
imagecopyresampled($dest, $this->image, 0, 0, 0, 0, $dest_width, $dest_height, $width, $height);
|
||||
if($this->image)
|
||||
imagedestroy($this->image);
|
||||
|
@ -181,9 +181,9 @@ class Photo {
|
|||
public function scaleImageSquare($dim) {
|
||||
|
||||
$dest = imagecreatetruecolor( $dim, $dim );
|
||||
imagealphablending($dest->image, false);
|
||||
imagealphablending($dest, false);
|
||||
imagesavealpha($dest, true);
|
||||
if ($this->type=='image/png') imagefill($dest, 0, 0, imagecolorallocatealpha($dest, 0, 0, 0, 127));; // fill with alpha
|
||||
if ($this->type=='image/png') imagefill($dest, 0, 0, imagecolorallocatealpha($dest, 0, 0, 0, 127)); // fill with alpha
|
||||
imagecopyresampled($dest, $this->image, 0, 0, 0, 0, $dim, $dim, $this->width, $this->height);
|
||||
if($this->image)
|
||||
imagedestroy($this->image);
|
||||
|
@ -195,9 +195,9 @@ class Photo {
|
|||
|
||||
public function cropImage($max,$x,$y,$w,$h) {
|
||||
$dest = imagecreatetruecolor( $max, $max );
|
||||
imagealphablending($dest->image, false);
|
||||
imagealphablending($dest, false);
|
||||
imagesavealpha($dest, true);
|
||||
if ($this->type=='image/png') imagefill($dest, 0, 0, imagecolorallocatealpha($dest, 0, 0, 0, 127));; // fill with alpha
|
||||
if ($this->type=='image/png') imagefill($dest, 0, 0, imagecolorallocatealpha($dest, 0, 0, 0, 127)); // fill with alpha
|
||||
imagecopyresampled($dest, $this->image, 0, 0, $x, $y, $max, $max, $w, $h);
|
||||
if($this->image)
|
||||
imagedestroy($this->image);
|
||||
|
@ -295,6 +295,7 @@ class Photo {
|
|||
* @arg $fromcurl boolean Check Content-Type header from curl request
|
||||
*/
|
||||
function guess_image_type($filename, $fromcurl=false) {
|
||||
logger('Photo: guess_image_type: '.$filename . ($fromcurl?' from curl headers':''), LOGGER_DEBUG);
|
||||
$type = null;
|
||||
if ($fromcurl) {
|
||||
$a = get_app();
|
||||
|
@ -310,12 +311,13 @@ function guess_image_type($filename, $fromcurl=false) {
|
|||
if (is_null($type)){
|
||||
$ext = pathinfo($filename, PATHINFO_EXTENSION);
|
||||
$types = Photo::supportedTypes();
|
||||
foreach ($types as $m=>$e){
|
||||
if ($ext==$e) return $m;
|
||||
}
|
||||
$type = "image/jpeg";
|
||||
foreach ($types as $m=>$e){
|
||||
if ($ext==$e) $type = $m;
|
||||
}
|
||||
|
||||
}
|
||||
logger('Photo: guess_image_type: type='.$type, LOGGER_DEBUG);
|
||||
return $type;
|
||||
|
||||
}
|
||||
|
|
|
@ -5,6 +5,8 @@
|
|||
* @author Fabio Comuni <fabrixxm@kirgroup.com>
|
||||
*/
|
||||
|
||||
require_once('include/Photo.php');
|
||||
|
||||
/**
|
||||
* @param App $a
|
||||
*/
|
||||
|
@ -43,14 +45,22 @@ function fbrowser_content($a){
|
|||
$path[]=array($a->get_baseurl()."/fbrowser/image/".$a->argv[2]."/", $album);
|
||||
}
|
||||
|
||||
$r = q("SELECT `resource-id`, `id`, `filename`, min(`scale`) AS `hiq`,max(`scale`) AS `loq`, `desc`
|
||||
$r = q("SELECT `resource-id`, `id`, `filename`, type, min(`scale`) AS `hiq`,max(`scale`) AS `loq`, `desc`
|
||||
FROM `photo` WHERE `uid` = %d $sql_extra
|
||||
GROUP BY `resource-id` $sql_extra2",
|
||||
intval(local_user())
|
||||
);
|
||||
|
||||
|
||||
function files1($rr){ global $a; return array( $a->get_baseurl() . '/photo/' . $rr['resource-id'] . '-' . $rr['hiq'] . '.jpg', template_escape($rr['filename']), $a->get_baseurl() . '/photo/' . $rr['resource-id'] . '-' . $rr['loq'] . '.jpg'); }
|
||||
function files1($rr){
|
||||
global $a;
|
||||
$types = Photo::supportedTypes();
|
||||
$ext = $types[$rr['type']];
|
||||
return array(
|
||||
$a->get_baseurl() . '/photo/' . $rr['resource-id'] . '-' . $rr['hiq'] . '.' .$ext,
|
||||
template_escape($rr['filename']),
|
||||
$a->get_baseurl() . '/photo/' . $rr['resource-id'] . '-' . $rr['loq'] . '.'. $ext
|
||||
);
|
||||
}
|
||||
$files = array_map("files1", $r);
|
||||
|
||||
$tpl = get_markup_template("filebrowser.tpl");
|
||||
|
|
|
@ -682,9 +682,9 @@ function photos_post(&$a) {
|
|||
$filesize = intval($_FILES['userfile']['size']);
|
||||
$type = $_FILES['userfile']['type'];
|
||||
}
|
||||
if ($type=="") $type=guess_image_type($filename);
|
||||
|
||||
|
||||
logger('photos: upload: received file: ' . $filename . ' as ' . $src . ' '. $type . ' ' . $filesize . ' bytes', LOGGER_DEBUG);
|
||||
logger('photos: upload: received file: ' . $filename . ' as ' . $src . ' ('. $type . ') ' . $filesize . ' bytes', LOGGER_DEBUG);
|
||||
|
||||
$maximagesize = get_config('system','maximagesize');
|
||||
|
||||
|
|
|
@ -109,6 +109,7 @@ function profile_photo_post(&$a) {
|
|||
$filename = basename($_FILES['userfile']['name']);
|
||||
$filesize = intval($_FILES['userfile']['size']);
|
||||
$filetype = $_FILES['userfile']['type'];
|
||||
if ($filetype=="") $filetype=guess_image_type($filename);
|
||||
|
||||
$maximagesize = get_config('system','maximagesize');
|
||||
|
||||
|
|
|
@ -70,6 +70,7 @@ function wall_upload_post(&$a) {
|
|||
$filetype = $_FILES['media']['type'];
|
||||
}
|
||||
|
||||
if ($filetype=="") $filetype=guess_image_type($filename);
|
||||
$maximagesize = get_config('system','maximagesize');
|
||||
|
||||
if(($maximagesize) && ($filesize > $maximagesize)) {
|
||||
|
|
Loading…
Reference in a new issue