From bcfc8817ec46cfeedc975e877878c4cd176a9751 Mon Sep 17 00:00:00 2001 From: Kevin Kandlbinder Date: Wed, 23 Dec 2020 17:45:09 +0100 Subject: [PATCH] Add donation module --- config.js | 1 + gatsby-config.js | 4 ++- locales/en/translation.json | 58 ++++++++++++++++++---------------- package-lock.json | 48 ++++++++++++++++++++++++++++ package.json | 1 + src/_mixins.scss | 5 +++ src/images/icon.png | Bin 11189 -> 0 bytes src/pages/donate.js | 48 ++++++++++++++++++++++++++++ src/pages/donate.module.scss | 41 ++++++++++++++++++++++++ src/pages/donate/thank-you.js | 19 +++++++++++ src/pages/index.js | 4 +-- src/pages/index.module.scss | 4 --- 12 files changed, 198 insertions(+), 35 deletions(-) delete mode 100644 src/images/icon.png create mode 100644 src/pages/donate.js create mode 100644 src/pages/donate.module.scss create mode 100644 src/pages/donate/thank-you.js diff --git a/config.js b/config.js index e97bfbf..b448d65 100644 --- a/config.js +++ b/config.js @@ -2,6 +2,7 @@ module.exports = { "siteName": "KevinK.dev", "siteAuthor": "@Unkn0wnKevin", "siteURL": "https://kevink.dev", + "payPalMail": "kevin@1in9.net", "siteKeywords": "Kevin Kandlbinder, Kevin, Kandlbinder, Web, Web Developer, Developer, JavaScript, PHP, Java, Photos, Fotos", "iconPath": "src/images/fullbglogo@10x.png", "languages": ["en", "de"] diff --git a/gatsby-config.js b/gatsby-config.js index ca58a85..ac28b5e 100644 --- a/gatsby-config.js +++ b/gatsby-config.js @@ -5,7 +5,8 @@ module.exports = { title: extConfig.siteName, author: extConfig.siteAuthor, siteUrl: extConfig.siteURL, - keywords: extConfig.siteKeywords + keywords: extConfig.siteKeywords, + payPalMail: extConfig.payPalMail }, assetPrefix: "/assets", plugins: [ @@ -13,6 +14,7 @@ module.exports = { resolve: "gatsby-plugin-asset-path" }, `gatsby-plugin-sharp`, + `gatsby-transformer-sharp`, `gatsby-transformer-json`, { resolve: `gatsby-source-filesystem`, diff --git a/locales/en/translation.json b/locales/en/translation.json index 0335114..6299b1a 100644 --- a/locales/en/translation.json +++ b/locales/en/translation.json @@ -1,29 +1,31 @@ { - "siteDescription": "Hello, I am Kevin Kandlbinder, a developer and hobby photographer from northern Germany.", - "imprint": "Imprint", - "datasec": "Data Protection", - "disclaimer": "Disclaimer", - "projects": "Projects", - "project": "Project", - "social": "Social", - "homeHello": "Hello, I am", - "homeMe": "I am", - "homeWebDeveloper": "a web developer", - "homeMyLocation": "Quickborn, Schleswig-Holstein, Germany", - "homeAboutMe": "About me", - "homeAboutMeHello": "Hello!", - "homeAboutMeText": "I am Kevin Kandlbinder, a developer and hobby photographer from northern germany. I've learned operating computers very early in my life with my father giving me his old Windows 2000 tower. Some years later I've had my first contact with web development a few years later when I bought a book about HTML, PHP, JavaScript and CSS from a sale at my local library. From this point onwards web development has been a job and a hobby equally.", - "donationCatchphrase": "Like what you're seeing? Consider donating.", - "homeImageCredit": "Portrait taken by Jannik Kiel", - "de": "German", - "en": "English", - "projectAboutHeader": "About {{projectName}}", - "projectViewGitHub": "View on GitHub", - "projectViewWebsite": "View Project-Website", - "projectsDescription": "This is what I am working on or have worked on.", - "projectView": "View", - "socialDescriptionWithLink": "Find me on other platforms or <1>visit my friends!", - "socialDescription": "Find me on other platforms!", - "friends": "Friends", - "friendsDescription": "In this list you can find friends of mine and this site. Feel free to check them out for more interesting projects." -} \ No newline at end of file + "siteDescription": "Hello, I am Kevin Kandlbinder, a developer and hobby photographer from northern Germany.", + "imprint": "Imprint", + "datasec": "Data Protection", + "disclaimer": "Disclaimer", + "projects": "Projects", + "project": "Project", + "social": "Social", + "homeHello": "Hello, I am", + "homeMe": "I am", + "homeWebDeveloper": "a web developer", + "homeMyLocation": "Quickborn, Schleswig-Holstein, Germany", + "homeAboutMe": "About me", + "homeAboutMeHello": "Hello!", + "homeAboutMeText": "I am Kevin Kandlbinder, a developer and hobby photographer from northern germany. I've learned operating computers very early in my life with my father giving me his old Windows 2000 tower. Some years later I've had my first contact with web development a few years later when I bought a book about HTML, PHP, JavaScript and CSS from a sale at my local library. From this point onwards web development has been a job and a hobby equally.", + "donationCatchphrase": "Like what you're seeing? Consider donating.", + "homeImageCredit": "Portrait taken by Jannik Kiel", + "de": "German", + "en": "English", + "projectAboutHeader": "About {{projectName}}", + "projectViewGitHub": "View on GitHub", + "projectViewWebsite": "View Project-Website", + "projectsDescription": "This is what I am working on or have worked on.", + "projectView": "View", + "socialDescriptionWithLink": "Find me on other platforms or <1>visit my friends!", + "socialDescription": "Find me on other platforms!", + "friends": "Friends", + "friendsDescription": "In this list you can find friends of mine and this site. Feel free to check them out for more interesting projects.", + "donate": "Donate", + "donateDescription": "Hey! It looks like you're thinking about donating to me. That's nice of you! If you want your donation to go towards a specific project, feel free to write your wishes into the donation comment." +} diff --git a/package-lock.json b/package-lock.json index 22a1a82..595f6f9 100644 --- a/package-lock.json +++ b/package-lock.json @@ -10990,6 +10990,54 @@ "bluebird": "^3.7.2" } }, + "gatsby-transformer-sharp": { + "version": "2.9.0", + "resolved": "https://registry.npmjs.org/gatsby-transformer-sharp/-/gatsby-transformer-sharp-2.9.0.tgz", + "integrity": "sha512-v8kKgySAZtO7ko+XKbSFLXM0JUPP5s08PI7S8krBPsrhclSY9plRGOqtef1dNG7LIxbGCggy58fGTaD3aad12g==", + "requires": { + "@babel/runtime": "^7.12.5", + "bluebird": "^3.7.2", + "fs-extra": "^9.0.1", + "potrace": "^2.1.8", + "probe-image-size": "^5.0.0", + "semver": "^7.3.2", + "sharp": "^0.26.3" + }, + "dependencies": { + "fs-extra": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.0.1.tgz", + "integrity": "sha512-h2iAoN838FqAFJY2/qVpzFXy+EBxfVE220PalAqQLDVsFOHLJrZvut5puAbCdNv6WJk+B8ihI+k0c7JK5erwqQ==", + "requires": { + "at-least-node": "^1.0.0", + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^1.0.0" + } + }, + "jsonfile": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", + "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", + "requires": { + "graceful-fs": "^4.1.6", + "universalify": "^2.0.0" + }, + "dependencies": { + "universalify": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz", + "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==" + } + } + }, + "universalify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-1.0.0.tgz", + "integrity": "sha512-rb6X1W158d7pRQBg5gkR8uPaSfiids68LTJQYOtEUhoJUWBdaQHsuT/EUduxXYxcrt4r5PJ4fuHW1MHT6p0qug==" + } + } + }, "gauge": { "version": "2.7.4", "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", diff --git a/package.json b/package.json index 31ca685..7dfdc0c 100644 --- a/package.json +++ b/package.json @@ -34,6 +34,7 @@ "gatsby-plugin-sitemap": "^2.9.0", "gatsby-source-filesystem": "^2.8.0", "gatsby-transformer-json": "^2.8.0", + "gatsby-transformer-sharp": "^2.9.0", "i18next": "^19.8.4", "jquery": "^3.5.1", "locale": "^0.1.0", diff --git a/src/_mixins.scss b/src/_mixins.scss index e50689a..860163f 100644 --- a/src/_mixins.scss +++ b/src/_mixins.scss @@ -34,6 +34,11 @@ text-decoration: none; } +@mixin button { + @include buttonBasic; + border-radius: 5px; +} + @mixin homeBanner { background: #10141e; cursor: pointer; diff --git a/src/images/icon.png b/src/images/icon.png deleted file mode 100644 index 38b2fb0e467e023806c846454e35ede8af67105e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 11189 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 R^|Id+(7vmu{#Fee^?z+!bVL9E diff --git a/src/pages/donate.js b/src/pages/donate.js new file mode 100644 index 0000000..999f273 --- /dev/null +++ b/src/pages/donate.js @@ -0,0 +1,48 @@ +import React, {useState} from "react" +import Layout from "../layouts/default"; +import {useStaticQuery, graphql} from "gatsby"; +import { Trans, Link, useI18next, I18nextContext } from "gatsby-plugin-react-i18next" + +import styles from "./donate.module.scss"; + +import logo from "../images/roundedbglogo@10x.png"; + +export default function DonatePage() { + const [amount, setAmount] = useState(5); + const {t} = useI18next(); + const {language, path} = React.useContext(I18nextContext); + + const { site } = useStaticQuery( + graphql` + query { + site { + siteMetadata { + title + siteUrl + payPalMail + } + } + } + ` + ) + + return ( + +
+
+

donate

+ +

donateDescription

+ +
+ + {setAmount(ev.target.value)}} id="priceInput" /> +
+
+ + Donate using PayPal +
+
+
+ ); +} \ No newline at end of file diff --git a/src/pages/donate.module.scss b/src/pages/donate.module.scss new file mode 100644 index 0000000..03ddabf --- /dev/null +++ b/src/pages/donate.module.scss @@ -0,0 +1,41 @@ +@import "../variables"; +@import "../mixins"; + +.priceAmount { + display: flex; + width: 150px; + margin: 20px auto; + border: thin solid rgba(0,0,0,.25); + border-radius: 5px; + overflow: hidden; + line-height: 40px; + + input { + flex-grow: 1; + border: none; + padding-left: 10px; + width: 1px; + border-right: thin solid rgba(0,0,0,.25); + } + + div { + width: 20px; + text-align: center; + } +} + +.donateButton { + @include button; +} + +.sronly { + border: 0; + clip: rect(0,0,0,0); + height: 1px; + margin: -1px; + overflow: hidden; + padding: 0; + position: absolute; + width: 1px; +} + diff --git a/src/pages/donate/thank-you.js b/src/pages/donate/thank-you.js new file mode 100644 index 0000000..f09ef7b --- /dev/null +++ b/src/pages/donate/thank-you.js @@ -0,0 +1,19 @@ +import React from "react" +import Layout from "../../layouts/default"; +import { Trans, Link, useI18next } from "gatsby-plugin-react-i18next" + +export default function ImprintPage() { + + const {t} = useI18next(); + return ( + +
+
+

donateThanks

+ +

+
+
+
+ ); +} \ No newline at end of file diff --git a/src/pages/index.js b/src/pages/index.js index e62f928..e5c4bf5 100644 --- a/src/pages/index.js +++ b/src/pages/index.js @@ -41,12 +41,12 @@ class IndexPage extends React.Component { - +
donationCatchphrase
-
+ ) } diff --git a/src/pages/index.module.scss b/src/pages/index.module.scss index 3a7be49..4426c1a 100644 --- a/src/pages/index.module.scss +++ b/src/pages/index.module.scss @@ -21,10 +21,6 @@ max-height: 400px; transform: translate(-50%, 0%); - - - - &:hover .profileImage { transform: translate(4px, -4px); }