PageRenderTime 55ms CodeModel.GetById 22ms RepoModel.GetById 0ms app.codeStats 0ms

/admin-draw.php

https://github.com/ellenoneill/lootjestrekmachine
PHP | 139 lines | 139 code | 0 blank | 0 comment | 23 complexity | a95c6db3e5ed78f2fa4eb10b763a77df MD5 | raw file
  1. <?php
  2. include('functions.php');
  3. begin_pagina();
  4. if($_SESSION['login'] == true && $_SESSION['uisadmin'] == 1)
  5. {
  6. echo '<a href="logout.php" class="button logout">Uitloggen</a>';
  7. $sql = "SELECT naam, id, mail, verlang FROM mensen WHERE groep_id = ".$_SESSION['gid']." ORDER BY naam";
  8. $res = mysql_query($sql) or echo_mysql_error($sql);
  9. $sql2 = "SELECT getrokken, tekst FROM groepen WHERE id = ".$_SESSION['gid']." LIMIT 1";
  10. $res2 = mysql_query($sql2) or echo_mysql_error($sql2);
  11. $row2 = mysql_fetch_assoc($res2);
  12. $sql3 = "SELECT IF(g.naam = '','niemand',g.naam) AS getrokkennaam, m.getrokken AS getrokkenid, m.verlang FROM mensen m LEFT JOIN mensen g ON g.id = m.getrokken WHERE m.id = ".$_SESSION['uid']." LIMIT 1";
  13. $res3 = mysql_query($sql3) or echo_mysql_error($sql3);
  14. $row3 = mysql_fetch_assoc($res3);
  15. $_SESSION['ugetrokkennaam'] = $row3['getrokkennaam'];
  16. $_SESSION['ugetrokkenid'] = $row3['getrokkenid'];
  17. $getrokken = $row2['getrokken'] == 1?true:false;
  18. if($_SESSION['uisadmin'] == 1)
  19. {
  20. if($getrokken)
  21. {
  22. echo '<p><a href="admin-draw.php" class="button draw">Trek de lootjes nogmaals</a></p>';
  23. }
  24. else
  25. {
  26. echo '<p><a href="admin-draw.php" class="button draw">Trek de lootjes</a></p>';
  27. }
  28. }
  29. if($_GET['action'] != "now")
  30. {
  31. echo '
  32. <form method="post" action="'.$_SERVER['PHP_SELF'].'">
  33. <fieldset>
  34. <legend>Weet je zeker dat je de trekking nu wilt uitvoeren?</legend>
  35. <p><input type="button" onclick="window.location = \''.$_SERVER['PHP_SELF'].'?action=now\'" value="Ja" /> <input type="button" onclick="window.location = \'login.php\'" value="Nee" /></p>
  36. </fieldset>
  37. </form>
  38. ';
  39. }
  40. else
  41. {
  42. $sql = "SELECT id, naam, mail, verlang, code FROM mensen WHERE groep_id = ".$_SESSION['gid']." ORDER BY naam";
  43. $res = mysql_query($sql) or echo_mysql_error($sql);
  44. $ids = array();
  45. $info = array();
  46. if(mysql_num_rows($res) < 2)
  47. {
  48. echo '
  49. <p class="message warning">Er moeten minstens twee mensen in een groep zitten voor je lootjes kunt trekken.</p>
  50. <p><a href="login.php">&laquo; Terug naar het overzicht</a></p>';
  51. einde_pagina();
  52. exit();
  53. }
  54. else
  55. {
  56. while($row = mysql_fetch_assoc($res))
  57. {
  58. $ids[] = $row['id'];
  59. $info[$row['id']] = $row;
  60. }
  61. $names = $got = $ids;
  62. $himself = true;
  63. $deze = true;
  64. while($himself == true)
  65. {
  66. shuffle($got);
  67. foreach($names as $key => $value)
  68. {
  69. if($value == $got[$key])
  70. {
  71. $deze = true;
  72. }
  73. }
  74. if($deze == true)
  75. {
  76. $himself = true;
  77. }
  78. else
  79. {
  80. $himself = false;
  81. }
  82. $deze = false;
  83. }
  84. foreach($names as $key => $value)
  85. {
  86. if($value == $got[$key])
  87. {
  88. echo '<p class="message warning">Iemand heeft zichzelf getrokken!</p>';
  89. exit();
  90. }
  91. if($value == $_SESSION['uid'])
  92. {
  93. $self = $got[$key];
  94. }
  95. $sql2 = "UPDATE mensen SET getrokken = ".$got[$key]." WHERE id = ".$value." LIMIT 1";
  96. $res2 = mysql_query($sql2) or echo_mysql_error($sql2);
  97. if(empty($info[$got[$key]]['verlang']))
  98. {
  99. $info[$got[$key]]['verlang'] = 'Deze persoon heeft nog geen verlanglijst opgegeven.';
  100. }
  101. mail($info[$value]['naam'].' <'.$info[$value]['mail'].'>', 'Lootje getrokken!', '
  102. Hallo '.$info[$value]['naam'].',
  103. Je hebt de volgende persoon getrokken:
  104. '.$info[$got[$key]]['naam'].'
  105. Hieronder vind je zijn/haar verlanglijst. Deze kan nog aangepast worden, mocht dat gebeuren, dan krijg je een mailtje. De verlanglijst is ook te bekijken op '.$config['website'].'.
  106. '."".$info[$got[$key]]['verlang']."".'
  107. Hieronder vind je jouw inloggegevens ter herinnering:
  108. Groepsnaam: '.$_SESSION['gname'].'
  109. Naam: '.$info[$value]['naam'].'
  110. Inlogcode: '.$info[$value]['code'].'
  111. Met vriendelijke groeten,
  112. De Lootjestrekmachine', 'From: De Lootjestrekmachine <'.$config['mail'].'>');
  113. }
  114. $sql3 = "UPDATE groepen SET getrokken = 1 WHERE id = ".$_SESSION['gid']." LIMIT 1";
  115. $res3 = mysql_query($sql3) or echo_mysql_error($sql3);
  116. if($info[$self]['verlang'] == '')
  117. {
  118. $info[$self]['verlang'] = 'Deze persoon heeft nog geen verlanglijst opgegeven.';
  119. }
  120. echo '
  121. <div class="message success">
  122. <p>De trekking is gedaan! Je hebt zelf <strong>'.$info[$self]['naam'].'</strong> getrokken. Hieronder staat zijn/haar verlanglijst, als hij/zij die heeft ingevuld:</p>
  123. '.nl2br(strip_tags($info[$self]['verlang'])).'
  124. </div>
  125. <p><a href="login.php">&laquo; Terug naar het overzicht</a></p>';
  126. }
  127. }
  128. }
  129. else
  130. {
  131. echo '<p class="message warning">Je moet ingelogd zijn (als beheerder) om deze pagina te kunnen bekijken.</p>';
  132. }
  133. einde_pagina();
  134. ?>