From 59cd161c479a83f51159b77300da1923c2a6cc36 Mon Sep 17 00:00:00 2001 From: Kumi Date: Sat, 25 May 2024 18:06:25 +0200 Subject: [PATCH 01/28] feat(membership page): redesign with enhanced UI and added crypto donations Redesigned the membership and donations page to improve user engagement and visual appeal. The update introduces a more organized layout with separate sections for membership details, bank, and new cryptocurrency donation options. Each section is now contained within card layouts, offering a cleaner and more accessible interface. Additionally, a new transparency report section has been added to foster trust through financial openness. This change aims to encourage more memberships and donations by making information clearer and adding modern donation options like Bitcoin, Monero, and Ethereum. --- templates/membership.html | 194 ++++++++++++++++++++++++++++---------- 1 file changed, 145 insertions(+), 49 deletions(-) diff --git a/templates/membership.html b/templates/membership.html index 74a7c0f..4724b42 100644 --- a/templates/membership.html +++ b/templates/membership.html @@ -1,56 +1,152 @@ -{% extends "base.html" %} -{% block title %}Membership / Donations{% endblock %} +{% extends "base.html" %} {% block title %}Membership / Donations{% endblock %} {% block content %} -
-

Membership/Donations

-

- private.coffee is a non-profit organization dedicated to supporting privacy - and digital sovereignty. We fund our server infrastructure through donations - and membership fees. -

-

- Membership fees help cover the costs of server infrastructure, domain names, - and other operating expenses. Likewise, all donations contribute towards - these ongoing costs. -

-

- Supporting the private.coffee project is possible by joining our association - or by making a direct donation. -

-
-

Donations:

-

- Bank private.coffee - Verein zur Förderung von Privatsphäre und digitaler - Souveränität -

-

IBAN: AT35 2081 5000 4554 0812

-

BIC: STSPAT2GXXX

-

- For donation listing preferences, please specify in the note to payee. +

+
+

Membership/Donations

+

+ Private.coffee is a non-profit organization dedicated to supporting + privacy and digital sovereignty. We fund our activities and running + infrastructure costs through membership fees. Donations allow us to expand + our services and reach more people.

-
-

Central Register of Associations (ZVR) Number: 1758485319

-

- Our statutes can be found in our Git - in German (legally binding) - and - in English. -

-

- Interested in joining the association? Reach out via - email or - Matrix - for more information. -

+
+
+
+
+
Membership
+

+ Membership fees help cover the costs of our activities, server + infrastructure, domain names, and other running operating expenses. + Donations allow us to pay for one-time expenses like software +

+

+ Supporting the Private.coffee project is possible by joining our + association or by making a direct donation. +

+ Join Us +
+
+
+ +
+
+
+
Bank Donations
+

+ Private.coffee - Verein zur Förderung von Privatsphäre und digitaler + Souveränität +

+

IBAN: AT35 2081 5000 4554 0812

+

BIC: STSPAT2GXXX

+
+
+
+ +
+
+
+
Crypto Donations
+

+ While our expenses are in fiat currency, we accept donations in + cryptocurrencies, too. +

+

+ Bitcoin (BTC): ___________________________________________ +

+

+ Monero (XMR): ___________________________________________ +

+

+ Ethereum (ETH): ___________________________________________ +

+
+
+
+
+ +
+
+
Transparency Report
+

+ We believe in transparency and accountability. Below is a summary of our + income and expenses for the last month. +

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
CategoryAmount (€)
Membership Fees€390
Donations€0
Crypto DonationsBTC 0 / XMR 0 / ETH 0
Server Costs€2,800
Domain Names€400
Operating Expenses€1,200
Total Income€390
Total Expenses€4,400
Account Balance (end of month)€-5,300 / 0 BTC / 0 XMR / 0 BTC
+
+
+
+ +
+
+
Central Register of Associations (ZVR) Number: 1758485319
+

+ Our statutes can be found in our Git + in German (legally binding) + and + in English. +

+

+ Interested in joining the association? Reach out via + email or + Matrix + for more information. +

