diff --git a/src/app/app.component.css b/src/app/app.component.css index 545e7d9620..52e7af8520 100644 --- a/src/app/app.component.css +++ b/src/app/app.component.css @@ -1,4 +1,5 @@ .box { display: flex; padding: 10px; + justify-content: space-evenly; } \ No newline at end of file diff --git a/src/app/app.component.ts b/src/app/app.component.ts index a118c1b9a6..de4313a85c 100644 --- a/src/app/app.component.ts +++ b/src/app/app.component.ts @@ -7,4 +7,6 @@ import { Component } from '@angular/core'; }) export class AppComponent { title = 'mission-planning-dashboard'; + editingRocket: boolean = false; + editingMission: boolean = false; } diff --git a/src/app/crew/crew.component.css b/src/app/crew/crew.component.css index e69de29bb2..b5c22cbdf4 100644 --- a/src/app/crew/crew.component.css +++ b/src/app/crew/crew.component.css @@ -0,0 +1,25 @@ + +li:hover { + cursor: pointer; +} + +.displayBox { + height: 275px; + width: auto; +} + +img { + width: auto; + height: 100px; + margin-left: auto; + margin-right: auto; + display: block; +} + +h3 { + text-align: center; +} + +.selected { + color:lightseagreen; +} \ No newline at end of file diff --git a/src/app/crew/crew.component.html b/src/app/crew/crew.component.html index ace2dd399e..db098b2e41 100644 --- a/src/app/crew/crew.component.html +++ b/src/app/crew/crew.component.html @@ -1,6 +1,15 @@ -

Crew

- + +
+

Candidates

+ +
+
+
+

Crew Full

+
    +
  1. {{astronaut.name}}
  2. +
+ +
\ No newline at end of file diff --git a/src/app/crew/crew.component.ts b/src/app/crew/crew.component.ts index 05734a7b51..35fbac3060 100644 --- a/src/app/crew/crew.component.ts +++ b/src/app/crew/crew.component.ts @@ -7,15 +7,38 @@ import { Component, OnInit } from '@angular/core'; }) export class CrewComponent implements OnInit { - crew: object[] = [ - {name: "Eileen Collins", firstMission: false}, - {name: "Mae Jemison", firstMission: false}, - {name: "Ellen Ochoa", firstMission: true} + inCrew: boolean = false; + crew: object[] = []; + + candidates: object[] = [ + {name: "Sally Ride", photo: 'https://handlers.education.launchcode.org/static/images/sally-ride.jpg'}, + {name: "Mae Jemison", photo: 'https://handlers.education.launchcode.org/static/images/mae-jemison.jpg'}, + {name: "Ellen Ochoa", photo: 'https://handlers.education.launchcode.org/static/images/ellen-ochoa.jpg'}, + {name: "Frederick Gregory", photo: 'https://handlers.education.launchcode.org/static/images/frederick-gregory.jpg'}, + {name: "Guion Bluford", photo: 'https://handlers.education.launchcode.org/static/images/guion-bluford.jpg'}, + {name: "Kjell Lindgren", photo: 'https://handlers.education.launchcode.org/static/images/kjell-lindgren.jpg'}, + {name: "Jeanette Epps", photo: 'https://handlers.education.launchcode.org/static/images/jeanette-epps.jpg'} ]; + constructor() { } ngOnInit() { } + addCrewMember(member: object) { + if (this.crew.includes(member)) { + this.inCrew = true; + } else { + this.inCrew = false; + } + + if (this.inCrew) { + let index = this.crew.indexOf(member); + this.crew.splice(index, 1); + } else if (!this.inCrew && this.crew.length < 3) { + this.crew.push(member); + } + } + } diff --git a/src/app/equipment/equipment.component.css b/src/app/equipment/equipment.component.css index e69de29bb2..3ced30ee4c 100644 --- a/src/app/equipment/equipment.component.css +++ b/src/app/equipment/equipment.component.css @@ -0,0 +1,25 @@ +.displayBox { + height: 275px; + width: auto; +} + +button { + margin: 2px; + cursor: pointer; +} + +h3 { + text-align: center; +} + +.active { + background: gold; +} + +.nearMaxMass { + color:red; + font-style: italic; + font-weight: bold; +} + + diff --git a/src/app/equipment/equipment.component.html b/src/app/equipment/equipment.component.html index 750e16ba32..b525cd0287 100644 --- a/src/app/equipment/equipment.component.html +++ b/src/app/equipment/equipment.component.html @@ -1,7 +1,23 @@ -

Equipment

- +
+

Equipment

+
    +
  1. + + {{item.name}}, {{item.mass}} kg +
  2. +
+
+ +
+ +
+

Cargo Hold: {{cargoHold.length}}/{{maxItems}} Spots Filled

+
    +
  1. {{equipment.name}}
  2. +
+

Mass in Hold: {{cargoMass}} kg

+

Mass Budget Remaining: {{maximumAllowedMass - cargoMass}} kg

+ +
diff --git a/src/app/equipment/equipment.component.ts b/src/app/equipment/equipment.component.ts index 3999cba700..cc956387b8 100644 --- a/src/app/equipment/equipment.component.ts +++ b/src/app/equipment/equipment.component.ts @@ -6,10 +6,31 @@ import { Component, OnInit } from '@angular/core'; styleUrls: ['./equipment.component.css'] }) export class EquipmentComponent implements OnInit { + equipmentItems: object[] = [ + {name: 'Duct Tape', mass: 0.5}, + {name: 'Space Camera', mass: 20}, + {name: 'Food', mass: 150}, + {name: 'Oxygen Tanks', mass: 400}, + {name: 'AE-35 Unit', mass: 5}, + {name: 'ISS Supplies', mass: 800}, + {name: 'Water', mass: 250}, + {name: 'Satellite', mass: 1200}, + {name: 'R2 Unit', mass: 32} + ]; + + cargoHold: object[] = []; + cargoMass: number = 0; + maximumAllowedMass: number = 2000; + maxItems: number = 10; constructor() { } ngOnInit() { } + addItem(item : object) : boolean { + this.cargoHold.push(item); + this.cargoMass += item['mass']; + return this.maximumAllowedMass - this.cargoMass <= 200; + } } diff --git a/src/app/experiments/experiments.component.css b/src/app/experiments/experiments.component.css index e69de29bb2..d24991d07d 100644 --- a/src/app/experiments/experiments.component.css +++ b/src/app/experiments/experiments.component.css @@ -0,0 +1,8 @@ +.displayBox { + height: 275px; + width: auto; +} + +h3 { + text-align: center; +} \ No newline at end of file diff --git a/src/app/experiments/experiments.component.html b/src/app/experiments/experiments.component.html index 1726c855d6..94ac3083a8 100644 --- a/src/app/experiments/experiments.component.html +++ b/src/app/experiments/experiments.component.html @@ -1,6 +1,8 @@ -

