1- import React , { useRef , useState , useEffect } from 'react' ;
2- import { Container , Header } from 'semantic-ui-react' ;
3- import '../css/mainpagecss.css' ;
4- import data from '../data/finalData.json' ;
5- import OrganisationCard from './OrganisationCard' ;
6- import AdvancedSearch from './AdvancedSearch' ;
7- import Footer from './Footer' ;
8- import { VerticleButton as ScrollUpButton } from 'react-scroll-up-button' ;
9- import LaunchingComponent from './LaunchingComponent' ;
10- import { Link } from 'react-router-dom'
11- import { sortAppearances , sortTotalProjects , sortAverageProjects } from './SortFunctions' ;
1+ import React , { useRef , useState , useEffect } from "react" ;
2+ import { Container , Header } from "semantic-ui-react" ;
3+ import "../css/mainpagecss.css" ;
4+ import data from "../data/finalData.json" ;
5+ import OrganisationCard from "./OrganisationCard" ;
6+ import AdvancedSearch from "./AdvancedSearch" ;
7+ import Footer from "./Footer" ;
8+ import { VerticleButton as ScrollUpButton } from "react-scroll-up-button" ;
9+ import LaunchingComponent from "./LaunchingComponent" ;
10+ import { Link } from "react-router-dom" ;
11+ import {
12+ sortAppearances ,
13+ sortTotalProjects ,
14+ sortAverageProjects ,
15+ } from "./SortFunctions" ;
1216
13- const descendingSortByYear = ( resultList ) => {
14- return resultList . sort ( ( a , b ) => {
15- return ( b . year . length - a . year . length )
16- } ) ;
17- }
17+ const descendingSortByYear = ( resultList ) => {
18+ return resultList . sort ( ( a , b ) => {
19+ return b . year . length - a . year . length ;
20+ } ) ;
21+ } ;
1822
19- const Home = ( { bookmarked, setBookmarked} ) => {
23+ const Home = ( { bookmarked, setBookmarked } ) => {
2024 const [ validList , setValidList ] = useState ( [ ] ) ;
2125 const [ results , setResults ] = useState ( validList ) ;
22- const [ sortParameter , setSortParameter ] = useState ( 0 )
23- const [ sortAscendingOrder , setSortAscendingOrder ] = useState ( false )
26+ const [ sortParameter , setSortParameter ] = useState ( 0 ) ;
27+ const [ sortAscendingOrder , setSortAscendingOrder ] = useState ( false ) ;
2428 const [ displayLauncher , setDisplayLauncher ] = useState ( true ) ;
2529
2630 const reRenderLauncher = ( ) => {
@@ -32,25 +36,23 @@ const Home = ({bookmarked, setBookmarked}) => {
3236 useEffect ( ( ) => {
3337 // setSortAscendingOrder(false);
3438 var res = [ ] ;
35- switch ( sortParameter ) {
36- case 0 :
39+ switch ( sortParameter ) {
40+ case 0 :
3741 res = validList . sort ( sortAppearances ) ;
3842 break ;
39- case 1 :
43+ case 1 :
4044 res = validList . sort ( sortTotalProjects ) ;
4145 break ;
42- case 2 :
46+ case 2 :
4347 res = validList . sort ( sortAverageProjects ) ;
4448 break ;
4549 }
46- if ( ! sortAscendingOrder ) {
47- setResults ( [ ...res ] )
48- }
49- else {
50- setResults ( [ ...res . reverse ( ) ] )
50+ if ( ! sortAscendingOrder ) {
51+ setResults ( [ ...res ] ) ;
52+ } else {
53+ setResults ( [ ...res . reverse ( ) ] ) ;
5154 }
52- } , [ sortParameter , validList , sortAscendingOrder ] )
53-
55+ } , [ sortParameter , validList , sortAscendingOrder ] ) ;
5456
5557 const buildSearchList = ( search , filter ) => {
5658 setDisplayLauncher ( false ) ;
@@ -70,7 +72,6 @@ const Home = ({bookmarked, setBookmarked}) => {
7072 return false ;
7173 } )
7274 ) ;
73-
7475 } else if ( filter === 1 ) {
7576 setValidList (
7677 data . filter ( ( org ) => org . name . toLowerCase ( ) . includes ( sanitisedSearch ) )
@@ -99,31 +100,48 @@ const Home = ({bookmarked, setBookmarked}) => {
99100
100101 return (
101102 < React . Fragment >
102- < Container id = 'mainContainer' fluid >
103- < Header textAlign = 'center' >
104- < h1 id = 'mainHeader' onClick = { reRenderLauncher } > GSoC Analyser </ h1 >
103+ < Container id = "mainContainer" fluid >
104+ < Header textAlign = "center" >
105+ < h1 id = "mainHeader" onClick = { reRenderLauncher } >
106+ { " " }
107+ GSoC Analzser{ " " }
108+ </ h1 >
105109 </ Header >
106- < Link to = "/bookmarks" className = "nav-button" > Bookmarks</ Link >
107-
108- < AdvancedSearch ref = { AdvancedSearchRef } buildSearchList = { buildSearchList } sortParameter = { sortParameter } setSortParameter = { setSortParameter } sortAscendingOrder = { sortAscendingOrder } setSortAscendingOrder = { setSortAscendingOrder } />
110+ < Link to = "/bookmarks" className = "nav-button" >
111+ Bookmarks
112+ </ Link >
113+
114+ < AdvancedSearch
115+ ref = { AdvancedSearchRef }
116+ buildSearchList = { buildSearchList }
117+ sortParameter = { sortParameter }
118+ setSortParameter = { setSortParameter }
119+ sortAscendingOrder = { sortAscendingOrder }
120+ setSortAscendingOrder = { setSortAscendingOrder }
121+ />
109122 { displayLauncher && < LaunchingComponent /> }
110123 { ! displayLauncher && (
111124 < Container fluid style = { { paddingTop : 50 } } >
112125 < Header
113- style = { { color : ' white' , fontSize : 50 } }
114- textAlign = ' center'
115- as = 'h1'
126+ style = { { color : " white" , fontSize : 50 } }
127+ textAlign = " center"
128+ as = "h1"
116129 >
117130 Search Results: { validList . length }
118131 </ Header >
119132 < br />
120133 < br />
121134 { results . map ( ( org , index ) => (
122- < OrganisationCard key = { index } orgData = { org } bookmarked = { bookmarked } setBookmarked = { setBookmarked } />
135+ < OrganisationCard
136+ key = { index }
137+ orgData = { org }
138+ bookmarked = { bookmarked }
139+ setBookmarked = { setBookmarked }
140+ />
123141 ) ) }
124142 </ Container >
125143 ) }
126- < ScrollUpButton style = { { color : ' white' } } />
144+ < ScrollUpButton style = { { color : " white" } } />
127145 < Footer />
128146 </ Container >
129147 </ React . Fragment >
0 commit comments