feat: cleanup and new form template

This commit is contained in:
ndsboy 2023-07-13 00:01:03 +02:00
parent 8cdce5c08d
commit ba54ec8098
7 changed files with 230 additions and 447 deletions

View file

@ -1,199 +1,100 @@
#set document(
author: "swablab e.V.",
title: "Beitrittserklärung"
)
#import "templates/form.typ": tmpl, form, form_field, form_inline
#set text(
font: "Corbel",
size: 12pt,
lang: "de",
)
#set par(justify: true)
#set page(
paper: "a4",
margin: (x: 2cm, y: 2cm),
)
// Formularfelder
#let cell(
width: 10em,
cell_content: none,
#show: doc => tmpl(
title: "Beitrittserklärung",
version: "v1.5",
doc,
) = {
rect(
fill: rgb("e4e5ea"),
height: 100%,
width: width,
cell_content
)
v(-1em)
text(
size: 9pt,
fill: rgb("000000"),
doc
)
}
// Vorlage Spalte 1
#let cell_text(
doc,
) = {
v(weak: false, 0.5em)
set text(10pt)
align(right, strong(doc))
}
// Version
#place(
top + left,
dx: -18.5em,
dy: 16.75em,
rotate(
90deg,
origin: top + right,
text(
size: 10pt,
fill: rgb("9c9c9c"),
[swablab e.V. / Beitrittserklärung v1.5 / #datetime.today().display("[day].[month].[year]")]
)
)
)
// Logo
#place(
top + right,
dx: 2.5em,
dy: -2.5em,
image("templates/lightmode-swablab.png", width: 25%)
)
#v(-4em)
#text(1.75em, font:"Convergence")[
#heading(outlined: false)[*Beitrittserklärung*]
#block(width: 32em)[
Hiermit trete ich zum #form_inline(), dem swablab e.V. als Mitglied bei und erkenne die Satzung, die Beitragsordnung und die Ziele des Vereins an.
]
#block(
width: 32em,
above: 1.75em,
[
Hiermit trete ich zum #box(height: 0.75em, width: 8em, fill: rgb("e4e5ea"), outset: (y: 3pt)), dem swablab e.V. als Mitglied bei und erkenne die Satzung, die Beitragsordnung und die Ziele des Vereins an.
])
#text(10pt)[
Bitte leserlich in Druckbuchstaben ausfüllen. Alle Felder sind Pflichtangaben.
]
#v(0.5em)
#text(10pt)[Bitte leserlich in Druckbuchstaben ausfüllen. Alle Felder sind Pflichtangaben.]
#form[Name][
#form_field[vorname]
][
#form_field[nachname]
]
// Formular
#grid(
columns: (60pt, auto),
rows: (2em),
gutter: 0.5em,
row-gutter: 1.5em,
cell_text([Name]),
stack(
dir: ltr,
spacing: 0.5em,
cell(width: 50% - 0.25em)[vorname],
cell(width: 50% - 0.25em)[nachname]
),
#form[Anschrift][
#form_field[straße & hausnummer]
][
#form_field[plz & ort]
]
cell_text([Anschrift]),
stack(
dir: ltr,
spacing: 0.5em,
cell(width: 50% - 0.25em)[straße & hausnummer],
cell(width: 50% - 0.25em)[plz & ort],
),
#form[Kontakt][
#form_field[email]
][
#form_field[telefon]
]
cell_text([Kontakt]),
stack(
dir: ltr,
spacing: 0.5em,
cell(width: 50% - 0.25em)[email],
cell(width: 50% - 0.25em)[telefon],
),
#form[Geburtstag][
#form_field[datum]
][]
cell_text([Geburtstag]),
stack(
dir: ltr,
spacing: 0.5em,
cell(width: 50% - 0.25em)[datum],
),
#form[monatlicher\ Beitrag][
#form_field(width: 2em)[voll (16€\*)]
][
#form_field(width: 2em)[ermäßigt (8€\*)]
][
#form_field(width: 2em)[familie (32€\*)]
][
#form_field(width: 2em)[fördermitglied (2€\*)]
][
#form_field[zusätzlicher beitrag]
]
cell_text([monatlicher\ Beitrag]),
stack(
dir: ltr,
spacing: 1.75em,
cell(width: 2em)[voll (16€\*)],
cell(width: 2em)[ermäßigt (8€\*)],
cell(width: 2em)[familie (32€\*)],
cell(width: 2em)[fördermitglied (2€\*)],
cell(width: 5em, cell_content: align(right, []))[selbsgewählter beitrag],
),
cell_text([Unterschrift]),
stack(
dir: ltr,
spacing: 0.5em,
cell(width: 50% - 0.25em)[ort & datum],
cell(width: 50% - 0.25em)[unterschrift (bei minderjährigen der ges. vertr.)]
)
)
#form[Unterschrift][
#form_field[ort & datum]
][
#form_field[unterschrift (bei minderjährigen der ges. vertr.)]
]
#v(0.75em)
#text(10pt)[\* Bitte eines der Felder ankreuzen. Es kann auch ein beliebig höherer Beitrag entrichtet werden.]
#text(10pt)[
\* Bitte eines der Felder ankreuzen. Es kann auch ein beliebig höherer Beitrag entrichtet werden.
]
#v(0.75em)
#strong[SEPA-Lastschriftmandat] \
=== SEPA-Lastschriftmandat
Hiermit ermächtige ich den
#block(
inset: (x: 3em),
[#strong[swablab e.V.], Katharinenstr. 1, 72250 Freudenstadt, Deutschland \
#block(inset: (x: 3em))[
#strong[swablab e.V.], Katharinenstr. 1, 72250 Freudenstadt, Deutschland \
Gläubiger-ID: DE04ZZZ00002388328 \
Mandatsreferenz: #box(height: 0.75em, width: 8em, fill: rgb("e4e5ea"), outset: (y: 3pt)) #text(10pt)[(wird vom Verein vergeben)]
])
Mandatsreferenz: #form_inline() #text(10pt)[(wird vom Verein vergeben)]
]
den jeweils gültigen Vereinsbeitrag bei Fälligkeit zu Lasten meines Kontos mittels Lastschrift einzuziehen. Zugleich weise ich mein Kreditinstitut an, die vom swablab e.V. auf mein Konto gezogenen Lastschriften einzulösen.
#text(10pt)[
Hinweis: Ich kann innerhalb von acht Wochen, beginnend mit dem Belastungsdatum, die Erstattung des belasteten Betrages verlangen. Es gelten dabei die mit meinem Kreditinstitut vereinbarten Bedingungen.]
Hinweis: Ich kann innerhalb von acht Wochen, beginnend mit dem Belastungsdatum, die Erstattung des belasteten Betrages verlangen. Es gelten dabei die mit meinem Kreditinstitut vereinbarten Bedingungen.
]
#grid(
columns: (60pt, auto),
rows: (2em),
gutter: 0.5em,
row-gutter: 1.5em,
cell_text([Kontoinhaber]),
stack(
dir: ltr,
spacing: 0.5em,
cell(width: 50% - 0.25em)[vorname],
cell(width: 50% - 0.25em)[nachname]
),
#form[Kontoinhaber][
#form_field[vorname]
][
#form_field[nachname]
]
cell_text([IBAN]),
stack(
dir: ltr,
spacing: 0.5em,
cell(width: 100%)[iban],
),
#form[IBAN][
#form_field[iban]
]
cell_text([Institut & BIC]),
stack(
dir: ltr,
spacing: 0.5em,
cell(width: 50% - 0.25em)[institut],
cell(width: 50% - 0.25em)[bic],
),
#form[Institut\ & BIC][
#form_field[institut]
][
#form_field[bic]
]
cell_text([Unterschrift]),
stack(
dir: ltr,
spacing: 0.5em,
cell(width: 50% - 0.25em)[ort & datum],
cell(width: 50% - 0.25em)[unterschrift kontoinhaber\ (bei minderjährigen der gesetzliche vertreter)]
)
)
#form[Unterschrift][
#form_field[ort & datum]
][
#form_field[unterschrift kontoinhaber\
(bei minderjährigen der gesetzliche vertreter)]
]

