1
0
mirror of https://github.com/e107inc/e107.git synced 2025-02-24 08:42:56 +01:00

Fix handling of php files in banners

This commit is contained in:
e107steved 2007-09-30 10:58:58 +00:00
parent 5c0d75fbf6
commit 350e5e6b81

View File

@ -1,3 +1,4 @@
// $Id: banner.sc,v 1.2 2007-09-30 10:58:49 e107steved Exp $
global $sql, $tp, $ns, $menu_pref;
$ret = "";
@ -9,7 +10,8 @@ $query = " (banner_startdate=0 OR banner_startdate<=".time().") AND (banner_endd
AND banner_active IN (".USERCLASS_LIST.")
ORDER BY RAND($seed)";
if($sql -> db_Select("banner", "*", $query)){
if($sql -> db_Select("banner", "*", $query))
{
$row = $sql->db_Fetch();
if(!$row['banner_image'])
@ -19,8 +21,9 @@ if($sql -> db_Select("banner", "*", $query)){
$fileext1 = substr(strrchr($row['banner_image'], "."), 1);
$sql->db_Update("banner", "banner_impressions=banner_impressions+1 WHERE banner_id='{$row['banner_id']}' ");
if ($fileext1 == 'swf')
switch ($fileext1)
{
case 'swf' :
return "
<object classid=\"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000\" codebase=\"http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0\" width=\"468\" height=\"60\">\n
<param name=\"movie\" value=\"".e_IMAGE_ABS."banners/".$row['banner_image']."\">\n
@ -29,16 +32,23 @@ if($sql -> db_Select("banner", "*", $query)){
<embed src=\"".e_IMAGE_ABS."banners/".$row['banner_image']."\" width=\"468\" height=\"60\" scale=\"noborder\" quality=\"high\" pluginspage=\"http://www.macromedia.com/go/getflashplayer\" type=\"application/x-shockwave-flash\"></embed>
</object>
";
}
elseif($fileext1 == 'php' || $fileext1 == 'html' || $fileext1 == 'js')
{
case 'html' :
case 'js' :
$file_data = file_get_contents(e_IMAGE."banners/".$row['banner_image']);
return $file_data;
case 'php' : // Code - may 'echo' text, or may return it as a value
$file_data = file_get_contents(e_IMAGE."banners/".$row['banner_image']);
ob_start();
if (strpos($file_data,'<?php') !== FALSE) $file_data = str_replace(array('<?php', '?>'),'',$file_data);
$shortcode_return = eval($file_data);
$shortcode_output = ob_get_contents();
ob_end_clean();
return $shortcode_output.$shortcode_return;
default :
return "<a href='".e_HTTP."banner.php?".$row['banner_id']."' rel='external'><img src='".e_IMAGE_ABS."banners/".$row['banner_image']."' alt='".$row['banner_clickurl']."' style='border:0' /></a>";
}
}
else
{
return "<a href='".e_HTTP."banner.php?".$row['banner_id']."' rel='external'><img src='".e_IMAGE_ABS."banners/".$row['banner_image']."' alt='".$row['banner_clickurl']."' style='border:0' /></a>";
}
} else {
return "&nbsp;";
}