From: jj v. a. <we...@ma...> - 2005-07-22 22:53:17
|
Log Message: ----------- Say something useful if there is an error when creating a new set. Also fixed some indentation. Modified Files: -------------- webwork-modperl/lib/WeBWorK/ContentGenerator/Instructor: SetMaker.pm Revision Data ------------- Index: SetMaker.pm =================================================================== RCS file: /webwork/cvs/system/webwork-modperl/lib/WeBWorK/ContentGenerator/Instructor/SetMaker.pm,v retrieving revision 1.38 retrieving revision 1.39 diff -Llib/WeBWorK/ContentGenerator/Instructor/SetMaker.pm -Llib/WeBWorK/ContentGenerator/Instructor/SetMaker.pm -u -r1.38 -r1.39 --- lib/WeBWorK/ContentGenerator/Instructor/SetMaker.pm +++ lib/WeBWorK/ContentGenerator/Instructor/SetMaker.pm @@ -705,30 +705,35 @@ ##### Make a new local problem set } elsif ($r->param('new_local_set')) { - if ($r->param('new_set_name') !~ /^[\w.-]*$/) { + if ($r->param('new_set_name') !~ /^[\w .-]*$/) { $self->addbadmessage("The name ".$r->param('new_set_name')." is not a valid set name. Use only letters, digits, -, _, and ."); } else { my $newSetName = $r->param('new_set_name'); # if we want to munge the input set name, do it here + $newSetName =~ s/\s/_/g; $r->param('local_sets',$newSetName); my $newSetRecord = $db->getGlobalSet($newSetName); if (defined($newSetRecord)) { $self->addbadmessage("The set name $newSetName is already in use. Pick a different name if you would like to start a new set."); } else { # Do it! - $newSetRecord = $db->{set}->{record}->new(); - $newSetRecord->set_id($newSetName); - $newSetRecord->set_header(""); - $newSetRecord->hardcopy_header(""); - $newSetRecord->open_date(time()+60*60*24*7); # in one week - $newSetRecord->due_date(time()+60*60*24*7*2); # in two weeks - $newSetRecord->answer_date(time()+60*60*24*7*3); # in three weeks - eval {$db->addGlobalSet($newSetRecord)}; - $self->addgoodmessage("Set $newSetName has been created."); - my $selfassign = $r->param('selfassign') || ""; - $selfassign = "" if($selfassign =~ /false/i); # deal with javascript false - if($selfassign) { - $self->assignSetToUser($userName, $newSetRecord); - $self->addgoodmessage("Set $newSetName was assigned to $userName."); + $newSetRecord = $db->{set}->{record}->new(); + $newSetRecord->set_id($newSetName); + $newSetRecord->set_header(""); + $newSetRecord->hardcopy_header(""); + $newSetRecord->open_date(time()+60*60*24*7); # in one week + $newSetRecord->due_date(time()+60*60*24*7*2); # in two weeks + $newSetRecord->answer_date(time()+60*60*24*7*3); # in three weeks + eval {$db->addGlobalSet($newSetRecord)}; + if ($@) { + $self->addbadmessage("Problem creating set $newSetName<br> $@"); + } else { + $self->addgoodmessage("Set $newSetName has been created."); + my $selfassign = $r->param('selfassign') || ""; + $selfassign = "" if($selfassign =~ /false/i); # deal with javascript false + if($selfassign) { + $self->assignSetToUser($userName, $newSetRecord); + $self->addgoodmessage("Set $newSetName was assigned to $userName."); + } } } } |