summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndreas Unterkircher <unki@netshadow.at>2008-05-24 09:26:11 +0200
committerAndreas Unterkircher <unki@netshadow.at>2008-05-24 09:57:13 +0200
commit2ea665ef86c5573c244ebbba797fb31cadf6752b (patch)
treede710c3e5df056d63b9a280c2e1fc24ad12b5f2a
parentaab7d4d07c16dc78a6d2a41223d469a1a60e5022 (diff)
issue121, show rating value in photo-index- and single-photo-view
Signed-off-by: Andreas Unterkircher <unki@netshadow.at>
-rw-r--r--phpfspot.class.php26
-rw-r--r--resources/rating.pngbin0 -> 686 bytes
-rw-r--r--resources/star.pngbin0 -> 670 bytes
-rw-r--r--themes/default/templates/photo_index.tpl8
-rw-r--r--themes/default/templates/single_photo.tpl7
5 files changed, 41 insertions, 0 deletions
diff --git a/phpfspot.class.php b/phpfspot.class.php
index e6c4aff..0711499 100644
--- a/phpfspot.class.php
+++ b/phpfspot.class.php
@@ -507,6 +507,28 @@ class PHPFSPOT {
} // getPhotoName()
/**
+ * get photo rating level
+ *
+ * this function will return the integer-based rating
+ * level of the photo. This can only be done, if the F-Spot
+ * database is at a specific level. If rating value can not
+ * be found, zero will be returned indicating no rating value
+ * is available.
+ * @param integer idx
+ * @return integer
+ */
+ public function get_photo_rating($idx)
+ {
+ if($detail = $this->get_photo_details($idx)) {
+ if(isset($detail['rating']))
+ return $detail['rating'];
+ }
+
+ return 0;
+
+ } // get_photo_rating()
+
+ /**
* shrink text according provided limit
*
* If the length of the name exceeds $limit the
@@ -643,6 +665,7 @@ class PHPFSPOT {
$this->tmpl->assign('description', $details['description']);
$this->tmpl->assign('image_name', $this->parse_uri($details['uri'], 'filename'));
+ $this->tmpl->assign('image_rating', $this->get_photo_rating($photo));
$this->tmpl->assign('width', $info_thumb[0]);
$this->tmpl->assign('height', $info_thumb[1]);
@@ -1232,6 +1255,7 @@ class PHPFSPOT {
$img_name[$thumbs] = Array();
$img_fullname[$thumbs] = Array();
$img_title = Array();
+ $img_rating = Array();
for($i = $begin_with; $i < $end_with; $i++) {
@@ -1242,6 +1266,7 @@ class PHPFSPOT {
$img_name[$thumbs] = htmlspecialchars($this->getPhotoName($photos[$i], 15));
$img_fullname[$thumbs] = htmlspecialchars($this->getPhotoName($photos[$i], 0));
$img_title[$thumbs] = "Click to view photo ". htmlspecialchars($this->getPhotoName($photos[$i], 0));
+ $img_rating[$thumbs] = $this->get_photo_rating($photos[$i]);
$thumb_path = $this->get_thumb_path($this->cfg->thumb_width, $photos[$i]);
@@ -1389,6 +1414,7 @@ class PHPFSPOT {
$this->tmpl->assign('img_name', $img_name);
$this->tmpl->assign('img_fullname', $img_fullname);
$this->tmpl->assign('img_title', $img_title);
+ $this->tmpl->assign('img_rating', $img_rating);
$this->tmpl->assign('thumbs', $thumbs);
$this->tmpl->assign('selected_tags', $this->getSelectedTags('img'));
diff --git a/resources/rating.png b/resources/rating.png
new file mode 100644
index 0000000..c39b428
--- /dev/null
+++ b/resources/rating.png
Binary files differ
diff --git a/resources/star.png b/resources/star.png
new file mode 100644
index 0000000..b88c857
--- /dev/null
+++ b/resources/star.png
Binary files differ
diff --git a/themes/default/templates/photo_index.tpl b/themes/default/templates/photo_index.tpl
index c9da477..7fe04ab 100644
--- a/themes/default/templates/photo_index.tpl
+++ b/themes/default/templates/photo_index.tpl
@@ -78,9 +78,17 @@
<br />
{$img_name[thumb]}
</a>
+ <!-- show lightbox eyes, if enabled -->
{ if $use_lightbox }
<a href="{$web_path}/phpfspot_img.php?idx={$images[thumb]}&amp;width={$preview_width}" alt="thumb_{$images[thumb]}" rel="lightbox[photoidx]" title="Preview of {$img_fullname[thumb]}"><img src="{$web_path}/resources/eyes.png" /></a>
{ /if }
+ <!-- show F-Spot photo rating value, if available -->
+ { if $img_rating[thumb] }
+ <br />
+ {section name="rating" loop=$img_rating[thumb] step=1}
+ <img src="{$web_path}/resources/star.png" />
+ {/section}
+ { /if }
</div>
{/if}
diff --git a/themes/default/templates/single_photo.tpl b/themes/default/templates/single_photo.tpl
index 97ef0cf..b141517 100644
--- a/themes/default/templates/single_photo.tpl
+++ b/themes/default/templates/single_photo.tpl
@@ -42,6 +42,13 @@
{$ExifOrigResolution}<br />
{ /if }
<u>Size:</u>&nbsp;{$ExifFileSize}<br />
+ { if $image_rating }
+ <u><img src="{$web_path}/resources/rating.png" alt="rating" />&nbsp;Rating:</u><br />
+ {section name="rating" loop=$image_rating step=1}
+ <img src="{$web_path}/resources/star.png" />
+ {/section}
+ <br />
+ { /if }
{ if $tags }
<br />
<u><img src="{$web_path}/resources/small_available_tags.png" alt="available tags" />&nbsp;Tagged with:</u><br />