diff options
Diffstat (limited to 'phpfspot.class.php')
-rw-r--r-- | phpfspot.class.php | 39 |
1 files changed, 37 insertions, 2 deletions
diff --git a/phpfspot.class.php b/phpfspot.class.php index 0fa1740..525b5c1 100644 --- a/phpfspot.class.php +++ b/phpfspot.class.php @@ -280,7 +280,7 @@ class PHPFSPOT { } /* return according the selected tags */ - if(isset($_SESSION['selected_tags'])) { + if(isset($_SESSION['selected_tags']) && !empty($_SESSION['selected_tags'])) { $selected = ""; foreach($_SESSION['selected_tags'] as $tag) $selected.= $tag .","; @@ -354,18 +354,41 @@ class PHPFSPOT { $count = count($photos); + if(!$_SESSION['begin_with'] || $_SESSION['begin_with'] == 0) + $begin_with = 0; + else + $begin_with = $_SESSION['begin_with']; + + if($this->cfg->rows_per_page == 0) + $end_with = $count; + else + $end_with = $begin_with + ($this->cfg->rows_per_page * $this->cfg->thumbs_per_row); + + $rows = 0; $cols = 0; $images[$rows] = Array(); + $img_height[$rows] = Array(); + $img_width[$rows] = Array(); - for($i = 0; $i < $count; $i++) { + for($i = $begin_with; $i < $end_with; $i++) { $images[$rows][$cols] = $photos[$i]; + $thumb_path = $this->cfg->base_path ."/thumbs/". $this->cfg->thumb_width ."_". $this->getMD5($photos[$i]); + + if(file_exists($thumb_path)) { + $info = getimagesize($thumb_path); + $img_width[$rows][$cols] = $info[0]; + $img_height[$rows][$cols] = $info[1]; + } + if($cols == $this->cfg->thumbs_per_row-1) { $cols = 0; $rows++; $images[$rows] = Array(); + $img_width[$rows] = Array(); + $img_height[$rows] = Array(); } else { $cols++; @@ -378,9 +401,21 @@ class PHPFSPOT { if(isset($_SESSION['searchfor']) && $_SESSION['searchfor'] != '') $this->tmpl->assign('searchfor', $_SESSION['searchfor']); + if($this->cfg->rows_per_page != 0) { + $previous_start = $begin_with - ($this->cfg->rows_per_page * $this->cfg->thumbs_per_row); + $next_start = $begin_with + ($this->cfg->rows_per_page * $this->cfg->thumbs_per_row); + + if($begin_with != 0) + $this->tmpl->assign("previous_url", "javascript:showPhotoIndex(". $previous_start .");"); + if($end_with < $count) + $this->tmpl->assign("next_url", "javascript:showPhotoIndex(". $next_start .");"); + } + $this->tmpl->assign('count', $count); $this->tmpl->assign('width', $this->cfg->thumb_width); $this->tmpl->assign('images', $images); + $this->tmpl->assign('img_width', $img_width); + $this->tmpl->assign('img_height', $img_height); $this->tmpl->assign('rows', $rows); $this->tmpl->assign('columns', $this->cfg->thumbs_per_row); $this->tmpl->show("photo_index.tpl"); |