summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--modules/gallery/libraries/Theme_View.php18
-rw-r--r--themes/wind/views/page.html.php2
2 files changed, 12 insertions, 8 deletions
diff --git a/modules/gallery/libraries/Theme_View.php b/modules/gallery/libraries/Theme_View.php
index a507e9c8..d0b35d3e 100644
--- a/modules/gallery/libraries/Theme_View.php
+++ b/modules/gallery/libraries/Theme_View.php
@@ -42,9 +42,6 @@ class Theme_View_Core extends Gallery_View {
"page_type" => $page_type,
"page_subtype" => $page_subtype,
"page_title" => null));
- if ($page_type == "collection") {
- $this->set_global("thumb_proportion", $this->thumb_proportion());
- }
if (module::get_var("gallery", "maintenance_mode", 0)) {
if (identity::active_user()->admin) {
@@ -58,10 +55,17 @@ class Theme_View_Core extends Gallery_View {
* Proportion of the current thumb_size's to default
* @return int
*/
- public function thumb_proportion() {
- // @TODO change the 200 to a theme supplied value when and if we come up with an
- // API to allow the theme to set defaults.
- return module::get_var("gallery", "thumb_size", 200) / 200;
+ public function thumb_proportion($item) {
+ // By default we have a globally fixed thumbnail size In core code, we just return a fixed
+ // proportion based on the global thumbnail size, but since modules can override that, we
+ // return the actual proportions when we have them.
+ if ($item->has_thumb()) {
+ return max($item->thumb_width, $item->thumb_height) / 200;
+ } else {
+ // @TODO change the 200 to a theme supplied value when and if we come up with an
+ // API to allow the theme to set defaults.
+ return module::get_var("gallery", "thumb_size", 200) / 200;
+ }
}
public function item() {
diff --git a/themes/wind/views/page.html.php b/themes/wind/views/page.html.php
index 2b86556d..7462f864 100644
--- a/themes/wind/views/page.html.php
+++ b/themes/wind/views/page.html.php
@@ -23,7 +23,7 @@
type="image/x-icon" />
<? if ($theme->page_type == "collection"): ?>
- <? if ($thumb_proportion != 1): ?>
+ <? if (($thumb_proportion = $theme->thumb_proportion($theme->item())) != 1): ?>
<? $new_width = round($thumb_proportion * 213) ?>
<? $new_height = round($thumb_proportion * 240) ?>
<style type="text/css">