index.php 4.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495
  1. <!doctype html>
  2. <html lang="en">
  3. <head>
  4. <!-- Required meta tags -->
  5. <meta charset="utf-8">
  6. <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
  7. <!-- Bootstrap CSS -->
  8. <link rel="stylesheet" href="//stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css" integrity="sha384-ggOyR0iXCbMQv3Xipma34MD+dH/1fQ784/j6cY/iJTQUOhcWr7x9JvoRxT2MZw1T" crossorigin="anonymous">
  9. <title>Afmeldingen</title>
  10. <style>
  11. .container-fluid {
  12. /* reset width: 100% */
  13. width: auto;
  14. margin: 25px 50px;
  15. padding: 5px 10px;
  16. }
  17. </style>
  18. </head>
  19. <body>
  20. <div class="container-fluid">
  21. <div class="row">
  22. <!-- <div class="col"> -->
  23. <h1>Afmeldingen</h1>
  24. <table class="table table-striped">
  25. <caption>Afmeldingen</caption>
  26. <thead>
  27. <tr>
  28. <th scope="col">#</th>
  29. <th scope="col">datum</th>
  30. <th scope="col">lijn</th>
  31. <th scope="col">naam</th>
  32. <th scope="col">afwezig</th>
  33. <th scope="col">partner</th>
  34. <th scope="col">invaller</th>
  35. <th scope="col">email</th>
  36. <th scope="col">opmerkingen</th>
  37. </tr>
  38. </thead>
  39. <tbody>
  40. </tbody>
  41. </table>
  42. <!-- </div> -->
  43. </div>
  44. </div>
  45. <script
  46. src="//code.jquery.com/jquery-3.4.1.min.js"
  47. integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo="
  48. crossorigin="anonymous"></script>
  49. <script src="//cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js" integrity="sha384-UO2eT0CpHqdSJQ6hJty5KVphtPhzWj9WO1clHTMGa3JDZwrnQq4sF86dIHNDz0W1" crossorigin="anonymous"></script>
  50. <script src="//stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js" integrity="sha384-JjSmVgyd0p3pXB1rRibZUAYoIIy6OrQ6VrjIEaFf/nJGzIxFDsf4x0xIM+B07jRM" crossorigin="anonymous"></script>
  51. <script src="//momentjs.com/downloads/moment.min.js"></script>
  52. <!--suppress JSUnresolvedVariable -->
  53. <script>
  54. $.getJSON('payload.json', (data) => {
  55. console.log(data);
  56. let c = (date) => {
  57. let regex = /^(\d{2})-(\d{2})-(\d{4})$/;
  58. let match = date.match(regex);
  59. let reversed_date = '1970-01-01';
  60. if (match) {
  61. let d = match[1];
  62. let m = match[2];
  63. let y = match[3];
  64. reversed_date = y + '-' + m + '-' + d;
  65. }
  66. return reversed_date;
  67. };
  68. // let c = comparable_date; // Abbreviation
  69. data.sort((a, b) => c(a.Datum) > c(b.Datum) ? 1 : (c(a.Datum) === c(b.Datum)) ? ((a.Lijn > b.Lijn) ? 1 : -1) : -1);
  70. let items = [];
  71. $.each(data, (key, val) => {
  72. console.log('key:', key, ' val:', val);
  73. console.log(moment().subtract(10, 'days').format('YYYY-MM-DD'));
  74. if (c(val["Datum"]) > moment().add(10, 'days').format('YYYY-MM-DD')) {
  75. return;
  76. }
  77. items.push( "<tr>" );
  78. items.push( "<td scope=\"row\">" + (parseInt(key)+1) + "</td>" );
  79. items.push( "<td class=\""+key+"\">" + val["Datum"] + "</td>" );
  80. items.push( "<td class=\""+key+"\">" + val["Lijn"] + "</td>" );
  81. items.push( "<td class=\""+key+"\">" + val["Naam"] + "</td>" );
  82. items.push( "<td class=\""+key+"\">" + val["Afmelding/aanmelding"] + "</td>" );
  83. items.push( "<td class=\""+key+"\">" + val["Naam partner"] + "</td>" );
  84. items.push( "<td class=\""+key+"\">" + val["Naam invaller"] + "</td>" );
  85. items.push( "<td class=\""+key+"\">" + val["Email"] + "</td>" );
  86. items.push( "<td class=\""+key+"\">" + val["Toevoeging"] + "</td>" );
  87. items.push( "</tr>" );
  88. });
  89. $( "<tbody/>", {class: "mydata", html: items.join("")} ).appendTo( "table" );
  90. });
  91. </script>
  92. </body>
  93. </html>