Merge branch 'boxes-overhaul' of pmpc/website into master

lektura
Max Mehl 2017-08-29 16:48:34 +02:00 committed by Gogs
commit 4d97c20cf7
32 changed files with 238 additions and 304 deletions

View File

@ -23,14 +23,11 @@ DefaultContentLanguage = "en"
start = "Start"
about = "About"
arguments = "Arguments"
resources = "Resources"
action = "Take Action"
resources = "Resources"
spread = "Spread"
language = "Language"
# Language selection
[params.language]
description = "Read this page in another language"
# Start banner
[params.start]
@ -40,7 +37,6 @@ DefaultContentLanguage = "en"
fsfe = "fsfe.org"
alt = "Public Money, Public Code"
subtitle = "Why is software that is programmed with taxpayers' money not released as Free Software? Code paid by all people should be available to all people."
buttonText = "See the video"
# About section
@ -53,48 +49,58 @@ DefaultContentLanguage = "en"
# Arguments section
[params.arguments]
headline = "4 out of many reasons to free public code"
[[params.arguments.list]]
icon = "fa-eur"
title = "Tax savings"
description = "Similar applications don't have to be programmed from scratch every time."
[[params.arguments.list]]
icon = "fa-plus"
title = "Collaboration"
description = "Efforts on major projects can be joint to share expertise and costs."
[[params.arguments.list]]
icon = "fa-users"
title = "Serving the public"
description = "Applications paid by the public should be available for everyone."
[[params.arguments.list]]
icon = "fa-lightbulb-o"
title = "Fostering innovation"
description = "With transparent processes others don't have to reinvent the wheel."
# Portfolio modals
[params.resources.modal]
client = "Client"
date = "Date"
buttonText = "Close"
# Action section
[params.action]
headline = "Tell Your Representatives!"
subheadline = "Public Money? Public Code!"
description = "More than XY organisations support this call for action. Help us to make an impact by signing our open letter. We will hand over all signatures to representatives all over Europe that are debating software freedom in public administration."
subheadline = "We demand: **„Implement legislation requiring that, as a default setting, publicly financed software must be made publicly available under a Free Software licence.“**"
description = "More than XY organisations support this call for action by signing our [open letter](/openletter). Help us to make an impact by signing it, too! We will hand over all signatures to representatives all over Europe that are debating software freedom in public administration."
formName = "Name (required)"
formEmail = "Email (required)"
formCountry = "Country"
formZip = "ZIP Code"
formPermissionPriv = "I have read and accepted the [privacy statement](#)"
formPermissionPriv = "I have read and accepted the [privacy statement](/privacy)"
formPermissionNews = "I want to stay informed about the future of this campaign"
formPermissionPub = "I want my signature to appear in the [list of signatures](/signatures)"
formPermissionPub = "I want my signature to appear in the [list of signatures](/openletter#signatures)"
formSubmit = "Sign"
# Resources boxes section
[params.resources]
[[params.resources.list]]
title = "Latest News"
description = "The latest updates about this campaign and public code in Europe"
img = "news.jpg"
link = "/news/"
[[params.resources.list]]
title = "Take Further Action"
description = "Already signed the Open Letter? Learn what else you can do"
img = "action.jpg"
link = "/getactive/"
[[params.resources.list]]
title = "Press Contact"
description = "Contact information for press and interested public"
img = "press.jpg"
link = "/contact/"
# Spread the word section
[params.spread]
headline = "Spread the word!"
@ -103,6 +109,7 @@ DefaultContentLanguage = "en"
promoButtonLink = "https://fsfe.org/promo#pmpc"
shareText = "Tell your friends and followers about Public Code"
# Legal Section
[params.legal]
by = "This is a campaign by Free Software Foundation Europe"
@ -113,16 +120,11 @@ DefaultContentLanguage = "en"
contribute2 = "You're welcome to contribute!"
license = "Verbatim copying and distribution of this entire article is permitted in any medium, provided this notice is preserved."
# Subpages
[params.subpage]
# Signatures Subpage
[params.subpage.signatures]
headline = "Signatures"
id = "ID"
name = "Name"
country = "Country"
zip = "ZIP Code"
# Language selection
[params.language]
description = "Read this page in another language"
# 404 Error Page
[params.error]

