Revision: 68154
Initial Code
Initial URL
Initial Description
Initial Title
Initial Tags
Initial Language
at December 4, 2014 01:12 by rk
Initial Code
<?php namespace Repositories; /** * ExcursionRepository */ class ExcursionRepository extends BaseRepository { protected $basePath; protected $excursionsPath; public function __construct($wwwDir, $excursionsPath) { $this->basePath = $wwwDir; $this->excursionsPath = $excursionsPath; } /** * get array of files (scandir) * filter out directiries (array_filter) * prepend a full path string (array_map) * filter out photos * * @return array */ public function getAllExcursionPhotos() { $excursionsFullPath = $this->basePath . $this->excursionsPath; if (!is_dir($excursionsFullPath)) { mkdir($excursionsFullPath, 0777, TRUE); } $photoPaths = scandir($excursionsFullPath); $photoPaths = array_filter($photoPaths, $this->filterOutDirectories); $photoPaths = array_map($this->prependExcursionPath, $photoPaths); $photoPaths = array_filter($photoPaths, array('self', 'filterPhotos')); return $photoPaths; } /** * Callback * * @param $itemPath * @return bool */ public function filterOutDirectories($itemPath) { $excursionsFullPath = $this->basePath . $this->excursionsPath; return !is_dir($excursionsFullPath . $itemPath); } /** * Callback * * @param $itemPath * @return string */ public function prependExcursionPath($itemPath) { return $this->excursionsPath . $itemPath; } /** * Callback * * @param $itemPath * @return string */ public function filterPhotos($itemPath) { $fullPath = $this->basePath . $itemPath; return parent::isPhoto($fullPath); } }
Initial URL
Initial Description
excursion repo
Initial Title
ExcursionRepository
Initial Tags
Initial Language
PHP