Skip to content

Commit fb60cf5

Browse files
committed
add honors pattern to sequence validation
1 parent 66a8d80 commit fb60cf5

2 files changed

Lines changed: 11 additions & 0 deletions

File tree

app/shared/helpers/sections.js

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,11 @@ export function nextSequenceNumber(course, sectionGroup, sections) {
3333
export function sequenceNumberToPattern(sequenceNumber) {
3434
if (sequenceNumber.length != 3) { return null; }
3535

36+
// Honors sequence
37+
if (/^0U\d$/.test(sequenceNumber)) {
38+
return sequenceNumber;
39+
}
40+
3641
// sequencePattern is letter based (example 'A02')
3742
if (sequenceNumber.toLowerCase() != sequenceNumber.toUpperCase()) {
3843
return sequenceNumber[0].toUpperCase();

app/shared/services/SectionService.js

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,13 +55,19 @@ class SectionService {
5555
if (isLetter(sequenceNumber[0])) {
5656
return sequenceNumber[0].toUpperCase() + sequenceNumber.slice(1);
5757
}
58+
59+
// Honors sequence
60+
if (/^0U\d$/.test(sequenceNumber)) { return sequenceNumber; }
5861
},
5962
isSequencePatternValid: function (sequencePattern) {
6063
// Must exist to be valid
6164
if (!sequencePattern) { return false; }
6265

6366
var stringSequenceNumber = String(sequencePattern);
6467

68+
// Honors sequence
69+
if (/^0U\d$/.test(sequencePattern)) { return true; }
70+
6571
// First character must be a letter or number
6672
if (isNumber(stringSequenceNumber[0]) == false && isLetter(stringSequenceNumber[0]) == false) { return false; }
6773

0 commit comments

Comments
 (0)