예제 #1
0
 /**
  * Method for loading directory content via AJAX call
  * @return JSON
  */
 public function getdirectorycontentAction()
 {
     if ($this->getRequest()->isPost()) {
         $folderName = filter_var($this->getRequest()->getParam('folder'), FILTER_SANITIZE_STRING);
         $folderPath = realpath($this->_websiteConfig['path'] . $this->_websiteConfig['media'] . $folderName);
         //retrieve content for given folder
         if (!$folderName || $folderPath === false) {
             $this->view->error = 'Wrong folder specified';
             return false;
         }
         $this->view->imageList = array();
         if (is_dir($folderPath . DIRECTORY_SEPARATOR . 'product')) {
             $listImages = Tools_Filesystem_Tools::scanDirectory($folderPath . DIRECTORY_SEPARATOR . 'product', false, false);
             foreach ($listImages as $image) {
                 array_push($this->view->imageList, array('name' => $image, 'src' => Tools_Content_Tools::applyMediaServers($this->_helper->website->getUrl() . $this->_websiteConfig['media'] . $folderName . '/product/' . $image)));
             }
         }
         $this->view->filesList = array();
         $listFiles = Tools_Filesystem_Tools::scanDirectory($folderPath, false, false);
         foreach ($listFiles as $item) {
             if (!is_dir($folderPath . DIRECTORY_SEPARATOR . $item)) {
                 array_push($this->view->filesList, array('name' => $item));
             }
         }
     } else {
         $this->_redirect($this->_helper->website->getUrl(), array('exit' => true));
     }
 }
예제 #2
0
 /**
  * @deprecated Use Tools_Page_Tools::getPreview() instead. Will be removed in 2.2
  */
 public static function getPreviewPath($pageId, $capIfNoPreview = false, $croped = false)
 {
     Tools_System_Tools::debugMode() && error_log('Called deprecated Tools_Page_Tools::getPreviewPath(). Use Tools_Page_Tools::getPreview() instead');
     $websiteHelper = Zend_Controller_Action_HelperBroker::getStaticHelper('website');
     $configHelper = Zend_Controller_Action_HelperBroker::getStaticHelper('config');
     $pageHelper = Zend_Controller_Action_HelperBroker::getStaticHelper('page');
     $websiteUrl = $configHelper->getConfig('mediaServers') ? Tools_Content_Tools::applyMediaServers($websiteHelper->getUrl()) : $websiteHelper->getUrl();
     try {
         $previews = Tools_Filesystem_Tools::findFilesByExtension($websiteHelper->getPath() . ($croped ? $websiteHelper->getPreviewCrop() : $websiteHelper->getPreview()), 'jpg|png|jpeg|gif', true, true, false);
     } catch (Exceptions_SeotoasterException $se) {
         if (APPLICATION_ENV == 'development') {
             error_log("(Cant find preview thumbnail because: " . $se->getMessage() . "\n" . $se->getTraceAsString());
         }
         return $websiteUrl . 'system/images/noimage.png';
     }
     $page = Application_Model_Mappers_PageMapper::getInstance()->find($pageId);
     if ($page instanceof Application_Model_Models_Page) {
         $cleanUrl = $pageHelper->clean(preg_replace('~/+~', '-', $page->getUrl()));
         unset($page);
         $path = array_key_exists($cleanUrl, $previews) ? str_replace($websiteHelper->getPath(), $websiteUrl, $previews[$cleanUrl]) : '';
         if (!$path && $capIfNoPreview) {
             return $websiteUrl . 'system/images/noimage.png';
         }
         return str_replace(DIRECTORY_SEPARATOR, '/', $path);
     }
     return $websiteUrl . 'system/images/noimage.png';
 }
예제 #3
0
 private function _proccessImages(array $images, $path, $folder, $type)
 {
     if (!empty($images)) {
         $imagesContent = '';
         $srcPath = $this->_helper->website->getUrl() . $this->_helper->website->getMedia() . $folder;
         foreach ($images as $key => $image) {
             $srcPath = Tools_Content_Tools::applyMediaServers($srcPath);
             $imageName = preg_replace('~\\.(jpg|png|gif|jpeg)~i', '', $image);
             $imageSize = getimagesize($path . '/' . $type . '/' . $image);
             $imageElement = htmlspecialchars('<a class="_lbox" href="' . $srcPath . '/' . self::IMG_CONTENTTYPE_ORIGINAL . '/' . $image . '" title="' . str_replace('-', '&nbsp;', $imageName) . '"><img border="0" alt="' . str_replace('-', '&nbsp;', $imageName) . '" src="' . $srcPath . '/' . $type . '/' . $image . '" width="' . $imageSize[0] . '" height="' . $imageSize[1] . '" /></a>');
             $imagesContent .= '<a href="javascript:;" onmousedown="$(\'#content\').tinymce().execCommand(\'mceInsertContent\', false, \'' . $imageElement . '\');">';
             $imagesContent .= '<img title="' . $image . '" border="0" width="80" src="' . $srcPath . '/product/' . $image . '" /></a>';
         }
         return $imagesContent;
     }
 }