Skip to content

Commit 9176459

Browse files
committed
Merge branch 'develop' of https://github.com/anitab-org/bridge-in-tech-web into whybitUI
2 parents 85f77e7 + 2c888bf commit 9176459

File tree

8 files changed

+351
-148
lines changed

8 files changed

+351
-148
lines changed

public/index.html

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,8 @@
2626
work correctly both with client-side routing and a non-root public URL.
2727
Learn how to configure a non-root public URL by running `npm run build`.
2828
-->
29+
<script defer src="https://use.fontawesome.com/releases/v5.0.13/js/solid.js" integrity="sha384-tzzSw1/Vo+0N5UhStP3bvwWPq+uvzCMfrN1fEFe+xBmv1C/AtVX5K0uZtmcHitFZ" crossorigin="anonymous"></script>
30+
<script defer src="https://use.fontawesome.com/releases/v5.0.13/js/fontawesome.js" integrity="sha384-6OIrr52G08NpOFSZdxxz1xdNSndlD4vdcf/q2myIUVO0VsqaGHJsB0RaBE01VTOY" crossorigin="anonymous"></script>
2931
<title>Bridge In Tech</title>
3032
</head>
3133
<body>

src/Nav.css

Lines changed: 53 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,57 @@
1-
.Nav_container{
2-
display: flex;
3-
width: 100%;
4-
height: auto;
5-
align-items: center;
6-
justify-content: space-around;
7-
box-sizing: border-box;
8-
padding: 10px;
9-
border-bottom: 2px solid #54BCEB;
1+
@font-face {
2+
font-family: MetaProBold;
3+
src: url("./assets/fonts/MetaPro-Bold.otf") format("opentype");
104
}
115

12-
.Nav_box{
13-
display: flex;
14-
flex-flow: column;
15-
justify-content: center;
16-
align-items: center;
6+
@font-face {
7+
font-family: MetaProRegular;
8+
src: url("./assets/fonts/MetaPro-Normal.otf") format("opentype");
179
}
18-
.navbar-expand-lg .navbar-nav .dropdown-menu {
19-
position: static;
10+
.topnav{
11+
display: flex;
12+
height:auto;
13+
width: 100%;
14+
align-items: center;
15+
box-sizing: border-box;
16+
padding: 0px 20px;
17+
18+
19+
}
20+
li {
21+
font-family: MetaProBold;
22+
list-style: none;
23+
align-items: center;
24+
color: #000000;
25+
font-style: normal;
26+
font-weight: 500;
27+
font-size: 16px;
28+
line-height: 21px;
29+
padding: 20px 26px;
30+
text-align: center;
31+
white-space: nowrap;
2032
}
33+
.li{
34+
text-decoration: none;
35+
}
36+
.li_signIn{
37+
color:#4892C7;
38+
}
39+
40+
li:hover {
41+
text-decoration: underline blue;
42+
}
43+
44+
.active {
45+
width: 170px;
46+
height: 72px;
47+
background: #4892C7;
48+
margin:0;
49+
color: white;
50+
}
51+
.ml-auto{
52+
padding: 0px 0px;
53+
}
54+
.button-right{
55+
text-align: right;
56+
}
57+

src/Navigation.js

Lines changed: 52 additions & 122 deletions
Original file line numberDiff line numberDiff line change
@@ -1,131 +1,61 @@
1-
import React, { useContext } from "react";
2-
import { Navbar, Nav, Card, Accordion, Dropdown } from "react-bootstrap";
1+
import React, {useContext} from "react";
2+
import { Navbar, Nav} from "react-bootstrap";
33
import { Link } from "react-router-dom"
4-
import { AuthContext } from "./AuthContext";
5-
import DropdownMenu from "react-bootstrap/DropdownMenu";
6-
import Logo from "./assets/images/AnitaBLogo.png"
74
import './Nav.css'
5+
import { AuthContext } from "./AuthContext";
86

97

108
export default function Navigation() {
11-
const { user, isAuth, login, logout } = useContext(AuthContext);
12-
9+
const {isAuth, login, logout } = useContext(AuthContext)
1310
return (
14-
<div className="Nav_container">
15-
<div>
16-
<Nav.Link as={Link} to='/'>
17-
<img
18-
style={{margin:'10px 40px'}}
19-
className="d-inline-block align-top"
20-
src={Logo}
21-
width="150"
22-
height="50"
23-
alt="Logo"
24-
/>
25-
</Nav.Link>
26-
</div>
27-
<div className="Nav_box">
28-
<h2 style={{color:'#F89728'}}>Bridge In Tech</h2>
29-
<Navbar className="mr-auto" expand="lg" style={{borderTop:' 2px solid #54BCEB'}}>
30-
<Navbar.Toggle aria-controls="basic-navbar-nav" />
31-
<Navbar.Collapse id="basic-navbar-nav">
32-
<Nav className="mr-auto" id="mainNav">
33-
<Nav.Item>
34-
<Accordion style={{backgroundColor:'white'}}>
35-
<Card style={{backgroundColor:'white'}}>
36-
<Card.Header>
37-
<Accordion.Toggle as={Link} to="/" eventKey="0">Home</Accordion.Toggle>
38-
</Card.Header>
39-
<Accordion.Collapse eventKey="0">
40-
<Nav>
41-
<Nav.Link as={Link} to="/about">About</Nav.Link>
42-
<Nav.Link as={Link} to="/benefit">Benefit</Nav.Link>
43-
<Nav.Link href="https://anitab.org/contact/" target = "_blank" rel = "noopener noreferrer">Contact</Nav.Link>
44-
</Nav>
45-
</Accordion.Collapse>
46-
</Card>
47-
</Accordion>
48-
</Nav.Item>
49-
<Nav.Item>
50-
<Accordion>
51-
<Card>
52-
<Card.Header>
53-
<Accordion.Toggle as={Link} to="/members" eventKey="0">Members</Accordion.Toggle>
54-
</Card.Header>
55-
</Card>
56-
</Accordion>
57-
</Nav.Item>
58-
<Nav.Item>
59-
<Accordion>
60-
<Card>
61-
<Card.Header>
62-
<Accordion.Toggle as={Link} to="/organizations" eventKey="0">Organizations</Accordion.Toggle>
63-
</Card.Header>
64-
</Card>
65-
</Accordion>
66-
</Nav.Item>
67-
<Nav.Item>
68-
<Accordion>
69-
<Card>
70-
<Card.Header>
71-
<Accordion.Toggle as={Link} to="/portfolio" eventKey="0">My Space</Accordion.Toggle>
72-
</Card.Header>
73-
<Accordion.Collapse eventKey="0">
74-
<Nav>
75-
<Nav.Link as={Link} to="/portfolio">Portfolio</Nav.Link>
76-
<Dropdown>
77-
<Dropdown.Toggle variant="light">Profile</Dropdown.Toggle>
78-
<DropdownMenu>
79-
<Nav.Link as={Link} to="/personal-details" eventKey="0">Personal Details</Nav.Link>
80-
<Nav.Link as={Link} to="/additional-info" eventKey="0">Additional Info</Nav.Link>
81-
<Nav.Link as={Link} to="/personal-background" eventKey="0">Personal Background</Nav.Link>
82-
</DropdownMenu>
83-
</Dropdown>
84-
<Nav.Link as={Link} to="/request-history">Request History</Nav.Link>
85-
<Nav.Link as={Link} to="/organization-profile" eventKey="0">My Organization</Nav.Link>
86-
</Nav>
87-
</Accordion.Collapse>
88-
</Card>
89-
</Accordion>
90-
</Nav.Item>
91-
{!isAuth ?
92-
<>
93-
<Nav.Item>
94-
<Card>
95-
<Card.Header>
96-
<Accordion.Toggle as={Link} to="/register" eventKey="0">Register</Accordion.Toggle>
97-
</Card.Header>
98-
</Card>
99-
</Nav.Item>
100-
<Nav.Item>
101-
<Card>
102-
<Card.Header>
103-
<Accordion.Toggle as={Link} to="/login" eventKey="0" onClick={login}>Login</Accordion.Toggle>
104-
</Card.Header>
105-
</Card>
106-
</Nav.Item>
107-
</>
108-
:
109-
<Nav.Item>
110-
<Card>
111-
<Card.Header>
112-
<Accordion.Toggle as={Link} to="/" eventKey="0" onClick={logout}>Logout</Accordion.Toggle>
113-
</Card.Header>
114-
</Card>
115-
</Nav.Item>
116-
}
117-
{isAuth && <Nav.Item>
118-
<Card>
119-
<Card.Header>
120-
<Accordion.Toggle as={Link} to="/" eventKey="0">Welcome back, {user}!</Accordion.Toggle>
121-
</Card.Header>
122-
</Card>
123-
</Nav.Item>}
11+
<div className="topnav">
12+
<Navbar collapseOnSelect className="ml-auto" expand="lg">
13+
<div className="button-right">
14+
<Navbar.Toggle aria-controls='responsive-navbar-nav' />
15+
<Navbar.Collapse id="responsive-navbar-nav">
16+
<Nav className="ml-auto">
17+
18+
<Link to="/about" className="li">
19+
<li >About Us</li>
20+
</Link>
21+
<Link to="/" className="li">
22+
<li >Services</li>
23+
</Link>
24+
<Link to="/" className="li">
25+
<li >Membership</li>
26+
</Link>
27+
<Link to="/faq" className="li">
28+
<li>FAQs</li>
29+
</Link>
30+
<Link to="/aboutUs" className="li">
31+
<li>Blogs</li>
32+
</Link>
33+
<Link to="/getInTouch" className="li">
34+
<li>Contact Us</li>
35+
</Link>
36+
{!isAuth ?
37+
<>
38+
<Link to="/login" className="li" onClick={login}>
39+
<li className="li_signIn">Sign In</li>
40+
</Link>
41+
<Link as={Link} to="/register" className="li">
42+
<li className="active">Sign Up</li>
43+
</Link>
44+
</>
45+
:
46+
<Link to="/" className="li" onClick={logout}>
47+
<li className="li_signIn">Sign Out</li>
48+
</Link>}
49+
50+
12451
</Nav>
125-
</Navbar.Collapse>
126-
</Navbar>
127-
</div>
128-
</div>
52+
</Navbar.Collapse>
53+
</div>
54+
</Navbar>
55+
56+
</div>
57+
12958

130-
);
59+
60+
)
13161
}

src/Routes.js

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,22 +21,36 @@ import ProtectedRoute from "./ProtectedRoute";
2121
import AuthProvider from "./AuthContext";
2222
import Programs from "./organizations/Programs";
2323
import About from "./home/About";
24+
import ReadAboutUs from "./home/ReadAboutUs"
25+
import GetInTouch from "./home/GetInTouch"
2426
import Benefit from "./home/Benefit"
27+
import FAQ from "./home/FAQ"
2528
import Nav from "./Navigation"
29+
import Sidebar from "./sidebar/Sidebar"
2630

2731

2832
export default function Routes() {
2933
return (
3034
<Router basename="/bridge-in-tech-web">
3135
<AuthProvider>
36+
<Sidebar/>
3237
<Nav/>
3338
<Switch>
3439
<Route exact path="/">
3540
<Home />
3641
</Route>
42+
<Route exact path="/faq">
43+
<FAQ />
44+
</Route>
45+
<Route exact path="/getInTouch">
46+
<GetInTouch />
47+
</Route>
3748
<Route exact path="/about">
3849
<About />
3950
</Route>
51+
<Route exact path="/aboutUs">
52+
<ReadAboutUs />
53+
</Route>
4054
<Route exact path="/benefit">
4155
<Benefit />
4256
</Route>

src/assets/fonts/MetaPro-Bold.otf

121 KB
Binary file not shown.

src/register/Register.jsx

Lines changed: 20 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ export default function Register() {
1818
const [confirmPassword, setConfirmPassword] = useState("");
1919
const [isPasswordShown, setIsPasswordShown] = useState(false);
2020
const [showTermsModal,setShowTermsModal] = useState(false);
21-
21+
2222
const handleSubmit = async e => {
2323
e.preventDefault();
2424
if (confirmPassword === password){
@@ -28,7 +28,7 @@ export default function Register() {
2828
}
2929
new FormData(e.target).forEach((value, key) => {
3030
if (key === "terms_and_conditions_checked" || key === "need_mentoring" || key === "available_to_mentor")
31-
value = (value === "true") ? true : false
31+
value = (value === "true") ? true : false
3232
if (key !== "confirmPassword") payload[key] = value;
3333
});
3434
const requestRegister = {
@@ -58,7 +58,12 @@ export default function Register() {
5858
}
5959

6060
const validateName = e => {
61-
setIsValidName(e.target.checkValidity());
61+
if(e.target.value.trim()===''){
62+
setIsValidName(false);
63+
}
64+
else{
65+
setIsValidName(e.target.checkValidity());
66+
}
6267
};
6368
const validateUsername = e => {
6469
setIsValidUsername(e.target.checkValidity());
@@ -67,8 +72,13 @@ export default function Register() {
6772
setIsValidEmail(e.target.checkValidity());
6873
};
6974
const validatePassword = e => {
70-
setPassword(e.target.value)
71-
setIsValidPassword(e.target.checkValidity());
75+
if(e.target.value.trim()===''){
76+
setIsValidPassword(false);
77+
}
78+
else{
79+
setPassword(e.target.value)
80+
setIsValidPassword(e.target.checkValidity());
81+
}
7282
};
7383
const validateConfirmPassword = e => {
7484
setConfirmPassword(e.target.value)
@@ -149,7 +159,7 @@ export default function Register() {
149159
<p className="input-control">
150160

151161
<label id="password">Password :</label>
152-
<input aria-labelledby="password"
162+
<input aria-labelledby="password"
153163
className="field"
154164
type={isPasswordShown? "text" : "password"}
155165
name="password"
@@ -254,10 +264,10 @@ export default function Register() {
254264
</div>
255265
<div className="row button-group">
256266
<div className="col">
257-
<Link
258-
className="btn btn-primary"
259-
id="loginBtn"
260-
to="/login"
267+
<Link
268+
className="btn btn-primary"
269+
id="loginBtn"
270+
to="/login"
261271
role="button">
262272
Login
263273
</Link>

0 commit comments

Comments
 (0)