$option) { if (substr($option, 0, 10) == '; charset=') { $mime_options['charset'] = $option; } } } // garvin: For re-usability, moved http-headers and stylesheets // to a seperate file. It can now be included by header.inc.php, // queryframe.php, querywindow.php. require_once('./libraries/header_http.inc.php'); // [MIME] $content_type = 'Content-Type: ' . (isset($mime_map[urldecode($transform_key)]['mimetype']) ? str_replace('_', '/', $mime_map[urldecode($transform_key)]['mimetype']) : $default_ct) . (isset($mime_options['charset']) ? $mime_options['charset'] : ''); header($content_type); if (!isset($resize)) { echo $row[urldecode($transform_key)]; } else { // if image_*__inline.inc.php finds that we can resize, // it sets $resize to jpeg or png $srcImage = imagecreatefromstring($row[urldecode($transform_key)]); $srcWidth = ImageSX( $srcImage ); $srcHeight = ImageSY( $srcImage ); // Check to see if the width > height or if width < height // if so adjust accordingly to make sure the image // stays smaller then the $newWidth and $newHeight $ratioWidth = $srcWidth/$newWidth; $ratioHeight = $srcHeight/$newHeight; if( $ratioWidth < $ratioHeight){ $destWidth = $srcWidth/$ratioHeight; $destHeight = $newHeight; }else{ $destWidth = $newWidth; $destHeight = $srcHeight/$ratioWidth; } if ($resize) { $destImage = ImageCreateTrueColor( $destWidth, $destHeight); } // ImageCopyResized( $destImage, $srcImage, 0, 0, 0, 0, $destWidth, $destHeight, $srcWidth, $srcHeight ); // better quality but slower: ImageCopyResampled( $destImage, $srcImage, 0, 0, 0, 0, $destWidth, $destHeight, $srcWidth, $srcHeight ); if ($resize == 'jpeg') { ImageJPEG( $destImage,'',75 ); } if ($resize == 'png') { ImagePNG( $destImage); } ImageDestroy( $srcImage ); ImageDestroy( $destImage ); } /** * Close MySql non-persistent connections */ if (isset($GLOBALS['dbh']) && $GLOBALS['dbh']) { @mysql_close($GLOBALS['dbh']); } if (isset($GLOBALS['userlink']) && $GLOBALS['userlink']) { @mysql_close($GLOBALS['userlink']); } ?>