Experiments

+
+

Possible Experiments

+
+
diff --git a/src/app/experiments/experiments.component.ts b/src/app/experiments/experiments.component.ts index 10d9968687..9152dcb6ac 100644 --- a/src/app/experiments/experiments.component.ts +++ b/src/app/experiments/experiments.component.ts @@ -6,6 +6,7 @@ import { Component, OnInit } from '@angular/core'; styleUrls: ['./experiments.component.css'] }) export class ExperimentsComponent implements OnInit { + experiments: string[] = ['Moon soil sample', 'Plant growth in orbit', 'Human bone density changes', 'Water droplet podcast for grades K-5', 'Satellite launch']; constructor() { } diff --git a/src/app/header/header.component.css b/src/app/header/header.component.css index ce042c9c43..407b3de69a 100644 --- a/src/app/header/header.component.css +++ b/src/app/header/header.component.css @@ -1,3 +1,13 @@ .editable-text { cursor: pointer; } + +h2 { + text-align: center; + color: brown; +} + +h1 { + text-align: center; + text-decoration: underline; +} \ No newline at end of file diff --git a/src/app/header/header.component.html b/src/app/header/header.component.html index 7fe994bb6d..9e4a111d6a 100644 --- a/src/app/header/header.component.html +++ b/src/app/header/header.component.html @@ -1,6 +1,6 @@

Mission Planning Dashboard

-

+

Mission Name: {{ missionName }} @@ -9,6 +9,15 @@

-

+

-

Carrier Rocket: {{ rocketName }}

+

Carrier Rocket: + + {{ rocketName }} + + + + + + +

diff --git a/src/app/header/header.component.ts b/src/app/header/header.component.ts index 6e12a6906b..a1aeccae2b 100644 --- a/src/app/header/header.component.ts +++ b/src/app/header/header.component.ts @@ -7,9 +7,10 @@ import { Component, OnInit } from '@angular/core'; }) export class HeaderComponent implements OnInit { - missionName: string = "Mars 2030"; - rocketName: string = "Plasma Max"; + missionName: string = "LC Angular 3"; + rocketName: string = "ICAN"; editingMission: boolean = false; + editingRocket: boolean = false; constructor() { } @@ -21,4 +22,9 @@ export class HeaderComponent implements OnInit { this.editingMission = false; } + updateRocket(updatedName: string) { + this.rocketName = updatedName; + this.editingRocket = false; + } + }