+
{% endblock %} From 78cfa76a6deab21bcbdd0344450a50c9cb833322 Mon Sep 17 00:00:00 2001 From: Kumi Date: Sat, 25 May 2024 21:33:30 +0200 Subject: [PATCH 02/28] feat(membership report): enhance crypto visibility This update introduces additional columns in the membership financial report to separately list cryptocurrency incomes such as Bitcoin (BTC), Ethereum (ETH), and Monero (XMR). A new CSS class, `currency-col`, ensures these columns maintain a consistent and readable width without wrapping, improving the overall clarity and usability of the report. This change addresses a growing need to track and report digital currency transactions distinctly from traditional currency, reflecting the organization's evolving financial landscape and responding to the increasing relevance of cryptocurrencies in its operations. --- assets/css/base.css | 5 ++++ templates/membership.html | 56 ++++++++++++++++++++++++++++++--------- 2 files changed, 48 insertions(+), 13 deletions(-) diff --git a/assets/css/base.css b/assets/css/base.css index 94aa844..0238be0 100644 --- a/assets/css/base.css +++ b/assets/css/base.css @@ -85,6 +85,11 @@ h5 { margin-top: 10px; } +.currency-col { + width: 150px; + white-space: nowrap; +} + /* Responsive Styles */ @media (max-width: 768px) { .navbar .container { diff --git a/templates/membership.html b/templates/membership.html index 4724b42..e77fc66 100644 --- a/templates/membership.html +++ b/templates/membership.html @@ -74,50 +74,80 @@ income and expenses for the last month.

+ - + + + + - + + + + - - - - - + + + + - + + + + - + + + + - + + + + + + + + + + + - + + + + + + + - - + + + +
CategoryAmount (€)Euros (€)Bitcoin (BTC)Ethereum (ETH)Monero (XMR)
Membership Fees€390+ €5,000
Donations€0
Crypto DonationsBTC 0 / XMR 0 / ETH 0+ €3,200+ 500 BTC+ 700 ETH+ 300 XMR
Server Costs€2,800- €2,800
Domain Names€400- €400
Operating Expenses€1,200- €1,200
Conversions
Total Income€390€9,700500 BTC700 ETH300 XMR
Total Expenses €4,400---
Account Balance (end of month)€-5,300 / 0 BTC / 0 XMR / 0 BTC
€5,300500 BTC700 ETH300 XMR
From 93a42c98dd7eccfc83bc6ebf609907043a3762ba Mon Sep 17 00:00:00 2001 From: Kumi Date: Sat, 25 May 2024 21:38:05 +0200 Subject: [PATCH 03/28] feat: add Monero address to membership page Updated the membership page to include a specific Monero (XMR) cryptocurrency address. This enhancement allows members to make contributions using Monero, providing greater flexibility and privacy for donations. --- templates/membership.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/templates/membership.html b/templates/membership.html index e77fc66..fd218d7 100644 --- a/templates/membership.html +++ b/templates/membership.html @@ -56,7 +56,7 @@ Bitcoin (BTC): ___________________________________________

- Monero (XMR): ___________________________________________ + Monero (XMR): 487Ny4iBk2pKGJwjyYrumFD8xFmrS6jCSXNA8e5EvVJ49GyS54CRDVz514MBnXgNT1EioKYiagHs33sLzUAFj8i3Pwg3AMS

Ethereum (ETH): ___________________________________________ From 1f938f008e65e3ddbd7b617cc075967210ff6065 Mon Sep 17 00:00:00 2001 From: Kumi Date: Sun, 26 May 2024 16:21:55 +0200 Subject: [PATCH 04/28] feat(membership): update crypto donation options MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Updated the cryptocurrency donation options in the membership page. Bitcoin (BTC) and Ethereum (ETH) addresses are now marked as "Coming soon™", reflecting their upcoming availability for donations. Additionally, improved the display of the Monero (XMR) address for better clarity by enclosing it in code tags. Introduced OpenAlias support with an easy-to-remember alias for donations, enhancing user experience and donation process simplicity. Also, refined the financial table by fixing a markup error to ensure proper display. This change aims to keep our members informed about the donation options available and to streamline the donation process, making it more accessible and user-friendly. The introduction of an Open-like Alias further simplifies the donation process for users who prefer using human-readable addresses over traditional cryptocurrency addresses. The markup adjustment in the financial table ensures consistency and readability across the website. --- templates/membership.html | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/templates/membership.html b/templates/membership.html index fd218d7..7072092 100644 --- a/templates/membership.html +++ b/templates/membership.html @@ -53,13 +53,18 @@ cryptocurrencies, too.

- Bitcoin (BTC): ___________________________________________ + Bitcoin (BTC): Coming soon™

- Monero (XMR): 487Ny4iBk2pKGJwjyYrumFD8xFmrS6jCSXNA8e5EvVJ49GyS54CRDVz514MBnXgNT1EioKYiagHs33sLzUAFj8i3Pwg3AMS + Monero (XMR): + 487Ny4iBk2pKGJwjyYrumFD8xFmrS6jCSXNA8e5EvVJ49GyS54CRDVz514MBnXgNT1EioKYiagHs33sLzUAFj8i3Pwg3AMS