View file

@ -1,78 +1,11 @@
#set document(
author: "swablab e.V.",
title: "Datenschutzrechtliche Hinweise"
)
#import "templates/form.typ": tmpl, form, form_field
#set text(
font: "Corbel",
size: 12pt,
lang: "de",
)
#set par(justify: true)
#set page(
paper: "a4",
margin: (x: 2cm, y: 2cm),
)
// Formularfelder
#let cell(
width: 10em,
#show: doc => tmpl(
title: "Datenschutzrechtliche Hinweise",
version: "v1.2",
doc,
) = {
rect(
fill: rgb("e4e5ea"),
height: 100%,
width: width,
)
v(-1em)
text(
size: 9pt,
fill: rgb("000000"),
doc
)
}
// Vorlage Spalte 1
#let cell_text(
doc,
) = {
v(weak: false, 0.5em)
set text(10pt)
align(right, strong(doc))
}
// Version
#place(
top + left,
dx: -22.85em,
dy: 21.75em,
rotate(
90deg,
origin: top + right,
text(
size: 10pt,
fill: rgb("9c9c9c"),
[swablab e.V. / Datenschutzrechtliche Hinweise v1.2 / #datetime.today().display("[day].[month].[year]")]
)
)
)
// Logo
#place(
top + right,
dx: 2.5em,
dy: -2.5em,
image("templates/lightmode-swablab.png", width: 25%)
)
#text(1.75em, font:"Convergence")[
#heading(outlined: false)[*Datenschutzrechtliche \ Hinweise*]
]
#v(1em)
Der swablab e. V. verarbeitet personenbezogene Daten seiner Mitglieder, sowie bei minderjährigen Mitgliedern auch personenbezogene Daten deren Sorgeberechtigter.
== Verantwortlicher
@ -102,18 +35,10 @@ Das Mitglied hat das Recht, sich bei der Aufsichtsbehörde (Landesdatenschutzbea
#v(1em)
// Unterschrift
#grid(
columns: (50pt, auto),
rows: (2em),
gutter: 0.5em,
row-gutter: 2em,
cell_text([Unterschrift]),
stack(
dir: ltr,
spacing: 0.5em,
cell(width: 50% - 0.25em)[ort & datum],
cell(width: 50% - 0.25em)[unterschrift (bei minderjährigen der ges. vertr.)]
),
)
#form[Unterschrift][
#form_field[ort & datum]
][
#form_field[unterschrift\
(bei minderjährigen der gesetzliche vertreter)]
]

