コード例 #1
0
ファイル: Videosites.php プロジェクト: woehrlag/Intranet
    /**
     * Render videos from various video portals
     *
     * @param Tx_News_Domain_Model_Media $element
     * @param integer $width
     * @param integer $height
     * @return string
     */
    public function render(Tx_News_Domain_Model_Media $element, $width, $height)
    {
        $content = $finalUrl = '';
        $url = Tx_News_Service_FileService::getCorrectUrl($element->getContent());
        // get the correct rewritten url
        $mediaWizard = \TYPO3\CMS\Frontend\MediaWizard\MediaWizardProviderManager::getValidMediaWizardProvider($url);
        if ($mediaWizard !== NULL) {
            $finalUrl = $mediaWizard->rewriteUrl($url);
        }
        // override width & height if both are set
        if ($element->getWidth() > 0 && $element->getHeight() > 0) {
            $width = $element->getWidth();
            $height = $element->getHeight();
        }
        if (!empty($finalUrl)) {
            $GLOBALS['TSFE']->getPageRenderer()->addJsFile('typo3conf/ext/news/Resources/Public/JavaScript/Contrib/swfobject-2-2.js');
            $uniqueDivId = 'mediaelement' . Tx_News_Service_FileService::getUniqueId($element);
            $content .= '<div id="' . htmlspecialchars($uniqueDivId) . '"></div>
						<script type="text/javascript">
							var params = { allowScriptAccess: "always", allowfullscreen : "true" };
							var atts = { id: ' . \TYPO3\CMS\Core\Utility\GeneralUtility::quoteJSvalue($uniqueDivId) . ' };
							swfobject.embedSWF(' . \TYPO3\CMS\Core\Utility\GeneralUtility::quoteJSvalue($finalUrl) . ',
							' . \TYPO3\CMS\Core\Utility\GeneralUtility::quoteJSvalue($uniqueDivId) . ', "' . (int) $width . '", "' . (int) $height . '", "8", null, null, params, atts);
						</script>';
        }
        return $content;
    }
コード例 #2
0
ファイル: File.php プロジェクト: rafu1987/t3bootstrap-project
 /**
  * Files with extension flv|mp4 are handled within this implementation
  *
  * @param Tx_News_Domain_Model_Media $element
  * @return boolean
  */
 public function enabled(Tx_News_Domain_Model_Media $element)
 {
     $url = Tx_News_Service_FileService::getFalFilename($element->getMultimedia());
     $fileEnding = strtolower(substr($url, -3));
     $enabled = FALSE;
     if ($fileEnding === 'flv' || $fileEnding === 'mp4') {
         $enabled = TRUE;
     }
     return $enabled;
 }
コード例 #3
0
    /**
     * Render quicktime files
     *
     * @param Tx_News_Domain_Model_Media $element
     * @param integer $width
     * @param integer $height
     * @return string
     */
    public function render(Tx_News_Domain_Model_Media $element, $width, $height)
    {
        $url = Tx_News_Service_FileService::getCorrectUrl($element->getContent());
        // override width & height if both are set
        if ($element->getWidth() > 0 && $element->getHeight() > 0) {
            $width = $element->getWidth();
            $height = $element->getHeight();
        }
        $content = '<object classid="clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B" codebase="http://www.apple.com/qtactivex/qtplugin.cab" width="' . (int) $width . '" height="' . (int) $height . '" >
					<param name="src" value="' . htmlspecialchars($url) . '">
					<param name="autoplay" value="true">
					<param name="type" value="video/quicktime" width="' . (int) $width . '" height="' . (int) $height . '">
					<embed src="' . htmlspecialchars($url) . '" width="' . (int) $width . '" height="' . (int) $height . '" autoplay="false" type="video/quicktime" pluginspage="http://www.apple.com/quicktime/download/">
				</object>';
        return $content;
    }
