}
$details = $this->get_photo_details($photo);
+
+ if(!$details) {
+ print "error";
+ return;
+ }
+
$orig_path = $this->translate_path($details['directory_path']) ."/". $details['name'];
$thumb_path = $this->cfg->base_path ."/thumbs/". $this->cfg->photo_width ."_". $this->getMD5($photo);
}
if(!is_readable($orig_path)) {
- $this->_warning("Photo ". $orig_path ." is not readable for user ". get_current_user() ."<br />\n");
+ $this->_warning("Photo ". $orig_path ." is not readable for user ". $this->getuid() ."<br />\n");
}
/* If the thumbnail doesn't exist yet, try to create it */
if(!file_exists($thumb_path)) {
$this->gen_thumb($photo, true);
+ $thumb_path = $this->cfg->base_path ."/thumbs/". $this->cfg->photo_width ."_". $this->getMD5($photo);
}
$meta = $this->get_meta_informations($orig_path);
}
else {
$this->_warning("Can't open file ". $thumb_path ."\n");
+ return;
}
if($previous_img) {
public function create_thumbnail($orig_image, $thumb_image, $width)
{
- if(!file_exists($orig_image))
+ if(!file_exists($orig_image)) {
return false;
+ }
$details = getimagesize($orig_image);
$cur_height = imagesy($src_img);
// If requested width is more then the actual image width,
- // do not generate a thumbnail
+ // do not generate a thumbnail, instead safe the original
+ // as thumbnail but with lower quality
if($width >= $cur_width) {
+ $result = imagejpeg($src_img, $thumb_image, 75);
imagedestroy($src_img);
return true;
}
}
if(!is_readable($full_path)) {
- $this->_warning("File ". $full_path ." is not readable for ". get_current_user() ."\n");
+ $this->_warning("File ". $full_path ." is not readable for ". $this->getuid() ."\n");
return;
}
if(!$this->create_thumbnail($full_path, $thumb_path, $resolution))
$error = 1;
}
-
/* if the file hasn't changed there is no need to regen the thumb */
elseif($file_md5 != $this->getMD5($idx) || $force) {
} // whatToDo()
+ private function getuid()
+ {
+ if($uid = posix_getuid()) {
+ if($user = posix_getpwuid($uid)) {
+ return $user['name'];
+ }
+ }
+
+ return 'n/a';
+
+ } // getuid()
+
}
?>