View file

@ -1,159 +1,60 @@
#set document(
author: "swablab e.V.",
title: "Haftungsausschluss"
)
#import "templates/form.typ": tmpl, form, form_field, form_inline
#set text(
font: "Corbel",
size: 12pt,
lang: "de",
)
#set par(justify: true)
#set page(
paper: "a4",
margin: (x: 2cm, y: 2cm),
)
// Formularfelder
#let cell(
width: 10em,
#show: doc => tmpl(
title: "Haftungsausschluss",
version: "v1.0",
doc,
) = {
rect(
fill: rgb("e4e5ea"),
height: 100%,
width: width,
)
v(-1em)
text(
size: 9pt,
fill: rgb("000000"),
doc
)
}
// Vorlage Spalte 1
#let cell_text(
doc,
) = {
v(weak: false, 0.5em)
set text(10pt)
align(right, strong(doc))
}
// Version
#place(
top + left,
dx: -19.5em,
dy: 17.3em,
rotate(
90deg,
origin: top + right,
text(
size: 10pt,
fill: rgb("9c9c9c"),
[swablab e.V. / Haftungsausschluss v1.0 / #datetime.today().display("[day].[month].[year]")]
)
)
)
// Logo
#place(
top + right,
dx: 2.5em,
dy: -2.5em,
image("templates/lightmode-swablab.png", width: 25%)
)
#text(1.75em, font:"Convergence")[
#heading(outlined: false)[*Haftungsauschluss*]
#text(10pt)[
Bitte leserlich in Druckbuchstaben ausfüllen. Alle Felder sind Pflichtangaben.
]
#v(3em)
#form[Name][
#form_field[vorname]
][
#form_field[nachname]
]
Bitte leserlich in Druckbuchstaben ausfüllen. Alle Felder sind Pflichtangaben.
#form[Anschrift][
#form_field[straße & hausnummer]
][
#form_field[plz & ort]
]
#v(1em)
#form[Kontakt][
#form_field[email]
][
#form_field[telefon]
]
// Formular
#grid(
columns: (50pt, auto),
rows: (2em),
gutter: 0.5em,
row-gutter: 2em,
cell_text([Name]),
stack(
dir: ltr,
spacing: 0.5em,
cell(width: 50% - 0.25em)[vorname],
cell(width: 50% - 0.25em)[nachname]
),
cell_text([Anschrift]),
stack(
dir: ltr,
spacing: 0.5em,
cell(width: 50% - 0.25em)[straße & hausnummer],
cell(width: 50% - 0.25em)[plz & ort],
),
cell_text([Kontakt]),
stack(
dir: ltr,
spacing: 0.5em,
cell(width: 50% - 0.25em)[email],
cell(width: 50% - 0.25em)[telefon],
),
cell_text([Geburtstag]),
stack(
dir: ltr,
spacing: 0.5em,
cell(width: 50% - 0.25em)[datum],
)
)
#form[Geburtstag][
#form_field[datum]
][]
#v(2em)
#strong([Datenschutzrechtliche Einwilligungserklärung nach DSGVO]) \
=== Datenschutzrechtliche Einwilligungserklärung nach DSGVO
Mit meiner Unterschrift willige ich (und ggf. mein Kind, s.u.) in die Speicherung und Verarbeitung der von mir angegebenen personenbezogenen Daten ein. Diese sind für die Nutzerverwaltung erforderlich. Unsere vollständige Datenschutzerklärung ist unter #link("https://swablab.de/docs/datenschutz")[swablab.de/docs/datenschutz] einsehbar. \
#strong([Allgemeinen Geschäftsbedingungen (AGB)]) \
=== Allgemeinen Geschäftsbedingungen (AGB)
Mit meiner Unterschrift akzeptiere ich (und ggf. mein Kind, s.u.) die Allgemeinen Geschäftsbedingungen (AGB). Einsehbar unter #link("https://swablab.de/docs/werkstatt-agb")[swablab.de/docs/werkstatt-agb] und als Aushang im swablab. \
#strong([Werkstattregeln]) \
=== Werkstattregeln
Ich bestätige, dass ich (und ggf. mein Kind, s.u.) die Werkstattregeln zur Kenntnis genommen habe und diese befolgen werde. Eine Ersteinweisung in die Werkstatt habe ich erhalten. \
#v(2em)
// Unterschrift
#grid(
columns: (50pt, auto),
rows: (2em),
gutter: 0.5em,
row-gutter: 2em,
cell_text([Unterschrift]),
stack(
dir: ltr,
spacing: 0.5em,
cell(width: 50% - 0.25em)[ort & datum],
cell(width: 50% - 0.25em)[unterschrift (bei minderjährigen der ges. vertr.)]
),
)
#form[Unterschrift][
#form_field[ort & datum]
][
#form_field[unterschrift (bei minderjährigen der ges. vertr.)]
]
#v(2em)
#block(
stroke: 1pt + black,
inset: 0.5em,
[
#strong([Regelung für Minderjährige]) \
Mit meiner Unterschrift bestätige ich,
#box(height: 0.75em, width: 18em, fill: rgb("e4e5ea"), outset: (y: 3pt)),
dass mein Kind
#box(height: 0.75em, width: 18em, fill: rgb("e4e5ea"), outset: (y: 3pt)),
die Werkstatt des swablab e.V. eigenständig und auf eigene bzw. meine Verantwortung und mit meinem Einverständnis nutzen darf. Welche Werkräume und Gerätschaften mein Kind benutzen darf, kläre ich vorab mit meinem Kind. Für die Einhaltung dieser Vereinbarung bin ausschließlich ich in Absprache mit meinem Kind verantwortlich. Die Werkstattbetreiber können und werden nicht die Aufsicht und Kontrolle dieser Vorgaben übernehmen.
])
#block(stroke: 1pt + black,inset: 0.5em)[
=== Regelung für Minderjährige
Mit meiner Unterschrift bestätige ich, #form_inline(), dass mein Kind #form_inline(), die Werkstatt des swablab e.V. eigenständig und auf eigene bzw. meine Verantwortung und mit meinem Einverständnis nutzen darf. Welche Werkräume und Gerätschaften mein Kind benutzen darf, kläre ich vorab mit meinem Kind. Für die Einhaltung dieser Vereinbarung bin ausschließlich ich in Absprache mit meinem Kind verantwortlich. Die Werkstattbetreiber können und werden nicht die Aufsicht und Kontrolle dieser Vorgaben übernehmen.
]

