classes/BannerImage.php
protected function getImageSizeExternal($BannerImage)
	{
		$token = md5(uniqid(rand(), true));
		$tmpImage = 'system/tmp/mod_banner_fe_'.$token.'.tmp';
		// HOOK: proxy module
		if ( \Config::get('useProxy') 
		    && in_array('proxy', \ModuleLoader::getActive()) 
            ) 
		{
		    $objRequest = new \ProxyRequest();
		} 
		else 
		{
		    $objRequest = new \Request();
		    $objRequest->redirect = true; // #75: Unterstützung der redirects für externe Affiliat Banner
		    $objRequest->rlimit = 5;      // #75: Unterstützung der redirects für externe Affiliat Banner
		}
		$objRequest->send(html_entity_decode($BannerImage, ENT_NOQUOTES, 'UTF-8'));
		//old: Test auf chunked, nicht noetig solange Contao bei HTTP/1.0 bleibt
		try
		{
		    $objFile = new \File($tmpImage);
		    $objFile->write($objRequest->response);
		    $objFile->close();
		}
		// Temp directory not writeable
		catch (\Exception $e)
		{
		    if ($e->getCode() == 0)
		    {
		        log_message('[getImageSizeExternal] tmpFile Problem: notWriteable', 'error.log');
		    } 
		    else 
		    {
		        log_message('[getImageSizeExternal] tmpFile Problem: error', 'error.log');
		    }
		    return false;
		} 
		$objRequest=null;
		unset($objRequest);
		$arrImageSize = $this->getImageSizeInternal($tmpImage);
		
		if ($arrImageSize === false) //Workaround fuer PHP ohne zlib bei SWC Files 
		{		    
		    $arrImageSize = $this->getImageSizeCompressed($tmpImage);
		}
		$objFile->delete();
		$objFile = null;
		unset($objFile);

		ModuleBannerLog::writeLog(__METHOD__ , __LINE__ , 'Image Size: '. print_r($arrImageSize,true));
		
		return $arrImageSize;
	}
protected function getImageSizeExternal($BannerImage)
	{
		$token = md5(uniqid(rand(), true));
		$tmpImage = 'system/tmp/mod_banner_fe_'.$token.'.tmp';
		// HOOK: proxy module
		if ( \Config::get('useProxy') 
		    && in_array('proxy', \ModuleLoader::getActive()) 
            ) 
		{
		    $objRequest = new \ProxyRequest();
		} 
		else 
		{
		    $objRequest = new \Request();
		    $objRequest->redirect = true; // #75: Unterstützung der redirects für externe Affiliat Banner
		    $objRequest->rlimit = 5;      // #75: Unterstützung der redirects für externe Affiliat Banner
		}
		$objRequest->send(html_entity_decode($BannerImage, ENT_NOQUOTES, 'UTF-8'));
		//old: Test auf chunked, nicht noetig solange Contao bei HTTP/1.0 bleibt
		try
		{
		    $objFile = new \File($tmpImage);
		    $objFile->write($objRequest->response);
		    $objFile->close();
		}
		// Temp directory not writeable
		catch (\Exception $e)
		{
		    if ($e->getCode() == 0)
		    {
		        log_message('[getImageSizeExternal] tmpFile Problem: notWriteable', 'error.log');
		    } 
		    else 
		    {
		        log_message('[getImageSizeExternal] tmpFile Problem: error', 'error.log');
		    }
		    return false;
		} 
		$objRequest=null;
		unset($objRequest);
		$arrImageSize = $this->getImageSizeInternal($tmpImage);
		
		if ($arrImageSize === false) //Workaround fuer PHP ohne zlib bei SWC Files 
		{		    
		    $arrImageSize = $this->getImageSizeCompressed($tmpImage);
		}
		$objFile->delete();
		$objFile = null;
		unset($objFile);

		ModuleBannerLog::writeLog(__METHOD__ , __LINE__ , 'Image Size: '. print_r($arrImageSize,true));
		
		return $arrImageSize;
	}
protected function getImageSizeExternal ( $ BannerImage ) { $ token = md5 ( uniqid ( rand ( ) , true ) ) ; $ tmpImage = 'system/tmp/mod_banner_fe_' . $ token . '.tmp' ; // HOOK: proxy module if ( \ Config :: get ( 'useProxy' ) && in_array ( 'proxy' , \ ModuleLoader :: getActive ( ) ) ) { $ objRequest = new \ ProxyRequest ( ) ; } else { $ objRequest = new \ Request ( ) ; $ objRequest -> redirect = true ; // #75: Unterstützung der redirects für externe Affiliat Banner $ objRequest -> rlimit = 5 ; // #75: Unterstützung der redirects für externe Affiliat Banner } $ objRequest -> send ( html_entity_decode ( $ BannerImage , ENT_NOQUOTES , 'UTF-8' ) ) ; //old: Test auf chunked, nicht noetig solange Contao bei HTTP/1.0 bleibt try { $ objFile = new \ File ( $ tmpImage ) ; $ objFile -> write ( $ objRequest -> response ) ; $ objFile -> close ( ) ; } // Temp directory not writeable catch ( \ Exception $ e ) { if ( $ e -> getCode ( ) == 0 ) { log_message ( '[getImageSizeExternal] tmpFile Problem: notWriteable' , 'error.log' ) ; } else { log_message ( '[getImageSizeExternal] tmpFile Problem: error' , 'error.log' ) ; } return false ; } $ objRequest = null ; unset ( $ objRequest ) ; $ arrImageSize = $ this -> getImageSizeInternal ( $ tmpImage ) ; if ( $ arrImageSize === false ) //Workaround fuer PHP ohne zlib bei SWC Files  { $ arrImageSize = $ this -> getImageSizeCompressed ( $ tmpImage ) ; } $ objFile -> delete ( ) ; $ objFile = null ; unset ( $ objFile ) ; ModuleBannerLog :: writeLog ( __METHOD__ , __LINE__ , 'Image Size: ' . print_r ( $ arrImageSize , true ) ) ; return $ arrImageSize ; }
Get the size of an external image

@param string $BannerImage	Image link
@return	mixed	$array / false
Get the size of an external image