Changeset 2e507a8 for client_app/src
- Timestamp:
- 01/12/21 21:10:56 (4 years ago)
- Branches:
- master
- Children:
- 47067ae
- Parents:
- a70db1a
- Location:
- client_app/src
- Files:
-
- 10 added
- 1 deleted
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
client_app/src/components/data/components/user_jobs.js
ra70db1a r2e507a8 1 1 import React from 'react'; 2 2 import { Redirect } from 'react-router-dom'; 3 import { Container, Card } from 'semantic-ui-react' 3 import { Container, Card } from 'semantic-ui-react'; 4 import Jobs from '../components/item_components/job_component'; 4 5 5 6 … … 7 8 var itemsArray = []; 8 9 9 if(props.userProfile.email!=null){ 10 props.userProfile.jobs.forEach(item => { 11 let obj = {} 12 obj.header = item.title; 13 obj.description = item.description + "\n" + "Contact: " + item.accountEmail; 14 if(item.accountType=="TEAM"){ 15 obj.meta = "Team: " + item.accountName + " / Salary: " + item.salary 16 }else{ 17 obj.meta = "Company: " + item.accountName + " / Salary: " + item.salary 18 } 19 20 itemsArray.push(obj); 21 }); 22 23 return( 24 <Container textAlign="left"> 25 <h1>Jobs for you!</h1> 26 <Card.Group items={itemsArray} /> 27 </Container> 28 ); 10 if(props.userProfile.type==="USER"){ 11 if(props.userProfile.email!=null){ 12 return( 13 <Container textAlign="left"> 14 <h1>Jobs for you!</h1> 15 {props.userProfile.jobs.map(item =>{ 16 return <Jobs 17 title={item.title} 18 description={item.description} 19 accountName={item.accountName} 20 accountEmail={item.accountEmail} 21 skills={item.skillsRequired} 22 type={props.userProfile.type} 23 /> 24 })} 25 </Container> 26 ); 27 } 29 28 } 30 29 -
client_app/src/components/data/profile.js
ra70db1a r2e507a8 1 1 import React from 'react'; 2 import UserDetails from "./components/ user_profile";2 import UserDetails from "./components/profiles/user_profile"; 3 3 import { Redirect } from "react-router-dom"; 4 import CompanyProfile from "./components/profiles/company_profile"; 5 import TeamProfile from "./components/profiles/team_profile"; 4 6 5 7 const Profile = (props) => { … … 17 19 } 18 20 21 if(props.userProfile.type==="COMPANY"){ 22 return ( 23 <CompanyProfile data={{ 24 email: props.userProfile.email, 25 name: props.userProfile.name, 26 address: props.userProfile.address 27 }}/> 28 ); 29 } 30 31 if(props.userProfile.type==="TEAM"){ 32 return ( 33 <TeamProfile data={{ 34 email: props.userProfile.email, 35 name: props.userProfile.name, 36 members: props.userProfile.members 37 }}/> 38 ); 39 } 40 19 41 return( 20 42 <Redirect to={"/login"}/> -
client_app/src/components/login/login.js
ra70db1a r2e507a8 31 31 <h1 style={{color: "red"}}>{props.error}</h1> 32 32 <Form onSubmit={onFormSubmit}> 33 <Form.Input id="email" name="email" type=' text' required fluid label='E-mail' placeholder='Enter e-mail.' onChange={handleCheck} />33 <Form.Input id="email" name="email" type='email' required fluid label='E-mail' placeholder='Enter e-mail.' onChange={handleCheck} /> 34 34 <Form.Input id="password" name="password" type='password' required fluid label='Password' placeholder='Enter password.' onChange={handleCheck} /> 35 35 <Form.Field -
client_app/src/components/main/App.js
ra70db1a r2e507a8 8 8 import UserLogin from "../../repository/login_repo"; 9 9 import UserJobs from "../data/components/user_jobs"; 10 import UserInternships from "../data/components/user_internships"; 11 import UserProjects from "../data/components/user_projects"; 12 import CompanyJobs from "../data/components/company_jobs"; 10 13 11 14 class App extends Component{ … … 23 26 return( 24 27 <Router> 25 <HeaderComp acc={this.state.currentUser.email} accType={this.state.currentUser.type} name={this.state.currentUser.name} />28 <HeaderComp acc={this.state.currentUser.email} accType={this.state.currentUser.type} name={this.state.currentUser.name} removeState={this.removeState}/> 26 29 <main> 27 <Route path={"/login"} render={() => <Login error={this.state.error} onCompleteForm={this.attemptLogin} loggedIn={this.state.logged}/>}/> 28 <Route path={"/profile"} render={() => <Profile userProfile={this.state.currentUser}/>}/> 29 <Route path={"/jobs"} render={() => <UserJobs userProfile={this.state.currentUser}/>}/> 30 <Route path={"/login"} render={() => <Login error={this.state.error} onCompleteForm={this.attemptLogin} loggedIn={this.state.logged}/>} /> 31 <Route path={"/profile"} render={() => <Profile userProfile={this.state.currentUser}/>} /> 32 <Route path={"/user/jobs"} render={() => <UserJobs userProfile={this.state.currentUser}/>} /> 33 <Route path={"/user/internships"} render={() => <UserInternships userProfile={this.state.currentUser}/>} /> 34 <Route path={"/user/projects"} render={() => <UserProjects userProfile={this.state.currentUser}/>} /> 35 <Route path={"/team/jobs"} /> 36 <Route path={"/team/projects"} /> 37 <Route path={"/company/jobs"} render={() => <CompanyJobs userProfile={this.state.currentUser} />}/> 38 <Route path={"/company/internships"}/> 39 <Route path={"/profile/edit"} /> 40 <Route path={"/job/edit"} /> 41 <Route path={"/internship/edit"}/> 42 <Route path={"/project/edit"} /> 43 <Route path={"/logout"} render={() => <Redirect to={"/login"}/>}/> 30 44 <Route path={"/"} render={() => <Redirect to={"/login"}/>}/> 31 45 </main> … … 33 47 ); 34 48 } 49 50 removeState = () => { 51 this.setState({ 52 logged: false, 53 error: null, 54 currentUser: {} 55 }) 56 } 57 35 58 36 59 attemptLogin = (email, password, type) => { -
client_app/src/components/template/header.js
ra70db1a r2e507a8 1 1 import React from 'react'; 2 2 import {Link} from "react-router-dom"; 3 import {Menu, MenuItem } from "semantic-ui-react";3 import {Menu, MenuItem } from "semantic-ui-react"; 4 4 5 5 … … 7 7 if(props.accType == null){ 8 8 return( 9 <Menu inverted position="right"> 10 <MenuItem as={Link} to='/login'> 9 <Menu inverted> 10 <MenuItem as={Link} to='/register/user'> 11 Register User 12 </MenuItem> 13 <MenuItem as={Link} to='/register/company'> 14 Register Company 15 </MenuItem> 16 <MenuItem as={Link} to='/register/team'> 17 Register Team 18 </MenuItem> 19 <MenuItem position="right" as={Link} to='/login'> 11 20 Login 12 21 </MenuItem> … … 16 25 if(props.accType==="COMPANY"){ 17 26 return( 18 <Menu inverted position="right">27 <Menu inverted> 19 28 <Menu.Item as={Link} to='/profile'> 20 29 Profile 21 30 </Menu.Item> 22 <Menu.Item as={Link} to='/ jobs'>31 <Menu.Item as={Link} to='/company/jobs'> 23 32 Jobs 24 33 </Menu.Item> 25 <Menu.Item as={Link} to='/ internships'>34 <Menu.Item as={Link} to='/company/internships'> 26 35 Internships 27 36 </Menu.Item> 37 <MenuItem onClick={props.removeState} position="right" as={Link} to='/logout'> 38 Logout 39 </MenuItem> 28 40 </Menu> 29 41 ); 30 42 }else if(props.accType==="TEAM"){ 31 43 return( 32 <Menu inverted position="right">33 <Menu.Item as={Link} to='/profile'>44 <Menu inverted> 45 <Menu.Item position="right" as={Link} to='/profile'> 34 46 Profile 35 47 </Menu.Item> 36 <Menu.Item as={Link} to='/ jobs'>48 <Menu.Item as={Link} to='/team/jobs'> 37 49 Jobs 38 50 </Menu.Item> 39 <Menu.Item as={Link} to='/ projects'>51 <Menu.Item as={Link} to='/team/projects'> 40 52 Projects 41 53 </Menu.Item> 54 <MenuItem onClick={props.removeState} position="right" as={Link} to='/logout'> 55 Logout 56 </MenuItem> 42 57 </Menu> 43 58 ); 44 59 }else if(props.accType==="USER"){ 45 60 return( 46 <Menu inverted position="right">61 <Menu inverted> 47 62 <Menu.Item as={Link} to='/profile'> 48 63 Profile 49 64 </Menu.Item> 50 <Menu.Item as={Link} to='/ jobs'>65 <Menu.Item as={Link} to='/user/jobs'> 51 66 Jobs 52 67 </Menu.Item> 53 <Menu.Item as={Link} to='/ internships'>68 <Menu.Item as={Link} to='/user/internships'> 54 69 Internships 55 70 </Menu.Item> 56 <Menu.Item as={Link} to='/ projects'>71 <Menu.Item as={Link} to='/user/projects'> 57 72 Projects 58 73 </Menu.Item> 59 <Menu.Item as={Link} to='/ search'>74 <Menu.Item as={Link} to='/user/search'> 60 75 Search 61 76 </Menu.Item> 77 <MenuItem onClick={props.removeState} position="right" as={Link} to='/logout'> 78 Logout 79 </MenuItem> 62 80 </Menu> 63 81 );
Note:
See TracChangeset
for help on using the changeset viewer.