second version
BIN
Vorlage/Bilder für Website/Bild 3.jpg
Normal file
|
After Width: | Height: | Size: 613 KiB |
BIN
Vorlage/Bilder für Website/Start 2.jpg
Normal file
|
After Width: | Height: | Size: 3.1 MiB |
BIN
Vorlage/Bilder für Website/WinterSunrise-mLlV9.ttf
Normal file
BIN
Vorlage/Bilder für Website/einkreisen Pikto.png
Normal file
|
After Width: | Height: | Size: 34 KiB |
32
dist/bundle.js
vendored
BIN
dist/img/tagesablauf_godi.jpg
vendored
|
Before Width: | Height: | Size: 1.5 MiB |
4
dist/index.html
vendored
@ -63,12 +63,12 @@
|
|||||||
<span class="width-100" id="home-img">
|
<span class="width-100" id="home-img">
|
||||||
<img src="/img/home.jpg" id="" alt="Julia und Sam sehen sich verliebt an und halten dabei händchen <3"
|
<img src="/img/home.jpg" id="" alt="Julia und Sam sehen sich verliebt an und halten dabei händchen <3"
|
||||||
class="">
|
class="">
|
||||||
<span id="start-text-img-overlay">Hochzeit von <br>Julia und Samuel</span>
|
<h1 id="start-text-img-overlay">Hochzeit von <br/>Julia und Samuel</h1>
|
||||||
</span>
|
</span>
|
||||||
<span id="img-spacer"></span>
|
<span id="img-spacer"></span>
|
||||||
</span>
|
</span>
|
||||||
<div id="scroll-container">
|
<div id="scroll-container">
|
||||||
<div class="grid-container">
|
<div class="">
|
||||||
<div class="grid-x grid-padding-x grid-padding-y grow max-height-100">
|
<div class="grid-x grid-padding-x grid-padding-y grow max-height-100">
|
||||||
<div class="cell small-12" id="main-content">
|
<div class="cell small-12" id="main-content">
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
80
dist/main.css
vendored
@ -4822,6 +4822,68 @@ html.is-reveal-open {
|
|||||||
.present .present-name {
|
.present .present-name {
|
||||||
font-weight: bold; }
|
font-weight: bold; }
|
||||||
|
|
||||||
|
#info-image-container {
|
||||||
|
position: relative; }
|
||||||
|
#info-image-container img.circler {
|
||||||
|
position: absolute;
|
||||||
|
height: 12%;
|
||||||
|
opacity: 0;
|
||||||
|
cursor: pointer; }
|
||||||
|
#info-image-container img.circler.godi {
|
||||||
|
top: 1.5%;
|
||||||
|
left: 46%; }
|
||||||
|
#info-image-container img.circler.fingerfood {
|
||||||
|
left: 9%;
|
||||||
|
top: 12.5%;
|
||||||
|
width: 32%;
|
||||||
|
height: 20%; }
|
||||||
|
#info-image-container img.circler.foto {
|
||||||
|
left: 48%;
|
||||||
|
top: 32%;
|
||||||
|
width: 32%; }
|
||||||
|
#info-image-container img.circler.sekt {
|
||||||
|
left: 9%;
|
||||||
|
top: 46.5%;
|
||||||
|
width: 32%; }
|
||||||
|
#info-image-container img.circler.essen {
|
||||||
|
left: 48%;
|
||||||
|
top: 60%;
|
||||||
|
width: 32%; }
|
||||||
|
#info-image-container img.circler.spiel {
|
||||||
|
left: 11%;
|
||||||
|
top: 72.5%;
|
||||||
|
width: 30%; }
|
||||||
|
#info-image-container img.circler.dance {
|
||||||
|
left: 48%;
|
||||||
|
top: 86%;
|
||||||
|
width: 29%; }
|
||||||
|
#info-image-container[data-state='godi'] .godi {
|
||||||
|
opacity: 0.7; }
|
||||||
|
#info-image-container[data-state='fingerfood'] .fingerfood {
|
||||||
|
opacity: 0.7; }
|
||||||
|
#info-image-container[data-state='foto'] .foto {
|
||||||
|
opacity: 0.7; }
|
||||||
|
#info-image-container[data-state='sekt'] .sekt {
|
||||||
|
opacity: 0.7; }
|
||||||
|
#info-image-container[data-state='essen'] .essen {
|
||||||
|
opacity: 0.7; }
|
||||||
|
#info-image-container[data-state='spiel'] .spiel {
|
||||||
|
opacity: 0.7; }
|
||||||
|
#info-image-container[data-state='dance'] .dance {
|
||||||
|
opacity: 0.7; }
|
||||||
|
|
||||||
|
.anchor {
|
||||||
|
display: block;
|
||||||
|
padding-top: 1rem; }
|
||||||
|
.anchor:first-child {
|
||||||
|
padding-top: 0; }
|
||||||
|
.anchor p:last-child {
|
||||||
|
margin-bottom: 0; }
|
||||||
|
|
||||||
|
@font-face {
|
||||||
|
font-family: "WinterSunrise";
|
||||||
|
src: url(/img/WinterSunrise.ttf); }
|
||||||
|
|
||||||
.width-100 {
|
.width-100 {
|
||||||
width: 100%; }
|
width: 100%; }
|
||||||
|
|
||||||
@ -4847,9 +4909,9 @@ body {
|
|||||||
body #main-content-container #scroll-container {
|
body #main-content-container #scroll-container {
|
||||||
height: 100%;
|
height: 100%;
|
||||||
background: #d7c9ac; }
|
background: #d7c9ac; }
|
||||||
body #main-content-container #scroll-container > .grid-container {
|
body #main-content-container #scroll-container > div {
|
||||||
height: 100%; }
|
height: 100%; }
|
||||||
body #main-content-container #scroll-container > .grid-container > .grid-x {
|
body #main-content-container #scroll-container > div > .grid-x {
|
||||||
height: 100%; }
|
height: 100%; }
|
||||||
body #main-content-container #scroll-container #main-content {
|
body #main-content-container #scroll-container #main-content {
|
||||||
height: 100%;
|
height: 100%;
|
||||||
@ -4866,6 +4928,10 @@ a.hidden-link, a.hidden-link:hover {
|
|||||||
text-decoration: none;
|
text-decoration: none;
|
||||||
color: inherit; }
|
color: inherit; }
|
||||||
|
|
||||||
|
h1 {
|
||||||
|
font-family: WinterSunrise, serif;
|
||||||
|
font-size: 4.5rem; }
|
||||||
|
|
||||||
#home-img-container #home-img {
|
#home-img-container #home-img {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
@ -4878,11 +4944,10 @@ a.hidden-link, a.hidden-link:hover {
|
|||||||
#home-img-container #home-img #start-text-img-overlay {
|
#home-img-container #home-img #start-text-img-overlay {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
left: 2rem;
|
left: 2rem;
|
||||||
top: 50%;
|
bottom: 3rem;
|
||||||
color: white;
|
color: white;
|
||||||
font-family: "Winter Sunrise", Arial, serif;
|
font-size: 8rem;
|
||||||
font-size: 4rem;
|
line-height: 1.2; }
|
||||||
line-height: 2.5; }
|
|
||||||
|
|
||||||
#home-img-container #img-spacer {
|
#home-img-container #img-spacer {
|
||||||
display: block;
|
display: block;
|
||||||
@ -4895,3 +4960,6 @@ img.full-screen-width {
|
|||||||
.hidden {
|
.hidden {
|
||||||
display: none; }
|
display: none; }
|
||||||
|
|
||||||
|
.site-content {
|
||||||
|
padding: 3rem 2rem; }
|
||||||
|
|
||||||
|
|||||||
@ -15,7 +15,6 @@
|
|||||||
"@babel/plugin-transform-runtime": "^7.11.5",
|
"@babel/plugin-transform-runtime": "^7.11.5",
|
||||||
"@babel/polyfill": "^7.11.5",
|
"@babel/polyfill": "^7.11.5",
|
||||||
"@types/express": "^4.17.8",
|
"@types/express": "^4.17.8",
|
||||||
"@types/socket.io": "^2.1.11",
|
|
||||||
"autoprefixer": "^10.0.1",
|
"autoprefixer": "^10.0.1",
|
||||||
"babel-loader": "^8.1.0",
|
"babel-loader": "^8.1.0",
|
||||||
"babel-preset-env": "^1.7.0",
|
"babel-preset-env": "^1.7.0",
|
||||||
@ -35,13 +34,14 @@
|
|||||||
"sass-loader": "^10.1.0",
|
"sass-loader": "^10.1.0",
|
||||||
"terser-webpack-plugin": "^4.2.2",
|
"terser-webpack-plugin": "^4.2.2",
|
||||||
"ts-loader": "^8.0.4",
|
"ts-loader": "^8.0.4",
|
||||||
"ts-node": "^9.0.0",
|
|
||||||
"typescript": "^4.0.2",
|
|
||||||
"webpack": "^4.44.2",
|
"webpack": "^4.44.2",
|
||||||
"webpack-cli": "^3.3.12"
|
"webpack-cli": "^3.3.12"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"express": "^4.17.1",
|
"express": "^4.17.1",
|
||||||
"dotenv": "^8.2.0"
|
"dotenv": "^8.2.0",
|
||||||
|
"ts-node": "^9.0.0",
|
||||||
|
"typescript": "^4.0.2",
|
||||||
|
"@types/express": "^4.17.8"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
<div class="flex-container height-100">
|
<div class="flex-container height-100">
|
||||||
<div class="grow height-100 overflow-auto">
|
<div class="grow height-100 overflow-auto site-content">
|
||||||
<h1>Gechenkliste</h1>
|
<h1>Gechenkliste</h1>
|
||||||
<p>
|
<p>
|
||||||
Ihr macht uns die größte Freude, wenn ihr mit uns feiert und den Tag verbringt. Wenn ihr uns gerne etwas
|
Ihr macht uns die größte Freude, wenn ihr mit uns feiert und den Tag verbringt. Wenn ihr uns gerne etwas
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
<div>
|
<div class="site-content grid-container">
|
||||||
<h1>Herzlich Willkommen</h1>
|
<h1>Herzlich Willkommen</h1>
|
||||||
<p>Wir heiraten! Und das möchten wir mit euch gemeinsam am 8.Mai 2021 in Aachen feiern.
|
<p>Wir heiraten! Und das möchten wir mit euch gemeinsam am 8.Mai 2021 in Aachen feiern.
|
||||||
Bitte sagt uns doch bis zum 15.März, ob ihr dabei sein könnt! Schreibt uns dazu bitte eine Mail an (…..).</p>
|
Bitte sagt uns doch bis zum 15.März, ob ihr dabei sein könnt! Schreibt uns dazu bitte eine Mail an (…..).</p>
|
||||||
|
|||||||
@ -1,46 +1,67 @@
|
|||||||
<div class="flex-container height-100">
|
<div class="flex-container height-100">
|
||||||
<div class="height-100">
|
<div class="height-100" id="info-image-container" data-state="godi">
|
||||||
<img src="../img/tagesablauf_godi.jpg" class="height-100">
|
<img src="../img/tagesablauf.jpg" class="height-100">
|
||||||
|
<img src="../img/einkreiser.png" class="circler godi" data-state="godi">
|
||||||
|
<img src="../img/einkreiser.png" class="circler fingerfood" data-state="fingerfood">
|
||||||
|
<img src="../img/einkreiser.png" class="circler foto" data-state="foto">
|
||||||
|
<img src="../img/einkreiser.png" class="circler sekt" data-state="sekt">
|
||||||
|
<img src="../img/einkreiser.png" class="circler essen" data-state="essen">
|
||||||
|
<img src="../img/einkreiser.png" class="circler spiel" data-state="spiel">
|
||||||
|
<img src="../img/einkreiser.png" class="circler dance" data-state="dance">
|
||||||
</div>
|
</div>
|
||||||
<div class="grow height-100 overflow-auto">
|
<div class="grow height-100 overflow-auto site-content">
|
||||||
<h1>Traugottesdienst</h1>
|
<div class="anchor" data-state="godi">
|
||||||
<p>
|
<h1>Traugottesdienst</h1>
|
||||||
Um 14:00 Uhr möchten wir gemeinsam mit euch unseren Traugottesdienst in der Annakirche feiern (Annastraße
|
<p>
|
||||||
35, 52062 Aachen). Wenn ihr mit dem Auto anreist könnt ihr im Parkhaus am Dom (Jesuitenstraße 12, 52062
|
Um 14:00 Uhr möchten wir gemeinsam mit euch unseren Traugottesdienst in der Annakirche feiern
|
||||||
Aachen) parken, das ist direkt neben der Kirche.
|
(Annastraße
|
||||||
</p>
|
35, 52062 Aachen). Wenn ihr mit dem Auto anreist könnt ihr im Parkhaus am Dom (Jesuitenstraße 12, 52062
|
||||||
<h1>Fingerfood</h1>
|
Aachen) parken, das ist direkt neben der Kirche.
|
||||||
<p>
|
</p>
|
||||||
Nach dem Gottesdienst gehen wir zusammen zu Fuß ins Aachener Fenster (Buchkremerstraße 2). Dort gibt es dann
|
</div>
|
||||||
süßes und salziges Fingerfood und ganz viel Zeit zum Gratulieren. Wenn ihr etwas zum Buffet beisteuern
|
<div class="anchor" data-state="fingerfood">
|
||||||
möchtet, dann meldet euch gerne bei <a href='mailto:sinah.stinner@googlemail.com'>Sinah Stinner
|
<h1>Fingerfood</h1>
|
||||||
(sinah.stinner@googlemail.com)</a>.
|
<p>
|
||||||
</p>
|
Nach dem Gottesdienst gehen wir zusammen zu Fuß ins Aachener Fenster (Buchkremerstraße 2). Dort gibt es
|
||||||
<h1>Gruppenfotos</h1>
|
dann
|
||||||
<p>
|
süßes und salziges Fingerfood und ganz viel Zeit zum Gratulieren. Wenn ihr etwas zum Buffet beisteuern
|
||||||
Um ganz viele wundervolle Erinnerungen an unsere Hochzeit, die wir mit euch feiern, zu haben, gehen wir um
|
möchtet, dann meldet euch gerne bei <a href='mailto:sinah.stinner@googlemail.com'>Sinah Stinner
|
||||||
17:00 Uhr auf den Katschhof und machen dort Gruppenfotos.
|
(sinah.stinner@googlemail.com)</a>.
|
||||||
</p>
|
</p></div>
|
||||||
<h1>Sektempfang</h1>
|
<div class="anchor" data-state="foto">
|
||||||
<p>
|
<h1>Gruppenfotos</h1>
|
||||||
Wir feiern unsere Hochzeit im Forum M über der Aachener Mayerschen mit einem wundervollen Blick über die
|
<p>
|
||||||
Aachener Innenstadt. Nach den Fotos werden wir dort gemeinsam anstoßen.
|
Um ganz viele wundervolle Erinnerungen an unsere Hochzeit, die wir mit euch feiern, zu haben, gehen wir
|
||||||
</p>
|
um
|
||||||
<h1>Festessen</h1>
|
17:00 Uhr auf den Katschhof und machen dort Gruppenfotos.
|
||||||
<p>
|
</p></div>
|
||||||
Nach vielen wundervollen Bildern, freuen wir uns alle auf unser leckeres Hochzeitsbuffet, das es um halb
|
<div class="anchor" data-state="sekt">
|
||||||
acht gibt.
|
<h1>Sektempfang</h1>
|
||||||
</p>
|
<p>
|
||||||
<h1>Spiel & Spaß</h1>
|
Wir feiern unsere Hochzeit im Forum M über der Aachener Mayerschen mit einem wundervollen Blick über die
|
||||||
<p>
|
Aachener Innenstadt. Nach den Fotos werden wir dort gemeinsam anstoßen.
|
||||||
Wir freuen uns auf richtige viele einzigartige, lustige und spaßige Programmbeiträge von euch. Wenn ihr es
|
</p></div>
|
||||||
schon gar nicht erwarten könnt uns eine Freude zu machen und einen Beiträg beizusteuern, dann meldet euch
|
<div class="anchor" data-state="essen">
|
||||||
gerne bei Miriam Seitz (Miriams Mailadresse). Und keine Sorge, Miriam behält alle Beiträge und
|
<h1>Festessen</h1>
|
||||||
Überraschungen für sich, aber sagt ihr bitte bei allem Bescheid, was ihr planen wollt.
|
<p>
|
||||||
</p>
|
Nach vielen wundervollen Bildern, freuen wir uns alle auf unser leckeres Hochzeitsbuffet, das es um halb
|
||||||
<h1>Let's Dance</h1>
|
acht gibt.
|
||||||
<p>
|
</p></div>
|
||||||
Ihr könnt zuhause schonmal üben, um die Tanzfläche unsicher zu machen!
|
<div class="anchor" data-state="spiel">
|
||||||
</p>
|
<h1>Spiel & Spaß</h1>
|
||||||
|
<p>
|
||||||
|
Wir freuen uns auf richtige viele einzigartige, lustige und spaßige Programmbeiträge von euch. Wenn ihr
|
||||||
|
es
|
||||||
|
schon gar nicht erwarten könnt uns eine Freude zu machen und einen Beiträg beizusteuern, dann meldet
|
||||||
|
euch
|
||||||
|
gerne bei Miriam Seitz (Miriams Mailadresse). Und keine Sorge, Miriam behält alle Beiträge und
|
||||||
|
Überraschungen für sich, aber sagt ihr bitte bei allem Bescheid, was ihr planen wollt.
|
||||||
|
</p></div>
|
||||||
|
<div class="anchor" data-state="dance">
|
||||||
|
<h1>Let's Dance</h1>
|
||||||
|
<p>
|
||||||
|
Ihr könnt zuhause schonmal üben, um die Tanzfläche unsicher zu machen!
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -1,5 +1,5 @@
|
|||||||
<div class="flex-container height-100">
|
<div class="flex-container height-100">
|
||||||
<div class="grow height-100 overflow-auto">
|
<div class="grow height-100 overflow-auto site-content">
|
||||||
<h1>Unterkunft</h1>
|
<h1>Unterkunft</h1>
|
||||||
<p>
|
<p>
|
||||||
Wir freuen uns riesig, dass ihr aus nah und fern anreist, um mit uns gemeinsam unseren Hochzeitstag zu
|
Wir freuen uns riesig, dass ihr aus nah und fern anreist, um mit uns gemeinsam unseren Hochzeitstag zu
|
||||||
|
|||||||
BIN
src/client/img/WinterSunrise.ttf
Normal file
BIN
src/client/img/einkreiser.png
Normal file
|
After Width: | Height: | Size: 30 KiB |
BIN
src/client/img/tagesablauf.jpg
Normal file
|
After Width: | Height: | Size: 613 KiB |
|
Before Width: | Height: | Size: 1.5 MiB |
@ -63,12 +63,12 @@
|
|||||||
<span class="width-100" id="home-img">
|
<span class="width-100" id="home-img">
|
||||||
<img src="img/home.jpg" id="" alt="Julia und Sam sehen sich verliebt an und halten dabei händchen <3"
|
<img src="img/home.jpg" id="" alt="Julia und Sam sehen sich verliebt an und halten dabei händchen <3"
|
||||||
class="">
|
class="">
|
||||||
<span id="start-text-img-overlay">Hochzeit von <br>Julia und Samuel</span>
|
<h1 id="start-text-img-overlay">Hochzeit von <br/>Julia und Samuel</h1>
|
||||||
</span>
|
</span>
|
||||||
<span id="img-spacer"></span>
|
<span id="img-spacer"></span>
|
||||||
</span>
|
</span>
|
||||||
<div id="scroll-container">
|
<div id="scroll-container">
|
||||||
<div class="grid-container">
|
<div class="">
|
||||||
<div class="grid-x grid-padding-x grid-padding-y grow max-height-100">
|
<div class="grid-x grid-padding-x grid-padding-y grow max-height-100">
|
||||||
<div class="cell small-12" id="main-content">
|
<div class="cell small-12" id="main-content">
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@ -9,53 +9,96 @@ const templates = {
|
|||||||
geschenke: require("../html/geschenke.html"),
|
geschenke: require("../html/geschenke.html"),
|
||||||
}
|
}
|
||||||
|
|
||||||
async function startPresents(){
|
|
||||||
await new PresentsHandler().showPresents();
|
|
||||||
}
|
|
||||||
|
|
||||||
const callbacks = {
|
const callbacks = {
|
||||||
home: () => {},
|
home: () => {
|
||||||
unterkunft: () => {},
|
},
|
||||||
tagesablauf: () => {},
|
unterkunft: () => {
|
||||||
geschenke: startPresents,
|
},
|
||||||
|
tagesablauf: () => {
|
||||||
|
let state = "godi";
|
||||||
|
let scrollTimeout = null;
|
||||||
|
let scrollToView = false;
|
||||||
|
|
||||||
|
const infoImageContainer = document.getElementById("info-image-container");
|
||||||
|
infoImageContainer.querySelectorAll(".circler").forEach(circle => {
|
||||||
|
circle.addEventListener("click", () => {
|
||||||
|
state = (<HTMLElement>circle).dataset["state"];
|
||||||
|
infoImageContainer.dataset["state"] = state;
|
||||||
|
scrollToView = true;
|
||||||
|
document.querySelector(".anchor[data-state='" + state + "']").scrollIntoView({
|
||||||
|
"behavior": "smooth",
|
||||||
|
"block": "start"
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
const navBar = document.querySelector(".top-bar");
|
||||||
|
const anchors = document.querySelectorAll(".anchor");
|
||||||
|
const margin = navBar.clientHeight+50;
|
||||||
|
|
||||||
|
const observerDown = new IntersectionObserver(entries => {
|
||||||
|
entries.some(entry => {
|
||||||
|
if (!entry.isIntersecting && entry.intersectionRect.top === margin && !scrollToView) {
|
||||||
|
state = (<HTMLElement>entry.target).dataset["state"];
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}, {threshold: 1, rootMargin: "-" + margin + "px 0px 0px 0px"});
|
||||||
|
// }, {threshold: 1, rootMargin: "-100px 0px 0px 0px"});
|
||||||
|
const observerUp = new IntersectionObserver(entries => {
|
||||||
|
entries.some(entry => {
|
||||||
|
if (entry.isIntersecting && entry.intersectionRect.top === navBar.clientHeight && !scrollToView) {
|
||||||
|
state = (<HTMLElement>entry.target).dataset["state"];
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}, {threshold: 0.1});
|
||||||
|
|
||||||
|
anchors.forEach(anchor => {
|
||||||
|
observerDown.observe(anchor);
|
||||||
|
observerUp.observe(anchor);
|
||||||
|
})
|
||||||
|
|
||||||
|
document.querySelector("#info-image-container + .site-content").addEventListener("scroll", e => {
|
||||||
|
clearTimeout(scrollTimeout);
|
||||||
|
scrollTimeout = setTimeout(() =>{
|
||||||
|
scrollTimeout = null;
|
||||||
|
infoImageContainer.dataset["state"] = state;
|
||||||
|
scrollToView = false;
|
||||||
|
console.log("stopped scrolling")
|
||||||
|
}, 50);
|
||||||
|
});
|
||||||
|
},
|
||||||
|
geschenke: async () => await new PresentsHandler().showPresents(),
|
||||||
}
|
}
|
||||||
|
|
||||||
$(document).foundation();
|
$(document).foundation();
|
||||||
|
|
||||||
$(function () {
|
$(function () {
|
||||||
const mainDiv = document.getElementById("main-content-container");
|
|
||||||
const container = document.getElementById("main-content");
|
const container = document.getElementById("main-content");
|
||||||
const img = document.getElementById("home-img-container");
|
const img = document.getElementById("home-img-container");
|
||||||
|
|
||||||
let currentSite = "home";
|
let currentSite = "home";
|
||||||
|
|
||||||
//Scroll-Element
|
|
||||||
mainDiv.addEventListener("scroll", e => {
|
|
||||||
console.log("scrolling!", e);
|
|
||||||
});
|
|
||||||
|
|
||||||
|
|
||||||
//Navigation
|
//Navigation
|
||||||
container.innerHTML = templates.home;
|
container.innerHTML = templates.home;
|
||||||
document.querySelectorAll(".menu li[data-site]").forEach((elem: HTMLElement) => {
|
document.querySelectorAll(".menu li[data-site]").forEach((elem: HTMLElement) => {
|
||||||
elem.addEventListener("click", () => {
|
elem.addEventListener("click", () => {
|
||||||
const oldActive = document.querySelector(".menu .active");
|
const oldActive = document.querySelector(".menu .active");
|
||||||
if (oldActive){
|
if (oldActive) {
|
||||||
oldActive.classList.remove("active");
|
oldActive.classList.remove("active");
|
||||||
}
|
}
|
||||||
elem.classList.add("active");
|
elem.classList.add("active");
|
||||||
|
|
||||||
container.innerHTML = templates[elem.dataset["site"]];
|
container.innerHTML = templates[elem.dataset["site"]];
|
||||||
if (elem.dataset["img"] === "1"){
|
if (elem.dataset["img"] === "1") {
|
||||||
img.classList.remove("hidden");
|
img.classList.remove("hidden");
|
||||||
}
|
} else {
|
||||||
else {
|
|
||||||
img.classList.add("hidden");
|
img.classList.add("hidden");
|
||||||
}
|
}
|
||||||
|
|
||||||
currentSite = elem.dataset["site"];
|
currentSite = elem.dataset["site"];
|
||||||
|
|
||||||
if (typeof callbacks[currentSite] === "function"){
|
if (typeof callbacks[currentSite] === "function") {
|
||||||
callbacks[currentSite]();
|
callbacks[currentSite]();
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|||||||
75
src/client/sass/_tagesablauf.scss
Normal file
@ -0,0 +1,75 @@
|
|||||||
|
$opacityVisible: 0.7;
|
||||||
|
$states: godi fingerfood foto sekt essen spiel dance;
|
||||||
|
|
||||||
|
#info-image-container {
|
||||||
|
position: relative;
|
||||||
|
|
||||||
|
img.circler {
|
||||||
|
position: absolute;
|
||||||
|
height: 12%;
|
||||||
|
opacity: 0;
|
||||||
|
|
||||||
|
cursor: pointer;
|
||||||
|
|
||||||
|
//left: 0;
|
||||||
|
&.godi {
|
||||||
|
top: 1.5%;
|
||||||
|
left: 46%;
|
||||||
|
}
|
||||||
|
|
||||||
|
&.fingerfood {
|
||||||
|
left: 9%;
|
||||||
|
top: 12.5%;
|
||||||
|
width: 32%;
|
||||||
|
height: 20%;
|
||||||
|
}
|
||||||
|
|
||||||
|
&.foto {
|
||||||
|
left: 48%;
|
||||||
|
top: 32%;
|
||||||
|
width: 32%;
|
||||||
|
}
|
||||||
|
|
||||||
|
&.sekt {
|
||||||
|
left: 9%;
|
||||||
|
top: 46.5%;
|
||||||
|
width: 32%;
|
||||||
|
}
|
||||||
|
|
||||||
|
&.essen {
|
||||||
|
left: 48%;
|
||||||
|
top: 60%;
|
||||||
|
width: 32%;
|
||||||
|
}
|
||||||
|
|
||||||
|
&.spiel {
|
||||||
|
left: 11%;
|
||||||
|
top: 72.5%;
|
||||||
|
width: 30%;
|
||||||
|
}
|
||||||
|
|
||||||
|
&.dance {
|
||||||
|
left: 48%;
|
||||||
|
top: 86%;
|
||||||
|
width: 29%;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@each $state in $states {
|
||||||
|
&[data-state='#{$state}'] .#{$state} {
|
||||||
|
opacity: $opacityVisible;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.anchor{
|
||||||
|
display: block;
|
||||||
|
//margin-bottom: 2rem;
|
||||||
|
padding-top: 1rem;
|
||||||
|
&:first-child{
|
||||||
|
padding-top: 0;
|
||||||
|
};
|
||||||
|
p:last-child {
|
||||||
|
margin-bottom: 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -8,6 +8,13 @@
|
|||||||
@import "navbar";
|
@import "navbar";
|
||||||
@import "unterkunft";
|
@import "unterkunft";
|
||||||
@import "geschenke";
|
@import "geschenke";
|
||||||
|
@import "tagesablauf";
|
||||||
|
|
||||||
|
@font-face {
|
||||||
|
font-family: "WinterSunrise";
|
||||||
|
src: url("../img/WinterSunrise.ttf");
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
.width-100 {
|
.width-100 {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
@ -44,7 +51,7 @@ body {
|
|||||||
height: 100%;
|
height: 100%;
|
||||||
background: $background-color;
|
background: $background-color;
|
||||||
|
|
||||||
> .grid-container {
|
> div {
|
||||||
height: 100%;
|
height: 100%;
|
||||||
|
|
||||||
> .grid-x {
|
> .grid-x {
|
||||||
@ -74,6 +81,11 @@ a.hidden-link, a.hidden-link:hover{
|
|||||||
color: inherit;
|
color: inherit;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
h1 {
|
||||||
|
font-family: WinterSunrise, serif;
|
||||||
|
font-size: 4.5rem;
|
||||||
|
}
|
||||||
|
|
||||||
#home-img-container {
|
#home-img-container {
|
||||||
#home-img {
|
#home-img {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
@ -91,11 +103,12 @@ a.hidden-link, a.hidden-link:hover{
|
|||||||
#start-text-img-overlay {
|
#start-text-img-overlay {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
left: 2rem;
|
left: 2rem;
|
||||||
top: 50%;
|
bottom: 3rem;
|
||||||
|
//top: 50%;
|
||||||
color: white;
|
color: white;
|
||||||
font-family: "Winter Sunrise", Arial, serif;
|
//font-family: "WinterSunrise", Arial, serif;
|
||||||
font-size: 4rem;
|
font-size: 8rem;
|
||||||
line-height: 2.5;
|
line-height: 1.2;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -112,4 +125,7 @@ img.full-screen-width {
|
|||||||
|
|
||||||
.hidden {
|
.hidden {
|
||||||
display: none;
|
display: none;
|
||||||
|
}
|
||||||
|
.site-content{
|
||||||
|
padding: 3rem 2rem;
|
||||||
}
|
}
|
||||||
4
todo.txt
@ -1,10 +1,10 @@
|
|||||||
- Schriftarten herunterladen & einbinden
|
- Schriftarten herunterladen & einbinden
|
||||||
- Bahnschrift für navbar
|
- Bahnschrift für navbar
|
||||||
- Allgemeine Schriftart
|
- Allgemeine Schriftart
|
||||||
- Überschriften, Winter Sunrise, Regular
|
|
||||||
- Hotelname bei Unterkunft anpassen
|
- Hotelname bei Unterkunft anpassen
|
||||||
- E-Mail bei Herzlich Willkommen hinzufügen
|
- E-Mail bei Herzlich Willkommen hinzufügen
|
||||||
- E-Mailadresse von Melanie - Tagesablauf
|
- E-Mailadresse von Melanie - Tagesablauf
|
||||||
- Tagesablauf Bild-Scroll-Click
|
- Tagesablauf Bild-Scroll-Click
|
||||||
- Geschenkliste synchronisieren
|
- Geschenkliste synchronisieren
|
||||||
- Mobilansicht
|
- Mobilansicht
|
||||||
|
- WinterSunrise ß bei Spiel und Spaß unter Tagesablauf
|
||||||