projektwoche-drucksache.svelte 2.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. <div class="page" orientation="portrait" size="A4">
  2. <div class="main">
  3. <b>Projekte</b>
  4. <dl>
  5. {#each projekte.sort((a,b)=>a.id-b.id) as p}
  6. <p class="has-text-weight-bold">{p.id} – {p.titel}</p>
  7. {/each}
  8. </dl>
  9. </div>
  10. </div>
  11. <div class="page" orientation="portrait" size="A4">
  12. <div class="main">
  13. <b>Raumwünsche</b>
  14. <dl>
  15. {#each projekte as p}
  16. {#if p.raumwunsch || p.medienwunsch || p.info_an_organisationsteam}
  17. <dt class="has-text-weight-bold">{p.id} – {p.titel}</dt>
  18. {#if p.raumwunsch}<dd>Raumwunsch: {p.raumwunsch}</dd>{/if}
  19. {#if p.medienwunsch}<dd>Medienwunsch: {p.medienwunsch}</dd>{/if}
  20. {#if p.info_an_organisationsteam}<dd>Info: {p.info_an_organisationsteam}</dd>{/if}
  21. {/if}
  22. {/each}
  23. </dl>
  24. </div>
  25. </div>
  26. {#each projekte as p}
  27. <div class="page" orientation="portrait" size="A4">
  28. <div class="main">
  29. <h4>{p.titel}</h4>
  30. <b>Das Projekt findet statt: {p.woche ? 'Montag bis Donnerstag':''}{p.mo_di ? 'Montag und Dienstag':''} {p.mo_di && p.mi_do ? '|':''} {p.mi_do ? 'Mittwoch und Donnerstag':''}</b>
  31. <dl>
  32. <dt class="has-text-weight-bold">Beschreibung</dt>
  33. <dd>{@html marked(p.beschreibung||'')}</dd>
  34. <dt class="has-text-weight-bold">Projektleitung</dt>
  35. <dd>{p.leitung}</dd>
  36. <dt class="has-text-weight-bold">Bildungsbeitrag</dt>
  37. <dd>{p.bildung}</dd>
  38. <dt class="has-text-weight-bold">Schulnähe</dt>
  39. <dd>Das Projekt findet <b>{p.schulnah ? '':'nicht'}</b> in der Schule oder näheren Umgebung der Schule statt</dd>
  40. <dt class="has-text-weight-bold">Projektort</dt>
  41. <dd>{p.ort}</dd>
  42. <dt class="has-text-weight-bold">Vortreffen</dt>
  43. <dd>Ein Vortreffen für dieses Projekt findet {p.vortreffen ? 'am Mittwoch XXX':'nicht'} statt.</dd>
  44. <dt class="has-text-weight-bold">Benötigtes Material</dt>
  45. <dd>{p.material || 'keines'}</dd>
  46. <dt class="has-text-weight-bold">Kostenbeitrag</dt>
  47. <dd>{p.kosten || 'keine'}</dd>
  48. </dl>
  49. </div>
  50. </div>
  51. {/each}
  52. <style>
  53. @import 'css/main.css';
  54. </style>
  55. <script>
  56. import marked from 'marked'
  57. export let privat
  58. let projekte = []
  59. const { Pool } = R('pg')
  60. const _ = R('lodash')
  61. const pool = new Pool({ connectionString: privat.mein_bk_db})
  62. function projekte_laden () {
  63. pool.query(`SELECT *,
  64. (SELECT COUNT(*)
  65. FROM wahlen
  66. WHERE projekte.id = wahlen.woche
  67. ) as gewaehlt_woche,
  68. (SELECT COUNT(*)
  69. FROM wahlen
  70. WHERE projekte.id = wahlen.mo_di
  71. ) as gewaehlt_mo_di,
  72. (SELECT COUNT(*)
  73. FROM wahlen
  74. WHERE projekte.id = wahlen.mi_do
  75. ) as gewaehlt_mi_do
  76. FROM projekte`,
  77. (err, resp) => projekte = resp.rows)
  78. }
  79. projekte_laden()
  80. </script>