From 6b5daded4619c98442679ba9f084aaff48ca9c45 Mon Sep 17 00:00:00 2001 From: Max Date: Mon, 27 Jan 2020 10:11:40 +0100 Subject: [PATCH 1/2] Add privacy policy --- .../components/imprint/imprint.component.html | 149 +++++++++++++++++- .../components/imprint/imprint.component.sass | 14 +- 2 files changed, 155 insertions(+), 8 deletions(-) diff --git a/src/app/components/imprint/imprint.component.html b/src/app/components/imprint/imprint.component.html index d53a447..718b468 100644 --- a/src/app/components/imprint/imprint.component.html +++ b/src/app/components/imprint/imprint.component.html @@ -1,6 +1,147 @@ -Imprint +
-

The greenvironment network is being developed by the greenvironment team

-

Contact

-

Email: nick.derkoenig@greenvironment.net

+Imprint +
+

Privacy Policy

+

Last updated: January 22, 2020

+

This Privacy Policy describes Our policies and procedures on the collection, use and disclosure of Your information + when You use the Service and tells You about Your privacy rights and how the law protects You.

+

Interpretation and Definitions

+

Interpretation

+

The words of which the initial letter is capitalized have meanings defined under the following conditions.

+

The following definitions shall have the same meaning regardless of whether they appear in singular or in plural. +

+

Definitions

+

For the purposes of this Privacy Policy:

+
    +
  • +

    You means the individual accessing or using the Service, or We, or other legal entity on + behalf of which such individual is accessing or using the Service, as applicable.

    +
  • +
  • +

    Team Greenvironment (referred to as either "Team Greenvironment", "We", + "Us" or "Our" in this Agreement) refers to the Greenvironment team.

    +
  • +
  • +

    Account means a unique account created for You to access our Service or parts of our Service. +

    +
  • +
  • +

    Website refers to Greenvironment, accessible from https://greenvironment.net/

    +
  • +
  • +

    Service refers to the Website.

    +
  • +
  • +

    Third-party Social Media Service refers to any website or any social network website through + which a User can log in or create an account to use the Service.

    +
  • +
  • +

    Personal Data is any information that relates to an identified or identifiable individual.

    +
  • +
  • +

    Cookies are small files that are placed on Your computer, mobile device or any other device by + a website, containing the details of Your browsing history on that website among its many uses.

    +
  • +
  • +

    Usage Data refers to data collected automatically, either generated by the use of the Service + or from the Service infrastructure itself (for example, the duration of a page visit).

    +
  • +
+

Collecting and Using Your Personal Data

+

Types of Data Collected

+

Account Data

+

While using Our Service, We may ask You to provide Us with certain personally identifiable information that will be + saved to your account:

+

Email Address

+

To identify a unique user as a human and to provide a way to log in.

+

Password

+

To provide a secured access to your account. It will only be saved as a hashed value.

+

Username

+

The display name of the user as a human friendly way of representation.

+

Handle

+

A unique username that can be used for identification.

+

Posts

+

Collected to display them to other users.

+

Votes

+

The Upvote or Downvote performed on a post to display the sum of votes all users performed.

+

Profile Pictures

+

A way to enhance the users profile. Stored public accessible on the server.

+

Invites

+

Only visible to the user who was addressed.

+

Friends

+

Only the User and his friend can see that they are friends.The data will be deleted after the friendship is + canceled.

+

Rang points and rang

+

Collected to show other user how good the user helped to protect the environment. Rang and rang points are visible + to all users.

+

Groups/Events

+

The date is used to assign the user to groups and events. Collected to show them to other group- /Event- members. +

+

Chatroom

+

The member are showed to each others.

+

Chat Messages

+

Stored in plain text in the database. The message is visible to all other group members even if the user left the + group

+

Cookies

+

We use Cookies to save the session of the user. So if the user visits Greenvironment the next time he is already + logged in. You can instruct your browser to refuse all Cookies or to indicate when a Cookie is being saved. However, + if ou do not accept Cookies, You may not be able to use some parts of our Service.

+

Use of Your Personal Data

+

Your Personal Data will be used for the following purposes:

+
    +
  • To manage Your Account: to manage Your registration as a user of the Service. The Personal Data + You provide can give You access to different functionalities of the Service that are available to You as a + registered user.
  • +
  • To contact You: To contact You by email.
  • +
+

Retention of Your Personal Data

+

We will retain Your Personal Data only for as long as is necessary for the purposes set out in this Privacy Policy. + We will retain and use Your Personal Data to the extent necessary to comply with our legal obligations (for example, + if we are required to retain your data to comply with applicable laws), resolve disputes, and enforce our legal + agreements and policies.

+

Transfer of Your Personal Data

+

Your information, including Personal Data, is processed at Our operating offices and in any other places where the + parties involved in the processing are located. It means that this information may be transferred to — and + maintained on — computers located outside of Your state, province, country or other governmental jurisdiction where + the data protection laws may differ than those from Your jurisdiction.

+

Your consent to this Privacy Policy followed by Your submission of such information represents Your agreement to + that transfer.

+

We will take all steps reasonably necessary to ensure that Your data is treated securely and in accordance with + this Privacy Policy and no transfer of Your Personal Data will take place to an organization or a country unless + there are adequate controls in place including the security of Your data and other personal information.

+

Disclosure of Your Personal Data

