<?php
$adArten = array('forcedbanner' => 'forcedbanner',
);
/*
* TODO
* nothing checks wether user landed on blacklist...
* blacklist check is broken currently anyway
* please fix me
*/
function invalidateAlreadyRunningAd()
{
global $adArten,$ip,$db_prefix;
$result = false;
if( isset($_SESSION['current_ad']) )
{
$tan = ( isset($_SESSION['current_ad']['tan']) ) ? $_SESSION['current_ad']['tan'] : false;
$art = ( isset($_SESSION['current_ad']['art']) ) ? $_SESSION['current_ad']['art'] : '';
if( false !== $tan && in_array($art, $adArten) )
{
$dbArt = $adArten[$art];
$kamp = db_query ("SELECT `t1`.* FROM `" . $db_prefix . "_gebuchte_werbung` AS `t1`
LEFT JOIN `" . $db_prefix . "_reloads` AS `t2` ON (`t1`.`tan`=`t2`.`tan` AND (`t2`.`uid`=" . $_SESSION['uid'] . " OR `t2`.`ip`='" . $ip . "') AND `t2`.`bis` > " . time() . ")
WHERE `t1`.`tan` = '" . $tan . "' AND `t2`.`tan` IS NULL AND `t1`.`werbeart` = '".$dbArt."' LIMIT 1");
if ( mysqli_num_rows( $kamp ) )
{
$result = true;
$forced = mysqli_fetch_assoc( $kamp );
$new_reload = time() + $forced['reload'];
db_query("INSERT INTO `" . $db_prefix . "_reloads`
(`ip`,`uid`,`tan`,`bis`) VALUES
('" . $ip . "'," . $_SESSION['uid'] . ",'" . $tan . "'," . $new_reload . ")");
}
}
unset( $_SESSION['current_ad'] );
}
return $result;
}
function setCurrentRunningAd( $art, $tan )
{
$_SESSION['current_ad']['tan'] = $tan;
$_SESSION['current_ad']['art'] = $art;
$_SESSION['current_ad']['time'] = time();
$_SESSION['current_ad']['paid'] = false;
}
function handleAdPayout( $forced )
{
global $dbArten, $ip, $db_prefix;
db_query("UPDATE ".$db_prefix."_kontodaten SET klicks = klicks + 1, kv = kv + ".$forced['verdienst'].", fc_klicks = fc_klicks + 1 WHERE uid = '".$_SESSION['uid']."'"); // Hier Zusatz für Fakeschutz
kontobuchung ('+', $forced['verdienst'], create_code(14), $_SESSION['uid'], 1, 'Forcedbannerverdienst');
refumsatz ($forced['verdienst'], $_SESSION['uid']);
rallysystem ($_SESSION['uid'], '1', $forced['verdienst']);
bilanz($forced['preis'], $forced['verdienst'],'Werbebereich','Forcedbannerklick');
$new_reload = time() + $forced['reload'];
db_query("INSERT INTO " . $db_prefix . "_reloads (ip,uid,tan,bis) VALUES ('" . $ip . "'," . $_SESSION['uid'] . ",'" . $forced['tan'] . "'," . $new_reload . ")");
db_query("UPDATE " . $db_prefix . "_gebuchte_werbung SET menge = menge - 1 WHERE tan='" . $forced['tan'] . "'");
}
function checkAdOk( $art, $tan )
{
global $dbArten, $ip, $db_prefix, $sql_open;
$result = array('checkResult' => false);
$sql = "SELECT `t1`.* FROM `" . $db_prefix . "_gebuchte_werbung` AS `t1`
LEFT JOIN `" . $db_prefix . "_reloads` AS `t2` ON (`t1`.`tan`=`t2`.`tan` AND (`t2`.`uid`=" . $_SESSION['uid'] . " OR `t2`.`ip`='" . $ip . "') AND `t2`.`bis` > " . time() . ")
WHERE `t1`.`tan` = ? AND `t2`.`tan` IS NULL AND `t1`.`werbeart` = ? LIMIT 1";
$statement = mysqli_stmt_init( $sql_open );
mysqli_stmt_prepare( $statement, $sql );
mysqli_stmt_bind_param( $statement, "ss", $tan, $art );
if( mysqli_stmt_execute( $statement ) )
{
mysqli_stmt_store_result( $statement );
if ( mysqli_stmt_num_rows( $statement ) > 0 )
{
$timepassed = ( time() - $_SESSION['current_ad']['time'] ) +1;
$rows = db_fetch( $statement );
$forced = $row[0];
$result['data'] = $forced;
if( $timepassed >= $forced['aufendhalt'] )
{
handleAdPayout( $forced );
$_SESSION['current_ad']['paid'] = true;
$result['checkResult'] = true;
}
}
}
mysqli_stmt_close( $statement );
return $result;
}
function getNewAdData( $dbArt )
{
global $ip,$db_prefix;
$result = array('count' => 0, 'data' => array() );
$banner_sql = 'SELECT t1.*
FROM ' . $db_prefix . '_gebuchte_werbung t1
LEFT JOIN ' . $db_prefix . '_userblacklist t4 ON t4.uid = ' . $_SESSION['uid'] . '
LEFT JOIN ' . $db_prefix . '_fb_blacklist AS t3 ON t3.kid = t1.kid AND t3.werbeart=t1.werbeart
LEFT JOIN ' . $db_prefix . '_reloads t2
ON (t1.tan = t2.tan AND (t2.uid = ' . $_SESSION['uid'] . ' OR t2.ip = "' . $ip . '") AND t2.bis >= ' . time() . ')
WHERE
(t3.kid IS NULL OR LOCATE(t3.sponsor, t1.ziel) = 0) AND
t2.tan IS NULL AND
t1.werbeart = "'.$dbArt.'" AND
t1.menge > 0 AND
t1.status = 1 AND
t1.verdienst > 0 AND
t1.sponsor != ' . $_SESSION['uid'] . '
ORDER BY t1.verdienst DESC LIMIT 3';
$banner_res = db_query( $banner_sql );
$banner_c = mysqli_num_rows( $banner_res );
$result['count'] = $banner_c;
if( 0 < $banner_c )
{
while( $banner = mysqli_fetch_assoc( $banner_res ) )
$result['data'][] = $banner;
}
return $result;
}