コード例 #4
0
ファイル: Mp3.php プロジェクト: rafu1987/t3bootstrap-project
    /**
     * Render flv viles
     *
     * @param Tx_News_Domain_Model_Media $element
     * @param integer $width
     * @param integer $height
     * @param string $template
     * @return string
     */
    public function render(Tx_News_Domain_Model_Media $element, $width, $height, $template = '')
    {
        $url = Tx_News_Service_FileService::getCorrectUrl($element->getMultimedia());
        $url = htmlspecialchars($url);
        $uniqueId = Tx_News_Service_FileService::getUniqueId($element);
        $GLOBALS['TSFE']->getPageRenderer()->addJsFile('typo3conf/ext/news/Resources/Public/JavaScript/Contrib/swfobject-2-2.js');
        $GLOBALS['TSFE']->getPageRenderer()->addJsFile('typo3conf/ext/news/Resources/Public/JavaScript/Contrib/audioplayer-noswfobject.js');
        $inlineJs = '
			AudioPlayer.setup("' . t3lib_div::getIndpEnv('TYPO3_SITE_URL') . 'typo3conf/ext/news/Resources/Public/JavaScript/Contrib/audioplayer-player.swf", {
				width: ' . (int) $width . '
			});';
        $GLOBALS['TSFE']->getPageRenderer()->addJsInlineCode('news_audio', $inlineJs);
        $content = '<p id="' . $uniqueId . '">' . htmlspecialchars($element->getCaption()) . '</p>
					<script type="text/javascript">
						AudioPlayer.embed("' . $uniqueId . '", {soundFile: "' . $url . '"});
					</script> ';
        return $content;
    }
コード例 #5
0
ファイル: Flv.php プロジェクト: rafu1987/t3bootstrap-project
 /**
  * Render flv viles
  *
  * @param Tx_News_Domain_Model_Media $element
  * @param integer $width
  * @param integer $height
  * @param string $templateFile template file to override. Absolute path
  * @return string
  */
 public function render(Tx_News_Domain_Model_Media $element, $width, $height, $templateFile = '')
 {
     $view = t3lib_div::makeInstance('Tx_Fluid_View_StandaloneView');
     if (!$templateFile || !is_readable($templateFile)) {
         $view->setTemplatePathAndFilename(t3lib_extMgm::extPath('news') . 'Resources/Private/Templates/ViewHelpers/Flv.html');
     } else {
         $view->setTemplatePathAndFilename($templateFile);
     }
     $url = Tx_News_Service_FileService::getCorrectUrl($element->getContent());
     $GLOBALS['TSFE']->getPageRenderer()->addJsFile('typo3conf/ext/news/Resources/Public/JavaScript/Contrib/flowplayer-3.2.4.min.js');
     // override width & height if both are set
     if ($element->getWidth() > 0 && $element->getHeight() > 0) {
         $width = $element->getWidth();
         $height = $element->getHeight();
     }
     $view->assign('width', Tx_News_Utility_Compatibility::convertToPositiveInteger($width));
     $view->assign('height', Tx_News_Utility_Compatibility::convertToPositiveInteger($height));
     $view->assign('uniqueDivId', 'mediaelement-' . md5($element->getUid() . uniqid()));
     $view->assign('url', htmlspecialchars($url));
     return $view->render();
 }
コード例 #6
0
ファイル: FileServiceTest.php プロジェクト: woehrlag/Intranet
 /**
  * @test
  * @dataProvider validUrlIsReturnedDataProvider
  */
 public function validUrlIsReturned($expected, $actual)
 {
     $result = Tx_News_Service_FileService::getCorrectUrl($actual);
     $this->assertEquals($expected, $result, 'exp:' . $expected . ', <br />' . $result);
 }
コード例 #7
0
ファイル: Mp3.php プロジェクト: rafu1987/t3bootstrap-project
 /**
  * Implementation is only used if file ending is mp3
  *
  * @param Tx_News_Domain_Model_Media $element media element
  * @return boolean
  */
 public function enabled(Tx_News_Domain_Model_Media $element)
 {
     $url = Tx_News_Service_FileService::getFalFilename($element->getContent());
     $fileEnding = strtolower(substr($url, -3));
     return $fileEnding === 'mp3';
 }