View file

@ -3,6 +3,7 @@
changes: (),
heading_size: 18pt,
heading_font: "Convergence",
text_size: 12pt,
text_font: "Corbel",
doc,
) = {
@ -13,7 +14,7 @@ set document(
set text(
font: text_font,
size: 12pt,
size: text_size,
lang: "de"
)
@ -33,7 +34,7 @@ set enum(
align(center)[
#image("lightmode-swablab.png", width: 70%)
#pad(bottom: 32pt)[
#pad(bottom: 2em)[
#text(1.75em, font: heading_font, hyphenate: false)[
#heading(outlined: false)[*#title*]
]]

96
templates/form.typ Normal file
View file

@ -0,0 +1,96 @@
#let tmpl(
title: none,
version: none,
heading_size: 18pt,
heading_font: "Convergence",
text_size: 12pt,
text_font: "Corbel",
doc,
) = {
set document(
title: title,
author: "swablab e.V."
)
set text(
font: text_font,
size: text_size,
lang: "de"
)
set par(
justify: true
)
set page(
paper: "a4",
margin: (x: 2cm, y: 2cm),
)
// Version
place(
top + left,
dx: -2em,
dy: -0.5em,
rotate(
90deg,
origin: bottom + left,
text(
size: 10pt,
fill: rgb("9c9c9c"),
[swablab e.V. / #title #version / #datetime.today().display("[day].[month].[year]")]
)
)
)
// Logo
place(
top + right,
dx: 2.5em,
dy: -2.5em,
image("lightmode-swablab.png", width: 25%)
)
block(width: 100%-70pt, height: 70pt)[
#par(justify: false)[
#text(1.75em, font:"Convergence")[
#heading(outlined: false)[*#title*]
]
]
]
doc
}
#let form(title, ..fields) = {
grid(
columns: (60pt, ..fields.pos().map(i => 1fr)),
rows: (2em),
gutter: 0.5em,
row-gutter: 1.5em,
text(10pt)[
#align(horizon + right)[
#strong(title)
]
],
..fields
)
}
#let form_field(name, width: 100%) = {
stack(spacing: 2pt)[
#rect(
fill: rgb("e4e5ea"),
width: width,
)
][
#text(9pt, fill: rgb("000000"))[
#name
]
]
}
#let form_inline() = {
box(height: 0.75em, width: 14em, fill: rgb("e4e5ea"), outset: (y: 3pt))
}

