diff --git a/development-system/README.md b/development-system/README.md index 9f9afb7..a579916 100644 --- a/development-system/README.md +++ b/development-system/README.md @@ -29,6 +29,9 @@ npm install npm run build ``` +**Dann die Seite öffnen:** +http://localhost:8080/perspektivwerk/ + ## Abgrenzung zur Originalseite Die genaue Contao-, PHP- und Template-Version der öffentlichen Seite ist nicht verlässlich aus dem ausgelieferten HTML ableitbar. Das Setup bildet daher die wahrscheinlichste Komponentenfamilie nach; es ist kein Dump der Produktivinstallation. IONOS/Hosting, Matomo-Konfiguration, Inhalte, Templates und Erweiterungen müssen bei Bedarf separat ergänzt werden. diff --git a/development-system/package-lock.json b/development-system/package-lock.json new file mode 100644 index 0000000..e84c283 --- /dev/null +++ b/development-system/package-lock.json @@ -0,0 +1,95 @@ +{ + "name": "perspektivwerk-booking-frontend", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "perspektivwerk-booking-frontend", + "dependencies": { + "bootstrap": "^5.3.3", + "jquery": "^3.7.1", + "slick-carousel": "^1.8.1" + }, + "devDependencies": { + "@types/jquery": "^3.5.32", + "typescript": "^5.7.2" + } + }, + "node_modules/@popperjs/core": { + "version": "2.11.8", + "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.8.tgz", + "integrity": "sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==", + "license": "MIT", + "peer": true, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/popperjs" + } + }, + "node_modules/@types/jquery": { + "version": "3.5.34", + "resolved": "https://registry.npmjs.org/@types/jquery/-/jquery-3.5.34.tgz", + "integrity": "sha512-3m3939S3erqmTLJANS/uy0B6V7BorKx7RorcGZVjZ62dF5PAGbKEDZK1CuLtKombJkFA2T1jl8LAIIs7IV6gBQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/sizzle": "*" + } + }, + "node_modules/@types/sizzle": { + "version": "2.3.10", + "resolved": "https://registry.npmjs.org/@types/sizzle/-/sizzle-2.3.10.tgz", + "integrity": "sha512-TC0dmN0K8YcWEAEfiPi5gJP14eJe30TTGjkvek3iM/1NdHHsdCA/Td6GvNndMOo/iSnIsZ4HuuhrYPDAmbxzww==", + "dev": true, + "license": "MIT" + }, + "node_modules/bootstrap": { + "version": "5.3.8", + "resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-5.3.8.tgz", + "integrity": "sha512-HP1SZDqaLDPwsNiqRqi5NcP0SSXciX2s9E+RyqJIIqGo+vJeN5AJVM98CXmW/Wux0nQ5L7jeWUdplCEf0Ee+tg==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/twbs" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/bootstrap" + } + ], + "license": "MIT", + "peerDependencies": { + "@popperjs/core": "^2.11.8" + } + }, + "node_modules/jquery": { + "version": "3.7.1", + "resolved": "https://registry.npmjs.org/jquery/-/jquery-3.7.1.tgz", + "integrity": "sha512-m4avr8yL8kmFN8psrbFFFmB/If14iN5o9nw/NgnnM+kybDJpRsAynV2BsfpTYrTRysYUdADVD7CkUUizgkpLfg==", + "license": "MIT" + }, + "node_modules/slick-carousel": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/slick-carousel/-/slick-carousel-1.8.1.tgz", + "integrity": "sha512-XB9Ftrf2EEKfzoQXt3Nitrt/IPbT+f1fgqBdoxO3W/+JYvtEOW6EgxnWfr9GH6nmULv7Y2tPmEX3koxThVmebA==", + "license": "MIT", + "peerDependencies": { + "jquery": ">=1.8.0" + } + }, + "node_modules/typescript": { + "version": "5.9.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.9.3.tgz", + "integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==", + "dev": true, + "license": "Apache-2.0", + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + } + } +} diff --git a/development-system/public/.htaccess b/development-system/public/.htaccess index 17b7b7f..21ea5b8 100644 --- a/development-system/public/.htaccess +++ b/development-system/public/.htaccess @@ -26,6 +26,10 @@ RewriteCond %{HTTP:Authorization} . RewriteRule ^ - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}] + # Static mockup used during local booking UI development. + RewriteRule ^perspektivwerk/?$ perspektivwerk/index.html [L] + RewriteRule ^(?:index\.html)?$ perspektivwerk/index.html [L] + # Redirect to URI without front controller to prevent duplicate content # (with and without `/index.php`). Only do this redirect on the initial # rewrite by Apache and not on subsequent cycles. Otherwise, we would get an diff --git a/development-system/public/perspektivwerk/index.html b/development-system/public/perspektivwerk/index.html new file mode 100644 index 0000000..b28ca4c --- /dev/null +++ b/development-system/public/perspektivwerk/index.html @@ -0,0 +1,26 @@ + + + + + + + PerspektivWerk | SUFW Dresden + + + + + +
+
+ +

PerspektivWerk – Brücke zwischen Diagnostik, Begleitung und betrieblicher Praxis

Unser Fachpersonal arbeitet mit Ihnen gemeinsam daran, Ihre aktuelle Lebenssituation zu verstehen. Ziel ist es, aus den Informationen individuelle und zu Ihnen passende Wege ins Arbeitsleben sichtbar zu machen.

Dazu gehört es, herauszufinden, welche Herausforderungen Sie im Alltag bestreiten müssen und wo es Unterstützungsbedarf gibt. Vor allem aber auch, wo Ihre Fähigkeiten, Interessen und Entwicklungsmöglichkeiten liegen. Dabei arbeiten wir eng mit den beratenden Fachkräften der Agentur für Arbeit und des Jobcenters zusammen.

+
Wir sind für Sie da

Unser Team, bestehend aus sozialpädagogischen, pädagogischen und psychologischen Mitarbeiterinnen und Mitarbeitern, unterstützt Ihren Prozess der beruflichen Orientierung. Wir arbeiten eng mit den Bearbeiterinnen und Beratern der Agentur für Arbeit, dem Jobcenter und weiteren Beratungsstellen zusammen.

Die Teilnahme am PerspektivWerk ist kostenlos. Sie bestimmen, an welchen Angeboten Sie teilnehmen.

Beratungsgespräch im PerspektivWerk
+

Wer kann zu uns kommen?

Menschen zwischen 15 und 65 Jahren, die sich beruflich neu orientieren möchten, beim Einstieg Unterstützung suchen oder ihre Möglichkeiten gemeinsam klären wollen.

1. Orientierung & Ersteinschätzung

Sozialpädagogische und psychologische Module helfen dabei, persönliche Situation, Motivation, Belastbarkeit und Stärken einzuschätzen.

2. Praktische Erprobung & Belastungstest

Arbeitsproben und praktische Erprobungen machen fachliche, soziale und arbeitsbezogene Kompetenzen sichtbar.

3. Auswertung & Perspektiventwicklung

Wir führen die Ergebnisse zusammen und entwickeln konkrete, realistische nächste Schritte.

+

Sie haben Fragen zu dieser Maßnahme?

Haben Sie Interesse an unserem Angebot, melden Sie sich bei uns. Wir beraten Sie gern vorab zu den weiteren Schritten.

Kontakt: (0176) 60328929 · perspektivwerk@sufw.de · Dresdner Straße 16, 01326 Dresden

+
+ + + diff --git a/development-system/public/perspektivwerk/media/logo-perspektivwerk.jpg b/development-system/public/perspektivwerk/media/logo-perspektivwerk.jpg new file mode 100644 index 0000000..c0451de Binary files /dev/null and b/development-system/public/perspektivwerk/media/logo-perspektivwerk.jpg differ diff --git a/development-system/public/perspektivwerk/media/logo-sufw.png b/development-system/public/perspektivwerk/media/logo-sufw.png new file mode 100644 index 0000000..b4e4f0b Binary files /dev/null and b/development-system/public/perspektivwerk/media/logo-sufw.png differ diff --git a/development-system/public/perspektivwerk/media/perspektivwerk-psych.jpg b/development-system/public/perspektivwerk/media/perspektivwerk-psych.jpg new file mode 100644 index 0000000..0321553 Binary files /dev/null and b/development-system/public/perspektivwerk/media/perspektivwerk-psych.jpg differ diff --git a/development-system/public/perspektivwerk/media/wir-sind-fuer-sie-da.svg b/development-system/public/perspektivwerk/media/wir-sind-fuer-sie-da.svg new file mode 100644 index 0000000..f557a5b --- /dev/null +++ b/development-system/public/perspektivwerk/media/wir-sind-fuer-sie-da.svg @@ -0,0 +1,13 @@ + + + + + + + + + + diff --git a/development-system/public/perspektivwerk/styles.css b/development-system/public/perspektivwerk/styles.css new file mode 100644 index 0000000..3471685 --- /dev/null +++ b/development-system/public/perspektivwerk/styles.css @@ -0,0 +1 @@ +:root{--sufw-green:#159a34;--ink:#1d1d1b;--body:#5a5a5a;--line:#d7d7d7;--pale:#efefef}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--body);font:16px/1.5 Arial,"Helvetica Neue",sans-serif}.page-width{width:min(1240px,calc(100% - 52px));margin:auto}.skip-link{position:absolute;left:-10000px}.skip-link:focus{left:1rem;top:1rem;z-index:10;padding:.5rem;background:#fff}.site-header{background:#fff}.header-top{min-height:66px;display:flex;align-items:center;justify-content:space-between}.brand img{display:block;width:196px;height:auto}.quick-links{display:flex;align-items:center;gap:14px;font-size:14px}.quick-links a{color:var(--ink);text-decoration:none}.quick-links strong{color:var(--sufw-green);font-size:18px}.round-icon{display:grid;place-items:center;width:29px;height:29px;border-radius:50%;background:var(--sufw-green);color:#fff;font-size:12px}.search{height:34px;width:215px;border:1px solid #cbd0d6;display:flex;align-items:center;padding-left:8px}.search input{border:0;outline:0;width:100%;font:inherit}.search b{font-size:23px;color:#777;padding:0 6px}.main-nav{height:62px;display:flex;justify-content:flex-end;align-items:center}.main-nav a{padding:2px 18px;border-right:1px solid var(--line);color:var(--ink);font-size:18px;line-height:1.22;text-decoration:none}.main-nav a:last-child{border:0}.main-nav .active{font-weight:700}.green-rule{height:10px;background:var(--sufw-green)}.breadcrumb{padding:18px 0 34px;display:flex;gap:5px;flex-wrap:wrap;font-size:14px}.breadcrumb a{color:var(--sufw-green)}.intro{text-align:center;padding-bottom:58px}.intro h1{margin:0 auto 34px;max-width:850px;color:var(--sufw-green);font-size:20px;line-height:1.3}.project-logo{width:240px;display:block;margin:0 auto 25px}.intro-copy{max-width:900px;margin:auto;color:#272727;font-size:18px;line-height:1.48}.intro-copy p{margin:0 0 18px}.team-section{display:grid;grid-template-columns:44% 56%;align-items:stretch}.team-copy{padding:50px max(8vw,calc((100vw - 1100px)/2));padding-right:7vw;background:var(--sufw-green);color:#fff;font-size:18px;line-height:1.5}.team-copy img{display:block;width:min(280px,100%);margin-bottom:25px}.team-image img{display:block;width:100%;height:100%;min-height:490px;object-fit:cover}.content{padding:70px 0}.content-grid{display:grid;grid-template-columns:1fr 1fr;gap:46px 80px}.content h2,.booking h2,.contact h2{color:var(--sufw-green);font-size:22px;margin:0 0 13px}.content h2::before{content:"●";font-size:23px;margin-right:14px}.content p{margin:0}.booking{padding:35px 0 85px}.booking-heading{border-top:7px solid var(--sufw-green);padding-top:25px;display:flex;justify-content:space-between;align-items:end;gap:20px}.booking-heading p{margin:0}.booking-tabs{display:flex;border-bottom:1px solid var(--line)}.booking-tabs button{font:inherit;color:var(--body);background:#fff;border:0;border-bottom:4px solid transparent;padding:11px 16px;cursor:pointer}.booking-tabs .is-active{border-color:var(--sufw-green);color:var(--ink);font-weight:bold}.booking-list{display:grid;gap:10px;margin-top:24px}.booking-card{display:flex;justify-content:space-between;align-items:center;gap:20px;border:1px solid var(--line);border-left:6px solid var(--sufw-green);padding:15px 20px;background:#fff}.booking-card h3{margin:0;color:var(--ink);font-size:17px}.booking-card p{margin:3px 0 0}.button{display:inline-block;background:var(--sufw-green);color:#fff;text-decoration:none;padding:9px 13px;font-weight:bold;font-size:14px;white-space:nowrap}.contact{border-top:1px solid var(--line);padding:50px 0 70px}.contact a{color:var(--sufw-green)}footer{background:var(--sufw-green);padding:25px 0;color:#fff}@media(max-width:900px){.quick-links>a,.quick-links strong,.round-icon{display:none}.main-nav{justify-content:flex-start;overflow:auto}.main-nav a{font-size:15px;padding:2px 12px;white-space:nowrap}.team-section{grid-template-columns:1fr}.team-copy{padding:42px 28px}.team-image img{min-height:auto}.content-grid{gap:35px}.booking-heading{align-items:start;flex-direction:column}}@media(max-width:560px){.page-width{width:min(100% - 28px,1240px)}.header-top{min-height:72px}.brand img{width:155px}.search{width:130px}.main-nav{height:50px}.breadcrumb{padding:15px 0 24px}.intro h1{font-size:18px}.intro-copy{font-size:16px}.content-grid{grid-template-columns:1fr}.booking-card{display:block}.booking-card .button{margin-top:12px}.booking-tabs{width:100%}.booking-tabs button{padding:10px 9px;font-size:14px}} diff --git a/development-system/tsconfig.json b/development-system/tsconfig.json index 4c8d263..030ba79 100644 --- a/development-system/tsconfig.json +++ b/development-system/tsconfig.json @@ -5,7 +5,7 @@ "moduleResolution": "Bundler", "strict": true, "noEmitOnError": true, - "outDir": "public/assets/js" + "outDir": "public/perspektivwerk/js" }, "include": ["src/**/*.ts"] }