This commit is contained in:
@@ -25,6 +25,7 @@ const guidesCollection = defineCollection({
|
|||||||
id: z.string(),
|
id: z.string(),
|
||||||
title: z.string(),
|
title: z.string(),
|
||||||
description: z.string(),
|
description: z.string(),
|
||||||
|
author: z.string(),
|
||||||
series: z.string().optional(),
|
series: z.string().optional(),
|
||||||
tags: z.array(z.string()),
|
tags: z.array(z.string()),
|
||||||
}),
|
}),
|
||||||
|
|||||||
@@ -9,7 +9,9 @@ tags: [poisson, password]
|
|||||||
Se per qualche strano motivo hai dimenticato la tua password Poisson, niente paura! La procedura è super semplice:
|
Se per qualche strano motivo hai dimenticato la tua password Poisson, niente paura! La procedura è super semplice:
|
||||||
|
|
||||||
1. Scrivi una mail a **macchinisti@lists.dm.unipi.it**.
|
1. Scrivi una mail a **macchinisti@lists.dm.unipi.it**.
|
||||||
|
|
||||||
2. Nella mail, specifica il tuo nome, cognome, username di ateneo (quello della tua email istituzionale) e se lo ricordi, anche il tuo username Poisson.
|
2. Nella mail, specifica il tuo nome, cognome, username di ateneo (quello della tua email istituzionale) e se lo ricordi, anche il tuo username Poisson.
|
||||||
|
|
||||||
3. Attendi pazientemente la risposta dei macchinisti, che ti resetteranno la password e ti invieranno una nuova via email.
|
3. Attendi pazientemente la risposta dei macchinisti, che ti resetteranno la password e ti invieranno una nuova via email.
|
||||||
|
|
||||||
E voilà, in un batter d'occhio sarai di nuovo pronto a entrare nel fantastico mondo di Poisson.
|
E voilà, in un batter d'occhio sarai di nuovo pronto a entrare nel fantastico mondo di Poisson.
|
||||||
|
|||||||
@@ -18,6 +18,20 @@ const { Content } = await entry.render()
|
|||||||
|
|
||||||
<ArticleLayout {...entry.data} pageTags={['guida', entry.data.id, entry.data.series && 'series']}>
|
<ArticleLayout {...entry.data} pageTags={['guida', entry.data.id, entry.data.series && 'series']}>
|
||||||
<h1>{entry.data.title}</h1>
|
<h1>{entry.data.title}</h1>
|
||||||
|
|
||||||
{entry.data.series && <div class="series">Serie: {entry.data.series}</div>}
|
{entry.data.series && <div class="series">Serie: {entry.data.series}</div>}
|
||||||
<Content />
|
<Content />
|
||||||
|
|
||||||
|
<div class="metadata">
|
||||||
|
<div class="metadata-item">
|
||||||
|
<strong>Autore</strong>
|
||||||
|
{entry.data.author}
|
||||||
|
</div>
|
||||||
|
<div class="metadata-item">
|
||||||
|
<strong>Tags</strong>
|
||||||
|
<div class="tags">
|
||||||
|
{entry.data.tags.map(tag => <a href={`/guide/tags/${tag}`}>#{tag}</a>)}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</ArticleLayout>
|
</ArticleLayout>
|
||||||
|
|||||||
@@ -7,7 +7,9 @@ const guides = await getCollection('guides')
|
|||||||
---
|
---
|
||||||
|
|
||||||
<PageLayout pageTags="guide">
|
<PageLayout pageTags="guide">
|
||||||
<h1>Guide</h1>
|
<h1>
|
||||||
|
<a href="/guide">Guide</a>
|
||||||
|
</h1>
|
||||||
<div class="card-list">
|
<div class="card-list">
|
||||||
{
|
{
|
||||||
guides.toReversed().map(guide => (
|
guides.toReversed().map(guide => (
|
||||||
|
|||||||
@@ -34,7 +34,7 @@ const { tag, guides } = Astro.props
|
|||||||
---
|
---
|
||||||
|
|
||||||
<PageLayout pageTags="guide tag">
|
<PageLayout pageTags="guide tag">
|
||||||
<h1>Guide > #{tag}</h1>
|
<h1><a href="/guide">Guide</a> > <a href={`/guide/tags/${tag}`}>#{tag}</a></h1>
|
||||||
<div class="card-list">
|
<div class="card-list">
|
||||||
{
|
{
|
||||||
guides.map(guide => (
|
guides.map(guide => (
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ const news = await getCollection('news')
|
|||||||
---
|
---
|
||||||
|
|
||||||
<PageLayout pageTags="notizie">
|
<PageLayout pageTags="notizie">
|
||||||
<h1>Notizie</h1>
|
<h1><a href="/notizie">Notizie</a></h1>
|
||||||
<div class="card-list">
|
<div class="card-list">
|
||||||
{
|
{
|
||||||
news.map(newsItem => (
|
news.map(newsItem => (
|
||||||
|
|||||||
@@ -462,6 +462,12 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
.notizie {
|
.notizie {
|
||||||
|
h1 > a {
|
||||||
|
&:hover {
|
||||||
|
text-decoration: underline 3px solid;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
main {
|
main {
|
||||||
justify-self: center;
|
justify-self: center;
|
||||||
|
|
||||||
@@ -508,6 +514,12 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
.guide {
|
.guide {
|
||||||
|
h1 > a {
|
||||||
|
&:hover {
|
||||||
|
text-decoration: underline 3px solid;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
main {
|
main {
|
||||||
justify-self: center;
|
justify-self: center;
|
||||||
|
|
||||||
@@ -531,6 +543,40 @@
|
|||||||
margin-top: 3rem;
|
margin-top: 3rem;
|
||||||
margin-bottom: 6rem;
|
margin-bottom: 6rem;
|
||||||
|
|
||||||
|
position: relative;
|
||||||
|
|
||||||
|
.metadata {
|
||||||
|
position: absolute;
|
||||||
|
top: -2px;
|
||||||
|
left: calc(100% + 2rem);
|
||||||
|
width: 15rem;
|
||||||
|
|
||||||
|
display: grid;
|
||||||
|
grid-auto-flow: row;
|
||||||
|
gap: 1rem;
|
||||||
|
|
||||||
|
justify-items: start;
|
||||||
|
|
||||||
|
.metadata-item {
|
||||||
|
background: var(--card-base);
|
||||||
|
|
||||||
|
display: grid;
|
||||||
|
grid-template-rows: auto auto;
|
||||||
|
justify-items: start;
|
||||||
|
gap: 0.25rem;
|
||||||
|
|
||||||
|
padding: 0.75rem 1rem;
|
||||||
|
|
||||||
|
@include neo-brutalist-card($size: 3px);
|
||||||
|
|
||||||
|
.tags {
|
||||||
|
display: flex;
|
||||||
|
flex-wrap: wrap;
|
||||||
|
gap: 0.5rem;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@media screen and (max-width: $screen-desktop-min) {
|
@media screen and (max-width: $screen-desktop-min) {
|
||||||
box-shadow: none;
|
box-shadow: none;
|
||||||
border: none;
|
border: none;
|
||||||
@@ -538,6 +584,15 @@
|
|||||||
max-width: none;
|
max-width: none;
|
||||||
|
|
||||||
margin: 0 auto;
|
margin: 0 auto;
|
||||||
|
|
||||||
|
.metadata {
|
||||||
|
position: static;
|
||||||
|
padding: 0;
|
||||||
|
width: auto;
|
||||||
|
margin: 0;
|
||||||
|
|
||||||
|
--card-base: color-mix(in lab, var(--guide-base), #fff 30%);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -194,6 +194,11 @@
|
|||||||
ol,
|
ol,
|
||||||
ul {
|
ul {
|
||||||
margin-bottom: var(--paragraph-margin, 1rem);
|
margin-bottom: var(--paragraph-margin, 1rem);
|
||||||
|
padding-left: 1.5rem;
|
||||||
|
|
||||||
|
p {
|
||||||
|
--paragraph-margin: 0.5rem;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
a,
|
a,
|
||||||
@@ -218,6 +223,14 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
hr {
|
||||||
|
max-width: calc(100vw - 4rem);
|
||||||
|
width: 40ch;
|
||||||
|
margin: 3rem auto 2.75rem;
|
||||||
|
border: none;
|
||||||
|
border-top: 2px solid #0003;
|
||||||
|
}
|
||||||
|
|
||||||
@media screen and (max-width: $screen-desktop-min) {
|
@media screen and (max-width: $screen-desktop-min) {
|
||||||
& > * {
|
& > * {
|
||||||
margin: 0 0.75rem;
|
margin: 0 0.75rem;
|
||||||
|
|||||||
Reference in New Issue
Block a user