aboutsummaryrefslogtreecommitdiff
path: root/blackboard2gradebook.tcl
diff options
context:
space:
mode:
Diffstat (limited to 'blackboard2gradebook.tcl')
-rwxr-xr-xblackboard2gradebook.tcl22
1 files changed, 18 insertions, 4 deletions
diff --git a/blackboard2gradebook.tcl b/blackboard2gradebook.tcl
index 3686645..c0a88c6 100755
--- a/blackboard2gradebook.tcl
+++ b/blackboard2gradebook.tcl
@@ -178,10 +178,10 @@ foreach col [getColListFromAnyTable bdb export_table] {
set category [lindex $colInfo 1]
set maxScore [lindex $colInfo 2]
set scoreType [lindex $colInfo 3]
- if { $category ne "FinalExam" } {
- puts "skipping non FinalExam column: $col"
- continue
- }
+ #if { $category ne "FinalExam" } {
+ #puts "skipping non FinalExam column: $col"
+ #continue
+ #}
if { ![doesColumnExists $shortCol GradesTable] } {
veval [list AddColumnNonWeb $shortCol $category $maxScore]
}
@@ -193,6 +193,20 @@ foreach col [getColListFromAnyTable bdb export_table] {
# change percentage to score
set grade [ expr {$grade/100*$maxScore} ]
}
+ set oldGrade [SelectColValue4User $shortCol $locUname ]
+ #puts "$locUname: oldGrade \{$oldGrade\} --> $grade"
+ if { $oldGrade == $grade } { continue }
+ if { [regexp -nocase -- {excuse} $oldGrade] } {
+ # remote system do not handle excuses
+ # so local system take precedence
+ puts "not updating \"excused\" grade"
+ continue
+ }
+ if { $oldGrade != $grade } {
+ puts "TESTING: skipping grades which change"
+ puts "$locUname: $shortCol oldGrade \{$oldGrade\} --> $grade"
+ continue
+ }
veval [list UpdateColValue4UserNameNonWeb $shortCol $locUname $grade]
}
}