View file

@ -28,11 +28,10 @@
+ Kosten für Materialkäufe oder alle anderen Waren und Dienstleistungen sind selbstständig in den dafür vorgesehenen Kassen zu entrichten. Preise sind dementsprechend ausgehängt.
= Öffnungszeiten / Schließungen
+ #block([Der swablab e.V. behält sich vor, in zumutbarer Weise und zumutbarem Umfang
+ #[Der swablab e.V. behält sich vor, in zumutbarer Weise und zumutbarem Umfang
- die Öffnungszeiten zu ändern,
- kurzfristige Schließungen im Falle von Mangel an ehrenamtlicher Personalkapazität,
- kurzfristige Schließungen im Falle technischer Revisionen oder Reparatur- und Wartungsarbeiten vorzunehmen, tageweise Teilbereiche oder den Betrieb insgesamt anlässlich von speziellen Veranstaltungen nach vorheriger Ankündigung zu schließen.]
)
+ Ein Vereinsmitglied des swablab e.V. hat diesbezüglich keinen Anspruch auf Minderung der Mitgliedsbeiträge, da diese Einschränkungen bereits in der Beitragskalkulation zugunsten des Nutzers berücksichtigt sind.
@ -99,11 +98,11 @@
= Daten des Nutzers
+ Der swablab e.V. erhebt, speichert, verarbeitet und nutzt personenbezogene Daten, die er unmittelbar von Nutzern direkt oder über die Nutzung seiner Einrichtungen wie auch seiner Internetseiten erhält.
+ #block([Der swablab e.V. versichert, dass sämtliche Daten seiner Nutzer streng vertraulich behandelt werden und unter Beachtung der einschlägigen Datenschutzvorschriften ausschließlich für
+ #[Der swablab e.V. versichert, dass sämtliche Daten seiner Nutzer streng vertraulich behandelt werden und unter Beachtung der einschlägigen Datenschutzvorschriften ausschließlich für
- die Verwaltung des Nutzungssvertrages,
- die Abwicklung der Nutzungsbeiträge,
- die Übermittlung von neuen Angeboten und aktuellen Informationen durch den swablab e.V. selbst verwendet werden.])
- die Übermittlung von neuen Angeboten und aktuellen Informationen durch den swablab e.V. selbst verwendet werden.]
+ Der Nutzer ist berechtigt, Auskunft über die gespeicherten Daten und kostenfreie Korrektur oder Löschung nach Vertragsende zu verlangen.

