@@ -640,47 +640,22 @@ export const getGradingOverviews = async (
640640 }
641641 const gradingOverviews = await resp . json ( ) ;
642642
643- return {
644- count : gradingOverviews . count ,
645- data : gradingOverviews . data . map ( ( overview : any ) => {
646- const gradingOverview : GradingOverview = {
647- assessmentId : overview . assessment . id ,
648- assessmentNumber : overview . assessment . assessmentNumber ,
649- assessmentName : overview . assessment . title ,
650- assessmentType : overview . assessment . type ,
651- studentId : overview . student ? overview . student . id : - 1 ,
652- studentName : overview . student ? overview . student . name : undefined ,
653- studentNames : overview . team
654- ? overview . team . team_members . map ( ( member : { name : any } ) => member . name )
655- : undefined ,
656- studentUsername : overview . student ? overview . student . username : undefined ,
657- studentUsernames : overview . team
658- ? overview . team . team_members . map ( ( member : { username : any } ) => member . username )
659- : undefined ,
660- submissionId : overview . id ,
661- submissionStatus : overview . status ,
662- groupName : overview . student ? overview . student . groupName : '-' ,
663- groupLeaderId : overview . student ? overview . student . groupLeaderId : undefined ,
664- isGradingPublished : overview . isGradingPublished ,
665- progress : backendParamsToProgressStatus (
666- overview . assessment . isManuallyGraded ,
667- overview . isGradingPublished ,
668- overview . status ,
669- overview . gradedCount ,
670- overview . assessment . questionCount
671- ) ,
672- questionCount : overview . assessment . questionCount ,
673- gradedCount : overview . gradedCount ,
674- // XP
675- initialXp : overview . xp ,
676- xpAdjustment : overview . xpAdjustment ,
677- currentXp : overview . xp + overview . xpAdjustment ,
678- maxXp : overview . assessment . maxXp ,
679- xpBonus : overview . xpBonus
680- } ;
681- return gradingOverview ;
682- } )
683- } ;
643+ return respToGradingOverviews ( gradingOverviews ) ;
644+ } ;
645+
646+ /*
647+ * GET /courses/{courseId}/admin/grading/all_submissions
648+ */
649+ export const getAllGradingOverviews = async ( tokens : Tokens ) : Promise < GradingOverviews | null > => {
650+ const resp = await request ( `${ courseId ( ) } /admin/grading/all_submissions` , 'GET' , {
651+ ...tokens
652+ } ) ;
653+ if ( ! resp ) {
654+ return null ; // invalid accessToken _and_ refreshToken
655+ }
656+ const gradingOverviews = await resp . json ( ) ;
657+
658+ return respToGradingOverviews ( gradingOverviews ) ;
684659} ;
685660
686661/*
@@ -1556,6 +1531,50 @@ export function* handleResponseError(resp: Response | null): any {
15561531 yield call ( showWarningMessage , respText ) ;
15571532}
15581533
1534+ const respToGradingOverviews = ( gradingOverviews : any ) : GradingOverviews => {
1535+ return {
1536+ count : gradingOverviews . count ,
1537+ data : gradingOverviews . data . map ( ( overview : any ) => {
1538+ const gradingOverview : GradingOverview = {
1539+ assessmentId : overview . assessment . id ,
1540+ assessmentNumber : overview . assessment . assessmentNumber ,
1541+ assessmentName : overview . assessment . title ,
1542+ assessmentType : overview . assessment . type ,
1543+ studentId : overview . student ? overview . student . id : - 1 ,
1544+ studentName : overview . student ? overview . student . name : undefined ,
1545+ studentNames : overview . team
1546+ ? overview . team . team_members . map ( ( member : { name : any } ) => member . name )
1547+ : undefined ,
1548+ studentUsername : overview . student ? overview . student . username : undefined ,
1549+ studentUsernames : overview . team
1550+ ? overview . team . team_members . map ( ( member : { username : any } ) => member . username )
1551+ : undefined ,
1552+ submissionId : overview . id ,
1553+ submissionStatus : overview . status ,
1554+ groupName : overview . student ? overview . student . groupName : '-' ,
1555+ groupLeaderId : overview . student ? overview . student . groupLeaderId : undefined ,
1556+ isGradingPublished : overview . isGradingPublished ,
1557+ progress : backendParamsToProgressStatus (
1558+ overview . assessment . isManuallyGraded ,
1559+ overview . isGradingPublished ,
1560+ overview . status ,
1561+ overview . gradedCount ,
1562+ overview . assessment . questionCount
1563+ ) ,
1564+ questionCount : overview . assessment . questionCount ,
1565+ gradedCount : overview . gradedCount ,
1566+ // XP
1567+ initialXp : overview . xp ,
1568+ xpAdjustment : overview . xpAdjustment ,
1569+ currentXp : overview . xp + overview . xpAdjustment ,
1570+ maxXp : overview . assessment . maxXp ,
1571+ xpBonus : overview . xpBonus
1572+ } ;
1573+ return gradingOverview ;
1574+ } )
1575+ } ;
1576+ } ;
1577+
15591578const courseId : ( ) => string = ( ) => {
15601579 const id = store . getState ( ) . session . courseId ;
15611580 if ( id ) {
0 commit comments