diff --git a/.drone.yml b/.drone.yml new file mode 100644 index 0000000..d065b4b --- /dev/null +++ b/.drone.yml @@ -0,0 +1,16 @@ +pipeline: + build: + image: williamyeh/ansible:debian8 + commands: + - ansible-playbook -vvv playbook.yml -i hosts --syntax-check + + deploy: + image: williamyeh/ansible:debian8 + secrets: [ ssh_key ] + commands: + - mkdir /root/.ssh && echo "$SSH_KEY" > /root/.ssh/id_rsa && chmod 0600 /root/.ssh/id_rsa + - ssh-keyscan -H lund.fsfeurope.org >> ~/.ssh/known_hosts + - ansible-playbook playbook.yml -i hosts + when: + branch: master + diff --git a/000-default.conf b/000-default.conf new file mode 100644 index 0000000..d25e36c --- /dev/null +++ b/000-default.conf @@ -0,0 +1,15 @@ + + ServerAdmin webmaster@localhost + DocumentRoot /usr/share/blog/public/ + + ErrorLog ${APACHE_LOG_DIR}/error.log + CustomLog ${APACHE_LOG_DIR}/access.log combined + + + Options FollowSymLinks Includes + AllowOverride All + Order allow,deny + Allow from all + + + diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..4253988 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,24 @@ +FROM php:7.0-apache + +ENV HUGO_VERSION 0.20.7 +ENV HUGO_BINARY hugo_${HUGO_VERSION}_Linux-64bit.deb + +RUN apt-get update && apt-get upgrade -y && \ + apt-get install -y git curl unzip python3 + +RUN curl -sS https://getcomposer.org/installer \ + | php -- --install-dir=/usr/local/bin --filename=composer + +RUN composer require phpmailer/phpmailer + +RUN a2enmod rewrite + +ADD https://github.com/spf13/hugo/releases/download/v${HUGO_VERSION}/${HUGO_BINARY} /tmp/hugo.deb +RUN dpkg -i /tmp/hugo.deb \ + && rm /tmp/hugo.deb + +COPY site/ /usr/share/blog + +COPY 000-default.conf /etc/apache2/sites-enabled/ + +CMD /usr/share/blog/build/build.sh /usr/share/blog/data/signatures/signatures.json && apache2-foreground diff --git a/README.md b/README.md index 0843fe7..e713309 100644 --- a/README.md +++ b/README.md @@ -2,13 +2,13 @@ This website is the core of the "Public Money, Public Code" campaign. It is based on [Hugo](https://gohugo.io/), a modern static website generator. -Since the page is still in an early draft version, the page hasn't been released officially yet. However, you can see the current status of the `public` folder on [pmpc.mehl.mx](http://pmpc.mehl.mx). Please do not spread this URL. +The page is visible at [publiccode.eu](https://publiccode.eu). Please do not spread this URL. The website requires authentication to be visited. Username is `pmpc`, password is `publicmoneypubliccode`. Please do not spread this information to outside people not involved in the website development. ## Contributing to the website ### Prerequisites -In order to modify the website, you need `hugo` and `git` installed on your computer. If Hugo isn't available in your package manager, obtain it from its [official website](https://gohugo.io). The latest Hugo version is 0.19, older versions haven't been tested. Please make sure that you use an as recent version as possible to avoid errors. +In order to modify the website, you need `hugo` and `git` installed on your computer. If Hugo isn't available in your package manager, obtain it from its [official website](https://gohugo.io). We tested the website build with Hugo from version 0.19 upwards. Please make sure that you use an as recent version as possible to avoid errors. ### Configuring Git @@ -16,24 +16,11 @@ First of all, you'll need an account on git.fsfe.org. With an FSFE account (FSFE As part of the campaign team you can get full write access to this repository. Please contact one of [pmpc](https://git.fsfe.org/pmpc)'s admins to give your account the necessary privileges. -The most comfortable way for you to use Git is to use SSH keys for authentication. They won't require you to type in your username and password each time. Please read a [manual from Github](https://help.github.com/articles/connecting-to-github-with-ssh/) on the usage of SSH keys with their service. Although Github looks a bit different, it may help you understanding the logic. Please replace `github.com` with `git.fsfe.org`. However, a short step-by-step list: - -1. Check whether you already have an SSH key (`ls -al ~/.ssh`) -2. If not generate a new SSH key (`ssh-keygen -t rsa -b 4096 -C "your_email@example.com"`). Omit typing in a password if you are sure that you can protect your SSH private key. If you set a password, consider using `ssh-agent` to avoid having to type in the SSH key's password each time you use it. -3. Add the public SSH key to your account at git.fsfe.org. Copy the content of `.~/ssh/id_rsa.pub` in `Your Settings > SSH Keys > Add Key`. -4. Try to log in (`ssh git@git.fsfe.org`). If you read "Hi there, You've successfully authenticated, but Gitea does not provide shell access.", it's working! - -Then you have to set your git identity and a required default setting for git pushes: - -```sh -git config --global user.name "John Doe" -git config --global user.email johndoe@example.com -git config --global push.default simple -``` +In the FSFE's wiki, you'll find [information about our Git server](https://wiki.fsfe.org/TechDocs/Git) installation, and some guides for basic procedures. ### Cloning the website -Now navigate to a directory on your computer where you want the PMPC website to be stored. In this example, it's `FSFE/PMPC/website` in your user's directory. +Although the mentioned Git guides will enable you to understand how to download the website's repository, here's a short howto: Navigate to a directory on your computer where you want the PMPC website to be stored. In this example, it's `FSFE/PMPC/website` in your user's directory. ```sh mkdir -p ~/FSFE/PMPC/ # Create the directory if it doesn't exist yet @@ -41,35 +28,45 @@ cd ~/FSFE/PMPC/ # go to the newly created PMPC d git clone git@git.fsfe.org:pmpc/website.git # clone the website to the folder website ``` -In the newly created folder `pmpc-website` you'll find all source files the website consists of now. +In the newly created folder `pmpc-website` you'll find all source files the website consists of now. The hugo files are located under site/, whereas in the root directory you'll only find files informational files and those relevant for our build process (Drone, Ansible, Docker, Apache). ### Your first modification -Now we will modify the website a bit, review the changes and push them to the repository to make them available to other users and the live website. +For more experienced Git users we recommend the Fork & Pull Request workflow, which you'll also find in the [wiki's Git Guides section](https://wiki.fsfe.org/TechDocs/Git#Guides_on_specific_actions) (not available yet). However, beginners can also directly commit to the repository which saves them some steps. + +As an example, we will modify the website a bit, review the changes and push them to the repository to make them available to other users and the live website. 1. Navigate to the website's root directory (in the last example `~/FSFE/PMPC/website/`) and open a terminal window there. Type in `git pull`. This will get the latest changes from the server 2. After you received the latest version, you can edit the website. For testing purposes, open the file `CONTRIBUTORS.md`, scroll to the very end, and add your name there. No worries, this won't have any visible effect on the website. -3. Now check whether the website looks fine. Execute `hugo server` on your terminal. You will see a link containing `localhost:1313`. Open it and you see a preview of what the website looks like. This will help you to understand whether your changes actually have the effect you wanted. -4. If you're happy with it, you can execute `hugo`. This will build the website in its final form to the subfolder `public`. Make sure that the output of that command doesn't contain any errors or warnings. Note that your local built won't be sent to the server because it builds the website itself. -5. Check with `git status` what files have been changed on your side. In this example, you should see the file `CONTRIBUTORS.md` marked red. This means that the file has been changed but you didn't mark it as to be pushed to the server yet. If there're more files listed, make sure that you actually intended to modify these files! -6. Add the changed file to the commit queue with `git add CONTRIBUTORS.md`. In case you have changed more files, you can also type `git add .` to add all files at once. With `git status` you should see all files marked green now, which means that they're ready to be committed. -7. Commit the files with `git commit -m "added myself to the contributors list"`. In the comment after `-m` you should always write something meaningful that helps people to understand what you actually did. -8. Unlike with SVN, you're not finished yet. You will have to execute `git push` to actually upload the modifications to the server. +3. In the terminal, execute `cd site/` to navigate in the right directory for hugo's website build. +4. Now check whether the website looks fine. Execute `hugo server` on your terminal. You will see a link containing `localhost:1313`. Open it and you see a preview of what the website looks like. This will help you to understand whether your changes actually have the effect you wanted. +5. If you're happy with it, you can execute `hugo`. This will build the website in its final form to the subfolder `public`. Make sure that the output of that command doesn't contain any errors or warnings. Note that your local built won't be sent to the server because it builds the website itself. +6. Check with `git status` what files have been changed on your side. In this example, you should see the file `../CONTRIBUTORS.md` marked red. This means that the file has been changed but you didn't mark it as to be pushed to the server yet. If there're more files listed, make sure that you actually intended to modify these files! +7. Add the changed file to the commit queue with `git add ../CONTRIBUTORS.md`. In case you have changed more files, you can also type `git add .` in the repositories root level to add all files at once. With `git status` you should see all files marked green now, which means that they're ready to be committed. +8. Commit the files with `git commit -m "added myself to the contributors list"`. In the comment after `-m` you should always write something meaningful that helps people to understand what you actually did. +9. Unlike with SVN, you're not finished yet. You will have to execute `git push` to actually upload the modifications to the server. ## Important file paths The website structure is very easy. The most important files and directories are: -- `config.toml`: Headlines, site title, many texts. -- `data/resources/`: Content of the 3-column "resource" boxes which you can hover over and click to see the text. -- `data/share/`: Services where people can share to. Is being used in the "Spread" section and the left-side sharing icons -- `static/`: CSS, images, and Javascript files for the design. -- `static/img/share/`: Image files for share buttons. -- `static/css/custom.css`: File where all custom CSS code should be written to. -- `layouts/`: HTML structure (scaffold) for the website. Useful if you want to add another section or modify anchor links or CSS classes. -- `public/`: Built files which are used to display the website. Generated by running `hugo`. +- `site/config.toml`: Headlines, site title, many texts. +- `site/data/resources/`: Content of the 3-column "resource" boxes which you can hover over and click to see the text. +- `site/data/share/`: Services where people can share to. Is being used in the "Spread" section and the left-side sharing icons +- `site/static/`: CSS, images, and Javascript files for the design. +- `site/static/img/share/`: Image files for share buttons. +- `site/static/css/custom.css`: File where all custom CSS code should be written to. +- `site/layouts/`: HTML structure (scaffold) for the website. Useful if you want to add another section or modify anchor links or CSS classes. +- `site/public/`: Built files which are used to display the website. Generated by running `hugo`. -## Technical background information +## Technical information about building + +The FSFE uses Drone to automatically deploy the PMPC website. The website is +automatically deployed when there's a push to the master branch of the +repository, as well as once an hour (to update signatures). + +This is the latest build status: + +[![Build Status](https://drone.fsfe.org/api/badges/pmpc/website/status.svg)](https://drone.fsfe.org/pmpc/website) -The repository will be downloaded and built every 5 minutes to the live website on pmpc.mehl.mx. So please wait a bit until your modifications are visible. It shouldn't look different from what `hugo server` shows you. diff --git a/data/de/share/1-diaspora.yaml b/data/de/share/1-diaspora.yaml deleted file mode 100644 index 08d6368..0000000 --- a/data/de/share/1-diaspora.yaml +++ /dev/null @@ -1,5 +0,0 @@ -id: diaspora -name: Diaspora -titleBefore: Auf -titleAfter: teilen -link: https://test.fsfe.org/cgi-bin/share.php?service=diaspora&ref=pmpc&url=https://publicmoneypubliccode.org&title=Public%20Money%3F%20Public%20Code!%20%23pmpc diff --git a/data/de/share/2-gnusocial.yaml b/data/de/share/2-gnusocial.yaml deleted file mode 100644 index a56737e..0000000 --- a/data/de/share/2-gnusocial.yaml +++ /dev/null @@ -1,5 +0,0 @@ -id: gnusocial -name: GNU Social -titleBefore: Auf -titleAfter: teilen -link: https://test.fsfe.org/cgi-bin/share.php?service=gnusocial&ref=pmpc&url=https://publicmoneypubliccode.org&title=Public%20Money%3F%20Public%20Code!%20%23pmpc diff --git a/data/de/share/3-reddit.yaml b/data/de/share/3-reddit.yaml deleted file mode 100644 index c61455b..0000000 --- a/data/de/share/3-reddit.yaml +++ /dev/null @@ -1,5 +0,0 @@ -id: reddit -name: Reddit -titleBefore: Auf -titleAfter: teilen -link: https://test.fsfe.org/cgi-bin/share.php?service=reddit&ref=pmpc&url=https://publicmoneypubliccode.org&title=Public%20Money%3F%20Public%20Code!%20%23pmpc diff --git a/data/de/share/4-twitter.yaml b/data/de/share/4-twitter.yaml deleted file mode 100644 index 8ad84e5..0000000 --- a/data/de/share/4-twitter.yaml +++ /dev/null @@ -1,5 +0,0 @@ -id: twitter -name: Twitter -titleBefore: Auf -titleAfter: teilen -link: https://test.fsfe.org/cgi-bin/share.php?service=twitter&ref=pmpc&url=https://publicmoneypubliccode.org&title=Public%20Money%3F%20Public%20Code!%20%23pmpc diff --git a/data/de/share/5-gplus.yaml b/data/de/share/5-gplus.yaml deleted file mode 100644 index 4081a5a..0000000 --- a/data/de/share/5-gplus.yaml +++ /dev/null @@ -1,5 +0,0 @@ -id: gplus -name: Google+ -titleBefore: Auf -titleAfter: teilen -link: https://test.fsfe.org/cgi-bin/share.php?service=gplus&ref=pmpc&url=https://publicmoneypubliccode.org&title=Public%20Money%3F%20Public%20Code!%20%23pmpc diff --git a/data/de/share/6-facebook.yaml b/data/de/share/6-facebook.yaml deleted file mode 100644 index 674d9c9..0000000 --- a/data/de/share/6-facebook.yaml +++ /dev/null @@ -1,5 +0,0 @@ -id: facebook -name: Facebook -titleBefore: Auf -titleAfter: teilen -link: https://test.fsfe.org/cgi-bin/share.php?service=facebook&ref=pmpc&url=https://publicmoneypubliccode.org&title=Public%20Money%3F%20Public%20Code!%20%23pmpc diff --git a/data/en/share/1-diaspora.yaml b/data/en/share/1-diaspora.yaml deleted file mode 100644 index a141f60..0000000 --- a/data/en/share/1-diaspora.yaml +++ /dev/null @@ -1,5 +0,0 @@ -id: diaspora -name: Diaspora -titleBefore: Share on -titleAfter: -link: https://test.fsfe.org/cgi-bin/share.php?service=diaspora&ref=pmpc&url=https://publicmoneypubliccode.org&title=Public%20Money%3F%20Public%20Code!%20%23pmpc diff --git a/data/en/share/2-gnusocial.yaml b/data/en/share/2-gnusocial.yaml deleted file mode 100644 index 39c092a..0000000 --- a/data/en/share/2-gnusocial.yaml +++ /dev/null @@ -1,5 +0,0 @@ -id: gnusocial -name: GNU Social -titleBefore: Share on -titleAfter: -link: https://test.fsfe.org/cgi-bin/share.php?service=gnusocial&ref=pmpc&url=https://publicmoneypubliccode.org&title=Public%20Money%3F%20Public%20Code!%20%23pmpc diff --git a/data/en/share/3-reddit.yaml b/data/en/share/3-reddit.yaml deleted file mode 100644 index 7c3c28b..0000000 --- a/data/en/share/3-reddit.yaml +++ /dev/null @@ -1,5 +0,0 @@ -id: reddit -name: Reddit -titleBefore: Share on -titleAfter: -link: https://test.fsfe.org/cgi-bin/share.php?service=reddit&ref=pmpc&url=https://publicmoneypubliccode.org&title=Public%20Money%3F%20Public%20Code!%20%23pmpc diff --git a/data/en/share/4-twitter.yaml b/data/en/share/4-twitter.yaml deleted file mode 100644 index 2df6043..0000000 --- a/data/en/share/4-twitter.yaml +++ /dev/null @@ -1,5 +0,0 @@ -id: twitter -name: Twitter -titleBefore: Share on -titleAfter: -link: https://test.fsfe.org/cgi-bin/share.php?service=twitter&ref=pmpc&url=https://publicmoneypubliccode.org&title=Public%20Money%3F%20Public%20Code!%20%23pmpc diff --git a/data/en/share/5-gplus.yaml b/data/en/share/5-gplus.yaml deleted file mode 100644 index efca808..0000000 --- a/data/en/share/5-gplus.yaml +++ /dev/null @@ -1,5 +0,0 @@ -id: gplus -name: Google+ -titleBefore: Share on -titleAfter: -link: https://test.fsfe.org/cgi-bin/share.php?service=gplus&ref=pmpc&url=https://publicmoneypubliccode.org&title=Public%20Money%3F%20Public%20Code!%20%23pmpc diff --git a/data/en/share/6-facebook.yaml b/data/en/share/6-facebook.yaml deleted file mode 100644 index 61dedc6..0000000 --- a/data/en/share/6-facebook.yaml +++ /dev/null @@ -1,5 +0,0 @@ -id: facebook -name: Facebook -titleBefore: Share on -titleAfter: -link: https://test.fsfe.org/cgi-bin/share.php?service=facebook&ref=pmpc&url=https://publicmoneypubliccode.org&title=Public%20Money%3F%20Public%20Code!%20%23pmpc diff --git a/hosts b/hosts new file mode 100644 index 0000000..2c0105b --- /dev/null +++ b/hosts @@ -0,0 +1 @@ +lund.fsfeurope.org diff --git a/layouts/partials/sharecolumn.html b/layouts/partials/sharecolumn.html deleted file mode 100644 index 022e287..0000000 --- a/layouts/partials/sharecolumn.html +++ /dev/null @@ -1,7 +0,0 @@ -{{ "" | safeHTML }} -{{ $data := index .Site.Data .Site.Language.Lang }} - diff --git a/layouts/partials/spread.html b/layouts/partials/spread.html deleted file mode 100644 index 711de57..0000000 --- a/layouts/partials/spread.html +++ /dev/null @@ -1,28 +0,0 @@ -{{ "" | safeHTML }} -{{ $data := index .Site.Data .Site.Language.Lang }} -
-
-
-
- {{ with .Site.Params.spread.headline }} -

