version 1.558, 2009/03/18 12:26:21
|
version 1.565, 2009/05/01 01:07:49
|
Line 844 sub listStudents {
|
Line 844 sub listStudents {
|
|
|
my ($table,undef,$hdgrade,$partlist,$handgrade) = &showResourceInfo($symb,$env{'form.probTitle'},($env{'form.showgrading'} eq 'yes')); |
my ($table,undef,$hdgrade,$partlist,$handgrade) = &showResourceInfo($symb,$env{'form.probTitle'},($env{'form.showgrading'} eq 'yes')); |
|
|
my %lt = ( 'multiple' => |
my %lt = &Apache::lonlocal::texthash ( |
&mt("Please select a student or group of students before clicking on the Next button."), |
'multiple' => 'Please select a student or group of students before clicking on the Next button.', |
'single' => |
'single' => 'Please select the student before clicking on the Next button.', |
&mt("Please select the student before clicking on the Next button."), |
); |
); |
|
%lt = &Apache::lonlocal::texthash(%lt); |
|
$request->print(<<LISTJAVASCRIPT); |
$request->print(<<LISTJAVASCRIPT); |
<script type="text/javascript" language="javascript"> |
<script type="text/javascript" language="javascript"> |
function checkSelect(checkBox) { |
function checkSelect(checkBox) { |
Line 891 LISTJAVASCRIPT
|
Line 889 LISTJAVASCRIPT
|
my $gradeTable='<form action="/adm/grades" method="post" name="gradesub">'. |
my $gradeTable='<form action="/adm/grades" method="post" name="gradesub">'. |
"\n".$table; |
"\n".$table; |
|
|
$gradeTable .= |
$gradeTable .= &Apache::lonhtmlcommon::start_pick_box(); |
' <b>'.&mt('View Problem Text').': </b>'. |
$gradeTable .= &Apache::lonhtmlcommon::row_title(&mt('View Problem Text')) |
'<label><input type="radio" name="vProb" value="no" checked="checked" /> '.&mt('no').' </label>'."\n". |
.'<label><input type="radio" name="vProb" value="no" checked="checked" /> '.&mt('no').' </label>'."\n" |
'<label><input type="radio" name="vProb" value="yes" /> '.&mt('one student').' </label>'."\n". |
.'<label><input type="radio" name="vProb" value="yes" /> '.&mt('one student').' </label>'."\n" |
'<label><input type="radio" name="vProb" value="all" /> '.&mt('all students').' </label><br />'."\n"; |
.'<label><input type="radio" name="vProb" value="all" /> '.&mt('all students').' </label><br />'."\n" |
$gradeTable .= |
.&Apache::lonhtmlcommon::row_closure(); |
' <b>'.&mt('View Answer').': </b>'. |
$gradeTable .= &Apache::lonhtmlcommon::row_title(&mt('View Answer')) |
'<label><input type="radio" name="vAns" value="no" /> '.&mt('no').' </label>'."\n". |
.'<label><input type="radio" name="vAns" value="no" /> '.&mt('no').' </label>'."\n" |
'<label><input type="radio" name="vAns" value="yes" /> '.&mt('one student').' </label>'."\n". |
.'<label><input type="radio" name="vAns" value="yes" /> '.&mt('one student').' </label>'."\n" |
'<label><input type="radio" name="vAns" value="all" checked="checked" /> '.&mt('all students').' </label><br />'."\n"; |
.'<label><input type="radio" name="vAns" value="all" checked="checked" /> '.&mt('all students').' </label><br />'."\n" |
|
.&Apache::lonhtmlcommon::row_closure(); |
|
|
my $submission_options; |
my $submission_options; |
if ($env{'form.handgrade'} eq 'yes' && scalar(@$partlist) > 1) { |
if ($env{'form.handgrade'} eq 'yes' && scalar(@$partlist) > 1) { |
Line 915 LISTJAVASCRIPT
|
Line 914 LISTJAVASCRIPT
|
'<label><input type="radio" name="lastSub" value="last" /> '.&mt('last submission & parts info').' </label>'."\n". |
'<label><input type="radio" name="lastSub" value="last" /> '.&mt('last submission & parts info').' </label>'."\n". |
'<label><input type="radio" name="lastSub" value="datesub" /> '.&mt('by dates and submissions').' </label>'."\n". |
'<label><input type="radio" name="lastSub" value="datesub" /> '.&mt('by dates and submissions').' </label>'."\n". |
'<label><input type="radio" name="lastSub" value="all" /> '.&mt('all details').'</label>'; |
'<label><input type="radio" name="lastSub" value="all" /> '.&mt('all details').'</label>'; |
$gradeTable .= |
$gradeTable .= &Apache::lonhtmlcommon::row_title(&mt('Submissions')) |
' <b>'.&mt('Submissions').': </b>'.$submission_options.'<br />'."\n"; |
.$submission_options |
|
.&Apache::lonhtmlcommon::row_closure(); |
|
|
|
$gradeTable .= &Apache::lonhtmlcommon::row_title(&mt('Grading Increments')) |
|
.'<select name="increment">' |
|
.'<option value="1">'.&mt('Whole Points').'</option>' |
|
.'<option value=".5">'.&mt('Half Points').'</option>' |
|
.'<option value=".25">'.&mt('Quarter Points').'</option>' |
|
.'<option value=".1">'.&mt('Tenths of a Point').'</option>' |
|
.'</select>' |
|
.&Apache::lonhtmlcommon::row_closure(); |
|
|
$gradeTable .= |
$gradeTable .= |
' <b>'.&mt('Grading Increments').': </b>'. |
|
'<select name="increment">'. |
|
'<option value="1">'.&mt('Whole Points').'</option>'. |
|
'<option value=".5">'.&mt('Half Points').'</option>'. |
|
'<option value=".25">'.&mt('Quarter Points').'</option>'. |
|
'<option value=".1">'.&mt('Tenths of a Point').'</option>'. |
|
'</select>'; |
|
|
|
$gradeTable .= |
|
&build_section_inputs(). |
&build_section_inputs(). |
'<input type="hidden" name="submitonly" value="'.$submitonly.'" />'."\n". |
'<input type="hidden" name="submitonly" value="'.$submitonly.'" />'."\n". |
'<input type="hidden" name="handgrade" value="'.$env{'form.handgrade'}.'" /><br />'."\n". |
'<input type="hidden" name="handgrade" value="'.$env{'form.handgrade'}.'" /><br />'."\n". |
Line 938 LISTJAVASCRIPT
|
Line 938 LISTJAVASCRIPT
|
'<input type="hidden" name="saveStatusOld" value="'.$saveStatus.'" />'."\n"; |
'<input type="hidden" name="saveStatusOld" value="'.$saveStatus.'" />'."\n"; |
|
|
if (exists($env{'form.gradingMenu'}) && exists($env{'form.Status'})) { |
if (exists($env{'form.gradingMenu'}) && exists($env{'form.Status'})) { |
$gradeTable.='<input type="hidden" name="Status" value="'.$stu_status.'" />'."\n"; |
$gradeTable .= '<input type="hidden" name="Status" value="'.$stu_status.'" />'."\n"; |
} else { |
} else { |
$gradeTable.=&mt('<b>Student Status:</b> [_1]', |
$gradeTable .= &Apache::lonhtmlcommon::row_title(&mt('Student Status')) |
&Apache::lonhtmlcommon::StatusOptions($saveStatus,undef,1,'javascript:reLoadList(this.form);')).'<br />'; |
.&Apache::lonhtmlcommon::StatusOptions( |
|
$saveStatus,undef,1,'javascript:reLoadList(this.form);') |
|
.&Apache::lonhtmlcommon::row_closure(); |
} |
} |
|
|
$gradeTable.=&mt('To '.lc($viewgrade)." a submission or a group of submissions, click on the check box(es) next to the student's name(s). Then click on the Next button.").'<br />'."\n". |
$gradeTable .= &Apache::lonhtmlcommon::row_title(&mt('Check For Plagiarism')) |
'<input type="hidden" name="command" value="processGroup" />'."\n"; |
.'<input type="checkbox" name="checkPlag" checked="checked" />' |
|
.&Apache::lonhtmlcommon::row_closure(1) |
|
.&Apache::lonhtmlcommon::end_pick_box(); |
|
|
|
$gradeTable .= '<p>' |
|
.&mt('To '.lc($viewgrade)." a submission or a group of submissions, click on the check box(es) next to the student's name(s). Then click on the Next button.")."\n" |
|
.'<input type="hidden" name="command" value="processGroup" />' |
|
.'</p>'; |
|
|
# checkall buttons |
# checkall buttons |
$gradeTable.=&check_script('gradesub', 'stuinfo'); |
$gradeTable.=&check_script('gradesub', 'stuinfo'); |
Line 953 LISTJAVASCRIPT
|
Line 962 LISTJAVASCRIPT
|
'onClick="javascript:checkSelect(this.form.stuinfo);" '."\n". |
'onClick="javascript:checkSelect(this.form.stuinfo);" '."\n". |
'value="'.&mt('Next').' →" /> <br />'."\n"; |
'value="'.&mt('Next').' →" /> <br />'."\n"; |
$gradeTable.=&check_buttons(); |
$gradeTable.=&check_buttons(); |
$gradeTable.='<label><input type="checkbox" name="checkPlag" checked="checked" />'.&mt('Check For Plagiarism').'</label>'; |
|
my ($classlist, undef, $fullname) = &getclasslist($getsec,'1',$getgroup); |
my ($classlist, undef, $fullname) = &getclasslist($getsec,'1',$getgroup); |
$gradeTable.= &Apache::loncommon::start_data_table(). |
$gradeTable.= &Apache::loncommon::start_data_table(). |
&Apache::loncommon::start_data_table_header_row(); |
&Apache::loncommon::start_data_table_header_row(); |
Line 1036 LISTJAVASCRIPT
|
Line 1044 LISTJAVASCRIPT
|
$gradeTable.= &Apache::loncommon::start_data_table_row(); |
$gradeTable.= &Apache::loncommon::start_data_table_row(); |
} |
} |
$gradeTable.='<td align="right">'.$ctr.' </td>'. |
$gradeTable.='<td align="right">'.$ctr.' </td>'. |
'<td align="center"><label><input type=checkbox name="stuinfo" value="'. |
'<td align="center"><label><input type="checkbox" name="stuinfo" value="'. |
$student.':'.$$fullname{$student}.':::SECTION'.$section. |
$student.':'.$$fullname{$student}.':::SECTION'.$section. |
') " /> </label></td>'."\n".'<td>'. |
') " /> </label></td>'."\n".'<td>'. |
&nameUserString(undef,$$fullname{$student},$uname,$udom). |
&nameUserString(undef,$$fullname{$student},$uname,$udom). |
Line 1543 INNERJS
|
Line 1551 INNERJS
|
pDoc.write("<input value=\\""+usrctr+"\\" name=\\"usrctr\\" type=\\"hidden\\">"); |
pDoc.write("<input value=\\""+usrctr+"\\" name=\\"usrctr\\" type=\\"hidden\\">"); |
pDoc.write("<h3><span class=\\"LC_info\\"> Compose Message for \"+fullname+\"<\\/span><\\/h3><br /><br />"); |
pDoc.write("<h3><span class=\\"LC_info\\"> Compose Message for \"+fullname+\"<\\/span><\\/h3><br /><br />"); |
|
|
pDoc.write("<table border=0 width=100%><tr><td bgcolor=\\"#777777\\">"); |
pDoc.write('<table border="0" width="100%"><tr><td bgcolor="#777777">'); |
pDoc.write("<table border=0 width=100%><tr bgcolor=\\"#ddffff\\">"); |
pDoc.write('<table border="0" width="100%"><tr bgcolor="#DDFFFF">'); |
pDoc.write("<td><b>Type<\\/b><\\/td><td><b>Include<\\/b><\\/td><td><b>Message<\\/td><\\/tr>"); |
pDoc.write("<td><b>Type<\\/b><\\/td><td><b>Include<\\/b><\\/td><td><b>Message<\\/td><\\/tr>"); |
} |
} |
function displaySubject(msg,shwsel) { |
function displaySubject(msg,shwsel) { |
Line 1628 INNERJS
|
Line 1636 INNERJS
|
hDoc.write("<form action=\\"inactive\\" name=\\"hlCenter\\">"); |
hDoc.write("<form action=\\"inactive\\" name=\\"hlCenter\\">"); |
hDoc.write("<h3><span class=\\"LC_info\\"> Keyword Highlight Options<\\/span><\\/h3><br /><br />"); |
hDoc.write("<h3><span class=\\"LC_info\\"> Keyword Highlight Options<\\/span><\\/h3><br /><br />"); |
|
|
hDoc.write("<table border=0 width=100%><tr><td bgcolor=\\"#777777\\">"); |
hDoc.write('<table border="0" width="100%"><tr><td bgcolor="#777777">'); |
hDoc.write("<table border=0 width=100%><tr bgcolor=\\"#ddffff\\">"); |
hDoc.write('<table border="0" width="100%"><tr bgcolor="#DDFFFF">'); |
hDoc.write("<td><b>Text Color<\\/b><\\/td><td><b>Font Size<\\/b><\\/td><td><b>Font Style<\\/td><\\/tr>"); |
hDoc.write("<td><b>Text Color<\\/b><\\/td><td><b>Font Size<\\/b><\\/td><td><b>Font Style<\\/td><\\/tr>"); |
} |
} |
|
|
Line 2154 KEYWORDS
|
Line 2162 KEYWORDS
|
foreach my $file (@$files) { |
foreach my $file (@$files) { |
$file_counter++; |
$file_counter++; |
&Apache::lonnet::allowuploaded('/adm/grades',$file); |
&Apache::lonnet::allowuploaded('/adm/grades',$file); |
$lastsubonly.='<br /><a href="'.$file.'?rawmode=1" target="lonGRDs"><img src="'.&Apache::loncommon::icon($file).'" border=0"> '.$file.'</a>'; |
$lastsubonly.='<br /><a href="'.$file.'?rawmode=1" target="lonGRDs"><img src="'.&Apache::loncommon::icon($file).'" border="0" /> '.$file.'</a>'; |
} |
} |
$lastsubonly.='<br />'; |
$lastsubonly.='<br />'; |
} |
} |
Line 3228 sub viewgrades {
|
Line 3236 sub viewgrades {
|
'<input type="hidden" name="Status" value="'.$env{'stu_status'}.'" />'."\n". |
'<input type="hidden" name="Status" value="'.$env{'stu_status'}.'" />'."\n". |
'<input type="hidden" name="probTitle" value="'.$env{'form.probTitle'}.'" />'."\n"; |
'<input type="hidden" name="probTitle" value="'.$env{'form.probTitle'}.'" />'."\n"; |
|
|
my $sectionClass; |
my ($common_header,$specific_header); |
my $section_display = join (", ",&Apache::loncommon::get_env_multiple('form.section')); |
|
if ($env{'form.section'} eq 'all') { |
if ($env{'form.section'} eq 'all') { |
$sectionClass=&mt('Class'); |
$common_header = &mt('Assign Common Grade to Class'); |
|
$specific_header = &mt('Assign Grade to Specific Students in Class'); |
} elsif ($env{'form.section'} eq 'none') { |
} elsif ($env{'form.section'} eq 'none') { |
$sectionClass=&mt('Students in no Section'); |
$common_header = &mt('Assign Common Grade to Students in no Section'); |
|
$specific_header = &mt('Assign Grade to Specific Students in no Section'); |
} else { |
} else { |
$sectionClass=&mt('Students in Section(s) [_1]'); |
my $section_display = join (", ",&Apache::loncommon::get_env_multiple('form.section')); |
|
$common_header = &mt('Assign Common Grade to Students in Section(s) [_1]',$section_display); |
|
$specific_header = &mt('Assign Grade to Specific Students in Section(s) [_1]',$section_display); |
} |
} |
$result.= |
$result.= '<h3>'.$common_header.'</h3>'.&Apache::loncommon::start_data_table(); |
'<h3>'. |
|
&mt("Assign Common Grade to [_1]",$sectionClass,$section_display).'</h3>'; |
|
$result.= &Apache::loncommon::start_data_table(); |
|
#radio buttons/text box for assigning points for a section or class. |
#radio buttons/text box for assigning points for a section or class. |
#handles different parts of a problem |
#handles different parts of a problem |
my ($partlist,$handgrade,$responseType) = &response_type($symb); |
my ($partlist,$handgrade,$responseType) = &response_type($symb); |
Line 3298 sub viewgrades {
|
Line 3306 sub viewgrades {
|
|
|
#table listing all the students in a section/class |
#table listing all the students in a section/class |
#header of table |
#header of table |
$result.= '<h3>'.&mt('Assign Grade to Specific Students in ').$sectionClass, |
$result.= '<h3>'.$specific_header.'</h3>'. |
$section_display.'</h3>'; |
&Apache::loncommon::start_data_table(). |
$result.= &Apache::loncommon::start_data_table(). |
&Apache::loncommon::start_data_table_header_row(). |
&Apache::loncommon::start_data_table_header_row(). |
'<th>'.&mt('No.').'</th>'. |
'<th>'.&mt('No.').'</th>'. |
'<th>'.&nameUserString('header')."</th>\n"; |
'<th>'.&nameUserString('header')."</th>\n"; |
|
my (@parts) = sort(&getpartlist($symb)); |
my (@parts) = sort(&getpartlist($symb)); |
my (undef,undef,$url)=&Apache::lonnet::decode_symb($symb); |
my (undef,undef,$url)=&Apache::lonnet::decode_symb($symb); |
my @partids = (); |
my @partids = (); |
Line 7694 sub grade_student_bubbles {
|
Line 7701 sub grade_student_bubbles {
|
|
|
sub scantron_upload_scantron_data { |
sub scantron_upload_scantron_data { |
my ($r)=@_; |
my ($r)=@_; |
$r->print(&Apache::loncommon::coursebrowser_javascript($env{'request.role.domain'})); |
my $dom = $env{'request.role.domain'}; |
|
my $domdesc = &Apache::lonnet::domain($dom,'description'); |
|
$r->print(&Apache::loncommon::coursebrowser_javascript($dom)); |
my $select_link=&Apache::loncommon::selectcourse_link('rules','courseid', |
my $select_link=&Apache::loncommon::selectcourse_link('rules','courseid', |
'domainid', |
'domainid', |
'coursename'); |
'coursename',$dom); |
my $domsel=&Apache::loncommon::select_dom_form($env{'request.role.domain'}, |
my $syllabuslink = '<a href="javascript:ToSyllabus();">'.&mt('Syllabus').'</a>'. |
'domainid'); |
(' 'x2).&mt('(shows course personnel)'); |
my $default_form_data=&defaultFormData(&get_symb($r,1)); |
my $default_form_data=&defaultFormData(&get_symb($r,1)); |
$r->print(' |
$r->print(' |
<script type="text/javascript" language="javascript"> |
<script type="text/javascript" language="javascript"> |
Line 7708 sub scantron_upload_scantron_data {
|
Line 7717 sub scantron_upload_scantron_data {
|
alert("'.&mt('Please use the browse button to select a file from your local directory.').'"); |
alert("'.&mt('Please use the browse button to select a file from your local directory.').'"); |
return false; |
return false; |
} |
} |
|
if (formname.courseid.value == "") { |
|
alert("'.&mt('Please use the \"Select Course\" link to open a separate window where you can search for a course to which a file can be uploaded.').'"); |
|
return false; |
|
} |
formname.submit(); |
formname.submit(); |
} |
} |
|
|
|
function ToSyllabus() { |
|
var cdom = '."'$dom'".'; |
|
var cnum = document.rules.courseid.value; |
|
if (cdom == "" || cdom == null) { |
|
return; |
|
} |
|
if (cnum == "" || cnum == null) { |
|
return; |
|
} |
|
syllwin=window.open("/public/"+cdom+"/"+cnum+"/syllabus","LONCAPASyllabus", |
|
"height=350,width=350,scrollbars=yes,menubar=no"); |
|
return; |
|
} |
|
|
</script> |
</script> |
|
|
<form enctype="multipart/form-data" action="/adm/grades" name="rules" method="post"> |
<form enctype="multipart/form-data" action="/adm/grades" name="rules" method="post"> |
'.$default_form_data.' |
'.$default_form_data. |
<table> |
&Apache::lonhtmlcommon::start_pick_box(). |
<tr><td>'.$select_link.' </td></tr> |
&Apache::lonhtmlcommon::row_title(&mt('Course ID')). |
<tr><td>'.&mt('Course ID:').' </td> |
'<input name="courseid" type="text" size="30" />'.$select_link. |
<td><input name="courseid" type="text" /> </td></tr> |
&Apache::lonhtmlcommon::row_closure(). |
<tr><td>'.&mt('Course Name:').' </td> |
&Apache::lonhtmlcommon::row_title(&mt('Course Name')). |
<td><input name="coursename" type="text" /> </td></tr> |
'<input name="coursename" type="text" size="30" />'.$syllabuslink. |
<tr><td>'.&mt('Domain:').' </td> |
&Apache::lonhtmlcommon::row_closure(). |
<td>'.$domsel.' </td></tr> |
&Apache::lonhtmlcommon::row_title(&mt('Domain')). |
<tr><td>'.&mt('File to upload:').'</td> |
'<input name="domainid" type="hidden" />'.$domdesc. |
<td><input type="file" name="upfile" size="50" /></td></tr> |
&Apache::lonhtmlcommon::row_closure(). |
</table> |
&Apache::lonhtmlcommon::row_title(&mt('File to upload')). |
|
'<input type="file" name="upfile" size="50" />'. |
|
&Apache::lonhtmlcommon::row_closure(1). |
|
&Apache::lonhtmlcommon::end_pick_box().'<br /> |
|
|
<input name="command" value="scantronupload_save" type="hidden" /> |
<input name="command" value="scantronupload_save" type="hidden" /> |
<input type="button" onClick="javascript:checkUpload(this.form);" value="'.&mt('Upload Scantron Data').'" /> |
<input type="button" onClick="javascript:checkUpload(this.form);" value="'.&mt('Upload Scantron Data').'" /> |
</form> |
</form> |
Line 9095 sub handler {
|
Line 9127 sub handler {
|
} elsif ($command eq 'checksubmissions' && $perm{'vgr'}) { |
} elsif ($command eq 'checksubmissions' && $perm{'vgr'}) { |
$request->print(&checkscantron_results($request)); |
$request->print(&checkscantron_results($request)); |
} elsif ($command) { |
} elsif ($command) { |
$request->print("Access Denied ($command)"); |
$request->print('<p class="LC_error">'.&mt('Access Denied ([_1])',$command).'</p>'); |
} |
} |
} |
} |
if ($ssi_error) { |
if ($ssi_error) { |