Beispiel #1
0
<?php

require_once dirname(dirname(__FILE__)) . "/src/pbalan/CarouselBuilder/CarouselBuilder.php";
require_once '../vendor/autoload.php';
require_once '../autoload.php';
use pbalan\FileUploader;
use pbalan\DirectoryParser;
$dest = $_SERVER['DOCUMENT_ROOT'] . '/carousel-builder/upload';
if (true === isset($_GET['carouselName']) && false === empty($_GET['carouselName']) && true === is_string($_GET['carouselName'])) {
    $carouselName = $_GET['carouselName'];
} else {
    $carouselName = 'carousel';
}
// create active directory to differentiate images which are currently required to show on carousel
$activeDir = 'active';
// uniform directory separator
$dest = str_replace('\\', '/', $dest);
$carouselObj = new pbalan\CarouselBuilder\CarouselBuilder($carouselName, $dest);
if (true === $carouselObj->getError()) {
    echo "carousel with name {$carouselName} exists! Please provide a different name.";
    exit;
}
$dest = $carouselObj->getCarouselDir();
$dirObj = new pbalan\DirectoryParser\DirectoryParser($dest);
$dirObj->addRelativeDirectory($activeDir);
$return = $dirObj->getFileList($dest);
if (true === empty($return)) {
    echo "Your carousel is empty. Please specify images to display as carousel";
    exit;
} else {
}
    public function SetUpCarousel($carouselName, $allowedExtn = array())
    {
        $this->dir = $this->getCarouselDir();
        $this->checkDirectoryFlow();
        if (false === stripos($this->dir, "/{$carouselName}/")) {
            $this->dir .= $carouselName;
            $this->checkDirectoryFlow();
        }
        if (false === empty($allowedExtn) && true === is_array($allowedExtn)) {
            $this->allowedExtn = $allowedExtn;
        } else {
            if (false === empty($allowedExtn) && false === is_array($this->allowedExtn)) {
                echo "Invalid file extension. An Array expected. Ex: <br/> array('jpg','jpeg','gif','png')";
                exit;
            }
        }
        if (null === $this->dir || false === is_dir($this->dir)) {
            echo 'Invalid directory path..';
            exit;
        }
        $dirObj = new pbalan\DirectoryParser\DirectoryParser();
        $fileList = $dirObj->getFileList($this->dir, $this->allowedExtn, true);
        if (true === empty($fileList)) {
            echo 'No images in the directory. Upload using the Admin Panel.';
            exit;
        } else {
            $html = '';
            if (true === is_array($fileList)) {
                foreach ($fileList as $file) {
                    $status = false;
                    if (false !== strpos(strtolower($file), '/active/')) {
                        $status = true;
                    }
                    $src = str_replace($_SERVER['DOCUMENT_ROOT'], IMAGE_URL, $file);
                    $html .= '<div class="wrapCells">
									<div class="picture">
										<img src="' . $src . '" />
									</div>
									<div class="checkBx">
										<input type="checkbox" name="fileChange[]" value="' . $file . '"' . (true === $status ? ' checked="true"' : '') . ' />
									</div>
								  </div>';
                }
            } else {
                echo 'An unexpected error occurred, please try later or contact <a href="mailto:' . ADMIN_MAIL . '> administrator.</a>';
                exit;
            }
            return $html;
        }
    }