Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -45,4 +45,4 @@
"type": "git",
"url": "https://github.com/kowalski7cc/gatsby-starter-kowalski7cc"
}
}
}
26 changes: 13 additions & 13 deletions src/assets/siteMetadata.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,30 +2,30 @@ description: >-
Manifestazione italiana dedicata a GNU/Linux, al software libero, alla cultura
aperta e alla condivisione.
keywords: "Linux Day, Milano, GNU, GNU/Linux, Open Source, Software Libero, Condivisione"
author: "ILS Milano (https://poul.org/)"
author: "ILS Milano (POuL & UnixMiB)"
theme: "#343a40"
siteUrl: "https://linuxdaymilano.org/"
switches:
schedule: true
cfp: false
schedule: false
cfp: true
cfp_submit: false
cfs: false
stand_submit: false
cfs: true
stand_submit: true
sponsor_submit: true
year_switcher: true
sponsors: true
sponsors: false
event:
date: 2025-10-25T07:00:00.000+02:00
date: 2026-10-24T07:00:00.000+02:00
dateOptions:
weekday: long
year: numeric
month: long
day: numeric
time: "9:00"
organizer: POuL
organizer: POuL & UnixMiB
topic: ""
cfp: "https://survey.linux.it/index.php/653441?lang=it"
cfs: "https://survey.linux.it/index.php/511682?lang=it"
cfp: "https://survey.linux.it/index.php/831181?lang=it"
cfs: "https://survey.linux.it/index.php/636347?lang=it"
sponsor: "https://www.ils.org/sponsorizzazioni/"
arguments:
- "Linux, software e hardware Open Source"
Expand All @@ -35,10 +35,10 @@ event:
- L'apprendimento mediante il Do It Yourself
- Programmazione e tecniche di sviluppo
contacts:
email: linuxday@unixmib.org
email: info@linuxdaymilano.org
website: "https://poul.org/"
place:
name: "Politecnico di Milano, Campus Leonardo"
street: "Piazza Leonardo da Vinci, 32"
building: Edificio 3 - Campus Leonardo
street: "Via Bonardi 9"
building: Edificio 13 - Trifoglio - Campus via Bonardi
cap: 20133 Milano MI
4 changes: 3 additions & 1 deletion src/components/header.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,9 @@ const Header = ({ allSchedulesYaml }) => {
const year = siteMetadata.event.date.getFullYear();
const organizer = siteMetadata.organizer;
const switches = siteMetadata.switches;
const previousYear = allSchedulesYaml.map((node) => node.data.year)[1];
const previousYear = allSchedulesYaml
.map((node) => node.data.year)
.reverse()[1];
const params = switches.schedule
? ""
: "?" + new URLSearchParams({ year: previousYear });
Expand Down
193 changes: 93 additions & 100 deletions src/layouts/schedule.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -222,113 +222,106 @@ const Page = ({ allSchedules }) => {
if ("development" === activeEnv) console.log("schedData: ", schedData);

return (
<>
<section id='calendar' className='text-body'>
<Container>
<div className='d-flex flex-column flex-md-row justify-content-between align-items-center align-middle mb-5'>
<h2 className='text-md-left text-center'>
Programma della giornata
</h2>
<section id='calendar' className='text-body'>
<Container>
<div className='d-flex flex-column flex-md-row justify-content-between align-items-center align-middle mb-5'>
<h2 className='text-md-left text-center'>Programma della giornata</h2>

<div className='d-flex flex-row gap-3 d-print-none'>
<Button
className='d-none'
href='/schedule-printable'
variant='warning'
>
Versione stampabile
</Button>
<Button
variant='warning'
onClick={() => {
setShowStarred((curr) => !curr);
localStorage.setItem("showStarred", !showStarred);
}}
>
{showStarred ? "Tutte le talk" : "Agenda personale"}
</Button>
{siteMetadata.switches.year_switcher ? (
<Dropdown className='d-block d-md-inline d-print-none'>
<Dropdown.Toggle
className='w-100 w-sm-auto'
variant='warning'
>
Anno {schedData?.year}
</Dropdown.Toggle>
<Dropdown.Menu>
{allSchedules.map((s, i) => (
<Dropdown.Item
key={i}
onClick={() => {
//TODO
const url = new URL(window.location);
url.searchParams.set("year", s.data.year);
window.history.pushState({}, "", url);
setSchedData(allSchedules[i].data);
}}
>
{s.data.year}
</Dropdown.Item>
))}
</Dropdown.Menu>
</Dropdown>
) : (
<small className='d-none d-sm-block'>
<div className='d-flex flex-row gap-3 d-print-none'>
<Button
className='d-none'
href='/schedule-printable'
variant='warning'
>
Versione stampabile
</Button>
<Button
variant='warning'
onClick={() => {
setShowStarred((curr) => !curr);
localStorage.setItem("showStarred", !showStarred);
}}
>
{showStarred ? "Tutte le talk" : "Agenda personale"}
</Button>
{siteMetadata.switches.year_switcher ? (
<Dropdown className='d-block d-md-inline d-print-none'>
<Dropdown.Toggle className='w-100 w-sm-auto' variant='warning'>
Anno {schedData?.year}
</small>
)}
</div>
</Dropdown.Toggle>
<Dropdown.Menu>
{allSchedules.map((s, i) => (
<Dropdown.Item
key={i}
onClick={() => {
//TODO
const url = new URL(window.location);
url.searchParams.set("year", s.data.year);
window.history.pushState({}, "", url);
setSchedData(allSchedules[i].data);
}}
>
{s.data.year}
</Dropdown.Item>
))}
</Dropdown.Menu>
</Dropdown>
) : (
<small className='d-none d-sm-block'>
Anno {schedData?.year}
</small>
)}
</div>
</div>

{schedData?.schedule.length ? (
<Talks
scheduleData={schedData?.schedule}
showStarred={showStarred}
starredTalksForYear={starredTalks[schedData?.year]}
toggleTalkStar={(title) => {
setStarredTalks((current) => {
let next;
{schedData.schedule?.length ? (
<Talks
scheduleData={schedData?.schedule}
showStarred={showStarred}
starredTalksForYear={starredTalks[schedData?.year]}
toggleTalkStar={(title) => {
setStarredTalks((current) => {
let next;

if (current[schedData?.year]?.includes(title)) {
next = {
...current,
[schedData?.year]: current[schedData?.year].filter(
(t) => t !== title
),
};
} else {
next = {
...current,
[schedData?.year]: [
...(current[schedData?.year] || []),
title,
],
};
}
if (current[schedData?.year]?.includes(title)) {
next = {
...current,
[schedData?.year]: current[schedData?.year].filter(
(t) => t !== title
),
};
} else {
next = {
...current,
[schedData?.year]: [
...(current[schedData?.year] || []),
title,
],
};
}

localStorage.setItem("starredTalks", JSON.stringify(next));
localStorage.setItem("starredTalks", JSON.stringify(next));

return next;
});
}}
key={schedData?.schedule}
/>
) : (
<div className='text-center py-4'>
<PersonDigging style={{ fontSize: "5em" }} className='pb-2' />
<h3>
Ci sono eventi per questa giornata, sono solo in fase di
organizzazione.
</h3>
<p>
Puoi usare il selettore per leggere il programma degli anni
precedenti o ricontrolla tra qualche giorno!
</p>
</div>
)}
</Container>
</section>
</>
return next;
});
}}
key={schedData?.schedule}
/>
) : (
<div className='text-center py-4'>
<PersonDigging style={{ fontSize: "5em" }} className='pb-2' />
<h3>
Ci sono eventi per questa giornata, sono solo in fase di
organizzazione.
</h3>
<p>
Puoi usare il selettore per leggere il programma degli anni
precedenti o ricontrolla tra qualche giorno!
</p>
</div>
)}
</Container>
</section>
);
};

Expand Down
20 changes: 8 additions & 12 deletions src/pages/codeofconduct.astro
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,8 @@ import { Container } from "react-bootstrap";
<h3 id='italian' class='pt-3'>Versione Italiana</h3>
<p>
Tutti i partecipanti del Linux Day Milano sono tenuti ad attenersi al
seguente codice di condotta. I volontari del team UnixMiB faranno
rispettare questo codice durante tutta la conferenza.
seguente codice di condotta. I volontari del team degli organizzatori
faranno rispettare questo codice durante tutta la conferenza.
</p>
<ul>
<li>
Expand Down Expand Up @@ -56,11 +56,9 @@ import { Container } from "react-bootstrap";
altra preoccupazione, contatta immediatamente uno dei punti di contatto:
Lorenzo Olearo o Elisa Pioldi.
<br />
Tramite Telegram contattare{" "}
<a href='https://t.me/unixmib_contact_bot'> @unixmib_contact_bot </a>{
" "
}
per eventuali segnalazioni.
Via mail contattare <a href='mailto:info@linuxdaymilano.org'>
info@linuxdaymilano.org
</a> per eventuali segnalazioni.
<br />
<br />
Ringranziamo MergeIT e{" "}
Expand Down Expand Up @@ -120,11 +118,9 @@ import { Container } from "react-bootstrap";
have any other concerns, please contact one of the contact points immediately:
Lorenzo Olearo or Elisa Pioldi.
<br />
Via Telegram contact{" "}
<a href='https://t.me/unixmib_contact_bot'> @unixmib_contact_bot </a>{
" "
}
for any reports.
Via mail contact <a href='mailto:info@linuxdaymilano.org'>
info@linuxdaymilano.org
</a> for any reports.
<br />
<br />
We thank MergeIT e{" "}
Expand Down
1 change: 1 addition & 0 deletions src/schedules/year_2026.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
year: 2026
Loading