View File

@ -0,0 +1,11 @@
---
title: Contact information
type: "page"
layout: "subpage"
---
You can contact us.
Press information please here.
Images can be loaded from there with that license.

View File

@ -0,0 +1,7 @@
---
title: "Werde jetzt aktiv!"
type: "page"
layout: "subpage"
---
Deutscher text wohooo

View File

@ -0,0 +1,14 @@
---
title: "Get Active now!"
type: "page"
layout: "subpage"
---
Some text describing how to get active.
Is this [full](google.com) Markdown?
* seems
* so
hehe

View File

@ -0,0 +1,7 @@
---
title: "Latest News"
type: "page"
layout: "subpage"
---
This page should contain news imported from fsfe.org. Maybe after a short paragraph and a link to /contact (for press info)

View File

@ -0,0 +1,35 @@
---
title: Open Letter
type: page
layout: subpage
sigtable: true
tableZip: Zip Code
tableName: Name
tableCountry: Country
---
Publicly funded software has to be Free Software. While there are plenty of good reasons for that, many politicians don't know about the importance of software yet.
That's where you can help! Sign the open letter to give our message more weight. We will hand over the letter and signatures to your representatives and make sure that they understand: Public Money? Public Code!
> ## Public Money? Public Code!
>
> Digital services offered and used by our public administrations are the critical infrastructure of 21st century democratic nations. In order to establish trustworthy systems, public bodies must ensure they have full control over the software and the computer systems at the core of our state digital infrastructure. However, right now, this is rarely the case due to restrictive software licences that:
>
> * Forbid sharing and exchanging publicly funded code. This prevents cooperation between public administrations and hinders further development.
> * Support monopolies by hindering competition. As a result, many administrations become dependent on a handful of companies.
> * Pose a threat to the security of our digital infrastructure by forbidding access to the source code. This makes fixing backdoors and security holes extremely difficult, if not completely impossible.
>
> We need software that fosters the sharing of good ideas and solutions. Like this we will be able to improve IT services for people all over Europe. We need software that guarantees freedom of choice, access, and competition. We need software that helps public administrations regain full control of their critical digital infrastructure, allowing them to become and remain independent from a handful of companies. That is why we call our representatives to support Free and Open Source Software in public administrations, because:
>
> * Free and Open Source Software is a modern public good that allows everybody to freely use, study, share and improve applications we use on a daily basis.
> * Free and Open Source Software licences provide safeguards against being locked down to services from specific companies that use restrictive licences to hinder competition.
> * Free and Open Source Software ensures that the source code is accessible so that backdoors and security holes can be fixed without depending on one service provider.
>
> Public bodies are financed through taxes. They must make sure they spend funds in the most efficient way possible. If it is public money, it should be public code as well!
>
> That is why we, the undersigned, call our representatives to:
>
> **"Implement legislation requiring that publicly financed software developed for public sector must be made publicly available under a Free and Open Source Software licence."**
Following people have signed the letter already and agreed to have their signature be public. Will you be the next?

View File

