-
+
Castrambe
diff --git a/app/Modules/Fykos/Core/styles/main.scss b/app/Modules/Fykos/Core/styles/main.scss
index cc7045484..30e150788 100644
--- a/app/Modules/Fykos/Core/styles/main.scss
+++ b/app/Modules/Fykos/Core/styles/main.scss
@@ -52,8 +52,8 @@ $navbar-dark-color: $text-on-primary;
$navbar-dark-hover-color: $text-on-primary;
@import "node_modules/bootstrap/scss/bootstrap";
-$flag-icon-css-path: '/node_modules/flag-icon-css/flags';
-@import '../../../../../node_modules/flag-icon-css/sass/flag-icon';
+$flag-icons-path: '/node_modules/flag-icons/flags';
+@import "../../../../../node_modules/flag-icons/sass/flag-icons";
// @import '../../../../Models/OldFykos/css/cssAll';
diff --git a/app/Modules/Fykos/DefaultModule/ResultsPresenter.php b/app/Modules/Fykos/DefaultModule/ResultsPresenter.php
index af3e4fa92..751b228d0 100644
--- a/app/Modules/Fykos/DefaultModule/ResultsPresenter.php
+++ b/app/Modules/Fykos/DefaultModule/ResultsPresenter.php
@@ -23,6 +23,4 @@ public function renderDefault(): void
$this->template->contest = $this->getContest();
$this->template->results = $this->downloader->download(new SeriesResultsRequest(1, $year));
}
-
-
}
diff --git a/app/Modules/Vyfuk/Core/styles/layout.scss b/app/Modules/Vyfuk/Core/styles/layout.scss
index ff5ff505b..a0bdd7cfc 100644
--- a/app/Modules/Vyfuk/Core/styles/layout.scss
+++ b/app/Modules/Vyfuk/Core/styles/layout.scss
@@ -9,11 +9,6 @@ body {
background-color: black;
}
-.btn-primary {
- @extend .btn-primary;
- color: $text-on-primary;
-}
-
.btn-outline {
@extend .btn-outline;
text-align: center;
diff --git a/app/Modules/Vyfuk/Core/styles/main.scss b/app/Modules/Vyfuk/Core/styles/main.scss
index 58e689b2c..36c4fa02b 100644
--- a/app/Modules/Vyfuk/Core/styles/main.scss
+++ b/app/Modules/Vyfuk/Core/styles/main.scss
@@ -10,7 +10,7 @@ $text-on-primary: white;
$text-dimmed: #CCCCCC;
$page-width: 77rem;
-
+$min-contrast-ratio: 3;
$base-font-size: 18px;
// Use the following font weights.
@@ -32,17 +32,15 @@ $navbar-dark-hover-color: $text-dimmed;
@import "node_modules/bootstrap/scss/bootstrap";
@import 'bootstrap-icons/font/bootstrap-icons.scss';
-$flag-icon-css-path: '/node_modules/flag-icon-css/flags';
-@import '../../../../../node_modules/flag-icon-css/sass/flag-icon';
+$flag-icons-path: '/node_modules/flag-icons/flags';
+@import "../../../../../node_modules/flag-icons/sass/flag-icons";
@import "./../../../Fof/Core/styles/sponsors";
@import "./layout";
@import "./titlepage";
@import "./navigation";
@import "./organizers";
-
-// @import "node_modules/@fortawesome/fontawesome-free/scss/fontawesome";
-// @import "node_modules/@fortawesome/fontawesome-free/scss/solid";
+@import "./other.scss";
@import '../../../../Components/Problem/problem';
@import '../../../../Components/Problem/vyfuk';
diff --git a/app/Modules/Vyfuk/Core/styles/other.scss b/app/Modules/Vyfuk/Core/styles/other.scss
new file mode 100644
index 000000000..dcd0720ae
--- /dev/null
+++ b/app/Modules/Vyfuk/Core/styles/other.scss
@@ -0,0 +1,9 @@
+.event-img-box {
+ text-align: center;
+}
+
+.event-img {
+ max-width: 100%;
+ max-height: 300px;
+ padding: 10px;
+}
\ No newline at end of file
diff --git a/app/Modules/Vyfuk/DefaultModule/EventsPresenter.php b/app/Modules/Vyfuk/DefaultModule/EventsPresenter.php
index a5b342c17..d4bed110a 100644
--- a/app/Modules/Vyfuk/DefaultModule/EventsPresenter.php
+++ b/app/Modules/Vyfuk/DefaultModule/EventsPresenter.php
@@ -6,10 +6,6 @@
use App\Models\Downloader\EventService;
use DateTime;
-use Exception;
-use Nette\Application\AbortException;
-use Nette\Application\BadRequestException;
-use Nette\Application\Responses\CallbackResponse;
use Nette\Caching\Cache;
use Nette\Caching\Storage;
@@ -49,59 +45,13 @@ public function renderDetail(int $event): void
$this->template->participants = implode(', ', $array);
}
- public function renderDefault(?int $typeID = null): void
+ public function renderTabor(): void
{
- $eventTypes = [
- 10 => 'tábor',
- 12 => 'Podzimní setkání',
- 11 => 'Jarní setkání',
- 15 => 'Kyberkoncil'
- ];
- $ids = array_keys($eventTypes);
- $selectedId = in_array($typeID, $ids) ? $typeID : null;
-
- $events = $this->eventService->getEvents($selectedId ? [$selectedId] : $ids);
- $this->template->eventTypes = $eventTypes;
- $this->template->selected = $selectedId;
- $this->template->events = array_reverse($events);
- }
-
- /**
- * @throws AbortException
- * @throws BadRequestException
- * @throws \Throwable
- */
- public function actionGetRawCalendar(): void
- {
- $calendar = $this->loadCalendar();
- if (!$calendar) {
- $this->error('', 503);
- } else {
- $this->sendResponse(new CallbackResponse(function ($request, $response) use ($calendar) {
- $response->setHeader('Content-Type', 'text/calendar');
- echo ($calendar);
- }));
- }
+ $this->template->events = array_reverse($this->eventService->getEvents([10]));
}
- /**
- * @throws \Throwable
- */
- private function loadCalendar(): string
+ public function renderSetkani(): void
{
- return $this->cache->load(
- 'vyfuk.calender',
- function (&$dependencies): string {
- $dependencies[Cache::Expire] = time() + 24 * 60 * 60;
- $curl = curl_init('https://drive.vyfuk.org/remote.php/dav/public-calendars/tLnfCNLzypBHHeEb?export');
- curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
- $res = curl_exec($curl);
- curl_close($curl);
- if (curl_getinfo($curl)['http_code'] != 200) {
- throw new Exception('Vyfuk calendar failed to be downloaded');
- }
- return $res;
- }
- );
+ $this->template->events = array_reverse($this->eventService->getEvents([11, 12]));
}
}
diff --git a/app/Modules/Vyfuk/DefaultModule/scripts/calendar-vyfuk.js b/app/Modules/Vyfuk/DefaultModule/scripts/calendar-vyfuk.js
deleted file mode 100644
index 6fc972561..000000000
--- a/app/Modules/Vyfuk/DefaultModule/scripts/calendar-vyfuk.js
+++ /dev/null
@@ -1,30 +0,0 @@
-import { Calendar } from '@fullcalendar/core';
-import dayGridPlugin from '@fullcalendar/daygrid';
-import listPlugin from '@fullcalendar/list';
-import iCalendarPlugin from '@fullcalendar/icalendar'
-import csLocale from '@fullcalendar/core/locales/cs';
-import bootstrap5Plugin from '@fullcalendar/bootstrap5';
-
-
-document.addEventListener('DOMContentLoaded', function () {
- var calendarEl = document.getElementById('calendar');
- var calendar = new Calendar(calendarEl, {
- plugins: [dayGridPlugin, iCalendarPlugin, listPlugin, bootstrap5Plugin],
- locale: csLocale,
- themeSystem: 'bootstrap5',
- initialView: 'dayGridMonth',
- headerToolbar: {
- left: 'prev,next today',
- center: 'title',
- right: 'dayGridMonth,listYear'
- },
- navLinks: false,
- editable: false,
- dayMaxEvents: true,
- events: {
- url: '/events/getrawcalendar',
- format: 'ics'
- },
- });
- calendar.render();
-});
diff --git a/app/Modules/Vyfuk/DefaultModule/templates/Events/calendar.latte b/app/Modules/Vyfuk/DefaultModule/templates/Events/calendar.latte
deleted file mode 100644
index 66dcb8178..000000000
--- a/app/Modules/Vyfuk/DefaultModule/templates/Events/calendar.latte
+++ /dev/null
@@ -1,11 +0,0 @@
-{block title}Kalendář{/block}
-{block scripts}
-
-{/block}
-{block main}
-
-{/block}
diff --git a/app/Modules/Vyfuk/DefaultModule/templates/Events/dalsi.latte b/app/Modules/Vyfuk/DefaultModule/templates/Events/dalsi.latte
new file mode 100644
index 000000000..c839b20a6
--- /dev/null
+++ b/app/Modules/Vyfuk/DefaultModule/templates/Events/dalsi.latte
@@ -0,0 +1,135 @@
+{block title}Další akce a soutěže{/block}
+{block main}
+
+
+ {ifset subtitle}{/ifset}
+ {ifset title}{include title} {/ifset}
+
+ Kromě akcí pořádaných Výfukem můžeme našim řešitelům a dalším zájemcům o přírodní vědy doporučit i další
+ podobné aktivity, do kterých se mohou v případě zájmu zapojit.
+
+
+
+
+
+
Pikomat
+
+ Pikomat je matematický korespondenční seminář pro stejnou věkovou kategorii jako Výfuk. V průběhu
+ roku zveřejňuje šest sérií, nemá prázdninové série a má jinou strukturu akcí. Pokud máte mladší
+ sourozence nebo kamarády, můžete vyzkoušet Pikomat
+ Junior .
+
+
+ Více informací
+
+
+
+
+
+
+
+
+
Fyzikální olympiáda
+
+ Fyzikální olympiáda je předmětová soutěž pro všechny ročníky základních i středních škol.
+
+
+ Více informací
+
+
+
+
+
+
+
+
+
Astronomická olympiáda
+
+ Astronomická olympiáda je soutěž s úlohami z oboru astronomie a příbuzných oborů, která je rovněž
+ určena pro žáky základních i středních škol.
+
+
+ Více informací
+
+
+
+
+
+
+
+
+
Matematická olympiáda
+
+ Matematická olympiáda je předmětová soutěž pro všechny ročníky základních i středních škol.
+
+
+ Více informací
+
+
+
+
+
+
+
+
+
MaSo
+
+ MaSo je týmová matematická soutěž pro žáky šestých až devátých tříd základních škol a odpovídajících
+ ročníků víceletých gymnázií, která se ovšem na rozdíl od Náboje Junior koná dvakrát ročně. Také pravidla a
+ průběh jsou poněkud odlišné.
+
+
+ Více informací
+
+
+
+
+
+
+
+{/block}
\ No newline at end of file
diff --git a/app/Modules/Vyfuk/DefaultModule/templates/Events/default.latte b/app/Modules/Vyfuk/DefaultModule/templates/Events/default.latte
index e250f68a2..5095d01d3 100644
--- a/app/Modules/Vyfuk/DefaultModule/templates/Events/default.latte
+++ b/app/Modules/Vyfuk/DefaultModule/templates/Events/default.latte
@@ -4,30 +4,124 @@
{ifset subtitle}{/ifset}
{ifset title}{include title} {/ifset}
-
-
- kalendář
- {foreach $eventTypes as $key => $val}
- {if $selected==$key}
- {$val}
- {else}
- {$val}
- {/if}
- {/foreach}
+ Výfuk pro své řešitele organizuje každoročně několik akcí – letní tábor, jarní a podzimní setkání, zimní
+ víkendovku a Náboj Junior.
-
- {$event->nameNew[$lang]}
-
- {$event->description[$lang]|noescape}
-
-
-
- Informace o akci
-
-
- {control gallery:randomLine "/media/photos/event/" . $event->eventId}
+
+
+
+
Tábor
+
+ Letní tábor Výfuku organizujeme vždy přibližně v polovině letních prázdnin pro asi 30 řešitelů. Na
+ tábor zveme podle výsledků prvních sérií podle jistých pravidel . Na výfučím táboře účastníky čekají nejen klasické
+ táborové aktivity, tedy především různé hry, ale i spousta zajímavých fyzikálních přednášek a
+ experimentů.
+
+
+ Naše tábory
+
+
+
+
+
+
+
+
+
+
+
Setkání
+
+ Kromě letního tábora organizujeme pro naše řešitele v průběhu roku na jaře a na podzim dvě víkendová
+ setkání. O účasti na setkání nerozhoduje umístění ve Výfuku, pouze čas přihlášení. Účastní se
+ zpravidla kolem 50 řešitelů. Náplní setkání jsou přednášky od organizátorů i vědeckých pracovníků,
+ exkurze na zajímavá vědecká pracoviště a samozřejmě i množství her.
+
+
+ Naše setkání
+
+
+
+
+
+
+
+
+
+
+
Zimní víkendovka
+
+ Zimní víkendovka je nová výfučí akce plánovaná poprvé na začátek roku 2025. Svým formátem bude
+ připomínat setkání, ovšem s omezenější kapacitou a volnějším programem. Určitě nebudou chybět
+ přednášky doplněné spoustou prostoru pro hraní her a deskovek. Podrobnosti zveřejníme ke konci roku.
+
+ {*
+ Naše setkání
+ *}
+
+
+
+
+
+
+
+
+
+
Náboj Junior
+
+ Náboj Junior je soutěž pro čtyřčlenné týmy žáků druhého stupně základních škol a odpovídajících
+ ročníků víceletých gymnázií. Probíhá asi na dvaceti soutěžních místech po celé České republice a na
+ desítkách dalších v zahraničí. Jedná se o skvělou příležitost, jak si otestovat dovednosti osvojené
+ řešením Výfuku a vyzkoušet si řešení fyzikálních příkladů s dalšími kamarády. Pro účast v soutěži
+ není nutné být řešitelem Výfuku.
+
+
+ Stránky Náboje Junior
+
+
+
+
+
+
+
+
+
+
+
Další aktivity a soutěže
+
+ Kromě výše zmíněných akcí, které Výfuk pořádá, existuje množství dalších aktivit, které by naše
+ řešitele nebo jiné návštěvníky webu mohly zaujmout. Určitě neuděláš chybu, když jim dáš také šanci.
+ Se všemi níže uvedenými aktivitami mají naši organizátoři bohaté zkušenosti ze svých řešitelských
+ let a mohou je jednoznačně doporučit.
+
+
+ Více informací
+
+
+
+
-{/block}
+{/block}
\ No newline at end of file
diff --git a/app/Modules/Vyfuk/DefaultModule/templates/Events/setkani.latte b/app/Modules/Vyfuk/DefaultModule/templates/Events/setkani.latte
new file mode 100644
index 000000000..209b5376e
--- /dev/null
+++ b/app/Modules/Vyfuk/DefaultModule/templates/Events/setkani.latte
@@ -0,0 +1,61 @@
+{block title}Setkání{/block}
+{block main}
+
+
+ {ifset subtitle}{/ifset}
+ {ifset title}{include title} {/ifset}
+
+ {foreach $events as $key => $event}
+ {if $event->begin->getTimestamp() >= time()}
+
+ {$event->nameNew[$lang]}
+
+ {$event->description[$lang]|noescape}
+
+
+
+ Informace o akci
+
+
+ {control gallery:randomLine "/media/photos/event/" . $event->eventId}
+
+ {/if}
+ {/foreach}
+
+
+ Nestačí ti tábor? Nebo si chceš vyzkoušet, jak výfučí akce probíhají a co tě tam čeká? Tak s námi určitě jeď
+ na víkendové setkání řešitelů!
+
+
+ Víkendová setkání jsou intenzivní akce, během kterých se snažíme našim řešitelům v omezeném čase předat to
+ nejlepší, co Výfuk může nabídnout. Můžeš se těšit na přednášky, exkurze na vědecká pracoviště a různé další
+ aktivity včetně her. Setkání je v neposlední řadě i skvělá příležitost, jak se seznámit s ostatními řešiteli
+ a poznat naživo organizátory.
+
+
+ Setkání probíhají na jaře a na podzim. Setkání obyčejně začíná v pátek v podvečer a končí v neděli brzy
+ odpoledne. O účasti na setkání nerozhoduje tvoje umístění ve Výfuku, pouze čas přihlášení. V posledních
+ letech na jedno setkání přijede zpravidla kolem 50 řešitelů.
+
+
+ Jestliže tě setkání zaujalo a zatím jsi na žádném nebyl, určitě se mrkni na fotky na našich sociálních
+ sítích, případně se na nás obrať s libovolným doplňujícím dotazem.
+
+
+
+ {foreach $events as $key => $event}
+ {if $event->begin->getTimestamp() < time()}
+ {$event->nameNew[$lang]}
+
+ {$event->description[$lang]|noescape}
+
+
+
+ Informace o akci
+
+
+ {control gallery:randomLine "/media/photos/event/" . $event->eventId}
+ {/if}
+ {/foreach}
+
+{/block}
\ No newline at end of file
diff --git a/app/Modules/Vyfuk/DefaultModule/templates/Events/tabor.latte b/app/Modules/Vyfuk/DefaultModule/templates/Events/tabor.latte
new file mode 100644
index 000000000..6fb78f7e3
--- /dev/null
+++ b/app/Modules/Vyfuk/DefaultModule/templates/Events/tabor.latte
@@ -0,0 +1,63 @@
+{block title}Tábor{/block}
+{block main}
+
+
+ {ifset subtitle}{/ifset}
+ {ifset title}{include title} {/ifset}
+
+ {foreach $events as $key => $event}
+ {if $event->begin->getTimestamp() >= time()}
+
+ {$event->nameNew[$lang]}
+
+ {$event->description[$lang]|noescape}
+
+
+
+ Informace o akci
+
+
+ {control gallery:randomLine "/media/photos/event/" . $event->eventId}
+
+ {/if}
+ {/foreach}
+
+
+ Chceš zažít fyziku tak jako nikdy předtím? Máš zájem se nejen něco naučit, ale i poznat podobně naladěné
+ kamarády a užít si při tom i klasické táborové aktivity? Potom jeď na letní tábor Výfuku!
+
+
+ Letní tábor Výfuku je čtrnáct dní s perfektně vyladěným programem, během kterých se rozhodně nebudeš nudit.
+ Kromě přednášek a experimentů si dosyta užiješ také klasické táborové aktivity. Můžeš se těšit zejména na
+ spoustu denních i nočních her a výletů. To všechno můžeš zažít společně s dalšími účastníky a organizátory,
+ kteří tam budou po celou dobu pro tebe.
+
+
+ Letní tábor se typicky koná v polovině letních prázdnin v nějakém malebném koutu České republiky, kde nám
+ dokážou poskytnout adekvátní zázemí. Spaní je vždy zajištěno na postelích ve zděné budově. Zveme na něj
+ podle výsledků prvních sérií podle jistých pravidel . Obecně ale
+ platí, že dostatečně motivovaní účastníci se na něj téměř vždy dostanou. Cena tábora se pro řešitele Výfuku
+ pohybuje kolem 6 000 Kč, zbytek nákladů hradí MFF UK.
+
+
+ Pokud nad účastí na letním táboře Výfuku uvažuješ, určitě se podívej na fotky zde na webu nebo na našich
+ sociálních sítích.
+
+
+
+ {foreach $events as $key => $event}
+ {if $event->begin->getTimestamp() < time()}
+ {$event->nameNew[$lang]}
+
+ {$event->description[$lang]|noescape}
+
+
+
+ Informace o akci
+
+
+ {control gallery:randomLine "/media/photos/event/" . $event->eventId}
+ {/if}
+ {/foreach}
+
+{/block}
\ No newline at end of file
diff --git a/app/Renderers/templates/formRender.latte b/app/Renderers/templates/formRender.latte
index 4dc3d9b8b..ceea67517 100644
--- a/app/Renderers/templates/formRender.latte
+++ b/app/Renderers/templates/formRender.latte
@@ -23,7 +23,7 @@
{default}Unknown
{/switch}
{else}
-
+
{$item['control']->getCaption()}
{/if}
{$item['control']->getOption('count')}
diff --git a/package-lock.json b/package-lock.json
index 4787d9fc0..80463f5ae 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -9,23 +9,17 @@
"@popperjs/core": "^2.9.2",
"@types/photoswipe": "^4.1.2",
"bootstrap": "^5.0.2",
- "flag-icon-css": "^3.5.0",
+ "flag-icons": "^7.2.3",
"photoswipe": "github:dimsemenov/photoswipe#v5-beta",
"react": "^17.0.2",
"react-dom": "^17.0.2"
},
"devDependencies": {
- "@fullcalendar/bootstrap5": "^6.1.10",
- "@fullcalendar/core": "^6.1.10",
- "@fullcalendar/daygrid": "^6.1.10",
- "@fullcalendar/icalendar": "^6.1.10",
- "@fullcalendar/list": "^6.1.10",
"@types/bootstrap": "^5.2.10",
"@types/react": "^17.0.36",
"@types/react-dom": "^17.0.11",
"bootstrap-icons": "^1.11.3",
"css-loader": "^6.2.0",
- "ical.js": "^1.5.0",
"mini-css-extract-plugin": "^2.1.0",
"resolve-url-loader": "^4.0.0",
"sass": "^1.36.0",
@@ -45,52 +39,6 @@
"node": ">=10.0.0"
}
},
- "node_modules/@fullcalendar/bootstrap5": {
- "version": "6.1.10",
- "resolved": "https://registry.npmjs.org/@fullcalendar/bootstrap5/-/bootstrap5-6.1.10.tgz",
- "integrity": "sha512-hBJToRQqKiWFnt+KQjeSN5HkYN0UTvgFnSH0P88Pj26zl6CXargee8pGccLBbqBQtdCZhXYLX3QGPHStq7Ds7Q==",
- "dev": true,
- "peerDependencies": {
- "@fullcalendar/core": "~6.1.10"
- }
- },
- "node_modules/@fullcalendar/core": {
- "version": "6.1.10",
- "resolved": "https://registry.npmjs.org/@fullcalendar/core/-/core-6.1.10.tgz",
- "integrity": "sha512-oTXGJSAGpCf1oY+CKp5qYjMHkJCPBkJ3SHitl63n8Q6xKeiwQ4EF6Au451euUovREwJpLmD1AyZrCnWmtB9AVg==",
- "dev": true,
- "dependencies": {
- "preact": "~10.12.1"
- }
- },
- "node_modules/@fullcalendar/daygrid": {
- "version": "6.1.10",
- "resolved": "https://registry.npmjs.org/@fullcalendar/daygrid/-/daygrid-6.1.10.tgz",
- "integrity": "sha512-Z4GRm1IyHKgxXFTWGcEI0nTsvYOIkpE0aMt3/o3ER2SZkF+hfwcDFhtj0c9+WhMjXFIWYeoTnA9rUOY7Zl/nxA==",
- "dev": true,
- "peerDependencies": {
- "@fullcalendar/core": "~6.1.10"
- }
- },
- "node_modules/@fullcalendar/icalendar": {
- "version": "6.1.10",
- "resolved": "https://registry.npmjs.org/@fullcalendar/icalendar/-/icalendar-6.1.10.tgz",
- "integrity": "sha512-TXjtZhjYIQZjeqULRjwDd2VWlymdhJmltaN26YS0dcGuCrQhJJ3x/sODVbVaW1mvbMjnjXYUE8AhdpxvhYGIJg==",
- "dev": true,
- "peerDependencies": {
- "@fullcalendar/core": "~6.1.10",
- "ical.js": "^1.4.0"
- }
- },
- "node_modules/@fullcalendar/list": {
- "version": "6.1.10",
- "resolved": "https://registry.npmjs.org/@fullcalendar/list/-/list-6.1.10.tgz",
- "integrity": "sha512-WE4vuSUCzol4tJd0ZP0cNxeyRPaZcsVVYs2I3qdf3OZQkXwDCdSyWEz0Hluf+XZWcZXt21aEYKlxRjwUpQcf4Q==",
- "dev": true,
- "peerDependencies": {
- "@fullcalendar/core": "~6.1.10"
- }
- },
"node_modules/@popperjs/core": {
"version": "2.10.2",
"resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.10.2.tgz",
@@ -913,10 +861,11 @@
"node": ">=8"
}
},
- "node_modules/flag-icon-css": {
- "version": "3.5.0",
- "resolved": "https://registry.npmjs.org/flag-icon-css/-/flag-icon-css-3.5.0.tgz",
- "integrity": "sha512-pgJnJLrtb0tcDgU1fzGaQXmR8h++nXvILJ+r5SmOXaaL/2pocunQo2a8TAXhjQnBpRLPtZ1KCz/TYpqeNuE2ew=="
+ "node_modules/flag-icons": {
+ "version": "7.2.3",
+ "resolved": "https://registry.npmjs.org/flag-icons/-/flag-icons-7.2.3.tgz",
+ "integrity": "sha512-X2gUdteNuqdNqob2KKTJTS+ZCvyWeLCtDz9Ty8uJP17Y4o82Y+U/Vd4JNrdwTAjagYsRznOn9DZ+E/Q52qbmqg==",
+ "license": "MIT"
},
"node_modules/fsevents": {
"version": "2.3.2",
@@ -1004,12 +953,6 @@
"node": ">=10.17.0"
}
},
- "node_modules/ical.js": {
- "version": "1.5.0",
- "resolved": "https://registry.npmjs.org/ical.js/-/ical.js-1.5.0.tgz",
- "integrity": "sha512-7ZxMkogUkkaCx810yp0ZGKvq1ZpRgJeornPttpoxe6nYZ3NLesZe1wWMXDdwTkj/b5NtXT+Y16Aakph/ao98ZQ==",
- "dev": true
- },
"node_modules/icss-utils": {
"version": "5.1.0",
"resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-5.1.0.tgz",
@@ -1613,16 +1556,6 @@
"integrity": "sha512-97DXOFbQJhk71ne5/Mt6cOu6yxsSfM0QGQyl0L25Gca4yGWEGJaig7l7gbCX623VqTBNGLRLaVUCnNkcedlRSQ==",
"dev": true
},
- "node_modules/preact": {
- "version": "10.12.1",
- "resolved": "https://registry.npmjs.org/preact/-/preact-10.12.1.tgz",
- "integrity": "sha512-l8386ixSsBdbreOAkqtrwqHwdvR35ID8c3rKPa8lCWuO86dBi32QWHV4vfsZK1utLLFMvw+Z5Ad4XLkZzchscg==",
- "dev": true,
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/preact"
- }
- },
"node_modules/punycode": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz",
@@ -2388,43 +2321,6 @@
"integrity": "sha512-6nFkfkmSeV/rqSaS4oWHgmpnYw194f6hmWF5is6b0J1naJZoiD0NTc9AiUwPHvWsowkjuHErCZT1wa0jg+BLIA==",
"dev": true
},
- "@fullcalendar/bootstrap5": {
- "version": "6.1.10",
- "resolved": "https://registry.npmjs.org/@fullcalendar/bootstrap5/-/bootstrap5-6.1.10.tgz",
- "integrity": "sha512-hBJToRQqKiWFnt+KQjeSN5HkYN0UTvgFnSH0P88Pj26zl6CXargee8pGccLBbqBQtdCZhXYLX3QGPHStq7Ds7Q==",
- "dev": true,
- "requires": {}
- },
- "@fullcalendar/core": {
- "version": "6.1.10",
- "resolved": "https://registry.npmjs.org/@fullcalendar/core/-/core-6.1.10.tgz",
- "integrity": "sha512-oTXGJSAGpCf1oY+CKp5qYjMHkJCPBkJ3SHitl63n8Q6xKeiwQ4EF6Au451euUovREwJpLmD1AyZrCnWmtB9AVg==",
- "dev": true,
- "requires": {
- "preact": "~10.12.1"
- }
- },
- "@fullcalendar/daygrid": {
- "version": "6.1.10",
- "resolved": "https://registry.npmjs.org/@fullcalendar/daygrid/-/daygrid-6.1.10.tgz",
- "integrity": "sha512-Z4GRm1IyHKgxXFTWGcEI0nTsvYOIkpE0aMt3/o3ER2SZkF+hfwcDFhtj0c9+WhMjXFIWYeoTnA9rUOY7Zl/nxA==",
- "dev": true,
- "requires": {}
- },
- "@fullcalendar/icalendar": {
- "version": "6.1.10",
- "resolved": "https://registry.npmjs.org/@fullcalendar/icalendar/-/icalendar-6.1.10.tgz",
- "integrity": "sha512-TXjtZhjYIQZjeqULRjwDd2VWlymdhJmltaN26YS0dcGuCrQhJJ3x/sODVbVaW1mvbMjnjXYUE8AhdpxvhYGIJg==",
- "dev": true,
- "requires": {}
- },
- "@fullcalendar/list": {
- "version": "6.1.10",
- "resolved": "https://registry.npmjs.org/@fullcalendar/list/-/list-6.1.10.tgz",
- "integrity": "sha512-WE4vuSUCzol4tJd0ZP0cNxeyRPaZcsVVYs2I3qdf3OZQkXwDCdSyWEz0Hluf+XZWcZXt21aEYKlxRjwUpQcf4Q==",
- "dev": true,
- "requires": {}
- },
"@popperjs/core": {
"version": "2.10.2",
"resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.10.2.tgz",
@@ -3076,10 +2972,10 @@
"path-exists": "^4.0.0"
}
},
- "flag-icon-css": {
- "version": "3.5.0",
- "resolved": "https://registry.npmjs.org/flag-icon-css/-/flag-icon-css-3.5.0.tgz",
- "integrity": "sha512-pgJnJLrtb0tcDgU1fzGaQXmR8h++nXvILJ+r5SmOXaaL/2pocunQo2a8TAXhjQnBpRLPtZ1KCz/TYpqeNuE2ew=="
+ "flag-icons": {
+ "version": "7.2.3",
+ "resolved": "https://registry.npmjs.org/flag-icons/-/flag-icons-7.2.3.tgz",
+ "integrity": "sha512-X2gUdteNuqdNqob2KKTJTS+ZCvyWeLCtDz9Ty8uJP17Y4o82Y+U/Vd4JNrdwTAjagYsRznOn9DZ+E/Q52qbmqg=="
},
"fsevents": {
"version": "2.3.2",
@@ -3142,12 +3038,6 @@
"integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==",
"dev": true
},
- "ical.js": {
- "version": "1.5.0",
- "resolved": "https://registry.npmjs.org/ical.js/-/ical.js-1.5.0.tgz",
- "integrity": "sha512-7ZxMkogUkkaCx810yp0ZGKvq1ZpRgJeornPttpoxe6nYZ3NLesZe1wWMXDdwTkj/b5NtXT+Y16Aakph/ao98ZQ==",
- "dev": true
- },
"icss-utils": {
"version": "5.1.0",
"resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-5.1.0.tgz",
@@ -3569,12 +3459,6 @@
"integrity": "sha512-97DXOFbQJhk71ne5/Mt6cOu6yxsSfM0QGQyl0L25Gca4yGWEGJaig7l7gbCX623VqTBNGLRLaVUCnNkcedlRSQ==",
"dev": true
},
- "preact": {
- "version": "10.12.1",
- "resolved": "https://registry.npmjs.org/preact/-/preact-10.12.1.tgz",
- "integrity": "sha512-l8386ixSsBdbreOAkqtrwqHwdvR35ID8c3rKPa8lCWuO86dBi32QWHV4vfsZK1utLLFMvw+Z5Ad4XLkZzchscg==",
- "dev": true
- },
"punycode": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz",
diff --git a/package.json b/package.json
index 9494710fb..cea4a7761 100644
--- a/package.json
+++ b/package.json
@@ -6,17 +6,11 @@
"clear_latte_cache": "rm -r temp/cache/latte"
},
"devDependencies": {
- "@fullcalendar/bootstrap5": "^6.1.10",
- "@fullcalendar/core": "^6.1.10",
- "@fullcalendar/daygrid": "^6.1.10",
- "@fullcalendar/icalendar": "^6.1.10",
- "@fullcalendar/list": "^6.1.10",
"@types/bootstrap": "^5.2.10",
"@types/react": "^17.0.36",
"@types/react-dom": "^17.0.11",
"bootstrap-icons": "^1.11.3",
"css-loader": "^6.2.0",
- "ical.js": "^1.5.0",
"mini-css-extract-plugin": "^2.1.0",
"resolve-url-loader": "^4.0.0",
"sass": "^1.36.0",
@@ -30,7 +24,7 @@
"@popperjs/core": "^2.9.2",
"@types/photoswipe": "^4.1.2",
"bootstrap": "^5.0.2",
- "flag-icon-css": "^3.5.0",
+ "flag-icons": "^7.2.3",
"photoswipe": "github:dimsemenov/photoswipe#v5-beta",
"react": "^17.0.2",
"react-dom": "^17.0.2"
diff --git a/webpack.config.js b/webpack.config.js
index b02b83540..7b1b38b47 100644
--- a/webpack.config.js
+++ b/webpack.config.js
@@ -84,7 +84,6 @@ const vyfukConfiguration = {
...commonConfiguration,
entry: {
main: path.resolve(__dirname, './app/main-vyfuk.js'),
- calendar: path.resolve(__dirname, './app/Modules/Vyfuk/DefaultModule/scripts/calendar-vyfuk.js')
},
output: {
path: path.resolve(__dirname, './www/vyfuk/assets'),
diff --git a/www/vyfuk/images/logos/AO.jpg b/www/vyfuk/images/logos/AO.jpg
new file mode 100644
index 000000000..9e3a02e21
Binary files /dev/null and b/www/vyfuk/images/logos/AO.jpg differ
diff --git a/www/vyfuk/images/logos/FO.svg b/www/vyfuk/images/logos/FO.svg
new file mode 100644
index 000000000..579d39e3c
--- /dev/null
+++ b/www/vyfuk/images/logos/FO.svg
@@ -0,0 +1,86 @@
+
+
diff --git a/www/vyfuk/images/logos/MO.svg b/www/vyfuk/images/logos/MO.svg
new file mode 100644
index 000000000..9ddbb01d6
--- /dev/null
+++ b/www/vyfuk/images/logos/MO.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/www/vyfuk/images/logos/fykos.png b/www/vyfuk/images/logos/fykos.png
new file mode 100644
index 000000000..17c0b37fd
Binary files /dev/null and b/www/vyfuk/images/logos/fykos.png differ
diff --git a/www/vyfuk/images/logos/maso.svg b/www/vyfuk/images/logos/maso.svg
new file mode 100644
index 000000000..d8d302408
--- /dev/null
+++ b/www/vyfuk/images/logos/maso.svg
@@ -0,0 +1,183 @@
+
+
+
+
image/svg+xml
\ No newline at end of file
diff --git a/www/vyfuk/images/logos/pikomat.png b/www/vyfuk/images/logos/pikomat.png
new file mode 100644
index 000000000..8386683c3
Binary files /dev/null and b/www/vyfuk/images/logos/pikomat.png differ
diff --git a/www/vyfuk/images/setkani.jpg b/www/vyfuk/images/setkani.jpg
new file mode 100644
index 000000000..3ace62a8b
Binary files /dev/null and b/www/vyfuk/images/setkani.jpg differ
diff --git a/www/vyfuk/images/tabor.jpg b/www/vyfuk/images/tabor.jpg
new file mode 100644
index 000000000..b35bf1cb0
Binary files /dev/null and b/www/vyfuk/images/tabor.jpg differ
diff --git a/www/vyfuk/photos/.gitignore b/www/vyfuk/photos/.gitignore
deleted file mode 100644
index 005717ead..000000000
--- a/www/vyfuk/photos/.gitignore
+++ /dev/null
@@ -1,2 +0,0 @@
-*
-!.gitignore