Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
37 changes: 23 additions & 14 deletions backend/modules/team/controller.js
Original file line number Diff line number Diff line change
Expand Up @@ -491,23 +491,32 @@ controller.attachUserApplicant = (teams, userId) => {

controller.getTeamsForEvent = async (eventId, userId, page, size, filter) => {
let eventTeams = []
const query = { event: eventId }

if (filter) {
query.challenge = filter
}

const teamCount = await Team.countDocuments(query)

let teamCount = 0
if (page && size) {
eventTeams = await Team.find(query)
.sort({ createdAt: 'desc' })
.skip(parseInt(size * page))
.limit(parseInt(size))
if (filter) {
eventTeams = await Team.find({
event: eventId,
challenge: filter,
})
.sort({ createdAt: 'desc' })
.skip(parseInt(size * page))
.limit(parseInt(size))
teamCount = await eventTeams.length
} else {
eventTeams = await Team.find({
event: eventId,
})
.sort({ createdAt: 'desc' })
.skip(parseInt(size * page))
.limit(parseInt(size))
teamCount = await eventTeams.length
}
} else {
eventTeams = await Team.find(query).sort({ createdAt: 'desc' })
eventTeams = await Team.find({
event: eventId,
}).sort({ createdAt: 'desc' })
teamCount = await eventTeams.length
}

const teamsWithoutTeamCode = convertToObjectAndStripProperties(eventTeams, [
'code',
])
Expand Down
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
94 changes: 47 additions & 47 deletions frontend/src/components/Team/AdminTeamEdit/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -53,53 +53,53 @@ export default ({
// console.log("delete")
// }

// const handleRemove = useEffect(() => {
// console.log('delete', slug, teamData?.code, teamMemberToRemove)
// setLoading(true)
// dispatch(
// DashboardActions.organiserRemoveMemberFromTeam(
// slug,
// teamData.code,
// teamMemberToRemove,
// ),
// )
// .then(team => {
// console.log('removed succesfully.', team)
// dispatch(OrganiserActions.updateTeamsForEvent(slug))
// })
// .then(() => {
// console.log(
// 'teams updated',
// teamMembersArr.filter(
// t => t.profile.userId !== teamMemberToRemove,
// ),
// )
// setTeamMembersArr(
// teamMembersArr.filter(
// t => t.profile.userId !== teamMemberToRemove,
// ),
// )
// dispatch(
// SnackbarActions.success(
// 'removed ' +
// teamMemberToRemove +
// ' from team ' +
// teamData?.code,
// ),
// )
// })
// .catch(() => {
// dispatch(
// SnackbarActions.error(
// 'Something went wrong... please try again.',
// ),
// )
// })
// .finally(() => {
// setTeamMemberToRemove('')
// setLoading(false)
// })
// }, [teamMemberToRemove, slug, teamData?.code, dispatch])
const handleRemove = useEffect(() => {
console.log('delete', slug, teamData?.code, teamMemberToRemove)
setLoading(true)
dispatch(
DashboardActions.organiserRemoveMemberFromTeam(
slug,
teamData.code,
teamMemberToRemove,
),
)
.then(team => {
console.log('removed succesfully.', team)
dispatch(OrganiserActions.updateTeamsForEvent(slug))
})
.then(() => {
console.log(
'teams updated',
teamMembersArr.filter(
t => t.profile.userId !== teamMemberToRemove,
),
)
setTeamMembersArr(
teamMembersArr.filter(
t => t.profile.userId !== teamMemberToRemove,
),
)
dispatch(
SnackbarActions.success(
'removed ' +
teamMemberToRemove +
' from team ' +
teamData?.code,
),
)
})
.catch(() => {
dispatch(
SnackbarActions.error(
'Something went wrong... please try again.',
),
)
})
.finally(() => {
setTeamMemberToRemove('')
setLoading(false)
})
}, [teamMemberToRemove, slug, teamData?.code, dispatch])

const classes = junctionStyle()
return (
Expand Down
2 changes: 2 additions & 0 deletions frontend/src/components/Team/TeamHeader/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -21,8 +21,10 @@ export default ({
let challengeName = null
let event = useSelector(DashboardSelectors.event)
if (event === null) {
console.log('from organiser')
event = useSelector(OrganiserSelectors.event)
}
console.log('event', event)
if (teamChallenge && typeof teamChallenge === 'string') {
const challengeDetails = event.challenges.find(
challenge => challenge._id === teamChallenge,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -70,7 +70,7 @@ const ProjectTeam = React.memo(({ hiddenUsers, teamId, showFullTeam }) => {

useEffect(() => {
fetchTeamMembers()
}, [])
}, [fetchTeamMembers])

if (loading) {
return (
Expand Down
27 changes: 24 additions & 3 deletions frontend/src/components/projects/ProjectDetail/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -114,8 +114,30 @@ const ProjectDetail = ({
const classes = useStyles()
const [index, setIndex] = useState(0)
const [pause, setPause] = useState(true)
const dispatch = useDispatch()

if (!project) return null
const downloadFile = async fileDataString => {
const parsedValue = JSON.parse(fileDataString)
await dispatch(
DashboardActions.getFileForProject(
parsedValue.id,
parsedValue.filename,
),
)
}

const extractFileDetails = (fileDataString, toExtract) => {
const parsedValue = JSON.parse(fileDataString)
switch (toExtract) {
case 'filename':
return parsedValue.filename
case 'id':
return parsedValue.id
default:
return parsedValue.filename
}
}

const renderTrack = () => {
const value = find(event.tracks, t => t.slug === project.track)
Expand All @@ -128,7 +150,7 @@ const ProjectDetail = ({
return <Typography variant="subtitle1">{value.name}</Typography>
}

const renderChallenges = () => {
const renderChallenges = challenges => {
const values = filter(
event.challenges,
c => project.challenges.indexOf(c.slug) !== -1,
Expand Down Expand Up @@ -373,8 +395,7 @@ const ProjectDetail = ({
<Typography variant="subtitle1">
{answer.fieldType ===
'boolean'
? answer.value ===
'true'
? answer.value
? 'Yes'
: 'No'
: answer.value}
Expand Down
1 change: 0 additions & 1 deletion frontend/src/components/projects/ProjectsGrid/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,6 @@ const ProjectsGrid = ({
}
const fetchData = useCallback(async () => {
// TODO add loading indicator
//TODO find a way to get if a project has been reviewed by partner in a more efficient manner so it doesnt run for all project fetched
const projectScoreData = await Promise.allSettled(
projects.map(async project => {
return projectScoreLogic(project)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -82,7 +82,7 @@ export default () => {
return 'error'
}
case RegistrationStatuses.asObject.accepted.id: {
return 'theme_purple'
return 'success'
}
case RegistrationStatuses.asObject.acceptedToHub.id: {
return 'success'
Expand Down Expand Up @@ -207,7 +207,7 @@ export default () => {
return (
<Button
onClick={() =>
window.open(`${config.BASE_URL}/home`, '_blank')
window.open(config.CALENDAR_URL, '_blank')
}
color="theme_white"
variant="contained"
Expand Down
Loading