Merge branch 'infoZettel' of https://gitea.cwsvjudo.dedyn.io/marko/cwsvJudo into infoZettel

This commit is contained in:
marko
2025-04-29 20:00:13 +02:00
47 changed files with 707 additions and 21 deletions

View File

@@ -0,0 +1,175 @@
#! /usr/bin/env make -f
include Makefile.heliohost.config
cssFiles = $(wildcard src/css/materialize/*.css)
mdFiles = $(wildcard src/md/*.md)
phpFiles = $(patsubst src/md/%.md, build/materialize/%.php, $(mdFiles))
ampFiles = $(patsubst src/md/%.md, build/amp/%.php, $(mdFiles))
phpLibFiles = $(wildcard phpLib/cwsvJudo/*.php) phpLib/phpcount/phpcount.php
wallpapersSrc = $(wildcard graphiken/wallpapers/*.*)
wallpapers = $(patsubst graphiken/wallpapers/%, build/graphiken/wallpapers/%, $(wallpapersSrc))
configFiles = $(wildcard config/*.php)
LN = ln -f
.PHONY: all
all: build/css/cwsvJudo.css pages images
# @todo This should only be temporary. Better outsource the graphics to it's own Makefile.
make -j graphiken
make build/css/cwsvJudo.css
# minimizing wallpaper sizes
build/graphiken/wallpapers/%.jpg: graphiken/wallpapers/%.jpg
guetzli $^ $@
build/graphiken/wallpapers/%.svg: graphiken/wallpapers/%.svg
cp $^ $@
.PHONY: images
images: $(wallpapers)
echo $(wallpapersSrc)
echo $(wallpapers)
.PHONY: clean
clean:
$(RM) -rf build
.PHONY: installDependencies
installDependencies:
if [ ! -d "submodules" ]; then mkdir submodules; fi
# - nodejs
# if [ ! -d "submodules/node" ]; then cd submodules; git clone https://github.com/nodejs/node.git; fi
# cd submodules/node; git fetch; git checkout v22.12.0; ./configure; make -j4;
# - bulma
# - bulma.css
# if [ ! -d "submodules/bulma" ]; then cd submodules; git clone https://github.com/jgthms/bulma; fi
# cd submodules/bulma; git fetch; git checkout 1.0.2;
# - bulma templates
# if [ ! -d "submodules/bulma-templates" ]; then cd submodules; git clone https://github.com/BulmaTemplates/bulma-templates; fi
# cd submodules/bulma-templates; git fetch; git checkout 0.9.4.2;
# - materialize-css
if [ ! -d "submodules/materialize" ]; then cd submodules; git clone https://github.com/materializecss/materialize; fi
cd submodules/materialize; git fetch; git checkout $(VERSION_MATERIALIZE); npm install; npm audit fix; npm run release;
# - google material icons
if [ ! -d "submodules/material-design-icons" ]; then cd submodules; git clone --filter=tree:0 https://github.com/google/material-design-icons.git; fi
cd submodules/material-design-icons; git fetch; git checkout $(VERSION_GOOGLE_MATERIAL_ICONS);
# copy/link all together to get a "distributable" package
# (distributable means: That directory can be uploaded va ftp)
.PHONY: dist
dist: all
rm -rf $(distDir)
mkdir -p $(distDir)
# external dependencies
mkdir -p $(distDir)/httpdocs/ressourcen/css
mkdir -p $(distDir)/httpdocs/ressourcen/js
# - bulma
# $(LN) ./submodules/bulma/css/bulma.min.css $(distDir)/httpdocs/ressourcen/css/
# $(LN) ./submodules/bulma-templates/css/hello-parallax.css $(distDir)/httpdocs/ressourcen/css/
# - materializeCss
$(LN) ./submodules/materialize/dist/css/materialize.min.css $(distDir)/httpdocs/ressourcen/css/
$(LN) ./submodules/materialize/dist/css/materialize.min.css.map $(distDir)/httpdocs/ressourcen/css/
$(LN) ./submodules/materialize/dist/js/materialize.min.js $(distDir)/httpdocs/ressourcen/js/
# page data
mkdir -p $(distDir)/httpdocs/pages/responsive
find ./build/materialize/ -type f -exec $(LN) {} $(distDir)/httpdocs/pages/responsive \;
mkdir -p $(distDir)/httpdocs/pages/shared
find ./src/shared/ -type f -exec $(LN) {} $(distDir)/httpdocs/pages/shared \;
# structured data
mkdir -p $(distDir)/httpdocs/ressourcen/structuredData/json
find src/jsonSd -type f -exec $(LN) {} $(distDir)/httpdocs/ressourcen/structuredData/json \;
# php libs
# - leagacy cwsvJudoLib
mkdir -p $(distDir)/httpdocs/ressourcen/phpLib/cwsvJudo
find ./phpLib/cwsvJudo -type f -exec $(LN) {} $(distDir)/httpdocs/ressourcen/phpLib/cwsvJudo \;
# - QR code generator
mkdir -p $(distDir)/httpdocs/ressourcen/phpLib/phpqrcode
find ./phpLib/phpqrcode -type f -exec $(LN) {} $(distDir)/httpdocs/ressourcen/phpLib/phpqrcode \;
# - api
mkdir -p $(distDir)/
# graphics
# - wappen
mkdir -p $(distDir)/httpdocs/ressourcen/graphiken/logos
find ./build/graphiken/cwsvJudoLogoWappen -type f -exec $(LN) {} $(distDir)/httpdocs/ressourcen/graphiken/logos \;
# - wallpapers
mkdir -p $(distDir)/httpdocs/ressourcen/graphiken/wallpapers
find ./build/graphiken/wallpapers -type f -exec $(LN) {} $(distDir)/httpdocs/ressourcen/graphiken/wallpapers \;
# - icons
mkdir -p $(distDir)/httpdocs/ressourcen/graphiken/icons
find ./graphiken/icons -type f -exec $(LN) {} $(distDir)/httpdocs/ressourcen/graphiken/icons \;
$(LN) ./build/graphiken/favIcons/favicon.ico $(distDir)/httpdocs/favicon.ico
# - banner graphics
mkdir -p $(distDir)/httpdocs/ressourcen/graphiken/banner
find ./graphiken/banner -type f -exec $(LN) {} $(distDir)/httpdocs/ressourcen/graphiken/banner \;
# - videos
mkdir -p $(distDir)/httpdocs/videos.d
find ./res/videos.d -type f -exec $(LN) {} $(distDir)/httpdocs/videos.d \;
# - others
$(LN) ./res/IntegrationDurchSport2018.250x.png $(distDir)/httpdocs/ressourcen/graphiken/logos
# - api
mkdir -p $(distDir)/.local/lib/php/cwsvJudo/api
find ./src/api -type f -exec $(LN) {} $(distDir)/.local/lib/php/cwsvJudo/api \;
# css
mkdir -p $(distDir)/httpdocs/ressourcen/css
$(LN) ./build/css/cwsvJudo.css $(distDir)/httpdocs/ressourcen/css/cwsvJudo.css
# fonts
mkdir -p $(distDir)/httpdocs/ressourcen/fonts
find ./res/fonts -type f -exec $(LN) {} $(distDir)/httpdocs/ressourcen/fonts \;
# htaccess
$(LN) ./src/htaccess/heliohost/.htaccess $(distDir)/httpdocs/.htaccess
$(LN) ./src/htaccess/heliohost/pages/responsive/.htaccess $(distDir)/httpdocs/pages/responsive/.htaccess
# config files
$(LN) ./configs/heliohost/pages.config.inc.php $(distDir)/httpdocs/pages/responsive/config.inc.php
# @todo shouldn't be used any more
mkdir -p $(distDir)/.local
$(LN) configs/local/db.config.php $(distDir)/.local/db.config.php
docker-compose restart
.PHONY: pages
pages: Makefile.heliohost.config $(pandocTemplate) $(phpFiles)
# build the materialize version of the page
build/materialize/%.php: src/md/%.md build/yaml/%.yaml $(pandocTemplate) Makefile.heliohost.config
mkdir -p build/materialize
# create html/php code
pandoc \
--standalone \
--css="ressourcen/css/cwsvJudo.css" \
--template=$(pandocTemplate) \
--to=html \
--wrap=preserve \
--output=$@ \
$< $(word 2,$^)
# npx prettier --check $@
# @toDo: Verzeichnisstruktur überdenken
build/yaml/%.yaml: src/yaml/images.yaml src/yaml/navTargets.yaml src/yaml/mainNav.yaml src/yaml/%.subNav.yaml
mkdir -p build/yaml
python tools/yamlMerge.py $^ > $@
# combine css files into one
build/css/cwsvJudo.css: $(cssFiles)
cat $^ | $(CSSO) -o $@
# .PHONY: download_material_icons
# download_material_icons:
# curl
.PHONY: upload
upload: all
lftp -f scripts/upload-heliohost

View File

@@ -0,0 +1,191 @@
<?php
// server specific variables:
require_once("./config.inc.php");
// database specific variables
require_once($$home."/.local/db.config.php");
// cwsvJudo lib
foreach(["miscAssis", "newsLib", "wkKalender", "galTable", "newsTableHtml", "newsLib", "galleryRedirector"] as $$sublib){
require_once($$basePath."/ressourcen/phpLib/cwsvJudo/".$$sublib.".php");
}
// @todo remove galleries
galleryRedirector();
?>
<!DOCTYPE html>
<html $if(lang)$lang="$lang$" $endif$ $if(dir)$dir="$dir$" $endif$>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes">
$for(author-meta)$
<meta name="author" content="$author-meta$">$endfor$
$if(date-meta)$
<meta name="dcterms.date" content="$date-meta$">$endif$
$if(keywords)$
<meta name="keywords" content="$for(keywords)$$keywords$$sep$, $endfor$">
$endif$
$if(canonicalPath)$
<link rel="canonical" href="<?php echo($$canonicalBaseUrl);?>/$canonicalPath$">
$endif$
$if(ampVersionLink)$
<link rel="amphtml" href="$ampVersionLink$">
$endif$
$if(phpTitleString)$
<title>
<?php echo( $phpTitleString$ );?>
</title>
$else$$if(title)$
<title>$if(title-prefix)$$title-prefix$ $endif$$pagetitle$</title>
$endif$$endif$
$if(phpDescriptionString)$
<meta name="description" content="<?php echo( $phpDescriptionString$ );?>">
$else$$if(description)$
<meta name="description" content="$description$">
$endif$$endif$
$if(css)$$for(css)$
<link rel="stylesheet" href="/$css$">
$endfor$$endif$
<link rel="stylesheet" href="/ressourcen/css/materialize.min.css">
<!--Import Google Icon Font
- @todo replace with local hosted ones
-->
<!-- Material Icons -->
<link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet" />
<!-- Material Symbols - Outlined Set -->
<link href="https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined" rel="stylesheet" />
<!-- Material Symbols - Rounded Set -->
<link href="https://fonts.googleapis.com/css2?family=Material+Symbols+Rounded" rel="stylesheet" />
<!-- Material Symbols - Sharp Set -->
<link href="https://fonts.googleapis.com/css2?family=Material+Symbols+Sharp" rel="stylesheet" />
$if(extraCss)$$for(extraCss)$
<link rel="stylesheet" href="/$extraCss$">
$endfor$$endif$
$if(jsLibs)$$for(jsLibs)$
<script src="$jsLibs$" type="text/javascript"></script>
$endfor$$endif$
<script type='application/ld+json'>
{
"@context": "http://www.schema.org",
"@type": "WebSite",
$if(phpTitleString)$
"name": "<?php echo( $phpTitleString$ );?>",
$else$
"name": "$title$",
$endif$
"alternateName": "$description$",
$if(canonicalPath)$
"url": "<?php echo($$canonicalBaseUrl);?>/$canonicalPath$",
$else$
"url": "<?php echo($$canonicalBaseUrl);?>",
$endif$
"image": <?php echo($$canonicalBaseUrl);?>/ressourcen/graphiken/logos/cwsvJudoLogoWappen.256w.png"
}
</script>
</head>
<body>
<header>
<nav class="nav-extended">
<div class="nav-wrapper" style="font-family: 'Orbitron-Medium', Impact, Charcoal, sans-serif;">
<!-- <img style="height:100%;width:auto;" width="128" height="104" title="Judo im Chemnitzer WSV"
alt="Judo im Chemnitzer WSV - Logo" src="/ressourcen/graphiken/logos/cwsvJudoLogoWappen.128w.png"
srcset="/ressourcen/graphiken/logos/cwsvJudoLogoWappen.256w.png 2x"> -->
<a href="/" class="brand-logo">
<span>cwsvJudo</span>
</a>
$if(mainNav)$
<ul id="nav-mobile" class="right">
$for(mainNav)$
<li>
<a href="$mainNav.url$" $if(mainNav.caption)$title="$mainNav.caption$" $endif$
$if(mainNav.active)$class="active" $endif$>
$if(mainNav.caption)$<span>$mainNav.caption$</span>$endif$
</a>
</li>
$endfor$
</ul>
$endif$
</div>
<div class="nav-content">
$if(subNav)$
<ul class="tabs tabs-transparent">
$for(subNav)$
<li class="tab">
<a href="$subNav.url$" $if(subNav.caption)$title="$subNav.caption$" $endif$
$if(subNav.active)$class="activeNav" $endif$>
<!-- $if(subNav.icon)$
<img src="$if(subNav.icon.src)$$subNav.icon.src$$else$$subNav.icon$$endif$"
$if(subNav.caption)$ alt="$subNav.caption$" $else$ $if(subNav.icon.alt)$
alt="$subNav.icon.alt$" $endif$ $endif$ $if(subNav.icon.width)$
width="$subNav.icon.width$" $endif$ $if(subNav.icon.height)$
height="$subNav.icon.height$" $endif$ $if(subNav.icon.title)$
title="$subNav.icon.title$" $endif$ $if(subNav.icon.srcset)$
srcset="$subNav.icon.srcset$" $endif$>
$endif$ -->
$if(subNav.caption)$<span>$subNav.caption$</span>$endif$
</a>
</li>
$endfor$
</ul>
$endif$
</div>
</nav>
</header>
<main>
$body$
</main>
<footer class="page-footer">
<div class="container">
<div class="row">
<div class="s4 m2 l1">
<a class="btn filled" title="Seite auf HTML 5 Konformität prüfen"
href="http://validator.w3.org/check?uri=<?php echo(urlencode(getCurPagesUrl()));?>"
rel="nofollow">Valid
<i class="material-icon">html</i>
</a>
</div>
<div class="s4 m2 l1">
<a class="btn filled"
title="Möglichkeiten mit dem Chemnitzer Freizeit- und Wohngebietssportverein in Kontakt zu treten"
href="/kontakt">Kontakt</a>
</div>
<div class="s4 m2 l1">
<a class="btn filled" title="Impressum" href="<?php echo($$baseUrl);?>/impressum">Impressum</a>
</div>
<div class="s4 m2 l1">
<a class="btn filled" title="Datenschutz"
href="<?php echo($$baseUrl);?>/datenschutz">Datenschutz</a>
</div>
<div class="s4 m2 l1">
<a class="btn filled" title="News-Feed Abonnieren" href="http://cwsvjudo.bplaced.net/rss"><i
class="material-icon">Rss
Feed</i>
</a>
</div>
</div>
</div>
</footer>
<!--JavaScript at end of body for optimized loading-->
<script type="text/javascript" src="ressourcen/js/materialize.min.js"></script>
<script type="text/javascript">
document.addEventListener('DOMContentLoaded', function () {
var elems = document.querySelectorAll('.dropdown-trigger');
var instances = M.Dropdown.init(elems, {
// specify options here
});
});
</script>
</body>
</html>

View File

@@ -0,0 +1,121 @@
<?php
require_once("./config.inc.php");
require_once($$basePath."/ressourcen/phpLib/cwsvJudo/miscAssis.php");
?>
<!DOCTYPE html>
<html>
<head>
<link type="text/css" rel="stylesheet" href="ressourcen/css/cwsvJudo.css">
<!--Import materialize.css-->
<link type="text/css" rel="stylesheet" href="ressourcen/css/materialize.min.css" media="screen,projection" />
<!--Let browser know website is optimized for mobile-->
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
</head>
<body>
<header>
<nav class="nav-extended">
<div class="nav-wrapper" style="font-family: 'Orbitron-Medium', Impact, Charcoal, sans-serif;">
<!-- <img style="height:100%;width:auto;" width="128" height="104" title="Judo im Chemnitzer WSV"
alt="Judo im Chemnitzer WSV - Logo" src="/ressourcen/graphiken/logos/cwsvJudoLogoWappen.128w.png"
srcset="/ressourcen/graphiken/logos/cwsvJudoLogoWappen.256w.png 2x"> -->
<a href="/" class="brand-logo">
<span>cwsvJudo</span>
</a>
$if(mainNav)$
<ul id="nav-mobile" class="right">
$for(mainNav)$
<li>
<a href="$mainNav.url$" $if(mainNav.caption)$title="$mainNav.caption$" $endif$
$if(mainNav.active)$class="active" $endif$>
$if(mainNav.caption)$<span>$mainNav.caption$</span>$endif$
</a>
</li>
$endfor$
</ul>
$endif$
</div>
<div class="nav-content">
$if(subNav)$
<ul class="tabs tabs-transparent">
$for(subNav)$
<li class="tab">
<a href="$subNav.url$" $if(subNav.caption)$title="$subNav.caption$" $endif$
$if(subNav.active)$class="activeNav" $endif$>
<!-- $if(subNav.icon)$
<img src="$if(subNav.icon.src)$$subNav.icon.src$$else$$subNav.icon$$endif$"
$if(subNav.caption)$ alt="$subNav.caption$" $else$ $if(subNav.icon.alt)$
alt="$subNav.icon.alt$" $endif$ $endif$ $if(subNav.icon.width)$
width="$subNav.icon.width$" $endif$ $if(subNav.icon.height)$
height="$subNav.icon.height$" $endif$ $if(subNav.icon.title)$
title="$subNav.icon.title$" $endif$ $if(subNav.icon.srcset)$
srcset="$subNav.icon.srcset$" $endif$>
$endif$ -->
$if(subNav.caption)$<span>$subNav.caption$</span>$endif$
</a>
</li>
$endfor$
</ul>
$endif$
</div>
</nav>
</header>
<div class="parallax-container">
<div class="parallax">
<img src="/ressourcen/graphiken/wallpapers/osae-komi.svg"
data-src="/ressourcen/graphiken/wallpapers/osae-komi.jpg"
onload="if(this.src !== this.getAttribute('data-src')) this.src=this.getAttribute('data-src');">
</div>
</div>
<div class="section">
$body$
</div>
<div class="parallax-container">
<div class="parallax">
<img src="/ressourcen/graphiken/wallpapers/nage.svg" data-src="/ressourcen/graphiken/wallpapers/nage.jpg"
onload="if(this.src!== this.getAttribute('data-src')) this.src=this.getAttribute('data-src');">
</div>
</div>
<footer class="page-footer">
<div class="container">
<div class="row">
<div class="s1">
<a class="touchLink" title="Seite auf HTML 5 Konformität prüfen"
href="http://validator.w3.org/check?uri=<?php echo(urlencode(getCurPagesUrl()));?>"
rel="nofollow">Valid
<img src="/ressourcen/graphiken/icons/HTML5_1Color_Black.svg" alt="HTML 5" title="HTML 5 Logo"
class="charImg">
</a>
</div>
</div>
</div>
<div class="footer-copyright">
<div class="container">
© 2025
</div>
</div>
</footer>
<!--JavaScript at end of body for optimized loading-->
<script type="text/javascript" src="ressourcen/js/materialize.min.js"></script>
<script>
document.addEventListener('DOMContentLoaded', function () {
const elems = document.querySelectorAll('.parallax');
const instances = M.Parallax.init(elems, {
// specify options here
});
});
</script>
</body>
</html>

View File

@@ -338,27 +338,6 @@
"machsUploadUrl": "",
"machsUploadPw": ""
},
{
"id": "129",
"loginName": "marekStiegler",
"pwHash": "",
"pwAlg": "",
"name": "Stiegler",
"vorname": "Marek",
"gebDatum": "0000-00-00",
"kinder": "",
"eltern": "",
"eMail": [
"marek.stiegler@gmail.com"
],
"attribute": "",
"config": "",
"corona_eMail": "",
"corona_telephon": "",
"corona_PLZ": "",
"machsUploadUrl": "",
"machsUploadPw": ""
},
{
"id": "131",
"loginName": "elternMeyerhoff",

View File

@@ -0,0 +1,151 @@
[
{
"id": "1",
"loginName": "marko",
"pwHash": "$2y$10$Dw0HYuSGqU58lpRp0Em46.b.X0KYTrUNtgdkIH6lWVWOnD.lMvuJS",
"pwAlg": "",
"name": "Bunzel",
"vorname": "Marko",
"gebDatum": "1982-05-22",
"kinder": "1,2,13,30,40,45,49,80,82,83,84,89,93,95,97,98,99,100",
"eltern": "",
"eMail": [
"cwsvjudo@arcor.de"
],
"attribute": "wantsNewsletter=true",
"config": "{\"colors\":{\"backgroundColor\":\"#7f7f7f\",\"highlightColor\":\"#3f3f3f\",\"buttonColor\":\"#1f1f1f\"}}",
"corona_eMail": "marko.bunzel@arcor.de",
"corona_telephon": "015901631103",
"corona_PLZ": "09117",
"machsUploadUrl": "https://www.magentacloud.de/share/itaja0u0ho",
"machsUploadPw": "dohk3Ei0"
},
{
"id": "2",
"loginName": "NickW",
"pwHash": "$2y$10$I9KY//8lSiOVhN.MTqQk0.G4PejVSa82yoGjFhBTaU7fYQ3AuY5de",
"pwAlg": "",
"name": "Weidensager",
"vorname": "Nick",
"gebDatum": "1997-05-02",
"kinder": "2",
"eltern": "",
"eMail": [
"nick.weidensager@web.de"
],
"attribute": "wantsNewsletter=true",
"config": "",
"corona_eMail": "",
"corona_telephon": "",
"corona_PLZ": "",
"machsUploadUrl": "https://www.magentacloud.de/share/jnz7kxem1p",
"machsUploadPw": "ooz6va0E"
},
{
"id": "6",
"loginName": "AlexanderDumler",
"pwHash": "",
"pwAlg": "",
"name": "Dumler",
"vorname": "Alexander",
"gebDatum": "0000-00-00",
"kinder": "7",
"eltern": "",
"eMail": [
"alled82@gmx.de"
],
"attribute": "wantsNewsletter=true",
"config": "",
"corona_eMail": "",
"corona_telephon": "",
"corona_PLZ": "",
"machsUploadUrl": "",
"machsUploadPw": ""
},
{
"id": "7",
"loginName": "ArthurDumler",
"pwHash": "",
"pwAlg": "",
"name": "Dumler",
"vorname": "Arthur",
"gebDatum": "2007-12-24",
"kinder": "",
"eltern": "6",
"eMail": [
"dumlerarthur2412@gmail.com"
],
"attribute": "",
"config": "",
"corona_eMail": "",
"corona_telephon": "",
"corona_PLZ": "",
"machsUploadUrl": "https://www.magentacloud.de/share/9h8jg3qojw",
"machsUploadPw": "ne4Meit4"
},
{
"id": "85",
"loginName": "elternGerlach",
"pwHash": "$2y$10$WfSIntzXxRbfmFXi7fFV4ehHXyOdBwPArWYl1tzu6VWcDQBfeI1b2",
"pwAlg": "",
"name": "Gerlach",
"vorname": "Eltern",
"gebDatum": "0000-00-00",
"kinder": "82,83,84",
"eltern": "",
"eMail": [
"manja.bunzel@gmx.de",
"michael_gerlach@gmx.net"
],
"attribute": "",
"config": "",
"corona_eMail": "manja.bunzel@gmx.de",
"corona_telephon": "01637529146",
"corona_PLZ": "09224",
"machsUploadUrl": "",
"machsUploadPw": ""
},
{
"id": "108",
"loginName": "elternRichter",
"pwHash": "",
"pwAlg": "",
"name": "Richter",
"vorname": "Eltern",
"gebDatum": "0000-00-00",
"kinder": "106,107",
"eltern": "",
"eMail": [
"grericht@gmail.com"
],
"attribute": "",
"config": "",
"corona_eMail": "",
"corona_telephon": "",
"corona_PLZ": "",
"machsUploadUrl": "",
"machsUploadPw": ""
},
{
"id": "115",
"loginName": "elternKutschmann",
"pwHash": "",
"pwAlg": "",
"name": "Kutschmann",
"vorname": "Eltern",
"gebDatum": "0000-00-00",
"kinder": "114",
"eltern": "",
"eMail": [
"uwe.schwerdtfeger@uni-dortmund.de",
"pia.kutschmann@uni-dortmund.de"
],
"attribute": "",
"config": "",
"corona_eMail": "",
"corona_telephon": "",
"corona_PLZ": "",
"machsUploadUrl": "",
"machsUploadPw": ""
}
]

View File

@@ -0,0 +1,14 @@
---
title: Kyutraining 23.+30.03.
---
Hallo,
wir werden am 04.04. wieder mal Besuch von unserem Prüfer bekommen. Da hatte ich geplant wieder vier Leute (Arthur, August, Leonhard, Mia) das Programm für ihre nächste Gürtelstufe vorführen zu lassen. Leider war die Trainingsteilnahme in diesem Quartal bisher etwas dürftig. Ich würde deshalb gerne am Sonntag den 23.03. und Sonntag den 30.03. je eine Sondereinheit Kyutraining durchführen. Bitte gebt mir Bescheid, ob Ihr daran teilnehmen würdet:
- Sonntag, 23.03., 15--17:00 Uhr
- Sonntag, 30.03., 15--17:00 Uhr
Ort ist wie immer unser Dojo.
MsG marko

View File

@@ -0,0 +1,11 @@
---
title: (korrigierter Umfragelink) Kyutraining 30.03.
---
Hallo,
da für den ursprünglich vorgeschlagenen Termin (30.03. 15-17:00 Uhr) bereits mehrere angekündigt haben, dass sie zu diesem Termin leider keine Zeit haben, habe ich mal eine kleine [Umfrage][umfrage] (Passwort: Eith2eeL) gestartet, ob wir nicht vielleicht doch noch einen Termin finden, der besser liegt. Da am Sa. auch ein Wettkampf ansteht kann ich den Vormittag da leider nicht anbieten. Ich gehe aber davon aus, das ab 15:00 Uhr möglich ist.
MsG marko
[umfrage]: https://framadate.org/VA7jmbsBQRmM2G3v

View File

@@ -0,0 +1,25 @@
---
title: Auswärtsrandori am 11.04.2025
---
Hallo liebe Eltern,
Hallo liebe Judoka!
Nach der erfolgreichen Zusammenarbeit mit den Judoka des BSC Motor Rochlitz planen wir ein gemeinsames Randori-Training am Freitag, dem 11.04. Das ganze ist noch in Planung und leider auch noch nicht zu 100% sicher. Dennoch würde ich gerne schon mal das Interesse ausloten:
- Termin: 11.04. 16:30--17:45 Uhr
- Ort: Sporthalle "Ziegeleiweg", Am Regenbogen 1, 09306 Rochlitz
- Zielgruppe: Judoka mit weißgelben Gürtel oder höher bis zur Altersklasse U15 (Jahrgang 2010 und jünger)
- Hinreise: Abfahrt 16:00 Uhr am Dojo Str. Usti nad Labem 42
Auch wenn die Veranstaltung wie bereits erwähnt noch in der Planung würde ich gerne schonmal das Feedback einholen:
- Wer würde gerne teilnehmen?
- Wer von den Eltern könnte mitfahren?
- Wer könnte im Auto noch jemanden mitnehmen?
- Wer bräuchte eine Mitfahrgelegenheit?
- Vielleicht kann jemand sogar einen Kleinbus zur Nutzung vermitteln?
Wäre schön wenn ich zur besseren Planung schonmal einen kleinen Überblick über die obigen Fragen hätte.
MsG marko

View File

@@ -0,0 +1,19 @@
---
title: Training in den Osterferien
---
Hallo liebe Judoka,
hallo liebe Eltern,
auch während der Osterferien 18.04.--25.04. - auch am Karfreitag - kann ganz normal trainiert werden:
- Karfreitag: 18.04.2025
- 16:00--17:45 Uhr (Kinder/Anfänger)
- 17:30--19:15 Uhr (Jugend/Fortgeschrittene)
- Mittwoch: 23.04.2025
- 16:00--17:45 Uhr (alle)
- Freitag: 25.04.2025
- 16:00--17:45 Uhr (Kinder/Anfänger)
- 17:30--19:15 Uhr (Jugend/Fortgeschrittene)
MsG marko

Binary file not shown.

After

Width:  |  Height:  |  Size: 646 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 632 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 540 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 538 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 500 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 517 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 494 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 514 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 501 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 450 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 450 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 461 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 539 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 500 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 509 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 497 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 557 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 688 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 530 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 501 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 468 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 556 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 592 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 475 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 468 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 476 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 595 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 467 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 503 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 485 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 469 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 554 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 456 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 457 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 567 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 540 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 494 KiB