<?php class Verdienen{ private $db; private $session = array(); private $art; private $config; private $ip; private $tan; private $get = array(); private $konto; function __construct(){ global $datenbank,$_SESSION,$grundconfig,$_SERVER,$_GET,$konto; $this->db = $datenbank; $this->session = $this->db->escape($_SESSION); $this->config = $grundconfig; $this->ip = $_SERVER['REMOTE_ADDR']; $this->get = $this->db->escape($_GET); $this->konto = $konto; $row = $this->db->get_row("SELECT werbeart FROM ". PREFIX . WERBUNG ." WHERE tan = '". $this->db->escape($_GET['tan']) ."' "); $this->SetArt($row[0]); } public function SetArt($art){ $this->art = htmlspecialchars($this->db->escape($art)); } public function Statik(){ $fstats_gesamt = $this->db->get_row( " SELECT COUNT(t2.tan) AS anzahlreload, COUNT(t1.tan) AS ganzahl, SUM(t1.aufendhalt) AS gaufenthalt, SUM(t1.verdienst) AS gverdienst FROM ". PREFIX . WERBUNG ." t1 LEFT JOIN ". PREFIX . RELOAD ." AS t2 ON t2.tan = t1.tan WHERE t1.werbeart = '$this->art' ",true); $fstats_uebrig = $this->db->get_row(" SELECT SUM(t2.aufendhalt) AS reloadaufendhalt, SUM(t2.verdienst) AS reloadverdienst FROM ". PREFIX . WERBUNG ." t2 LEFT JOIN ". PREFIX . RELOAD ." AS t1 ON t1.uid = '". $this->session['uid'] ."' AND t2.tan = t1.tan WHERE t1.bis <= ". time() ." ",true); $aus = " <table class=\"table\"> <tr> <td align='center''>gesamt: ".$fstats_gesamt->ganzahl."</td> <td> </td> <td align='center'>uebrig: ". number_format($fstats_gesamt->ganzahl - $fstats_gesamt->anzahlreload,0,',','.') ."</td> </tr> <tr> <td align='center'>Ø Aufenthalt: ".number_format(($fstats_gesamt->gaufenthalt - $fstats_uebrig->reloadaufendhalt) / $fstats_gesamt->ganzahl,2,",",".")." Sekunden</td> <td> </td> <td align='center''>Ø Vergütung: ".number_format(($fstats_gesamt->gverdienst - $fstats_uebrig->reloadverdienst) / $fstats_gesamt->ganzahl,2,",",".")." ".$this->config->waehrung."</td> </tr> <tr> <td align='center''>Gesamtwert: ". number_format($fstats_gesamt->gverdienst,2,',','.') ." ".$this->config->waehrung."</td> <td> </td> <td align='center'>Offen: ". number_format($fstats_gesamt->gverdienst - $fstats_uebrig->reloadverdienst,2,',','.') ." ".$this->config->waehrung."</td> </tr> </table> <div class='progress'> <div class='progress-bar progress-bar-striped progress-bar-animated' role='progressbar' style='width: ". round(100/$fstats_gesamt->ganzahl * $fstats_gesamt->anzahlreload,2) ."%; color:black; text-align: center;' aria-valuenow='". round(100/$fstats_gesamt->ganzahl * $fstats_gesamt->anzahlreload,2) ."' aria-valuemin='0' aria-valuemax='100'> <span class='justify-content-center d-flex position-absolute w-100'>". round(100/$fstats_gesamt->ganzahl * $fstats_gesamt->anzahlreload,2) ."% bestätigt</span> </div> </div> <hr>"; return $aus; } public function Ausgabe(){ $aus = ''; if($this->db->num_rows("SELECT * FROM ".PREFIX . KONTO ." WHERE uid = '".$this->session['uid']."' AND forced_sperre != '0' ") > 0){ $aus = '<div class="alert alert-danger">Du bist für den Klickbereich gesperrt</div>'; }else{ if($this->art == 'forcedbanner'){ $aus = $this->ForcedBannerAusgabe();} if($this->art == 'paidmail'){ $aus = $this->PaidMailAusgabe();} } return $aus; } private function Query(){ $usr = $this->db->get_row('SELECT max_forced FROM ' . PREFIX. USER . ' WHERE uid = ' . $this->session['uid'] . ' LIMIT 1',true); return $this->db->get_results (' SELECT t1.* FROM ' . PREFIX . WERBUNG . ' t1 LEFT JOIN ' . PREFIX . FBBLACK . ' AS t3 ON t3.kid = t1.kid AND t3.werbeart=t1.werbeart LEFT JOIN ' . PREFIX . RELOAD . ' t2 ON (t1.tan = t2.tan AND (t2.uid = ' . $this->session['uid'] . ' OR t2.ip = "' . $this->ip . '") AND t2.bis >= ' . time() . ' AND t2.bis != 0) WHERE (t3.kid IS NULL OR LOCATE(t3.sponsor, t1.ziel) = 0) AND t2.tan IS NULL AND t1.werbeart = "'. $this->art .'" AND t1.menge > 0 AND t1.status = 1 AND t1.verdienst > 0 AND t1.sponsor != ' . $this->session['uid'] . ' ORDER BY t1.verdienst DESC LIMIT ' . $usr->max_forced ); } private function PaidMailAusgabe(){ $aus = ''; $result = $this->Query(); foreach($result AS $res) { $res->tan2 = str_replace("=","",$res->tan); $aus .= ' <div class="card text-center" id="mail_'.$res->tan2.'"> <div class="card-header"> '. $res->betreff .' </div> <div class="card-body"> <p class="card-text">'. nl2br($res->text) .'</p> <a href="pclick.php?tan=' . $res->tan . '&uid=' . $this->session['uid'] . '" target="_blank" onclick="$( \'#mail_'.$res->tan2.'\' ).hide( \'slow\' );" class="btn btn-success">Klick</a> </div> <div class="card-footer text-muted"> Aufendhalt: '. $res->aufendhalt .' sek || Verdienst: '. number_format($res->verdienst,2,',','.') .' '. $this->config->waehrung .' || Reload: '. number_format($res->reload / 60,2,',','.') .' min | '. $this->Melden($res->tan) .' </div> </div> '; } if (count((array)$result) > 0){ $aus .= '<br><div align="center"><input type="button" name="mehr_banner" class="btn btn-info" value="Weitere laden " onclick="javascript:location.reload();" /></div>'; }else{ $aus .= '<div class="alert alert-warning text-center">Alles bereits im Reload !</div>'; } return $aus; } private function ForcedBannerAusgabe(){ $aus = ''; $result = $this->Query(); foreach($result AS $res) { $res->tan2 = str_replace("=","",$res->tan); $aus .= ' <div align="center" id="banner_' . $res->tan2 . '"> <a href="top_forcedbanner.php?tan=' . $res->tan . '" target="_blank"> <img src="' . $res->banner . '" border="0" height="60" width="468" alt="' . $res->tan2 . '" onClick="document.getElementById(\'banner_' . $res->tan2 . '\').style.display=\'none\';"> </a>' . '<br> Reload: ' . number_format($res->reload / 60,2,',','.') . ' Std. | Verdienst: ' . number_format($res->verdienst, 2, ',', '.') . ' | Aufenthalt: ' . $res->aufendhalt . ' Sekunden | '. $this->Melden($res->tan) .'<br><br> </div> '; } if (count((array)$result) > 0){ $aus .= '<div align="center"><input type="button" name="mehr_banner" class="btn btn-info" value="Weitere Banner !" onclick="javascript:location.reload();" /></div>'; }else{ $aus .= '<div class="alert alert-warning text-center">Alle Banner im Reload !</div>'; } return $aus; } private function Melden($tan){ if($this->db->num_rows("SELECT id FROM ". PREFIX . BLACKLIST ." WHERE uid = '". $this->session['uid'] ."' AND tan = '$tan' ") == 0){ return '<a href="?page=/verdienen/forcedbanner&melden='. $tan .'"> Banner melden </a>'; }else{ return 'Banner bereits gemeldet'; } } public function SetTan($tan){ $this->tan = htmlspecialchars($this->db->escape($tan)); } private function Login(){ if ($this->session['login'] != true || $this->session['uid'] <= 0) die('Bitte einloggen!'); } public function Abfrage(){ $this->Login(); $abfrage = $this->db->get_row("SELECT aufendhalt FROM ". PREFIX . WERBUNG ." WHERE tan = '$this->tan' ",true); $reload = $this->db->num_rows("SELECT * FROM ". PREFIX . RELOAD ." WHERE tan = '$this->tan' AND bis > '". time() ."' AND (uid = '". $this->session['uid'] ."' OR ip = '$this->ip' ) "); return array("wartezeit" => $abfrage->aufendhalt, "reload" => $reload); } private function ReloadCheck(){ return $this->db->num_rows("SELECT uid FROM ". PREFIX . RELOAD ." WHERE tan = '$this->tan' AND (uid = '". $this->session['uid'] ."' OR ip = '$this->ip') "); } public function ReloadPruefen(){ global $_SESSION; $aus = array("forced_error" => 'false'); if ($this->ReloadCheck() == 0) { $forced = $this->db->get_row("SELECT * FROM ". PREFIX . WERBUNG ." WHERE tan = '$this->tan' ",true); $aus['wartezeit'] = $forced->aufendhalt; $aus['headmsg'] = 'Vergütung in ' . $forced->aufendhalt . ' Sek.!'; $aus['tan'] = $forced->tan; if ($this->get['auszahlen'] != 'true') { $aus['puk'] = md5($this->session['uid'] . $forced->aufendhalt . date("d.m.Y", time()) ); $_SESSION['earlies_payout' . $this->get['tan']] = time() + $forced->aufendhalt - 1; } } else { $aus['headmsg'] = 'Reloadsperre aktiv!'; $aus['force_error'] = 'true'; } return $aus; } public function ReloadZahlung($Abfrage){ $aus = array(); $aus['wartezeit'] = 0; if(!isset($Abfrage['force_error'])){ $Abfrage['force_error'] = true;} $bilanz = Classloader('bilanz'); $reload = $this->db->num_rows("SELECT * FROM ". PREFIX . RELOAD ." WHERE tan = '$this->tan' AND bis > '". time() ."' AND (uid = '". $this->session['uid'] ."' OR ip = '$this->ip' ) "); $forced = $this->db->get_row("SELECT * FROM ". PREFIX . WERBUNG ." WHERE tan = '$this->tan' ",true); if(!isset($this->get['force_error']) || $this->get['force_error'] != 'true'){ $ferror = 'false';}else{ $ferror = 'true';} if ($this->get['auszahlen'] == 'true' && $reload == 0 && $ferror != 'true' && $this->get['puk'] == md5($this->session['uid'] . $forced->aufendhalt . date("d.m.Y", time()) ) && time() >= $this->session['earlies_payout' . $this->get['tan']]) { $this->db->query("UPDATE ". PREFIX . KONTO ." SET klicks = klicks + 1, kv = kv + $forced->verdienst, fc_klicks = fc_klicks + 1 WHERE uid = '". $this->session['uid'] ."' "); $this->konto->set_var($this->session['uid'],$forced->verdienst,'+',$this->art.'verdienst'); refumsatz ($forced->verdienst, $this->session['uid']); rallysystem ($this->session['uid'], 1, $forced->verdienst); $bilanz->bilanz($forced->preis, $forced->verdienst,'Werbebereich',$this->art); $new_reload = time() + $forced->reload * 60; $this->db->insert(PREFIX . RELOAD, array("ip" => $this->ip,"uid" => $this->session['uid'],"tan" => $forced->tan,"bis" => $new_reload)); $this->db->update(PREFIX . WERBUNG,array("menge" => "menge-1"), array("tan" => $this->get['tan']),1,false); $_SESSION['earlies_payout' . $_GET['tan']] = ''; $aus['headmsg'] = $forced->verdienst . ' ' . $this->config->waehrung . ' erhalten!'; } elseif ($this->get['auszahlen'] == 'true' && time() < $this->session['earlies_payout' . $this->get['tan']]) { $aus['headmsg'] = 'Wartezeit umgangen.'; } elseif ($this->get['auszahlen'] == 'true' && $Abfrage['force_error'] != 'true') { $aus['headmsg'] = 'Pin abgelaufen'; } elseif ($reload != 0){ $aus['headmsg'] = 'Banner noch im Reload'; } return $aus; } public function BannerMelden($tan){ if($this->db->num_rows("SELECT id FROM ". PREFIX . BLACKLIST ." WHERE uid = '". $this->session['uid'] ."' AND tan = '$tan' ") == 0){ $tan = $this->db->escape(htmlspecialchars($tan)); $array = array( "uid" => $this->session['uid'], "datum" => time(), "tan" => $tan ); if($this->db->insert(PREFIX . BLACKLIST, $array) == true){ meldung(0,BANNER_MELDEN_TRUE); }else{ meldung(1,BANNER_MELDEN_FALSE); } } } } ?>