Skip to content
This repository was archived by the owner on Mar 4, 2025. It is now read-only.

Commit 1a2babd

Browse files
author
Nick Litwin
committed
Trigger dropdown when track is selected
1 parent 2944cd8 commit 1a2babd

File tree

3 files changed

+31
-11
lines changed

3 files changed

+31
-11
lines changed

app/skill-picker/skill-picker.controller.js

Lines changed: 14 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
function SkillPickerController() {
99
var vm = this;
1010
vm.toggleSkill = toggleSkill;
11+
vm.selectTrack = selectTrack;
1112

1213
activate();
1314

@@ -21,7 +22,7 @@
2122
vm.skills = {
2223
design: ['Photoshop', 'Illustrator', 'InDesign', 'UX', 'UI', 'Sketch'],
2324
develop: ['Java', 'JavaScript', 'Ruby', 'Objective C', 'Python', 'SASS', 'HTML', 'CSS', 'LESS', 'C#', 'iOS', 'C++', 'Xcode', '.NET', 'PHP', 'MySQL', 'MongoDB'],
24-
data_science: ['Java', 'JavaScript', 'Ruby', 'Objective C', 'Python', 'SASS', 'HTML', 'CSS', 'LESS', 'C#', 'iOS', 'C++', 'Xcode', '.NET', 'PHP', 'MySQL', 'MongoDB']
25+
data_science: ['Java', 'Algorithms', 'Ruby', 'Objective C', 'Python', 'SASS', 'HTML', 'CSS', 'LESS', 'C#', 'iOS', 'C++', 'Xcode', '.NET', 'PHP', 'MySQL', 'MongoDB']
2526
};
2627

2728
vm.selectedSkills = {
@@ -38,14 +39,23 @@
3839
}
3940

4041
function toggleSkill(track, skill) {
41-
if (!vm.selectedSkills[track][skill]) {
42-
vm.selectedSkills[track][skill] = true;
42+
var selectedSkill = vm.selectedSkills[track][skill];
43+
if (!selectedSkill) {
44+
selectedSkill = true;
4345
vm.selectedSkills[track].numSkills += 1;
4446

4547
} else {
46-
vm.selectedSkills[track][skill] = false;
48+
selectedSkill = false;
4749
vm.selectedSkills[track].numSkills -= 1;
4850
}
4951
}
52+
53+
function selectTrack(track) {
54+
if (vm.tracks[track] === vm.dropdown[track]) {
55+
vm.dropdown[track] = !vm.dropdown[track];
56+
}
57+
58+
vm.tracks[track] = !vm.tracks[track];
59+
}
5060
}
5161
})();

app/skill-picker/skill-picker.jade

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -12,9 +12,9 @@
1212
.track-checkbox
1313
input(type="checkbox", id="checkbox-design-mobile", ng-checked="vm.tracks.design")
1414

15-
label(for="checkbox-design-mobile", ng-click="vm.tracks.design = !vm.tracks.design", ng-class="{ 'checked-track': vm.tracks.design }") #[span] Design
15+
label(for="checkbox-design-mobile", ng-click="vm.selectTrack('design')", ng-class="{ 'checked-track': vm.tracks.design }") #[span] Design
1616

17-
span.subscript [{{vm.selectedSkills.design.numSkills || 0}}]
17+
span.subscript [{{vm.selectedSkills.design.numSkills}}]
1818

1919
.dropdown-mobile(ng-click="vm.dropdown.design = !vm.dropdown.design")
2020
i.fa(ng-class="{'fa-caret-down': !vm.dropdown.design, 'fa-caret-up': vm.dropdown.design}")
@@ -27,9 +27,9 @@
2727
.track-checkbox
2828
input(type="checkbox", id="checkbox-develop-mobile", ng-checked="vm.tracks.develop")
2929

30-
label(for="checkbox-develop-mobile", ng-click="vm.tracks.develop = !vm.tracks.develop", ng-class="{ 'checked-track': vm.tracks.develop }") #[span] Development
30+
label(for="checkbox-develop-mobile", ng-click="vm.selectTrack('develop')", ng-class="{ 'checked-track': vm.tracks.develop }") #[span] Development
3131

32-
span.subscript [{{vm.selectedSkills.develop.numSkills || 0}}]
32+
span.subscript [{{vm.selectedSkills.develop.numSkills}}]
3333

3434
.dropdown-mobile(ng-click="vm.dropdown.develop = !vm.dropdown.develop")
3535
i.fa(ng-class="{'fa-caret-down': !vm.dropdown.develop, 'fa-caret-up': vm.dropdown.develop}")
@@ -41,16 +41,16 @@
4141
.track-checkbox
4242
input(type="checkbox", id="checkbox-data-science-mobile", ng-checked="vm.tracks.data_science")
4343

44-
label(for="checkbox-data-science-mobile", ng-click="vm.tracks.data_science = !vm.tracks.data_science", ng-class="{ 'checked-track': vm.tracks.data_science }") #[span] Data Science
44+
label(for="checkbox-data-science-mobile", ng-click="vm.selectTrack('data_science')", ng-class="{ 'checked-track': vm.tracks.data_science }") #[span] Data Science
4545

46-
span.subscript [{{vm.selectedSkills.data_science.numSkills || 0}}]
46+
span.subscript [{{vm.selectedSkills.data_science.numSkills}}]
4747

4848
.dropdown-mobile(ng-click="vm.dropdown.data_science = !vm.dropdown.data_science")
4949
i.fa(ng-class="{'fa-caret-down': !vm.dropdown.data_science, 'fa-caret-up': vm.dropdown.data_science}")
5050

5151
.track-skills(ng-show="vm.dropdown.data_science")
5252
.track-skill(ng-repeat="skill in vm.skills.data_science", ng-click="vm.toggleSkill('data_science', skill)", ng-class="{'skill-selected': vm.selectedSkills.data_science[skill]}") {{skill}}
5353

54-
p Please pick at least one track, you can always change it later.
54+
p.reminder Please pick at least one track, you can always change it later.
5555

5656
button(type="button", ng-class="{'enabled-button': vm.tracks.design || vm.tracks.develop || vm.tracks.data_science}") Done

assets/css/skill-picker/skill-picker.scss

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
display: flex;
55
flex-direction: column;
66
justify-content: center;
7+
align-items: center;
78

89
h1 {
910
margin-bottom: 20px;
@@ -15,6 +16,7 @@
1516
p {
1617
font-size: 15px;
1718
padding: 5px 20px;
19+
max-width: 440px;
1820
}
1921

2022
.track-picker {
@@ -87,6 +89,10 @@
8789
}
8890

8991
.mobile {
92+
@media only screen and (min-width: 960px) {
93+
display: none;
94+
}
95+
9096
.dropdown-mobile {
9197
width: 55px;
9298
height: 40px;
@@ -124,6 +130,10 @@
124130
}
125131
}
126132

133+
.reminder {
134+
margin-top: 5px;
135+
}
136+
127137
button {
128138
@include ui-submit-button;
129139

0 commit comments

Comments
 (0)