Fakultas Ilmu Komputer UI
Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Menu
Open sidebar
PMPL
Class Project
Kape
Commits
36edf174
Commit
36edf174
authored
Nov 15, 2019
by
Hilya Auli Fesmia
Browse files
Merge branch '1606890933-125' into 'master'
1606890933 125 See merge request
!147
parents
91ddf4eb
eb13ad0c
Pipeline
#25090
passed with stages
in 17 minutes and 37 seconds
Changes
1
Pipelines
1
Show whitespace changes
Inline
Side-by-side
assets/js/components/VacancyList.jsx
View file @
36edf174
...
...
@@ -4,6 +4,7 @@ import Vacancy from './Vacancy';
import
CompanyVacancy
from
'
./CompanyVacancy
'
;
import
AdminVacancy
from
'
./AdminVacancy
'
;
import
Server
from
'
../lib/Server
'
;
import
moment
from
'
moment
'
;
export
default
class
VacancyList
extends
React
.
Component
{
...
...
@@ -34,10 +35,17 @@ export default class VacancyList extends React.Component {
{
key
:
3
,
text
:
'
3-5 juta
'
,
value
:
3
},
{
key
:
4
,
text
:
'
> 5 juta
'
,
value
:
4
},
],
vacancyStateFilter
:
0
,
vacancyStateFilterBy
:
[
{
key
:
0
,
text
:
'
Semua
'
,
value
:
0
},
{
key
:
1
,
text
:
'
Masih Menerima
'
,
value
:
1
},
{
key
:
2
,
text
:
'
Sudah Tutup
'
,
value
:
2
},
],
};
this
.
generateVacancies
=
this
.
generateVacancies
.
bind
(
this
);
this
.
updateStatus
=
this
.
updateStatus
.
bind
(
this
);
this
.
handleChangeSalaryFilter
=
this
.
handleChangeSalaryFilter
.
bind
(
this
);
this
.
handleChangeVacancyStateFilter
=
this
.
handleChangeVacancyStateFilter
.
bind
(
this
);
}
updateStatus
(
id
,
status
)
{
...
...
@@ -74,10 +82,26 @@ export default class VacancyList extends React.Component {
return
filteredVacancies
;
}
filterVacanciesBasedOnVacancyStatus
=
(
vacancies
)
=>
{
const
vacancyStateFilter
=
this
.
state
.
vacancyStateFilter
;
let
filteredVacancies
=
vacancies
;
if
(
vacancyStateFilter
===
1
)
{
filteredVacancies
=
filteredVacancies
.
filter
((
vacancy
)
=>
vacancy
.
props
.
data
.
close_time
>=
moment
().
format
());
}
else
if
(
vacancyStateFilter
===
2
)
{
filteredVacancies
=
filteredVacancies
.
filter
((
vacancy
)
=>
vacancy
.
props
.
data
.
close_time
<
moment
().
format
());
}
return
filteredVacancies
;
}
handleChangeSalaryFilter
=
(
e
,
data
)
=>
{
this
.
setState
({
salaryFilter
:
data
.
value
});
}
handleChangeVacancyStateFilter
=
(
e
,
data
)
=>
{
this
.
setState
({
vacancyStateFilter
:
data
.
value
});
}
generateVacancies
()
{
if
(
this
.
state
.
vacancies
.
length
===
0
)
{
return
(
...
...
@@ -114,6 +138,7 @@ export default class VacancyList extends React.Component {
});
}
vacancies
=
this
.
filterVacanciesBasedOnSalary
(
vacancies
);
vacancies
=
this
.
filterVacanciesBasedOnVacancyStatus
(
vacancies
);
return
vacancies
;
}
else
if
((
this
.
props
.
user
.
role
===
'
admin
'
&&
this
.
props
.
user
.
data
.
company
!=
null
)
||
this
.
props
.
user
.
role
===
'
company
'
)
{
...
...
@@ -147,6 +172,13 @@ export default class VacancyList extends React.Component {
options
=
{
this
.
state
.
salaryFilterBy
}
onChange
=
{
this
.
handleChangeSalaryFilter
}
/>
<
Dropdown
placeholder
=
'Filter Berdasarkan Batas Daftar Lowongan'
className
=
"dropdownApplicant"
selection
options
=
{
this
.
state
.
vacancyStateFilterBy
}
onChange
=
{
this
.
handleChangeVacancyStateFilter
}
/>
<
Grid
container
columns
=
"eleven"
doubling
style
=
{
{
display
:
'
block
'
}
}
>
<
Item
.
Group
relaxed
style
=
{
{
width
:
'
100%
'
}
}
>
{
this
.
generateVacancies
()
}
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment