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 1781 additions and 37 deletions
<?php
class inaktive{
private $db;
private $config;
public function __construct(){
global $datenbank,$grundconfig;
$this->db = $datenbank;
$this->config = $grundconfig;
}
public function Suchen($zeit){
$aus = '
<table class="table table-striped" id="InaktiveSuchenTable">
<thead>
<tr>
<th>UID</th>
<th>Kontostand</th>
<th>Letzter Login</th>
</tr>
</thead>
<tbody>
';
foreach($this->db->get_results("SELECT uid,kontostand_a,last_active FROM ". PREFIX . KONTO ." WHERE last_active <= $zeit ") AS $res){
if($res->last_active == 0){ $datum = 'nie online';}else{ $datum = date("d.m.Y H:i",$res->last_active);}
$aus .= '
<tr>
<td>'. $res->uid .'</td>
<td>'. number_format($res->kontostand_a,2,',','.') .'</td>
<td>'. $datum .'</td>
</tr>
';
}
$aus .= '</tbody></table>';
return $aus;
}
public function Erinnern($zeit,$mail){
$i = 0;
foreach($this->db->get_results("SELECT uid FROM ". PREFIX . KONTO ." WHERE last_active <= $zeit ") AS $res){
$user = userinfo($res->uid);
$nachricht = ' Hallo '.$user->nickname.'<br>
Leider bist du seit Geraumer Zeit nicht mehr auf '.$this->config->seitenname.' Online gewesen.<br>
Um nicht vom System wegen inaktivität gelöscht zu werden,<br>
bitten wir dich das du dich kurz einmal auf '.$this->config->seitenname.' anmeldest<br>
und wenn du lust hast kannst du ja in zukunft auch noch aktive teilnehmen.<br>
<br>
MFG<br>
'.$this->config->seitenname.' ';
$mail->senden($user->emailadresse,'Inaktiver Account',$nachricht);
$i++;
}
return 'Es wurden '. $i .' Erinnerungen verschickt.';
}
public function Delete($zeit){
$i = 0;
foreach($this->db->get_results("SELECT uid FROM ". PREFIX . KONTO ." WHERE last_active <= $zeit ") AS $res){
$this->db->delete(PREFIX . KONTO, array("uid" => $res->uid),1);
$this->db->delete(PREFIX . USER, array("uid" => $res->uid),1);
$this->db->delete(PREFIX . WERBER, array("uid" => $res->uid),1);
$this->db->delete(PREFIX . NICKP, array("uid" => $res->uid),1);
$this->db->delete(PREFIX . EMAIL, array("uid" => $res->uid),1);
$this->db->delete(PREFIX . BUCH_B, array("uid" => $res->uid),1);
$this->db->delete(PREFIX . MK, array("uid" => $res->uid),1);
$this->db->delete(PREFIX . MULTIK, array("uid" => $res->uid),1);
$this->db->delete(PREFIX . RELOAD, array("uid" => $res->uid),1);
$this->db->delete(PREFIX . BETTELB, array("uid" => $res->uid),1);
$this->db->delete(PREFIX . NOTIZ, array("uid" => $res->uid),1);
$this->db->delete(PREFIX . WERBUNG, array("uid" => $res->uid),1);
$this->db->delete(PREFIX . CHAT, array("uid" => $res->uid),1);
$this->db->delete(PREFIX . NEWSK, array("uid" => $res->uid),1);
$i++;
}
return 'Es wurden '. $i .' Konten gel&ouml;scht.';
}
}
?>
<?php
class konto{
private $uid;
private $betrag;
private $art;
private $verwendung;
private $empfanger;
private $db;
public function __construct(){
global $datenbank;
$this->db = $datenbank;
}
public function set_var($uid,$betrag,$art,$verwendung,$empfaenger = 0){
$this->set_uid($uid);
$this->set_betrag($betrag);
$this->set_art($art);
$this->set_verw($verwendung);
if($empfaenger != 0){ $this->set_empfaenger($empfaenger);}
if($art == '-'){
$this->abzug();
}else{
$this->gutschrift();
}
}
private function set_empfaenger($uid){
$this->empfanger = $uid;
}
private function set_verw($verw){
$this->verwendung = $verw;
}
private function set_uid($uid){
if(!is_numeric($uid)){ $this->uid = 0;}else{ $this->uid = $uid;}
}
private function set_betrag($betrag){
if(!is_numeric($betrag)){ $this->betrag = 0;}else{ $this->betrag = str_replace(",",".",$betrag);}
}
private function set_art($art){
$this->art = $art;
}
private function abzug(){
$konto = $this->kontostand();
$buchung_ok = $this->db->query("UPDATE ". PREFIX . KONTO ." SET kontostand_a = kontostand_a - $this->betrag WHERE uid = '$this->uid' ");
$this->buchungsliste($buchung_ok);
}
private function gutschrift(){
$konto = $this->kontostand();
$buchung_ok = $this->db->query("UPDATE ". PREFIX . KONTO ." SET kontostand_a = kontostand_a + $this->betrag WHERE uid = '$this->uid' ");
$this->buchungsliste($buchung_ok);
}
private function buchungsliste($buchung_ok){
$buch = array(
"uid" => $this->uid,
"buchungszeit" => time(),
"buchungs_id" => create_code(11),
"buchungsmenge" => $this->art . $this->betrag,
"verwendungszweck" => $this->verwendung
);
if($buchung_ok == true){ $buch['buchung_ok'] = 1;}
if($this->db->insert(PREFIX . BUCH , $buch) == true){
meldung(0,KONTO_BUCHUNG_TRUE);
}else{
meldung(1,KONTO_BUCHUNG_FALSE);
}
}
private function kontostand(){
$return = $this->db->get_row("SELECT kontostand_a FROM ". PREFIX . KONTO ." WHERE uid = '$this->uid' ",true);
return $return->kontostand_a;
}
}
<?php
/*
* Copyright vms1-Scripte
* $au = Autentifikation (Admin oder User)
* $sicht = Standartmäßig auf 1 somit wird alles angezeigt
* $sicht = 2 = nur für Gäste (nicht eingeloggt)
*
* function lkt_rally() muss nichts geändert werden
*
*/
class menue{
private $db;
private $num = 1;
private $gconfig;
private $user;
private $session;
public function __construct(){
global $datenbank,$grundconfig,$_SESSION;
$this->db = $datenbank;
$this->gconfig = $grundconfig;
$this->user = userinfo($_SESSION['uid']);
$this->session = $_SESSION;
}
private function make_array($class){
$array = array();
foreach($class AS $c){
$array[] = $c->box;
}
return $array;
}
public function menue_box($au,$sicht = 1){
if($this->session['uid'] == 1){
$query = "SELECT id AS box FROM ". PREFIX . B_AD ." ";
}else{
$query = "SELECT box FROM ". PREFIX . M_AD ." WHERE id IN(". $this->user->seiten .") GROUP BY box ";
}
$row = $this->db->get_results($query);
foreach($this->db->get_results("SELECT id,name FROM ". PREFIX . B_AD ." WHERE id IN(". implode(",",$this->make_array($row)) .") ") AS $res){
menuehead($res->name);
$this->menue_punkt($res->id);
menuefoot();
}
}
/*
private function unterpunkte($id,$me){
$result = $this->db->get_results("SELECT link,name,id FROM ". PREFIX . $me ." WHERE uid = '$id' ");
$aus = '';
foreach($result AS $res){
for($i = 0; $i <= $this->num; $i++){
$aus .= '&nbsp;&nbsp;&nbsp;';
}
$aus .= '<a href="?page=/'. $res->link .'">'. nl2br($res->name) .'</a><br>';
if($this->db->num_rows("SELECT id FROM ". PREFIX . $me ." WHERE uid = $res->id") != 0){$this->num++; $aus .= $this->unterpunkte($res->id,$me);}
}
return $aus;
}
*/
private function menue_punkt($box){
if($this->session['uid'] == 1){
$query = "SELECT * FROM ". PREFIX . M_AD ." WHERE box = '$box'";
}else{
$query = "SELECT id,name,link FROM ". PREFIX . M_AD ." WHERE id IN (". $this->user->seiten .") AND box = '$box' ";
}
foreach($this->db->get_results($query) AS $res){
echo '
<li>
<a class="sidenav-item-link" href="?page=/'. $res->link .'">
<span class="nav-text">'. nl2br($res->name) .'</span>
</a>
</li>';
}
/*
$name = str_replace(" ","_",$name);
if($au == 'Admin'){ $me = M_AD;}elseif($au == 'User'){ $me = M_US;}else{ $au = '';}
$men = $this->db->get_results("SELECT link,name,id FROM ".PREFIX . $me ." WHERE box = '$box' AND uid = '0' ORDER BY ordnung ASC",true);
foreach($men AS $m){
if($this->db->num_rows("SELECT id FROM ". PREFIX . $me ." WHERE uid = $m->id") != 0){ $this->num = 1; echo $this->unterpunkte($m->id,$me);}
}
*/
}
public function lkt_rally(){
menuehead('LKT-Rallysystem bla');
echo '&raquo;&nbsp;<a href="?page=/LKT_addons/LKT_rallysystem"><strong>Rally / Positionen</strong></a><br>';
$rally = $this->db->get_results("SELECT id,name FROM ".PREFIX . RALLY ."",true);
foreach($rally AS $r){
echo '&nbsp;&nbsp;&nbsp;&nbsp;&#8627;&nbsp;<a href="?page=/LKT_addons/LKT_rallysystem2&rally='. $r->id .'">'. $r->name .'></a><br>';
}
menuefoot();
}
}
?>
<?php
class multiKonten{
private $db;
private $gconfig;
private $error = 0;
private $meldung;
private $typen = array();
private $post = array();
public function __construct(){
global $datenbank,$grundconfig;
$this->db = $datenbank;
$this->gconfig = $grundconfig;
}
private function make_array($post){
foreach($post AS $key => $value){
if($key != '' && $key != 'run' && $value != ''){
$this->post[$this->db->escape($key)] = $this->db->escape($value);
}
}
}
public function DeleteMultiKonto($post){
$this->make_array($post);
if($this->db->delete(PREFIX . MULTI, $this->post) == true){
$this->meldung = MULTIT['DEL']['TRUE'];
}else{
$this->error = 1;
$this->meldung = $this->meldung = MULTIT['DEL']['FALSE'];
}
meldung($this->error,$this->meldung);
}
private function SelectTypen(){
return $this->db->get_results("SELECT schnittstelle FROM ". PREFIX . SCHNITT ." ");
}
private function SetHead(){
$aus = '<tr>
<th>UID</th>';
foreach($this->SelectTypen() AS $res){
$this->typen[] = $res->schnittstelle;
$aus .= '<th>'. $res->schnittstelle .'</th>';
}
$aus .= '<th></th></tr>';
return $aus;
}
private function SetArrayUID(){
$aus = array();
foreach($this->db->get_results("SELECT * FROM ". PREFIX . MK ." ORDER BY uid ASC") AS $res){
if(!is_array($aus[$res->uid])) $aus[$res->uid] = array();
$aus[$res->uid][$res->waehrung] = $res->kontoid;
}
return $aus;
}
private function SetForm($uid){
return '
<td>
<form method="post" action="">
<input type="hidden" name="uid" value="'. $uid .'">
<input type="submit" name="run[MultiDelete]" value="L&ouml;schen" class="btn btn-danger btn-sm">
</form>
</td>
';
}
public function ListeMultiKonten(){
$aus = array("head" => $this->SetHead(), "body" => '');
$uid = $this->db->get_results("SELECT uid FROM ". PREFIX . MK ." GROUP BY uid ");
$i = 1;
$array = $this->SetArrayUID();
foreach($array AS $key => $value){
$aus['body'] .= '
<tr>
<td>< href="?page=/usersystem/details&uid='. $key .'">'. $key .'</a></td>';
foreach($this->typen AS $none => $typ){
if(isset($value[$typ])){ $string = $value[$typ];}else{ $string = 'nicht vorhanden';}
$aus['body'] .= '
<td>'. $string .'</td>
';
}
$aus['body'] .= $this->SetForm($key) .'
</tr>
';
}
return $aus;
}
}
?>
\ No newline at end of file
<?php
class mver{
private $db;
private $art;
private $artB;
private $array = array();
private $num = 1;
private $error = 0;
private $meldung;
function __construct(){
global $datenbank;
$this->db = $datenbank;
}
private function make_array($post){
foreach($post AS $key => $value){
if($key != '' && $key != 'run' && $value != ''){
$this->array[$key] = $this->db->escape($value);
}
}
}
public function set_art($art){
if($art == 'user'){ $this->art = M_US; $this->artB = B_US;}
if($art == 'admin'){ $this->art = M_AD; $this->artB = B_AD;}
}
public function select($id){
$aus = '<option value="0"';
if($id == 0){ $aus .= 'selected="selected"';}
$aus .= '>Hauptlink</option>';
$result = $this->db->get_results("SELECT id,name FROM ". PREFIX . $this->art ."");
foreach($result AS $res){
$aus .= "<option value='$res->id'";
if($res->id == $id){ $aus .= 'selected="selected"';}
$aus .= ">$res->name</option>";
}
return $aus;
}
public function selectBox($id){
$aus = '<option value="0"';
if($id == 0){ $aus .= 'selected="selected"';}
$aus .= '>Hauptbox</option>';
$result = $this->db->get_results("SELECT id,name FROM ". PREFIX . $this->artB ."");
foreach($result AS $res){
$aus .= "<option value='$res->id'";
if($res->id == $id){ $aus .= 'selected="selected"';}
$aus .= ">$res->name</option>";
}
return $aus;
}
public function save($post){
$this->make_array($post);
if(!isset($array['uid'])){ $array['uid'] = 0;}
$this->SavePost();
meldung($this->error,$this->meldung);
}
public function SaveInsert($post){
$this->make_array($post);
if(!isset($array['uid'])){ $array['uid'] = 0;}
$this->Insert();
meldung($this->error,$this->meldung);
}
private function Insert(){
if($this->db->insert(PREFIX . $this->art, $this->array) == true){
$this->meldung = MENUE_SAVE_TRUE;
}else{
$this->error = 1;
$this->meldung = MENUE_SAVE_FALSE;
}
}
private function SavePost(){
if($this->db->update(PREFIX . $this->art, $this->array, array("id" => $this->array['id'])) == true){
$this->meldung = MENUE_SAVE_TRUE;
}else{
$this->error = 1;
$this->meldung = MENUE_SAVE_FALSE;
}
}
public function delete($post){
$this->make_array($post);
if($this->db->delete(PREFIX . $this->art, array("id" => $this->array['id'])) == true){
$this->meldung = DELETE_LINK_TRUE;
}else{
$this->error = 1;
$this->meldung = DELETE_LINK_FALSE;
}
}
public function NewListen(){
$aus = '';
$query = "SELECT id,name,link,ordnung,box FROM ". PREFIX . $this->art ." WHERE uid = '0' AND box = '0' ORDER by ordnung ASC";
if($this->db->num_rows($query) != 0){
$aus .= '<h3>Links ohne Zuordnung</h3><ul class="list-group">';
$result = $this->db->get_results($query);
foreach($result AS $res){
$aus .= '
<li class="list-group-item">
<form method="post" action="">
<input type="hidden" name="id" value="'. $res->id .'">
<div class="input-group mb-3">
<div class="input-group-prepend">
<span class="input-group-text" id="basic-addon1">'. $res->id .'</span>
</div>
<input type="text" class="form-control" name="name" value="'. $res->name .'" placeholder="Linkname">
<input type="text" class="form-control" name="link" value="'. $res->link .'" placeholder="link">
<input type="text" class="form-control" name="ordnung" value="'. $res->ordnung .'">
<select class="custom-select" id="inputGroupSelect01">';
$aus .= $this->select(0);
$aus .= '
</select>
<select class="custom-select" name="box" id="inputGroupSelect02">';
$aus .= $this->selectBox($res->box);
$aus .= '
</select>
<div class="input-group-append">
<input type="submit" class="btn btn-outline-danger" name="run[link_'. $this->art .'_delete]" value="L&ouml;schen">
<input type="submit" class="btn btn-outline-success" name="run[link_'. $this->art .'_update]" value="Speichern">
</div>
</div>
</form>
</li>';
}
$aus .= '</ul><hr>';
}
return $aus;
}
public function listen(){
$aus = '<ul class="list-group">';
$result = $this->db->get_results("SELECT id,name,link,ordnung,box FROM ". PREFIX . $this->art ." WHERE uid = '0' ORDER by ordnung ASC");
foreach($result AS $res){
$aus .= '
<li class="list-group-item">
<form method="post" action="">
<input type="hidden" name="id" value="'. $res->id .'">
<div class="input-group mb-3">
<div class="input-group-prepend">
<span class="input-group-text" id="basic-addon1">'. $res->id .'</span>
</div>
<input type="text" class="form-control" name="name" value="'. $res->name .'" placeholder="Linkname">
<input type="text" class="form-control" name="link" value="'. $res->link .'" placeholder="link">
<input type="text" class="form-control" name="ordnung" value="'. $res->ordnung .'">
<select class="custom-select" id="inputGroupSelect01">';
$aus .= $this->select(0);
$aus .= '
</select>
<select class="custom-select" id="inputGroupSelect01">';
$aus .= $this->selectBox($res->box);
$aus .= '
</select>
<div class="input-group-append">
<input type="submit" class="btn btn-outline-danger" name="run[link_'. $this->art .'_delete]" value="L&ouml;schen">
<input type="submit" class="btn btn-outline-success" name="run[link_'. $this->art .'_update]" value="Speichern">
</div>
</div>
</form>
</li>
';
$aus .= $this->unterlisten($res->id,$this->num);
}
$aus .= '</ul>';
return $aus;
}
private function Pfeil(){
$aus = '';
for($i = 0; $i <= $this->num; $i++){
if($i != $this->num){ $aus .= '&nbsp;&nbsp;';}
if($i == $this->num){
$aus .= '<img src="https://img.icons8.com/material/16/000000/down-right.png">';
}
}
return $aus;
}
private function unterlisten($id,$num){
$query = "SELECT id,name,link,ordnung,box FROM ". PREFIX . $this->art ." WHERE uid = '$id' ORDER by ordnung ASC";
$aus = '';
if($this->db->num_rows($query) != 0){
foreach($this->db->get_results($query) AS $res){
$aus .= '
<li class="list-group-item">
<form method="post" action="">
<input type="hidden" name="id" value="'. $res->id .'">
<div class="input-group mb-3">';
$aus .= $this->Pfeil();
$aus .= '
<div class="input-group-prepend">
<span class="input-group-text" id="basic-addon1">'. $res->id .'</span>
</div>
<input type="text" class="form-control" name="name" value="'. $res->name .'" placeholder="Linkname">
<input type="text" class="form-control" name="link" value="'. $res->link .'" placeholder="Link">
<input type="text" class="form-control" name="ordnung" value="'. $res->ordnung .'">
<select class="custom-select" id="inputGroupSelect01">';
$aus .= $this->select($id);
$aus .= '
</select>
<select class="custom-select" id="inputGroupSelect01">';
$aus .= $this->selectBox($res->box);
$aus .= '
</select>
<div class="input-group-append">
<input type="submit" class="btn btn-outline-danger" name="run[link_'. $this->art .'_delete]" value="L&ouml;schen">
<input type="submit" class="btn btn-outline-success" name="run[link_'. $this->art .'_update]" value="Speichern">
</div>
</div>
</form>
</li>
';
$aus .= $this->unterlisten($res->id,$this->num++);
}
}
return $aus;
}
}
<?php
class mysql{
private $db;
private $session = array();
private $post = array();
private $error = 0;
private $meldung;
private $mysqlTXT;
public function __construct(){
global $datenbank,$_SESSION;
$this->db = $datenbank;
$this->session = $_SESSION;
}
private function make_array($post,$file){
foreach($post AS $key => $value){
if($key != '' && $key != 'run' && $value != ''){
$this->post[$key] = $value;
}
}
}
public function ausfuehren($post,$file){
$this->make_array($post,$file);
if($this->session['admin'] != 1){ die("Nicht genemigter Zugriff");}
$this->CheckUpload($file);
if($this->error == 0){
$this->import();
$this->meldung = MYSQL_UPLOAD_TRUE;
}
meldung($this->error,$this->meldung);
}
private function CheckUpload($file){
if(isset($this->post['mysqltxt']) || !empty($this->post['mysqltxt']) ){
$this->post['mysqltxt'] = str_replace(array("\r\n","\n\r", "\n", "\r"),"",$this->post['mysqltxt']);
$this->txt();
}elseif(isset($file)){
$this->file($file);
}
}
private function txt(){
$this->mysqlTXT = str_replace("vms_",PREFIX, $this->post['mysqltxt']);
}
private function file($file){
$endung = strtolower(pathinfo($file['mysqldatei']['name'], PATHINFO_EXTENSION));
if(!in_array($endung,array("sql","txt"))){ $this->error = 1; $this->meldung = MYSQL_DATEITYPE_FALSE;}
if($this->error == 0){
$this->mysqlTXT = str_replace("vms_",PREFIX , file_get_contents($file['mysqldatei']['tmp_name'],true));
}
}
private function import(){
$explode = explode(";",$this->mysqlTXT);
for($i = 0; $i <= count($explode)-1; $i++){
$this->db->query($explode[$i]);
}
}
}
<?php
class NEWS{
private $db;
private $error = 0;
private $meldung;
private $array = array();
private $config;
function __construct(){
global $datenbank,$grundconfig;
$this->db = $datenbank;
$this->config = $grundconfig;
}
private function make_array($post){
foreach($post AS $key => $value){
if($key != '' && $key != 'news4' && $key != 'news3' && $key != 'news2'){
$this->array[$key] = $this->db->escape($value);
}
}
}
private function save(){
if($this->db->insert(PREFIX . NEWS, array("zeit" => time(), "titel" => $this->array['titel'], "news" => $this->array['news'])) == true){
$this->meldung = NEWS_SAVE_TRUE;
}else{
$this->error = 1;
$this->meldung = NEWS_SAVE_FALSE;
}
}
private function newsletter(){
$mail = Classloader('mail');
foreach($this->db->get_results("SELECT emailadresse FROM ". PREFIX . EMAIL ." WHERE freigabe_fuer = '1' ") AS $res){
$mail->senden($res->emailadresse,$this->array['titel'],$this->array['news']);
}
}
private function deleteDB(){
if($this->db->delete(PREFIX . NEWS, array("id" => $this->array['id'])) == true){
$this->meldung = NEWS_DELETE_TRUE;
$this->db->delete(PREFIX . NEWSK, array("news" => $this->array['id']));
}else{
$this->error = 1;
$this->meldung = NEWS_DELETE_FALSE;
}
}
public function delete($post){
$this->make_array($post);
$this->deleteDB();
meldung($this->error,$this->meldung);
}
public function news3($post){
$this->make_array($post);
$this->newsletter();
meldung($this->error,NEWS_NEWSLETTER_TRUE);
}
public function news2($post){
$this->make_array($post);
$this->save();
$this->newsletter();
meldung($this->error,NEWS_MAIL_SAVE_TRUE);
}
public function news4($post){
$this->make_array($post);
$this->save();
meldung($this->error,$this->meldung);
}
public function edit(){
$aus = '
<form method="post" action="">
<div class="input-group mb-3">
<select class="custom-select" name="id">
<option value="0">bitte w&auml;hlen</option>
'. $this->ListeNews() .'
</select>
<div class="input-group-append">
<input type="submit" class="btn btn-success" value="bearbeiten">
<input type="submit" class="btn btn-danger" name="news_delete" value="l&ouml;schen">
</div>
</div>
</form>
';
return $aus;
}
private function ListeNews(){
$aus = '';
foreach($this->db->get_results("SELECT id,titel,zeit FROM ". PREFIX . NEWS ." ") AS $res){
$datum = date("d.m.Y H:i",$res->zeit);
$aus .= "<option value='$res->id'>$res->titel ($datum)</option>";
}
return $aus;
}
}
<?php
class rally{
private $db;
private $error = 0;
private $meldung;
private $post = array();
private $bilanz;
function __construct(){
global $datenbank;
$this->db = $datenbank;
$this->bilanz = Classloader('bilanz');
}
public function RallyListe(){
$aus = '';
foreach($this->db->get_results("SELECT * FROM ". PREFIX . RALLY ." ") AS $res){
$aus .= '
<form action="" method="post">
<tr>
<td>'. $res->name .'</td>
<td>
<input type="hidden" name="id" value="'. $res->id .'">
<input type="submit" name="run[rallyDelete]" class="btn btn-danger" value="L&ouml;schen" style="width:100px;">
</td>
</tr>
</form>
';
}
return $aus;
}
public function RallyDaten(){
$aus = '';
foreach($this->db->get_results("SELECT id,name FROM ". PREFIX . RALLY ." ") AS $res){
$aus .= '<input type="checkbox" value="1" name="rally[' . $res->id . ']"> ' . $res->name . '<br>';
}
return $aus;
}
public function RallyOrte(){
$aus = '<table class="table table-striped">
<tr>
<th>Diese ID<br>müssen Sie<br>in der <br>Funktion<br>eingeben</th>
<th>Beschrieb</th>
<th>Welche rallys</th>
<th>Bearbeiten<br>der <br>einzelnen <br>Positionen</th>
</tr>';
foreach($this->db->get_results("SELECT * FROM ". PREFIX . RALLYO ." ") AS $res){
$ausgabe = '';
foreach($this->db->get_results("SELECT id, name FROM " . PREFIX . RALLY . " ") AS $res2){
$checked = '';
if(in_array($res2->id, explode(",",$res->welche_rallys))){ $checked = 'checked="checked"';}
$ausgabe .= '<input type="checkbox" ' . $checked . ' value="1" name="rally[' . $res2->id . ']"> ' . $res2->name . '<br>';
}
$aus .= '
<tr>
<form action="" method="post">
<td><input type="hidden" name="id" value="'. $res->id .'">'. $res->id .'</td>
<td>'. $res->name .'</td>
<td>'. $ausgabe .'</td>
<td>
<input type="submit" name="run[OrtEdit]" value="bearbeiten" class="btn btn-success"><br>
<input type="submit" name="run[OrtDelete]" value="L&ouml;schen" class="btn btn-danger">
</td>
</form>
</tr>
';
}
$aus .= '</table>';
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 NeueRally($post){
$this->make_array($post);
if($this->db->insert(PREFIX . RALLY, array("name" => $this->post['rallyname']) ) == true){
meldung(0,RALLY_ADD_SAVE_TRUE);
}else{
meldung(1,RALLY_ADD_SAVE_FALSE);
}
}
public function Delete($post){
$this->make_array($post);
if($this->db->delete(PREFIX . RALLY, array("id" => $this->post['id']),1) == true){
meldung(0,RALLY_DELETE_TRUE);
}else{
meldung(1,RALLY_DELETE_FALSE);
}
}
public function AddOrt($post){
$this->make_array($post);
foreach(array_keys($post['rally']) AS $res){
if(!is_numeric($res)){ $this->error = 1;}
}
if($this->error == 0){
$this->post['rally'] = implode(',', array_keys($post['rally']));
$array = array(
"name" => $this->post['name'],
"welche_rallys" => $this->post['rally']
);
if($this->db->insert(PREFIX . RALLYO, $array) == true){
meldung(0,RALLY_ADD_ORT_TRUE);
}else{
meldung(1,RALLY_ADD_ORT_FALSE);
}
}else{
meldung(1,RALLY_ADD_ORT_ERROR);
}
}
public function EditOrt($post){
$this->make_array($post);
foreach(array_keys($post['rally']) AS $res){
if(!is_numeric($res)){ $this->error = 1;}
}
if($this->error == 0){
if($this->db->update(PREFIX . RALLYO, array("welche_rallys" => implode(',', array_keys($post['rally'])) ), array("id" => $this->post['id'])) == true){
meldung(0,RALLY_ORT_EDIT_TRUE);
}else{
meldung(1,RALLY_ORT_EDIT_FALSE);
}
}else{
meldung(1,RALLY_ADD_ORT_ERROR);
}
}
public function OrtDelete($post){
$this->make_array($post);
if($this->db->delete(PREFIX . RALLYO, array("id" => $this->post['id'])) == true){
meldung(0,RALLY_ORT_DELETE_TRUE);
}else{
meldung(1,RALLY_ORT_DELETE_FALSE);
}
}
public function verteilung($id,$daten){
$aus = '<form method="post" action=""><div class="row">';
$ii = 1;
for($i = 1; $i <= 50; $i++){
$pl = 'p'.$i;
$aus .= '<div class="col">
<div class="input-group mb-3">
<div class="input-group-prepend">
<span class="input-group-text" id="basic-addon1">'. $i .'</span>
</div>
<input type="text" name="p'.$i.'" value="'. $daten->$pl .'" class="form-control">
</div>
</div>';
if($ii == 5){
$ii = 1;
$aus .= '</div><div class="row">';
}else{
$ii++;
}
}
$aus .= '</div><br><input type="submit" name="run[rally_verteilung]" value="Speichern" class="btn btn-success btn-block"></form>';
return $aus;
}
public function PlatzUndVerteilung($daten){
$gesperrt = explode(";",$daten->sperruser);
$i = 1;
$aus = '
<form method="post" action="">
<input type="hidden" name="name" value="'. $daten->name .'">
<div class="row">
<div class="col">
<input type="Submit" name="run[RallyReset]" value="Reseten" class="btn btn-danger btn-block">
</div>
<div class="col">
<input type="Submit" name="run[RallyAuswerten]" value="Auswerten" class="btn btn-success btn-block">
</div>
</div>
</form>
<hr>
<table class="table table-striped">
<tr >
<th width="30"><b>Rang</b></th>
<th><b>User</b></th>
<th>'. $daten->einheit.'</th>
<th><b>möglicher Gewinn</th>
<th><b>Mindestpunktzahl</th>
</tr>
';
foreach($this->db->get_results("SELECT uid,punkte FROM ". PREFIX . RALLYU ." WHERE rally = '$daten->id' ORDER BY punkte DESC LIMIT 50") AS $res){
$pl = 'p'.$i;
$user = userinfo($res->uid);
$erreicht = '<td class="alert-danger">nicht erreicht</td>';
if($daten->$pl >= $res->punkte){ $erreicht = '<td class="alert-success">erreicht</td>';}
$explode = explode(",",$daten->sperruser);
if(!in_array($res->uid,$explode)){
$aus .= '
<tr>
<td>'. $i .'</td>
<td>'. $user->nickname .'</td>
<td>'. $res->punkte .'</td>
<td>'. number_format(($daten->gewinn_topf / 100 * $daten->$pl), 2, ',', '.') . '</td>
'. $erreicht .'
</tr>
';
}
$i++;
}
$aus .= '</table>';
return $aus;
}
public function ConfigSave($post){
$this->make_array($post);
if($this->db->update(PREFIX . RALLY, $this->post,array("name" =>$this->post['name'])) == true){
meldung(0,RALLY_CONFIG_SAVE_TRUE);
}else{
meldung(1,RALLY_CONFIG_SAVE_FALSE);
}
}
public function verteilungSave($post,$get){
$this->make_array($post);
$array = array();
for($i = 1; $i <= 50; $i++){
$array['p'.$i] = $this->post['p'.$i];
}
if($this->db->update(PREFIX . RALLY, $array, array("id" => $this->db->escape($get['rally']))) == true){
meldung(0,RALLY_VERTEILUNG_SAVE_TRUE);
}else{
meldung(1,RALLY_VERTEILUNG_SAVE_FALSE);
}
}
public function RallyReset($post){
$this->make_array($post);
$row = $this->db->get_row("SELECT * FROM ". PREFIX . RALLY ." WHERE name = '". $this->post['name'] ."' ",true);
if($this->db->delete(PREFIX . RALLYU, array("rally" => $row->id)) == true){$error1 = true;}else{ $error1 = false;}
if($this->db->update(PREFIX . RALLY, array("ende_punkte_aktuell" => '0', "gewinn_topf" => $row->tagpotstart), array("id" => $row->id),1) == true){ $error2 = true;}else{ $error2 = false;}
if($error1 == true && $error2 == true){
meldung(0,RALLY_RESET_TRUE);
}else{
meldung(1,RALLY_RESET_FALSE);
}
}
public function RallyAuswerten($post,$get){
$konto = Classloader('konto',true);
$rp = 1;
$this->make_array($post);
$this->make_array($get);
$row = $this->db->get_row("SELECT * FROM ". PREFIX . RALLY ." WHERE name = '". $this->post['name'] ."' ",true);
foreach($this->db->get_results("SELECT * FROM ". PREFIX . RALLYU ." WHERE rally = '$row->id' AND ausgezahlt = '0' AND punkte >= '$row->mindestpunktzhl' ORDER BY punkte DESC LIMIT $row->gewinner_anzahl ") AS $res){
$pl = 'p'.$rp;
$gewinn = $row->gewinn_topf / 100 * $row->$pl;
$konto->set_var($res->uid,$gewinn,'+','Gewinn '.$row->name .' Platz '. $rp);
$this->db->update(PREFIX . RALLYU,array("auszahlungssumme" => $gewinn),array("uid" => $res->uid, "ausgezahlt" => '0',"rally" => $row->id),1);
$this->meldung .= ' Die UID ' . $res->uid . ' wahr auf Platz' . $rp . ' und hatt' . $gewinn . ' erhalten <br>';
$this->bilanz->bilanz(0,$gewinn,'Rally',$row->name);
$rp++;
}
$this->db->delete(PREFIX . RALLYU, array("rally" => $row->name, "ausgezahlt" => '0'));
$this->db->update(PREFIX . RALLY, array("ende_punkte_aktuell" => '0', "gewinn_topf" => $row->tagpotstart), array("id" => $row->id),1);
$this->meldung .= RALLY_AUSWERTUNG_TRUE;
meldung(0,$this->meldung);
}
}
<?php
class RUN {
public function sicher($string) {
global $datenbank;
return trim(strip_tags($datenbank->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){
global $datenbank,$error,$meldung;
$query = "SELECT datei FROM ". PREFIX . RUN_INC ." WHERE value = '". $datenbank->escape($value['value']) ."' AND name = '". $datenbank->escape($value['name']) ."' ";
$dat = $datenbank->num_rows($query);
if($dat == 1){
$a = $datenbank->get_row($query,true);
}else{
$error = 1;
$meldung = 'Aktion kann nicht ausgef&uuml;hrt werden.';
}
return $a->datei;
}
}
<?php
class start{
private $db;
private $error = 0;
private $meldung;
private $gconfig;
public function __construct(){
global $datenbank,$grundconfig;
$this->db = $datenbank;
$this->gconfig = $grundconfig;
}
public function Liste(){
$aus = '';
foreach($this->db->get_results("SELECT uid,datum,betrag FROM ". PREFIX . START_LOG ." ") AS $res){
$aus .= '
<tr>
<td>'. $res->uid .'</td>
<td>'. date("d.m.Y H:i",$res->datum) .'</td>
<td>'. number_format($res->betrag) .' </td>
</tr>
';
}
return $aus;
}
}
?>
\ No newline at end of file
<?php
class texte{
private $db;
private $art;
private $post = array();
function __construct(){
global $datenbank;
$this->db = $datenbank;
}
public function Ausgabe(){
$aus = array("kopf" => '', "body" => '');
$i = 0;
foreach($this->db->get_results("SELECT * FROM ". PREFIX . TEXTE ." WHERE name != 'awerbung' ") AS $res){
if($i == 0){ $aktive = 'active';}else{ $aktive = '';}
$aus['kopf'] .= '
<li class="nav-item">
<a class="nav-link '. $aktive .'" id="home-tab" data-toggle="tab" href="#'. $res->name .'" role="tab" aria-controls="home" aria-selected="true">'. $res->name .'</a>
</li>
';
$aus['body'] .= '
<div class="tab-pane fade show '. $aktive .'" id="'. $res->name .'" role="tabpanel" aria-labelledby="home-tab">
<form action="" method="post">
<input type="hidden" name="name" value="'. $res->name .'">
<textarea class="ckeditor" name="text" style="width:90%; height:500px;">'. $res->text.'</textarea><br>
<input type="Submit" name="run[TexteUpdaten]" class="btn btn-default" value="Updaten !">
</form>
</div>
';
$i++;
}
return $aus;
}
public function update($post){
if($this->db->update(PREFIX . TEXTE, array("text" => $this->db->escape($post['text'])), array("name" => $this->db->escape($post['name']))) == true){
meldung(0,TEXTE_SAVE_TRUE);
}else{
meldung(1,TEXTE_SAVE_FALSE);
}
}
public function AWerbung(){
$row = $this->db->get_row("SELECT text FROM ". PREFIX . TEXTE ." WHERE name = 'awerbung' ");
$row = json_decode($row[0]);
return $row;
}
private function make_array($post){
foreach($post AS $key => $value){
if($key != '' && $key != 'run'){
$this->post[$key] = $this->db->escape(base64_encode($value));
}
}
}
public function AWerbungSave($post){
$this->make_array($post);
$string = json_encode($this->post);
if($this->db->update(PREFIX . TEXTE, array("text" => $string), array("name" => "awerbung") ) == true){
meldung(0,WERBUNG_EXTRA_SAVE_TRUE);
}else{
meldung(1,WERBUNG_EXTRA_SAVE_FALSE);
}
}
}
<?php
class userliste{
private $db;
private $uid;
private $array = array();
private $seite;
private $error = 0;
private $meldung;
public function __construct(){
global $datenbank;
$this->db = $datenbank;
}
public function Refschleifen(){
$aus = '<div class="alert alert-danger">';
$i = 0;
foreach($this->db->get_results("SELECT uid,werber FROM ". PREFIX . WERBER ."") AS $row){
$sql2 = "SELECT * FROM ". PREFIX . WERBER ." WHERE uid = " . $row->werber . " AND werber=" . $row->uid;
if ($this->db->num_rows($sql2) >= 1) {
$row = $this->db->get_row($sql2,true);
$i++;
$aus .= 'F&uuml;r die UserId <a href="?page=/usersystem/details&uid='. $row->uid .'">' . $row->uid . '</a> existiert eine RefSchleife (Weber ' . $row->werber . ')!<br />';
}
}
$aus .= '</div>';
if ($i == 0) {
$aus = '<div class="alert alert-success">Es sind keine RefSchleifen vorhanden!</div>';
}
return $aus;
}
public function DoppelAcc(){
$query = "SELECT `login_ip`, COUNT(*) AS `anzahl` FROM `" . PREFIX . KONTO . "` WHERE login_ip != '' GROUP BY `login_ip` HAVING COUNT(*) > 1 ";
if($this->db->num_rows($query) == 0){
$aus = '<div class="alert alert-success">'. DOPPEL_ACC_FALSE .'</div>';
}else{
$aus = $this->ListDoppelAcc($query);
}
return $aus;
}
private function ListDoppelAcc($query){
$aus = '<ul class="list-group">';
foreach($this->db->get_results($query) AS $res){
$aus .= '<li class="list-group-item">
<div class="row">
<div class="col-md-5">'. $res->login_ip .'</div>
<div class="col-md-5">'. $res->anzahl .' mal vorhanden</div>
<div class="col-md-2"><a class="btn btn-info" href="?page=/usersystem/doppelaccis&ip='. $res->login_ip .'">Details</a></div>
</div>
</li>';
}
$aus .= '</ul>';
return $aus;
}
public function DoppelAccIP($ip){
if(!filter_var($ip, FILTER_VALIDATE_IP)){ $ip = 0; }
$aus = '<hr><div class="card"><div class="card-header">User mit der IP: '.$ip.'</div><div class="card-body">';
$query = "SELECT k.uid,u.nickname FROM
" . PREFIX . KONTO . " AS k
LEFT JOIN " . PREFIX . USER . " AS u ON u.uid=k.uid
WHERE k.login_ip='$ip'";
foreach($this->db->get_results($query) AS $res){
$aus .= "<a href='?page=/usersystem/details&uid=$res->uid'>$res->nickname</a><br>";
}
$aus .= '</div></div>';
return $aus;
}
public function DoppelPass(){
$query = "SELECT `passwort`, COUNT(*) AS `anzahl` FROM `" . PREFIX . KONTO . "` GROUP BY `passwort` HAVING COUNT(*) > 1";
if($this->db->num_rows($query) == 0){
$aus = DOPPEL_PASS_FALSE;
}else{
$aus = $this->DoppelAccPass($query);
}
return $aus;
}
private function DoppelAccPass($query){
$aus = '<ul class="list-group">';
foreach($this->db->get_results($query) AS $res){
$aus .= '<li class="list-group-item">
<div class="row">
<div class="col-md-7">'. $res->passwort .'</div>
<div class="col-md-2">'. $res->anzahl .' mal vorhanden</div>
<div class="col-md-2"><a class="btn btn-info" href="?page=/usersystem/doppelaccis&md5='. $res->passwort .'">Details</a></div>
</div>
</li>';
}
$aus .= '</ul>';
return $aus;
}
public function AdminRechteSave($post,$get){
$uid = 0;
if(is_numeric($get['uid'])) $uid = $get['uid'];
$this->make_array($post);
if($this->db->update(PREFIX . KONTO , array("seiten" => implode(",",$this->array['seiten'])), array("uid" => $uid)) == true){
$this->meldung = RECHTE_SET_SAVE_TRUE;
}else{
$this->error = 1;
$this->meldung = RECHTE_SET_SAVE_FALSE;
}
meldung($this->error,$this->meldung);
}
public function RechteListe($row){
$aus = '';
$seiten = explode(",",$row->seiten);
foreach($this->db->get_results("SELECT id,name FROM ". PREFIX . M_AD ." ORDER BY name ASC ") AS $res){
$sele = '';
if(in_array($res->id,$seiten)) $sele = 'selected';
$aus .= '<option value="'. $res->id .'" '. $sele .'>'. $res->name .'</option>';
}
return $aus;
}
public function DoppelPassList($md5){
$md5 = addslashes(htmlspecialchars($md5));
$aus = '<hr><div class="card"><div class="card-header">User mit dem Hash: '.$md5.'</div><div class="card-body">';
$query = "SELECT k.uid,u.nickname FROM
" . PREFIX . KONTO . " AS k
LEFT JOIN " . PREFIX . USER . " AS u ON u.uid=k.uid
WHERE k.passwort='$md5'";
foreach($this->db->get_results($query) AS $res){
$aus .= "<a href='?page=/usersystem/details&uid=$res->uid'>$res->nickname</a><br>";
}
$aus .= '</div></div>';
return $aus;
}
public function liste(){
$aus = '
<table class="table table-bordered table-striped table-responsive" id="Userliste">
<thead>
<tr>
<th>UID</th>
<th>
Kontostand<br>
<small><i>(W&auml;hrung/Bonusw&auml;hrung)</i></small>
</th>
<th>Nickname</th>
<th>Name</th>
<th>Nachname</th>
<th>Emailadresse</th>
<th>Angemeldet</th>
<th></th>
</tr>
</thead>
<tbody>';
$daten = $this->db->get_results("
SELECT
u.*,k.kontostand_a,k.kontostand_b,k.status,e.emailadresse
FROM
". PREFIX . KONTO ." AS k
LEFT JOIN
". PREFIX . USER ." AS u
ON
u.uid=k.uid
LEFT JOIN
" . PREFIX . EMAIL . " AS e
ON
e.uid=k.uid
ORDER BY
k.uid ASC ");
foreach($daten AS $dat){
if($dat->status == 0){
$icon = 'glyphicon-ban-circle';
$alt = 'Best&auml;tigung fehlt';
$color = 'yellow';
}elseif($dat->status == 1){
$icon = 'glyphicon-ok-circle';
$alt = 'freigeschaltet';
$color = 'green';
}elseif($dat->status == 2){
$icon = 'glyphicon-remove-circle';
$alt = 'Gesperrt';
$color = 'red';
}
$aus .= "
<tr>
<td>$dat->uid</td>
<td>".number_format($dat->kontostand_a,2,',','.') ."/". number_format($dat->kontostand_b,2,',','.') ."</td>
<td>$dat->nickname</td>
<td>$dat->vorname</td>
<td>$dat->nachname</td>
<td>$dat->emailadresse</td>
<td>". date("d.m.Y H:i",$dat->angemeldet_seit) ."</td>
<td><a href='?page=/usersystem/details&uid=". $dat->uid ."' class='btn btn-default'>Details</a></td>
</tr>";
}
$aus .= '</tbody></table>';
return $aus;
}
public function profil_save($post){
global $meldung;
$this->make_array($post);
$update = $this->db->update(PREFIX . KONTO , $this->array['konto'], array("uid" => $this->uid));
$update = $this->db->update(PREFIX . EMAIL , $this->array['mail'], array("uid" => $this->uid));
$update = $this->db->update(PREFIX . USER , $this->array['user'], array("uid" => $this->uid));
$update = $this->db->update(PREFIX . WERBER, $this->array['werber'], array("uid" => $this->uid));
$meldung = ALLGEMEINE_DATEN_SAVE;
}
private function make_array($post){
foreach($post AS $key => $value){
if($key != 'profile_save' && $key != 'notice'){
$this->array[$key] = $value;
}
}
}
public function set_uid($uid){
if(!is_numeric($uid)){ $this->uid = 0;}else{$this->uid = $uid;}
}
public function startseite(){
$erg = $this->db->get_row("SELECT COUNT(uid) AS kd_uid , SUM(kontostand_a) AS kd_kontostand FROM ". PREFIX . KONTO ."",true);
return $erg;
}
public function Chart(){
$array = array("label" => "", "ges" => "");
$result = $this->db->get_results("SELECT datum,SUM(ein) AS ein, SUM(aus) as aus FROM ". PREFIX . BILANZ ." GROUP BY datum ORDER BY datum ASC LIMIT 14");
foreach($result AS $res){
$array['label'] .= '"'.date("d.m.",$res->datum).'"' .",";
$array['ges'] .= $res->ein - $res->aus .',';
}
return $array;
}
public function userinfo(){
$daten = $this->db->get_row("
SELECT
u.*,k.*,b.*,e.*,w.*
FROM
". PREFIX . KONTO ." AS k
LEFT JOIN
". PREFIX . USER ." AS u
ON
u.uid=k.uid
LEFT JOIN
" . PREFIX . EMAIL . " AS e
ON
e.uid=k.uid
LEFT JOIN
". PREFIX . BUCH ." AS b
ON
b.uid = k.uid
LEFT JOIN
". PREFIX . WERBER ." AS w
ON
w.uid = k.uid
WHERE k.uid = '$this->uid'
",true);
return $daten;
}
public function set_bseite($seite){
$this->seite = $seite * 30 - 30;
}
public function buchungen($seite = 0){
$aus = array("A" => "", "B" => "");
$bua = $this->db->get_results("SELECT * FROM ". PREFIX . BUCH." WHERE uid='$this->uid' ORDER BY buchungszeit DESC LIMIT $this->seite,30");
foreach($bua AS $b){
if($b->buchungsmenge < 0){ $style = 'class="alert alert-danger"';}else{ $style = 'class="alert alert-success"';}
if($b->buchung_ok == 1){
$erfolg = '<span class="glyphicon glyphicon-ok" style="color:green;" aria-hidden="true"></span>';
}else{
$erfolg = '<span class="glyphicon glyphicon-remove" style="color:red" aria-hidden="true"></span>';
}
$aus['A'] .= '
<tr '.$style.'>
<td>'. date("d.m.Y H:i",$b->buchungszeit) .'</td>
<td>'. $b->buchungs_id .'</td>
<td>'. number_format($b->buchungsmenge,2,',','.') .'</td>
<td>'. $b->verwendungszweck .'</td>
<td>'. $b->buchungs_id .'</td>
<td class="text-center">'. $erfolg .'</td>
</tr>
';
}
$bub = $this->db->get_results("SELECT * FROM ". PREFIX . BUCH_B ." WHERE uid='$this->uid' ORDER BY buchungszeit DESC LIMIT $this->seite,30");
foreach($bub AS $b){
if($b->buchungsmenge < 0){ $style = 'class="alert alert-danger"';}else{ $style = 'class="alert alert-success"';}
if($b->buchung_ok == 1){
$erfolg = '<span class="glyphicon glyphicon-ok" style="color:green;" aria-hidden="true"></span>';
}else{
$erfolg = '<span class="glyphicon glyphicon-remove" style="color:red" aria-hidden="true"></span>';
}
$aus['B'] .= '
<tr '.$style.'>
<td>'. date("d.m.Y H:i",$b->buchungszeit) .'</td>
<td>'. $b->buchungs_id .'</td>
<td>'. number_format($b->buchungsmenge,2,',','.') .'</td>
<td>'. $b->verwendungszweck .'</td>
<td>'. $b->buchungs_id .'</td>
<td class="text-center">'. $erfolg .'</td>
</tr>
';
}
return $aus;
}
public function bettel_ref(){
$aus = '';
$result = $this->db->get_results("SELECT * FROM ". PREFIX . BETTELB ." WHERE uid = '$this->uid' ORDER BY id DESC LIMIT 120");
foreach($result AS $res){
$aus .= '
<tr>
<td>'.date("d.m.Y - H:i", $res->zeit).'</td>
<td>'.number_format($res->betrag,2,",",".").'</td>
<td><a href="'.$res->refferer.'" target="_new">'.$res->refferer.'</a></td>
</tr>
';
}
return $aus;
}
public function ShowNotizen(){
$result = $this->db->get_results("SELECT * FROM ". PREFIX . NOTIZ ." WHERE uid = '$this->uid' ");
foreach($result AS $res){
echo '
<li class="list-group-item">
<div class="row">
<div class="col-md-3">'. date("d.m.Y", $res->datum) .'</div>
<div class="col-md-9">'. nl2br($res->text) .'</div>
</div>
</li>
';
}
}
public function AddNotiz(){
global $_POST,$_GET,$error,$meldung;
$this->make_array($_POST);
if(empty($this->array['text'] )){ $error = 1; $meldung .= NOTIZ_EMPTY;}
if($error == 0){
$eintrag = array(
"uid" => $this->uid,
"text" => $this->array['text'],
"datum" => time()
);
$insert = $this->db->insert(PREFIX . NOTIZ, $eintrag);
if($insert == true){
$meleung = NOTIZ_SAVE_TRUE;
}else{
$error = 1;
$meldung = NOTIZ_SAVE_FALSE;
}
}
}
}
<?php
class WERBUNG{
private $db;
private $post = array();
private $error = 0;
private $meldung = '';
private $menge = 0;
private $mail;
private $gconf;
function __construct(){
global $datenbank,$grundconfig;
$this->mail = Classloader('mail');
$this->db = $datenbank;
$this->gconf = $grundconfig;
}
private function make_array($post){
foreach($post AS $key => $value){
if($key != '' && $key != 'run'){
if($key == 'PaidmailMenge'){
$this->menge = $this->db->escape($value);
}else{
$this->post[$key] = $this->db->escape($value);
}
}
}
}
private function pruefen(){
if(!is_numeric($this->post['menge'])){$this->error = 1; $this->meldung .= FB_MENGE_FALSE;}
if(!$this->post['banner'] or !$this->post['menge'] or !$this->post['ziel'] or !$this->post['reload']){ $this->error = 1; $this->meldung .= FB_FELDER_FALSE;}
if($this->post['reload'] < 1 or $this->post['reload'] > 1440 or !is_numeric($this->post['reload'])){ $this->error = 1; $this->meldung .= FB_RELOAD_FALSE;}
if($this->post['aufendhalt'] < 0 or $this->post['aufendhalt'] > 30 or !is_numeric($this->post['aufendhalt'])){ $this->error = 1; $this->meldung .= FB_AUFENTHALT_FALSE;}
if($this->post['aufendhalt'] > 30 or $this->post['aufendhalt'] < 0 or !is_numeric($this->post['aufendhalt'])){$this->error = 1; $this->meldung .= FB_AUFENTHALT_NUMERIC;}
}
private function insert(){
unset($this->post['gesendet']);
if($this->error == 0){
$insert = $this->db->insert(PREFIX . WERBUNG, $this->post);
if($insert == true){
$this->meldung = FB_INSERT_TRUE;
}else{
$this->error = 1;
$this->meldung = FB_INSERT_FALSE;
}
}
}
private function MailSenden(){
$this->insert();
$betreff = 'Neue ' . $this->gconf->seitenname . ' Paidmail';
$query = "SELECT e.uid,e.emailadresse FROM
" . PREFIX . EMAIL . " e
LEFT JOIN " . PREFIX . KONTO . " k ON k.uid=e.uid
WHERE (e.freigabe_fuer = '3' or e.freigabe_fuer = '2') AND k.status=1 ORDER BY RAND() LIMIT " . $this->menge . "";
$results = $this->db->get_results($query);
foreach($results AS $res){
$ArrayUser = array(
"uid" => $res->uid,
"tan" => $this->post['tan'],
"status" => 0,
"aufendhalt" => $this->post['aufendhalt']
);
$message = 'Hallo,<br>
dieses ist eine neue ' . $this->gconf->seitenname . ' Paidmail, für dessen Bestätigung<br>
Du ' . $this->post['verdienst'] . ' ' . $this->gconf->waehrung . ' für ' . $this->post['aufendhalt'] . ' Sek. aufenthalt erhälst!<br>
<br>
' . $this->post['betreff'] . '<br>
<br>
' . $this->post['text'] . '<br>
--------------------------------------------------------------------<br>
<br>
Die Betreiber von ' . $this->gconf->seitenname . ' distanzieren sich vom Inhalt dieser Mail!<br>
<br>
Diese Mail ist kein Spam da der Empfänger als Mitglied von<br>
' . $this->gconf->seitenname . ' dem Empfang zugestimmt hat.<br>
<br>
Bestätigungslink:<br>
<a href="' . $this->gconf->domain . '/pclick.php?tan=' . $this->post['tan'] . '&uid=' . $res->uid . '">Klick</a><br>
<br>
Mit freundlichen Grüßen <br>
Das ' . $this->gconf->seitenname . ' Team';
$this->mail->senden($res->emailadresse,$betreff,$message);
}
meldung(0,"Es wurden $this->menge Paidmails verschickt.<br>");
}
public function FBEintragen($post){
$this->make_array($post);
$this->pruefen();
$this->insert();
meldung($this->error,$this->meldung);
}
public function PaidMailSenden($post){
$this->make_array($post);
$this->MailSenden();
}
public function PaidMailHist(){
$aus = '';
$query = "SELECT * FROM " . PREFIX . PAIDMAILSEND . " ORDER BY gesendet DESC";
if($this->db->num_rows($query) > 0){
$result = $this->db->get_results($query);
foreach($result AS $res){
$aus .= '
<div class="card">
<div class="card-header">
Paidmail: ' . $res->beschreibung .'
</div>
<div class="card-body">
<div class="row">
<div class="col">
<b>Tan:</b> ' . $res->tan . '<br>
<b>Menge:</b> ' . $res->menge . '<br>
<b>Bestätigt:</b> ' . $res->bestaedigt . ' (' . @round($res->bestaedigt / $res->menge * 100, 2) . ' %)
</div>
<div class="col">
<b>Userverdienst:</b> ' . $res->verdienst . '<br>
<b>Gültig bis:</b> ' . date("d.m.Y - H:i", $res->gueltig) . '<br>
<b>Gesendet am:</b> ' . date("d.m.Y - H:i", $res->gesendet) . '
</div>
<div class="col">
<b>Aufenthalt:</b> ' . $res->aufendhalt . ' Sek.<br>
<textarea class="form-control">' . $res->mailtext . '</textarea>
</div>
</div>';
if ($res->gueltig <= time() or $res->menge == $res->bestaedigt) {
$aus .= '<br><br><a href="?content=/werbesystem/paidmail_hist&amp;tan=' . $res->tan . '&amp;loeschen=true"><b>Löschen!</b></a>';
}
$aus .= '</div></div>';
}
}else{
$aus = 'Momentan sind keine Paidmails verf&uuml;gbar.';
}
return $aus;
}
public function BannerHist(){
$aus = '';
$query = "SELECT * FROM " . PREFIX . WERBUNG . " WHERE sponsor='administrator' and werbeart = 'forcedbanner' and status = '1' ORDER BY kid ASC";
if($this->db->num_rows($query) > 0){
$result = $this->db->get_results($query);
foreach($result AS $res){
$aus .= '
<div class="card" style="width: 468px;">
<img class="card-img-top" src="'. $res->banner .'" alt="Card image cap">
<div class="card-body">
<span class="card-title">Tan: '. $res->tan .'</span>
<br>
<p class="card-text">
<table class="table table-striped">
<tr>
<td>Verg&uuml;tung</td>
<td>' . number_format($res->verdienst, 2, ",", ".") . '</td>
</tr>
<tr>
<td>Ziel</td>
<td><a href="https://' . $res->ziel . '" target="_new">' . $res->ziel . '</a></td>
</tr>
<tr>
<td>Banner</td>
<td><a href="' . $res->banner . '" target="_new">' . $res->banner . '</a></td>
</tr>
<tr>
<td>Reload</td>
<td>' . number_format($res->reload / 60,5,',','.') . 'h </td>
</tr>
<tr>
<td>Rest</td>
<td>' . number_format($res->menge, 0, ",", ".") . ' Klicks</td>
</tr>
<tr>
<td>
<form method="post" action="">
<input type="hidden" name="id" value="'. $res->tan .'">
<input type="submit" name="run[FBDelete]" value="L&ouml;schen" class="btn btn-danger btn-block">
</form>
</td>
</tr>
</table>
</p>
</div>
</div>
';
}
}else{
$aus = '<div class="alert alert-info">Momentan sind keine Adminbanner vorhanden.</div>';
}
return $aus;
}
public function FBDelete($post){
$tan = $this->db->escape($post['id']);
$delete = $this->db->delete(PREFIX . WERBUNG, array("tan" => $tan), 1);
if($delete == true){
meldung(0,DELETE_BANNER_TRUE);
}else{
meldung(1,DELETE_BANNER_FALSE);
}
}
}
<?php
if(isset($_POST['run']['checkAdmin'])){
if($_POST['run']['checkAdmin'] == "Login") {
require_once ($_SERVER['DOCUMENT_ROOT'].'/lib/functions.lib.php');
$page = $datenbank->get_row("SELECT admin_name, admin_pass FROM ". PREFIX . CONFIG ." LIMIT 1",true);
if(base64_encode($_POST['checkin']['loginname']) == $page->admin_name AND pw_erstellen($_POST['checkin']['passwort']) == $page->admin_pass) {
$_SESSION['admin'] = 1;
header("Location: ".$_SERVER['PHP_SELF']."?".$_SERVER['QUERY_STRING']);
}else{
?>
<script>
alert("Fehler beim Einloggen");
</script>
<?php
}
}
}
?>
<?php
$Class = Classloader('betteln',true);
$Class->URLEntsperren($_POST);
?>
\ No newline at end of file
<?php
$Class = Classloader('betteln',true);
$Class->URLSperren($_POST);
?>
\ No newline at end of file
<?php
if(empty($_POST['name_neu'])){ $meldung = array("error" => 1, "meldung" => 'Bitte Namen der Box eingeben.'); }
if(empty($_POST['id'])){ $meldung = array("error" => 1, "meldung" => 'Fehlerhafte ID &Uuml;bertragung.'); }
if(empty($_POST['ordnung'])){ $meldung = array("error" => 1, "meldung" => 'Bitte Ordnungszahl angeben.'); }
if($meldung['error'] != 1){
$insert = db_query("UPDATE ".$db_prefix."_box_admin SET name='".$_POST['name_neu']."', ordnung = '".$_POST['ordnung']."' WHERE id = '".$_POST['id']."' ");
if($insert == true){
$meldung = meldung(0,'Boxinformationen wurden erfolgeich ge&auml;ndert.');
}else{
$meldung = meldung(1,'Fehler beim Updaten der Boxinformationen.');
}
}
?>
\ No newline at end of file
<?php
if(empty($_POST['name'])){ $meldung = array("error" => 1, "meldung" => 'Bitte Namen eingeben'); }
if(empty($_POST['ordnung'])){ $meldung = array("error" => 1, "meldung" => 'Bitte Ordnungszahl eingeben.'); }
if($meldung['error'] != 1){
$zahl = mysqli_fetch_array(db_query("SELECT ordnung FROM ".$db_prefix."_box_admin WHERE ordnung = '".$_POST['ordnung']."' "));
if($zahl['ordnung'] == 0){
db_query("INSERT INTO ".$db_prefix."_box_admin (name,ordnung) VALUES ('".$_POST['name']."','".$_POST['ordnung']."') ");
$meldung = meldung(0,'Box wurde erfolgreich eingetragen');
}else{
$meldung = meldung(1,'Ordnungszahl bereits vorhanden.');
}
}
?>
\ No newline at end of file
<?php
if(empty($_POST['id'])){ $meldung = array("error" => 1, "meldung" => 'Bitte Namen eingeben'); }
if($meldung['error'] != 1){
db_query("DELETE FROM ".$db_prefix."_box_admin WHERE id = '".$_POST['id']."' ");
$meldung = meldung(0,'Box wurde erfolgreich eingetragen');
}
?>
\ No newline at end of file