@ -0,0 +1,52 @@
---
title: "Privacy Policy"
type: "page"
layout: "subpage"
---
The **publiccode.eu** web site is run by the
[FSFE e.V.](https://fsfe.org/about/legal/imprint.html)
When this policy refers to "we", this means FSFE.
## What we collect and why
When you use the website to sign our open letter, we collect
and store information about your name, e-mail address and country,
which you have provided with your consent, and we will publicly
show your name as a signatory to the open letter. We will also
provide your name and country to the recipients of the open
letter (members of the European Parliament and national or
regional parliaments). We will not share your e-mail address.
We store this information in a database for the duration of the
Public Money - Public Code campaign and remove it afterwards.
If you have consented to being contacted about the campaign, we
will use your e-mail address to send you information about the
campaign during and immediately after the campaign.
## Who has access to stored data
All information submitted through the website, whether stored
on the webserver or in our issue system, is available to FSFE
staff and interns. The information is also available to FSFE's
system administrator team. Information is stored unencrypted on
our servers, which means the information is also available to
staff of PlusServer GmbH where our servers are hosted.
## What your rights are
You have the right to receive the personal data we have stored
about you, as well as the right to instruct us to rectify it if
it's incorrect. You also have the right to object to our storing
of information, in which case we will remove personal data about
you, and the right to remove your consent to processing of your
personal data in line with this policy, in which case we will
also take steps to remove personal data about you.
## Who to contact
If you have questions about our use of your data, would like to
request a copy of all information we have stored about you, or
would like to talk to our Data Protection Officer for any other
purpose, our appointed Data Protection Officer is the FSFE's
executive director, whom you can contact at [executive-director@fsfe.org](mailto:executive-director@fsfe.org).

View File

@ -1,19 +0,0 @@
<!DOCTYPE html>
<html lang="{{ with .Site.LanguageCode }}{{ . }}{{ else }}en-US{{ end }}">
<head>
{{ partial "head.html" . }}
</head>
<body id="page-top">
{{ partial "page-nav.html" . }}
{{ partial "page-signatures.html" . }}
{{ partial "language.html" . }}
{{ partial "legal.html" . }}
{{ partial "sharecolumn.html" . }}
{{ partial "js.html" . }}
</body>
</html>

View File

@ -4,7 +4,7 @@
{{ partial "head.html" . }}
</head>
<body id="page-top">
{{ partial "page-nav.html" . }}
{{ partial "subpage_navbar.html" . }}
{{ partial "page-template.html" . }}

View File

@ -1,6 +0,0 @@
modalID: 4
title: Neuigkeiten
date:
img: 4.jpg
shortLink: latestNews
description: Lorem ipsum dolor sit amet, consectetur adipisicing elit. Vel enim aliquid dicta ullam in repellendus amet perspiciatis adipisci architecto obcaecati sit voluptas ipsam, deleniti neque placeat tenetur cum tempore velit.

View File

@ -1,6 +0,0 @@
modalID: 3
title: Werde aktiv!
date:
img: 3.jpg
shortLink: takeAction
description: Lorem ipsum dolor sit amet, consectetur adipisicing elit. Vel enim aliquid dicta ullam in repellendus amet perspiciatis adipisci architecto obcaecati sit voluptas ipsam, deleniti neque placeat tenetur cum tempore velit.

View File

@ -1,6 +0,0 @@
modalID: 6
title: Presse
date:
img: 6.jpg
shortLink: pressInformation
description: Lorem ipsum dolor sit amet, consectetur adipisicing elit. Vel enim aliquid dicta ullam in repellendus amet perspiciatis adipisci architecto obcaecati sit voluptas ipsam, deleniti neque placeat tenetur cum tempore velit.

View File

@ -1,6 +0,0 @@
modalID: 4
title: Latest News
date:
img: news.jpg
shortLink: latestNews
description: Here should be an auto-generated list of news and their teasers from fsfe.org which are tagged with [pmpc](https://fsfe.org/tags/tagged-pmpc.en.html). There's no tag-specific RSS yet so we have to hack that. See issue https://git.fsfe.org/pmpc/website/issues/2

View File

@ -1,21 +0,0 @@
modalID: 3
title: Take Action!
date:
img: action.jpg
shortLink: takeAction
description: "Help us convince our governments that software paid with your taxes should be public by...
* ... signing the petition [LINK]
* ... sharing the petition with others [LINK for sharing]
* ... get info material
* ... call your representative
* ... donating to our campaign [LINK]
"

View File

@ -1,6 +0,0 @@
modalID: 6
title: Press information
date:
img: press.jpg
shortLink: pressInformation
description: Lorem ipsum dolor sit amet, consectetur adipisicing elit. Vel enim aliquid dicta ullam in repellendus amet perspiciatis adipisci architecto obcaecati sit voluptas ipsam, deleniti neque placeat tenetur cum tempore velit.

View File

@ -4,7 +4,7 @@
{{ partial "head.html" . }}
</head>
<body id="page-top">
<!--{{ partial "nav.html" . }}-->
{{ partial "subpage_navbar.html" . }}
{{ partial "404.html" . }}

View File

@ -21,14 +21,14 @@
{{ partial "arguments.html" . }}
{{ end }}
{{ if $data.resources }}
{{ partial "resources.html" . }}
{{ end }}
{{ if .Site.Params.action }}
{{ partial "action.html" . }}
{{ end }}
{{ if .Site.Params.resources }}
{{ partial "resources.html" . }}
{{ end }}
{{ if .Site.Params.spread }}
{{ partial "spread.html" . }}
{{ end }}
@ -39,10 +39,6 @@
{{ partial "legal.html" . }}
{{ if $data.resources }}
{{ partial "modals.html" . }}
{{ end }}
{{ partial "sharecolumn.html" . }}
{{ partial "js.html" . }}

View File

@ -4,9 +4,21 @@
{{ partial "head.html" . }}
</head>
<body id="page-top">
{{ partial "page-nav.html" . }}
{{ partial "subpage_navbar.html" . }}
{{ partial "page-signatures.html" . }}
{{ partial "subpage_before.html" . }}
<h1>{{ .Params.Title }}</h1>
<hr />
{{ .Content }}
{{ if eq .Params.sigtable true }}
{{ partial "subpage_sigtable.html" . }}
{{ end }}
{{ partial "subpage_after.html" . }}
{{ partial "language.html" . }}

View File

@ -5,8 +5,8 @@
<div class="col-lg-8 col-lg-offset-2 text-center">
<h2 class="section-heading">{{ .Site.Params.action.headline }}</h2>
<hr class="light">
<p><strong>{{ .Site.Params.action.subheadline}}</strong> <br />
{{ .Site.Params.action.description | markdownify }}</p>
<p>{{ .Site.Params.action.subheadline | markdownify }}</p>
<p>{{ .Site.Params.action.description | markdownify }}</p>
<form action="/sign" method="post">
<label class="sign-input form-na">

View File

@ -5,7 +5,7 @@
<p>{{ .Site.Params.legal.contribute1 }} <a href="https://git.fsfe.org/pmpc/website" target="_blank">{{ .Site.Params.legal.contribute2 }}</a></p>
<p>{{ .Site.Params.legal.by }} (<a href="https://fsfe.org/index.{{ .Lang }}.html" target="_blank">FSFE</a>)
<a href="https://fsfe.org/about/legal/imprint.{{ .Lang }}.html" target="_blank">{{ .Site.Params.legal.imprint }}</a>
| <a href="https://fsfe.org/about/legal/imprint.{{ .Lang }}.html#id-privacy-policy" target="_blank">{{ .Site.Params.legal.privacy }}</a>
| <a href="/privacy/">{{ .Site.Params.legal.privacy }}</a>
| <a href="https://fsfe.org/about/transparency-commitment.{{ .Lang }}.html" target="_blank">{{ .Site.Params.legal.transparency }}</a>
Copyright &copy; {{ (now).Year }}</p>
<p>{{ .Site.Params.legal.license }}</p>

View File

@ -1,39 +0,0 @@
{{ "<!-- RESOURCES MODALS -->" | safeHTML }}
{{ $data := index .Site.Data .Site.Language.Lang }}
{{ range $data.resources }}
<div class="resources-modal modal fade" id="{{ .shortLink }}" tabindex="-1" role="dialog" aria-hidden="true">
<div class="modal-content">
<div class="close-modal" data-dismiss="modal">
<div class="lr">
<div class="rl">
</div>
</div>
</div>
<div class="container">
<div class="row">
<div class="col-lg-8 col-lg-offset-2">
<div class="modal-body">
{{ with .title }}
<h2>{{ . }}</h2>
{{ end }}
{{ if and .title .description }}
<hr class="star-primary">
{{ end }}
<img src="img/resources/{{ .img }}" class="img-responsive img-centered" alt="">
{{ with .description }}
<p>{{ . | markdownify }}</p>
{{ end }}
{{ if .date }}
<ul class="list-inline item-details">
<li><strong>{{ with $.Site.Params.resources.modal.date }}{{.}}</strong>: {{ end }}
{{ .date }}
</li>
</ul>
{{ end }}
</div>
</div>
</div>
</div>
</div>
</div>
{{ end }}

View File

@ -30,10 +30,10 @@
<a class="page-scroll" href="#arguments">{{ .Site.Params.navigation.links.arguments }}</a>
</li>
<li>
<a class="page-scroll" href="#resources">{{ .Site.Params.navigation.links.resources }}</a>
<a class="page-scroll" href="#action">{{ .Site.Params.navigation.links.action }}</a>
</li>
<li>
<a class="page-scroll" href="#action">{{ .Site.Params.navigation.links.action }}</a>
<a class="page-scroll" href="#resources">{{ .Site.Params.navigation.links.resources }}</a>
</li>
<li>
<a class="page-scroll" href="#spread">{{ .Site.Params.navigation.links.spread }}</a>

View File

@ -1,31 +0,0 @@
{{ "<!-- SUBPAGE SIGNATURES -->" | safeHTML }}
<header>
<div class="header-content">
<div class="header-content-inner">
<div class="col-lg-8 col-lg-offset-2 text-center">
<h1>{{ .Site.Params.Subpage.Signatures.Headline }}</h1>
<hr />
<table class="signatures">
<tbody>
<tr>
<th>{{ .Site.Params.Subpage.Signatures.name }}</th>
<th>{{ .Site.Params.Subpage.Signatures.country }}</th>
<th>{{ .Site.Params.Subpage.Signatures.zip }}</th>
</tr>
{{ range .Site.Data.signatures.data }}
{{ range sort . "id" "desc" }}
{{ if (eq .confirmed "yes") | and (eq .permPub "yes") }}
<tr>
<td>{{ .name }}</td>
<td>{{ .country }}</td>
<td>{{ .zip }}</td>
</tr>
{{ end }}
{{ end }}
{{ end }}
</tbody>
</table>
</div>
</div>
</div>
</header>

View File

@ -4,9 +4,9 @@
<div class="container-fluid">
<h2 class="hidden">{{ .Site.Params.navigation.links.resources }}</h2>
<div class="row no-gutter">
{{ range $data.resources }}
{{ range .Site.Params.resources.list }}
<div class="col-lg-4 col-sm-6">
<a href="#{{ .shortLink }}" class="resources-box resources-link" data-toggle="modal">
<a href="{{ .link }}" class="resources-box resources-link">
<img src="/img/resources/{{ .img }}" class="img-responsive" alt="">
{{ if .title }}
<div class="resources-box-caption">
@ -16,6 +16,11 @@
{{ . }}
</div>
{{ end }}
{{ with .description }}
<div class="resource-description">
{{ . }}
</div>
{{ end }}
</div>
</div>
{{ end }}

View File

@ -0,0 +1,4 @@
</div>
</div>
</div>
</section>

View File

@ -0,0 +1,5 @@
{{ "<!-- GENERAL SUBPAGE -->" | safeHTML }}
<section id="page" class="subpage">
<div class="container">
<div class="row">
<div class="col-lg-8 col-lg-offset-2">

View File

@ -0,0 +1,20 @@
<table id="signatures">
<tbody>
<tr>
<th>{{ .Params.tableName }}</th>
<th>{{ .Params.tableCountry }}</th>
<th>{{ .Params.tableZip }}</th>
</tr>
{{ range .Site.Data.signatures.data }}
{{ range sort . "id" "desc" }}
{{ if (eq .confirmed "yes") | and (eq .permPub "yes") }}
<tr>
<td>{{ .name }}</td>
<td>{{ .country }}</td>
<td>{{ .zip }}</td>
</tr>
{{ end }}
{{ end }}
{{ end }}
</tbody>
</table>

View File

@ -383,14 +383,14 @@ header .header-content .header-content-inner p {
font-family: 'Open Sans','Helvetica Neue',Arial,sans-serif;
}
.resources-box .resources-box-caption .resources-box-caption-content .resource-category {
text-transform: uppercase;
.resources-box .resources-box-caption .resources-box-caption-content .resource-description {
margin-top: 10px;
font-size: 14px;
font-weight: 600;
}
.resources-box .resources-box-caption .resources-box-caption-content .resource-name {
font-size: 18px;
font-size: 20px;
}
.resources-box:hover .resources-box-caption {
@ -398,8 +398,8 @@ header .header-content .header-content-inner p {
}
@media(min-width:768px) {
.resources-box .resources-box-caption .resources-box-caption-content .resource-category {
font-size: 16px;
.resources-box .resources-box-caption .resources-box-caption-content .resource-description {
font-size: 14px;
}
.resources-box .resources-box-caption .resources-box-caption-content .resource-name {

View File

@ -1,3 +1,14 @@
/* SUBPAGES */
.subpage {
background-image: url(../img/header.jpg);
background-size: cover;
color: #fff;
min-height: 90%
}
.subpage h1 {
text-align: center;
}
/* LANGUAGE SECTION */
#language {
color: #fff;
@ -97,10 +108,10 @@ p.form-pe a {
}
/* SIGNATURE TABLE */
table.signatures {
table#signatures {
margin: 0 auto;
}
table.signatures th, table.signatures td {
table#signatures th, table#signatures td {
border: 1px solid darkgrey;
border-collapse: collapse;
text-align: left;

View File

@ -1,83 +0,0 @@
/*!
* The code below adds the modal functionality of the Freelancer Bootstrap Theme
* and was originally part of this theme.
*
*
* Start Bootstrap - Freelancer Bootstrap Theme (http://startbootstrap.com)
* Code licensed under the Apache License v2.0.
* For details, see http://www.apache.org/licenses/LICENSE-2.0.
*/
body {
overflow-x: hidden;
}
.img-centered {
margin: 0 auto;
}
.modal { overflow-y: scroll }
.resources-modal .modal-content {
padding: 50px 0;
min-height: 100%;
border: 0;
border-radius: 0;
text-align: center;
background-clip: border-box;
-webkit-box-shadow: none;
box-shadow: none;
}
.resources-modal .modal-content h2 {
margin: 0;
font-size: 3em;
}
.resources-modal .modal-content img {
margin-bottom: 30px;
}
.resources-modal .modal-content .item-details {
margin: 30px 0;
}
.resources-modal .close-modal {
position: fixed;
top: 25px;
right: 25px;
width: 30px;
height: 30px;
background-color: transparent;
cursor: pointer;
}
.resources-modal .close-modal:hover {
opacity: .3;
}
.resources-modal .close-modal .lr {
z-index: 1051;
width: 1px;
height: 30px;
margin-left: 15px;
background-color: #2c3e50;
-webkit-transform: rotate(45deg);
-ms-transform: rotate(45deg);
transform: rotate(45deg);
}
.resources-modal .close-modal .lr .rl {
z-index: 1052;
width: 1px;
height: 30px;
background-color: #2c3e50;
-webkit-transform: rotate(90deg);
-ms-transform: rotate(90deg);
transform: rotate(90deg);
}
.resources-modal .modal-backdrop {
display: none;
opacity: 0;
}

View File

@ -46,27 +46,3 @@
new WOW().init();
})(jQuery); // End of use strict
/*
* This function allows you to open a modal box by defining it in the URL
* e.g. https://localhost:1313/#resourcesModal1
*/
(function() {
if (window.location.href.indexOf('#') > -1) {
var modalID = window.location.href.split('#')[1];
var modal = document.getElementById(modalID);
modal.className += ' in';
modal.style.display = 'block';
var closeButtons = document.getElementsByClassName('close-modal');
for(var i = 0; i < closeButtons.length; i++) {
closeButtons[i].onclick = function() {
modal.style.display = 'none';
modal.classList.remove('in');
};
}
}
})();