- Ethereum (ETH): ___________________________________________ + Ethereum (ETH): Coming soon™ +

+

+ If your client supports OpenAlias, you can just send your donation + to private.coffee.

@@ -74,7 +79,6 @@ income and expenses for the last month.

- @@ -148,6 +152,7 @@ +
500 BTC 700 ETH 300 XMR
From 61118bf5b9fe586839febaba4163e0088628190f Mon Sep 17 00:00:00 2001 From: Kumi Date: Sun, 26 May 2024 16:28:27 +0200 Subject: [PATCH 05/28] feat(membership donations): Update donation details Updated the donation details in the membership section to be more inviting and informative for non-members. This includes a clearer call to action for bank donations and a minor clarification in the cryptocurrency donations section. The account holder's name is now highlighted for better visibility, and formatting was adjusted for improved readability. The update aims to encourage donations by making the process more transparent and emphasizing how contributions directly support our activities and service expansion. --- templates/membership.html | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/templates/membership.html b/templates/membership.html index 7072092..d6715fa 100644 --- a/templates/membership.html +++ b/templates/membership.html @@ -35,8 +35,13 @@
Bank Donations

- Private.coffee - Verein zur Förderung von Privatsphäre und digitaler - Souveränität + Even if you're not a member, you can still support us by making a + direct donation to our bank account. Your donation will be used to + fund our activities and expand our services. +

+

+ Account holder: Private.coffee - Verein zur Förderung von + Privatsphäre und digitaler Souveränität

IBAN: AT35 2081 5000 4554 0812

BIC: STSPAT2GXXX

@@ -49,15 +54,17 @@
Crypto Donations

- While our expenses are in fiat currency, we accept donations in - cryptocurrencies, too. + While our expenses are generally in fiat currency, we accept + donations in cryptocurrencies, too.

Bitcoin (BTC): Coming soon™

Monero (XMR): - 487Ny4iBk2pKGJwjyYrumFD8xFmrS6jCSXNA8e5EvVJ49GyS54CRDVz514MBnXgNT1EioKYiagHs33sLzUAFj8i3Pwg3AMS + 487Ny4iBk2pKGJwjyYrumFD8xFmrS6jCSXNA8e5EvVJ49GyS54CRDVz514MBnXgNT1EioKYiagHs33sLzUAFj8i3Pwg3AMS

Ethereum (ETH): Coming soon™ From 78b15b1b6d1c80b50d191ec6a92e38b7ef0d3800 Mon Sep 17 00:00:00 2001 From: Kumi Date: Sun, 26 May 2024 17:01:41 +0200 Subject: [PATCH 06/28] feat: Enhance welcome message with room links Updated the welcome section in `simple.html` to encourage newly registered users to join specific Private.coffee rooms. Added direct links to key community spaces including general support and off-topic rooms, promoting engagement and providing immediate access to support and discussions. This change aims to increase user interaction and support community growth by making it easier for users to find and join relevant conversations right from the start. --- templates/simple.html | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/templates/simple.html b/templates/simple.html index d319dac..d61c054 100644 --- a/templates/simple.html +++ b/templates/simple.html @@ -8,7 +8,15 @@

Welcome to Private.coffee

-

Thanks for using our Element instance. Private.coffee is a collection of services that respect your privacy, here are some others:

+

Thanks for using our Element instance! Now, why don't you join our rooms?

+ +
+

Private.coffee is a collection of services that respect your privacy, here are some others:

    {% for service in services.services %} {% if not service.exclude_from_simple %} From 72d7b5346e6dced1df048c39d72bf25a0826132d Mon Sep 17 00:00:00 2001 From: Kumi Date: Sun, 26 May 2024 17:39:37 +0200 Subject: [PATCH 07/28] refactor: Clarify Private.coffee's mission in web texts Updated descriptions in 'base.html' and 'simple.html' to better reflect Private.coffee's identity as a privacy-focused non-profit association. The new descriptions emphasize the organization's commitment to privacy and digital sovereignty, aligning more closely with its objectives and activities. This change ensures that website visitors receive a clearer understanding of Private.coffee's mission right from their first interaction, potentially improving engagement and support for its privacy advocacy efforts. --- templates/base.html | 4 ++-- templates/simple.html | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/templates/base.html b/templates/base.html index 34dc793..d759727 100644 --- a/templates/base.html +++ b/templates/base.html @@ -92,8 +92,8 @@ >Private.coffee

