@@ -19,6 +19,8 @@ import { useQueryParameters } from '../helpers/query-parameters';
1919
2020import markdown from 'markdown-builder' ;
2121
22+ const noneAvailable = "None available during the period covered by this review." ;
23+
2224const MeritReportPage = ( ) => {
2325 const { state, dispatch } = useContext ( AppContext ) ;
2426
@@ -256,49 +258,58 @@ const MeritReportPage = () => {
256258 let text = markdown . headers . h1 ( "Current Information" ) ;
257259 text += years . toFixed ( 1 ) + " years\n\n" ;
258260 text += markdown . headers . h2 ( "Biographical Notes" ) ;
259- text += currentInfo . biography + "\n\n" ;
261+ text += ( currentInfo . biography ? currentInfo . biography :
262+ noneAvailable ) + "\n\n" ;
260263 return text ;
261264 } ;
262265
263266 const markdownKudos = ( data ) => {
264267 const kudosList = data . kudos ;
265268 let text = markdown . headers . h1 ( "Kudos" ) ;
266- for ( let kudos of kudosList ) {
267- const date = dateFromArray ( kudos . dateCreated ) ;
268- text += kudos . message + "\n\n" ;
269- text += " " +
270- markdown . emphasis . i ( "Submitted on " + formatDate ( date ) +
271- ", by " + kudos . sender ) +
272- "\n\n\n" ;
269+ if ( kudosList . length > 0 ) {
270+ for ( let kudos of kudosList ) {
271+ const date = dateFromArray ( kudos . dateCreated ) ;
272+ text += kudos . message + "\n\n" ;
273+ text += " " +
274+ markdown . emphasis . i ( "Submitted on " + formatDate ( date ) +
275+ ", by " + kudos . sender ) +
276+ "\n\n\n" ;
277+ }
278+ } else {
279+ text += noneAvailable + "\n\n" ;
273280 }
274281 return text ;
275282 } ;
276283
277284 const markdownReviewsImpl = ( title , feedbackList , listMembers ) => {
278285 let text = markdown . headers . h1 ( title ) ;
279- for ( let feedback of feedbackList ) {
280- const members = getUniqueMembers ( feedback . answers ) ;
281- for ( let member of Object . keys ( members ) ) {
282- if ( listMembers ) {
283- text += member + ": " ;
284- }
285- text += "Submitted - " + formatDate ( members [ member ] ) + "\n\n" ;
286- }
287- text += "\n" ;
288-
289- const questions = getUniqueQuestions ( feedback . answers ) ;
290- for ( let question of Object . keys ( questions ) ) {
291- text += markdown . headers . h4 ( question ) + "\n" ;
292- for ( let answer of questions [ question ] ) {
286+ if ( feedbackList . length > 0 ) {
287+ for ( let feedback of feedbackList ) {
288+ const members = getUniqueMembers ( feedback . answers ) ;
289+ for ( let member of Object . keys ( members ) ) {
293290 if ( listMembers ) {
294- text += answer [ 0 ] + ": " ;
291+ text += member + ": " ;
295292 }
296- text += answer [ 1 ] + "\n\n" ;
293+ text += "Submitted - " + formatDate ( members [ member ] ) + "\n\n" ;
297294 }
298295 text += "\n" ;
296+
297+ const questions = getUniqueQuestions ( feedback . answers ) ;
298+ for ( let question of Object . keys ( questions ) ) {
299+ text += markdown . headers . h4 ( question ) + "\n" ;
300+ for ( let answer of questions [ question ] ) {
301+ if ( listMembers ) {
302+ text += answer [ 0 ] + ": " ;
303+ }
304+ text += answer [ 1 ] + "\n\n" ;
305+ }
306+ text += "\n" ;
307+ }
299308 }
309+ text += "\n" ;
310+ } else {
311+ text += noneAvailable + "\n\n" ;
300312 }
301- text += "\n" ;
302313 return text ;
303314 }
304315
@@ -347,31 +358,35 @@ const MeritReportPage = () => {
347358 const markdownFeedback = ( data ) => {
348359 let text = markdown . headers . h1 ( "Feedback" ) ;
349360 const feedbackList = data . feedback ;
350- for ( let feedback of feedbackList ) {
351- text += markdown . headers . h2 ( "Template: " + feedback . name ) ;
352- const members = getUniqueMembers ( feedback . answers ) ;
353- for ( let member of Object . keys ( members ) ) {
354- text += member + ": " + formatDate ( members [ member ] ) + "\n\n" ;
355- }
356- text += "\n" ;
357-
358- const questions = getUniqueQuestions ( feedback . answers ) ;
359- for ( let question of Object . keys ( questions ) ) {
360- text += markdown . headers . h4 ( question ) + "\n" ;
361- for ( let answer of questions [ question ] ) {
362- text += answer [ 0 ] + ": " + answer [ 1 ] + "\n\n" ;
361+ if ( feedbackList . length > 0 ) {
362+ for ( let feedback of feedbackList ) {
363+ text += markdown . headers . h2 ( "Template: " + feedback . name ) ;
364+ const members = getUniqueMembers ( feedback . answers ) ;
365+ for ( let member of Object . keys ( members ) ) {
366+ text += member + ": " + formatDate ( members [ member ] ) + "\n\n" ;
363367 }
364368 text += "\n" ;
369+
370+ const questions = getUniqueQuestions ( feedback . answers ) ;
371+ for ( let question of Object . keys ( questions ) ) {
372+ text += markdown . headers . h4 ( question ) + "\n" ;
373+ for ( let answer of questions [ question ] ) {
374+ text += answer [ 0 ] + ": " + answer [ 1 ] + "\n\n" ;
375+ }
376+ text += "\n" ;
377+ }
365378 }
379+ text += "\n" ;
380+ } else {
381+ text += noneAvailable + "\n\n" ;
366382 }
367- text += "\n" ;
368383 return text ;
369384 } ;
370385
371386 const markdownTitleHistory = ( data ) => {
372387 // Get the position history sorted latest to earliest
373388 const posHistory = data . positionHistory . sort ( ( a , b ) => {
374- for ( let i = 0 ; i < a . length ; i ++ ) {
389+ for ( let i = 0 ; i < a . date . length ; i ++ ) {
375390 if ( a . date [ i ] != b . date [ i ] ) {
376391 return b . date [ i ] - a . date [ i ] ;
377392 }
0 commit comments