{{ . }}

- {{ end }} - {{ with .Site.Params.spread.promoText }} -

{{ . | markdownify }}

- {{ end }} - {{ .Site.Params.spread.promoButtonText }} -
- {{ with .Site.Params.spread.shareText }} -

{{ . | markdownify }}

- {{ end }} - - -
-
-
-
diff --git a/playbook.yml b/playbook.yml new file mode 100644 index 0000000..c50c596 --- /dev/null +++ b/playbook.yml @@ -0,0 +1,21 @@ +--- +- hosts: lund.fsfeurope.org + remote_user: root + + tasks: + - name: build the pmpc container + command: docker build --no-cache=true -t pmpc https://git.fsfe.org/pmpc/website.git + + - name: run pmpc + docker_container: + name: pmpc + image: pmpc + state: started + restart: yes + env: + HUGO_BASE_URL: https://publiccode.eu/ + VIRTUAL_HOST: publiccode.eu + LETSENCRYPT_HOST: publiccode.eu + LETSENCRYPT_EMAIL: jonas@fsfe.org + volumes: + - "/srv/pmpc-signatures:/usr/share/blog/data/signatures:rw" diff --git a/build/build.sh b/site/build/build.sh similarity index 84% rename from build/build.sh rename to site/build/build.sh index 3346360..e42dd62 100755 --- a/build/build.sh +++ b/site/build/build.sh @@ -4,7 +4,7 @@ basedir="${0%/*}/.." sigdb="$1" # Clean signatures database -"$basedir/build/clean_database.py" "$sigdb" "$basedir/data/signatures/signatures_clean.json" +"$basedir/build/clean_database.py" "$sigdb" "$basedir/data/signatures/data/signatures_clean.json" # Execute hugo buildrun cd "$basedir" diff --git a/build/clean_database.py b/site/build/clean_database.py similarity index 100% rename from build/clean_database.py rename to site/build/clean_database.py diff --git a/config.toml b/site/config.toml similarity index 97% rename from config.toml rename to site/config.toml index 3fa730f..987e42f 100644 --- a/config.toml +++ b/site/config.toml @@ -9,7 +9,12 @@ DefaultContentLanguage = "en" languageCode = "en-us" languageName = "English" favicon = "favicon.ico" + url = "https://publiccode.eu" +[params.sharemeta] + previewImage = "img/header.jpg" + fbPageID = "336939393138306" + twitterUser = "@fsfe" # Navigation [params.navigation] diff --git a/content/.gitkeep b/site/content/.gitkeep similarity index 100% rename from content/.gitkeep rename to site/content/.gitkeep diff --git a/content/signatures.de.html b/site/content/signatures.de.html similarity index 100% rename from content/signatures.de.html rename to site/content/signatures.de.html diff --git a/content/signatures.en.html b/site/content/signatures.en.html similarity index 100% rename from content/signatures.en.html rename to site/content/signatures.en.html diff --git a/content/template.html b/site/content/template.html similarity index 100% rename from content/template.html rename to site/content/template.html diff --git a/data/de/resources/1-PublicAdmin.yaml b/site/data/de/resources/1-PublicAdmin.yaml similarity index 100% rename from data/de/resources/1-PublicAdmin.yaml rename to site/data/de/resources/1-PublicAdmin.yaml diff --git a/data/de/resources/2-Public.yaml b/site/data/de/resources/2-Public.yaml similarity index 100% rename from data/de/resources/2-Public.yaml rename to site/data/de/resources/2-Public.yaml diff --git a/data/de/resources/3-Action.yaml b/site/data/de/resources/3-Action.yaml similarity index 100% rename from data/de/resources/3-Action.yaml rename to site/data/de/resources/3-Action.yaml diff --git a/data/de/resources/4-News.yaml b/site/data/de/resources/4-News.yaml similarity index 100% rename from data/de/resources/4-News.yaml rename to site/data/de/resources/4-News.yaml diff --git a/data/de/resources/5-FOI.yaml b/site/data/de/resources/5-FOI.yaml similarity index 100% rename from data/de/resources/5-FOI.yaml rename to site/data/de/resources/5-FOI.yaml diff --git a/data/de/resources/6-Press.yaml b/site/data/de/resources/6-Press.yaml similarity index 100% rename from data/de/resources/6-Press.yaml rename to site/data/de/resources/6-Press.yaml diff --git a/site/data/de/share/1-diaspora.yaml b/site/data/de/share/1-diaspora.yaml new file mode 100644 index 0000000..edc3cdf --- /dev/null +++ b/site/data/de/share/1-diaspora.yaml @@ -0,0 +1,5 @@ +id: diaspora +name: Diaspora +titleBefore: Auf +titleAfter: teilen +userinput: true diff --git a/site/data/de/share/2-gnusocial.yaml b/site/data/de/share/2-gnusocial.yaml new file mode 100644 index 0000000..dff83cc --- /dev/null +++ b/site/data/de/share/2-gnusocial.yaml @@ -0,0 +1,5 @@ +id: gnusocial +name: GNU Social +titleBefore: Auf +titleAfter: teilen +userinput: true diff --git a/site/data/de/share/3-reddit.yaml b/site/data/de/share/3-reddit.yaml new file mode 100644 index 0000000..74532d6 --- /dev/null +++ b/site/data/de/share/3-reddit.yaml @@ -0,0 +1,4 @@ +id: reddit +name: Reddit +titleBefore: Auf +titleAfter: teilen diff --git a/site/data/de/share/4-twitter.yaml b/site/data/de/share/4-twitter.yaml new file mode 100644 index 0000000..bfe841f --- /dev/null +++ b/site/data/de/share/4-twitter.yaml @@ -0,0 +1,4 @@ +id: twitter +name: Twitter +titleBefore: Auf +titleAfter: teilen diff --git a/site/data/de/share/5-gplus.yaml b/site/data/de/share/5-gplus.yaml new file mode 100644 index 0000000..7be6463 --- /dev/null +++ b/site/data/de/share/5-gplus.yaml @@ -0,0 +1,4 @@ +id: gplus +name: Google+ +titleBefore: Auf +titleAfter: teilen diff --git a/site/data/de/share/6-facebook.yaml b/site/data/de/share/6-facebook.yaml new file mode 100644 index 0000000..e312c3d --- /dev/null +++ b/site/data/de/share/6-facebook.yaml @@ -0,0 +1,4 @@ +id: facebook +name: Facebook +titleBefore: Auf +titleAfter: teilen diff --git a/site/data/de/share/7-support.yaml b/site/data/de/share/7-support.yaml new file mode 100644 index 0000000..fca02d5 --- /dev/null +++ b/site/data/de/share/7-support.yaml @@ -0,0 +1,4 @@ +id: support +name: Kampagne unterstützen! +titleBefore: +titleAfter: diff --git a/data/en/resources/1-PublicAdmin.yaml b/site/data/en/resources/1-PublicAdmin.yaml similarity index 100% rename from data/en/resources/1-PublicAdmin.yaml rename to site/data/en/resources/1-PublicAdmin.yaml diff --git a/data/en/resources/2-Public.yaml b/site/data/en/resources/2-Public.yaml similarity index 100% rename from data/en/resources/2-Public.yaml rename to site/data/en/resources/2-Public.yaml diff --git a/data/en/resources/3-Action.yaml b/site/data/en/resources/3-Action.yaml similarity index 100% rename from data/en/resources/3-Action.yaml rename to site/data/en/resources/3-Action.yaml diff --git a/data/en/resources/4-News.yaml b/site/data/en/resources/4-News.yaml similarity index 100% rename from data/en/resources/4-News.yaml rename to site/data/en/resources/4-News.yaml diff --git a/data/en/resources/5-FOI.yaml b/site/data/en/resources/5-FOI.yaml similarity index 100% rename from data/en/resources/5-FOI.yaml rename to site/data/en/resources/5-FOI.yaml diff --git a/data/en/resources/6-Press.yaml b/site/data/en/resources/6-Press.yaml similarity index 100% rename from data/en/resources/6-Press.yaml rename to site/data/en/resources/6-Press.yaml diff --git a/site/data/en/share/1-diaspora.yaml b/site/data/en/share/1-diaspora.yaml new file mode 100644 index 0000000..15f0af3 --- /dev/null +++ b/site/data/en/share/1-diaspora.yaml @@ -0,0 +1,5 @@ +id: diaspora +name: Diaspora +titleBefore: Share on +titleAfter: +userinput: true diff --git a/site/data/en/share/2-gnusocial.yaml b/site/data/en/share/2-gnusocial.yaml new file mode 100644 index 0000000..8549b04 --- /dev/null +++ b/site/data/en/share/2-gnusocial.yaml @@ -0,0 +1,5 @@ +id: gnusocial +name: GNU Social +titleBefore: Share on +titleAfter: +userinput: true diff --git a/site/data/en/share/3-reddit.yaml b/site/data/en/share/3-reddit.yaml new file mode 100644 index 0000000..fd02c60 --- /dev/null +++ b/site/data/en/share/3-reddit.yaml @@ -0,0 +1,4 @@ +id: reddit +name: Reddit +titleBefore: Share on +titleAfter: diff --git a/site/data/en/share/4-twitter.yaml b/site/data/en/share/4-twitter.yaml new file mode 100644 index 0000000..3857759 --- /dev/null +++ b/site/data/en/share/4-twitter.yaml @@ -0,0 +1,4 @@ +id: twitter +name: Twitter +titleBefore: Share on +titleAfter: diff --git a/site/data/en/share/5-gplus.yaml b/site/data/en/share/5-gplus.yaml new file mode 100644 index 0000000..214cf40 --- /dev/null +++ b/site/data/en/share/5-gplus.yaml @@ -0,0 +1,4 @@ +id: gplus +name: Google+ +titleBefore: Share on +titleAfter: diff --git a/site/data/en/share/6-facebook.yaml b/site/data/en/share/6-facebook.yaml new file mode 100644 index 0000000..caa4ef8 --- /dev/null +++ b/site/data/en/share/6-facebook.yaml @@ -0,0 +1,4 @@ +id: facebook +name: Facebook +titleBefore: Share on +titleAfter: diff --git a/site/data/en/share/7-support.yaml b/site/data/en/share/7-support.yaml new file mode 100644 index 0000000..aa85023 --- /dev/null +++ b/site/data/en/share/7-support.yaml @@ -0,0 +1,4 @@ +id: support +name: Support the Campaign! +titleBefore: +titleAfter: diff --git a/data/signatures/.gitignore b/site/data/signatures/.gitignore similarity index 100% rename from data/signatures/.gitignore rename to site/data/signatures/.gitignore diff --git a/layouts/404.html b/site/layouts/404.html similarity index 100% rename from layouts/404.html rename to site/layouts/404.html diff --git a/layouts/index.html b/site/layouts/index.html similarity index 100% rename from layouts/index.html rename to site/layouts/index.html diff --git a/layouts/partials/404.html b/site/layouts/partials/404.html similarity index 100% rename from layouts/partials/404.html rename to site/layouts/partials/404.html diff --git a/layouts/partials/about.html b/site/layouts/partials/about.html similarity index 100% rename from layouts/partials/about.html rename to site/layouts/partials/about.html diff --git a/layouts/partials/contact.html b/site/layouts/partials/contact.html similarity index 100% rename from layouts/partials/contact.html rename to site/layouts/partials/contact.html diff --git a/layouts/partials/head.html b/site/layouts/partials/head.html similarity index 61% rename from layouts/partials/head.html rename to site/layouts/partials/head.html index 3b84a74..01ffd43 100644 --- a/layouts/partials/head.html +++ b/site/layouts/partials/head.html @@ -10,6 +10,25 @@ {{ range .Translations }} {{end}} + +{{ "" | safeHTML }} + + + + + + + + +{{ "" | safeHTML }} + + + + + + + + {{ "" | safeHTML }} {{ "" | safeHTML }} @@ -22,6 +41,8 @@ {{ "" | safeHTML }} + + {{ "" | safeHTML }} diff --git a/layouts/partials/js.html b/site/layouts/partials/js.html similarity index 100% rename from layouts/partials/js.html rename to site/layouts/partials/js.html diff --git a/layouts/partials/language.html b/site/layouts/partials/language.html similarity index 100% rename from layouts/partials/language.html rename to site/layouts/partials/language.html diff --git a/layouts/partials/legal.html b/site/layouts/partials/legal.html similarity index 100% rename from layouts/partials/legal.html rename to site/layouts/partials/legal.html diff --git a/layouts/partials/modals.html b/site/layouts/partials/modals.html similarity index 100% rename from layouts/partials/modals.html rename to site/layouts/partials/modals.html diff --git a/layouts/partials/nav.html b/site/layouts/partials/nav.html similarity index 100% rename from layouts/partials/nav.html rename to site/layouts/partials/nav.html diff --git a/layouts/partials/navpage.html b/site/layouts/partials/navpage.html similarity index 100% rename from layouts/partials/navpage.html rename to site/layouts/partials/navpage.html diff --git a/layouts/partials/page-signatures.html b/site/layouts/partials/page-signatures.html similarity index 95% rename from layouts/partials/page-signatures.html rename to site/layouts/partials/page-signatures.html index 9ace95d..f29d717 100644 --- a/layouts/partials/page-signatures.html +++ b/site/layouts/partials/page-signatures.html @@ -12,7 +12,7 @@ {{ .Site.Params.Subpage.Signatures.country }} {{ .Site.Params.Subpage.Signatures.zip }} - {{ range .Site.Data.signatures }} + {{ range .Site.Data.signatures.data }} {{ range sort . "id" "desc" }} {{ if (eq .confirmed "yes") | and (eq .permPub "yes") }} diff --git a/layouts/partials/page-template.html b/site/layouts/partials/page-template.html similarity index 100% rename from layouts/partials/page-template.html rename to site/layouts/partials/page-template.html diff --git a/layouts/partials/reasons.html b/site/layouts/partials/reasons.html similarity index 100% rename from layouts/partials/reasons.html rename to site/layouts/partials/reasons.html diff --git a/layouts/partials/resources.html b/site/layouts/partials/resources.html similarity index 100% rename from layouts/partials/resources.html rename to site/layouts/partials/resources.html diff --git a/site/layouts/partials/sharecolumn.html b/site/layouts/partials/sharecolumn.html new file mode 100644 index 0000000..52f5552 --- /dev/null +++ b/site/layouts/partials/sharecolumn.html @@ -0,0 +1,31 @@ +{{ "" | safeHTML }} +{{ $data := index .Site.Data .Site.Language.Lang }} +
+ +
+ + + + + + + {{ range $data.share }} + {{ if eq .userinput true }} + + + + + + + + {{ end }} + {{ end }} + + {{ range $data.share }} + {{ if ne .userinput true }} + + {{ end }} + {{ end }} +
+ +
diff --git a/layouts/partials/sign.html b/site/layouts/partials/sign.html similarity index 100% rename from layouts/partials/sign.html rename to site/layouts/partials/sign.html diff --git a/site/layouts/partials/spread.html b/site/layouts/partials/spread.html new file mode 100644 index 0000000..95abe65 --- /dev/null +++ b/site/layouts/partials/spread.html @@ -0,0 +1,55 @@ +{{ "" | safeHTML }} +{{ $data := index .Site.Data .Site.Language.Lang }} +
+
+
+
+ {{ with .Site.Params.spread.headline }} +

