Compare commits

...

4 Commits

Author SHA1 Message Date
Christoph Hagen
5bad3524cf Update Data.swift 2025-01-31 22:17:30 +01:00
Christoph Hagen
7471f06c52 Don't use links until bug is fixed 2023-12-05 14:47:52 +01:00
Christoph Hagen
828162ee36 Create .gitignore 2023-12-03 09:23:55 +01:00
Christoph Hagen
f1f770c859 Update city 2023-12-03 09:23:47 +01:00
3 changed files with 29 additions and 23 deletions

2
.gitignore vendored Normal file
View File

@@ -0,0 +1,2 @@
.DS_Store

View File

@@ -32,13 +32,19 @@ let cvInfoEnglish = CVInfo(
imageName: "Cover",
name: "Christoph Hagen",
tagLine: "Problem solver and creative mind with a favour for interdisciplinary work.",
place: "Würzburg, Germany",
ageText: "Age 32",
place: "Munich, Germany",
ageText: "Age 33",
web: "christophhagen.de",
email: "jobs@christophhagen.de",
phone: "Upon Request",
github: "github.com/christophhagen"),
work: .init(title: "Work experience", items: [
CareerStation(
time: "May 2024 - Present",
location: "Oberpfaffenhofen, Germany",
title: "German Aerospace Center",
subtitle: "Software Developer",
text: "Development of the mission control system of the LUNA moon simulator hall for robotic experiments and astronaut training."),
CareerStation(
time: "Jul 2020 - Jul 2023",
location: "Braunschweig, Germany",
@@ -57,12 +63,6 @@ let cvInfoEnglish = CVInfo(
title: "National Institute of Informatics",
subtitle: "Research Intern (Intelligent Robotics)",
text: "Topic: Concept Acquisition through interactions between Humans and Robots"),
CareerStation(
time: "Sep 2014 - Nov 2016",
location: "Würzburg, Germany",
title: "Julius-Maximilians-Universität",
subtitle: "Research & Teaching Assistant",
text: "Teaching exercises and robotics workshops, design of a modular robot arm connector.")
]),
education: .init(title: "Education", items: [
CareerStation(
@@ -124,13 +124,19 @@ let cvInfoGerman = CVInfo(
imageName: "Cover",
name: "Christoph Hagen",
tagLine: "Problemlöser und kreativer Kopf mit einer Vorliebe für interdisziplinäre Arbeit.",
place: "Würzburg",
ageText: "32 Jahre",
place: "München",
ageText: "33 Jahre",
web: "christophhagen.de",
email: "jobs@christophhagen.de",
phone: "Auf Anfrage",
github: "github.com/christophhagen"),
work: .init(title: "Berufserfahrung", items: [
CareerStation(
time: "Mai 2024 - Heute",
location: "Oberpfaffenhofen",
title: "Deutsches Zentrum für Luft- und Raumfahrt",
subtitle: "Softwareentwickler",
text: "Entwicklung des Missionskontrollsystems der LUNA Mondsimulationshalle für robotische Experimente und Astronautentraining."),
CareerStation(
time: "Jul 2020 - Jul 2023",
location: "Braunschweig",
@@ -148,13 +154,7 @@ let cvInfoGerman = CVInfo(
location: "Tokio, Japan",
title: "National Institute of Informatics",
subtitle: "Praktikant (Intelligente Robotik)",
text: "Thema: Concept Acquisition through interactions between Humans and Robots"),
CareerStation(
time: "Sep 2014 - Nov 2016",
location: "Würzburg",
title: "Julius-Maximilians-Universität",
subtitle: "Übungsleiter und wissenschaftlicher Mitarbeiter",
text: "Leitung von Übungen und Robotikworkshops, Entwurf einer modularen Verbindung für einen Roboterarm.")
text: "Thema: Concept Acquisition through interactions between Humans and Robots")
]),
education: .init(title: "Bildung", items: [
CareerStation(

View File

@@ -53,25 +53,29 @@ struct TopView: View {
lineWidth: style.imageBorderWidth)
VStack(alignment: .trailing) {
LeftImageLabel(systemSymbol: .globe) {
Link(info.web, destination: URL(string: "https://" + info.web)!)
Text(info.web)
//Link(info.web, destination: URL(string: "https://" + info.web)!)
}
.frame(maxHeight: style.iconHeight)
Spacer()
LeftImageLabel(systemSymbol: .envelope) {
Link(info.email, destination: URL(string: "mailto:" + info.email)!)
.disabled(!isValidEmail)
Text(info.email)
//Link(info.email, destination: URL(string: "mailto:" + info.email)!)
//.disabled(!isValidEmail)
}
.frame(maxHeight: style.iconHeight)
Spacer()
LeftImageLabel(systemSymbol: .phone) {
Link(info.phone, destination: URL(string: "tel:" + info.phone)!)
.disabled(!isValidPhoneNumber)
Text(info.phone)
//Link(info.phone, destination: URL(string: "tel:" + info.phone)!)
//.disabled(!isValidPhoneNumber)
}
.frame(maxHeight: style.iconHeight)
Spacer()
HStack(spacing: 0) {
Spacer()
Link(info.github, destination: URL(string: "https://" + info.github)!)
Text(info.github)
//Link(info.github, destination: URL(string: "https://" + info.github)!)
Image("Github")
.resizable()
.aspectRatio(1.0, contentMode: .fit)