diff --git a/apps/gallery/lib/tiles.php b/apps/gallery/lib/tiles.php
index 3805b6dd25..6f8b8aa7fe 100644
--- a/apps/gallery/lib/tiles.php
+++ b/apps/gallery/lib/tiles.php
@@ -5,177 +5,174 @@ namespace OC\Pictures;
require_once('lib/base.php');
require_once('managers.php');
-const TILE_PROPORTION_HORIZONTAL = 0;
-const TILE_PROPORTION_VERTICAL = 0;
-const GET_THUMBNAIL_PATH = '?app=gallery&getfile=ajax/thumbnail.php&filepath=';
const TAG = 'Pictures';
const IMAGE_WIDTH = 150;
class TileBase {
- public function getWidth() { return false; }
+ public function getWidth() { return false; }
- public function getHeight() { return 150; }
+ public function getHeight() { return IMAGE_WIDTH; }
- public function getOnHoverAction() { return false; }
-
- public function getOnOutAction() { return false; }
-
- public function getOnClickAction() { return false; }
+ public function getOnHoverAction() { return false; }
+
+ public function getOnOutAction() { return false; }
+
+ public function getOnClickAction() { return false; }
- public function getDisplayedLayer() { return false; }
+ public function getDisplayedLayer() { return false; }
- public function getTileProportion() { return false; }
-
- public function get() { return false; }
+ public function getTileProportion() { return false; }
+
+ public function get() { return false; }
}
class TilesLine {
- public function __construct() {
- $this->tiles_array = array();
- }
+ public function __construct() {
+ $this->tiles_array = array();
+ }
- public function setAvailableSpace($space) {
- $available_space = $space;
- }
+ public function setAvailableSpace($space) {
+ $available_space = $space;
+ }
- public function getTilesCount() {
- return count($this->tiles_array);
- }
+ public function getTilesCount() {
+ return count($this->tiles_array);
+ }
- public function addTile($tile) {
- array_push($this->tiles_array, $tile);
- }
+ public function addTile($tile) {
+ array_push($this->tiles_array, $tile);
+ }
- public function getLeftSpace() {
- $occupied_space = 0;
- for ($i = 0; $i < count($this->tiles_array); $i++) {
- $occupied_space += $this->tiles_array[$i]->getWidth();
- }
- return $this->available_space - $occupied_space;
- }
+ public function getLeftSpace() {
+ $occupied_space = 0;
+ for ($i = 0; $i < count($this->tiles_array); $i++) {
+ $occupied_space += $this->tiles_array[$i]->getWidth();
+ }
+ return $this->available_space - $occupied_space;
+ }
- public function tileWillFit($tile) {
- return $this->getLeftSpace() > $tile->getWidth();
- }
-
- public function get() {
- $r = '
';
-
- for ($i = 0; $i < count($this->tiles_array); $i++) {
- $img_w = $this->tiles_array[$i]->getWidth();
- $extra = '';
- if ($img_w != 150) $extra = ' style="width:'.$img_w.'px"';
- $r .= '
'.$this->tiles_array[$i]->get().'
';
- }
-
- $r .= '
';
- return $r;
- }
+ public function tileWillFit($tile) {
+ return $this->getLeftSpace() > $tile->getWidth();
+ }
+
+ public function get() {
+ $r = '';
+
+ for ($i = 0; $i < count($this->tiles_array); $i++) {
+ $img_w = $this->tiles_array[$i]->getWidth();
+ $extra = '';
+ if ($img_w != IMAGE_WIDTH) $extra = ' style="width:'.$img_w.'px"';
+ $r .= '
'.$this->tiles_array[$i]->get().'
';
+ }
+
+ $r .= '
';
+ return $r;
+ }
- private $tiles_array;
- private $available_space;
+ private $tiles_array;
+ private $available_space;
}
class TileSingle extends TileBase {
- public function __construct($path) {
- \OC_Log::write(TAG, 'Loading file from path '.$path, \OC_Log::DEBUG);
- $this->file_path = $path;
-/* $this->image = new \OC_Image();
- if (!$this->image->loadFromFile($this->file_path)) {
- \OC_Log::write(TAG, 'Loading file filed', \OC_Log::ERROR);
- return;
- }
- $this->image->fixOrientation();*/
- }
+ public function __construct($path) {
+ \OC_Log::write(TAG, 'Loading file from path '.$path, \OC_Log::DEBUG);
+ $this->file_path = $path;
+/* $this->image = new \OC_Image();
+ if (!$this->image->loadFromFile($this->file_path)) {
+ \OC_Log::write(TAG, 'Loading file filed', \OC_Log::ERROR);
+ return;
+ }
+ $this->image->fixOrientation();*/
+ }
- public function getWidth() {
- $a = ThumbnailsManager::getInstance()->getThumbnailInfo($this->file_path);
- return $a['width'];
- }
-
- public function get($extra = '') {
- // !HACK! file path needs to be encoded twice because files app decode twice url, so any special chars like + or & in filename
- // !HACK! will result in failing of opening them
- return '';
- }
-
- public function getMiniatureSrc() {
- return GET_THUMBNAIL_PATH.urlencode($this->getPath());
- }
+ public function getWidth() {
+ $a = ThumbnailsManager::getInstance()->getThumbnailInfo($this->file_path);
+ return $a['width'];
+ }
+
+ public function get($extra = '') {
+ // !HACK! file path needs to be encoded twice because files app decode twice url, so any special chars like + or & in filename
+ // !HACK! will result in failing of opening them
+ return '';
+ }
+
+ public function getMiniatureSrc() {
+ return \OCP\Util::linkTo('gallery', 'ajax/thumbnail.php').'&filepath='.urlencode($this->getPath());
+ }
- public function getPath() {
- return $this->file_path;
- }
-
- public function getOnClickAction() {
- return '';//'javascript:openFile(\''.$this->file_path.'\');';
- }
+ public function getPath() {
+ return $this->file_path;
+ }
+
+ public function getOnClickAction() {
+ return '';//'javascript:openFile(\''.$this->file_path.'\');';
+ }
- private $file_path;
- private $image;
+ private $file_path;
+ private $image;
}
class TileStack extends TileBase {
- const STACK_REPRESENTATIVES = 3;
+ const STACK_REPRESENTATIVES = 3;
- public function __construct($path_array, $stack_name) {
- $this->tiles_array = array();
- $this->stack_name = $stack_name;
- for ($i = 0; $i < count($path_array) && $i < self::STACK_REPRESENTATIVES; $i++) {
- $tile = new TileSingle($path_array[$i]);
- array_push($this->tiles_array, $tile);
- }
- }
-
- public function forceSize($width_must_fit=false) {
- for ($i = 0; $i < count($this->tiles_array); $i++)
- $this->tiles_array[$i]->forceSize(true);
- }
+ public function __construct($path_array, $stack_name) {
+ $this->tiles_array = array();
+ $this->stack_name = $stack_name;
+ for ($i = 0; $i < count($path_array) && $i < self::STACK_REPRESENTATIVES; $i++) {
+ $tile = new TileSingle($path_array[$i]);
+ array_push($this->tiles_array, $tile);
+ }
+ }
+
+ public function forceSize($width_must_fit=false) {
+ for ($i = 0; $i < count($this->tiles_array); $i++)
+ $this->tiles_array[$i]->forceSize(true);
+ }
- public function getWidth() {
- $max = 0;
- for ($i = 0; $i < count($this->tiles_array); $i++) {
- $max = max($max, $this->tiles_array[$i]->getWidth());
- }
- return min(IMAGE_WIDTH, $max);
- }
+ public function getWidth() {
+ $max = 0;
+ for ($i = 0; $i < count($this->tiles_array); $i++) {
+ $max = max($max, $this->tiles_array[$i]->getWidth());
+ }
+ return min(IMAGE_WIDTH, $max);
+ }
- public function get() {
- $r = ''.$this->stack_name.'
';
- for ($i = 0; $i < count($this->tiles_array); $i++) {
- $top = rand(-5, 5);
- $left = rand(-5, 5);
- $img_w = $this->tiles_array[$i]->getWidth();
- $extra = '';
- if ($img_w < IMAGE_WIDTH) {
- $extra = 'width:'.$img_w.'px;';
- }
- $r .= '';
- }
- return $r;
- }
+ public function get() {
+ $r = ''.$this->stack_name.'
';
+ for ($i = 0; $i < count($this->tiles_array); $i++) {
+ $top = rand(-5, 5);
+ $left = rand(-5, 5);
+ $img_w = $this->tiles_array[$i]->getWidth();
+ $extra = '';
+ if ($img_w < IMAGE_WIDTH) {
+ $extra = 'width:'.$img_w.'px;';
+ }
+ $r .= '';
+ }
+ return $r;
+ }
- public function getOnHoverAction() {
- return 'javascript:t(this);return false;';
- }
-
- public function getOnOutAction() {
- return 'javascript:o(this);return false;';
- }
+ public function getOnHoverAction() {
+ return 'javascript:t(this);return false;';
+ }
+
+ public function getOnOutAction() {
+ return 'javascript:o(this);return false;';
+ }
- public function getCount() {
- return count($this->tiles_array);
- }
-
- public function getOnClickAction() {
- return 'javascript:openNewGal(\''.$this->stack_name.'\');';
- }
+ public function getCount() {
+ return count($this->tiles_array);
+ }
+
+ public function getOnClickAction() {
+ return 'javascript:openNewGal(\''.$this->stack_name.'\');';
+ }
- private $tiles_array;
- private $stack_name;
+ private $tiles_array;
+ private $stack_name;
}
?>