[system] / trunk / webwork-modperl / lib / WeBWorK / ContentGenerator / Instructor / ProblemSetList.pm Repository:
ViewVC logotype

Diff of /trunk/webwork-modperl/lib/WeBWorK/ContentGenerator/Instructor/ProblemSetList.pm

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

Revision 1020 Revision 1404
28 28
29 if (defined($r->param('deleteSelected'))) { 29 if (defined($r->param('deleteSelected'))) {
30 foreach my $wannaDelete ($r->param('selectedSet')) { 30 foreach my $wannaDelete ($r->param('selectedSet')) {
31 $db->deleteGlobalSet($wannaDelete); 31 $db->deleteGlobalSet($wannaDelete);
32 } 32 }
33 } elsif (defined($r->param('scoreSelected'))) {
34
33 } elsif (defined($r->param('makeNewSet'))) { 35 }elsif (defined($r->param('makeNewSet'))) {
34 my $newSetRecord = $db->{set}->{record}->new(); 36 my $newSetRecord = $db->{set}->{record}->new();
35 my $newSetName = $r->param('newSetName'); 37 my $newSetName = $r->param('newSetName');
36 $newSetRecord->set_id($newSetName); 38 $newSetRecord->set_id($newSetName);
37 $newSetRecord->set_header(""); 39 $newSetRecord->set_header("");
38 $newSetRecord->problem_header(""); 40 $newSetRecord->problem_header("");
41 $newSetRecord->answer_date("0"); 43 $newSetRecord->answer_date("0");
42 eval {$db->addGlobalSet($newSetRecord)}; 44 eval {$db->addGlobalSet($newSetRecord)};
43 } 45 }
44} 46}
45 47
48sub path {
49 my ($self, $args) = @_;
50
51 my $ce = $self->{ce};
52 my $root = $ce->{webworkURLs}->{root};
53 my $courseName = $ce->{courseName};
54 return $self->pathMacro($args,
55 "Home" => "$root",
56 $courseName => "$root/$courseName",
57 'instructor' => "$root/$courseName/instructor",
58 'sets' => ''
59 );
60}
61
46sub title { 62sub title {
47 my $self = shift; 63 my $self = shift;
48 return "Instructor Tools - Problem Set List for ".$self->{ce}->{courseName}; 64 return "Instructor Tools - Problem Set List for ".$self->{ce}->{courseName};
49} 65}
50 66
51sub body { 67sub body {
52 warn "body\n";
53 my $self = shift; 68 my $self = shift;
54 my $r = $self->{r}; 69 my $r = $self->{r};
55 my $db = $self->{db}; 70 my $db = $self->{db};
56 my $ce = $self->{ce}; 71 my $ce = $self->{ce};
57 my $authz = $self->{authz}; 72 my $authz = $self->{authz};
63 my $URL = $r->uri; 78 my $URL = $r->uri;
64 my $instructorBaseURL = "$root/$courseName/instructor"; 79 my $instructorBaseURL = "$root/$courseName/instructor";
65 my $importURL = "$instructorBaseURL/problemSetImport/"; 80 my $importURL = "$instructorBaseURL/problemSetImport/";
66 my $sort = $r->param('sort') ? $r->param('sort') : "due_date"; 81 my $sort = $r->param('sort') ? $r->param('sort') : "due_date";
67 82
83 my @set_definition_files = $self->read_dir($ce->{courseDirs}->{templates},'\\.def');
68 return CGI::em("You are not authorized to access the instructor tools") unless $authz->hasPermissions($user, "access_instructor_tools"); 84 return CGI::em("You are not authorized to access the instructor tools") unless $authz->hasPermissions($user, "access_instructor_tools");
69 85
70 # Slurp each set record for this course in @sets 86 # Slurp each set record for this course in @sets
71 # Gather data from the database 87 # Gather data from the database
72 my @users = $db->listUsers; 88 my @users = $db->listUsers;
127 . CGI::td({}, CGI::a({href=>$r->uri.$set->set_id."/users/?".$self->url_authen_args}, $userCountMessage)) 143 . CGI::td({}, CGI::a({href=>$r->uri.$set->set_id."/users/?".$self->url_authen_args}, $userCountMessage))
128 ) . "\n" 144 ) . "\n"
129 } 145 }
130 $table = CGI::table({"border"=>"1"}, "\n".$table."\n"); 146 $table = CGI::table({"border"=>"1"}, "\n".$table."\n");
131 147
148 my $form = join("",
132 my $form = CGI::start_form({"method"=>"POST", "action"=>$r->uri})."\n" # This form is for deleting sets, and points to itself 149 CGI::start_form({"method"=>"POST", "action"=>$r->uri}),"\n", # This form is for deleting sets, and points to itself
133 . $table."\n" 150 $table,"\n",
134 . CGI::br()."\n" 151 CGI::br(),"\n",
135 . $self->hidden_authen_fields."\n" 152 $self->hidden_authen_fields,"\n",
136 . CGI::submit({"name"=>"deleteSelected", "label"=>"Delete Selected"})."\n" 153 CGI::submit({"name"=>"deleteSelected", "label"=>"Delete Selected"}),"\n",
154 CGI::submit({"name"=>"scoreSelected", "label"=>"Score Selected"}),"\n",
137 . CGI::end_form()."\n" 155 CGI::end_form(),"\n",
138 . CGI::start_form({"method"=>"POST", "action"=>$r->uri})."\n" 156 CGI::start_form({"method"=>"POST", "action"=>$r->uri}),"\n",
139 . $self->hidden_authen_fields."\n" 157 $self->hidden_authen_fields,"\n",
140 . "New Set Name: " 158 "New Set Name: ",
141 . CGI::input({type=>"text", name=>"newSetName", value=>""}) 159 CGI::input({type=>"text", name=>"newSetName", value=>""}),
142 . CGI::submit({"name"=>"makeNewSet", "label"=>"Create"})."\n" 160 CGI::submit({"name"=>"makeNewSet", "label"=>"Create"}),"\n",
143 . CGI::end_form()."\n" 161 CGI::end_form(),"\n",
144 . CGI::start_form({"method"=>"POST", "action"=>$importURL})."\n" 162 CGI::start_form({"method"=>"POST", "action"=>$importURL}),"\n",
145 . $self->hidden_authen_fields."\n" 163 $self->hidden_authen_fields,"\n",
146 . CGI::submit({"name"=>"importSet", "label"=>"Import"})."\n" 164 CGI::submit({"name"=>"importSet", "label"=>"Import"}),"\n",
165 CGI::popup_menu(-name=>'set_definition_file',
166 -values=>\@set_definition_files,
167 ),' as set ',
168 CGI::input({type=>"text", name=>"importedSetName", value=>""}),
147 . CGI::end_form()."\n"; 169 CGI::end_form(),"\n"
170 );
148 print $form; 171 print $form;
149 172
150 return ""; 173 return "";
151} 174}
152 175

Legend:
Removed from v.1020  
changed lines
  Added in v.1404

aubreyja at gmail dot com
ViewVC Help
Powered by ViewVC 1.0.9