diff --git a/.vs/ProjectSettings.json b/.vs/ProjectSettings.json
new file mode 100644
index 0000000..7d3de51
--- /dev/null
+++ b/.vs/ProjectSettings.json
@@ -0,0 +1,3 @@
+{
+ "CurrentProjectSetting": "Brak konfiguracji"
+}
\ No newline at end of file
diff --git a/.vs/VSWorkspaceState.json b/.vs/VSWorkspaceState.json
new file mode 100644
index 0000000..8e0f003
--- /dev/null
+++ b/.vs/VSWorkspaceState.json
@@ -0,0 +1,11 @@
+{
+ "ExpandedNodes": [
+ "",
+ "\\highneed_react",
+ "\\highneed_react\\src",
+ "\\highneed_react\\src\\components",
+ "\\highneed_react\\src\\Pages"
+ ],
+ "SelectedNode": "\\highneed_react\\src\\Pages\\Home.js",
+ "PreviewInSolutionExplorer": false
+}
\ No newline at end of file
diff --git a/.vs/inzynierka/v16/.suo b/.vs/inzynierka/v16/.suo
new file mode 100644
index 0000000..1d98984
Binary files /dev/null and b/.vs/inzynierka/v16/.suo differ
diff --git a/.vs/inzynierka/v16/Browse.VC.db b/.vs/inzynierka/v16/Browse.VC.db
new file mode 100644
index 0000000..f0ba29e
Binary files /dev/null and b/.vs/inzynierka/v16/Browse.VC.db differ
diff --git a/.vs/slnx.sqlite b/.vs/slnx.sqlite
new file mode 100644
index 0000000..fe564e0
Binary files /dev/null and b/.vs/slnx.sqlite differ
diff --git a/.vs/tasks.vs.json b/.vs/tasks.vs.json
new file mode 100644
index 0000000..da7b079
--- /dev/null
+++ b/.vs/tasks.vs.json
@@ -0,0 +1,10 @@
+{
+ "version": "0.2.1",
+ "tasks": [
+ {
+ "taskLabel": "zadanie-Login",
+ "appliesTo": "highneed_react/src/Pages/Login.js",
+ "type": "launch"
+ }
+ ]
+}
\ No newline at end of file
diff --git a/highneed/.vs/ProjectSettings.json b/highneed/.vs/ProjectSettings.json
new file mode 100644
index 0000000..7d3de51
--- /dev/null
+++ b/highneed/.vs/ProjectSettings.json
@@ -0,0 +1,3 @@
+{
+ "CurrentProjectSetting": "Brak konfiguracji"
+}
\ No newline at end of file
diff --git a/highneed/.vs/VSWorkspaceState.json b/highneed/.vs/VSWorkspaceState.json
new file mode 100644
index 0000000..11c6b22
--- /dev/null
+++ b/highneed/.vs/VSWorkspaceState.json
@@ -0,0 +1,6 @@
+{
+ "ExpandedNodes": [
+ "\\venv\\lib\\python3.6"
+ ],
+ "PreviewInSolutionExplorer": false
+}
\ No newline at end of file
diff --git a/highneed/.vs/slnx.sqlite b/highneed/.vs/slnx.sqlite
new file mode 100644
index 0000000..1a17dc5
Binary files /dev/null and b/highneed/.vs/slnx.sqlite differ
diff --git a/highneed_react/.gitignore b/highneed_react/.gitignore
index 4d29575..df39a20 100644
--- a/highneed_react/.gitignore
+++ b/highneed_react/.gitignore
@@ -21,3 +21,5 @@
npm-debug.log*
yarn-debug.log*
yarn-error.log*
+
+.vs/*
diff --git a/highneed_react/.vs/ProjectSettings.json b/highneed_react/.vs/ProjectSettings.json
new file mode 100644
index 0000000..f8b4888
--- /dev/null
+++ b/highneed_react/.vs/ProjectSettings.json
@@ -0,0 +1,3 @@
+{
+ "CurrentProjectSetting": null
+}
\ No newline at end of file
diff --git a/highneed_react/.vs/highneed_react/v16/.suo b/highneed_react/.vs/highneed_react/v16/.suo
new file mode 100644
index 0000000..0b97642
Binary files /dev/null and b/highneed_react/.vs/highneed_react/v16/.suo differ
diff --git a/highneed_react/.vs/slnx.sqlite b/highneed_react/.vs/slnx.sqlite
new file mode 100644
index 0000000..581446d
Binary files /dev/null and b/highneed_react/.vs/slnx.sqlite differ
diff --git a/highneed_react/package-lock.json b/highneed_react/package-lock.json
index 23e79a6..7599926 100644
--- a/highneed_react/package-lock.json
+++ b/highneed_react/package-lock.json
@@ -3011,11 +3011,6 @@
"resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.3.tgz",
"integrity": "sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ=="
},
- "async-limiter": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.1.tgz",
- "integrity": "sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ=="
- },
"asynckit": {
"version": "0.4.0",
"resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz",
@@ -3686,6 +3681,11 @@
"resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz",
"integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24="
},
+ "bootstrap": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-5.0.1.tgz",
+ "integrity": "sha512-Fl79+wsLOZKoiU345KeEaWD0ik8WKRI5zm0YSPj2oF1Qr+BO7z0fco6GbUtqjoG1h4VI89PeKJnMsMMVQdKKTw=="
+ },
"brace-expansion": {
"version": "1.1.11",
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
@@ -5083,9 +5083,9 @@
"integrity": "sha1-s55/HabrCnW6nBcySzR1PEfgZU0="
},
"dns-packet": {
- "version": "1.3.1",
- "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-1.3.1.tgz",
- "integrity": "sha512-0UxfQkMhYAUaZI+xrNZOz/as5KgDU0M/fQ9b6SpkyLbk3GEswDi6PADJVaYJradtRVsRIlF1zLyOodbcTCDzUg==",
+ "version": "1.3.4",
+ "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-1.3.4.tgz",
+ "integrity": "sha512-BQ6F4vycLXBvdrJZ6S3gZewt6rcrks9KBgM9vrhW+knGRqc8uEdT7fuCwloc7nny5xNoMJ17HGH0R/6fpo8ECA==",
"requires": {
"ip": "^1.1.0",
"safe-buffer": "^5.0.1"
@@ -5162,11 +5162,18 @@
}
},
"domhandler": {
- "version": "2.4.2",
- "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.4.2.tgz",
- "integrity": "sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA==",
+ "version": "4.2.0",
+ "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.2.0.tgz",
+ "integrity": "sha512-zk7sgt970kzPks2Bf+dwT/PLzghLnsivb9CcxkvR8Mzr66Olr0Ofd8neSbglHJHaHa2MadfoSdNlKYAaafmWfA==",
"requires": {
- "domelementtype": "1"
+ "domelementtype": "^2.2.0"
+ },
+ "dependencies": {
+ "domelementtype": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.2.0.tgz",
+ "integrity": "sha512-DtBMo82pv1dFtUmHyr48beiuq792Sxohr+8Hm9zoxklYPfa6n0Z3Byjj2IV7bmr2IyqClnqEQhfgHJJ5QF0R5A=="
+ }
}
},
"domutils": {
@@ -7235,6 +7242,16 @@
"resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz",
"integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg=="
},
+ "html-loader": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/html-loader/-/html-loader-2.1.2.tgz",
+ "integrity": "sha512-XB4O1+6mpLp4qy/3qg5+1QPZ/uXvWtO64hNAX87sKHwcHkp1LJGU7V3sJ9iVmRACElAZXQ4YOO/Lbkx5kYfl9A==",
+ "dev": true,
+ "requires": {
+ "html-minifier-terser": "^5.1.1",
+ "parse5": "^6.0.1"
+ }
+ },
"html-minifier-terser": {
"version": "5.1.1",
"resolved": "https://registry.npmjs.org/html-minifier-terser/-/html-minifier-terser-5.1.1.tgz",
@@ -7295,22 +7312,40 @@
}
},
"htmlparser2": {
- "version": "3.10.1",
- "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.10.1.tgz",
- "integrity": "sha512-IgieNijUMbkDovyoKObU1DUhm1iwNYE/fuifEoEHfd1oZKZDaONBSkal7Y01shxsM49R4XaMdGez3WnF9UfiCQ==",
+ "version": "6.1.0",
+ "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-6.1.0.tgz",
+ "integrity": "sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A==",
"requires": {
- "domelementtype": "^1.3.1",
- "domhandler": "^2.3.0",
- "domutils": "^1.5.1",
- "entities": "^1.1.1",
- "inherits": "^2.0.1",
- "readable-stream": "^3.1.1"
+ "domelementtype": "^2.0.1",
+ "domhandler": "^4.0.0",
+ "domutils": "^2.5.2",
+ "entities": "^2.0.0"
},
"dependencies": {
- "entities": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz",
- "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w=="
+ "dom-serializer": {
+ "version": "1.3.2",
+ "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.3.2.tgz",
+ "integrity": "sha512-5c54Bk5Dw4qAxNOI1pFEizPSjVsx5+bpJKmL2kPn8JhBUq2q09tTCa3mjijun2NfK78NMouDYNMBkOrPZiS+ig==",
+ "requires": {
+ "domelementtype": "^2.0.1",
+ "domhandler": "^4.2.0",
+ "entities": "^2.0.0"
+ }
+ },
+ "domelementtype": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.2.0.tgz",
+ "integrity": "sha512-DtBMo82pv1dFtUmHyr48beiuq792Sxohr+8Hm9zoxklYPfa6n0Z3Byjj2IV7bmr2IyqClnqEQhfgHJJ5QF0R5A=="
+ },
+ "domutils": {
+ "version": "2.7.0",
+ "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.7.0.tgz",
+ "integrity": "sha512-8eaHa17IwJUPAiB+SoTYBo5mCdeMgdcAoXJ59m6DT1vw+5iLS3gNoqYaRowaBKtGVrOF1Jz4yDTgYKLK2kvfJg==",
+ "requires": {
+ "dom-serializer": "^1.0.1",
+ "domelementtype": "^2.2.0",
+ "domhandler": "^4.2.0"
+ }
}
}
},
@@ -12474,6 +12509,14 @@
"resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.8.3.tgz",
"integrity": "sha512-X8jZHc7nCMjaCqoU+V2I0cOhNW+QMBwSUkeXnTi8IPe6zaRWfn60ZzvFDZqWPfmSJfjub7dDW1SP0jaHWLu/hg=="
},
+ "react-responsive-image": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/react-responsive-image/-/react-responsive-image-5.0.0.tgz",
+ "integrity": "sha512-SFWb9nlJSDNVXLwwe4Pgzn62KLUXFhXwjed4MFFFC97qGBVbEct2zMk10F05W/Jw7da1YpglPYAdvo2Q1UmCkw==",
+ "requires": {
+ "prop-types": "^15.5.10"
+ }
+ },
"react-router": {
"version": "5.2.0",
"resolved": "https://registry.npmjs.org/react-router/-/react-router-5.2.0.tgz",
@@ -12799,28 +12842,65 @@
"integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8="
},
"renderkid": {
- "version": "2.0.5",
- "resolved": "https://registry.npmjs.org/renderkid/-/renderkid-2.0.5.tgz",
- "integrity": "sha512-ccqoLg+HLOHq1vdfYNm4TBeaCDIi1FLt3wGojTDSvdewUv65oTmI3cnT2E4hRjl1gzKZIPK+KZrXzlUYKnR+vQ==",
+ "version": "2.0.6",
+ "resolved": "https://registry.npmjs.org/renderkid/-/renderkid-2.0.6.tgz",
+ "integrity": "sha512-GIis2GBr/ho0pFNf57D4XM4+PgnQuTii0WCPjEZmZfKivzUfGuRdjN2aQYtYMiNggHmNyBve+thFnNR1iBRcKg==",
"requires": {
- "css-select": "^2.0.2",
- "dom-converter": "^0.2",
- "htmlparser2": "^3.10.1",
- "lodash": "^4.17.20",
- "strip-ansi": "^3.0.0"
+ "css-select": "^4.1.3",
+ "dom-converter": "^0.2.0",
+ "htmlparser2": "^6.1.0",
+ "lodash": "^4.17.21",
+ "strip-ansi": "^6.0.0"
},
"dependencies": {
- "ansi-regex": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz",
- "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8="
- },
- "strip-ansi": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz",
- "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=",
+ "css-select": {
+ "version": "4.1.3",
+ "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.1.3.tgz",
+ "integrity": "sha512-gT3wBNd9Nj49rAbmtFHj1cljIAOLYSX1nZ8CB7TBO3INYckygm5B7LISU/szY//YmdiSLbJvDLOx9VnMVpMBxA==",
"requires": {
- "ansi-regex": "^2.0.0"
+ "boolbase": "^1.0.0",
+ "css-what": "^5.0.0",
+ "domhandler": "^4.2.0",
+ "domutils": "^2.6.0",
+ "nth-check": "^2.0.0"
+ }
+ },
+ "css-what": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/css-what/-/css-what-5.0.1.tgz",
+ "integrity": "sha512-FYDTSHb/7KXsWICVsxdmiExPjCfRC4qRFBdVwv7Ax9hMnvMmEjP9RfxTEZ3qPZGmADDn2vAKSo9UcN1jKVYscg=="
+ },
+ "dom-serializer": {
+ "version": "1.3.2",
+ "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.3.2.tgz",
+ "integrity": "sha512-5c54Bk5Dw4qAxNOI1pFEizPSjVsx5+bpJKmL2kPn8JhBUq2q09tTCa3mjijun2NfK78NMouDYNMBkOrPZiS+ig==",
+ "requires": {
+ "domelementtype": "^2.0.1",
+ "domhandler": "^4.2.0",
+ "entities": "^2.0.0"
+ }
+ },
+ "domelementtype": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.2.0.tgz",
+ "integrity": "sha512-DtBMo82pv1dFtUmHyr48beiuq792Sxohr+8Hm9zoxklYPfa6n0Z3Byjj2IV7bmr2IyqClnqEQhfgHJJ5QF0R5A=="
+ },
+ "domutils": {
+ "version": "2.7.0",
+ "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.7.0.tgz",
+ "integrity": "sha512-8eaHa17IwJUPAiB+SoTYBo5mCdeMgdcAoXJ59m6DT1vw+5iLS3gNoqYaRowaBKtGVrOF1Jz4yDTgYKLK2kvfJg==",
+ "requires": {
+ "dom-serializer": "^1.0.1",
+ "domelementtype": "^2.2.0",
+ "domhandler": "^4.2.0"
+ }
+ },
+ "nth-check": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.0.0.tgz",
+ "integrity": "sha512-i4sc/Kj8htBrAiH1viZ0TgU8Y5XqCaV/FziYK6TBczxmeKm3AEFWqqF3195yKudrarqy7Zu80Ra5dobFjn9X/Q==",
+ "requires": {
+ "boolbase": "^1.0.0"
}
}
}
@@ -16114,11 +16194,18 @@
}
},
"ws": {
- "version": "6.2.1",
- "resolved": "https://registry.npmjs.org/ws/-/ws-6.2.1.tgz",
- "integrity": "sha512-GIyAXC2cB7LjvpgMt9EKS2ldqr0MTrORaleiOno6TweZ6r3TKtoFQWay/2PceJ3RuBasOHzXNn5Lrw1X0bEjqA==",
+ "version": "6.2.2",
+ "resolved": "https://registry.npmjs.org/ws/-/ws-6.2.2.tgz",
+ "integrity": "sha512-zmhltoSR8u1cnDsD43TX59mzoMZsLKqUweyYBAIvTngR3shc0W6aOZylZmq/7hqyVxPdi+5Ud2QInblgyE72fw==",
"requires": {
"async-limiter": "~1.0.0"
+ },
+ "dependencies": {
+ "async-limiter": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.1.tgz",
+ "integrity": "sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ=="
+ }
}
},
"yargs": {
@@ -16558,9 +16645,9 @@
}
},
"ws": {
- "version": "7.4.5",
- "resolved": "https://registry.npmjs.org/ws/-/ws-7.4.5.tgz",
- "integrity": "sha512-xzyu3hFvomRfXKH8vOFMU3OguG6oOvhXMo3xsGy3xWExqaM2dxBbVxuD99O7m3ZUFMvvscsZDqxfgMaRr/Nr1g=="
+ "version": "7.4.6",
+ "resolved": "https://registry.npmjs.org/ws/-/ws-7.4.6.tgz",
+ "integrity": "sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A=="
},
"xml-name-validator": {
"version": "3.0.0",
diff --git a/highneed_react/package.json b/highneed_react/package.json
index be6181a..1339c13 100644
--- a/highneed_react/package.json
+++ b/highneed_react/package.json
@@ -6,8 +6,10 @@
"@testing-library/jest-dom": "^5.12.0",
"@testing-library/react": "^11.2.6",
"@testing-library/user-event": "^12.8.3",
+ "bootstrap": "^5.0.1",
"react": "^17.0.2",
"react-dom": "^17.0.2",
+ "react-responsive-image": "^5.0.0",
"react-router-dom": "^5.2.0",
"react-scripts": "4.0.3",
"web-vitals": "^1.1.2"
@@ -35,5 +37,8 @@
"last 1 firefox version",
"last 1 safari version"
]
+ },
+ "devDependencies": {
+ "html-loader": "^2.1.2"
}
}
diff --git a/highneed_react/public/images/img-article-m.jpg b/highneed_react/public/images/img-article-m.jpg
new file mode 100644
index 0000000..e30fb66
Binary files /dev/null and b/highneed_react/public/images/img-article-m.jpg differ
diff --git a/highneed_react/public/images/img-article-s.jpg b/highneed_react/public/images/img-article-s.jpg
new file mode 100644
index 0000000..9aa650f
Binary files /dev/null and b/highneed_react/public/images/img-article-s.jpg differ
diff --git a/highneed_react/public/images/img-article.jpg b/highneed_react/public/images/img-article.jpg
new file mode 100644
index 0000000..b45dc5d
Binary files /dev/null and b/highneed_react/public/images/img-article.jpg differ
diff --git a/highneed_react/public/images/img-article2-m.jpg b/highneed_react/public/images/img-article2-m.jpg
new file mode 100644
index 0000000..041cff1
Binary files /dev/null and b/highneed_react/public/images/img-article2-m.jpg differ
diff --git a/highneed_react/public/images/img-article2-s.jpg b/highneed_react/public/images/img-article2-s.jpg
new file mode 100644
index 0000000..dccbe2b
Binary files /dev/null and b/highneed_react/public/images/img-article2-s.jpg differ
diff --git a/highneed_react/public/images/img-article2.jpg b/highneed_react/public/images/img-article2.jpg
new file mode 100644
index 0000000..d38125b
Binary files /dev/null and b/highneed_react/public/images/img-article2.jpg differ
diff --git a/highneed_react/public/images/img-map-m.png b/highneed_react/public/images/img-map-m.png
new file mode 100644
index 0000000..523484a
Binary files /dev/null and b/highneed_react/public/images/img-map-m.png differ
diff --git a/highneed_react/public/images/img-map-s.png b/highneed_react/public/images/img-map-s.png
new file mode 100644
index 0000000..7d00859
Binary files /dev/null and b/highneed_react/public/images/img-map-s.png differ
diff --git a/highneed_react/public/images/img-map.png b/highneed_react/public/images/img-map.png
new file mode 100644
index 0000000..c96a913
Binary files /dev/null and b/highneed_react/public/images/img-map.png differ
diff --git a/highneed_react/public/index.html b/highneed_react/public/index.html
index 65f42f2..222786c 100644
--- a/highneed_react/public/index.html
+++ b/highneed_react/public/index.html
@@ -1,5 +1,5 @@
-
+
@@ -21,7 +21,6 @@
Notice the use of %PUBLIC_URL% in the tags above.
It will be replaced with the URL of the `public` folder during the build.
Only files inside the `public` folder can be referenced from the HTML.
-
Unlike "/favicon.ico" or "favicon.ico", "%PUBLIC_URL%/favicon.ico" will
work correctly both with client-side routing and a non-root public URL.
Learn how to configure a non-root public URL by running `npm run build`.
@@ -34,12 +33,10 @@
-
+
\ No newline at end of file
diff --git a/highneed_react/src/App.css b/highneed_react/src/App.css
index 5cacdb3..bfbb348 100644
--- a/highneed_react/src/App.css
+++ b/highneed_react/src/App.css
@@ -1,12 +1,11 @@
-body
-{
- height: 100%;
- width: 100%;
+body {
}
* {
- box-sizing: border-box;
+ box-sizing: content-box;
margin: 0;
+
padding: 0;
- font-family: 'Quicksand';
- }
\ No newline at end of file
+ font-family: 'Verdana', Arial;
+}
+
diff --git a/highneed_react/src/App.js b/highneed_react/src/App.js
index c401c36..a726a2e 100644
--- a/highneed_react/src/App.js
+++ b/highneed_react/src/App.js
@@ -1,9 +1,14 @@
import React from 'react';
import './App.css';
+import { BrowserRouter as Router, Switch, Route } from 'react-router-dom';
+
import NavBar from './components/NavBar';
-import {BrowserRouter as Router, Switch, Route} from 'react-router-dom';
-import SearchEvent from './components/Pages/SearchEvent';
-import Home from './components/Pages/Home';
+import Home from './Pages/Home';
+import Login from './Pages/Login';
+import SearchEvent from './Pages/SearchEvent';
+import Calendar from './Pages/Calendar';
+import FBfanpage from './Pages/FBfanpage';
+
function App() {
return (
@@ -11,8 +16,11 @@ function App() {
-
-
+
+
+
+
+
>
diff --git a/highneed_react/src/Pages/Calendar.js b/highneed_react/src/Pages/Calendar.js
new file mode 100644
index 0000000..0d1dee7
--- /dev/null
+++ b/highneed_react/src/Pages/Calendar.js
@@ -0,0 +1,12 @@
+import React from 'react';
+import '../App.css';
+
+function Calendar() {
+ return (
+ <>
+ Calendar
+ >
+ );
+}
+
+export default Calendar;
\ No newline at end of file
diff --git a/highneed_react/src/Pages/FBfanpage.js b/highneed_react/src/Pages/FBfanpage.js
new file mode 100644
index 0000000..0d8637a
--- /dev/null
+++ b/highneed_react/src/Pages/FBfanpage.js
@@ -0,0 +1,12 @@
+import React from 'react';
+import '../App.css';
+
+function FBfanpage() {
+ return (
+ <>
+ FB fanpage
+ >
+ );
+}
+
+export default FBfanpage;
\ No newline at end of file
diff --git a/highneed_react/src/Pages/Home-responsive.css b/highneed_react/src/Pages/Home-responsive.css
new file mode 100644
index 0000000..5825cc8
--- /dev/null
+++ b/highneed_react/src/Pages/Home-responsive.css
@@ -0,0 +1,62 @@
+@media screen and (max-width: 416px) {
+ .article-container {
+ padding: 3% 1%;
+ flex-direction: column;
+ }
+
+ .article2-container {
+ padding: 3% 1%;
+ height: 300px;
+ }
+
+ .article4-container {
+ padding: 3% 1%;
+ height: 300px;
+ }
+
+ .article-img {
+ margin-bottom: 1%;
+ }
+
+ h1 {
+ font-size: 16px;
+ }
+
+ p {
+ font-size: 14px;
+ }
+
+ .search-components {
+ width: 170px;
+ font-size: 13px;
+ }
+
+}
+
+@media screen and (min-width: 801px) {
+ .article-container {
+ padding-top:1.5%;
+ padding-bottom:1.5%;
+ }
+
+ .article2-container {
+ padding-top: 1.5%;
+ padding-bottom: 1.5%;
+ }
+
+ .article4-container {
+ padding-top: 1.5%;
+ padding-bottom: 1.5%;
+ }
+
+ h1{
+ font-size:22px;
+ }
+
+ p{
+ font-size:17px;
+ max-width: 700px;
+ }
+
+
+}
\ No newline at end of file
diff --git a/highneed_react/src/Pages/Home.css b/highneed_react/src/Pages/Home.css
new file mode 100644
index 0000000..b91225e
--- /dev/null
+++ b/highneed_react/src/Pages/Home.css
@@ -0,0 +1,114 @@
+.homepage {
+}
+
+.sport-list {
+ padding: 1% 1%;
+ display: flex;
+ flex-wrap: wrap;
+ flex-direction: row;
+ justify-content: center;
+ background-color: #F0FAF3;
+}
+
+.categories{
+ margin: 0.5%;
+ min-width:15%;
+}
+
+.article-container {
+ padding: 2.5% 1%;
+ display: flex;
+ flex-direction: row;
+ align-items: center;
+ justify-content: space-around;
+}
+
+.article2-container {
+ padding: 2.5% 1%;
+ background-color: #F0FAF3;
+ display: flex;
+ flex-direction: row;
+ align-items: center;
+ justify-content: space-around;
+}
+
+.article4-container {
+ padding: 2.5% 1%;
+ display: flex;
+ flex-direction: row;
+ align-items: center;
+}
+
+.article-text {
+ padding-left: 1%;
+ padding-right: 1%;
+ display: flex;
+ flex-direction: column;
+}
+
+.article2-text {
+ padding-left: 1%;
+ padding-right: 1%;
+ display: flex;
+ flex-direction: column;
+}
+
+.article4-text {
+ height: 300px;
+ padding-left: 1%;
+ padding-right: 1%;
+}
+
+
+.article-img {
+ display:flex;
+ border-radius: 5%;
+ overflow: clip;
+ margin-left: 1%;
+ margin-right: 1%;
+}
+
+.article-img2 {
+ border-radius: 50%;
+ overflow: clip;
+ margin-left: 1%;
+ margin-right: 1%;
+}
+
+.article-img3 {
+ max-height:500px;
+ overflow:clip;
+}
+
+h1 {
+ padding-bottom: 8px;
+ text-align: center;
+ font-size: 20px;
+ color: #347945;
+}
+
+p {
+ text-align: justify;
+ font-size: 16px;
+}
+
+.center {
+ text-align: center;
+}
+
+.searching {
+ padding-top: 10%;
+}
+
+.search-components {
+ width: 205px;
+ display: flex;
+ align-items: center;
+ justify-content: space-between;
+}
+
+.button-icon {
+ display: flex;
+ align-items: center;
+ justify-content: center;
+}
diff --git a/highneed_react/src/Pages/Home.js b/highneed_react/src/Pages/Home.js
new file mode 100644
index 0000000..225f49d
--- /dev/null
+++ b/highneed_react/src/Pages/Home.js
@@ -0,0 +1,157 @@
+import React from 'react';
+import { Link } from 'react-router-dom';
+import { ResponsiveImage, ResponsiveImageSize } from 'react-responsive-image';
+import './Home.css'
+import './Home-responsive.css'
+import BottomBar from '../components/BottomBar';
+
+const small = '/images/img-article-s.jpg';
+const medium = '/images/img-article-m.jpg';
+const large = '/images/img-article.jpg';
+
+const small_2 = '/images/img-article2-s.jpg';
+const medium_2 = '/images/img-article2-m.jpg';
+const large_2 = '/images/img-article2.jpg';
+
+const small_3 = '/images/img-map-s.png';
+const medium_3 = '/images/img-map-m.png';
+const large_3 = '/images/img-map.png';
+
+
+function Home() {
+ return (
+ <>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Witamy na stronie HighNeed
+
HighNeed.pl jest portalem do planowania aktywności dla rodzin z dziećmi w Poznaniu.
+
+
+
+
+
+
+
Wyszukiwanie wydarzeń w Twojej okolicy
+
Znajdź grupy i wydarzenia na terenie Poznania, dzięki którym Twoje dziecko rozwinie swoje zainteresowania oraz zawrze nowe znajomości.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
NadchodzÄ…ce wydarzenia
+
+
* Będzie po połączeniu zaimportowanych wydarzeń *
+
+
+
+
+
+
+ >
+ );
+}
+
+export default Home;
\ No newline at end of file
diff --git a/highneed_react/src/Pages/Login.css b/highneed_react/src/Pages/Login.css
new file mode 100644
index 0000000..7a94500
--- /dev/null
+++ b/highneed_react/src/Pages/Login.css
@@ -0,0 +1,58 @@
+.signup {
+ padding-top:5%;
+}
+
+.login-container {
+ background-color: #F0FAF3;
+ display: flex;
+ flex-direction: column;
+ align-items: center;
+ justify-content: center;
+}
+
+h3 {
+ display:flex;
+ justify-content:center;
+ padding: 5%;
+ font-size: 40px;
+ color: #347945;
+}
+
+.login{
+}
+
+form {
+ width: 100%;
+}
+
+.input-container{
+ padding: 5% 5%
+}
+
+
+input {
+ border-color: #347945;
+ border-radius: 5px;
+
+ height:20px;
+ width: 100%;
+
+ padding:1% 0%;
+ margin:2% 0%;
+}
+
+.login-bottom {
+ padding: 5% 5%;
+
+ display: flex;
+ flex-direction: row;
+ align-items: center;
+ justify-content: center;
+}
+
+.text-button{
+ margin: 5% 5%;
+ display:flex;
+ flex-direction:column;
+ justify-content:center;
+}
\ No newline at end of file
diff --git a/highneed_react/src/Pages/Login.js b/highneed_react/src/Pages/Login.js
new file mode 100644
index 0000000..0d95291
--- /dev/null
+++ b/highneed_react/src/Pages/Login.js
@@ -0,0 +1,46 @@
+import React from 'react'
+import './Login.css'
+
+function Login() {
+ return (
+
+ );
+}
+export default Login;
\ No newline at end of file
diff --git a/highneed_react/src/components/Pages/SearchEvent.js b/highneed_react/src/Pages/SearchEvent.js
similarity index 52%
rename from highneed_react/src/components/Pages/SearchEvent.js
rename to highneed_react/src/Pages/SearchEvent.js
index a0f724e..17a5645 100644
--- a/highneed_react/src/components/Pages/SearchEvent.js
+++ b/highneed_react/src/Pages/SearchEvent.js
@@ -1,6 +1,6 @@
import React from 'react';
-import '../../App.css';
-import Events from '../Events';
+import '../App.css';
+import Events from '../components/Events';
function SearchEvent() {
return (
diff --git a/highneed_react/src/components/BottomBar.css b/highneed_react/src/components/BottomBar.css
new file mode 100644
index 0000000..32f2d67
--- /dev/null
+++ b/highneed_react/src/components/BottomBar.css
@@ -0,0 +1,53 @@
+.bottom-bar {
+ background-color: #64BE7B;
+ color: white;
+}
+
+.contact-info {
+ display: flex;
+ flex-direction: column;
+ padding: 0.5% 1%;
+}
+
+.contact-container {
+ display: flex;
+ flex-direction: row;
+ align-items: center;
+}
+
+.contact {
+ color: white;
+}
+
+.contact:hover {
+ color: #347945;
+}
+
+.contact-text {
+ height: 22px;
+ font-size: 16px;
+ text-decoration: underline;
+ padding-left: 1%;
+ padding-right: 1%;
+}
+
+h2 {
+ font-size: 20px;
+ padding-bottom: 0.5%;
+}
+
+
+
+@media screen and (max-width: 416px) {
+ h2 {
+ font-size: 16px;
+ }
+
+ .contact-text {
+ font-size: 13px;
+ }
+
+ .contact-icon {
+ scale: 90%;
+ }
+}
diff --git a/highneed_react/src/components/BottomBar.js b/highneed_react/src/components/BottomBar.js
new file mode 100644
index 0000000..954e9ac
--- /dev/null
+++ b/highneed_react/src/components/BottomBar.js
@@ -0,0 +1,41 @@
+import React from 'react'
+import { Link } from 'react-router-dom';
+import './BottomBar.css';
+
+function BottomBar() {
+ return (
+
+
+
Kontakt:
+
+
+
+
+
+
+
+
+
+ )
+}
+export default BottomBar;
\ No newline at end of file
diff --git a/highneed_react/src/components/EventItem.js b/highneed_react/src/components/EventItem.js
index 8837440..9d91d23 100644
--- a/highneed_react/src/components/EventItem.js
+++ b/highneed_react/src/components/EventItem.js
@@ -13,20 +13,25 @@ function EventItem(props) {
width='200px'
height='200px'
src={props.src}
- />
+ />
+
{props.data}
+
- {props.title}
-
+ {props.title}
+
{props.category}
{props.age}
{props.address}
-
-
-
-
+
+
+
+
+
+
+
>
diff --git a/highneed_react/src/components/Events.css b/highneed_react/src/components/Events.css
index 1f66bbc..e629dbd 100644
--- a/highneed_react/src/components/Events.css
+++ b/highneed_react/src/components/Events.css
@@ -40,19 +40,16 @@ a
color: black;
}
-.button
-{
- background-color: #64BE7B; /* Green */
- border: none;
- color: white;
- padding: 8px 16px;
- text-align: center;
- text-decoration: none;
- display: inline-block;
- font-size: 16px;
- margin: 4px 2px;
- border-radius: 15px;
- cursor: pointer;
+.button {
+ background-color: #64BE7B; /* Green */
+ border: none;
+ color: white;
+ padding: 8px 16px;
+ text-align: center;
+ display: inline-block;
+ font-size: 16px;
+ border-radius: 40px;
+ cursor: pointer;
}
.button:hover {background-color: #347945}
diff --git a/highneed_react/src/components/NavBar.css b/highneed_react/src/components/NavBar.css
index 2789793..663811c 100644
--- a/highneed_react/src/components/NavBar.css
+++ b/highneed_react/src/components/NavBar.css
@@ -1,149 +1,149 @@
-
-.navbar
-{
- background-color: #64BE7B;
- width: 100%;
- height: 50px;
- z-index: 999;
+.navbar {
}
-.navbar-container
-{
+.navbar-container {
+ padding: 1% 1%;
+ background-color: #64BE7B;
display: flex;
align-items: center;
justify-content: space-between;
- width: 100%;
- margin: auto;
- height: 45px;
}
-
-.line
-{
+.line {
height: 5px;
width: 100%;
background-color: #347945;
}
-h1
-{
+.logo {
+ display: flex;
+ position:absolute;
+ left:50%;
+ right:50%;
+ flex-direction: column;
+ align-items: center;
color: white;
+}
+
+.logo-h1 {
font-size: 18px;
+ font-weight: bold;
}
-h2 {
- color: white;
- font-weight: lighter;
- font-size: 12px;
- text-align: center;
+.logo-h2 {
+ font-weight:normal;
+ font-size: 13px;
}
-.icons
-{
- display: flex;
-}
-
-.logo
-{
- height: 45px;
+.icons {
display: flex;
align-items: center;
- justify-content: center;
+ flex-direction: row;
}
-.icon-container
-{
- height: 45px;
- width: 45px;
+
+.icon-container {
display: flex;
- align-items: center;
- justify-content: center;
+ align-items:center;
+ justify-content:center;
}
-
-li
-{
- display: flex;
- padding: 5px;
- text-align: center;
-
-}
-
-.menu-icon-list
-{
- position: relative;
+.menu-icon-list {
width: 24px;
height: 24px;
}
-.menu-icon-cross
-{
+.menu-icon-cross {
position: relative;
width: 30px;
height: 30px;
}
-.icon-list, .icon-cross
-{
+.icon-list, .icon-cross {
position: absolute;
-
-
}
-.sidebar.disable
-{
+.sidebar.disable {
display: none;
}
-.menu-icon-cross .icon-cross
-{
+.menu-icon-cross .icon-cross {
visibility: hidden;
}
-.menu-icon-list .icon-list
-{
+.menu-icon-list .icon-list {
visibility: hidden;
}
-a
-{
+a {
text-decoration: none;
}
-.nav-links
-{
+
+.nav-links {
color: black;
text-decoration: none;
-
}
-ul
-{
- padding: 5px;
+ul {
+ padding: 1% 1%;
+ display: flex;
+ flex-direction: column;
}
-.sidebar
-{
- width: 250px;
- height: 100%;
- border-right: black 1px solid;
- position: fixed;
- z-index: 1;
+li:hover {
+ border-radius: 40px;
+ background-color: #F0FAF3;
+}
+
+li {
+ display: flex;
+ flex-direction:row;
+ align-items: center;
+ justify-content: center;
+}
+
+
+.sidebar {
+ width: 100%;
+ border-bottom: #347945 2px solid;
+ position: absolute;
background-color: white;
}
-.sidebar-icon
-{
- display: flex;
+.sidebar-icon {
+ padding: 0.5%;
+ display:flex;
align-items: center;
- justify-content: center;
+
}
-.sidebar-text
-{
+.sidebar-text {
display: flex;
align-items: center;
- justify-content: center;
- padding-left:10px ;
+ padding: 0.5%;
}
+
+
+
+@media screen and (max-width: 416px) {
+ .logo-h1 {
+ font-size: 16px;
+ }
+
+ .logo-h2{
+ font-size:12px;
+ }
+}
+
+@media screen and (min-width: 801px) {
+ .logo-h1 {
+ font-size: 20px;
+ }
+
+ .logo-h2 {
+ font-size: 14px;
+ }
+
+}
\ No newline at end of file
diff --git a/highneed_react/src/components/NavBar.js b/highneed_react/src/components/NavBar.js
index 7d9afa4..3690d9c 100644
--- a/highneed_react/src/components/NavBar.js
+++ b/highneed_react/src/components/NavBar.js
@@ -1,101 +1,109 @@
-import React, {useState} from 'react'
-import {Link} from 'react-router-dom';
+import React, { useState } from 'react'
+import { Link } from 'react-router-dom';
import './NavBar.css';
function NavBar() {
const [click, setClick] = useState(false);
-
const handleClick = () => setClick(!click);
const closeMobileMenu = () => setClick(false);
-
return (
<>