{{ . }}

+ {{ end }} + {{ with .Site.Params.spread.promoText }} +

{{ . | markdownify }}

+ {{ end }} + {{ .Site.Params.spread.promoButtonText }} +
+ {{ with .Site.Params.spread.shareText }} +

{{ . | markdownify }}

+ {{ end }} + + +
+
+
+
diff --git a/layouts/partials/start.html b/site/layouts/partials/start.html similarity index 100% rename from layouts/partials/start.html rename to site/layouts/partials/start.html diff --git a/public/.gitignore b/site/public/.gitignore similarity index 100% rename from public/.gitignore rename to site/public/.gitignore diff --git a/site/static/.htaccess b/site/static/.htaccess new file mode 100644 index 0000000..8cfff3e --- /dev/null +++ b/site/static/.htaccess @@ -0,0 +1,14 @@ +RewriteEngine On +RewriteBase / + +# Redirect 404 errors to nice page +ErrorDocument 404 /404.html + +# Nicer URL for share buttons +RewriteRule ^share/?$ /cgi/share.php [NC,L] + +# Password-protect the site until it's released +AuthType Basic +AuthName "This website will be released soon. Please follow our news on fsfe.org to stay updated." +AuthUserFile /usr/share/blog/public/.htpasswd +Require valid-user diff --git a/site/static/.htpasswd b/site/static/.htpasswd new file mode 100644 index 0000000..f61d90c --- /dev/null +++ b/site/static/.htpasswd @@ -0,0 +1 @@ +pmpc:$apr1$e.WcM84k$NYeWE2apCKXWz4Og1QOwC/ diff --git a/site/static/cgi/share.php b/site/static/cgi/share.php new file mode 100644 index 0000000..b52e691 --- /dev/null +++ b/site/static/cgi/share.php @@ -0,0 +1,70 @@ + diff --git a/static/cgi/sign.php b/site/static/cgi/sign.php similarity index 92% rename from static/cgi/sign.php rename to site/static/cgi/sign.php index 5d1c48c..ef928b9 100644 --- a/static/cgi/sign.php +++ b/site/static/cgi/sign.php @@ -1,12 +1,14 @@ isSMTP(); + $mail->Host = "mail.fsfe.org"; + $mail->setFrom('noreply@fsfe.org', 'Public Money, Public Code'); + // Send email asking for confirmation - $to = $email; - $subject = "One step left to sign the \"Public Money - Public Code\" letter"; - $message = "Dear $name, \r\n\r\n" . + $mail->addAddress($email); + $mail->Subject = "One step left to sign the \"Public Money - Public Code\" letter"; + $mail->Body = "Dear $name, \r\n\r\n" . "Thank you for signing the open \"Public Money - Public Code\" letter! \r\n\r\n" . "In order to confirm your signature, please visit following link:\r\n" . "$selfurl?action=confirm&id=$codeid&code=$code \r\n\r\n" . "If your confirmation succeeds, your signature will appear on the website within the next few hours."; - $headers = "From: noreply@fsfe.org \r\n" . - "Message-ID: \r\n" . - "X-Mailer: PHP"; - mail($to, $subject, $message, $headers); + $mail->Send(); $output .= "Thank you for signing our open letter!

