Project stuff
- Add project metadata - Extract metadata for projects and privacy
This commit is contained in:
parent
1a0f9e59a0
commit
d8a0e9a66a
49 changed files with 319 additions and 136 deletions
5
Rules
5
Rules
|
@ -30,7 +30,12 @@ preprocess do
|
||||||
check_schema(:event, event)
|
check_schema(:event, event)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
all_privacy_projects do |project|
|
||||||
|
check_schema(:privacy, project)
|
||||||
|
end
|
||||||
|
|
||||||
add_report_metadata
|
add_report_metadata
|
||||||
|
add_project_metadata
|
||||||
end
|
end
|
||||||
|
|
||||||
#
|
#
|
||||||
|
|
|
@ -5,13 +5,3 @@
|
||||||
font-weight: bold;
|
font-weight: bold;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.to-top {
|
|
||||||
& a {
|
|
||||||
font-size: 0.8rem;
|
|
||||||
}
|
|
||||||
& hr {
|
|
||||||
margin-bottom: 0
|
|
||||||
}
|
|
||||||
margin-bottom: 1.5rem;
|
|
||||||
}
|
|
|
@ -11,10 +11,11 @@ toc: true
|
||||||
</p>
|
</p>
|
||||||
<ul class="toc-depth-1" id="markdown-toc">
|
<ul class="toc-depth-1" id="markdown-toc">
|
||||||
<li><a href="#opbouw" id="markdown-toc-opbouw">Opbouw</a></li>
|
<li><a href="#opbouw" id="markdown-toc-opbouw">Opbouw</a></li>
|
||||||
<li><a href="#wanneer" id="markdown-toc-opbouw">Wanneer en waar is dit privacybeleid van toepassing?</a></li>
|
<li><a href="#wanneer" id="markdown-toc-wanneer">Wanneer en waar is dit privacybeleid van toepassing?</a></li>
|
||||||
<li><a href="#wie" id="markdown-toc-opbouw">Wie heeft toegang tot de verzamelde data?</a></li>
|
<li><a href="#wie" id="markdown-toc-wie">Wie heeft toegang tot de verzamelde data?</a></li>
|
||||||
<li><a href="#welke" id="markdown-toc-opbouw">Welke data worden verzameld en waarvoor worden ze gebruikt?</a></li>
|
<li><a href="#welke" id="markdown-toc-welke">Welke data worden verzameld en waarvoor worden ze gebruikt?</a></li>
|
||||||
<li><a href="#projecten" id="markdown-toc-opbouw">Overzicht der projecten</a></li>
|
<li><a href="#projecten" id="markdown-toc-projecten">Overzicht der projecten</a></li>
|
||||||
|
<li><a href="#contact" id="markdown-toc-contact">Hoe contacteert u ons en laat u uw rechten gelden?</a></li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
<div class="content">
|
<div class="content">
|
||||||
|
@ -24,15 +25,15 @@ toc: true
|
||||||
|
|
||||||
<p>Zeus WPI biedt een waaier aan diensten en projecten aan aan haar leden en het algemene publiek. Met dit privacybeleid wilt ze aangeven hoe en waarvoor ze data verzamelt.</p>
|
<p>Zeus WPI biedt een waaier aan diensten en projecten aan aan haar leden en het algemene publiek. Met dit privacybeleid wilt ze aangeven hoe en waarvoor ze data verzamelt.</p>
|
||||||
|
|
||||||
<h2 id="opbouw">Opbouw</h2>
|
<h2 class="title is-2" id="opbouw">Opbouw</h2>
|
||||||
|
|
||||||
<p>Het privacybeleid is opgebouwd uit twee grote delen: een algemeen deel en een project-specifiek deel. Het eerste deel is het eigenlijk beleid, en legt algemeen uit welke data Zeus verzamelt, waarom ze dat doet en wat ze met de verzamelde data doet. Bepaalde projecten hebben echter uitzonderingen of vergen meer uitleg. Dit komt in deel twee van het privacybeleid, dat per project bepaald hoe het algemene beleid van toepassing is, indien nodig. Staat een project niet in deel twee, dan is uiteraard deel een nog steeds van toepassing.</p>
|
<p>Het privacybeleid is opgebouwd uit twee grote delen: een algemeen deel en een project-specifiek deel. Het eerste deel is het eigenlijk beleid, en legt algemeen uit welke data Zeus verzamelt, waarom ze dat doet en wat ze met de verzamelde data doet. Bepaalde projecten hebben echter uitzonderingen of vergen meer uitleg. Dit komt in deel twee van het privacybeleid, dat per project bepaald hoe het algemene beleid van toepassing is, indien nodig. Staat een project niet in deel twee, dan is uiteraard deel een nog steeds van toepassing.</p>
|
||||||
|
|
||||||
<h2 id="wanneer">Wanneer en waar is dit privacybeleid van toepassing?</h2>
|
<h2 class="title is-2" id="wanneer">Wanneer en waar is dit privacybeleid van toepassing?</h2>
|
||||||
|
|
||||||
<p>Zeus WPI stelt een waaier aan projecten beschikbaar aan haar leden en het publiek in het algemeen. Daarbovenop worden de diensten en projecten van Zeus ook door derden gebruikt.</p>
|
<p>Zeus WPI stelt een waaier aan projecten beschikbaar aan haar leden en het publiek in het algemeen. Daarbovenop worden de diensten en projecten van Zeus ook door derden gebruikt.</p>
|
||||||
|
|
||||||
<h3 id="verantwoordelijke">Zeus als dataverantwoordelijke</h3>
|
<h3 class="title is-3" id="verantwoordelijke">Zeus als dataverantwoordelijke</h3>
|
||||||
|
|
||||||
<p>Voor het aanbieden van haar projecten, verzamelt Zeus WPI data. In dit geval treedt Zeus op als "Verwerker" in de terminologie van de AVG. Dit betekent dat Zeus de data zelf verzamelt, of opdracht geeft aan derden om de data te verzamelen.</p>
|
<p>Voor het aanbieden van haar projecten, verzamelt Zeus WPI data. In dit geval treedt Zeus op als "Verwerker" in de terminologie van de AVG. Dit betekent dat Zeus de data zelf verzamelt, of opdracht geeft aan derden om de data te verzamelen.</p>
|
||||||
|
|
||||||
|
@ -40,7 +41,7 @@ toc: true
|
||||||
Voorbeelden van projecten waarbij Zeus de dataverantwoordelijke is, zijn Haldis, Tab, Hydra, enz.
|
Voorbeelden van projecten waarbij Zeus de dataverantwoordelijke is, zijn Haldis, Tab, Hydra, enz.
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<h3 id="verwerker">Zeus als verwerker</h3>
|
<h3 class="title is-3" id="verwerker">Zeus als verwerker</h3>
|
||||||
|
|
||||||
<p>Zeus biedt niet alleen projecten aan aan haar leden en andere personen, maar biedt ook diensten aan aan derden. In dat geval dient u zich te wenden tot het privacybeleid van de derde in wiens naam Zeus de data verwerkt. Zeus treedt dan op als "Verwerker".</p>
|
<p>Zeus biedt niet alleen projecten aan aan haar leden en andere personen, maar biedt ook diensten aan aan derden. In dat geval dient u zich te wenden tot het privacybeleid van de derde in wiens naam Zeus de data verwerkt. Zeus treedt dan op als "Verwerker".</p>
|
||||||
|
|
||||||
|
@ -50,7 +51,7 @@ toc: true
|
||||||
|
|
||||||
<p>Als Zeus optreedt als verwerker, zal Zeus in het algemeen slechts de absoluut noodzakelijke data verzamelen voor de integriteit en goede werking van haar systemen in stand te houden verzamelen. Meer informatie kan u krijgen bij de verantwoordelijke vereniging of personen die gebruik maken van de diensten van Zeus.</p>
|
<p>Als Zeus optreedt als verwerker, zal Zeus in het algemeen slechts de absoluut noodzakelijke data verzamelen voor de integriteit en goede werking van haar systemen in stand te houden verzamelen. Meer informatie kan u krijgen bij de verantwoordelijke vereniging of personen die gebruik maken van de diensten van Zeus.</p>
|
||||||
|
|
||||||
<h2 id="wie">Wie heeft toegang tot de verzamelde data?</h2>
|
<h2 class="title is-2" id="wie">Wie heeft toegang tot de verzamelde data?</h2>
|
||||||
|
|
||||||
<p>In de eerste plaats heeft het bestuur van Zeus WPI toegang tot de gegevens, en in het bijzonder hebben de systeemadministrators toegang tot de data. Het bestuur beperkt zijn inzage in de gegevens tot het strikt noodzakelijke om zijn mandaat te vervullen.</p>
|
<p>In de eerste plaats heeft het bestuur van Zeus WPI toegang tot de gegevens, en in het bijzonder hebben de systeemadministrators toegang tot de data. Het bestuur beperkt zijn inzage in de gegevens tot het strikt noodzakelijke om zijn mandaat te vervullen.</p>
|
||||||
|
|
||||||
|
@ -64,11 +65,11 @@ toc: true
|
||||||
De ontwikkelaars van Hydra krijgen toegang de API-server en kunnen zo aan de serverlogs.
|
De ontwikkelaars van Hydra krijgen toegang de API-server en kunnen zo aan de serverlogs.
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<h2 id="welke">Welke data worden verzameld en waarvoor worden ze gebruikt?</h2>
|
<h2 class="title is-2" id="welke">Welke data worden verzameld en waarvoor worden ze gebruikt?</h2>
|
||||||
|
|
||||||
Zeus verzamelt vier grote categorieën van data.
|
Zeus verzamelt vier grote categorieën van data.
|
||||||
|
|
||||||
<h3 id="administratie">Administratieve gegevens</h3>
|
<h3 class="title is-3" id="administratie">Administratieve gegevens</h3>
|
||||||
|
|
||||||
<p>Zeus houdt een reeks administratieve gegevens bij over haar leden, zoals vereist door de statuten of om de goede werking van de vereniging te bewerkstelligen. Onder deze data valt onder meer:</p>
|
<p>Zeus houdt een reeks administratieve gegevens bij over haar leden, zoals vereist door de statuten of om de goede werking van de vereniging te bewerkstelligen. Onder deze data valt onder meer:</p>
|
||||||
|
|
||||||
|
@ -87,8 +88,7 @@ toc: true
|
||||||
|
|
||||||
<p>Bij het opheffen van het lidmaatschap worden de data niet automatisch verwijderd, vanwege het ontbreken van een technische oplossing. Indien gewenst, kan u zich wenden tot de vereniging voor een manuele verwijdering van uw administratieve gegevens.</p>
|
<p>Bij het opheffen van het lidmaatschap worden de data niet automatisch verwijderd, vanwege het ontbreken van een technische oplossing. Indien gewenst, kan u zich wenden tot de vereniging voor een manuele verwijdering van uw administratieve gegevens.</p>
|
||||||
|
|
||||||
<%= render '/partials/_up.erb' %>
|
<h3 class="title is-3" id="technisch">Technische gegevens</h3>
|
||||||
<h3 id="technisch">Technische gegevens</h3>
|
|
||||||
|
|
||||||
<p>Hieronder vallen de data nodig om de goede werking van de projecten te garanderen. Concreet betekent de serverlogs. Dit zijn logboeken van de verzoeken die gestuurd worden naar een van de servers van Zeus. In de logboeken zitten volgende data:</p>
|
<p>Hieronder vallen de data nodig om de goede werking van de projecten te garanderen. Concreet betekent de serverlogs. Dit zijn logboeken van de verzoeken die gestuurd worden naar een van de servers van Zeus. In de logboeken zitten volgende data:</p>
|
||||||
|
|
||||||
|
@ -122,8 +122,7 @@ toc: true
|
||||||
|
|
||||||
<p>Deze data worden niet automatisch verwerkt; ze dienen om manueel de oorzaken van problemen te vinden. Serverlogs worden onbeperkt bijgehouden.</p>
|
<p>Deze data worden niet automatisch verwerkt; ze dienen om manueel de oorzaken van problemen te vinden. Serverlogs worden onbeperkt bijgehouden.</p>
|
||||||
|
|
||||||
<%= render '/partials/_up.erb' %>
|
<h3 class="title is-3" id="project">Projectdata</h3>
|
||||||
<h3 id="project">Projectdata</h3>
|
|
||||||
|
|
||||||
<p>Veel projecten hebben data nodig om te kunnen functioneren, dus verzameld Zeus die uiteraard ook. Vaak zijn dit gegevens die u zelf ingeeft of laat genereren door het project dat u gebruikt.</p>
|
<p>Veel projecten hebben data nodig om te kunnen functioneren, dus verzameld Zeus die uiteraard ook. Vaak zijn dit gegevens die u zelf ingeeft of laat genereren door het project dat u gebruikt.</p>
|
||||||
|
|
||||||
|
@ -131,14 +130,13 @@ toc: true
|
||||||
Als u bijvoorbeeld gebruik maakt van Haldis, moet Zeus opslaan wat u besteld hebt, of Haldis zal niet werken.
|
Als u bijvoorbeeld gebruik maakt van Haldis, moet Zeus opslaan wat u besteld hebt, of Haldis zal niet werken.
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<p>Afhankelijk van de applicatie is het niet altijd mogelijk om de gegevens te verwijderen of aanpassen zonder de integriteit of goede werking van het project op de helling te zetten. In dat geval probeert Zeus de data zoveel mogelijk te anonimiseren als u een verwijderverzoek stuurt of zoveel mogelijk data aan te passen als u een aanpassingsverzoek stuurt.</p>
|
<p>Afhankelijk van de applicatie is het niet altijd mogelijk om de gegevens te verwijderen of aanpassen zonder de integriteit of goede werking van het project op de helling te zetten. In dat geval probeert Zeus de data zoveel mogelijk te anonimiseren als u een verwijderverzoek stuurt of zoveel mogelijk data aan te passen als u een aanpassingsverzoek stuurt. Bij een verwijderingsverzoek probeert Zeus de relevante en verwijderbare data zo snel mogelijk te verwijderen. Doch is het mogelijk dat de data door back-upsystemen langer bewaard blijven.</p>
|
||||||
|
|
||||||
<div class="example">
|
<div class="example">
|
||||||
Bij Tab kan u bijvoorbeeld geen transacties laten verwijderen, maar wel anonimiseren.
|
Bij Tab kan u bijvoorbeeld geen transacties laten verwijderen, maar wel anonimiseren.
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<%= render '/partials/_up.erb' %>
|
<h3 class="title is-3" id="videobeelden">Videobeelden</h3>
|
||||||
<h3 id="videobeelden">Videobeelden</h3>
|
|
||||||
|
|
||||||
<p>Ter beveiliging van de kelder van Zeus hangt er een camera "Cammie" in de kelder. De beelden van deze camera worden live uitgezonden op de website van de vereniging.</p>
|
<p>Ter beveiliging van de kelder van Zeus hangt er een camera "Cammie" in de kelder. De beelden van deze camera worden live uitgezonden op de website van de vereniging.</p>
|
||||||
|
|
||||||
|
@ -146,66 +144,76 @@ toc: true
|
||||||
|
|
||||||
<p>Bij het inschrijven hebben alle leden zich akkoord verklaard om opgenomen te worden door Cammie als zij zich in de kelder begeven.</p>
|
<p>Bij het inschrijven hebben alle leden zich akkoord verklaard om opgenomen te worden door Cammie als zij zich in de kelder begeven.</p>
|
||||||
|
|
||||||
<h2 id="projecten">Overzicht der projecten</h2>
|
<h2 class="title is-2" id="projecten">Overzicht der projecten</h2>
|
||||||
|
|
||||||
<h3 id="specifiek">Project-specifieke bepalingen</h3>
|
<h3 class="title is-3" id="specifiek">Project-specifieke bepalingen</h3>
|
||||||
|
|
||||||
<p>Deze projecten hebben meer uitleg of hebben uitzonderingen.</p>
|
<p>Onder deze paragraaf volgt een lijst van alle projecten: </p>
|
||||||
|
<ol>
|
||||||
|
<li>Met uitzonderingen op het algemeen beleid, of</li>
|
||||||
|
<li>Waarvoor er bijkomende informatie is over het gebruik van data in het project.</li>
|
||||||
|
</ol>
|
||||||
|
|
||||||
<% @responsible = privacy_projects("responsible") %>
|
<% privacy_projects("additional").each do |project| %>
|
||||||
<% @responsible.each do |project| %>
|
|
||||||
<%= render '/partials/_privacy.erb', project: project %>
|
<%= render '/partials/_privacy.erb', project: project %>
|
||||||
<%= render '/partials/_up.erb' %>
|
<hr>
|
||||||
<% end %>
|
<% end %>
|
||||||
|
|
||||||
<h3 id="niet-gebruikt">Niet-gebruikte projecten</h3>
|
<h3 class="title is-3" id="specifiek">Projecten zonder specifieke bepalingen</h3>
|
||||||
|
|
||||||
<p>Deze projecten worden niet (meer) gebruikt door Zeus. Indien u deze toch gebruikt moet u zich wenden tot degene die de projecten gebruiken.</p>
|
<p>Deze projecten vallen integraal onder het algemene beleid.</p>
|
||||||
|
|
||||||
<ul>
|
<ul>
|
||||||
<% privacy_projects("external").each do |project| %>
|
<% privacy_projects("general").each do |project| %>
|
||||||
<li>
|
<%= render '/partials/_privacy_link.erb', project: project %>
|
||||||
<% if project[:link] %>
|
|
||||||
<a href="<%= project[:link] %>"><%= project[:name] %></a>
|
|
||||||
<% else %>
|
|
||||||
<%= project[:name] %>
|
|
||||||
<% end %>
|
|
||||||
</li>
|
|
||||||
<% end %>
|
<% end %>
|
||||||
</ul>
|
</ul>
|
||||||
|
|
||||||
<%= render '/partials/_up.erb' %>
|
<h3 class="title is-3" id="als-verwerker">Projecten/diensten als verwerker</h3>
|
||||||
<h3 id="als-verwerker">Projecten/diensten als verwerker</h3>
|
|
||||||
|
|
||||||
<p>Zeus werkt mee aan volgende projecten of diensten als verwerker, zoals bepaald hierboven.</p>
|
<p>Zeus werkt mee aan volgende projecten of diensten als verwerker, zoals bepaald hierboven.</p>
|
||||||
|
|
||||||
<ul>
|
<ul>
|
||||||
<% privacy_projects("processor").each do |project| %>
|
<% privacy_projects("processor").each do |project| %>
|
||||||
<li>
|
<%= render '/partials/_privacy_link.erb', project: project %>
|
||||||
<% if project[:link] %>
|
|
||||||
<a href="<%= project[:link] %>"><%= project[:name] %></a>
|
|
||||||
<% else %>
|
|
||||||
<%= project[:name] %>
|
|
||||||
<% end %>
|
|
||||||
</li>
|
|
||||||
<% end %>
|
<% end %>
|
||||||
</ul>
|
</ul>
|
||||||
|
|
||||||
<%= render '/partials/_up.erb' %>
|
<h3 class="title is-3" id="in-ontwikkeling">Projecten in ontwikkeling</h3>
|
||||||
<h3 id="in-ontwikkeling">Projecten in ontwikkeling</h3>
|
|
||||||
|
|
||||||
<p>Deze projecten zijn nog in ontwikkeling. Het is u verboden persoonlijke data aan deze projecten mee te delen. Indien u dit toch zou doen, dient u ons zo snel mogelijk te contacteren, zodat de data verwijderd kunnen worden.</p>
|
<p>Deze projecten zijn nog in ontwikkeling. U mag geen persoonlijke data aan deze projecten leveren. Doet u dit toch, dan is dit op eigen risico: noch de functionaliteit, noch de beveiliging van deze projecten staat op punt.</p>
|
||||||
|
|
||||||
<ul>
|
<ul>
|
||||||
<% privacy_projects("development").each do |project| %>
|
<% privacy_projects("development").each do |project| %>
|
||||||
<li>
|
<%= render '/partials/_privacy_link.erb', project: project %>
|
||||||
<% if project[:link] %>
|
|
||||||
<a href="<%= project[:link] %>"><%= project[:name] %></a>
|
|
||||||
<% else %>
|
|
||||||
<%= project[:name] %>
|
|
||||||
<% end %>
|
|
||||||
</li>
|
|
||||||
<% end %>
|
<% end %>
|
||||||
</ul>
|
</ul>
|
||||||
|
|
||||||
|
<h3 class="title is-3" id="niet-gebruikt">Ongebruikte projecten</h3>
|
||||||
|
|
||||||
|
<p>Ter informatie volgt een lijst van projecten die ofwel geen Zeus-project zijn ofwel niet meer door Zeus gebruikt worden. Zeus heeft alle gegevens voor deze projecten verwijderd indien van toepassing.</p>
|
||||||
|
|
||||||
|
<ul>
|
||||||
|
<% privacy_projects("external").each do |project| %>
|
||||||
|
<%= render '/partials/_privacy_link.erb', project: project %>
|
||||||
|
<% end %>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<h2 class="title is-2" id="contact">Hoe contacteert u ons en laat u uw rechten gelden?</h2>
|
||||||
|
|
||||||
|
<p>Om uw rechten te laten gelden, voor vragen of opmerkingen, kan u ons contacteren via TODO contactpagina.</p>
|
||||||
|
|
||||||
|
<p>Hieronder sommen we kort uw rechten op:</p>
|
||||||
|
|
||||||
|
<ul>
|
||||||
|
<li><strong>Recht op inzage.</strong> U mag weten of we gegevens we over u hebben, welke gegevens dat zijn en op welke manier en waarom we ze gebruiken. Ook heeft u het recht een overzicht te krijgen wie uw gegevens verwerkt.</li>
|
||||||
|
<li><strong>Recht op rectificatie en aanvulling.</strong> U heeft het recht in voorkomend geval foute gegevens te laten corrigeren, bv. door een rechtzetting of aanvulling te vragen.</li>
|
||||||
|
<li><strong>Recht op vergetelheid.</strong> U kan verzoeken dat we de gegevens die we over u hebben te wissen op grond van een aantal zaken.</li>
|
||||||
|
<li><strong>Recht op overdraagbaarheid.</strong> U hebt het recht om uw gegevens op te vragen en te ontvangen in een gestructureerd, door een machine leesbaar document.</li>
|
||||||
|
<li><strong>Recht op beperking van de verwerking.</strong> U heeft het recht om de verwerking van uw gegevens te beperken, bijvoorbeeld als er een juridische procedure loopt, een rechtzetting nog niet is doorgevoerd, of de gegevens onrechtmatig gebruikt worden.</li>
|
||||||
|
<li><strong>Recht op bezwaar.</strong> Indien u meent dat we uw gegevens verwerken op onrechtmatige basis, kan u bezwaar aantekenen.</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<p>Merk op dat bovenstaande slechts een opsomming van de algemene rechten is. Dit zegt niets over de toepasbaarheid bij dit privacybeleid.</p>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
3
content/privacy/cat.md
Normal file
3
content/privacy/cat.md
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
---
|
||||||
|
status: general
|
||||||
|
---
|
3
content/privacy/dap.md
Normal file
3
content/privacy/dap.md
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
---
|
||||||
|
status: development
|
||||||
|
---
|
3
content/privacy/doorkeeper.md
Normal file
3
content/privacy/doorkeeper.md
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
---
|
||||||
|
status: general
|
||||||
|
---
|
3
content/privacy/dut.md
Normal file
3
content/privacy/dut.md
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
---
|
||||||
|
status: external
|
||||||
|
---
|
|
@ -1,6 +1,6 @@
|
||||||
---
|
---
|
||||||
name: Fathom
|
name: Fathom
|
||||||
status: responsible
|
status: additional
|
||||||
---
|
---
|
||||||
|
|
||||||
TODO
|
TODO
|
|
@ -1,6 +1,6 @@
|
||||||
---
|
---
|
||||||
name: Gamification
|
name: Gamification
|
||||||
status: responsible
|
status: additional
|
||||||
---
|
---
|
||||||
|
|
||||||
Met Gamification wordt het project bedoeld dat beschikbaar is via https://zeus.ugent.be/game.
|
Met Gamification wordt het project bedoeld dat beschikbaar is via https://zeus.ugent.be/game.
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
---
|
---
|
||||||
name: Gitlab
|
name: Gitlab
|
||||||
status: responsible
|
status: additional
|
||||||
---
|
---
|
||||||
|
|
||||||
- Data die je ingeeft
|
- Data die je ingeeft
|
||||||
|
|
5
content/privacy/haldis.md
Normal file
5
content/privacy/haldis.md
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
---
|
||||||
|
status: additional
|
||||||
|
---
|
||||||
|
|
||||||
|
TODO: uitleg over statistieken
|
3
content/privacy/httpizza.md
Normal file
3
content/privacy/httpizza.md
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
---
|
||||||
|
status: external
|
||||||
|
---
|
|
@ -1,6 +1,6 @@
|
||||||
---
|
---
|
||||||
name: Hydra
|
name: Hydra
|
||||||
status: responsible
|
status: additional
|
||||||
---
|
---
|
||||||
|
|
||||||
Dit privacybeleid is niet van toepassing op Hydra, dat zijn eigen [privacybeleid](https://hydra.ugent.be/privacy-policy.html) heeft.
|
Dit privacybeleid is niet van toepassing op Hydra, dat zijn eigen [privacybeleid](https://hydra.ugent.be/privacy-policy.html) heeft.
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
---
|
---
|
||||||
name: Mattermost
|
name: Mattermost
|
||||||
status: responsible
|
status: additional
|
||||||
---
|
---
|
||||||
|
|
||||||
Bij Mattermost is het [standaardprivacybeleid](https://github.com/mattermost/mattermost-server/blob/master/build/PRIVACY_POLICY.md) van een zelf-gehoste Mattermost-applicatie van toepassing.
|
Bij Mattermost is het [standaardprivacybeleid](https://github.com/mattermost/mattermost-server/blob/master/build/PRIVACY_POLICY.md) van een zelf-gehoste Mattermost-applicatie van toepassing.
|
||||||
|
|
3
content/privacy/mozaic.md
Normal file
3
content/privacy/mozaic.md
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
---
|
||||||
|
status: development
|
||||||
|
---
|
3
content/privacy/sad.md
Normal file
3
content/privacy/sad.md
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
---
|
||||||
|
status: general
|
||||||
|
---
|
|
@ -1,6 +1,6 @@
|
||||||
---
|
---
|
||||||
name: Website
|
name: Website
|
||||||
status: responsible
|
status: additional
|
||||||
---
|
---
|
||||||
|
|
||||||
De website van Zeus verzamelt bijkomende data:
|
De website van Zeus verzamelt bijkomende data:
|
4
content/privacy/slotmachien.md
Normal file
4
content/privacy/slotmachien.md
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
---
|
||||||
|
status: external
|
||||||
|
---
|
||||||
|
|
6
content/privacy/tab.md
Normal file
6
content/privacy/tab.md
Normal file
|
@ -0,0 +1,6 @@
|
||||||
|
---
|
||||||
|
status: additional
|
||||||
|
---
|
||||||
|
|
||||||
|
TODO: info
|
||||||
|
|
5
content/privacy/tap.md
Normal file
5
content/privacy/tap.md
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
---
|
||||||
|
status: additional
|
||||||
|
---
|
||||||
|
|
||||||
|
TODO: info
|
10
content/privacy/tappb.md
Normal file
10
content/privacy/tappb.md
Normal file
|
@ -0,0 +1,10 @@
|
||||||
|
---
|
||||||
|
status: additional
|
||||||
|
---
|
||||||
|
|
||||||
|
Tappb verzamelt bijkomende data door het gebruik van Firebase. Het [het privacybeleid](https://firebase.google.com/support/privacy) (Engels) van Firebase verschaft uitgebreide informatie. Concreet gebruikt Tappb volgende diensten en gebruikt daarbij volgende data:
|
||||||
|
|
||||||
|
- **Firebase Cloud Messaging**. Dit wordt gebruikt om meldingen naar de applicatie te sturen. Hiervoor wordt het "instance ID" verzameld, om te identificeren naar welk toestel een melding gestuurd moet worden. Deze worden onbeperkt bijgehouden. Indien dit ID wenst te verwijderen, zal Firebase het ID binnen de 180 dagen verwijderen.
|
||||||
|
- **ML Kit for Firebase**. Dit wordt gebruikt om de barcodes van producten te scannen. De afbeeldingen met barcodes worden tijdelijk bewaard op de servers van Firebase en worden gewoonlijk na enkele uren verwijderd. Meer informatie is tevens te vinden op [deze pagina](https://cloud.google.com/vision/docs/data-usage) (Engels). Ook hier worden "instance ID"s bijgehouden, volgens dezelfde voorwaarden als bij Firebase Cloud Messaging.
|
||||||
|
|
||||||
|
Ook gebruikt Tappb de diensten van [Tab](#tab) en [Tap](#tap).
|
3
content/privacy/tuxcape.md
Normal file
3
content/privacy/tuxcape.md
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
---
|
||||||
|
status: development
|
||||||
|
---
|
3
content/privacy/zauth.md
Normal file
3
content/privacy/zauth.md
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
---
|
||||||
|
status: development
|
||||||
|
---
|
3
content/privacy/zinc.md
Normal file
3
content/privacy/zinc.md
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
---
|
||||||
|
status: general
|
||||||
|
---
|
|
@ -1,7 +1,4 @@
|
||||||
---
|
---
|
||||||
title: 12urenloop
|
|
||||||
github: https://github.com/ZeusWPI/12urenloop
|
|
||||||
site: https://12urenloop.be/
|
|
||||||
logo_image: 12urenloop.png
|
logo_image: 12urenloop.png
|
||||||
priority: 50
|
priority: 50
|
||||||
---
|
---
|
||||||
|
|
|
@ -1,7 +1,4 @@
|
||||||
---
|
---
|
||||||
title: Blokmap
|
|
||||||
github: https://github.com/ZeusWPI/blokmap
|
|
||||||
site: http://blok.ugent.be/
|
|
||||||
logo_image: Logos_Blokmap.svg
|
logo_image: Logos_Blokmap.svg
|
||||||
priority: 25
|
priority: 25
|
||||||
---
|
---
|
||||||
|
|
|
@ -1,7 +1,4 @@
|
||||||
---
|
---
|
||||||
title: Cat
|
|
||||||
site: https://cat.zeus.gent/
|
|
||||||
gitlab: https://git.zeus.gent/ZeusWPI/cat
|
|
||||||
logo_image: cat.png
|
logo_image: cat.png
|
||||||
priority: 35
|
priority: 35
|
||||||
---
|
---
|
||||||
|
|
|
@ -1,7 +1,4 @@
|
||||||
---
|
---
|
||||||
title: Doorkeeper
|
|
||||||
github: https://github.com/ZeusWPI/Doorkeeper
|
|
||||||
site: https://github.com/ZeusWPI/Doorkeeper
|
|
||||||
logo_image: Logos_Slotmachiin.svg
|
logo_image: Logos_Slotmachiin.svg
|
||||||
priority: 30
|
priority: 30
|
||||||
---
|
---
|
||||||
|
|
|
@ -1,7 +1,4 @@
|
||||||
---
|
---
|
||||||
title: FK Enrolment.
|
|
||||||
github: https://github.com/ZeusWPI/FK-enrolment
|
|
||||||
site: https://registratie.fkgent.be/
|
|
||||||
logo_letter: E
|
logo_letter: E
|
||||||
logo_color: "#FFBBDD"
|
logo_color: "#FFBBDD"
|
||||||
priority: 5
|
priority: 5
|
||||||
|
|
|
@ -1,7 +1,4 @@
|
||||||
---
|
---
|
||||||
title: G2
|
|
||||||
github: https://github.com/ZeusWPI/g2-frontend
|
|
||||||
site: https://github.com/ZeusWPI/g2-backend
|
|
||||||
logo_image: Logos_G2.svg
|
logo_image: Logos_G2.svg
|
||||||
priority: 45
|
priority: 45
|
||||||
---
|
---
|
||||||
|
|
|
@ -1,7 +1,4 @@
|
||||||
---
|
---
|
||||||
title: Gamification
|
|
||||||
github: https://github.com/ZeusWPI/Gamification
|
|
||||||
site: https://zeus.ugent.be/game
|
|
||||||
logo_image: Logos_Gamification.svg
|
logo_image: Logos_Gamification.svg
|
||||||
priority: 30
|
priority: 30
|
||||||
---
|
---
|
||||||
|
|
|
@ -1,7 +1,4 @@
|
||||||
---
|
---
|
||||||
title: Gandalf
|
|
||||||
github: https://github.com/ZeusWPI/Gandalf
|
|
||||||
site: https://event.fkgent.be/
|
|
||||||
logo_image: Logos_Gandalf.svg
|
logo_image: Logos_Gandalf.svg
|
||||||
priority: 5
|
priority: 5
|
||||||
---
|
---
|
||||||
|
|
|
@ -1,7 +1,4 @@
|
||||||
---
|
---
|
||||||
title: Haldis
|
|
||||||
github: https://github.com/ZeusWPI/Haldis
|
|
||||||
site: https://haldis.zeus.gent/
|
|
||||||
logo_image: Logos_Haldis.svg
|
logo_image: Logos_Haldis.svg
|
||||||
priority: 35
|
priority: 35
|
||||||
---
|
---
|
||||||
|
|
|
@ -1,7 +1,4 @@
|
||||||
---
|
---
|
||||||
title: Lana
|
|
||||||
github: https://github.com/ZeusWPI/Lana
|
|
||||||
site: https://github.com/ZeusWPI/Lana
|
|
||||||
logo_letter: L
|
logo_letter: L
|
||||||
logo_color: "#E4C6A7"
|
logo_color: "#E4C6A7"
|
||||||
priority: 20
|
priority: 20
|
||||||
|
|
|
@ -1,7 +1,4 @@
|
||||||
---
|
---
|
||||||
title: Mozaic
|
|
||||||
github: https://github.com/ZeusWPI/mozaic
|
|
||||||
site: https://github.com/ZeusWPI/mozaic
|
|
||||||
logo_image: mozaic.png
|
logo_image: mozaic.png
|
||||||
priority: 41
|
priority: 41
|
||||||
---
|
---
|
||||||
|
|
|
@ -1,7 +1,4 @@
|
||||||
---
|
---
|
||||||
title: Saruman
|
|
||||||
github: https://github.com/ZeusWPI/Saruman
|
|
||||||
site: https://materiaal.12urenloop.be/
|
|
||||||
logo_letter: S
|
logo_letter: S
|
||||||
logo_color: grey
|
logo_color: grey
|
||||||
priority: 5
|
priority: 5
|
||||||
|
|
|
@ -1,7 +1,4 @@
|
||||||
---
|
---
|
||||||
title: zeus.ugent.be
|
|
||||||
github: https://github.com/ZeusWPI/zeus.ugent.be
|
|
||||||
site: https://zeus.ugent.be
|
|
||||||
logo_letter: Z
|
logo_letter: Z
|
||||||
logo_color: "#FF7F00"
|
logo_color: "#FF7F00"
|
||||||
priority: 40
|
priority: 40
|
||||||
|
|
|
@ -1,7 +1,4 @@
|
||||||
---
|
---
|
||||||
title: SlotMachien
|
|
||||||
github: https://github.com/ZeusWPI/slotmachien
|
|
||||||
site: https://github.com/ZeusWPI/slotmachien
|
|
||||||
logo_image: Logos_Slotmachien.svg
|
logo_image: Logos_Slotmachien.svg
|
||||||
priority: -1
|
priority: -1
|
||||||
---
|
---
|
||||||
|
|
|
@ -1,7 +1,4 @@
|
||||||
---
|
---
|
||||||
title: Tab
|
|
||||||
github: https://github.com/ZeusWPI/Tab
|
|
||||||
site: https://tab.zeus.gent/
|
|
||||||
logo_image: Logos_Tab.svg
|
logo_image: Logos_Tab.svg
|
||||||
priority: 40
|
priority: 40
|
||||||
---
|
---
|
||||||
|
|
|
@ -1,7 +1,4 @@
|
||||||
---
|
---
|
||||||
title: Tap
|
|
||||||
github: https://github.com/ZeusWPI/Tap
|
|
||||||
site: https://tap.zeus.gent/
|
|
||||||
logo_image: Logos_Tap.svg
|
logo_image: Logos_Tap.svg
|
||||||
priority: 40
|
priority: 40
|
||||||
---
|
---
|
||||||
|
|
|
@ -1,7 +1,4 @@
|
||||||
---
|
---
|
||||||
title: Tappb
|
|
||||||
github: https://github.com/ZeusWPI/tappb
|
|
||||||
site: https://play.google.com/store/apps/details?id=gent.zeus.tappb
|
|
||||||
logo_image: Logos_Tappb.svg
|
logo_image: Logos_Tappb.svg
|
||||||
priority: 39
|
priority: 39
|
||||||
---
|
---
|
||||||
|
|
102
data/projecten.yaml
Normal file
102
data/projecten.yaml
Normal file
|
@ -0,0 +1,102 @@
|
||||||
|
---
|
||||||
|
data:
|
||||||
|
12urenloop:
|
||||||
|
name: 12urenloop
|
||||||
|
site: https://12urenloop.be/
|
||||||
|
repo: https://github.com/12urenloop
|
||||||
|
blokmap:
|
||||||
|
name: Blokmap
|
||||||
|
site: https://blok.ugent.be
|
||||||
|
repo: https://github.com/ZeusWPI/blokmap
|
||||||
|
cat:
|
||||||
|
name: Cat
|
||||||
|
site: https://cat.zeus.gent/
|
||||||
|
repo: https://git.zeus.gent/ZeusWPI/cat
|
||||||
|
dap:
|
||||||
|
name: De Account Pagina
|
||||||
|
repo: https://github.com/ZeusWPI/DAP
|
||||||
|
doorkeeper:
|
||||||
|
name: Doorkeeper
|
||||||
|
repo: https://github.com/ZeusWPI/Doorkeeper
|
||||||
|
dut:
|
||||||
|
name: Dark Ufora Theme
|
||||||
|
repo: https://github.com/ZeusWPI/DUT
|
||||||
|
fathom:
|
||||||
|
name: Fathom
|
||||||
|
site: https://stats.zeus.gent/
|
||||||
|
fk_enrolment:
|
||||||
|
name: FK Enrolment
|
||||||
|
site: https://registratie.fkgent.be/
|
||||||
|
repo: https://github.com/ZeusWPI/FK-enrolment
|
||||||
|
g2:
|
||||||
|
name: G2
|
||||||
|
site: https://github.com/ZeusWPI/g2-frontend
|
||||||
|
repo: https://github.com/ZeusWPI/g2-backend
|
||||||
|
gamification:
|
||||||
|
name: Gamification
|
||||||
|
site: https://zeus.ugent.be/game
|
||||||
|
repo: https://github.com/ZeusWPI/Gamification
|
||||||
|
gandalf:
|
||||||
|
name: Gandalf
|
||||||
|
site: https://event.fkgent.be/
|
||||||
|
repo: https://github.com/ZeusWPI/Gandalf
|
||||||
|
gitlab:
|
||||||
|
name: Gitlab
|
||||||
|
site: https://git.zeus.gent
|
||||||
|
haldis:
|
||||||
|
name: Haldis
|
||||||
|
site: https://haldis.zeus.gent/
|
||||||
|
repo: https://github.com/ZeusWPI/Haldis
|
||||||
|
httpizza:
|
||||||
|
name: HTTPizza
|
||||||
|
repo: https://github.com/ZeusWPI/HTTPizza
|
||||||
|
hydra:
|
||||||
|
name: Hydra
|
||||||
|
site: https://hydra.ugent.be
|
||||||
|
repo: https://github.com/ZeusWPI/Hydra
|
||||||
|
lana:
|
||||||
|
name: Lana
|
||||||
|
repo: https://github.com/ZeusWPI/Lana
|
||||||
|
mattermost:
|
||||||
|
name: Mattermost
|
||||||
|
site: https://mattermost.zeus.gent
|
||||||
|
mozaic:
|
||||||
|
name: Mozaic
|
||||||
|
repo: https://github.com/ZeusWPI/mozaic
|
||||||
|
sad:
|
||||||
|
name: "Services Are Down D: Status"
|
||||||
|
site: https://sad.zeus.gent/
|
||||||
|
repo: https://github.com/ZeusWPI/SADStatus
|
||||||
|
saruman:
|
||||||
|
name: Saruman
|
||||||
|
site: https://materiaal.12urenloop.be/
|
||||||
|
repo: https://github.com/ZeusWPI/Saruman
|
||||||
|
site:
|
||||||
|
name: zeus.ugent.be
|
||||||
|
site: https://zeus.ugent.be
|
||||||
|
repo: https://github.com/ZeusWPI/zeus.ugent.be
|
||||||
|
slotmachien:
|
||||||
|
name: SlotMachien
|
||||||
|
repo: https://github.com/ZeusWPI/slotmachien
|
||||||
|
tab:
|
||||||
|
name: Tab
|
||||||
|
site: https://tab.zeus.gent/
|
||||||
|
repo: https://github.com/ZeusWPI/Tab
|
||||||
|
tap:
|
||||||
|
name: Tap
|
||||||
|
site: https://tap.zeus.gent/
|
||||||
|
repo: https://github.com/ZeusWPI/Tap
|
||||||
|
tappb:
|
||||||
|
name: Tappb
|
||||||
|
site: https://play.google.com/store/apps/details?id=gent.zeus.tappb
|
||||||
|
repo: https://github.com/ZeusWPI/tappb
|
||||||
|
tuxcape:
|
||||||
|
name: TuxcAPE
|
||||||
|
repo: https://github.com/ZeusWPI/Tuxcape
|
||||||
|
zauth:
|
||||||
|
name: Zeus AUTHentication Service
|
||||||
|
repo: https://github.com/ZeusWPI/zauth
|
||||||
|
zinc:
|
||||||
|
name: ZINC
|
||||||
|
site: https://zinc.zeus.gent
|
||||||
|
repo: https://github.com/ZeusWPI/zinc
|
|
@ -1,6 +1,21 @@
|
||||||
<h4 id="<%= project.identifier.without_ext.split('/')[-1] %>"><%= project[:name] %></h4>
|
<h4 class="title is-4" id="<%= project[:id] %>"><%= project[:name] %></h4>
|
||||||
<% if project.compiled_content %>
|
<p class="subtitle is-6">
|
||||||
<%= project.compiled_content %>
|
<% if project.key?(:site) || project.key?(:repo) %>
|
||||||
<% else %>
|
Meer informatie:
|
||||||
|
<% end %>
|
||||||
|
<% if project.key?(:site) %>
|
||||||
|
<a href="<%= project[:site] %>">website</a>
|
||||||
|
<% end %>
|
||||||
|
<% if project.key?(:site) && project.key?(:repo) %>
|
||||||
|
|
|
||||||
|
<% end %>
|
||||||
|
<% if project.key?(:repo) %>
|
||||||
|
<a href="<%= project[:repo] %>">repo</a>
|
||||||
|
<% end %>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<% if project.compiled_content.strip.empty? %>
|
||||||
<p>Dit project kent geen afwijkingen van het algemeen beleid.</p>
|
<p>Dit project kent geen afwijkingen van het algemeen beleid.</p>
|
||||||
|
<% else %>
|
||||||
|
<%= project.compiled_content %>
|
||||||
<% end %>
|
<% end %>
|
||||||
|
|
9
layouts/partials/_privacy_link.erb
Normal file
9
layouts/partials/_privacy_link.erb
Normal file
|
@ -0,0 +1,9 @@
|
||||||
|
<li>
|
||||||
|
<% if project.key?(:site) %>
|
||||||
|
<a href="<%= project[:site] %>"><%= project[:name] %></a>
|
||||||
|
<% elsif project.key?(:repo) %>
|
||||||
|
<a href="<%= project[:repo] %>"><%= project[:name] %></a>
|
||||||
|
<% else %>
|
||||||
|
<%= project[:name] %>
|
||||||
|
<% end %>
|
||||||
|
</li>
|
|
@ -1,4 +1,4 @@
|
||||||
<div id="<%= project.identifier.without_ext.split('/')[-1] %>" class="container project content column is-5 is-desktop">
|
<div id="<%= project[:id] %>" class="container project content column is-5 is-desktop">
|
||||||
<article class="columns is-mobile">
|
<article class="columns is-mobile">
|
||||||
<div class="column is-gapless is-narrow logo-wrapper">
|
<div class="column is-gapless is-narrow logo-wrapper">
|
||||||
<% if project[:logo_image] %>
|
<% if project[:logo_image] %>
|
||||||
|
@ -12,13 +12,20 @@
|
||||||
<% end %>
|
<% end %>
|
||||||
</div>
|
</div>
|
||||||
<div class="column">
|
<div class="column">
|
||||||
<p class="title"><a href="<%= project[:site] %>" target="_self"><%= project[:title] %></a></p>
|
<% if project.key?(:site) %>
|
||||||
<%= project.compiled_content %>
|
<p class="title"><a href="<%= project[:site] %>" target="_self"><%= project[:name] %></a></p>
|
||||||
<% if project[:github] %>
|
<% else %>
|
||||||
<div><a href="<%= project[:github] %>"><span class="icon"><%= fa('github') %></span> GitHub</a></div>
|
<p class="title"><%= project[:name] %></p>
|
||||||
<% end %>
|
<% end %>
|
||||||
<% if project[:gitlab] %>
|
<%= project.compiled_content %>
|
||||||
<div><a href="<%= project[:gitlab] %>"><span class="icon"><%= fa('gitlab') %></span> GitLab</a></div>
|
<% if project.key?(:repo) %>
|
||||||
|
<% if project[:repo].include?("github.com") || project[:repo].include?("github.ugent.be") %>
|
||||||
|
<div><a href="<%= project[:repo] %>"><span class="icon"><%= fa('github') %></span> GitHub</a></div>
|
||||||
|
<% elsif project[:repo].include?("git.zeus.gent") %>
|
||||||
|
<div><a href="<%= project[:repo] %>"><span class="icon"><%= fa('gitlab') %></span> GitLab</a></div>
|
||||||
|
<% else %>
|
||||||
|
<div><a href="<%= project[:repo] %>"> Repo</a></div>
|
||||||
|
<% end %>
|
||||||
<% end %>
|
<% end %>
|
||||||
</div>
|
</div>
|
||||||
</article>
|
</article>
|
||||||
|
|
|
@ -1,4 +0,0 @@
|
||||||
<div class="to-top">
|
|
||||||
<hr>
|
|
||||||
<a class="is-pulled-right" href="#top">Omhoog ↑</a>
|
|
||||||
</div>
|
|
|
@ -6,16 +6,33 @@ module PreprocessHelper
|
||||||
title: 'The event does not include a :title',
|
title: 'The event does not include a :title',
|
||||||
location: 'The event should include a :location, a textual description',
|
location: 'The event should include a :location, a textual description',
|
||||||
locationlink: 'The event does not include a :locationlink, which is a querystring which is used for Google Maps'
|
locationlink: 'The event does not include a :locationlink, which is a querystring which is used for Google Maps'
|
||||||
|
},
|
||||||
|
privacy: {
|
||||||
|
status: 'A privacy item must include the status of the project'
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def allowed_privacy_status
|
||||||
|
[
|
||||||
|
"additional",
|
||||||
|
"general",
|
||||||
|
"processor",
|
||||||
|
"development",
|
||||||
|
"external"
|
||||||
|
]
|
||||||
|
end
|
||||||
|
|
||||||
def check_schema(itemtype, item)
|
def check_schema(itemtype, item)
|
||||||
schema = required_attrs[itemtype]
|
schema = required_attrs[itemtype]
|
||||||
|
|
||||||
(schema.keys - item.attributes.keys).each do |key|
|
(schema.keys - item.attributes.keys).each do |key|
|
||||||
raise "#{item.identifier}: #{schema[key]}"
|
raise "#{item.identifier}: #{schema[key]}"
|
||||||
end
|
end
|
||||||
|
|
||||||
|
if itemtype == :schema && !allowed_privacy_status.include?(item.attributes.status)
|
||||||
|
raise "status must be one of #{allowed_privacy_status}"
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
def ignore_old_content(*paths)
|
def ignore_old_content(*paths)
|
||||||
|
@ -83,4 +100,24 @@ module PreprocessHelper
|
||||||
report[:date] = Date.strptime(report.identifier.without_ext.split('/').last)
|
report[:date] = Date.strptime(report.identifier.without_ext.split('/').last)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def update_project_item(projects, project)
|
||||||
|
id = project.identifier.without_ext.split('/')[-1]
|
||||||
|
if projects.key?(id.to_sym)
|
||||||
|
projects[id.to_sym].each do |key, value|
|
||||||
|
project[key] = value
|
||||||
|
end
|
||||||
|
project[:id] = id
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
def add_project_metadata
|
||||||
|
projects = data_from(:projecten)
|
||||||
|
@items.find_all('/privacy/*').each do |project|
|
||||||
|
update_project_item(projects, project)
|
||||||
|
end
|
||||||
|
@items.find_all('/projects/*').each do |project|
|
||||||
|
update_project_item(projects, project)
|
||||||
|
end
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -1,6 +1,11 @@
|
||||||
module PrivacyHelper
|
module PrivacyHelper
|
||||||
def privacy_projects(status)
|
|
||||||
|
def all_privacy_projects
|
||||||
@items.find_all('/privacy/*')
|
@items.find_all('/privacy/*')
|
||||||
|
end
|
||||||
|
|
||||||
|
def privacy_projects(status)
|
||||||
|
all_privacy_projects
|
||||||
.select {|project| project[:status] == status}
|
.select {|project| project[:status] == status}
|
||||||
.sort_by {|project| project[:name]}
|
.sort_by {|project| project[:name]}
|
||||||
end
|
end
|
||||||
|
|
Loading…
Reference in a new issue