|
@@ -1,3 +1,11 @@
|
|
|
|
+<table class="table table-condensed table-striped">
|
|
|
|
+ <th>Schüler</th><th>Sprecher</th><th>Schuko</th>
|
|
|
|
+ {#each wahlergebnis.filter(s=>s.gewaehlt_schuko > 0 || s.gewaehlt_sprecher > 0) as s}
|
|
|
|
+ <tr>
|
|
|
|
+ <td>{s.vorname}</td><td>{s.gewaehlt_sprecher}</td><td>{s.gewaehlt_schuko}</td>
|
|
|
|
+ </tr>
|
|
|
|
+ {/each}
|
|
|
|
+</table>
|
|
<input type="checkbox" bind:checked={nur_aktive}> Nur aufgestellte Schüler anzeigen.
|
|
<input type="checkbox" bind:checked={nur_aktive}> Nur aufgestellte Schüler anzeigen.
|
|
<div class="columns">
|
|
<div class="columns">
|
|
<div class="column is-two-thirds">
|
|
<div class="column is-two-thirds">
|
|
@@ -19,7 +27,7 @@
|
|
<td class:has-background-success={s.schuko||s.sprecher}>
|
|
<td class:has-background-success={s.schuko||s.sprecher}>
|
|
Schuko: <input checked={s.schuko} type="checkbox" on:click={()=>check_aktiv(s, 'schuko')}>
|
|
Schuko: <input checked={s.schuko} type="checkbox" on:click={()=>check_aktiv(s, 'schuko')}>
|
|
Sprecher: <input checked={s.sprecher} type="checkbox" on:click={()=>check_aktiv(s, 'sprecher')}>
|
|
Sprecher: <input checked={s.sprecher} type="checkbox" on:click={()=>check_aktiv(s, 'sprecher')}>
|
|
- <!-- gewählt: <input checked={s.gewaehlt} type="checkbox" on:click={()=>check_aktiv(s, 'gewaehlt')}> -->
|
|
|
|
|
|
+ gewählt: <input checked={s.gewaehlt} type="checkbox" on:click={()=>check_aktiv(s, 'gewaehlt')}>
|
|
wählbar: <input checked={s.waehlbar} type="checkbox" on:click={()=>check_aktiv(s, 'waehlbar')}>
|
|
wählbar: <input checked={s.waehlbar} type="checkbox" on:click={()=>check_aktiv(s, 'waehlbar')}>
|
|
{#if s.info || s.nachname || s.email}
|
|
{#if s.info || s.nachname || s.email}
|
|
<button class="button is-link tooltip is-tooltip-multiline" data-tooltip={`${s.info || ''} – ${s.Vorname} ${s.nachname || ''} – ${s.email || ''}`}>Infotext</button>
|
|
<button class="button is-link tooltip is-tooltip-multiline" data-tooltip={`${s.info || ''} – ${s.Vorname} ${s.nachname || ''} – ${s.email || ''}`}>Infotext</button>
|
|
@@ -35,6 +43,7 @@
|
|
<script>
|
|
<script>
|
|
export let schueler, privat, einstellungen = {}
|
|
export let schueler, privat, einstellungen = {}
|
|
let nur_aktive
|
|
let nur_aktive
|
|
|
|
+ let wahlergebnis = []
|
|
const { Pool } = R('pg')
|
|
const { Pool } = R('pg')
|
|
const pool = new Pool({ connectionString: privat.mein_bk_db})
|
|
const pool = new Pool({ connectionString: privat.mein_bk_db})
|
|
const check_aktiv = async (s, art) => {
|
|
const check_aktiv = async (s, art) => {
|
|
@@ -54,6 +63,27 @@
|
|
console.log(err.stack)
|
|
console.log(err.stack)
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
+ async function hole_sprecher_ergebnisse () {
|
|
|
|
+ console.log('TEST')
|
|
|
|
+ const query = `SELECT *,
|
|
|
|
+ (SELECT COUNT(*)
|
|
|
|
+ FROM sprecher
|
|
|
|
+ WHERE sprecher.schueler_id = schueler.id
|
|
|
|
+ ) as gewaehlt_sprecher,
|
|
|
|
+ (SELECT COUNT(*)
|
|
|
|
+ FROM schuko
|
|
|
|
+ WHERE schuko.schueler_id = schueler.id
|
|
|
|
+ ) as gewaehlt_schuko
|
|
|
|
+ FROM schueler`
|
|
|
|
+ try {
|
|
|
|
+ const res = await pool.query(query)
|
|
|
|
+ wahlergebnis = res.rows
|
|
|
|
+ }
|
|
|
|
+ catch (e) {
|
|
|
|
+ return []
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ hole_sprecher_ergebnisse()
|
|
</script>
|
|
</script>
|
|
<style>
|
|
<style>
|
|
@import './node_modules/bulma-tooltip/dist/css/bulma-tooltip.min.css';
|
|
@import './node_modules/bulma-tooltip/dist/css/bulma-tooltip.min.css';
|