X-Git-Url: https://git.nubati.net/cgi-bin/gitweb.cgi?p=phpfspot.git;a=blobdiff_plain;f=phpfspot.class.php;h=99f5a173f97601e899b4ae593dcfb00aa0f32ef1;hp=eaa788a10b97a9b2e1a2b032f55040340f3e31e7;hb=131666c458388902ed2b28dff2b7101aac661e1e;hpb=5bc350814a9426a89e8ab06728badad9430d4015 diff --git a/phpfspot.class.php b/phpfspot.class.php index eaa788a..99f5a17 100644 --- a/phpfspot.class.php +++ b/phpfspot.class.php @@ -523,6 +523,7 @@ class PHPFSPOT { */ public function getAvailableTags() { + /* retrive tags from database */ $this->get_tags(); $output = ""; @@ -566,10 +567,10 @@ class PHPFSPOT { if(isset($_SESSION['selected_tags']) && in_array($key, $_SESSION['selected_tags'])) continue; - // calculate CSS font-size - // find the $value in excess of $min_qty - // multiply by the font-size increment ($size) - // and add the $min_size set above + // calculate CSS font-size + // find the $value in excess of $min_qty + // multiply by the font-size increment ($size) + // and add the $min_size set above $size = $min_size + (($value - $min_qty) * $step); // uncomment if you want sizes in whole %: $size = ceil($size); @@ -594,9 +595,11 @@ class PHPFSPOT { */ public function getSelectedTags() { + /* retrive tags from database */ $this->get_tags(); $output = ""; + foreach($this->avail_tags as $tag) { // return all selected tags @@ -605,8 +608,13 @@ class PHPFSPOT { } } - $output = substr($output, 0, strlen($output)-2); - print $output; + if($output != "") { + $output = substr($output, 0, strlen($output)-2); + return $output; + } + else { + return "no tags selected"; + } } // getSelectedTags() @@ -1086,6 +1094,8 @@ class PHPFSPOT { $this->tmpl->assign('rss_link', $rss_link); $this->tmpl->assign('count', $count); $this->tmpl->assign('width', $this->cfg->thumb_width); + $this->tmpl->assign('thumb_container_width', $this->cfg->thumb_width+20); + $this->tmpl->assign('thumb_container_height', $this->cfg->thumb_height); $this->tmpl->assign('images', $images); $this->tmpl->assign('img_width', $img_width); $this->tmpl->assign('img_height', $img_height); @@ -1172,9 +1182,9 @@ class PHPFSPOT { // If requested width is more then the actual image width, // do not generate a thumbnail, instead safe the original - // as thumbnail but with lower quality - - if($width >= $cur_width) { + // as thumbnail but with lower quality. But if the image + // is to heigh too, then we still have to resize it. + if($width >= $cur_width && $cur_height < $this->cfg->thumb_height) { $result = imagejpeg($src_img, $thumb_image, 75); imagedestroy($src_img); return true; @@ -1298,7 +1308,7 @@ class PHPFSPOT { * 2. Check if the md5sum of the original file has changed * 3. Generate the thumbnails if needed */ - public function gen_thumb($idx = 0, $force = 0) + public function gen_thumb($idx = 0, $force = 0, $overwrite = false) { $error = 0; @@ -1331,6 +1341,8 @@ class PHPFSPOT { $changes = false; foreach($resolutions as $resolution) { + + $generate_it = false; $thumb_sub_path = substr($file_md5, 0, 2); $thumb_path = $this->cfg->thumb_path ."/". $thumb_sub_path ."/". $resolution ."_". $file_md5; @@ -1341,15 +1353,14 @@ class PHPFSPOT { /* if the thumbnail file doesn't exist, create it */ if(!file_exists($thumb_path)) { - - $this->_debug(" ". $resolution ."px"); - if(!$this->create_thumbnail($full_path, $thumb_path, $resolution)) - $error = 1; - - $changes = true; + $generate_it = true; } /* if the file hasn't changed there is no need to regen the thumb */ elseif($file_md5 != $this->getMD5($idx) || $force) { + $generate_it = true; + } + + if($generate_it || $overwrite) { $this->_debug(" ". $resolution ."px"); if(!$this->create_thumbnail($full_path, $thumb_path, $resolution)) @@ -1624,6 +1635,11 @@ class PHPFSPOT { print "PEAR Calendar package is missing
\n"; $missing = true; } + @include_once 'Console/Getopt.php'; + if(isset($php_errormsg) && preg_match('/Failed opening.*for inclusion/i', $php_errormsg)) { + print "PEAR Console_Getopt package is missing
\n"; + $missing = true; + } ini_restore('track_errors'); if(isset($missing))