From: Andreas Unterkircher Date: Mon, 11 Jun 2007 19:46:08 +0000 (+0000) Subject: moved tag-search code into general getphotoselection function X-Git-Tag: phpfspot-1.2~253 X-Git-Url: https://git.nubati.net/cgi-bin/gitweb.cgi?p=phpfspot.git;a=commitdiff_plain;h=09ab990f8da2f25cb3540fd7fc853b73464b0ef0 moved tag-search code into general getphotoselection function git-svn-id: file:///var/lib/svn/phpfspot/trunk@82 fa6a889d-dae6-447d-9e79-4ba9a3039384 --- diff --git a/phpfspot.class.php b/phpfspot.class.php index fc6b376..c4dddb4 100644 --- a/phpfspot.class.php +++ b/phpfspot.class.php @@ -197,6 +197,25 @@ class PHPFSPOT { { $tagged_photos = Array(); + /* return a search result */ + if(isset($_SESSION['searchfor']) && $_SESSION['searchfor'] != '') { + $result = $this->db->db_query(" + SELECT DISTINCT photo_id + FROM photo_tags pt + INNER JOIN photos p + ON p.id=pt.photo_id + INNER JOIN tags t + ON pt.tag_id=t.id + WHERE t.name LIKE '%". $_SESSION['searchfor'] ."%' + ORDER BY p.time ASC + "); + while($row = $this->db->db_fetch_object($result)) { + array_push($tagged_photos, $row['photo_id']); + } + return $tagged_photos; + } + + /* return according the selected tags */ if(isset($_SESSION['selected_tags'])) { $selected = ""; foreach($_SESSION['selected_tags'] as $tag) @@ -245,30 +264,27 @@ class PHPFSPOT { array_push($tagged_photos, $row['photo_id']); } } - } - else { - $result = $this->db->db_query(" - SELECT DISTINCT photo_id - FROM photo_tags pt - INNER JOIN photos p - ON p.id=pt.photo_id - ORDER BY p.time ASC - "); - while($row = $this->db->db_fetch_object($result)) { - array_push($tagged_photos, $row['photo_id']); - } + return $tagged_photos; } + /* return all available photos */ + $result = $this->db->db_query(" + SELECT DISTINCT photo_id + FROM photo_tags pt + INNER JOIN photos p + ON p.id=pt.photo_id + ORDER BY p.time ASC + "); + while($row = $this->db->db_fetch_object($result)) { + array_push($tagged_photos, $row['photo_id']); + } return $tagged_photos; } // getPhotoSelection() public function showPhotoIndex() { - if($_SESSION['searchfor'] == '') - $photos = $this->getPhotoSelection(); - else - $photos = $this->getSearchResult($_SESSION['searchfor']); + $photos = $this->getPhotoSelection(); $count = count($photos); @@ -492,30 +508,7 @@ class PHPFSPOT { { $_SESSION['searchfor'] = $searchfor; - } // showSearchResult() - - public function getSearchResult($for) - { - $tagged_photos = Array(); - - $result = $this->db->db_query(" - SELECT DISTINCT photo_id - FROM photo_tags pt - INNER JOIN photos p - ON p.id=pt.photo_id - INNER JOIN tags t - ON pt.tag_id=t.id - WHERE t.name LIKE '%". $for ."%' - ORDER BY p.time ASC - "); - - while($row = $this->db->db_fetch_object($result)) { - array_push($tagged_photos, $row['photo_id']); - } - - return $tagged_photos; - - } // getSearchResult() + } // startSearch() }