X-Git-Url: https://git.nubati.net/cgi-bin/gitweb.cgi?p=phpfspot.git;a=blobdiff_plain;f=phpfspot.class.php;h=0ce73936b10b8a66a62bcd7b2a07b11f92cff6cd;hp=63a913937d8ac5eac60352bd724805e5e924de8b;hb=7fb51129a3375bfa36750994ce12833623d0cb6e;hpb=e54956dad7e0632849db2a92eb7ceff88b52247d diff --git a/phpfspot.class.php b/phpfspot.class.php index 63a9139..0ce7393 100644 --- a/phpfspot.class.php +++ b/phpfspot.class.php @@ -165,10 +165,10 @@ class PHPFSPOT { $_SESSION['start_action'] = 'showp'; } if(isset($_GET['from_date']) && $this->isValidDate($_GET['from_date'])) { - $_SESSION['from_date'] = strtotime($_GET['from_date']); + $_SESSION['from_date'] = strtotime($_GET['from_date'] ." 00:00:00"); } if(isset($_GET['to_date']) && $this->isValidDate($_GET['to_date'])) { - $_SESSION['to_date'] = strtotime($_GET['to_date']); + $_SESSION['to_date'] = strtotime($_GET['to_date'] ." 23:59:59"); } break; case 'export': @@ -866,13 +866,14 @@ class PHPFSPOT { /* return all available photos */ $query_str = " - SELECT DISTINCT photo_id - FROM photo_tags pt - INNER JOIN photos p + SELECT p.id + FROM photos p + LEFT JOIN photo_tags pt ON p.id=pt.photo_id - INNER JOIN tags t + LEFT JOIN tags t ON pt.tag_id=t.id "; + if(isset($additional_where_cond)) $query_str.= "WHERE ". $additional_where_cond ." "; @@ -885,7 +886,7 @@ class PHPFSPOT { $result = $this->db->db_query($query_str); while($row = $this->db->db_fetch_object($result)) { - array_push($matched_photos, $row['photo_id']); + array_push($matched_photos, $row['id']); } return $matched_photos; @@ -1094,6 +1095,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); @@ -1306,7 +1309,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; @@ -1339,6 +1342,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; @@ -1349,15 +1354,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)) @@ -1440,12 +1444,14 @@ class PHPFSPOT { $this->get_tags(); $_SESSION['searchfor'] = $searchfor; + if($from != 0) - $_SESSION['from_date'] = strtotime($from); + $_SESSION['from_date'] = strtotime($from ." 00:00:00"); else unset($_SESSION['from_date']); + if($to != 0) - $_SESSION['to_date'] = strtotime($to); + $_SESSION['to_date'] = strtotime($to ." 23:59:59"); else unset($_SESSION['to_date']); @@ -1632,6 +1638,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))