"; $output .= "We just sent an email to your address ($email) for you to confirm your signature."; diff --git a/static/css/animate.min.css b/site/static/css/animate.min.css similarity index 100% rename from static/css/animate.min.css rename to site/static/css/animate.min.css diff --git a/static/css/bootstrap.css b/site/static/css/bootstrap.css similarity index 100% rename from static/css/bootstrap.css rename to site/static/css/bootstrap.css diff --git a/static/css/bootstrap.min.css b/site/static/css/bootstrap.min.css similarity index 100% rename from static/css/bootstrap.min.css rename to site/static/css/bootstrap.min.css diff --git a/site/static/css/buttons-side.css b/site/static/css/buttons-side.css new file mode 100644 index 0000000..b8e978c --- /dev/null +++ b/site/static/css/buttons-side.css @@ -0,0 +1,134 @@ +div.sharecolumn .share-buttons.side { + display: flex; + left: 0; + padding: 0.1vh 0.5vh; + position: fixed; + top: 35%; + z-index: 10; + flex-direction: column; +} +@media(max-width:767px) { + .share-buttons.side { + display: none !important; + } +} + +.share-buttons.side button.button, +.share-buttons.side label.button { + background-position: center center; + background-repeat: no-repeat; + background-size: 2.7vh auto; + background-color: #474747; + border-radius: 3px; + border: none; + color: #000; + display: inline-block; + margin: 2.5px 5px 2.5px 0; + opacity: 0.9; + text-decoration: none; + height: 4vh; + width: 4vh; + cursor: pointer; +} + +/* Single services with their colours and logos */ +.share-buttons.side button:hover, .share-buttons.side label:hover { + background-color: #F05F40; +} +.share-buttons.side .share-diaspora { + background-image: url("/img/share/diaspora_white.png"); +} +.share-buttons.side .share-gnusocial { + background-image: url("/img/share/gnusocial_white.png"); +} +.share-buttons.side .share-reddit { + background-image: url("/img/share/reddit_white.png"); +} +.share-buttons.side .share-flattr { + background-image: url("/img/share/flattr_white.png"); + display: none !important; +} +.share-buttons.side .share-hnews { + background-image: url("/img/share/hackernews_white.png"); + display: none !important; +} +.share-buttons.side .share-twitter { + background-image: url("/img/share/twitter_white.png"); +} +.share-buttons.side .share-facebook { + background-image: url("/img/share/facebook_white.png"); +} +.share-buttons.side .share-gplus { + background-image: url("/img/share/gplus_white.png"); + display: none !important; +} +.share-buttons.side .share-support { + background-image: url("/img/share/support_red.png"); +} + +/* Share pop-up behaviour hacks */ +.share-buttons.side input[type="radio"], +.share-buttons.side input[type="radio"] + span, +.share-buttons.side input[type="checkbox"], +.share-buttons.side input[type="checkbox"] + span { + display: none; +} +.share-buttons.side input[type="radio"]:checked + span, +.share-buttons.side input[type="checkbox"]:checked + span { + position: absolute; + margin-top: 3.5em; margin-left: 0; + width: 300px; + padding: .5em; + z-index: 3; + background-color: #333; + border-radius: .5em; + display: inline-block; +} +.share-buttons.side input[type="radio"]:checked + span:before, +.share-buttons.side input[type="checkbox"]:checked + span:before { + content: ''; + position: absolute; + top: -1em; + height: 0em; width: 0em; + border-bottom: 1em solid #333; + border-left: 1em solid transparent; + border-right: 1em solid transparent; + z-index: 3; +} +.share-buttons.side input[type="radio"] + span > *{ + vertical-align: middle; +} +.share-buttons.side input[type="radio"] + span > button { + margin: 2.5px 0 2.5px 5px; + min-width: 4em; + padding: .25em; + font-weight: normal; + font-size: 1em; + line-height: normal; +} +.share-buttons.side input[type="radio"] + span > label { + position: fixed; + top: 0; left: 0; right: 0; bottom: 0; + z-index: -1; + background-color: rgba(0, 0, 0, .5); +} + +/* Separate share buttons form from possibly floating content */ +form.share-buttons.side { + clear: both; +} + +/* Hide something */ +.n { + display: none; +} + +/* Media Query to resize social links for portrait tablet view */ +@media screen and (max-height: 770px) { + .share-buttons.side button.button, + .share-buttons.side label.button { + background-size: 3.7vh auto; + height: 6vh; + width: 6vh; + } +} diff --git a/site/static/css/buttons-spread.css b/site/static/css/buttons-spread.css new file mode 100644 index 0000000..ee08734 --- /dev/null +++ b/site/static/css/buttons-spread.css @@ -0,0 +1,160 @@ +/* General button look */ +.share-buttons.spread { + color: initial; +} +.share-buttons.spread button.button, +.share-buttons.spread label.button { + display: inline-block; + margin: 0px 5px 10px 0; + color: #fff; + font-weight: 700; + font-size: 1em; + font-family: "Open Sans","Helvetica Neue",Arial,sans-serif; + line-height: normal; + text-align: center; + text-decoration: none; + padding: 7px 7px 7px 20px; + min-width: 120px; + box-sizing: border-box; + display: inline-block; + border: none; + border-radius: 3px; + background-position: left 5px center; + background-repeat: no-repeat; + background-size: 20px auto; + opacity: 0.9; + vertical-align: top; + line-height: 1.2em; +} + +/* Single services with their colours and logos */ +.share-buttons.spread .share-diaspora { + background-color: #404040; + background-image: url("/img/share/diaspora_white.png"); +} +.share-buttons.spread .share-diaspora:hover { + background-color: #101010 !important; +} +.share-buttons.spread .share-gnusocial { + background-color: #a22430; + background-image: url("/img/share/gnusocial_white.png"); +} +.share-buttons.spread .share-gnusocial:hover { + background-color: #850713 !important; +} +.share-buttons.spread .share-reddit { + background-color: #ff5700; + background-image: url("/img/share/reddit_white.png"); +} +.share-buttons.spread .share-reddit:hover { + background-color: #dd3500 !important; +} +.share-buttons.spread .share-flattr { + background-color: #7ea352; + background-image: url("/img/share/flattr_white.png"); + display: none !important; +} +.share-buttons.spread .share-flattr:hover { + background-color: #5a7f2e !important; +} +.share-buttons.spread .share-hnews { + background-color: #ff6600; + background-image: url("/img/share/hackernews_white.png"); + display: none !important; +} +.share-buttons.spread .share-hnews:hover { + background-color: #dd3500 !important; +} +.share-buttons.spread .share-twitter { + background-color: #55acee; + background-image: url("/img/share/twitter_white.png"); +} +.share-buttons.spread .share-twitter:hover { + background-color: #338acc !important; +} +.share-buttons.spread .share-facebook { + background-color: #3b5998; + background-image: url("/img/share/facebook_white.png"); +} +.share-buttons.spread .share-facebook:hover { + background-color: #143271 !important; +} +.share-buttons.spread .share-gplus { + background-color: #d34836; + background-image: url("/img/share/gplus_white.png"); + display: none !important; +} +.share-buttons.spread .share-gplus:hover { + background-color: #b12614 !important; +} +.share-buttons.spread .share-support { + background-color: #47a447; + background-image: url("/img/share/support_red.png"); +} +.share-buttons.spread .share-support:hover { + background-color: #2a872a !important; +} +.share-buttons.spread .share-support { + padding-left: 30px !important; +} + +/* Share pop-up behaviour hacks */ +.share-buttons.spread input[type="radio"], +.share-buttons.spread input[type="radio"] + span, +.share-buttons.spread input[type="checkbox"], +.share-buttons.spread input[type="checkbox"] + span { + display: none; +} +.share-buttons.spread input[type="radio"]:checked + span, +.share-buttons.spread input[type="checkbox"]:checked + span { + position: absolute; + margin-top: 3.5em; margin-left: -10em; + padding: .5em; + z-index: 3; + background-color: #333; + border-radius: .5em; + display: inline-block; +} +.share-buttons.spread input[type="radio"]:checked + span:before, +.share-buttons.spread input[type="checkbox"]:checked + span:before { + content: ''; + position: absolute; + top: -1em; + height: 0em; width: 0em; + border-bottom: 1em solid #333; + border-left: 1em solid transparent; + border-right: 1em solid transparent; + z-index: 3; +} +.share-buttons.spread input[type="radio"] + span > * { + vertical-align: middle; +} +.share-buttons.spread input[type="radio"] + span > button { + margin: 2.5px 0 2.5px 5px; + min-width: 4em; + padding: .25em; + font-weight: normal; + font-size: 1em; + line-height: normal; +} +.share-buttons.spread input[type="radio"] + span > label { + position: fixed; + top: 0; left: 0; right: 0; bottom: 0; + z-index: -1; + background-color: rgba(0, 0, 0, .5); +} + +/* Separate share buttons form from possibly floating content */ +form.share-buttons.spread { + clear: both; +} + +/* Hide something */ +.n { + display: none; +} + +/* Reset colour */ +.share-buttons.spread span label, .share-buttons.spread > span > button { + color: normal; +} diff --git a/static/css/creative.css b/site/static/css/creative.css similarity index 100% rename from static/css/creative.css rename to site/static/css/creative.css diff --git a/site/static/css/custom.css b/site/static/css/custom.css new file mode 100644 index 0000000..5d557b0 --- /dev/null +++ b/site/static/css/custom.css @@ -0,0 +1,252 @@ +/* LANGUAGE SECTION */ +#language { + color: #fff; + background-color: #333; + padding: 20px; +} +#language p { + margin-bottom: 5px; +} +#language ul { + padding: 0px; +} +#language li { + display: inline-block; + margin-right: 10px; +} + +/* LEGAL SECTION */ +#legal { + color: #fff; + background-color: #000; + padding: 10px; + margin: 0px; +} +#legal p { + padding: 0px; + margin: 0px; + font-size: 0.8em; +} +#legal a { + color: #83bdd6; +} +#legal a:hover { + color: #2093C4; +} + +#contact .fa { margin: 10px 0 } + +/* SIGN FORM */ +#sign form { + color: #333; + font-size: 18px; +} +#sign form label { + font-weight: 400; +} +.sign-input { + position: relative; +} +.sign-input:before { + font-family: "FontAwesome"; + font-size: 20px; + position: absolute; + left: 4px; + top: 2px; +} +.sign-input input { + background: rgba(255, 255, 255, 0.5) none repeat scroll 0 0; + border-radius: 7px; + padding: 0 0 0 30px; + width: 270px; + height: 31px; +} +.sign-input select { + background: rgba(255, 255, 255, 0.5) none repeat scroll 0 0; + border-radius: 7px; + padding: 0 0 0 30px; + width: 270px; + height: 31px; +} +.form-na:before { + content: "\f2c3"; +} +.form-em:before { + content: "\f003"; +} +.form-cn:before { + content: "\f041"; + padding-left: 4px; +} +.form-zp:before { + content: "\f08d"; + padding-left: 3px; +} +p.form-pe { + text-align: left; + max-width: 530px; /* to not let the checkboxed go far more left than the input boxes above */ + margin: 0 auto; +} +p.form-pe a { + color: inherit; + text-decoration: underline; +} +#honey { + display: none; +} + +/* SIGNATURE TABLE */ +table.signatures { + margin: 0 auto; +} +table.signatures th, table.signatures td { + border: 1px solid darkgrey; + border-collapse: collapse; + text-align: left; + padding: 2px; +} + +/* SHARE BUTTONS IN "SPREAD THE WORD" SECTION */ +.share-buttons a { + background-position: left 5px center; + background-repeat: no-repeat; + background-size: 20px auto; + border-radius: 3px; + color: #000; + display: inline-block; + margin: 2.5px 5px 2.5px 0; + min-width: 120px; + opacity: 0.9; + padding: 7px 7px 7px 30px; + text-align: center; + text-decoration: none; + font-family: "Open Sans","Helvetica Neue",Arial,sans-serif; + font-weight: 700; +} + +.share-buttons a#facebook { + background-color: #3b5998; + background-image: url("/img/share/facebook_white.png"); + color: #fff; +} +.share-buttons a#facebook:hover { + background-color: #143271 !important; +} +.share-buttons a#twitter { + background-color: #55acee; + background-image: url("/img/share/twitter_white.png"); + color: #fff; +} +.share-buttons a#twitter:hover { + background-color: #338acc !important; +} +.share-buttons a#gplus { + background-color: #d34836; + background-image: url("/img/share/gplus_white.png"); + color: #fff; + display: none; +} +.share-buttons a#gplus:hover { + background-color: #b12614 !important; +} +.share-buttons a#diaspora { + background-color: #404040; + background-image: url("/img/share/diaspora_white.png"); + color: #fff; +} +.share-buttons a#diaspora:hover { + background-color: #101010 !important; +} +.share-buttons a#flattr { + background-color: #7ea352; + background-image: url("/img/share/flattr_white.png"); + color: #fff; +} +.share-buttons a#flattr:hover { + background-color: #5a7f2e !important; +} +.share-buttons a#support { + background-color: #202d79; + background-image: url("/img/share/fsfe_white.png"); + color: #fff; +} +.share-buttons a#support:hover { + background-color: #0a1763 !important; +} +.share-buttons a#reddit { + background-color: #ff5700; + background-image: url("/img/share/reddit_white.png"); + color: #fff; +} +.share-buttons a#reddit:hover { + background-color: #dd3500 !important; +} +.share-buttons a#gnusocial { + background-color: #a22430; + background-image: url("/img/share/gnusocial_white.png"); + color: #fff; +} +.share-buttons a#gnusocial:hover { + background-color: #850713 !important; +} +.share-buttons a#hnews { + background-color: #ff6600; + background-image: url("/img/share/hackernews_white.png"); + color: #fff; +} +.share-buttons a#hnews:hover { + background-color: #dd3500 !important; +} + +/* SHARE BUTTONS ON LEFT SIDE */ +aside.sharecolumn { + display: none; + left: 0; + padding: 0.1vh 0.5vh; + position: fixed; + top: 50%; + transform: translateY(-50%); + z-index: 10; + flex-direction: column; +} +@media(min-width:768px) { + aside.sharecolumn { + display: flex; + } +} +aside.sharecolumn a { + background-position: center center; + background-repeat: no-repeat; + background-size: 2.7vh auto; + background-color: #474747; + border-radius: 3px; + color: #000; + display: inline-block; + margin: 2.5px 5px 2.5px 0; + opacity: 0.9; + text-decoration: none; + height: 4vh; + width: 4vh; +} +aside.sharecolumn a:hover { + background-color: #F05F40; +} +aside.sharecolumn a#diaspora-left { + background-image: url("/img/share/diaspora_white.png"); +} +aside.sharecolumn a#gnusocial-left { + background-image: url("/img/share/gnusocial_white.png"); +} +aside.sharecolumn a#reddit-left { + background-image: url("/img/share/reddit_white.png"); +} +aside.sharecolumn a#twitter-left { + background-image: url("/img/share/twitter_white.png"); +} +aside.sharecolumn a#gplus-left { + background-image: url("/img/share/gplus_white.png"); + display: none; +} +aside.sharecolumn a#facebook-left { + background-image: url("/img/share/facebook_white.png"); +} diff --git a/static/css/fonts.css b/site/static/css/fonts.css similarity index 100% rename from static/css/fonts.css rename to site/static/css/fonts.css diff --git a/static/css/modals.css b/site/static/css/modals.css similarity index 100% rename from static/css/modals.css rename to site/static/css/modals.css diff --git a/static/favicon.ico b/site/static/favicon.ico similarity index 100% rename from static/favicon.ico rename to site/static/favicon.ico diff --git a/static/font-awesome/css/font-awesome.min.css b/site/static/font-awesome/css/font-awesome.min.css similarity index 100% rename from static/font-awesome/css/font-awesome.min.css rename to site/static/font-awesome/css/font-awesome.min.css diff --git a/static/font-awesome/fonts/FontAwesome.otf b/site/static/font-awesome/fonts/FontAwesome.otf similarity index 100% rename from static/font-awesome/fonts/FontAwesome.otf rename to site/static/font-awesome/fonts/FontAwesome.otf diff --git a/static/font-awesome/fonts/fontawesome-webfont.eot b/site/static/font-awesome/fonts/fontawesome-webfont.eot similarity index 100% rename from static/font-awesome/fonts/fontawesome-webfont.eot rename to site/static/font-awesome/fonts/fontawesome-webfont.eot diff --git a/static/font-awesome/fonts/fontawesome-webfont.svg b/site/static/font-awesome/fonts/fontawesome-webfont.svg similarity index 100% rename from static/font-awesome/fonts/fontawesome-webfont.svg rename to site/static/font-awesome/fonts/fontawesome-webfont.svg diff --git a/static/font-awesome/fonts/fontawesome-webfont.ttf b/site/static/font-awesome/fonts/fontawesome-webfont.ttf similarity index 100% rename from static/font-awesome/fonts/fontawesome-webfont.ttf rename to site/static/font-awesome/fonts/fontawesome-webfont.ttf diff --git a/static/font-awesome/fonts/fontawesome-webfont.woff b/site/static/font-awesome/fonts/fontawesome-webfont.woff similarity index 100% rename from static/font-awesome/fonts/fontawesome-webfont.woff rename to site/static/font-awesome/fonts/fontawesome-webfont.woff diff --git a/static/font-awesome/fonts/fontawesome-webfont.woff2 b/site/static/font-awesome/fonts/fontawesome-webfont.woff2 similarity index 100% rename from static/font-awesome/fonts/fontawesome-webfont.woff2 rename to site/static/font-awesome/fonts/fontawesome-webfont.woff2 diff --git a/static/fonts/Merriweather-300/LICENSE.txt b/site/static/fonts/Merriweather-300/LICENSE.txt similarity index 100% rename from static/fonts/Merriweather-300/LICENSE.txt rename to site/static/fonts/Merriweather-300/LICENSE.txt diff --git a/static/fonts/Merriweather-300/Merriweather-300.eot b/site/static/fonts/Merriweather-300/Merriweather-300.eot similarity index 100% rename from static/fonts/Merriweather-300/Merriweather-300.eot rename to site/static/fonts/Merriweather-300/Merriweather-300.eot diff --git a/static/fonts/Merriweather-300/Merriweather-300.svg b/site/static/fonts/Merriweather-300/Merriweather-300.svg similarity index 100% rename from static/fonts/Merriweather-300/Merriweather-300.svg rename to site/static/fonts/Merriweather-300/Merriweather-300.svg diff --git a/static/fonts/Merriweather-300/Merriweather-300.ttf b/site/static/fonts/Merriweather-300/Merriweather-300.ttf similarity index 100% rename from static/fonts/Merriweather-300/Merriweather-300.ttf rename to site/static/fonts/Merriweather-300/Merriweather-300.ttf diff --git a/static/fonts/Merriweather-300/Merriweather-300.woff b/site/static/fonts/Merriweather-300/Merriweather-300.woff similarity index 100% rename from static/fonts/Merriweather-300/Merriweather-300.woff rename to site/static/fonts/Merriweather-300/Merriweather-300.woff diff --git a/static/fonts/Merriweather-300/Merriweather-300.woff2 b/site/static/fonts/Merriweather-300/Merriweather-300.woff2 similarity index 100% rename from static/fonts/Merriweather-300/Merriweather-300.woff2 rename to site/static/fonts/Merriweather-300/Merriweather-300.woff2 diff --git a/static/fonts/Merriweather-700/LICENSE.txt b/site/static/fonts/Merriweather-700/LICENSE.txt similarity index 100% rename from static/fonts/Merriweather-700/LICENSE.txt rename to site/static/fonts/Merriweather-700/LICENSE.txt diff --git a/static/fonts/Merriweather-700/Merriweather-700.eot b/site/static/fonts/Merriweather-700/Merriweather-700.eot similarity index 100% rename from static/fonts/Merriweather-700/Merriweather-700.eot rename to site/static/fonts/Merriweather-700/Merriweather-700.eot diff --git a/static/fonts/Merriweather-700/Merriweather-700.svg b/site/static/fonts/Merriweather-700/Merriweather-700.svg similarity index 100% rename from static/fonts/Merriweather-700/Merriweather-700.svg rename to site/static/fonts/Merriweather-700/Merriweather-700.svg diff --git a/static/fonts/Merriweather-700/Merriweather-700.ttf b/site/static/fonts/Merriweather-700/Merriweather-700.ttf similarity index 100% rename from static/fonts/Merriweather-700/Merriweather-700.ttf rename to site/static/fonts/Merriweather-700/Merriweather-700.ttf diff --git a/static/fonts/Merriweather-700/Merriweather-700.woff b/site/static/fonts/Merriweather-700/Merriweather-700.woff similarity index 100% rename from static/fonts/Merriweather-700/Merriweather-700.woff rename to site/static/fonts/Merriweather-700/Merriweather-700.woff diff --git a/static/fonts/Merriweather-700/Merriweather-700.woff2 b/site/static/fonts/Merriweather-700/Merriweather-700.woff2 similarity index 100% rename from static/fonts/Merriweather-700/Merriweather-700.woff2 rename to site/static/fonts/Merriweather-700/Merriweather-700.woff2 diff --git a/static/fonts/Merriweather-regular/LICENSE.txt b/site/static/fonts/Merriweather-regular/LICENSE.txt similarity index 100% rename from static/fonts/Merriweather-regular/LICENSE.txt rename to site/static/fonts/Merriweather-regular/LICENSE.txt diff --git a/static/fonts/Merriweather-regular/Merriweather-regular.eot b/site/static/fonts/Merriweather-regular/Merriweather-regular.eot similarity index 100% rename from static/fonts/Merriweather-regular/Merriweather-regular.eot rename to site/static/fonts/Merriweather-regular/Merriweather-regular.eot diff --git a/static/fonts/Merriweather-regular/Merriweather-regular.svg b/site/static/fonts/Merriweather-regular/Merriweather-regular.svg similarity index 100% rename from static/fonts/Merriweather-regular/Merriweather-regular.svg rename to site/static/fonts/Merriweather-regular/Merriweather-regular.svg diff --git a/static/fonts/Merriweather-regular/Merriweather-regular.ttf b/site/static/fonts/Merriweather-regular/Merriweather-regular.ttf similarity index 100% rename from static/fonts/Merriweather-regular/Merriweather-regular.ttf rename to site/static/fonts/Merriweather-regular/Merriweather-regular.ttf diff --git a/static/fonts/Merriweather-regular/Merriweather-regular.woff b/site/static/fonts/Merriweather-regular/Merriweather-regular.woff similarity index 100% rename from static/fonts/Merriweather-regular/Merriweather-regular.woff rename to site/static/fonts/Merriweather-regular/Merriweather-regular.woff diff --git a/static/fonts/Merriweather-regular/Merriweather-regular.woff2 b/site/static/fonts/Merriweather-regular/Merriweather-regular.woff2 similarity index 100% rename from static/fonts/Merriweather-regular/Merriweather-regular.woff2 rename to site/static/fonts/Merriweather-regular/Merriweather-regular.woff2 diff --git a/static/fonts/Open-Sans-300/LICENSE.txt b/site/static/fonts/Open-Sans-300/LICENSE.txt similarity index 100% rename from static/fonts/Open-Sans-300/LICENSE.txt rename to site/static/fonts/Open-Sans-300/LICENSE.txt diff --git a/static/fonts/Open-Sans-300/Open-Sans-300.eot b/site/static/fonts/Open-Sans-300/Open-Sans-300.eot similarity index 100% rename from static/fonts/Open-Sans-300/Open-Sans-300.eot rename to site/static/fonts/Open-Sans-300/Open-Sans-300.eot diff --git a/static/fonts/Open-Sans-300/Open-Sans-300.svg b/site/static/fonts/Open-Sans-300/Open-Sans-300.svg similarity index 100% rename from static/fonts/Open-Sans-300/Open-Sans-300.svg rename to site/static/fonts/Open-Sans-300/Open-Sans-300.svg diff --git a/static/fonts/Open-Sans-300/Open-Sans-300.ttf b/site/static/fonts/Open-Sans-300/Open-Sans-300.ttf similarity index 100% rename from static/fonts/Open-Sans-300/Open-Sans-300.ttf rename to site/static/fonts/Open-Sans-300/Open-Sans-300.ttf diff --git a/static/fonts/Open-Sans-300/Open-Sans-300.woff b/site/static/fonts/Open-Sans-300/Open-Sans-300.woff similarity index 100% rename from static/fonts/Open-Sans-300/Open-Sans-300.woff rename to site/static/fonts/Open-Sans-300/Open-Sans-300.woff diff --git a/static/fonts/Open-Sans-300/Open-Sans-300.woff2 b/site/static/fonts/Open-Sans-300/Open-Sans-300.woff2 similarity index 100% rename from static/fonts/Open-Sans-300/Open-Sans-300.woff2 rename to site/static/fonts/Open-Sans-300/Open-Sans-300.woff2 diff --git a/static/fonts/Open-Sans-600/LICENSE.txt b/site/static/fonts/Open-Sans-600/LICENSE.txt similarity index 100% rename from static/fonts/Open-Sans-600/LICENSE.txt rename to site/static/fonts/Open-Sans-600/LICENSE.txt diff --git a/static/fonts/Open-Sans-600/Open-Sans-600.eot b/site/static/fonts/Open-Sans-600/Open-Sans-600.eot similarity index 100% rename from static/fonts/Open-Sans-600/Open-Sans-600.eot rename to site/static/fonts/Open-Sans-600/Open-Sans-600.eot diff --git a/static/fonts/Open-Sans-600/Open-Sans-600.svg b/site/static/fonts/Open-Sans-600/Open-Sans-600.svg similarity index 100% rename from static/fonts/Open-Sans-600/Open-Sans-600.svg rename to site/static/fonts/Open-Sans-600/Open-Sans-600.svg diff --git a/static/fonts/Open-Sans-600/Open-Sans-600.ttf b/site/static/fonts/Open-Sans-600/Open-Sans-600.ttf similarity index 100% rename from static/fonts/Open-Sans-600/Open-Sans-600.ttf rename to site/static/fonts/Open-Sans-600/Open-Sans-600.ttf diff --git a/static/fonts/Open-Sans-600/Open-Sans-600.woff b/site/static/fonts/Open-Sans-600/Open-Sans-600.woff similarity index 100% rename from static/fonts/Open-Sans-600/Open-Sans-600.woff rename to site/static/fonts/Open-Sans-600/Open-Sans-600.woff diff --git a/static/fonts/Open-Sans-600/Open-Sans-600.woff2 b/site/static/fonts/Open-Sans-600/Open-Sans-600.woff2 similarity index 100% rename from static/fonts/Open-Sans-600/Open-Sans-600.woff2 rename to site/static/fonts/Open-Sans-600/Open-Sans-600.woff2 diff --git a/static/fonts/Open-Sans-700/LICENSE.txt b/site/static/fonts/Open-Sans-700/LICENSE.txt similarity index 100% rename from static/fonts/Open-Sans-700/LICENSE.txt rename to site/static/fonts/Open-Sans-700/LICENSE.txt diff --git a/static/fonts/Open-Sans-700/Open-Sans-700.eot b/site/static/fonts/Open-Sans-700/Open-Sans-700.eot similarity index 100% rename from static/fonts/Open-Sans-700/Open-Sans-700.eot rename to site/static/fonts/Open-Sans-700/Open-Sans-700.eot diff --git a/static/fonts/Open-Sans-700/Open-Sans-700.svg b/site/static/fonts/Open-Sans-700/Open-Sans-700.svg similarity index 100% rename from static/fonts/Open-Sans-700/Open-Sans-700.svg rename to site/static/fonts/Open-Sans-700/Open-Sans-700.svg diff --git a/static/fonts/Open-Sans-700/Open-Sans-700.ttf b/site/static/fonts/Open-Sans-700/Open-Sans-700.ttf similarity index 100% rename from static/fonts/Open-Sans-700/Open-Sans-700.ttf rename to site/static/fonts/Open-Sans-700/Open-Sans-700.ttf diff --git a/static/fonts/Open-Sans-700/Open-Sans-700.woff b/site/static/fonts/Open-Sans-700/Open-Sans-700.woff similarity index 100% rename from static/fonts/Open-Sans-700/Open-Sans-700.woff rename to site/static/fonts/Open-Sans-700/Open-Sans-700.woff diff --git a/static/fonts/Open-Sans-700/Open-Sans-700.woff2 b/site/static/fonts/Open-Sans-700/Open-Sans-700.woff2 similarity index 100% rename from static/fonts/Open-Sans-700/Open-Sans-700.woff2 rename to site/static/fonts/Open-Sans-700/Open-Sans-700.woff2 diff --git a/static/fonts/Open-Sans-regular/LICENSE.txt b/site/static/fonts/Open-Sans-regular/LICENSE.txt similarity index 100% rename from static/fonts/Open-Sans-regular/LICENSE.txt rename to site/static/fonts/Open-Sans-regular/LICENSE.txt diff --git a/static/fonts/Open-Sans-regular/Open-Sans-regular.eot b/site/static/fonts/Open-Sans-regular/Open-Sans-regular.eot similarity index 100% rename from static/fonts/Open-Sans-regular/Open-Sans-regular.eot rename to site/static/fonts/Open-Sans-regular/Open-Sans-regular.eot diff --git a/static/fonts/Open-Sans-regular/Open-Sans-regular.svg b/site/static/fonts/Open-Sans-regular/Open-Sans-regular.svg similarity index 100% rename from static/fonts/Open-Sans-regular/Open-Sans-regular.svg rename to site/static/fonts/Open-Sans-regular/Open-Sans-regular.svg diff --git a/static/fonts/Open-Sans-regular/Open-Sans-regular.ttf b/site/static/fonts/Open-Sans-regular/Open-Sans-regular.ttf similarity index 100% rename from static/fonts/Open-Sans-regular/Open-Sans-regular.ttf rename to site/static/fonts/Open-Sans-regular/Open-Sans-regular.ttf diff --git a/static/fonts/Open-Sans-regular/Open-Sans-regular.woff b/site/static/fonts/Open-Sans-regular/Open-Sans-regular.woff similarity index 100% rename from static/fonts/Open-Sans-regular/Open-Sans-regular.woff rename to site/static/fonts/Open-Sans-regular/Open-Sans-regular.woff diff --git a/static/fonts/Open-Sans-regular/Open-Sans-regular.woff2 b/site/static/fonts/Open-Sans-regular/Open-Sans-regular.woff2 similarity index 100% rename from static/fonts/Open-Sans-regular/Open-Sans-regular.woff2 rename to site/static/fonts/Open-Sans-regular/Open-Sans-regular.woff2 diff --git a/static/fonts/glyphicons-halflings-regular.eot b/site/static/fonts/glyphicons-halflings-regular.eot similarity index 100% rename from static/fonts/glyphicons-halflings-regular.eot rename to site/static/fonts/glyphicons-halflings-regular.eot diff --git a/static/fonts/glyphicons-halflings-regular.svg b/site/static/fonts/glyphicons-halflings-regular.svg similarity index 100% rename from static/fonts/glyphicons-halflings-regular.svg rename to site/static/fonts/glyphicons-halflings-regular.svg diff --git a/static/fonts/glyphicons-halflings-regular.ttf b/site/static/fonts/glyphicons-halflings-regular.ttf similarity index 100% rename from static/fonts/glyphicons-halflings-regular.ttf rename to site/static/fonts/glyphicons-halflings-regular.ttf diff --git a/static/fonts/glyphicons-halflings-regular.woff b/site/static/fonts/glyphicons-halflings-regular.woff similarity index 100% rename from static/fonts/glyphicons-halflings-regular.woff rename to site/static/fonts/glyphicons-halflings-regular.woff diff --git a/static/fonts/glyphicons-halflings-regular.woff2 b/site/static/fonts/glyphicons-halflings-regular.woff2 similarity index 100% rename from static/fonts/glyphicons-halflings-regular.woff2 rename to site/static/fonts/glyphicons-halflings-regular.woff2 diff --git a/static/img/header.jpg b/site/static/img/header.jpg similarity index 100% rename from static/img/header.jpg rename to site/static/img/header.jpg diff --git a/static/img/marker.png b/site/static/img/marker.png similarity index 100% rename from static/img/marker.png rename to site/static/img/marker.png diff --git a/static/img/resources/1.jpg b/site/static/img/resources/1.jpg similarity index 100% rename from static/img/resources/1.jpg rename to site/static/img/resources/1.jpg diff --git a/static/img/resources/2.jpg b/site/static/img/resources/2.jpg similarity index 100% rename from static/img/resources/2.jpg rename to site/static/img/resources/2.jpg diff --git a/static/img/resources/3.jpg b/site/static/img/resources/3.jpg similarity index 100% rename from static/img/resources/3.jpg rename to site/static/img/resources/3.jpg diff --git a/static/img/resources/4.jpg b/site/static/img/resources/4.jpg similarity index 100% rename from static/img/resources/4.jpg rename to site/static/img/resources/4.jpg diff --git a/static/img/resources/5.jpg b/site/static/img/resources/5.jpg similarity index 100% rename from static/img/resources/5.jpg rename to site/static/img/resources/5.jpg diff --git a/static/img/resources/6.jpg b/site/static/img/resources/6.jpg similarity index 100% rename from static/img/resources/6.jpg rename to site/static/img/resources/6.jpg diff --git a/static/img/share/diaspora_white.png b/site/static/img/share/diaspora_white.png similarity index 100% rename from static/img/share/diaspora_white.png rename to site/static/img/share/diaspora_white.png diff --git a/static/img/share/facebook_white.png b/site/static/img/share/facebook_white.png similarity index 100% rename from static/img/share/facebook_white.png rename to site/static/img/share/facebook_white.png diff --git a/static/img/share/gnusocial_white.png b/site/static/img/share/gnusocial_white.png similarity index 100% rename from static/img/share/gnusocial_white.png rename to site/static/img/share/gnusocial_white.png diff --git a/static/img/share/gplus_white.png b/site/static/img/share/gplus_white.png similarity index 100% rename from static/img/share/gplus_white.png rename to site/static/img/share/gplus_white.png diff --git a/static/img/share/hackernews_white.png b/site/static/img/share/hackernews_white.png similarity index 100% rename from static/img/share/hackernews_white.png rename to site/static/img/share/hackernews_white.png diff --git a/static/img/share/reddit_white.png b/site/static/img/share/reddit_white.png similarity index 100% rename from static/img/share/reddit_white.png rename to site/static/img/share/reddit_white.png diff --git a/site/static/img/share/support_red.png b/site/static/img/share/support_red.png new file mode 100644 index 0000000..5372e1b Binary files /dev/null and b/site/static/img/share/support_red.png differ diff --git a/static/img/share/twitter_white.png b/site/static/img/share/twitter_white.png similarity index 100% rename from static/img/share/twitter_white.png rename to site/static/img/share/twitter_white.png diff --git a/static/js/bootstrap.js b/site/static/js/bootstrap.js similarity index 100% rename from static/js/bootstrap.js rename to site/static/js/bootstrap.js diff --git a/static/js/bootstrap.min.js b/site/static/js/bootstrap.min.js similarity index 100% rename from static/js/bootstrap.min.js rename to site/static/js/bootstrap.min.js diff --git a/static/js/cbpAnimatedHeader.js b/site/static/js/cbpAnimatedHeader.js similarity index 100% rename from static/js/cbpAnimatedHeader.js rename to site/static/js/cbpAnimatedHeader.js diff --git a/static/js/classie.js b/site/static/js/classie.js similarity index 100% rename from static/js/classie.js rename to site/static/js/classie.js diff --git a/static/js/creative.js b/site/static/js/creative.js similarity index 100% rename from static/js/creative.js rename to site/static/js/creative.js diff --git a/static/js/gmaps.init.js b/site/static/js/gmaps.init.js similarity index 100% rename from static/js/gmaps.init.js rename to site/static/js/gmaps.init.js diff --git a/static/js/hpneo.gmaps.js b/site/static/js/hpneo.gmaps.js similarity index 100% rename from static/js/hpneo.gmaps.js rename to site/static/js/hpneo.gmaps.js diff --git a/static/js/jquery.easing.min.js b/site/static/js/jquery.easing.min.js similarity index 100% rename from static/js/jquery.easing.min.js rename to site/static/js/jquery.easing.min.js diff --git a/static/js/jquery.fittext.js b/site/static/js/jquery.fittext.js similarity index 100% rename from static/js/jquery.fittext.js rename to site/static/js/jquery.fittext.js diff --git a/static/js/jquery.js b/site/static/js/jquery.js similarity index 100% rename from static/js/jquery.js rename to site/static/js/jquery.js diff --git a/static/js/wow.min.js b/site/static/js/wow.min.js similarity index 100% rename from static/js/wow.min.js rename to site/static/js/wow.min.js diff --git a/themes/hugo-creative-theme/LICENSE b/site/themes/hugo-creative-theme/LICENSE similarity index 100% rename from themes/hugo-creative-theme/LICENSE rename to site/themes/hugo-creative-theme/LICENSE diff --git a/themes/hugo-creative-theme/README.md b/site/themes/hugo-creative-theme/README.md similarity index 100% rename from themes/hugo-creative-theme/README.md rename to site/themes/hugo-creative-theme/README.md diff --git a/themes/hugo-creative-theme/theme.toml b/site/themes/hugo-creative-theme/theme.toml similarity index 100% rename from themes/hugo-creative-theme/theme.toml rename to site/themes/hugo-creative-theme/theme.toml diff --git a/static/.htaccess b/static/.htaccess deleted file mode 100644 index de377bf..0000000 --- a/static/.htaccess +++ /dev/null @@ -1 +0,0 @@ -ErrorDocument 404 /404.html