<?php // Variabeln $rallyname = ($_GET['rally']); $time = time(); // Ralleydaten auslesen $sql = sql::$db->prepare ('SELECT * FROM '._VMS_.'_rallydaten WHERE name = :rallyname LIMIT 1'); $sql -> bindParam(':rallyname', $rallyname, PDO::PARAM_STR); $sql -> execute(); $rally = $sql->fetch(); 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.'; } if ($rally['status'] != 'aktive') { $swf_prozent = 0; $swf_status = "Rally aktuell Inaktive."; } else if (time() < $rally['start']) { $swf_prozent = 0; $swf_status = "Noch nicht gestartet."; } elseif (($rally['ende_art'] == 'zeit' && $rally['ende_zeit'] <= $time) OR ($rally['ende_art'] == 'punkt' && $rally['ende_punkte'] <= $rally['ende_punkte_aktuell'])) { $swf_prozent = 10000; $swf_status = "Erfolgreich Beendet."; } else { if ($rally['ende_art'] == 'zeit') { if ($rally['ende_fortschritt'] == 'datum') { $swf_prozent = number_format(($time - $rally['start']) / ($rally['ende_zeit'] - $rally['start']) * 100, 2, ',', '\''); $swf_status = sectodays($rally['ende_zeit'] - $time); } elseif ($rally['ende_fortschritt'] == '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, 2, ',', '\'');; $swf_status = sectodays($ende - time()); } elseif ($rally['ende_fortschritt'] == '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, 2, ',', '\'');; $swf_status = sectodays($ende - time()); } elseif ($rally['ende_fortschritt'] == '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, 2, ',', '\'');; $swf_status = sectodays($ende - time()); } elseif ($rally['ende_fortschritt'] == '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, 2, ',', '\'');; $swf_status = sectodays($ende - time()); } } else { $swf_prozent = number_format(100 / $rally['ende_punkte'] * $rally['ende_punkte_aktuell'], 2, ',', '\''); $swf_status = 'Es sind noch ' . ($rally['ende_punkte'] - $rally['ende_punkte_aktuell']) . ' ' . $rally['einheit'] . ' bis zum Ende'; } } // Flash Ralley Anzeige echo '<br><br>' . $rally['beschrieb'] . '<br><br> <style type="text/css"> <!-- #rot { background-color: #253c4e; border: 1px; width: 430px; height: 20px; text-align: left; -moz-border-radius: 6px;-webkit-border-radius: 6px;border-radius: 6px; } #fortschritt { background-color: #00FF00; border: 0px; width: ' . number_format($swf_prozent, 0, ',', '\'') . '%; height: 100%; -moz-border-radius: 6px;-webkit-border-radius: 6px;border-radius: 6px; } --> </style> <div style="font-size:17px; line-hight:21px; font-weight:bold;"> <b><font size="+2">Fortschritt<br></font></b><br> <div id="rot"> <div id="fortschritt"></div> </div> <br> Der Rallyfortschrit beträgt ' . ($swf_prozent) . ' Prozent. <br> ' . $swf_status . ' </div><br><br> '; $gesperrt = explode(',', $rally['sperruser']); if (in_array($_SESSION['uid'], $gesperrt)) { echo'<br><b><font size="+1" color="#9F0101">!!Gesperrt!!<br>Sie wurden vom Admin von dieser Rally ausgeschlossen.</font></b><br><br>'; } if ($_SESSION['login'] == 'true') { $sql = sql::$db->prepare("SELECT punkte FROM "._VMS_."_rallyuser WHERE uid=:session_uid AND rally = :rallyname LIMIT 1"); $sql -> bindParam(':session_uid', $_SESSION['uid'], PDO::PARAM_INT); $sql -> bindParam(':rallyname', $rallyname, PDO::PARAM_STR); $sql -> execute(); $rallystand = $sql->fetch(); echo'<h2><font color="#010101">Du hast in der ' . $rallyname . '-Rally bereits ' . number_format($rallystand['punkte'], 0, ",", ".") . ' ' . $rally['ende_formulierung'] . '. (Danke)</font></h2><br>'; } if ($rally['ende_art'] == 'punkt') { echo'Diese ' . $rallyname . '-Rally endet sobald alle gemeinsam ' . $rally['ende_punkte'] . ' ' . $rally['ende_formulierung'] . ' haben.<br> '; } elseif ($rally['ende_fortschritt'] == 'datum') { echo'Diese ' . $rallyname . '-Rally endet am ' . date('j F Y G:i', $rally['ende_zeit']) . '<br>'; } else { echo 'Diese Rally hat kein Ende. Sie wird immer wieder in bestimmten Abständen (' . $rally['ende_fortschritt'] . ') neu gestartet.<br>'; } if ($rally['gewinn_art'] == 'dynamisch') { echo'Es handelt sich bei der ' . $rallyname . '-Rally um eine dynamische Rally. <br> Dies bedeutet der Gewinn pro Rang steigt mit der Aktivität der User in der Rally. <br> Der Gewinn-Topf ist nach oben nicht begrenzt und beträgt aktuell ' . $rally['gewinn_topf'] . ' ' . $system['waehrung'] . '. <br> '; } else { echo'Es handelt sich bei der ' . $rallyname . '-Rally um eine statische Rally. <br> Die gesamte Gewinnsumme beläuft sich auf ' . $rally['gewinn_topf'] . ' ' . $system['waehrung'] . '. <br>'; } if ($rally['mindestpunktzhl'] > '0') { echo'<br>Sie müssen mindestens ' . $rally['mindestpunktzhl'] . ' ' . $rally['ende_formulierung'] . ' haben um in der Rally gewertet zu werden<br><br>'; } echo ' <br> <table width="100%" cellpadding="1" cellspacing="1" border="0" class="tablesorter"> <thead> <tr > <th width="30"><b>Rang</b></th> <th><b>User</b></th> <th width="100"><b>' . $rally['einheit'] . '</b></th> <th width="180"><b>möglicher Gewinn</b></th> <th width="110"><b>Mindestpunktzahl</b></th> </tr> </thead> <tbody>'; $platz = sql::$db->prepare('SELECT k.punkte,u.nickname,u.uid FROM '._VMS_.'_rallyuser k LEFT JOIN '._VMS_.'_userdaten u ON u.uid = k.uid WHERE k.rally = :rallyname AND k.ausgezahlt = "0" ORDER BY k.punkte DESC'); $platz -> bindParam(':rallyname', $rallyname, PDO::PARAM_STR); $platz -> execute(); $rp = 1; $gesperrt = explode(',', $rally['sperruser']); while ($pa = $platz->fetch() ) { if (!in_array($pa['uid'], $gesperrt)) { if ($rally['gewinner_anzahl'] >= $rp) { $mg = number_format(($rally['gewinn_topf'] / 100 * $rally['p' . $rp]), 2, ',', '.') . ' ' . $system['waehrung']; } else $mg = '---'; if ($pa['punkte'] < $rally['mindestpunktzhl']) $mindestpunkt = '<span style="color:#FF6600;">Nicht erreicht.</span>'; if ($pa['punkte'] >= $rally['mindestpunktzhl']) $mindestpunkt = '<span style="color:#339966;">Erreicht.</span>'; echo '<tr> <td align="right">' . $rp++ . '. </td> <td> ' . $pa['nickname'] . '</td> <td align="right">' . number_format($pa['punkte'], 0) . ' </td> <td align="right">' . $mg . ' </td> <td align="right"><strong>' . $mindestpunkt . '</strong></td> </tr>'; } } for($x = $rp;$x < $rally['gewinner_anzahl'] + 1;$x++) { $mg = number_format(($rally['gewinn_topf'] / 100 * $rally['p' . $rp]), 2, ',', '.') . ' ' . $system['waehrung']; $row = ($rp % 2 == 0) ? 0 : 1; $mindestpunkt = '<span style="color:#808080;">Wartend.</span>'; if ($x > $rally['gewinner_anzahl']) $mg = '---'; ?> <tr> <td align="right"><?php echo $rp++;?>. </td> <td> n/a</td> <td align="right">0 </td> <td align="right"><?php echo $mg;?> </td> <td align="right"><strong><?php echo $mindestpunkt;?></strong></td> </tr> <?php } ?> </tbody> </table> <?php foot(); ?>