View file

@ -1,51 +1,11 @@
#set document(
author: "swablab e.V.",
title: "Verhaltensregeln Werkstatt"
#import "templates/form.typ": tmpl
#show: doc => tmpl(
title: "Verhaltensregeln Werkstatt",
version: "v1.0",
doc,
)
#set text(
font: "Corbel",
size: 12pt,
lang: "de",
)
#set par(justify: true)
#set page(
paper: "a4",
margin: (x: 2cm, y: 2cm),
)
// Version
#place(
top + left,
dx: -21.75em,
dy: 20.15em,
rotate(
90deg,
origin: top + right,
text(
size: 10pt,
fill: rgb("9c9c9c"),
[swablab e.V. / Verhaltensregeln Werkstatt v1.0 / #datetime.today().display("[day].[month].[year]")]
)
)
)
// Logo
#place(
top + right,
dx: 2.5em,
dy: -2.5em,
image("templates/lightmode-swablab.png", width: 25%)
)
#text(1.75em, font:"Convergence")[
#heading(outlined: false)[*Verhaltensregeln Werkstatt*]
]
#v(5em)
- Alle Nutzer*innen müssen vor Nutzung der Werkzeuge eine Einweisung erhalten und eine Einweisungsbestätigung und einen Haftungsausschluss unterzeichnen.
- Jugendliche ab 12 Jahren dürfen nur mit vorheriger Einverständniserklärung der Eltern/Erziehungsberechtigten teilnehmen. Diese muss an den Vorstand übergeben worden sein.
- Kinder unter 12 Jahren dürfen nur unter Aufsicht ihrer Eltern oder Erziehungsberechtigten in der Werkstatt arbeiten.