+ +

We may disclose Your Personal Data in the good faith belief that such action is necessary to:

+
    +
  • Comply with a legal obligation
  • +
  • Protect and defend the rights or property of the Greenvironment Team
  • +
  • Prevent or investigate possible wrongdoing in connection with the Service
  • +
  • Protect the personal safety of Users of the Service or the public
  • +
  • Protect against legal liability
  • +
+

Security of Your Personal Data

+

The security of Your Personal Data is important to Us, but remember that no method of transmission over the + Internet, or method of electronic storage is 100% secure. While We strive to use technical acceptable means to + protect Your Personal Data, We cannot guarantee its absolute security.

+

Links to Other Websites

+

Our Service may contain links to other websites that are not operated by Us. If You click on a third party link, + You will be directed to that third party's site. We strongly advise You to review the Privacy Policy of every site + You visit.

+

We have no control over and assume no responsibility for the content, privacy policies or practices of any third + party sites or services.

+

Changes to this Privacy Policy

+

We may update our Privacy Policy from time to time. We will notify You of any changes by posting the new Privacy + Policy on this page.

+

We will let You know via email and/or a prominent notice on Our Service, prior to the change becoming effective and + update the "Last updated" date at the top of this Privacy Policy.

+

You are advised to review this Privacy Policy periodically for any changes. Changes to this Privacy Policy are + effective when they are posted on this page.

+

Contact Us

+

If you have any questions about this Privacy Policy, You can contact us:

+ +
\ No newline at end of file diff --git a/src/app/components/imprint/imprint.component.sass b/src/app/components/imprint/imprint.component.sass index 571666b..81ba057 100644 --- a/src/app/components/imprint/imprint.component.sass +++ b/src/app/components/imprint/imprint.component.sass @@ -3,12 +3,18 @@ #imprint - padding: 2em - max-width: 35em + position: fixed + width: 100% + height: calc(100% - 56px) + overflow: scroll + +#text-box margin: 0 auto + max-width: 800px + padding: 2em + ::ng-deep a + color: $primary-color -h1.mat-display-1 - margin: 0 From 5eac1567c4ebb35c0a9ffcaa59cf17f22311bebd Mon Sep 17 00:00:00 2001 From: Max Date: Mon, 27 Jan 2020 10:32:40 +0100 Subject: [PATCH 2/2] Add check boxes on register page --- .../register/register.component.html | 8 ++++++++ .../register/register.component.sass | 6 ++++++ .../components/register/register.component.ts | 20 +++++++++++++++++-- 3 files changed, 32 insertions(+), 2 deletions(-) diff --git a/src/app/components/register/register.component.html b/src/app/components/register/register.component.html index fb5b370..635da5f 100644 --- a/src/app/components/register/register.component.html +++ b/src/app/components/register/register.component.html @@ -28,6 +28,14 @@ +

+ I am older than 16 years. + +

+

+ I've read the privacy policy. + +

diff --git a/src/app/components/register/register.component.sass b/src/app/components/register/register.component.sass index 96133b0..f80b13a 100644 --- a/src/app/components/register/register.component.sass +++ b/src/app/components/register/register.component.sass @@ -5,6 +5,8 @@ padding: 2em max-width: 35em margin: 0 auto + ::ng-deep a + color: $primary-color .example-container display: flex @@ -26,6 +28,10 @@ input.example-right-align .mat-error margin-bottom: 0.25em +.check-box + float: left + margin-right: 1em + .mat-raised-button margin: 0.25em width: 100% diff --git a/src/app/components/register/register.component.ts b/src/app/components/register/register.component.ts index abd544e..ca5f1b9 100644 --- a/src/app/components/register/register.component.ts +++ b/src/app/components/register/register.component.ts @@ -14,6 +14,8 @@ export class RegisterComponent implements OnInit { errorMessage: string; hide1 = true; hide2 = true; + ageCheck = false; + imprintCheck = false; constructor(private registerService: RegisterService) { this.registration = {username: null, passwordHash: null, email: null}; @@ -28,7 +30,7 @@ export class RegisterComponent implements OnInit { onClickSubmit(pUsername: string, pEmail: string, pPasswordHash: string, pPasswordHashRepeat: string) { this.errorOccurred = false; this.errorMessage = ' '; - if (this.passwordSame(pPasswordHash, pPasswordHashRepeat)) { + if (this.passwordSame(pPasswordHash, pPasswordHashRepeat) && this.boxesChecked()) { this.registration.username = pUsername.trim(); this.registration.email = pEmail.trim().toLowerCase(); this.registration.passwordHash = sha512.sha512(pPasswordHash); @@ -38,7 +40,6 @@ export class RegisterComponent implements OnInit { passwordSame(pwd: string, pwd2: string) { if (pwd === pwd2) { - console.log('password same'); return true; } else { this.errorOccurred = true; @@ -47,6 +48,21 @@ export class RegisterComponent implements OnInit { } } + boxesChecked(): boolean { + if (this.imprintCheck && this.ageCheck) { + console.log('all boxes checked'); + return true; + } else { + this.errorOccurred = true; + if (!this.ageCheck) { + this.errorMessage = 'You have to confirm your age.'; + } else if (!this.imprintCheck) { + this.errorMessage = 'You have to confirm that you read the privacy policy.'; + } + return false; + } + } + ngOnInit() { }