diff --git a/lib/class/ref.class.php b/lib/class/ref.class.php index c5f046cf82ed08c09cc987997f0696f76139b08b..4fa0f03915f75ebb28711010e5879f7352371577 100644 --- a/lib/class/ref.class.php +++ b/lib/class/ref.class.php @@ -17,9 +17,7 @@ class ref{ $this->konto = $k_buchung; $explode = explode(";",$this->config->RefVerg); for($i = 1; $i <= $this->config->RefEbenen; $i++){ - if(!empty($explode[$i-1])){ - $this->verg[$i] = $explode[$i-1]; - } + $this->verg[$i] = $explode[$i-1]; } } @@ -31,11 +29,12 @@ class ref{ private function Ebenverguetung($uid,$werber,$ebene,$ressourcen){ //Bezahlung von Werber in Grundstufe + $user = userinfo($uid); $verguetung = $ressourcen->umsatz /100 * $this->verg[$ebene]; - $this->konto->set_var($werber,$verguetung,'+','Refzahlung ('. $uid .')'); - if($ressourcen->refback > 0){ - $refback = $verguetung / 100 * $ressourcen->refback; - $this->konto->set_var($werber,$refback,'-','Refback ('. $uid .'->'. $ressourcen->refback.'%)'); + 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){ @@ -45,8 +44,7 @@ class ref{ $query = "SELECT * FROM ". PREFIX . WERBER ." WHERE werber = '$uid' "; if($this->db->num_rows($query) != 0){ foreach($this->db->get_results($query) AS $res){ - $ebene++; - $this->Ebenverguetung($res->uid,$werber,$ebene,$res); + $this->Ebenverguetung($res->uid,$werber,$ebene++,$res); } } } @@ -92,46 +90,41 @@ class ref{ } public function RefListe($uid){ - $query = "SELECT * FROM ". PREFIX . WERBER ." WHERE werber = '$uid' "; - if($this->db->num_rows($query) > 0){ - $aus = '<ul class="list-group">'; - foreach($this->db->get_results($query) AS $res){ - $user = userinfo($res->uid); - $refs = $this->RefAnzahl($res->uid); - $aus .= '<li class="list-group-item">'; - $aus .= '<div class="row"> - <div class="col"> '.$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> + $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"> '.$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> - </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> + </form> </div> - '; - } - $aus .= '</li>'; + <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 .= '</ul>'; - }else{ - $aus = '<div class=" alert alert-info">Du hast noch keinen User geworben.</div>'; + $aus .= '</li>'; } + $aus .= '</ul>'; return $aus; } @@ -145,6 +138,8 @@ class ref{ 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); diff --git a/lib/lang/lang.de.php b/lib/lang/lang.de.php index 6af6e027e00bb0c6213108e1f0f46acad789aee4..f5d4609c6fa877243a16487da61c6721de603529 100644 --- a/lib/lang/lang.de.php +++ b/lib/lang/lang.de.php @@ -90,5 +90,7 @@ //Refback define("REFBACK_ERROR_USER_FALSE","Du kannst nur den Refback deiner eigenen Refs bearbeiten.<br>"); + define("REFBACK_ERROR_ZU_VIEL","Du kannst nicht mehr als 100% Refback geben."); + define("REFBACK_ERROR_ZU_WENIG","Du kannst nicht weniger als 0% geben."); define("REFBACK_SAVE_TRUE","Der Refback wurde erfolgreich gespeichert.<br>"); define("REFBACK_SAVE_FALSE","Der Refback konnte nicht gespchert werden.<br>");