- Private.coffee is a collection of services that respect your - privacy. + Private.coffee is a privacy-focused non-profit association, dedicated + to supporting privacy and digital sovereignty.

diff --git a/templates/simple.html b/templates/simple.html index d61c054..2bc0eb4 100644 --- a/templates/simple.html +++ b/templates/simple.html @@ -16,7 +16,7 @@
  • #coffeebreak:private.coffee - ☕ Coffee Break ☕ - our off-topic room

  • -

    Private.coffee is a collection of services that respect your privacy, here are some others:

    +

    Private.coffee operates a collection of services that respect your privacy, here are some others:

      {% for service in services.services %} {% if not service.exclude_from_simple %} From 7902aec1b16bfb766c2b458deee40668b2463916 Mon Sep 17 00:00:00 2001 From: Kumi Date: Sun, 26 May 2024 17:40:03 +0200 Subject: [PATCH 08/28] feat: update membership and financial transparency details Updated the Bitcoin address for donations, enhancing the convenience for members to contribute in cryptocurrencies. Improved the clarity and precision of the financial transparency section by specifying the report for May 2024, adjusting currency and cryptocurrency figures to reflect actual transactions, and introducing account balance tracking at the start and end of the month. Adjusted table styling in the CSS to ensure financial data is presented clearly, with currency columns widened and text aligned for better readability. These changes aim to increase transparency, trust, and ease of contribution among members, supporting the organization's commitment to accountability and member involvement in its financial health. --- assets/css/base.css | 6 ++++- templates/membership.html | 54 ++++++++++++++++++++++----------------- 2 files changed, 36 insertions(+), 24 deletions(-) diff --git a/assets/css/base.css b/assets/css/base.css index 0238be0..4c4d4a0 100644 --- a/assets/css/base.css +++ b/assets/css/base.css @@ -86,10 +86,14 @@ h5 { } .currency-col { - width: 150px; + width: 175px; white-space: nowrap; } +.table-transparency td:not(:first-child) { + text-align: right; +} + /* Responsive Styles */ @media (max-width: 768px) { .navbar .container { diff --git a/templates/membership.html b/templates/membership.html index d6715fa..b194e9d 100644 --- a/templates/membership.html +++ b/templates/membership.html @@ -58,7 +58,8 @@ donations in cryptocurrencies, too.

      - Bitcoin (BTC): Coming soon™ + Bitcoin (BTC): + bc1qnu7r5sed4afacfpgx5za8hsyhaj4rs45dpm26k

      Monero (XMR): @@ -80,13 +81,13 @@

      -
      Transparency Report
      +
      Transparency Report for May 2024

      We believe in transparency and accountability. Below is a summary of our income and expenses for the last month.

      - +
      @@ -97,37 +98,44 @@ + + + + + + + - + - - - - + + + + - + - + - + @@ -141,24 +149,24 @@ - - - - + + + + - - - - + + + + - - - - + + + +
      Category
      Account Balance (start of month)€112.330 BTC0 ETH0 XMR
      Membership Fees+ €5,000+ €365.00
      Donations+ €3,200+ 500 BTC+ 700 ETH+ 300 XMR+ 0.00043400 BTC+ 0.447661805527 XMR
      Server Costs- €2,800- €424.65
      Domain Names- €400
      Operating Expenses- €1,200
      Total Income€9,700500 BTC700 ETH300 XMR+ €365.00+ 0.00043400 BTC+ 0 ETH+ 0.447661805527 XMR
      Total Expenses€4,400---- €424.65
      Account Balance (end of month)€5,300500 BTC700 ETH300 XMR+ €52.68+ 0.000434 BTC0 ETH+ 0.447661805527 XMR
      From cb51038db43035329f1786d7dac89388a888065b Mon Sep 17 00:00:00 2001 From: Kumi Date: Sun, 26 May 2024 17:41:15 +0200 Subject: [PATCH 09/28] feat: Add positive sign to account balance in membership page Added a positive sign to the account balance display at the start of the month in the membership page. This minor but critical change improves clarity for users by explicitly indicating that the balance is a positive amount, enhancing their understanding of their financial status at a glance. This adjustment aligns with user feedback requesting clearer financial representations, thereby improving user experience. --- templates/membership.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/templates/membership.html b/templates/membership.html index b194e9d..70c48de 100644 --- a/templates/membership.html +++ b/templates/membership.html @@ -100,7 +100,7 @@ Account Balance (start of month) - €112.33 + + €112.33 0 BTC 0 ETH 0 XMR From f92c9294e74e1c382adcb6b9e0a914a68eae640a Mon Sep 17 00:00:00 2001 From: Kumi Date: Sun, 26 May 2024 17:41:51 +0200 Subject: [PATCH 10/28] fix: remove plus sign from 0 ETH in membership display Corrected the display of Ethereum (ETH) income in the membership summary table to not show a misleading "+" sign before a zero value. This change ensures consistency and clarity in financial reporting across different cryptocurrencies, eliminating any confusion for users analyzing their income streams. --- templates/membership.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/templates/membership.html b/templates/membership.html index 70c48de..bc21127 100644 --- a/templates/membership.html +++ b/templates/membership.html @@ -151,7 +151,7 @@ Total Income + €365.00 + 0.00043400 BTC - + 0 ETH + 0 ETH + 0.447661805527 XMR From e73d46bdb81c5e1b4907afa19daa0cfa09ac8693 Mon Sep 17 00:00:00 2001 From: Kumi Date: Sun, 26 May 2024 17:43:33 +0200 Subject: [PATCH 11/28] fix: standardize BTC balance display in membership template Ensure consistency in the display of Bitcoin (BTC) balances by adjusting the number of decimal places to eight, aligning with standard cryptocurrency precision norms. This update promotes readability and uniformity across financial representations in the membership section. --- templates/membership.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/templates/membership.html b/templates/membership.html index bc21127..f01664a 100644 --- a/templates/membership.html +++ b/templates/membership.html @@ -164,7 +164,7 @@ Account Balance (end of month) + €52.68 - + 0.000434 BTC + + 0.00043400 BTC 0 ETH + 0.447661805527 XMR From 29066db5f69acfee362e8229533c3ddf24bab06f Mon Sep 17 00:00:00 2001 From: Kumi Date: Mon, 27 May 2024 13:31:57 +0200 Subject: [PATCH 12/28] feat(legal-page): Remove primary gradient from section Removed the bg-primary-gradient class from a section in the legal.html template to align with the updated design guidelines aiming for a cleaner, more professional look. This change contributes to the website's overall visual cohesion and improves readability. --- templates/legal.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/templates/legal.html b/templates/legal.html index f661545..8cab6cc 100644 --- a/templates/legal.html +++ b/templates/legal.html @@ -1,7 +1,7 @@ {% extends "base.html" %} {% block title %}Legal Notice{% endblock %} {% block content %} -
      +
      From 0c8f10b732edc630ecebca08453de6ddef93aa17 Mon Sep 17 00:00:00 2001 From: Kumi Date: Mon, 27 May 2024 13:32:14 +0200 Subject: [PATCH 13/28] feat(legal): streamline header for clarity Removed the "Legal Notice" header from the legal.html template to enhance layout clarity and focus user attention on the essential legal information. This change simplifies the page structure, making it easier for users to navigate and understand the legal notices of private.coffee immediately upon landing on the page. --- templates/legal.html | 1 - 1 file changed, 1 deletion(-) diff --git a/templates/legal.html b/templates/legal.html index 8cab6cc..2f9ccfb 100644 --- a/templates/legal.html +++ b/templates/legal.html @@ -20,7 +20,6 @@
      -

      Legal Notice

      This is a legal notice for the website private.coffee

      The website private.coffee is run by the following entity:

      From 22ae56dad10c299bb03093467ab5ff574eb8ddbf Mon Sep 17 00:00:00 2001 From: Kumi Date: Mon, 27 May 2024 17:25:21 +0200 Subject: [PATCH 14/28] refactor(privacy-policy): streamline content layout and styling Overhauled the privacy.html template and base.css to enhance readability and user experience. The privacy policy content has been divided into distinct sections with added padding and a solid border at the bottom for better visual separation. This restructuring aims to make the information more accessible and easier for users to navigate, aligning with best practices for web content accessibility and design. Additionally, updated the heading style in privacy.html to feature a centered, more prominent design, reflecting a modern aesthetic approach. No changes to the text of the policy were made. --- assets/css/base.css | 5 + templates/privacy.html | 346 ++++++++++++++++++++++------------------- 2 files changed, 188 insertions(+), 163 deletions(-) diff --git a/assets/css/base.css b/assets/css/base.css index 4c4d4a0..6916ad1 100644 --- a/assets/css/base.css +++ b/assets/css/base.css @@ -94,6 +94,11 @@ h5 { text-align: right; } +.section { + padding: 20px 0; + border-bottom: 1px solid #e0e0e0; +} + /* Responsive Styles */ @media (max-width: 768px) { .navbar .container { diff --git a/templates/privacy.html b/templates/privacy.html index 6fa8c20..7195d9f 100644 --- a/templates/privacy.html +++ b/templates/privacy.html @@ -1,167 +1,187 @@ -{% extends "base.html" %} -{% block title %}Privacy Policy{% endblock %} +{% extends "base.html" %} {% block title %}Privacy Policy{% endblock %} {% block content %}
      -

      Privacy Policy

      -

      - This is the privacy policy for the website private.coffee. It describes how - we collect and use your personal data. -

      -

      - This privacy policy is effective as of 2024-04-26. It may be updated from - time to time, so please check back regularly. -

      -

      - If you have any questions about this privacy policy, please contact us at - support@private.coffee. -

      -

      Who are we?

      -

      The data controller for private.coffee is:

      -
      - Private.coffee ‐ Verein zur Förderung von Privatsphäre und digitaler - Souveränität
      - c/o Klaus-Uwe Mitterer
      - Gartengasse 22/7/3
      - 8010 Graz
      - Austria
      -
      -

      Central Register of Associations (ZVR) Number: 1758485319

      -

      - Email: - support@private.coffee -

      -

      What data do we collect?

      -

      We collect the following data from you:

      -
        -
      • - Your IP address, which is automatically collected by our web server for - some of our services. -
      • -
      • - Any data you provide to us, such as your email address, when you create an - account on one of our services. -
      • -
      • - Usage data that is collected automatically by our services, such as the - time you last logged in, or the number of times you have logged in, as - well as any content you create using our services. -
      • -
      • - Any information, including personal data and payment information, that you - provide to us when you make a donation or join our association. -
      • -
      -

      How do we use your data?

      -

      - We use your data to provide you with the services you requested. This - includes: -

      -
        -
      • Communication between our web server and your browser
      • -
      • Storing your preferences or your created content
      • -
      • Detection of abuse or resource exhaustion on our servers
      • -
      • Providing support to you
      • -
      • Processing donations and memberships
      • -
      -

      All of those are what is called "legitimate interests" in legal speak.

      -

      - We do not use your data for any other purposes, including marketing, - advertising, or tracking, we do not share your data with third parties - (unless required by law), we do not use your data to create profiles or make - automated decisions, and we do not cross-reference your data between - different services or any other sources. -

      -

      Where do we store your data?

      -

      - We store your data on our web servers, which are located in Austria. We also - use servers in Germany, but those are not public-facing and do not store or - process any personal data. -

      -

      How long do we store your data?

      -
        -
      • - IP addresses collected by our web server are stored for up to 48 hours. - After that, the log files that contain them are deleted automatically. -
      • -
      • - Data associated with an account you have on one of our services is stored - for as long as you have an account on that service. If you delete your - account, your data will be deleted automatically. The service will have a - dedicated privacy policy, please consult that if you have any specific - questions. -
      • -
      • - If you send a support request to us, we will store your email address and - any other data you provide to us for up to 30 days in our support system. - After that, the data will be deleted automatically. -
      • -
      • - Data associated with a donation is stored for as long as required by law, - which is currently 7 years in Austria. After that, the data will be - deleted. -
      • -
      • - Data associated with a membership is stored for as long as you are a - member of our association. If you leave the association, your data will be - deleted automatically. This does not apply to data that is required by law - to be stored for a longer period of time, such as financial records, which - are stored for 7 years regardless of your membership status. -
      • -
      -

      What are your data protection rights?

      -

      You have the following data protection rights:

      -
        -
      • You have the right to request access to your personal data.
      • -
      • You have the right to request correction of your personal data.
      • -
      • You have the right to request erasure of your personal data.
      • -
      • - You have the right to request restriction of processing of your personal - data. -
      • -
      • You have the right to object to processing of your personal data.
      • -
      • You have the right to request transfer of your personal data.
      • -
      -

      If you make a request, we have one month to respond to you.

      -

      - If you would like to exercise any of these rights, please contact us at - support@private.coffee. -

      -

      - Your privacy is important to us - after all, that's why we're all here - and - we will do our best to respond to your request as soon as possible. Please - note that we may need to verify your identity before we can respond to your - request - we will not share your data with anyone else. -

      -

      - If you are not satisfied with our response, or believe that we are - processing your data in a way that is not compliant with the law, you have - the right to lodge a complaint with the supervisory authority in your - country. In Austria, this is the Austrian Data Protection Authority (https://www.dsb.gv.at/). However, we like to think of ourselves as nice people and will try to - help you out directly, and are always open to suggestions for improvement, - so please do get in touch with us if you have any questions or concerns. -

      -

      What are cookies?

      -

      - Cookies are small text files that are placed on your computer or mobile - device when you visit a website. They are widely used to make websites work, - or work more efficiently, as well as to provide information to the owners of - the site. Cookies are stored on your device, and can be accessed by the - website that created them. They are not harmful to your device, and do not - directly contain any personal data, but are used by our services to identify - you between multiple visits. -

      -

      - Cookies are used on some of our services to provide you with a better - experience. For example, we use cookies to remember your preferences and - settings - for example, to allow you to login to our services - and to - provide you with a better experience when browsing our services. We do not - use cookies to track your activity, either on our services or on other - websites. In legal/technical terms, we exclusively use "strictly necessary" - first-party cookies, which is also why you don't see any cookie banners on - our website. -

      +
      +

      Privacy Policy

      +

      + This is the privacy policy for the website private.coffee. It describes + how we collect and use your personal data. +

      +
      +
      +

      + This privacy policy is effective as of 2024-04-26. It may be updated from + time to time, so please check back regularly. +

      +

      + If you have any questions about this privacy policy, please contact us at + support@private.coffee. +

      +
      +
      +

      Who are we?

      +

      The data controller for private.coffee is:

      +
      + Private.coffee ‐ Verein zur Förderung von Privatsphäre und digitaler + Souveränität
      + c/o Klaus-Uwe Mitterer
      + Gartengasse 22/7/3
      + 8010 Graz
      + Austria
      +
      +

      Central Register of Associations (ZVR) Number: 1758485319

      +

      + Email: + support@private.coffee +

      +
      +
      +

      What data do we collect?

      +

      We collect the following data from you:

      +
        +
      • + Your IP address, which is automatically collected by our web server for + some of our services. +
      • +
      • + Any data you provide to us, such as your email address, when you create + an account on one of our services. +
      • +
      • + Usage data that is collected automatically by our services, such as the + time you last logged in, or the number of times you have logged in, as + well as any content you create using our services. +
      • +
      • + Any information, including personal data and payment information, that + you provide to us when you make a donation or join our association. +
      • +
      +
      +
      +

      How do we use your data?

      +

      + We use your data to provide you with the services you requested. This + includes: +

      +
        +
      • Communication between our web server and your browser
      • +
      • Storing your preferences or your created content
      • +
      • Detection of abuse or resource exhaustion on our servers
      • +
      • Providing support to you
      • +
      • Processing donations and memberships
      • +
      +

      + All of those are what is called "legitimate interests" in legal speak. +

      +

      + We do not use your data for any other purposes, including marketing, + advertising, or tracking, we do not share your data with third parties + (unless required by law), we do not use your data to create profiles or + make automated decisions, and we do not cross-reference your data between + different services or any other sources. +

      +
      +
      +

      Where do we store your data?

      +

      + We store your data on our web servers, which are located in Austria. We + also use servers in Germany, but those are not public-facing and do not + store or process any personal data. +

      +
      +
      +

      How long do we store your data?

      +
        +
      • + IP addresses collected by our web server are stored for up to 48 hours. + After that, the log files that contain them are deleted automatically. +
      • +
      • + Data associated with an account you have on one of our services is + stored for as long as you have an account on that service. If you delete + your account, your data will be deleted automatically. The service will + have a dedicated privacy policy, please consult that if you have any + specific questions. +
      • +
      • + If you send a support request to us, we will store your email address + and any other data you provide to us for up to 30 days in our support + system. After that, the data will be deleted automatically. +
      • +
      • + Data associated with a donation is stored for as long as required by + law, which is currently 7 years in Austria. After that, the data will be + deleted. +
      • +
      • + Data associated with a membership is stored for as long as you are a + member of our association. If you leave the association, your data will + be deleted automatically. This does not apply to data that is required + by law to be stored for a longer period of time, such as financial + records, which are stored for 7 years regardless of your membership + status. +
      • +
      +
      +
      +

      What are your data protection rights?

      +

      You have the following data protection rights:

      +
        +
      • You have the right to request access to your personal data.
      • +
      • You have the right to request correction of your personal data.
      • +
      • You have the right to request erasure of your personal data.
      • +
      • + You have the right to request restriction of processing of your personal + data. +
      • +
      • You have the right to object to processing of your personal data.
      • +
      • You have the right to request transfer of your personal data.
      • +
      +

      If you make a request, we have one month to respond to you.

      +

      + If you would like to exercise any of these rights, please contact us at + support@private.coffee. +

      +

      + Your privacy is important to us - after all, that's why we're all here - + and we will do our best to respond to your request as soon as possible. + Please note that we may need to verify your identity before we can respond + to your request - we will not share your data with anyone else. +

      +

      + If you are not satisfied with our response, or believe that we are + processing your data in a way that is not compliant with the law, you have + the right to lodge a complaint with the supervisory authority in your + country. In Austria, this is the Austrian Data Protection Authority (https://www.dsb.gv.at/). However, we like to think of ourselves as nice people and will try to + help you out directly, and are always open to suggestions for improvement, + so please do get in touch with us if you have any questions or concerns. +

      +
      +
      +

      What are cookies?

      +

      + Cookies are small text files that are placed on your computer or mobile + device when you visit a website. They are widely used to make websites + work, or work more efficiently, as well as to provide information to the + owners of the site. Cookies are stored on your device, and can be accessed + by the website that created them. They are not harmful to your device, and + do not directly contain any personal data, but are used by our services to + identify you between multiple visits. +

      +

      + Cookies are used on some of our services to provide you with a better + experience. For example, we use cookies to remember your preferences and + settings - for example, to allow you to login to our services - and to + provide you with a better experience when browsing our services. We do not + use cookies to track your activity, either on our services or on other + websites. In legal/technical terms, we exclusively use "strictly + necessary" first-party cookies, which is also why you don't see any cookie + banners on our website. +

      +
      {% endblock %} From 0601a39829b4163652bada35cd813b6156b077dd Mon Sep 17 00:00:00 2001 From: Kumi Date: Mon, 27 May 2024 17:37:30 +0200 Subject: [PATCH 15/28] feat: add dev mode warning and styling Introduced a development mode toggle for the app, which, when enabled, displays a distinctive warning on every page to inform users they are viewing a development version of the site. This warning is styled for clear visibility. Development mode is toggled with a new `--dev` command line argument or by setting an environment variable. The change aims to prevent confusion between the development and production environments for both developers and early users. - Added new CSS rules for a warning alert style in `base.css`. - Modified `main.py` to check for a development mode flag and pass a warning message to the template if the flag is set. - Updated `base.html` to include the warning message when present. - Added a new template for the development warning message. --- assets/css/base.css | 19 +++++++++++++++++++ main.py | 20 +++++++++++++++++++- templates/base.html | 1 + templates/prod-warning.html | 6 ++++++ 4 files changed, 45 insertions(+), 1 deletion(-) create mode 100644 templates/prod-warning.html diff --git a/assets/css/base.css b/assets/css/base.css index 6916ad1..6bb4bc4 100644 --- a/assets/css/base.css +++ b/assets/css/base.css @@ -99,6 +99,25 @@ h5 { border-bottom: 1px solid #e0e0e0; } +.alert-warning { + background-color: #fff3cd; + border-color: #ffeeba; + color: #856404; + padding: 15px; + margin-bottom: 20px; + border-radius: 4px; +} + +.alert-warning .alert-link { + color: #856404; + font-weight: bold; + text-decoration: underline; +} + +.alert-warning .alert-link:hover { + color: #604c2e; +} + /* Responsive Styles */ @media (max-width: 768px) { .navbar .container { diff --git a/main.py b/main.py index f42bc36..221227b 100644 --- a/main.py +++ b/main.py @@ -3,6 +3,7 @@ from jinja2 import TemplateNotFound import json import pathlib +import os from argparse import ArgumentParser @@ -21,15 +22,32 @@ def catch_all(path): services = json.loads( (pathlib.Path(__file__).parent / "services.json").read_text() ) - return render_template(f"{path}.html", services=services) + + warning = None + + if app.development_mode: + warning = render_template("prod-warning.html") + + return render_template( + f"{path}.html", services=services, warning=warning + ) except TemplateNotFound: return "404 Not Found", 404 +app.development_mode = False + +if os.environ.get("PRIVATECOFFEE_DEV"): + app.development_mode = True + + if __name__ == "__main__": parser = ArgumentParser(description="Run the private.coffee web server.") parser.add_argument("--port", type=int, default=9810) parser.add_argument("--debug", action="store_true") + parser.add_argument("--dev", action="store_true") args = parser.parse_args() + app.development_mode = args.dev or app.development_mode + app.run(port=args.port, debug=args.debug) diff --git a/templates/base.html b/templates/base.html index d759727..13593f7 100644 --- a/templates/base.html +++ b/templates/base.html @@ -51,6 +51,7 @@
    JOIN & REBEL
    + {% if warning %}{{ warning|safe }}{% endif %} {% block content %}{% endblock %}