diff --git a/src/components/Dog.tsx b/src/components/Dog.tsx index bf81727..99ab361 100644 --- a/src/components/Dog.tsx +++ b/src/components/Dog.tsx @@ -1,9 +1,10 @@ import { ResponseT, UserCtx, UserCtxT } from '../context/UserContext'; -import React, { useContext, useState } from 'react' +import React, { useContext, useState, ReactNode } from 'react' import { useParams } from "react-router-dom"; import Img from './Img'; import DogNameTxt from './DogNameTxt'; import './Dog.css'; +import { JSXElement, JSXFragment } from '@babel/types'; const Dog = () => { @@ -32,17 +33,20 @@ const Dog = () => phone = dog.data.phone; } - return ( -
-

Hast Du mich gefunden?

- {/*

name: {name}

-

email: {email}

-

phone: {phone}

-

pic: {picPath}

-

qr: {qrPath}

*/} - - -
- ) + const content: ReactNode = dog.success === 1 ? +
+

Hast Du mich gefunden?

+ {/*

name: {name}

+

email: {email}

+

phone: {phone}

+

pic: {picPath}

+

qr: {qrPath}

*/} + + +
+: +<>; + + return ( content ); } export default Dog; \ No newline at end of file diff --git a/src/components/ImpressTxt.tsx b/src/components/ImpressTxt.tsx new file mode 100644 index 0000000..b9186bd --- /dev/null +++ b/src/components/ImpressTxt.tsx @@ -0,0 +1,70 @@ +import React from 'react'; + +const ImpressTxt = () => +{ + return ( +<> +

Angaben gem. § 5 TMG:

+

 

+

Dipl.-Ing. Peter Hoppe

+

Rachelstraße 12a

+

93059 Regensburg

+

 

+

Kontaktaufnahme:

+

 

+

E-Mail:

+

 

+

Haftungsausschluss - Disclaimer:

+

 

+

Haftung für Inhalte

+

 

+

Alle Inhalte unseres Internetauftritts wurden mit größter Sorgfalt und nach bestem Gewissen erstellt. Für die + Richtigkeit, Vollständigkeit und Aktualität der Inhalte können wir jedoch keine Gewähr übernehmen. Als + Diensteanbieter sind wir gemäß § 7 Abs.1 TMG für eigene Inhalte auf diesen Seiten nach den allgemeinen Gesetzen + verantwortlich. Nach §§ 8 bis 10 TMG sind wir als Diensteanbieter jedoch nicht verpflichtet, übermittelte oder + gespeicherte fremde Informationen zu überwachen oder nach Umständen zu forschen, die auf eine rechtswidrige + Tätigkeit hinweisen. Verpflichtungen zur Entfernung oder Sperrung der Nutzung von Informationen nach den allgemeinen + Gesetzen bleiben hiervon unberührt.

+

Eine diesbezügliche Haftung ist jedoch erst ab dem Zeitpunkt der Kenntniserlangung einer konkreten Rechtsverletzung + möglich. Bei Bekanntwerden von den o.g. Rechtsverletzungen werden wir diese Inhalte unverzüglich entfernen.

+

 

+

Haftungsbeschränkung für externe Links

+

 

+

Unsere Webseite enthält Links auf externe Webseiten Dritter. Auf die Inhalte dieser direkt oder indirekt verlinkten + Webseiten haben wir keinen Einfluss. Daher können wir für die „externen Links“ auch keine Gewähr auf Richtigkeit der + Inhalte übernehmen. Für die Inhalte der externen Links sind die jeweilige Anbieter oder Betreiber (Urheber) der + Seiten verantwortlich.

+

Die externen Links wurden zum Zeitpunkt der Linksetzung auf eventuelle Rechtsverstöße überprüft und waren im + Zeitpunkt der Linksetzung frei von rechtswidrigen Inhalten. Eine ständige inhaltliche Überprüfung der externen Links + ist ohne konkrete Anhaltspunkte einer Rechtsverletzung nicht möglich. Bei direkten oder indirekten Verlinkungen auf + die Webseiten Dritter, die außerhalb unseres Verantwortungsbereichs liegen, würde eine Haftungsverpflichtung + ausschließlich in dem Fall nur bestehen, wenn wir von den Inhalten Kenntnis erlangen und es uns technisch möglich + und zumutbar wäre, die Nutzung im Falle rechtswidriger Inhalte zu verhindern.

+

Diese Haftungsausschlusserklärung gilt auch innerhalb des eigenen Internetauftrittes „Name Ihrer Domain“ + gesetzten Links und Verweise von Fragestellern, Blogeinträgern, Gästen des Diskussionsforums. Für illegale, + fehlerhafte oder unvollständige Inhalte und insbesondere für Schäden, die aus der Nutzung oder Nichtnutzung + solcherart dargestellten Informationen entstehen, haftet allein der Diensteanbieter der Seite, auf welche verwiesen + wurde, nicht derjenige, der über Links auf die jeweilige Veröffentlichung lediglich verweist.

+

Werden uns Rechtsverletzungen bekannt, werden die externen Links durch uns unverzüglich entfernt.

+

 

+

Urheberrecht

+

 

+

Die auf unserer Webseite veröffentlichen Inhalte und Werke unterliegen dem deutschen Urheberrecht (http://www.gesetze-im-internet.de/bundesrecht/urhg/gesamt.pdf) + . Die Vervielfältigung, Bearbeitung, Verbreitung und jede Art der Verwertung des geistigen Eigentums in ideeller und + materieller Sicht des Urhebers außerhalb der Grenzen des Urheberrechtes bedürfen der vorherigen schriftlichen + Zustimmung des jeweiligen Urhebers i.S.d. Urhebergesetzes (http://www.gesetze-im-internet.de/bundesrecht/urhg/gesamt.pdf + ). Downloads und Kopien dieser Seite sind nur für den privaten und nicht kommerziellen Gebrauch erlaubt. Sind die + Inhalte auf unserer Webseite nicht von uns erstellt wurden, sind die Urheberrechte Dritter zu beachten. Die Inhalte + Dritter werden als solche kenntlich gemacht. Sollten Sie trotzdem auf eine Urheberrechtsverletzung aufmerksam + werden, bitten wir um einen entsprechenden Hinweis. Bei Bekanntwerden von Rechtsverletzungen werden wir derartige + Inhalte unverzüglich entfernen.

+

Dieses Impressum wurde freundlicherweise von www.jurarat.de zur + Verfügung gestellt.

+ +); +} +export default ImpressTxt; + + diff --git a/src/components/Impressum.css b/src/components/Impressum.css new file mode 100644 index 0000000..d8196ba --- /dev/null +++ b/src/components/Impressum.css @@ -0,0 +1,4 @@ +.underline +{ + text-decoration: underline; +} \ No newline at end of file diff --git a/src/components/Impressum.tsx b/src/components/Impressum.tsx new file mode 100644 index 0000000..69fef34 --- /dev/null +++ b/src/components/Impressum.tsx @@ -0,0 +1,16 @@ +import React from 'react'; +import ImpressTxt from './ImpressTxt'; +import './Impressum.css' + +const Impressum = () => +{ + return ( + <> +

Impressum

+ + + ) + + ; +} +export default Impressum; \ No newline at end of file diff --git a/src/components/Login.tsx b/src/components/Login.tsx index 53d2ceb..927b441 100644 --- a/src/components/Login.tsx +++ b/src/components/Login.tsx @@ -38,7 +38,7 @@ const Login = () => { setRedirect('Redirecting...'); setErrMsg(data.message); await getUser(); - e.currentTarget.reset(); + e?.currentTarget?.reset(); return; } setErrMsg(data.message); diff --git a/src/components/Qr.css b/src/components/Qr.css index 31f217a..caa67ef 100644 --- a/src/components/Qr.css +++ b/src/components/Qr.css @@ -23,7 +23,7 @@ img .vertFont { - writing-mode: vertical-lr; + writing-mode: vertical-rl; } .qrCodeVert @@ -47,3 +47,16 @@ img flex-direction: row; flex-wrap: wrap; } + +.order1 +{ + order: 1; +} +.order2 +{ + order: 2; +} +.order3 +{ + order: 3; +} diff --git a/src/components/Qr.tsx b/src/components/Qr.tsx index 21e5e81..2db2e19 100644 --- a/src/components/Qr.tsx +++ b/src/components/Qr.tsx @@ -1,20 +1,26 @@ -import React, { useContext } from 'react' -import { UserCtx, UserCtxT, DogT } from '../context/UserContext'; +import React, { useContext, useState } from 'react' +import { UserCtx, UserCtxT, DogT, Axios, ResponseT, TUser } from '../context/UserContext'; import Img from './Img'; import './Qr.css'; + export default function Qr() { - const {dog, getDog, user} = useContext(UserCtx) as UserCtxT; - var needData = dog.success === undefined; - if(needData) + const { user } = useContext(UserCtx) as UserCtxT; + const [dog, setDog] = useState({}); // local dog not the dog in UserContext + + if(user) { - if(user) + Axios.post('getDog.php', { - getDog(user?.qr_id); // await not allowed?! => workaraound - } + qr_id: user.qr_id + }) + .then((resDog) => + { + setDog(resDog.data); + }) + .catch((err) => console.error(err)); } - return ( <> @@ -33,57 +39,9 @@ export default function Qr()
- {/*
{dog.data.phone}
-
{dog.data.email}
*/}
{dog.data.name}
-
- - - -
-
-
SCAN ME
- -
-
-
{dog.data.phone}
- {/*
{dog.data.email}
*/} -
{dog.data.name}
-
-
-
-
-
SCAN ME
- -
-
- {/*
{dog.data.phone}
*/} -
{dog.data.email}
-
{dog.data.name}
-
-
- - -
-
-
SCAN ME
- -
-
-
{dog.data.phone}
- {/*
{dog.data.email}
-
{dog.data.name}
*/} -
-
-
-
-
SCAN ME
- -
-
{dog.data.phone}
{dog.data.email}
- {/*
{dog.data.name}
*/}
@@ -94,9 +52,57 @@ export default function Qr()
+
{dog.data.name}
+
{dog.data.phone}
+
{dog.data.email}
+
+ +
+
+
SCAN ME
+ +
+
+
{dog.data.name}
{dog.data.phone}
{dog.data.email}
+
+
+ + +
+
+
SCAN ME
+ +
+
{dog.data.name}
+
{dog.data.phone}
+
{dog.data.email}
+
+
+
+
+
SCAN ME
+ +
+
+
{dog.data.name}
+
{dog.data.phone}
+
{dog.data.email}
+
+
+ + +
+
+
SCAN ME
+ +
+
+
{dog.data.name}
+
{dog.data.phone}
+
{dog.data.email}