Advertisement
Guest User

Untitled

a guest
Mar 10th, 2016
96
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 5.43 KB | None | 0 0
  1. <?php
  2. /**
  3.  * Template Name: DKP page
  4.  *
  5.  * Custom display of DKP database
  6.  *
  7.  * @package WordPress
  8.  * @subpackage Twenty_Twelve
  9.  * @since Twenty Twelve 1.0
  10.  */
  11.  
  12. get_header(); ?>
  13.  
  14.     <div id="primary" class="site-content">
  15.         <div id="content" role="main">
  16. <?php
  17. if(is_user_logged_in()) {
  18.     $username = "fgt";
  19.     $password = "fgt";
  20.     $database = "fgt";
  21.     $link     = mysql_connect(localhost, $username, $password);
  22.     if (!$link) {
  23.         die('Could not connect: ' . mysql_error());
  24.     }
  25.     @mysql_select_db($database) or die( "Unable to select database");
  26.     $data = array();
  27.     $earned = array();
  28.     $spent = array();
  29.  
  30.     if (array_key_exists("dkpname", $_GET)) {
  31.         $query = "select * from dkp where name='". $_GET['dkpname'] . "' order by ts desc;";
  32.         $results = mysql_query($query);
  33.         $size = mysql_numrows($results);
  34.         print("<h1>DKP Breakdown for " . $_GET['dkpname'] . "</h1>\n");
  35.         print("<br>\n");
  36.         print("<table class=dkpbreakdown border=1>\n");
  37.         print("<thead>\n");
  38.         print("<tr><td>Date</td><td>Change</td><td>Reason</td></tr>\n");
  39.         print("</thead>\n");
  40.         print("<tbody>\n");
  41.         $accum = 0;
  42.         for ($i = 0; $i < $size; $i++) {
  43.             $delta  = mysql_result($results, $i, "delta");
  44.             $ts     = mysql_result($results, $i, "ts");
  45.             $reason = mysql_result($results, $i, "reason");
  46.             $accum += $delta;
  47.             printf("<tr><td>%s</td><td class=change>%s</td><td>%s</td></tr>\n", $ts, $delta, $reason);
  48.         }
  49.         print("</tbody>\n");
  50.         printf("<tfoot><tr><td>Total</td><td class=change>%d</td></tr></tfoot>\n", $accum);
  51.         print("</table>\n");
  52.         print("<br>\n");
  53.         print("<a href=?>Return to previous page</a>\n");
  54.     } else {
  55.         $attendance = array();
  56.         $query = "select * from dkp where ts > curdate() - interval 2 week and delta > 0";
  57.         $results = mysql_query($query);
  58.         $size = mysql_numrows($results);
  59.         $max = 0;
  60.         for ($i = 0; $i < $size; $i++) {
  61.             $name = mysql_result($results, $i, "name");
  62.             $delta = mysql_result($results, $i, "delta");
  63.             if (array_key_exists($name, $attendance)) {
  64.                 $attendance[$name] += intval($delta);
  65.             } else {
  66.                 $attendance[$name] = $delta;
  67.             }
  68.             if ($attendance[$name] > $max) {
  69.                 $max = $attendance[$name];
  70.             }
  71.         }
  72.         $moattendance = array();
  73.         $query = "select * from dkp where ts > curdate() - interval 1 month and delta > 0";
  74.         $results = mysql_query($query);
  75.         $size = mysql_numrows($results);
  76.         $momax = 0;
  77.         for ($i = 0; $i < $size; $i++) {
  78.             $name = mysql_result($results, $i, "name");
  79.             $delta = mysql_result($results, $i, "delta");
  80.             if (array_key_exists($name, $moattendance)) {
  81.                 $moattendance[$name] += intval($delta);
  82.             } else {
  83.                 $moattendance[$name] = $delta;
  84.             }
  85.             if ($moattendance[$name] > $momax) {
  86.                 $momax = $moattendance[$name];
  87.             }
  88.         }
  89.  
  90.         $query = "select * from dkp";
  91.         $results = mysql_query($query);
  92.  
  93.         $size = mysql_numrows($results);
  94.         for ($i = 0; $i < $size; $i++) {
  95.             $name   = mysql_result($results, $i, "name");
  96.             $delta  = mysql_result($results, $i, "delta");
  97.             if (array_key_exists($name, $data)) {
  98.                 $data[$name] += intval($delta);
  99.                 if (intval($delta) > 0) {
  100.                     $earned[$name] += intval($delta);
  101.                 } else {
  102.                     $spent[$name] += intval($delta);
  103.                 }
  104.             } else {
  105.                 $data[$name] = intval($delta);
  106.                 if (intval($delta) > 0) {
  107.                     $earned[$name] = intval($delta);
  108.                     $spent[$name] = 0;
  109.                 } else {
  110.                     $earned[$name] = 0;
  111.                     $spent[$name] = intval($delta);
  112.                 }
  113.             }
  114.         }
  115.         print("<table class=sortable>\n");
  116.         print("    <thead>\n");
  117.         print("        <tr><td>Name</td><td class='dkp'>DKP</td><td>Earned</td><td>Spent</td><td>2 week attendance</td><td>1 month attendance</td></tr>\n");
  118.         print("    </thead>\n");
  119.         print("    <tbody>\n");
  120.         ksort($data);
  121.         foreach ($data as $key => $value) {
  122.             if (array_key_exists($key, $attendance)) {
  123.                 $curattendance = intval($attendance[$key] / $max * 100);
  124.             } else {
  125.                 $curattendance = 0;
  126.             }
  127.             if (array_key_exists($key, $moattendance)) {
  128.                 $curmoattendance = intval($moattendance[$key] / $momax * 100);
  129.             } else {
  130.                 $curmoattendance = 0;
  131.             }
  132.             printf("        <tr><td><a href=?dkpname=%s>%s</a></td><td class=total>%s</td><td class=total>%s</td><td class=total>%s</td><td class=total>%s</td><td class=total>%s</td></tr>\n", $key, $key, $value,$earned[$key], abs($spent[$key]), $curattendance, $curmoattendance);
  133.         }
  134.         print("    </tbody>\n");
  135.         print("</table>\n");
  136.     }
  137. } else {
  138.     wp_die('Sorry, you must first <a href="/forum">log in</a> to view this page.');
  139. }
  140. ?>
  141.  
  142.         </div><!-- #content -->
  143.     </div><!-- #primary -->
  144.  
  145. <?php get_footer(); ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement