Code:
<?php
userstatus();
function generate_hash($seed) {
$key = md5(str_rot13(md5($seed)));
$hash = substr($key,0,3) . "-";
$hash.= substr($key,4,3) . "-";
$hash.= substr($key,22,3) . "-";
$hash.= substr($key,6,3) . "-";
$hash.= substr($key,9,3);
return(strtoupper($hash));
}
if(isset($_POST["delete"])) {
$gg = 0;
$sql = 'DELETE FROM `' . $db_prefix . '_refkeys` WHERE ';
foreach($_POST["delete"] as $data) {
$sqlr = 'SELECT * FROM `' . $db_prefix . '_refkeys` WHERE `id` = ' . @(int)$data . ' AND `user` = ' . $_SESSION["uid"] . ' LIMIT 1';
$erg = db_query($sqlr);
if(mysql_num_rows($erg) > 0) {
$gs = mysql_fetch_object($erg);
if($gs->permanent == 0 AND $gs->bonus > 0 AND $gs->ref == 0) {
$buchungs_id = create_code(14);
db_query('UPDATE `' . $db_prefix . '_kontodaten` SET `kontostand` = `kontostand` + ' . $gs->bonus . ' WHERE `uid` = ' . $_SESSION['uid'] . ' LIMIT 1');
buchungsliste($buchungs_id,$gs->bonus,"Ref-Gutschein gelöscht",$_SESSION['uid']);
}
if($gg == 0) {
$gg = 1;
}else{
$sql .= ' OR ';
}
$sql .= '`id` = ' . $data;
}
}
db_query($sql);
head("Info");
?>
Die ausgewählten Ref-Gutscheine wurden gelöscht.<br>
Eventuell erhaltene Refs werden davon nicht beeinflusst.<br>
<br>
<a href="?content=/konto/refgutschein">Zurück</a>
<?php
foot();
}elseif(isset($_POST["bonus"]) AND isset($_POST["custom_code"])) {
$permanent = 0;
$code = "";
if(isset($_POST["permanent"])) {
$permanent = 1;
}
if(strlen($_POST["custom_code"])) {
$code = $_POST["custom_code"];
if(preg_match("/[a-zA-Z0-9_-]*/",$code) !== 1 OR @(int)mysql_num_rows(@db_query('SELECT * FROM `' . $db_prefix . '_refkeys` WHERE `key` = \'' . mysql_real_escape_string($code) . '\' LIMIT 1')) > 0) {
$code = generate_hash(microtime() . time());
}
}else{
$code = generate_hash(microtime() . time());
}
$bonus = intval($_POST["bonus"]);
if($bonus == "NaN") {
$bonus = 0;
}
if($bonus < 0) {
$bonus = 0;
}
$can = true;
if($bonus > 0) {
$sql = 'SELECT * FROM `' . $db_prefix . '_kontodaten` WHERE `uid` = ' . $_SESSION["uid"] . ' LIMIT 1';
$erg = db_query($sql);
$usr = mysql_fetch_object($erg);
if($usr->kontostand >= $bonus) {
$buchungs_id = create_code(14);
db_query('UPDATE `' . $db_prefix . '_kontodaten` SET `kontostand` = `kontostand` - ' . $bonus . ' WHERE `uid` = ' . $_SESSION['uid'] . ' LIMIT 1');
buchungsliste($buchungs_id,0 - $bonus,"Gutscheinerstellung",$_SESSION['uid']);
$can = true;
}else{
$can = false;
}
}
if($can == true) {
$sql = 'INSERT INTO `' . $db_prefix . '_refkeys` (`id`, `key`, `user`, `bonus`, `ref`, `permanent`) VALUES (NULL, \'' . mysql_real_escape_string($code) . '\', ' . $_SESSION["uid"] . ', ' . $bonus . ', 0, ' . $permanent . ')';
$res = db_query($sql);
head("Info");
?>Es wurde ein neuer Ref-Gutschein erzeugt. Sollte ein eigener Gutschein-Code angegeben worden sein, welcher entweder schon verwendet wurde oder ungültig ist, wurde dieser mit einem zufälligem Code ersetzt.<br>
<br>
<a href="?content=/konto/refgutschein">Zurück</a><?php
foot();
}else{
head("Fehler");
?>Dein Guthaben reicht nicht aus, um diesen Gutschein zu erstellen.<br>
<br>
<a href="?content=/konto/refgutschein">Zurück</a><?php
foot();
}
}else{
head("Deine Ref-Gutscheine");
$sql = 'SELECT * FROM `' . $db_prefix . '_refkeys` WHERE `user` = ' . @(int)$_SESSION["uid"] . ' ORDER BY `id` DESC';
$erg = db_query($sql);
if(mysql_num_rows($erg) > 0) {
?>
<form action="?content=/konto/refgutschein" method="post">
<?php
while($eintrag = mysql_fetch_object($erg)) {
?>
<div style="margin:3px;border:1px solid gray;padding:4px;"><input id="k<?php echo $eintrag->id;?>" type="checkbox" name="delete[]" value="<?php echo $eintrag->id;?>"></input>
<label for="k<?php echo $eintrag->id;?>">
Code:
</label>
<input onClick="this.select(0,19)" style="width:128px;text-align:center;background:transparent;color:black;border:0px;font-family:Courier new;font-size:10px;border-bottom:1px solid gray;" type="text" readonly value="<?php echo $eintrag->key;?>"></input><br>
<label for="k<?php echo $eintrag->id;?>" style="display:block;margin-left:24px;">
Losegutschrift: <?php echo number_format($eintrag->bonus,2,",",".");?> Klammlose<br>
Permanent: <?php
if($eintrag->permanent == 1) {
echo "Ja";
?> - Verwendet: <b><?php echo number_format($eintrag->ref,0,",",".");?></b> mal<?php
}else{
echo "Nein";
?> - Verbraucht: <b><?php
if($eintrag->ref == 0) {
?><span style="color:green;">Nein</span><?php
}else{
$ref = mysql_fetch_object(db_query('SELECT * FROM `' . $db_prefix . '_userdaten` WHERE `uid` = ' . $eintrag->ref . ' LIMIT 1'));
?><a href="?content=/nickpage&nick=<?php echo urlencode($ref->nickname);?>"><span style="color:red;"><?php echo $ref->nickname;?> (<?php echo $ref->uid;?>)</span></a><?php
}
?></b><?php
}
?>
</label>
</div>
<?php
}
?>
<br>
<div style="text-align:right;" align="right">
<input type="submit" value="Ausgewählte Einträge löschen"></input><br>
</div>
Das Löschen der ausgewählten Einträge hat keinen Effekt auf bereits durch die Gutscheine erhaltenen Ref's.<br>
<b>Es erfolgt keine weitere Abfrage!</b>
</form>
<?php
}else{
?><center>
Du besitzt noch keine Ref-Gutscheine.<br>
Im unteren Formular kannst du dir einen
Ref-Gutschein erzeugen lassen.
</center><?php
}
foot();
head("Ref-Gutschein erzeugen");
?>
<form action="?content=/konto/refgutschein" method="POST">
Hier kannst du dir einen Ref-Gutschein erzeugen lassen. Dieser kann von neuen
Mitgliedern angegeben werden, um einen Bonus bei der Neuanmeldung zu erhalten.
Gibt ein neues Mitglied einen deiner Gutscheine bei der Registrierung an, wird
dieser automatisch als dein Ref eingetragen.<br>
<br>
<b>Losegutschrift:</b><br>
<input style="text-align:right;font-family:Courier New;background:white;color:black;font-size:12px;border:0px;border-bottom:1px solid gray;" pattern="[0-9]*" type="number" value="0" name="bonus"></input> <label for="bonus">Klammlose</label><br>
Hier kannst du einen frei wählbaren, positiven Betrag angeben, welcher einem
neuem Mitglied, welcher deinen Gutscheincode angibt, als Anmeldebonus
gutgeschrieben wird. Der Betrag wird, insofern genügend Guthaben vorhanden ist,
direkt von deinem Konto abgebucht und "aufgespart". Beim Löschen des unbenutzten
Gutscheines wird der Betrag wieder zurückgebucht. Sollte dein Guthaben nicht
ausreichen, wird kein Gutschein erzeugt. Ein Permanent-Gutschein bucht erst dann
von deinem Konto die Gutschrift ab, wenn sich ein neues Mitglied mittels des Gutscheins
hier anmeldet.<br>
<br>
<b>Persöhnlicher Code:</b><br>
<input style="text-align:right;font-family:Courier New;background:white;color:black;font-size:12px;border:0px;border-bottom:1px solid gray;" pattern="[a-zA-Z0-9_-]*" type="text" value="" name="custom_code" maxlength="19"></input><br>
Du kannst hier einen beliebigen, maximal 19 Zeichen langen Text eingeben,
welcher als Gutscheincode verteilt werden kann. Gibst du keinen Code an,
wird ein zufälliger, 19-Zeichen langer Code generiert. Wird der Code bereits
verwendet oder ist ungültig, wird automatisch ein zufälliger Code generiert.<br>
Erlaubte Zeichen: Buchstaben (A bis Z, a bis z), Zahlen (0 bis 9), Unterstrich (_) und Bindestrich (-)<br>
<br>
<input type="checkbox" name="permanent" id="dauergutschein"></input> <label for="dauergutschein">Dauergutschein</label><br>
Soll der Gutschein permanent gültig sein? D. H., dass der Gutschein nach
einmaliger Verwendung nicht verfällt und von anderen Usern weiterhin nutzbar
ist.<br>
Die Wirkung des Gutscheins hält jedoch nur solange an, wie auch genug Lose
auf ihrem Konto für die Losegutschrift vorhanden sind. Sobald die
Losegutschrift nicht ausgeglichen werden kann, verfällt der Effekt des
Gutscheines und der User kann diesen nicht mehr einlösen.<br>
<br>
<input type="submit" value="Ref-Gutschein-Code erzeugen."></input>
</form>
<?
foot();
}
head("Copyright")
?>
<div style="text-align:center;" align="center">
Copyright by <a href="http://www.klamm.de/user/JuliusCaesarIV">JuliusCaesarIV (348575)</a>
</div>
<?php
foot();
?>