diff options
author | Bartek Przybylski <bart.p.pl@gmail.com> | 2012-06-06 23:23:23 +0200 |
---|---|---|
committer | Bartek Przybylski <bart.p.pl@gmail.com> | 2012-06-06 23:23:49 +0200 |
commit | 5417d803c454a60c83e55ab574f56b88c8dba2a1 (patch) | |
tree | 8504de6cd4d220ca3d93b33f89c20fd9d0a85640 | |
parent | 8dba47d466d3c5f411c4abe42f292c277cf8267f (diff) | |
download | nextcloud-server-5417d803c454a60c83e55ab574f56b88c8dba2a1.tar.gz nextcloud-server-5417d803c454a60c83e55ab574f56b88c8dba2a1.zip |
replace spaces with tabs, use const and linkTo instead of static path
-rw-r--r-- | apps/gallery/lib/tiles.php | 299 |
1 files changed, 148 insertions, 151 deletions
diff --git a/apps/gallery/lib/tiles.php b/apps/gallery/lib/tiles.php index 3805b6dd25c..6f8b8aa7fe7 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 setAvailableSpace($space) { - $available_space = $space; - } - - public function getTilesCount() { - return count($this->tiles_array); - } - - 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 tileWillFit($tile) { - return $this->getLeftSpace() > $tile->getWidth(); - } - - public function get() { - $r = '<div class="line gallery_div">'; - - 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 .= '<div class="gallery_div" '.$extra.' onmouseover="'.$this->tiles_array[$i]->getOnHoverAction().'" onmouseout="'.$this->tiles_array[$i]->getOnOutAction().'" onclick="'.$this->tiles_array[$i]->getOnClickAction().'">'.$this->tiles_array[$i]->get().'</div>'; - } - - $r .= '</div>'; - return $r; - } - - private $tiles_array; - private $available_space; + public function __construct() { + $this->tiles_array = array(); + } + + public function setAvailableSpace($space) { + $available_space = $space; + } + + public function getTilesCount() { + return count($this->tiles_array); + } + + 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 tileWillFit($tile) { + return $this->getLeftSpace() > $tile->getWidth(); + } + + public function get() { + $r = '<div class="line gallery_div">'; + + 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 .= '<div class="gallery_div" '.$extra.' onmouseover="'.$this->tiles_array[$i]->getOnHoverAction().'" onmouseout="'.$this->tiles_array[$i]->getOnOutAction().'" onclick="'.$this->tiles_array[$i]->getOnClickAction().'">'.$this->tiles_array[$i]->get().'</div>'; + } + + $r .= '</div>'; + return $r; + } + + 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 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 '<a rel="images" href="?app=files&getfile=download.php?file='.urlencode(urlencode($this->getPath())).'"><img rel="images" src="'.GET_THUMBNAIL_PATH.urlencode($this->getPath()).'" '.$extra.'></a>'; - } - - public function getMiniatureSrc() { - return GET_THUMBNAIL_PATH.urlencode($this->getPath()); - } - - public function getPath() { - return $this->file_path; - } - - public function getOnClickAction() { - return '';//'javascript:openFile(\''.$this->file_path.'\');'; - } - - private $file_path; - private $image; + 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 '<a rel="images" href="'.\OCP\Util::linkTo('files', 'download.php').'?file='.urlencode(urlencode($this->getPath())).'"><img rel="images" src="'.\OCP\Util::linkTo('gallery', 'ajax/thumbnail.php').'&filepath='.urlencode($this->getPath()).'" '.$extra.'></a>'; + } + + 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.'\');'; + } + + private $file_path; + private $image; } class TileStack extends TileBase { - 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 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 = '<div class="title gallery_div">'.$this->stack_name.'</div>'; - 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 .= '<div class="miniature_border gallery_div" style="background-image:url(\''.$this->tiles_array[$i]->getMiniatureSrc().'\');margin-top:'.$top.'px; margin-left:'.$left.'px;'.$extra.'"></div>'; - } - return $r; - } - - 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.'\');'; - } - - private $tiles_array; - private $stack_name; + 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 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 = '<div class="title gallery_div">'.$this->stack_name.'</div>'; + 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 .= '<div class="miniature_border gallery_div" style="background-image:url(\''.$this->tiles_array[$i]->getMiniatureSrc().'\');margin-top:'.$top.'px; margin-left:'.$left.'px;'.$extra.'"></div>'; + } + return $r; + } + + 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.'\');'; + } + + private $tiles_array; + private $stack_name; } ?> |