diff --git a/package-lock.json b/package-lock.json
index 520d6671..db22306d 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -15773,12 +15773,6 @@
"jiti": "bin/jiti.js"
}
},
- "node_modules/jquery": {
- "version": "3.7.1",
- "resolved": "https://registry.npmjs.org/jquery/-/jquery-3.7.1.tgz",
- "integrity": "sha512-m4avr8yL8kmFN8psrbFFFmB/If14iN5o9nw/NgnnM+kybDJpRsAynV2BsfpTYrTRysYUdADVD7CkUUizgkpLfg==",
- "peer": true
- },
"node_modules/js-tokens": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz",
diff --git a/package.json b/package.json
index ecc04c31..43d98ed8 100644
--- a/package.json
+++ b/package.json
@@ -42,6 +42,7 @@
"react-scroll-parallax": "^1.3.5",
"react-scrollable-anchor": "^0.6.1",
"react-select": "^2.1.2",
+ "react-select-country-list": "^2.2.3",
"react-spinners": "^0.9.0",
"react-toggle": "^4.1.1",
"react-window": "^1.8.5",
diff --git a/public/tailwind-output-f23.css b/public/tailwind-output-f23.css
index 528f452f..1ae93a10 100644
--- a/public/tailwind-output-f23.css
+++ b/public/tailwind-output-f23.css
@@ -715,6 +715,10 @@ video {
bottom: 8rem;
}
+.left-32 {
+ left: 8rem;
+}
+
.left-4 {
left: 1rem;
}
@@ -799,6 +803,14 @@ video {
top: 95rem;
}
+.right-24 {
+ right: 6rem;
+}
+
+.right-28 {
+ right: 7rem;
+}
+
.z-0 {
z-index: 0;
}
@@ -920,6 +932,10 @@ video {
margin-top: 8rem;
}
+.mr-24 {
+ margin-right: 6rem;
+}
+
.block {
display: block;
}
@@ -1393,6 +1409,10 @@ video {
padding-right: 0.5rem;
}
+.pr-20 {
+ padding-right: 5rem;
+}
+
.pr-4 {
padding-right: 1rem;
}
@@ -1425,6 +1445,10 @@ video {
padding-top: 2rem;
}
+.pr-24 {
+ padding-right: 6rem;
+}
+
.text-left {
text-align: left;
}
diff --git a/src/components/Dashboard/Forms/UserProfileForm/ProfileCards/About.jsx b/src/components/Dashboard/Forms/UserProfileForm/ProfileCards/About.jsx
index 6b70fb51..6ac19b9b 100644
--- a/src/components/Dashboard/Forms/UserProfileForm/ProfileCards/About.jsx
+++ b/src/components/Dashboard/Forms/UserProfileForm/ProfileCards/About.jsx
@@ -10,6 +10,8 @@ import { ProfileType } from "../../../../Profile";
import PropTypes from "prop-types";
import { PulseLoader } from "react-spinners";
+import countryList from "react-select-country-list";
+
class About extends Component {
// constructor(props) {
@@ -50,7 +52,7 @@ class About extends Component {
update_user.gender = this.state.user.gender;
update_user.ethnicity = this.state.user.ethnicity;
update_user.hackathon_count = this.state.user.hackathon_count;
-
+ update_user.country_of_residence = this.state.user.country_of_residence;
this.props.profile.Set(update_user)
.then(res => {
this.setState({
@@ -92,7 +94,8 @@ class About extends Component {
required: { value: true, errorMessage: "Invalid first name" },
pattern: { value: "^[A-Za-z0-9]+$", errorMessage: "Invalid character" },
minLength: { value: 1, errorMessage: "Invalid length" },
- maxLength: { value: 100, errorMessage: "Invalid length" } }} />
+ maxLength: { value: 100, errorMessage: "Invalid length" }
+ }} />
+ maxLength: { value: 100, errorMessage: "Invalid length" }
+ }} />
@@ -117,8 +121,9 @@ class About extends Component {
value={user.phone_number}
onChange={(e) => { user.phone_number = e.target.value; this.updateUser(user); }}
validate={{
- required: { value: true, errorMessage: "Invalid number"},
- pattern: { value: "^[\\+]?[0-9]{0,3}?[-\\s\\.]?[(]?[0-9]{3}[)]?[-\\s\\.]?[0-9]{3}[-\\s\\.]?[0-9]{4,6}$", errorMessage: "Invalid number" } }} />
+ required: { value: true, errorMessage: "Invalid number" },
+ pattern: { value: "^[\\+]?[0-9]{0,3}?[-\\s\\.]?[(]?[0-9]{3}[)]?[-\\s\\.]?[0-9]{3}[-\\s\\.]?[0-9]{4,6}$", errorMessage: "Invalid number" }
+ }} />
@@ -160,7 +164,7 @@ class About extends Component {
+ validate={{ required: { value: true, errorMessage: "Invalid input" } }}>
+
+
+
+ { user.country_of_residence = e.value; this.updateUser(user); }}
+ options={countryList().getData()} />
+
+
+
{ user.hackathon_count = e.target.value; this.updateUser(user); }}
validate={{
required: { value: true, errorMessage: "Invalid hackathon count" },
- min: { value: 0, errorMessage: "Hackathon count must be non-negative" } }} />
+ min: { value: 0, errorMessage: "Hackathon count must be non-negative" }
+ }} />
{message}
+ type="submit"> {this.state.loading ?
: "Update"}
);
@@ -208,7 +226,7 @@ class About extends Component {
color: theme.disabled[0], padding: 5, minHeight: 35
};
let field = (text) => {
- return {(text) ? text : unanswered }
;
+ return {(text) ? text : unanswered}
;
};
return (
@@ -253,6 +271,10 @@ class About extends Component {
{field(user.ethnicity)}
+
+
+ {field(user.country_of_residence)}
+
{field(user.hackathon_count)}
diff --git a/src/components/Dashboard/Forms/UserProfileForm/ProfileCards/Questions.jsx b/src/components/Dashboard/Forms/UserProfileForm/ProfileCards/Questions.jsx
index 8b9bd7e1..17618017 100644
--- a/src/components/Dashboard/Forms/UserProfileForm/ProfileCards/Questions.jsx
+++ b/src/components/Dashboard/Forms/UserProfileForm/ProfileCards/Questions.jsx
@@ -123,14 +123,7 @@ class Questions extends Component {
value={user.short_answer}
onChange={(e) => { user.short_answer = e.target.value; this.updateUser(user); }} />
-
-
- { user.virtual_short_answer = e.target.value; this.updateUser(user); }} />
-
+
What are you hoping to experience at HackRU?
{field(user.short_answer)}
-
-
- {field(user.virtual_short_answer)}
-
{field(user.special_needs)}
diff --git a/src/components/_Landing/Landing.tsx b/src/components/_Landing/Landing.tsx
index e65eb83a..23998721 100644
--- a/src/components/_Landing/Landing.tsx
+++ b/src/components/_Landing/Landing.tsx
@@ -34,16 +34,26 @@ function LandingPage(props: any) {
/>
-
+
+
+
-
+
+
+
-
-
+
-
-
+
+
+
diff --git a/src/components/_Landing/sections/hero/Navbar.tsx b/src/components/_Landing/sections/hero/Navbar.tsx
index d486cf04..13f49f12 100644
--- a/src/components/_Landing/sections/hero/Navbar.tsx
+++ b/src/components/_Landing/sections/hero/Navbar.tsx
@@ -25,7 +25,6 @@ function MenuItem(props: { sectionName: string }) {
function OtherPageMenuItem(props: { sectionName: string }) {
const { sectionName } = props;
const history = useHistory();
-
return (
{({ active }) => (
@@ -48,7 +47,7 @@ function OtherPageMenuItem(props: { sectionName: string }) {
function CollapsedMenu() {
return (
-
+