<div class="page" orientation="portrait" size="A4">
  <div class="main">
    <b>Projekte</b>
    <dl>
      {#each projekte.sort((a,b)=>a.id-b.id) as p}
        <p class="has-text-weight-bold">{p.id} – {p.titel}</p>
      {/each}
    </dl>
  </div>
</div>
<div class="page" orientation="portrait" size="A4">
  <div class="main">
    <b>Raumwünsche</b>
    <dl>
      {#each projekte as p}
        {#if p.raumwunsch || p.medienwunsch || p.info_an_organisationsteam}
        <dt class="has-text-weight-bold">{p.id} – {p.titel}</dt>
        {#if p.raumwunsch}<dd>Raumwunsch: {p.raumwunsch}</dd>{/if}
        {#if p.medienwunsch}<dd>Medienwunsch: {p.medienwunsch}</dd>{/if}
        {#if p.info_an_organisationsteam}<dd>Info: {p.info_an_organisationsteam}</dd>{/if}
        {/if}
      {/each}
    </dl>
  </div>
</div>
{#each projekte as p}
  <div class="page" orientation="portrait" size="A4">
    <div class="main">
      <h4>{p.titel}</h4>
      <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>
      <dl>
        <dt class="has-text-weight-bold">Beschreibung</dt>
        <dd>{@html marked(p.beschreibung||'')}</dd>
        <dt class="has-text-weight-bold">Projektleitung</dt>
        <dd>{p.leitung}</dd>
        <dt class="has-text-weight-bold">Bildungsbeitrag</dt>
        <dd>{p.bildung}</dd>
        <dt class="has-text-weight-bold">Schulnähe</dt>
        <dd>Das Projekt findet <b>{p.schulnah ? '':'nicht'}</b> in der Schule oder näheren Umgebung der Schule statt</dd>
        <dt class="has-text-weight-bold">Projektort</dt>
        <dd>{p.ort}</dd>
        <dt class="has-text-weight-bold">Vortreffen</dt>
        <dd>Ein Vortreffen für dieses Projekt findet {p.vortreffen ? 'am Mittwoch XXX':'nicht'} statt.</dd>
        <dt class="has-text-weight-bold">Benötigtes Material</dt>
        <dd>{p.material || 'keines'}</dd>
        <dt class="has-text-weight-bold">Kostenbeitrag</dt>
        <dd>{p.kosten || 'keine'}</dd>
      </dl>
    </div>
  </div>
{/each}
<style>
  @import 'css/main.css';
</style>
<script>
	import marked from 'marked'
  export let privat
  let projekte = []
  let pp
  let modal = false
  const { Pool } = R('pg')
  const _ = R('lodash')
  const pool = new Pool({ connectionString: privat.mein_bk_db})
  function projekte_laden () {
    pool.query(`SELECT *,
                  (SELECT COUNT(*)
                    FROM wahlen
                    WHERE projekte.id = wahlen.woche
                  ) as gewaehlt_woche,
                  (SELECT COUNT(*)
                    FROM wahlen
                    WHERE projekte.id = wahlen.mo_di
                  ) as gewaehlt_mo_di,
                  (SELECT COUNT(*)
                    FROM wahlen
                    WHERE projekte.id = wahlen.mi_do
                  ) as gewaehlt_mi_do
                FROM projekte`,
      (err, resp) => projekte = resp.rows)
  }
  projekte_laden()
  function modal_toggle (p) {
    pp = p
    modal = true
  }
  function loeschen (p) {
    const query = `DELETE FROM projekte
                   WHERE id = $1`
    pool.query(query, [p.id], (err, res) => {
      if (err) {
        console.log(err)
        return
      }
      projekte = projekte.filter(pp => pp !== p)
    })
  }
  function speichern (pp) {
    const query = `UPDATE projekte
                   SET (titel, leitung, beschreibung, bildung, max_teilnehmer,
                     schulnah, ort, treffpunkt, woche, mo_di, mi_do, vortermin,
                     material, kosten, info_an_organisationsteam, raumwunsch,
                     medienwunsch, presi) = ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10, $11, $12, $13, $14, $15, $16, $17, $18)
                   WHERE projekte.id = $19
                   RETURNING *`
    const value = [pp.titel, pp.leitung, pp.beschreibung, pp.bildung, pp.max_teilnehmer,
                   pp.schulnah, pp.ort, pp.treffpunkt, pp.woche, pp.mo_di, pp.mi_do, pp.vortermin,
                   pp.material, pp.kosten, pp.info_an_organisationsteam, pp.raumwunsch,
                   pp.medienwunsch, pp.presi,
                   pp.id]
    pool.query(query, value, (err, res) => {
      err && console.log(err)
      pp = res[0]
      projekte = projekte
      modal = false
    })
  }
</script>
