Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found

Target

Select target project
  • isaack/VMS-SUEE_2.0
  • ztk.me/VMS-z
2 results
Show changes
Showing
with 1503 additions and 460 deletions
<?php
class rally{
private $db;
private $session = array();
private $get = array();
private $grund;
function __construct(){
global $datenbank,$_SESSION,$_GET,$grundconfig;
$this->db = $datenbank;
$this->session = $this->db->escape($_SESSION);
$this->get = $this->db->escape($_GET);
$this->grund = $grundconfig;
}
public function RallyDaten($rally){
$rally = $this->db->escape($rally);
$ret = $this->db->get_row("SELECT * FROM ". PREFIX . RALLY ." WHERE name = '$rally' ",true);
return $ret;
}
public function Info($row){
$aus = '';
$gesperrt = explode(',', $row->sperruser);
if (in_array($_SESSION['uid'], $gesperrt)) {
$aus .= '<br><b><font size="+1" color="#9F0101">!!Gesperrt!!<br>Sie wurden vom Admin von dieser Rally ausgeschlossen.</font></b><br><br>';
}else{
$aus .= $this->SelfStatus($row);
$aus .= '<hr><div class="card"><div class="card-body">';
$aus .= $this->RallyEnde($row);
$aus .= '<hr>';
$aus .= $this->RallyGewinnart($row);
$aus .= '<hr>';
$aus .= $this->RallyAktuell($row);
$aus .= '</div>';
}
return $aus;
}
private function RallyAktuell($row){
$rp = 1;
$aus = '
<table class="table table-striped">
<tr>
<th width="30"><b>Rang</b></th>
<th><b>User</b></th>
<th width="100"><b>' . $row->einheit . '</b></th>
<th width="180"><b>möglicher Gewinn</b></th>
<th width="110"><b>Mindestpunktzahl</b></th>
</tr>
';
$gesperrt = explode(";",$row->sperruser);
foreach($this->db->get_results("SELECT uid,punkte FROM ". PREFIX . RALLYU ." WHERE rally = '$row->id' AND ausgezahlt = '0' ORDER BY punkte DESC") AS $res){
if(!in_array($res->uid,$gesperrt) && $row->gewinner_anzahl >= $rp){
$pl = 'p'.$rp;
$user = userinfo($res->uid);
if($res->punkte < $row->mindestpunktzhl){ $classtd = 'table-warning'; $mg = 'nicht erreicht';}
if($res->punkte >= $row->mindestpunktzhl){ $classtd = 'table-success'; $mg = 'erreicht';}
$aus .= '
<tr class="'. $classtd .'">
<td>'. $rp .'</td>
<td>'. $user->nickname .'</td>
<td>'. $res->punkte .'</td>
<td>'. number_format(($row->gewinn_topf / 100 * $row->$pl), 2, ',', '.') .' '. $this->grund->waehrung .'</td>
<td>'. $mg .'</td>
</tr>
';
$rp++;
}
}
for($x = $rp;$x < $row->gewinner_anzahl + 1;$x++) {
$pl = 'p'.$rp;
$mg = number_format(($row->gewinn_topf / 100 * $row->$pl), 2, ',', '.') . ' ' . $this->grund->waehrung;
$aus .= '
<tr class="table-info">
<td>'. $rp++ .'&nbsp;</td>
<td>&nbsp;n/a</td>
<td>0&nbsp;</td>
<td>'. $mg .'&nbsp;</td>
<td><strong>Wartend</strong></td>
</tr>
';
}
$aus .= '</table>';
return $aus;
}
private function RallyGewinnart($row){
if ($row->gewinn_art == 'dynamisch') {
$aus = 'Es handelt sich bei der ' . $row->name . '-Rally um eine Dynamische Rally. <br>
Dies bedeutet der Gewinn pro Rang steigt mit der Aktivit&auml;t der User in der Rally. <br>
Der Gewinn-Topf ist nach oben nicht begrenzt und beträgt aktuell ' . number_format($row->gewinn_topf,2,',','.') . ' ' . $this->grund->waehrung . '. <br> ';
} else {
$aus = 'Es handelt sich bei der ' . $row->name . '-Rally um eine Statische Rally. <br>
Die gesammte Gewinnsumme bel&auml;uft sich auf ' . number_format($row->gewinn_topf,2,',','.') . ' ' . $this->grund->waehrung . '. <br>';
}
$aus .= '<hr>';
if ($row->mindestpunktzhl > '0') {
$aus .= '<br>Sie müssen mindestens ' . $row->mindestpunktzhl . ' ' . $row->ende_formulierung . ' haben um in der Rally gewertet zu werden<br><br>';
}
return $aus;
}
private function RallyEnde($row){
if ($row->ende_art == 'punkt') {
$aus = 'Diese ' . $row->name . '-Rally endet soball alle gemeinsam ' . $row->ende_punkte . ' ' . $row->ende_formulierung . ' haben.<br> ';
} elseif ($row->ende_vortschritt == 'datum') {
$aus = 'Diese ' . $row->name . '-Rally endet am ' . date('j F Y G:i', strtotime($row->ende_date.'T'.$row->ende_time)) . '<br>';
} else {
$aus = 'Diese Rally hat kein Ende. Sie wird immer wieder in bestimmten Abständen (' . $row->ende_vortschritt . ') neu gestartet.<br>';
}
return $aus;
}
private function SelfStatus($row){
$aus = '';
if ($this->session['login'] == true) {
if($this->db->num_rows("SELECT uid FROM ". PREFIX. RALLYU ." WHERE uid = '". $this->session['uid'] ."' AND rally = '$row->id' ") == 1){
$rallystand = $this->db->get_row("SELECT punkte FROM ". PREFIX . RALLYU ." WHERE uid=" . $this->session['uid'] . " and rally = '$row->id' LIMIT 1",true);
$aus = '<div class="alert alert-info">Du hast in der ' . $row->name . '-Rally bereits ' . number_format($rallystand->punkte, 0, ",", ".") . ' ' . nl2br($row->ende_formulierung) . '.</div>';
}else{
$aus = '<div class="alert alert-warning">Du hast in dieser Rally noch keine Punkte erziehlt.</div>';
}
}
return $aus;
}
public function ProgressBar($row,$start,$ende){
if ($row->status != 'aktive') {
$swf_prozent = 0;
$swf_status = "Rally aktuell Inaktive.";
} else if (time() < $start) {
$swf_prozent = 0;
$swf_status = "Noch nicht gestartet.";
} elseif (($row->ende_art == 'zeit' && $ende <= time()) OR ($row->ende_art == 'punkt' && $row->ende_punkte <= $row->ende_punkte_aktuell)) {
$swf_prozent = 100;
$swf_status = "Erfolgreich Beendet.";
} else {
if ($row->ende_art == 'zeit') {
if ($row->ende_vortschritt == 'datum') {
$swf_prozent = number_format((time() - $start) / ($ende - $start) * 100, 0, ',', '\'');
$swf_status = sectodays(strtotime($row->ende_date.' '.$row->ende_time) - time());
} elseif ($row->ende_vortschritt == 'Jeden Tag') {
$tag = mktime(0, 0, 0, date('m'), date('d'), date('Y'));
$ende = $tag + (24 * 60 * 60);
$swf_prozent = number_format((time() - $tag) / ($ende - $tag) * 100, 0, ',', '\'');
$swf_status = sectodays($ende - time());
} elseif ($row->ende_vortschritt == 'Jede Woche') {
if (date('w') == 0) $wochentag = 7;
if (date('w') != 0) $wochentag = date('w');
$tag = mktime(0, 0, 0, date('m'), (date('d') - $wochentag + 1), date('Y'));
$ende = $tag + (7 * 24 * 60 * 60);
$swf_prozent = number_format((time() - $tag) / ($ende - $tag) * 100, 0, ',', '\'');
$swf_status = sectodays($ende - time());
} elseif ($row->ende_vortschritt == 'Jeden Monat') {
$tag = mktime(0, 0, 0, date('m'), 1, date('Y'));
$ende = mktime(23, 59, 59, (date('m') + 1), 0, date('Y'));
$swf_prozent = number_format((time() - $tag) / ($ende - $tag) * 100, 0, ',', '\'');
$swf_status = sectodays($ende - time());
} elseif ($row->ende_vortschritt == 'Jedes Jahr') {
$wochentag = 365 - date('z');
$tag = mktime(0, 0, 0, 1, 1, date('Y'));
$ende = $tag + (365 * 24 * 60 * 60);
$swf_prozent = number_format((time() - $tag) / ($ende - $tag) * 100, 0, ',', '\'');
$swf_status = sectodays($ende - time());
}
} else {
$swf_prozent = number_format(100 / $row->ende_punkte * $row->ende_punkte_aktuell, 2, ',', '\'');
$swf_status = 'Es sind noch ' . ($row->ende_punkte - $row->ende_punkte_aktuell) . ' ' . $row->einheit . ' bis zum Ende';
}
}
return '<div class="progress-bar progress-bar-striped progress-bar-animated" role="progressbar" aria-valuenow="'. $swf_prozent .'" aria-valuemin="0" aria-valuemax="100" style="width: '. $swf_prozent .'%; color:black;">'. $swf_status .'</div>';
}
}
<?php
class ref{
private $db;
private $config;
private $verdienst = 0;
private $konto;
private $verg = array();
private $post = array();
private $session;
function __construct(){
global $datenbank,$k_buchung,$_SESSION;
$this->session = $_SESSION;
$this->db = $datenbank;
$this->config = $this->db->get_row("SELECT * FROM ". PREFIX . CONFIG ." ",true);
$this->konto = $k_buchung;
$explode = explode(";",$this->config->RefVerg);
for($i = 1; $i <= $this->config->RefEbenen; $i++){
$this->verg[$i] = $explode[$i-1];
}
}
public function UserListe(){
foreach($this->db->get_results("SELECT * FROM ". PREFIX . WERBER ." WHERE werber != '0' ") AS $res){
$this->Ebenverguetung($res->uid,$res->werber,1,$res);
}
}
private function Ebenverguetung($uid,$werber,$ebene,$ressourcen){
//Bezahlung von Werber in Grundstufe
$user = userinfo($uid);
$verguetung = $ressourcen->umsatz /100 * $this->verg[$ebene];
if($verguetung > 0){ $this->konto->set_var($werber,$verguetung,'+','Refzahlung ('. $user->nickname .')');}
$refback = $verguetung / 100 * $ressourcen->refback;
if($ressourcen->refback > 0 && $refback > 0){
$this->konto->set_var($werber,$refback,'-','Refback ('. $user->nickname .'->'. $ressourcen->refback.'%)');
$this->konto->set_var($uid,$refback,'+','Refback ('. $ressourcen->refback.'%)');
}
if($ebene == 1){
$this->db->update(PREFIX . WERBER, array("umsatz" => 0, "gesamt" => $ressourcen->gesamt + $ressourcen->umsatz), array("uid" => $uid),1);
}
$query = "SELECT * FROM ". PREFIX . WERBER ." WHERE werber = '$uid' ";
if($this->db->num_rows($query) != 0){
foreach($this->db->get_results($query) AS $res){
$this->Ebenverguetung($res->uid,$werber,$ebene++,$res);
}
}
}
private function RefAnzahl($uid){
$anz = $this->db->num_rows("SELECT uid FROM ". PREFIX . WERBER ." WHERE werber = '$uid'");
if($anz == 0){
return 0;
}else{
return $anz.'&nbsp;&nbsp;<a class="btn btn-primary btn-sm" data-toggle="collapse" href="#refs_'.$uid.'" role="button" aria-expanded="false" aria-controls="collapseExample">Anzeigen</a>';
}
}
private function RefRefListe($uid,$ebene){
if($ebene <= $this->config->RefEbenen){
$aus = '<ul class="list-group">';
foreach($this->db->get_results("SELECT * FROM ". PREFIX . WERBER ." WHERE werber = '$uid' ") AS $res){
$user = userinfo($res->uid);
$refs = $this->RefAnzahl($res->uid);
$aus .= '<li class="list-group-item">';
$aus .= '
<div class="row">
<div class="col">&nbsp;'.$user->nickname.'('.$res->uid.')</div>
<div class="col">Umsatz: '. number_format($res->umsatz,2,',','.') .' '. $this->config->waehrung .'</div>
<div class="col">Refs: '. $refs .'</div>
</div>
';
if($refs != 0){
$aus .= '
<div class="collapse" id="refs_'. $res->uid .'">
<div class="card card-body">
'. $this->RefRefListe($res->uid,$ebene+1) .'
</div>
</div>
';
}
}
$aus .= '</ul>';
return $aus;
}
return $aus;
}
public function RefListe($uid){
$aus = '<ul class="list-group">';
foreach($this->db->get_results("SELECT * FROM ". PREFIX . WERBER ." WHERE werber = '$uid' ") AS $res){
$user = userinfo($res->uid);
$refs = $this->RefAnzahl($res->uid);
$aus .= '<li class="list-group-item">';
$aus .= '<div class="row">
<div class="col">&nbsp;'.$user->nickname.'('.$res->uid.')</div>
<div class="col">
<form method="post" action="">
<input type="hidden" name="uid" value="'. $res->uid .'">
<div class="input-group">
<input type="text" class="form-control" name="refback" value="'. $res->refback.'">
<div class="input-group-append">
<span class="input-group-text">%</span>
<input type="submit" name="run[refback_save]" value="Save" class="btn btn-success btn-sm">
</div>
</div>
</form>
</div>
<div class="col">Umsatz: '. number_format($res->umsatz,2,',','.') .' '. $this->config->waehrung .'</div>
<div class="col">Refs: '. $refs .'</div>
</div>';
if($refs != 0){
$aus .= '
<div class="collapse" id="refs_'. $res->uid .'">
<div class="card card-body">
'. $this->RefRefListe($res->uid,1) .'
</div>
</div>
';
}
$aus .= '</li>';
}
$aus .= '</ul>';
return $aus;
}
private function make_array($post){
foreach($post AS $key => $value){
if($key != '' && $key != 'run'){
$this->post[$key] = $this->db->escape($value);
}
}
}
public function RefBackSave($post){
$this->make_array($post);
if($this->post['refback'] > 100){ $this->error = 1; $this->meldung = REFBACK_ERROR_ZU_VIEL;}
if($this->post['refback'] < 0){ $this->error = 1; $this->meldung = REFBACK_ERROR_ZU_WENIG;}
if($this->db->num_rows("SELECT uid FROM ". PREFIX . WERBER ." WHERE uid = '". $this->post['uid'] ."' AND werber = '". $this->session['uid'] ."' ") == 1){
if($this->db->update(PREFIX . WERBER, array("refback" => $this->post['refback']), array("uid" => $this->post['uid'])) == true){
meldung(0,REFBACK_SAVE_TRUE);
}else{
meldung(1,REFBACK_SAVE_FALSE);
}
}else{
meldung(1,REFBACK_ERROR_USER_FALSE);
}
}
}
<?php
class SESSION{
public function status($status){
$status_ret = true;
if ($status == 0) {
$_SESSION['uid'] = "";
$_SESSION['passwort'] = "";
$_SESSION['login'] = "";
$_GET['content'] = '/error/kein_zutritt';
$status_ret = false;
}
if ($status == 2) {
$_SESSION['uid'] = "";
$_SESSION['passwort'] = "";
$_SESSION['login'] = "";
$_GET['content'] = '/error/user_gesperrt';
$status_ret = false;
}
return $status_ret;
}
function login($nickname,$passwort){
global $datenbank,$grundconfig,$meldung,$ip;
$pw = pw_erstellen($passwort);
$query = "
SELECT
k.admin,
k.uid,
k.passwort,
k.status,
k.hinweis,
u.nickname
FROM
" . PREFIX . USER . " u
LEFT JOIN
" . PREFIX . KONTO . " k
ON
k.uid = u.uid
WHERE
u.nickname = '" . $datenbank->escape($nickname) . "'
OR
u.uid = '". $datenbank->escape($nickname) ."'
AND
k.passwort='" . $pw . "' LIMIT 1
";
$login_check = $datenbank->num_rows($query);
if ($login_check == 1) {
$user_check = $datenbank->get_row($query,true);
$status_login = $this->status($user_check->status);
if ($status_login == true) {
$user = $datenbank->get_row($query,true);
$update = array(
"login_ip" => $ip,
"loginzeit" => time()
);
$where = array("uid" => $user->uid, "passwort" => $pw);
$datenbank->update(PREFIX . KONTO ,$update, $where);
if ($_POST['autologin'] == 'on') {
setCookie('uid', $user->uid, time() + 86400 * 30);
setCookie('passwort', $user->passwort, time() + 86400 * 30);
setCookie('autologin', 'true', time() + 86400 * 30);
}else{
$_SESSION['uid'] = $user->uid;
$_SESSION['admin'] = $user->admin;
$_SESSION['passwort'] = $user->passwort;
$_SESSION['login'] = true;
$_SESSION['lang'] = 'de';
$meldung = LOGIN_SESSION_TRUE;
}
header ("location: " . $grundconfig->domain);
}
} else {
meldung(1,LOGIN_ERROR_PASS_FALSE);
}
}
function wartung(){
global $grundconfig,$_SESSION;
if ($grundconfig->wartung == 1 && $_SESSION['uid'] != $admin_id) {
setCookie('uid', '', time() - 86400 * 30);
setCookie('passwort', '', time() - 86400 * 30);
setCookie('autologin', '', time() - 86400 * 30);
$_SESSION['uid'] = "";
$_SESSION['passwort'] = "";
$_SESSION['admin'] = "";
$_SESSION['login'] = false;
header ("location: " . $domain . "/wartung.php");
die();
}
}
function autologin(){
global $datenbank,$_SESSION,$ip;
if ($_SESSION['login'] != true && isset($_COOKIE['autologin']) && isset($_COOKIE['uid']) && isset($_COOKIE['passwort'])) {
$_COOKIE['uid'] = (int)$_COOKIE['uid'];
$_COOKIE['passwort'] = addslashes ($_COOKIE['passwort']);
$query = "SELECT `uid`,`passwort`,`status`,`hinweis`,`admin` FROM " . PREFIX . KONTO . " WHERE uid=" . $_COOKIE['uid'] . " and passwort='" . $_COOKIE['passwort'] . "' LIMIT 1";
$login_check = $datenbank->num_rows($query);
if ($login_check == 1) {
$login_check = $datenbank->get_row($query,true);
if ($login_check->status == 1) {
$datenbank->update(PREFIX . KONTO ,array("login_ip" => $ip,"loginzeit" => time() ), array("uid" => $_COOKIE['uid'],"passwort" => $_COOKIE['passwort']),1);
$_SESSION['uid'] = $login_check->uid;
$_SESSION['passwort'] = $login_check->passwort;
$_SESSION['admin'] = $login_check->admin;
$_SESSION['login'] = true;
$_SESSION['lang'] = 'de';
}
}
}
}
function logout(){
global $grundconfig;
setCookie('uid', '', time() - 86400 * 30);
setCookie('passwort', '', time() - 86400 * 30);
setCookie('autologin', '', time() - 86400 * 30);
$_SESSION['uid'] = "";
$_SESSION['passwort'] = "";
$_SESSION['admin'] = "";
$_SESSION['login'] = false;
header ("location: " . $grundconfig->domain);
die();
}
/**
* userstatus()
*
* @author designerscripte.net
* @category system
* @version 2.5.0
* @example userstatus();
* @return Leitet bei keinem zugriff auf die entsprechenden fehlerseiten weiter
*/
function userstatus () {
global $_SESSION,$datenbank,$grundconfig;
if ($_SESSION['login'] == 'true') {
$query = "SELECT `uid`,`passwort`,`status`,`hinweis` FROM " . PREFIX . KONTO . " WHERE uid=" . $datenbank->escape($_SESSION['uid']) . " and passwort='" . $datenbank->escape($_SESSION['passwort']) . "' LIMIT 1";
$login_check = $datenbank->get_row($query,true);
// nicht aktiviert oder nicht angemeldet!
if (!$datenbank->num_rows($query) OR $login_check->status == 0) {
setCookie('uid', '', time() - 86400 * 30);
setCookie('passwort', '', time() - 86400 * 30);
setCookie('autologin', '', time() - 86400 * 30);
$_SESSION['uid'] = "";
$_SESSION['passwort'] = "";
$_SESSION['login'] = false;
header ("location: " . $grundconfig->domain . "/?page=/error/kein_zutritt");
die();
}
// gesperrt
if ($login_check->status == 2) {
setCookie('uid', '', time() - 86400 * 30);
setCookie('passwort', '', time() - 86400 * 30);
setCookie('autologin', '', time() - 86400 * 30);
$_SESSION['uid'] = "";
$_SESSION['passwort'] = "";
$_SESSION['login'] = false;
header ("location: " . $grundconfig->domain . "/?page=/error/user_gesperrt");
}
}else {
header ("location: " . $grundconfig->domain . "/?page=/error/kein_zutritt");
}
}
}
<?php
class start{
private $db;
private $session = array();
private $grund;
private $error = 0;
private $meldung = '';
private $konto;
private $reload = 0;
private $ip;
public function __construct(){
global $datenbank,$_SESSION,$grundconfig;
$this->db = $datenbank;
$this->session = $this->db->escape($_SESSION);
$this->grund = $grundconfig;
$this->ip = $_SERVER['REMOTE_ADDR'];
$this->konto = Classloader('kontobuchung');
}
public function StartAbruf(){
$this->ReloadCheck();
if($this->error == 0){
$new_reload = $this->grund->reload_start + time();
$this->db->insert(PREFIX . RELOAD, array("ip" => $this->ip,"uid" => $this->db->escape($this->session['uid']),"tan" => 'startseitenaufruf',"bis" => $new_reload));
$this->StatistikUpgrade();
$this->konto->set_var($this->session['uid'],$this->grund->verdienst_start,'+','System Startseitenverg&uuml;tung');
$this->StartLog();
$this->meldung = '<b>Du hast gerade '.number_format($this->grund->verdienst_start,2,',','.').' für diesen Aufruf erhalten!</b>';
}
$aus = array("error" => $this->error, "meldung" => $this->meldung);
return $aus;
}
private function StartLog(){
$array = array(
"uid" => $this->session['uid'],
"datum" => time(),
"betrag" => $this->grund->verdienst_start
);
$this->db->insert(PREFIX . START_LOG, $array);
}
private function StatistikUpgrade(){
$row = $this->db->get_row("SELECT s_verdienst,s_aufrufe FROM ". PREFIX . KONTO ." WHERE uid = '". $this->session['uid'] ."' ",true);
$s_aufruf = $row->s_aufrufe + 1;
$s_verdienst = $row->s_verdienst + $this->grund->verdienst_start;
$this->db->update(PREFIX . KONTO, array("s_aufrufe" => $s_aufruf, "s_verdienst" => $s_verdienst ),array("uid" => $this->session['uid']) );
}
private function ReloadCheck(){
if($this->db->num_rows("SELECT * FROM ". PREFIX . RELOAD ." WHERE uid = '".$this->session['uid']."' and tan = 'startseitenaufruf' and bis >= '".time()."'") != 0){
$this->error = 1;
$this->meldung .= ERROR_RELOAD_START_AKTIV;
}
}
}
<?php
class texte{
private $db;
public function __construct(){
global $datenbank;
$this->db = $datenbank;
}
public function AWerbung($werbung){
$row = $this->db->get_row("SELECT text FROM ". PREFIX . TEXTE ." WHERE name = 'awerbung' ");
$row = json_decode($row[0]);
return $row->$werbung;
}
}
<?php
class userprofil {
private $db;
private $uid;
private $delete_true = false;
private $array = array();
private $error = 0;
private $meldung;
private $session = array();
public function __construct() {
global $datenbank,$_SESSION;
$this->db = $datenbank;
$this->session = $this->db->escape($_SESSION);
}
public function set_uid($uid){
if(!is_numeric($uid)){ $this->uid = 0;}else{ $this->uid = $this->db->escape($uid);}
}
public function get_daten(){
$aus = $this->db->get_row("
SELECT u.*, e.*, k.*, n.* FROM ". PREFIX . USER . " AS u LEFT JOIN ". PREFIX . EMAIL . " AS e ON e.uid = u.uid LEFT JOIN ". PREFIX . KONTO ." AS k ON k.uid = u.uid LEFT JOIN ". PREFIX . NICKP ." AS n ON n.uid = u.uid WHERE u.uid = '" . $this->uid . "' ",true);
return $aus;
}
public function delete_account($pw){
$this->pass_pruef($pw);
if($this->delete_true == true){
$this->db->delete(PREFIX . KONTO , array("uid" => $this->uid),1);
$this->db->delete(PREFIX . EMAIL, array("uid" => $this->uid),1);
$this->db->delete(PREFIX . USER , array("uid" => $this->uid),1);
$this->db->delete(PREFIX . WERBER , array("uid" => $this->uid),1);
$this->db->update(PREFIX . WERBER, array("werber" => 0), array("werber" => $this->uid));
$this->db->delete(PREFIX . BUCH , array("uid" => $this->uid),1);
$this->db->delete(PREFIX . RELOAD , array("uid" => $this->uid),1);
$this->db->delete(PREFIX . S_ANF , array("uid" => $this->uid),1);
header('Location: '. $_SERVER['HTTP_HOST']);
}else{
$this->error = 1;
$this->meldung = PASS_FALSE;
}
meldung($this->error,$this->meldung);
}
protected function pass_pruef($pw){
if($this->db->num_rows("SELECT id FROM ". PREFIX . KONTO ." WHERE uid = '$this->uid' AND passwort = '". pw_erstellen($pw) ."' ") == 1){
$this->delete_true = true;
}
}
public function user_daten_save($post){
$this->make_array($post);
if ($this->array['newsletter'] == 0 and $this->array['paidmails'] == 0) $mailstatus = 0;
if ($this->array['newsletter'] == 1 and $this->array['paidmails'] == 0) $mailstatus = 1;
if ($this->array['newsletter'] == 0 and $this->array['paidmails'] == 1) $mailstatus = 2;
if ($this->array['newsletter'] == 1 and $this->array['paidmails'] == 1) $mailstatus = 3;
$array = array(
"freigabe_fuer" => $mailstatus,
"emailadresse" => $this->array['emailadresse']
);
$array_user = array(
"vorname" => $this->array['vorname'],
"nachname" => $this->array['nachname'],
"max_forced" => $this->array['max_forced'],
"max_paidlinks" => $this->array['max_paidlinks']
);
$update_mail = $this->db->update(PREFIX . EMAIL , $array, array("uid" => $this->uid), 1);
if($update_mail == true){ $this->meldung .= MAILEMPFANG_TRUE;}else{$this->error = 1; $this->meldung .= MAILEMPFANG_FALSE;}
$update_user = $this->db->update(PREFIX . USER , $array_user, array("uid" => $this->uid), 1);
if($update_user == true){ $this->meldung .= BANNER_TRUE;}else{ $this->error = 1; $this->meldung .= BANNER_FALSE;}
meldung($this->error,$this->meldung);
}
public function pw_erneuern($post){
$this->make_array($post);
if(empty($this->array['pwd']) OR empty($this->array['pwd2'])){ $this->error = 1; $this->meldung .= ANMELDEN_PASS1_FALSE;}
if($this->array['pwd'] != $this->array['pwd2']){ $this->error = 1; $this->meldung .= ANMELDEN_PASS_KONTROLLE;}
if($this->error == 0){
$update = $this->db->update(PREFIX . KONTO , array("passwort" => pw_erstellen($this->array['pwd'])), array("uid" => $this->uid) , 1);
if($update == true){
$this->meldung .= UPDATE_PASS_TRUE;
}else{
$this->error = 1;
$this->meldung .= UPDATE_PASS_FALSE;
}
}
meldung($this->error,$this->meldung);
}
private function make_array($post){
foreach($post AS $key => $value){
$array[$key] = $this->db->escape($value);
}
$this->array = $array;
}
public function Profilbild($file){
$extension = strtolower(pathinfo($file['file']['name'], PATHINFO_EXTENSION));
if($file['file']['size'] > 500*1024) { $this->error = 1; $this->meldung .= FILE_UPLOAD_BIG;}
if(function_exists('exif_imagetype')) { //Die exif_imagetype-Funktion erfordert die exif-Erweiterung auf dem Server
$allowed_types = array(IMAGETYPE_PNG, IMAGETYPE_JPEG, IMAGETYPE_GIF);
$detected_type = exif_imagetype($file['file']['tmp_name']);
if(!in_array($detected_type, $allowed_types)) { $this->error = 1; $this->meldung = FILE_UPLOAD_FORMAT; }
}
$allowed_extensions = array('png', 'jpg', 'jpeg', 'gif');
if(!in_array($extension, $allowed_extensions)) { $this->error = 1; $this->meldung .= FILE_UPLOAD_ENDUNG; }
if($this->error == 0){
if(!file_exists($_SERVER['DOCUMENT_ROOT']."images/userava")){ mkdir($_SERVER['DOCUMENT_ROOT']."images/userava", 0755);}
$folder = $_SERVER['DOCUMENT_ROOT'].'images/userava/';
$new_path = $folder.$this->session['uid'].'.'.$extension;
if(file_exists($new_path)){ unlink($new_path);}
if(move_uploaded_file($file['file']['tmp_name'], $new_path) == true){
$this->db->update(PREFIX . USER, array("ava" => $this->session['uid'].'.'.$extension), array("uid" => $this->session['uid']));
$this->meldung = FILE_UPLOAD_SAVE_TRUE;
}else{
$this->error = 1;
$this->meldung = FILE_UPLOAD_SAVE_FALSE;
}
}
meldung($this->error,$this->meldung);
}
public function NickpageSave($post){
$this->make_array($post['nick']);
if($this->db->update(PREFIX . NICKP, $this->array, array("uid" => $this->session['uid'])) == true && $this->db->update(PREFIX . USER, array("bdate" => strtotime($post['bdate'].'T 00:00:00')), array("uid" => $this->session['uid'])) == true){
meldung(0,NICKPAGE_SAVE_TRUE);
}else{
meldung(1,NICKPAGE_SAVE_FALSE);
}
}
}
?>
<?php
class Verdienen{
private $db;
private $session = array();
private $art;
private $config;
private $ip;
private $tan;
private $get = array();
private $konto;
private $maxBanner = 30;
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() ."
AND
t2.werbeart = '$this->art'
",true);
$stat = array("aufenthalt" => 0, "verguetung" => 0, "reload" => 0);
if($fstats_gesamt->ganzahl != 0){
$stat['aufenthalt'] = number_format(($fstats_gesamt->gaufenthalt - $fstats_uebrig->reloadaufendhalt) / $fstats_gesamt->ganzahl,2,",",".");
$stat['verguetung'] = number_format(($fstats_gesamt->gverdienst - $fstats_uebrig->reloadverdienst) / $fstats_gesamt->ganzahl,2,",",".");
$stat['reload'] = round(100/$fstats_gesamt->ganzahl * $fstats_gesamt->anzahlreload,2);
}
$aus = "
<table class=\"table\">
<tr>
<td align='center''>gesamt: ".$fstats_gesamt->ganzahl."</td>
<td>&nbsp;&nbsp;</td>
<td align='center'>uebrig: ". number_format($fstats_gesamt->ganzahl - $fstats_gesamt->anzahlreload,0,',','.') ."</td>
</tr>
<tr>
<td align='center'>&Oslash; Aufenthalt: ". $stat['aufenthalt'] ." Sekunden</td>
<td>&nbsp;&nbsp;</td>
<td align='center''>&Oslash; Verg&uuml;tung: ". $stat['verguetung'] ." ".$this->config->waehrung."</td>
</tr>
<tr>
<td align='center''>Gesamtwert: ". number_format($fstats_gesamt->gverdienst,2,',','.') ." ".$this->config->waehrung."</td>
<td>&nbsp;&nbsp;</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: ". $stat['reload'] ."%; color:black; text-align: center;' aria-valuenow='". $stat['reload'] ."' aria-valuemin='0' aria-valuemax='100'>
<span class='justify-content-center d-flex position-absolute w-100'>". $stat['reload'] ."% best&auml;tigt</span>
</div>
</div>
<hr>
<div class='row'>
<div class='col'>
<div class='input-group mb-3'>
<div class='input-group-prepend'>
<label class='input-group-text'>Sortierung</label>
</div>
<select class='custom-select' onchange='loggen();' id='sort'>
<option value='0'>Zufall</option>
<option value='1'>Verdienst aufsteigend</option>
<option value='2'>Verdienst absteigend</option>
<option value='3'>Wartezeit aufsteigend</option>
<option value='4'>Wartezeit absteigend</option>
</select>
</div>
</div>
<div class='col'>
<div class='input-group mb-3'>
<div class='input-group-prepend'>
<label class='input-group-text'>Anzahl angezeigte Banner</label>
</div>
<select class='custom-select' onchange='loggen();' id='anzahl'>
<option value='1'>5</option>
<option value='2'>10</option>
<option value='3'>15</option>
<option value='4'>20</option>
<option value='5'>25</option>
<option value='6'>30</option>
</select>
</div>
</div>
</div>
<script type='text/javascript'>
$(document).ready(function() {
Parameter();
});
</script>";
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&uuml;r den Klickbereich gesperrt</div>';
}else{
if($this->art == 'forcedbanner'){ $aus = $this->ForcedBannerAusgabe();}
if($this->art == 'paidmail'){ $aus = $this->PaidMailAusgabe();}
}
return $aus;
}
private function AnzahlBanner(){
if(isset($this->get['anzahl'])){
if($this->get['anzahl']*5 > $this->maxBanner){
return 5;
}else{
return $this->get['anzahl']*5;
}
}else{
return 5;
}
}
private function SortBanner(){
if(isset($this->get['sort'])){
if($this->get['sort'] == 1){
return 'ORDER BY verdienst ASC';
}elseif($this->get['sort'] == 2){
return 'ORDER BY verdienst DESC';
}elseif($this->get['sort'] == 3){
return 'ORDER BY aufendhalt ASC';
}elseif($this->get['sort'] == 4){
return 'ORDER BY aufendhalt DESC';
}
}else{
return '';
}
}
private function Query(){
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'] . '
'. $this->SortBanner() .' LIMIT ' . $this->AnzahlBanner());
}
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&nbsp;||&nbsp; Verdienst: '. number_format($res->verdienst,2,',','.') .' '. $this->config->waehrung .'&nbsp;||&nbsp; Reload: '. number_format($res->reload / 60,2,',','.') .' h | '. $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);
}
}
}
}
?>
<?php
class werbemittel{
private $session = array();
private $gconfig;
public function __construct(){
global $_SESSION,$grundconfig;
$this->session = $_SESSION;
$this->gconfig = $grundconfig;
}
public function Ansicht(){
$aus = '';
$aus .= $this->Werbelink();
$aus .= '<hr>';
$aus .= $this->Bettelregeln();
$aus .= '<hr>';
$aus .= $this->Banner();
return $aus;
}
private function Bettelregeln(){
return '
<div class="card">
<div class="card-header">Bettelinformationen</div>
<div class="card-body">
'. htmlspecialchars_decode($this->gconfig->bettel_infotext) .'
</div>
</div>
';
}
private function is_dir_empty($dir) {
if (!is_readable($dir)) return false;
return (count(scandir($dir)) == 2);
}
private function Banner(){
$url = $this->gconfig->domain.'/?content=/betteln&amp;ref='.$this->session['uid'].'';
$aus = '<div class="card"><div class="card-header text-center">Werbebanner</div><div class="card-body text-center">';
$dir = './images/werbemittel/';
if($this->is_dir_empty($dir) != false){
$open = opendir($dir);
while ($banner = readdir($open)){
if ($banner != '..' && $banner != '.' && $banner != 'Thumbs.db'){
$size = getimagesize('images/werbemittel/'.$banner);
$groesse = filesize('images/werbemittel/'.$banner.'')/1024;
$aus .= '
<b>'.$size[0].'x'.$size[1].' (~ '.round($groesse).' KB)</b><br>
<img src="images/werbemittel/'.$banner.'" alt="'.$this->gconfig->seitenname.'"><br>
<code>&lt;a href="'.$url.'" target="_blank"&gt;&lt;img src="'.$this->gconfig->domain.'/images/werbemittel/'.$banner.'" alt="'.$this->gconfig->seitenname.'" border="0"&gt;&lt;/a&gt;</code><br><br>';
}
}
closedir($open);
}else{
$aus .= '<div class="alert alert-info text-center">Momentan keine Banner vorhanden</div>';
}
$aus .= '</div></div>';
return $aus;
}
private function Werbelink(){
return '
<div class="card">
<div class="card-header text-center">Deine Werbelinks</div>
<div class="card-body">
Dein Reflink: <a href="'.$this->gconfig->domain.'/?ref='.$this->session['uid'].'" target="_blank">'.$this->gconfig->domain.'/?ref='.$this->session['uid'].'</a><br>
Dein Bettellink: <a href="'.$this->gconfig->domain.'/?page=/intern/betteln&amp;ref='.$this->session['uid'].'" target="_blank">'.$this->gconfig->domain.'/?page=/intern/betteln&amp;ref='.$this->session['uid'].'</a>
</div>
</div>
';
}
}
<?php
class ZAHLUNG{
public $uid;
public $art;
function set_art($richtung){
if($richtung == 1){
$this->art = 'aktiv_ein';
}elseif($richtung == 2){
$this->art = 'aktiv_aus';
}
}
function set_uid($uid){
global $datenbank;
if(!is_numeric($uid)){ $this->uid = 0;}else{ $this->uid = $datenbank->escape($uid);}
}
function anzeigen_moeglich(){
global $datenbank;
$result = $datenbank->get_results("SELECT name,schnittstelle FROM ". PREFIX . SCHNITT ." WHERE aktiv = '1' AND $this->art = '1'");
$i = 0;
$aus = array("head" => '', "body" => '');
if(count((array)$result) != 0){
foreach($result AS $res){
$aktive = '';
if($i == 0){ $aktive = 'active'; $i++; }
$aus['head'] .= '<li role="presentation" class="nav-item"><a class="nav-link '. $aktive .'" href="#'. $res->schnittstelle .'" role="tab" data-toggle="tab">'. $res->name .'</a></li>';
$aus['body'] .= '<div role="tabpanel" class="tab-pane '. $aktive .'" id="'. $res->schnittstelle .'">';
if($datenbank->num_rows("SELECT uid FROM ". PREFIX . MULTIK . " WHERE uid = '$this->uid '") == 0){
$aus['body'] .= '<hr>'. $this->anzeigen_veri($res->schnittstelle);
}else{
$aus['body'] .= '<hr>'. $this->anzeigen_auszahlung($res->schnittstelle);
}
$aus['body'] .= '</div>';
}
}else{
$aus['head'] = '<li role="presentation" class="active"><a href="#keine" role="tab" data-toggle="tab">keine aktiviert</a></li>';
$aus['body'] = '<div role="tabpanel" class="tab-pane active" id="keine">
<hr>
<div class="alert alert-warning">
Es sind momentan keine Auszahlungsarten aktiviert
</div>
</div>';
}
return $aus;
}
function anzeigen_veri($schnitt){
global $datenbank;
$aus_ver = '
<form method="post" action="">
<input type="hidden" name="name" value="'. $schnitt .'">
<div class="form-group">
<label for="beispielFeldEmail1">Nutzer-ID/Nutzername</label>
<input type="text" class="form-control" placeholder="Nutzer-ID/Nutzername">
<p class="help-block" style="font-size:12px;">
Je nach Seite, musst du deine Nutzer-ID oder den Nutzername angeben.
</p>
</div>
<div class="form-group">
<label for="beispielFeldEmail1">Schnittstellenpasswort</label>
<input type="password" class="form-control">
</div>
<input type="submit" name="run[veri]" value="Verifizieren" class="btn btn-success btn-block">
</form>
';
return $aus_ver;
}
function anzeigen_auszahlung($id){
$aus = '
<form method="post" action="">
<input type="hidden" name="id" value="'. $id .'">
<div class="form-group">
<label for="beispielFeldEmail1">Betrag</label>
<input type="number" name="betrag" class="form-control" placeholder="Betrag">
</div>
<div class="form-group">
<label for="beispielFeldEmail1">Schnittstellenpasswort</label>
<input type="password" name="pass" class="form-control">
</div>';
if($this->art == 'aktiv_aus'){
$aus .= '<input type="submit" name="run[auszahlen]" value="Auszahlen" class="btn btn-block btn-success">';
}elseif($this->art == 'aktiv_ein'){
$aus .= '<input type="submit" name="run[einzahlen]" value="Einzahlen" class="btn btn-block btn-success">';
}
$aus .= '
</form>
';
return $aus;
}
function anzeigen(){
$aus = $this->anzeigen_moeglich();
return $aus;
}
}
<?php
$db_host = "localhost";
// Mysql User
$db_user = "vms_suee2";
// Mysql PW
$db_pass = "lTxyJyZtmSQvaV6M";
// Datenbank
$db_base = "vms_suee2";
//Datenbank Prefix
$db_prefix = "vms";
//Passwort zusatz
$pw_zusatz = 'fg65en';
//Datenbankverbindung herstellen
$sql_open = @mysqli_connect($db_host, $db_user, $db_pass, $db_base) or die('Verbindung zum Mysql Server fehlgeschlagen! <br>Tipp: <a href="http://www.vms-tutorial.de/wiki//Lib/Functions">http://www.vms-tutorial.de/wiki//Lib/Functions</a>');
$sql_base = @mysqli_select_db($sql_open,$db_base) or die("Keine oder falsche Datenbank gewhlt! Tipp: <br><a href='http://www.vms-tutorial.de/wiki//Lib/Functions'>http://www.vms-tutorial.de/wiki//Lib/Functions</a>");
/**
* db_connect()
*
* @author designerscripte.net
* @category system Database
* @version 2.5.0
* @example db_query("SELECT `field` FROM `table` WHERE `field` = `value` ");
* @param mixed $sql_tag
* @return 0 bei Fehler Mysql_resource.
*
*/
function db_query($sql_tag) {
global $count_query,$sql_open;
$count_query++;
$fargs = func_get_args();
if (!empty($fargs)) {
$vargs = array();
foreach($fargs as $key => $arg) {
$vargs[$key] = mysqli_real_escape_string($sql_open,$arg);
}
array_shift($vargs);
if (!empty($vargs))$sql_tag = vsprintf($sql_tag, $vargs);
}
if ($ret = mysqli_query($sql_open,$sql_tag)) {
return $ret;
}else {
return 0;
}
}
function pw_erstellen($pw){
global $pw_zusatz;
$pw_er = hash("sha256",$pw.$pw_zusatz);
return $pw_er;
}
/**
* db_close()
*
* @author designerscripte.net
* @category system Database
* @version 2.5.0
* @example db_close();
* @return die(''); bei fehler nichts bei erfolg
*/
function db_close() {
global $sql_open;
@mysqli_close($sql_open) or die('Konnte die Verbindung mit Datenbank nicht schliessen!');
}
?>
<?php
// Erweiterte E-Mail-Funktion
/**
* usermail()
* @author designerscripte.net
* @category system
* @version 2.5.0
* @param mixed $an email adresse
* @param mixed $betreff betreff
* @param mixed $nachricht inhalt
* @param mixed $von absender
* @return
*/
function usermail ($an, $betreff, $nachricht, $von) {
// HTML-Codes entfernen
$nachricht = strip_tags ($nachricht);
// zunchst fehlende Protokollprefixe ergnzen
$nachricht = str_replace(' www.',' http://www.',$nachricht);
$pattern = '#([^\"=>]|(?:r />))(http://)([^\s<>,]+(?=\.\s)|[^\s<>,]+)([\s\n<>,\.])#sm';
$replacement = "$1<a title=\"der Link zu dieser URL wurde automatisch hinzugefgt\" target=\"extern\" href=\"$2$3\">$2$3</a>$4";
$html_text = preg_replace($pattern,$replacement,$nachricht);
// Nachricht mit HTML
$html_nachricht = '<HTML>
<HEAD>
<STYLE TYPE="text/css">
<!--
H1 {font-family: Verdana; font-size: 18pt}
BODY {font-family: Verdana; font-size: 10pt; margin-left: 30px}
// -->
</STYLE>
</HEAD>
<BODY BGCOLOR="beige">
<H1>'.$betreff.'</H1>
'.nl2br($html_text).'
</BODY>
</HTML>';
$Header = "MIME-Version: 1.0\n";
$Header .= "Content-type: text/html; charset=iso-8859-1\n";
$Header .= "From: ".$von."\n";
return mail($an, $betreff, $html_nachricht, $Header);
}
?>
\ No newline at end of file
<?php
// VMSone 2.5.0 Von designerscripte
header("Cache-control: no-cache");
date_default_timezone_set('Europe/Berlin');
$daten = mysqli_fetch_array(db_query("SELECT domain,seitenname,waehrung,betreibermail,cron_pw FROM ".$db_prefix."_seitenkonfig "));
// Domain (ohne Slash am Ende)
$domain = $daten['domain'];
// Seitenname
$seitenname = $daten['seitenname'];
// Seitenwährung
$waehrung = $daten['waehrung'];
// ID vom Admin
$admin_id = 1;
// Adminmail
$betreibermail = $daten['betreibermail'];
// Passwort für Crons
$cron_pw = $daten['cron_pw'];
// beliebiger Alphanumerischer String hilft beim Schutz vor Autoklickern
$percode = '551c3d4318d668cc2b00d02b40d1e6cd282817c2be65d401ed0cff2e6b';
// Komprimierung der Ausgabe zwischen 0 & 10 wobei 0 die Komprimierung der Ausgabe deaktiviert Empfohlener Wert: 1
$gzip_rate = 0;
/* Globale Variablen nichts ändern */
if(file_exists($_SERVER['DOCUMENT_ROOT'].'error')){
error_reporting(E_ALL);
ini_set('display_errors', 'On');
ini_set('error_log', $_SERVER['DOCUMENT_ROOT'].'/error/error-'. date("d.m.Y",time()).'.log');
ini_set('log_errors', 'On');
if(!file_exists($_SERVER['DOCUMENT_ROOT'].'/error/error-'. date("d.m.Y",time()).'.log')){
$datei = fopen($_SERVER['DOCUMENT_ROOT'].'/error/error-'. date("d.m.Y",time()).'.log',"w");
fwrite($datei, " ",100);
fclose($datei);
}
}
$ip = $_SERVER['REMOTE_ADDR'];
function pw_erstellen($pw){
global $pw_zusatz;
$pw_er = hash("sha256",$pw.$pw_zusatz);
return $pw_er;
}
/**
* create_code()
......@@ -44,88 +41,17 @@ function create_code($code_laenge) {
return $created_code;
}
/**
* kontobuchung()
*
* @author designerscripte.net
* @category system user
* @version 2.5.0
* @example kontobuchung('+',100000,10);
* @param mixed $art '+' oder '-'
* @param mixed $trans_menge Numerischer wert
* @param int $fuer Userid
* @return keine
*/
function kontobuchung ($art, $trans_menge, $buchungs_id, $fuer, $verwendung) {
global $db_prefix,$sql_open;
$buchung = db_query("UPDATE " . $db_prefix . "_kontodaten SET `kontostand` = `kontostand` " . mysqli_real_escape_string($sql_open,$art) . " " . mysqli_real_escape_string($sql_open,$trans_menge) . " WHERE uid=" . mysqli_real_escape_string($sql_open,$fuer) . "");
if($buchung == true){
$buchung_ok = 1;
}else{
$buchung_ok = 2;
}
db_query("INSERT INTO " . $db_prefix . "_buchungen (uid,buchungszeit,buchungs_id,buchungsmenge,verwendungszweck,buchung_ok) VALUES (" . mysqli_real_escape_string($sql_open,$fuer) . "," . time() . ",'" . mysqli_real_escape_string($sql_open,$buchungs_id) . "','" . mysqli_real_escape_string($sql_open,$art.$trans_menge) . "','" . mysqli_real_escape_string($sql_open,$verwendung) . "', '". $buchung_ok ."' )");
}
/**
* userstatus()
*
* @author designerscripte.net
* @category system
* @version 2.5.0
* @example userstatus();
* @return Leitet bei keinem zugriff auf die entsprechenden fehlerseiten weiter
*/
function userstatus () {
global $_SESSION, $db_prefix;
if ($_SESSION['login'] == 'true') {
$us = db_query("SELECT `uid`,`passwort`,`status`,`hinweis` FROM " . $db_prefix . "_kontodaten WHERE uid=" . $_SESSION['uid'] . " and passwort='" . $_SESSION['passwort'] . "' LIMIT 1");
$login_check = mysqli_fetch_array($us);
// nicht aktiviert oder nicht angemeldet!
if (!mysqli_num_rows($us) or $login_check['status'] == 0) {
setCookie('uid', '', time() - 86400 * 30);
setCookie('passwort', '', time() - 86400 * 30);
setCookie('autologin', '', time() - 86400 * 30);
$_SESSION['uid'] = "";
$_SESSION['passwort'] = "";
$_SESSION['login'] = "";
@include_once('content/error/kein_zutritt.php');
@include_once('lib/footer.php');
die();
}
// gesperrt
if ($login_check['status'] == 2) {
setCookie('uid', '', time() - 86400 * 30);
setCookie('passwort', '', time() - 86400 * 30);
setCookie('autologin', '', time() - 86400 * 30);
$_SESSION['uid'] = "";
$_SESSION['passwort'] = "";
$_SESSION['login'] = "";
@include_once('content/error/user_gesperrt.php');
@include_once('lib/footer.php');
die();
}
}else {
@include_once('content/error/kein_zutritt.php');
@include_once('lib/footer.php');
die();
}
function ReloadDelete(){
global $datenbank;
$datenbank->query("DELETE FROM ". PREFIX . RELOAD ." WHERE bis < '".time() ."' ");
}
/**
* refumsatz()
*
* @author designerscripte.net
* @category system user
* @version 2.5.0
* @example refumsatz(100000,10);
* @param mixed $buchungssumme transaktionssumme
* @param unt $fuer Userid
* @return keine
*/
function refumsatz ($buchungssumme, $fuer) {
global $db_prefix;
db_query ('UPDATE ' . $db_prefix . '_werberdaten SET umsatz = umsatz + ' . $buchungssumme . ', aktivzeit=' . time() . ' WHERE uid = ' . $fuer . ' and werber != 0');
function refumsatz ($summe, $uid) {
global $datenbank;
$user = $datenbank->get_row("SELECT umsatz,werber FROM ". PREFIX . WERBER ." WHERE uid = '". $datenbank->escape($uid) ."' ",true);
if($user->werber != 0){
$datenbank->update( PREFIX . WERBER ,array("umsatz" => $user->umsatz + $summe, "aktivzeit" => time() ), array("uid" => $datenbank->escape($uid) ), 1 );
}
}
/**
......@@ -141,53 +67,34 @@ function refumsatz ($buchungssumme, $fuer) {
* @return keine
*/
function rallysystem ($uid,$was,$anzahl) {
global $time;
db_query("UPDATE vms_kontodaten SET eintap = eintap + ".$anzahl."/100 WHERE uid= ".$uid." LIMIT 1");
$rallyorte=mysqli_fetch_array(db_query("SELECT welche_rallys FROM vms_rallyorte WHERE id = '".$was."' LIMIT 1"));
$rally = db_query("SELECT * FROM `vms_rallydaten` WHERE `id` IN (".$rallyorte['welche_rallys'].") AND `status` = 'aktive' AND `start` <= UNIX_TIMESTAMP() AND ((`ende_art` = 'zeit' AND `ende_zeit` > UNIX_TIMESTAMP()) OR (`ende_art` = 'punkt' AND `ende_punkte` > `ende_punkte_aktuell`)) ");
while($rallys = mysqli_fetch_array($rally)){
$gesperrt = explode(',',$rallys['sperruser']);
global $datenbank;
$rallyorte = $datenbank->get_row("SELECT welche_rallys FROM ". PREFIX . RALLYO ." WHERE id = '". $datenbank->escape($was) ."' LIMIT 1",true);
foreach($datenbank->get_results("
SELECT * FROM ". PREFIX . RALLY ." WHERE `id` IN (". $rallyorte->welche_rallys .") AND `status` = 'aktive' AND ( (UNIX_TIMESTAMP(start_time)+UNIX_TIMESTAMP(start_date))-UNIX_TIMESTAMP(curdate()) <= '". time() ."' )
AND
(
(ende_art = 'zeit' AND (UNIX_TIMESTAMP(ende_time)+UNIX_TIMESTAMP(ende_date))-UNIX_TIMESTAMP(curdate()) >= '". time() ."' )
OR
(`ende_art` = 'punkt' AND `ende_punkte` > `ende_punkte_aktuell`)
) ") AS $res){
$gesperrt = explode(',',$res->sperruser);
if (!in_array($uid, $gesperrt)) {
$anzahl2 = $anzahl.$rallys['ende_punkte_anzahl'];
eval("\$anzahl2 = $anzahl2;");
$steigerung = $anzahl.$rallys['gewinn_dyn_steigerung'];
eval("\$steigerung = $steigerung;");
if ($rallys['gewinn_art'] == 'dynamisch') db_query ("UPDATE vms_rallydaten SET gewinn_topf=gewinn_topf+'".$steigerung."' WHERE id = '".$rallys['id']."' LIMIT 1");
if ($rallys['ende_art'] == 'punkt') db_query ("UPDATE vms_rallydaten SET ende_punkte_aktuell = ende_punkte_aktuell + '".$anzahl2."' WHERE id = ".$rallys['id']." LIMIT 1");
db_query ("UPDATE vms_rallyuser SET punkte = punkte + '".$anzahl2."' WHERE uid = '".$_SESSION['uid']."' AND rally = '".$rallys['name']."' AND ausgezahlt < '1'");
if (mysqli_affected_rows () == 0) db_query ("INSERT INTO vms_rallyuser (rally,uid,punkte) VALUES ('".$rallys['name']."','".$uid."','".$anzahl2."')");
$anzahl2 = $anzahl.$res->ende_punkte_anzahl;
eval("\$anzahl2 = $anzahl2;");
$steigerung = $anzahl.$res->gewinn_dyn_steigerung;
eval("\$steigerung = $steigerung;");
if ($res->gewinn_art == 'dynamisch') $datenbank->query("UPDATE ". PREFIX . RALLY ." SET gewinn_topf=gewinn_topf+'".$steigerung."' WHERE id = '".$res->id."' LIMIT 1");
if ($res->ende_art == 'punkt') $datenbank->query("UPDATE ". PREFIX . RALLY ." SET ende_punkte_aktuell = ende_punkte_aktuell + '".$anzahl2."' WHERE id = ".$res->id." LIMIT 1");
if($datenbank->num_rows("SELECT uid FROM ". PREFIX . RALLYU ." WHERE uid = '$uid' AND rally = '$res->id' AND ausgezahlt = '0' ") == 1){
$datenbank->query("UPDATE ". PREFIX . RALLYU ." SET punkte = punkte + '".$anzahl2."' WHERE uid = '".$uid."' AND rally = '".$res->id."' AND ausgezahlt = '0'");
}else{
$datenbank->insert(PREFIX . RALLYU, array("rally" => $res->id,"uid" => $uid, "punkte" => $anzahl2));
}
}
}
}
/**
* bilanz()
*
* @author designerscripte.net
* @category system
* @version 2.5.0
* @example bilanz(100,0);
* @param number $ein einnahme
* @param number $aus ausgabe
* @return keine
*/
function bilanz ($ein, $aus) {
global $db_prefix,$sql_open;
$ein = round($ein, 2);
$aus = round($aus, 2);
$date_stamp = mktime(0, 0, 0, date("m"), date("d"), date("Y"));
mysqli_query($sql_open,'UPDATE ' . $db_prefix . '_bilanz SET ein=ein+"' . $ein . '", aus=aus+"' . $aus . '" WHERE date=' . $date_stamp . ' LIMIT 1');
if (mysqli_affected_rows() == 0) db_query('INSERT INTO ' . $db_prefix . '_bilanz (ein,aus,date) VALUES ("' . $ein . '","' . $aus . '",' . $date_stamp . ')');
}
// GZip
if ($gzip_rate > 0) {
ini_set('zlib.output_compression_level', $gzip_rate);
if (ereg("gzip", getenv("HTTP_ACCEPT_ENCODING"))) ob_start("ob_gzhandler");
else ob_start();
}
// Datum im Facebook Stil
function niceDate($timestamp)
{
......@@ -268,4 +175,144 @@ function sonderzeichen($text){
}
return $err;
}
function check_email($email) {
if(!filter_var($email_a, FILTER_VALIDATE_EMAIL)) {
return false;
}
$email_array = explode("@", $email);
$local_array = explode(".", $email_array[0]);
for ($i = 0; $i < sizeof($local_array); $i++) {
if(!ereg("^(([A-Za-z0-9!#$%&'*+/=?^_`{|}~-][A-Za-z0-9!#$%&'*+/=?^_`{|}~\.-]{0,63})|(\"[^(\\|\")]{0,62}\"))$", $local_array[$i])) {
return false;
}
}
if(!ereg("^\[?[0-9\.]+\]?$", $email_array[1])) {
$domain_array = explode(".", $email_array[1]);
if(sizeof($domain_array) < 2) {
return false;
}
for($i = 0; $i < sizeof($domain_array); $i++) {
if(!ereg("^(([A-Za-z0-9][A-Za-z0-9-]{0,61}[A-Za-z0-9])|([A-Za-z0-9]+))$", $domain_array[$i])) {
return false;
}
}
}
return true;
}
function geoIP($ip){
$output = unserialize(file_get_contents("http://www.geoplugin.net/php.gp?ip=".$ip,"r"));
return $output['geoplugin_countryCode'];
}
function versch($text){
global $ver_schluessel;
$iv_size = mcrypt_get_iv_size(MCRYPT_RIJNDAEL_256, MCRYPT_MODE_ECB);
$iv = mcrypt_create_iv($iv_size, MCRYPT_RAND);
$crypted = mcrypt_encrypt(MCRYPT_RIJNDAEL_256, $ver_schluessel, $text, MCRYPT_MODE_ECB, $iv);
return $crypted;
}
function entsch($text){
global $ver_schluessel;
$iv_size = mcrypt_get_iv_size(MCRYPT_RIJNDAEL_256, MCRYPT_MODE_ECB);
$iv = mcrypt_create_iv($iv_size, MCRYPT_RAND);
$encrypted = mcrypt_decrypt(MCRYPT_RIJNDAEL_256, $ver_schluessel, $text, MCRYPT_MODE_ECB, $iv);
return $encrypted;
}
function meldung($zahl,$text){
global $error,$meldung;
$error = $zahl;
$meldung = $text;
}
function userinfo($uid){
global $datenbank;
$uid = $datenbank->escape($uid);
if(!is_numeric($uid)){ $uid = 0;}
$user = $datenbank->get_row("
SELECT
".PREFIX . USER .".*,
".PREFIX . KONTO .".*,
".PREFIX . WERBER .".*,
".PREFIX . NICKP.".*,
".PREFIX . EMAIL.".*
FROM ". PREFIX . USER ."
LEFT JOIN ". PREFIX . KONTO ." ON(". PREFIX . USER .".uid = ". PREFIX . KONTO .".uid)
LEFT JOIN ".PREFIX. WERBER ." ON(". PREFIX . KONTO .".uid = ". PREFIX . WERBER .".uid)
LEFT JOIN ".PREFIX . NICKP ." ON(". PREFIX . WERBER .".uid = ". PREFIX . NICKP .".uid)
LEFT JOIN ".PREFIX . EMAIL ." ON(". PREFIX . NICKP .".uid = ". PREFIX . EMAIL .".uid)
WHERE ".PREFIX . USER .".uid= ".$uid." ",true);
return $user;
}
function Classloader($class,$admin = false){
$adminfolder = '';
if($admin == true){ $adminfolder = '/adminforce';}
if(file_exists($_SERVER['DOCUMENT_ROOT'].$adminfolder.'/lib/class/'.$class .'.class.php')){
require_once($_SERVER['DOCUMENT_ROOT'].$adminfolder.'/lib/class/'.$class .'.class.php');
$reg = new $class;
}else{
$reg = 'error';
}
return $reg;
}
function sectodays($secs) {
$days = intval($secs / (60 * 60 * 24));
$secs = $secs % (60 * 60 * 24);
$hours = intval($secs / (60 * 60));
$secs = $secs % (60 * 60);
$mins = intval($secs / 60);
$secs = $secs % 60;
return 'noch ' . $days . ' Tage, ' . $hours . ' Std. und ' . $mins . ' Min.';
}
function getURL($url,$post = 0){
$curl = curl_init();
curl_setopt($curl,CURLOPT_URL,$url);
if($post == 1){
curl_setopt($curl,CURLOPT_POST,1);
curl_setopt($curl,CURLOPT_POSTFIELDS,$curl_post);
}
curl_setopt($curl,CURLOPT_RETURNTRANSFER,1);
$content = curl_exec($curl);
curl_close($curl);
return $content;
}
function CheckLogin(){
global $_GET,$_SESSION;
if(!isset($_GET['page'])){ $_GET['page'] = '';}
if($_GET['page'] != '/intern/startseite'){
$ex = explode("/",$_GET['page']);
if(!isset($ex[1])){ $ex[1] = '';}
if($_SESSION['login'] === false && $ex[1] != 'intern'){
$_GET['page'] = 'error/kein_zutritt';
}
}
}
function IMGtoBase64 ( $file = NULL, $ordner = NULL ) {
if($file != NULL){
$type = explode(".",$file);
if($ordner == NULL){
$content = file_get_contents ( $_SERVER['DOCUMENT_ROOT'].'/images/userava/'.$file );
}else{
$content = file_get_contents ( $_SERVER['DOCUMENT_ROOT'].'/images/'. $ordner .'/'.$file );
}
return 'data:image/'.$type[1].';base64,'.base64_encode( $content );
}else{
return '';
}
}
function LoadLanguageFile(){
global $_GET;
if(file_exists(DIR_FS .'/lib/lang/'. $_SESSION['lang'] .'/seiten'. $_GET['page'] .'.php')){
require DIR_FS .'/lib/lang/'. $_SESSION['lang'] .'/seiten'. $_GET['page'] .'.php';
}
}
?>
Deny from all
<?php
require_once('../../lib/datenbank.inc.php');
require_once('../../lib/functions.lib.php');
require_once('../../lib/session.lib.php');
$meldung['error'] = 0;
$sperre = mysqli_fetch_array(db_query("SELECT chat_sperre FROM ".$db_prefix."_userdaten WHERE uid = '". mysqli_real_escape_string($sql_open,$_SESSION['uid']) ."' "));
if($sperre['chat_sperre'] == '1'){ $meldung = array("error" => 1, "meldung" => 'Du bist für den Chat gesperrt.');}
if(empty($_POST['inhalt'])){ $meldung = array("error" => 1, "meldung" => 'Bitte Text eingeben.');}
if($_SESSION['uid'] <= 0){ $meldung = array("error" => 1, "meldung" => 'Ung&uuml;ltige User-ID.');}
if($meldung['error'] == 0){
$reload = mysqli_fetch_array(db_query("SELECT bis FROM ".$db_prefix."_reloads WHERE uid = '".$_SESSION['uid']."' AND tan = 'sb_reload' "));
$zeit = time();
$text = $_POST['inhalt'];
$user = mysqli_fetch_array(db_query("SELECT nickname FROM ".$db_prefix."_userdaten WHERE uid = '".$_SESSION['uid']."' "));
db_query("INSERT INTO ".$db_prefix."_chat (absender, nachricht, time) VALUES ('".$user['nickname']."', '". mysqli_real_escape_string($sql_open,$text) ."', '".$zeit."')");
db_query("UPDATE ".$db_prefix."_kontodaten SET sb_texte = sb_texte + '1' WHERE uid = '".$_SESSION['uid']."' ");
if( time() >= $reload['bis']){
$daten = mysqli_fetch_array(db_query("SELECT sb_reload,sb_verguetung FROM ".$db_prefix."_chat_einstellungen "));
if($_COOKIE['adblocker'] == 1){
$verguetung = $daten['sb_verguetung']/2;
kontobuchung ('+', $verguetung/2, create_code(14), $_SESSION['uid'],'Chatverg&uuml;tung');
$meldung = array("error" => 0, "meldung" => 'Da du deinen Adblocker an hast, bekommst du nicht die ganze Chat Verg&uuml;tung.<br>
Du bekommst nur '. number_format($verguetung/2,2,',','.').' '.$waehrung.' anstatt die vollen '. number_format($verguetung,2,',','.').' '.$waehrung.'.');
}else{
kontobuchung ('+', $daten['sb_verguetung'], create_code(14), $_SESSION['uid'],'Chatverg&uuml;tung');
$meldung = array("error" => 0, "meldung" => 'Chat Verg&uuml;tung erhalten.');
}
db_query("UPDATE ".$db_prefix."_kontodaten SET sb_verdienst = sb_verdienst + '".$daten['sb_verguetung']."' WHERE uid = '".$_SESSION['uid']."' ");
$sperre = time() + $daten['sb_reload'];
db_query("INSERT INTO ".$db_prefix."_reloads (uid,bis,tan) VALUES ('".$_SESSION['uid']."','".$sperre."','sb_reload') ");
}
}
?>
<?php
class RUN {
private $db;
private $error = 0;
private $meldung;
private $session = array();
public function __construct(){
global $datenbank,$_SESSION;
$this->db = $datenbank;
$this->session = $_SESSION;
}
public function sicher($string) {
return trim(strip_tags($this->db->escape($string)));
}
public function vars($type = 'REQUEST'){
if($type == 'REQUEST')
$ay = $_REQUEST;
elseif($type == 'POST')
$ay = $_POST;
elseif($type == 'GET')
$ay = $_GET;
$rtn = new stdClass();
foreach($ay['run'] as $a1 => $a2){
$rtn->{$this->sicher($a1)} = $this->sicher($a2);
}
return $rtn;
}
public function value($rtn){
$count = count((array)$rtn);
$i = 1;
foreach($rtn as $key => $value) {
if($i <= $count){
$post = array("name" => $key, "value" => $value);
}
$i++;
}
return $post;
}
public function datei_holen($value){
$query = "SELECT datei,berechtigung FROM ". PREFIX . RUN_INC ." WHERE value = '". $this->db->escape($value['value']) ."' AND name = '". $this->db->escape($value['name']) ."' ";
$dat = $this->db->num_rows($query);
if($dat == 1){
$a = $this->db->get_row($query,true);
if($a->berechtigung == 2 && $this->session['login'] == false){ $this->error = 1;}
if($a->berechtigung == 1){ $this->error = 1;}
if($this->error == 0){
return $a->datei;
}
}else{
$this->error = 1;
$this->meldung = 'Aktion kann nicht ausgef&uuml;hrt werden.';
}
meldung($this->error,$this->meldung);
}
}
<?php
$ava = Classloader('userprofil');
$ava->Profilbild($_FILES);
?>
<?php
// Variabel vordefinieren!
if (!isset($_POST['anmelden'])) $_POST['anmelden'] = "";
if (!isset($_POST['nickname'])) $_POST['nickname'] = "";
if (!isset($_POST['nachname'])) $_POST['nachname'] = "";
if (!isset($_POST['vorname'])) $_POST['vorname'] = "";
if (!isset($_POST['emailadresse'])) $_POST['emailadresse'] = "";
if (!isset($_POST['passwort_1'])) $_POST['passwort_1'] = "";
if (!isset($_POST['passwort_2'])) $_POST['passwort_2'] = "";
if (!isset($_POST['agb'])) $_POST['agb'] = "";
if (!isset($_POST['newsletter'])) $_POST['newsletter'] = "1";
if (!isset($error)) $error = "";
if (!isset($anmeldeok)) $anmeldeok = "";
if (!isset($ak)) $ak = "";
$error = 0;
$meldung = '';
$_POST['nachname'] = addslashes ($_POST['nachname']);
$_POST['vorname'] = addslashes ($_POST['vorname']);
$pageconfig = mysqli_fetch_array(db_query("SELECT denied_domains FROM ".$db_prefix."_seitenkonfig "));
//$_POST['nickname'] = mysqli_real_escape_string($sql_open,$_POST['nickname']);
$nickname_check = db_query ("SELECT `nickname` FROM " . $db_prefix . "_userdaten WHERE nickname='" . mysqli_real_escape_string($sql_open,$_POST['nickname']) . "'");
$mail_check = db_query ("SELECT `emailadresse` FROM " . $db_prefix . "_emaildaten WHERE emailadresse='" . mysqli_real_escape_string($sql_open,$_POST['emailadresse']) . "'");
if (!filter_var($_POST['emailadresse'], FILTER_VALIDATE_EMAIL)) { $meldung = array("error" => 1, "meldung" => 'Der Emailsytax ist falsch.');}
if ($_POST['passwort_1'] != $_POST['passwort_2']){ $meldung = array("error" => 1, "meldung" => 'Die Passw&ouml;rter stimmen nicht &uuml;berein.');}
if (strlen($_POST['passwort_1']) < 8){ $meldung = array("error" => 1, "meldung" => 'Das Passwort muss mindestens 8 Zeichen haben.'); }
if (empty($_POST['nachname'])){ $error = 1; $meldung = 'Bitte Nachname angeben.<br>';}
if(empty($_POST['bdate'])){ $error = 1; $meldung = 'Bitte Geburtstag angeben.<br>';}
if(empty($_POST['vorname'])){ $error = 1; $meldung = 'Bitte Vorname angeben.<br>';}
if(empty($_POST['emailadresse'])){ $error = 1; $meldung = 'Bitte E-Mail Adresse angeben.<br>';}
if(empty($_POST['passwort_1'])){ $error = 1; $meldung = 'Bitte Passwort angeben.<br>';}
if(empty($_POST['passwort_2'])){ $error = 1; $meldung = 'Bitte Passwort best&auml;tigen.<br>';}
if(empty($_POST['nickname'])){$error = 1; $meldung = 'Bitte Nickname angeben.<br>';}
$meldung = array("error" => $error, "meldung" => $meldung);
$denied = explode(';', $pageconfig['denied_domains']);
foreach ($denied AS $nr => $emaildomain) if (($nr < (count ($denied) - 2) || strlen ($emaildomain) >= 5) && strpos ($_POST['emailadresse'], $emaildomain) !== false){$meldung = array("error" => 1, "meldung" => 'Der E-Mail Anbieter ist nicht erlaubt..');}
if ($_POST['agb'] != "ja"){ $meldung = array("error" => 1, "meldung" => 'Bitte best&auml;tige die AGB.'); }
if (mysqli_num_rows($mail_check)){ $meldung = array("error" => 1, "meldung" => 'Die E-Mail Adresse ist bereits vorhanden.');}
if (mysqli_num_rows($nickname_check)){ $meldung = array("error" => 1, "meldung" => 'Der Nutzername ist bereits vorhanden.');}
if($meldung['error'] != 1){
if ($_POST['newsletter'] == 0) $mailstatus = 0;
if ($_POST['newsletter'] == 1) $mailstatus = 1;
$pw = pw_erstellen($_POST['passwort_1']);
db_query("INSERT INTO ".$db_prefix."_kontodaten (passwort,status) VALUES ('". $pw ."','0')");
$uid = mysqli_insert_id($sql_open);
if ($_SESSION['werber'] == $uid) $_SESSION['werber'] = 0;
$explode = explode("/",$_POST['bdate'],100);
$bdate = mktime(0,0,0,$explode[1],$explode[0],$explode[2]);
db_query("INSERT INTO " . $db_prefix . "_emaildaten (uid,emailadresse,freigabe_fuer) VALUES
('" . mysqli_real_escape_string($sql_open,$uid) . "',
'" . mysqli_real_escape_string($sql_open,$_POST['emailadresse']) . "',
'" . mysqli_real_escape_string($sql_open,$mailstatus) . "')
");
db_query("INSERT INTO " . $db_prefix . "_userdaten (uid,nickname,vorname,nachname,angemeldet_seit,bdate) VALUES
('" . mysqli_real_escape_string($sql_open,$uid) . "',
'" . mysqli_real_escape_string($sql_open,$_POST['nickname']) . "',
'" . mysqli_real_escape_string($sql_open,$_POST['vorname']) . "',
'" . mysqli_real_escape_string($sql_open,$_POST['nachname']) . "',
'" . time() . "',
'" . mysqli_real_escape_string($sql_open,$bdate) ."')
");
db_query("INSERT INTO " . $db_prefix . "_werberdaten (uid,werber,umsatz,zuordnungszeit) VALUES
('" . mysqli_real_escape_string($sql_open,$uid) . "',
'" . mysqli_real_escape_string($sql_open,$_SESSION['werber']) . "',
'0',
'" . time() . "')
");
$ak = md5($_POST['uid'] . '' . time());
db_query("INSERT INTO " . $db_prefix . "_aktivierungen (uid,ak) VALUES
('" . mysqli_real_escape_string($sql_open,$uid) . "',
'" . mysqli_real_escape_string($sql_open,$ak) . "')
");
db_query("INSERT INTO ". $db_prefix ."_nickpage (uid) VALUES (
'". mysqli_real_escape_string($sql_open,$uid) ."'
)");
$email_message = 'Hallo ' . $_POST['nickname'] . ',
Du hast Dich soeben erfolgreich bei ' . $seitenname . ' angemeldet.
Bitte aktiviere jetzt Deinen Account, klicke dazu bitte auf den
Aktivierungslink: ' . $domain . '/?content=/intern/aktivieren&ak=' . $ak . '
----------------------------------------------------------
Kontonummer: ' . $uid . '
Passwort: Ihnen bekannt*
----------------------------------------------------------
Nach der Aktivierung kannst Du dich sofort einloggen und bei
uns teilnehmen.
Mit freundlichen Gren
Das ' . $seitenname . ' Team
';
usermail($_POST['emailadresse'], "$seitenname Accountaktivierung", $email_message, '"' . $seitenname . '" <' . $betreibermail . '>');
$anmeldeok = "true";
}
$anmelden = Classloader('anmelden');
$anmeldeok = $anmelden->anmelden_los();
?>
\ No newline at end of file
<?php
$error_aus = 0;
$meldung = '';
$kontodaten = mysqli_fetch_array(db_query("SELECT kontostand,auszahlung_sperre FROM ".$db_prefix."_kontodaten WHERE uid=".$_SESSION['uid']." LIMIT 1"));
$konto = mysqli_fetch_assoc(db_query('SELECT kontoid FROM vms_multi_konten WHERE uid='.$_SESSION['uid'].' AND waehrung=\''.$_POST['waehrung'].'\' LIMIT 1'));
$schnittstellen_res = db_query("
SELECT t1.*, t2.* FROM vms_multi_konten t2
LEFT JOIN ".$db_prefix."_schnittstelle t1 ON t1.schnittstelle=t2.waehrung
WHERE t2.uid=".$_SESSION['uid']." AND t1.aktiv >=2 ");
while($_temp=mysqli_fetch_assoc($schnittstellen_res)) {
$schnittstellen[] = $_temp;
$erlaubte_schnittstellen[] = $_temp['schnittstelle'];
}
if($kontodaten['auszahlung_sperre'] == 1){ $error = 1; $meldung .= 'Du bist f&uuml;r die Auszahlung noch gesperrt. Wende dich an den Admin.<br>';}
if($konto['kontoid'] == 0){ $error_aus = 1; $meldung .= 'Konto nicht gefunden.<br>';}
if(in_array($_POST['waehrung'], $erlaubte_schnittstellen)){ $error_aus = 1; $meldung .= 'Die Schnitstelle ist nicht erlaubt.<br>';}
if(empty($_POST['uid_passwort'])){ $error_aus = 1; $meldung .= 'Du musst ein Passwort eingeben.<br>';}
if(empty($_POST['trans_menge'])){ $error_aus = 1; $meldung .= 'Du musst eine Menge mindestens 1 eingeben.<br>';}
if(!is_numeric($_POST['trans_menge'])){ $error_aus = 1; $meldung .= 'Die Menge darf nur aus Zahlen bestehen.<br>';}
if($error_aus == 0){
$schnittstelle_f = db_query("SELECT * FROM ".$db_prefix."_schnittstelle WHERE aktiv >=2 AND schnittstelle='".$_POST['waehrung']."' LIMIT 1");
if(mysqli_num_rows($schnittstelle_f) != 1){ $error_aus = 1; $meldung .= 'Diese Schnitstelle ist f&uuml;r diese Aktion nicht vorgesehen.<br>';}
}
if($error_aus == 0){
$schnittstelle = mysqli_fetch_array($schnittstelle_f);
if($_POST['trans_menge'] < $schnittstelle['auszahlsumme']){ $error_aus = 1; $meldung .= 'Bitte &uuml;berpr&uuml;fe die Mindestmenge.<br>';}
if($schnittstelle['anfragen_user'] != 0 OR $s_verbrauch > $schnittstelle['anfragen_user']){ $error_aus = 1; $meldung .= 'Die Anfragen sind f&uuml;r heute verbraucht.<br>';}
}
if($error_aus == 0){
$azs = $_POST['trans_menge'];
$_POST['trans_menge'] /= $schnittstelle['punktewert'];
if($_POST['trans_menge'] > $kontodaten['kontostand']){ $error_aus = 1; $meldung .= 'Dein Kontostand reicht nicht aus.<br>';}
}
if($error_aus == 0){
require_once ("lib/schnittstellen/".$schnittstelle['schnittstelle'].".php");
auszahlen ($schnittstelle['betreiber_id'],$schnittstelle['betreiber_passwort'],$konto['kontoid'],$_POST['uid_passwort'],$schnittstelle['betreiber_kennung'],$azs,$schnittstelle['auszahltext'],'');
db_query("INSERT INTO ".$db_prefix."_schnittstelle_anfragen (zeit,uid) VALUES ('".$tag."','".$_SESSION['uid']."')");
if($error == ''){
$betragss = $_POST['trans_menge']*
kontobuchung ('-',$_POST['trans_menge'],$_SESSION['uid']);
buchungsliste ($buchungs_id,'-'.$_POST['trans_menge'],$schnittstelle['auszahltext'],$_SESSION['uid']);
$meldung = 'Es wurden '.$azs.' '.$waehrung.' ausgezahlt, das sind '.$_POST['trans_menge'].' Punkte';
}else{
$errir_aus = 1;
$meldung .= $trans_ausgabe;
}
}
$error = $error_aus;
?>
\ No newline at end of file
require_once('lib/class/ein_aus_zahlung.class.php');
$zahlung = new EIN_AUS_ZAHLUNG;
$zahlung->set_uid($datenbank->escape($_SESSION['uid']));
$zahlung->set_betrag($datenbank->escape($_POST['betrag']));
$zahlung->set_pass($datenbank->escape($_POST['pass']));
$zahlung->set_schnitt($datenbank->escape($_POST['id']));
$zahlung->set_art(2);
$zahlung->auszahlen($_POST);
?>
<?php
$daten = Classloader('daten');
$erg = $daten->user_suche($_POST['anf_email']);