version 1.67.2.1, 2007/11/28 17:36:11
|
version 1.73, 2008/06/04 22:48:54
|
Line 104 sub handler {
|
Line 104 sub handler {
|
|
|
# if called to assign a role in a course to a user via CUSR |
# if called to assign a role in a course to a user via CUSR |
if ($env{'form.form'} eq 'cu' || $env{'form.form'} eq 'studentform') { |
if ($env{'form.form'} eq 'cu' || $env{'form.form'} eq 'studentform') { |
$r->print(&create_user_javascript($type)); |
$r->print(&create_user_javascript($type)); |
} |
} |
|
|
# print javascript functions for choosing a course |
# print javascript functions for choosing a course |
Line 215 sub display_matched_courses {
|
Line 215 sub display_matched_courses {
|
if ($env{'form.form'} eq 'portform') { |
if ($env{'form.form'} eq 'portform') { |
$action = '/adm/portfolio'; |
$action = '/adm/portfolio'; |
} |
} |
|
my $numcourses = keys(%courses); |
$r->print('<form name="courselist" method="post" action="'.$action.'">'); |
$r->print('<form name="courselist" method="post" action="'.$action.'">'); |
|
if ($env{'form.form'} eq 'modifycourse') { |
|
if ($numcourses > 0) { |
|
my $cctitle = &Apache::lonnet::plaintext('cc',$type); |
|
my $dctitle = &Apache::lonnet::plaintext('dc'); |
|
my $ccrolechk = ' checked="checked" '; |
|
my $menuchk = ' '; |
|
if ($env{'form.prevphase'} ne '') { |
|
$ccrolechk = ' '; |
|
$menuchk = ' checked="checked" '; |
|
} |
|
$r->print( |
|
'<table class="LC_pick_box">'. |
|
'<tr class="LC_pick_box_row">'. |
|
'<td class="LC_pick_box_title" rowspan="2">'.&mt('Action').'</td>'. |
|
'<td class="LC_evenrow_value">'. |
|
'<span class="LC_nobreak"><label>'. |
|
'<input type="radio" name="phase" value="ccrole"'.$ccrolechk.'/>'. |
|
' '.&mt('Enter the course with the role of [_1].',$cctitle). |
|
'</label>'.(' 'x3).'</span>'. |
|
'</td></tr>'. |
|
'<tr class="LC_pick_box_row">'. |
|
'<td class="LC_oddrow_value">'. |
|
'<span class="LC_nobreak"><label>'. |
|
'<input type="radio" name="phase" value="menu"'.$menuchk.'/> '. |
|
&mt('View or modify course settings which only a [_1] may modify.',$dctitle). |
|
'</label></span>'. |
|
'</td></tr></table>'. |
|
'<br />'); |
|
} |
|
} |
my %by_descrip; |
my %by_descrip; |
my $numcourses = keys(%courses); |
|
foreach my $course (keys(%courses)) { |
foreach my $course (keys(%courses)) { |
my $descr; |
my $descr; |
if (ref($courses{$course}) eq 'HASH') { |
if (ref($courses{$course}) eq 'HASH') { |
Line 230 sub display_matched_courses {
|
Line 260 sub display_matched_courses {
|
my $description = $descr; |
my $description = $descr; |
push (@{$by_descrip{$description}}, $course); |
push (@{$by_descrip{$description}}, $course); |
} |
} |
|
|
if ($numcourses > 1 && $multiple) { |
if ($numcourses > 1 && $multiple) { |
$r->print('<input type="button" value="check all" |
$r->print('<input type="button" value="check all" |
onclick="javascript:checkAll(document.courselist.course_id)" /> |
onclick="javascript:checkAll(document.courselist.course_id)" /> |
Line 237 sub display_matched_courses {
|
Line 268 sub display_matched_courses {
|
onclick="javascript:uncheckAll(document.courselist.course_id)" /> |
onclick="javascript:uncheckAll(document.courselist.course_id)" /> |
<br /><br />'); |
<br /><br />'); |
} |
} |
|
|
|
if (%courses) { |
|
$r->print(&Apache::loncommon::start_data_table()); |
|
$r->print(&Apache::loncommon::start_data_table_header_row()); |
|
$r->print('<th>'.&mt('Select').'</th>' |
|
.'<th>'.&mt('Course Description').'</th>' |
|
.'<th>'.&mt('Domain').'</th>' |
|
.'<th>'.&mt('Course Code').'</th>' |
|
.'<th>'.&mt('Owner/Co-owner(s)').'</th>' |
|
.'<th>'.&mt('Type').'</th>' |
|
); |
|
$r->print(&Apache::loncommon::end_data_table_header_row()); |
|
} |
foreach my $description (sort { lc($a) cmp lc($b) } (keys(%by_descrip))) { |
foreach my $description (sort { lc($a) cmp lc($b) } (keys(%by_descrip))) { |
foreach my $course (@{$by_descrip{$description}}) { |
foreach my $course (@{$by_descrip{$description}}) { |
|
$r->print(&Apache::loncommon::start_data_table_row()); |
my $cleandesc=&HTML::Entities::encode($description,'<>&"'); |
my $cleandesc=&HTML::Entities::encode($description,'<>&"'); |
$cleandesc=~s/'/\\'/g; |
$cleandesc=~s/'/\\'/g; |
my ($cdom,$cnum)=split(/\_/,$course); |
my ($cdom,$cnum)=split(/\_/,$course); |
Line 258 sub display_matched_courses {
|
Line 303 sub display_matched_courses {
|
($descr,$instcode,$singleowner,$ttype)=split(/:/,$courses{$course}); |
($descr,$instcode,$singleowner,$ttype)=split(/:/,$courses{$course}); |
push(@owners,&unescape($singleowner)); |
push(@owners,&unescape($singleowner)); |
} |
} |
my $owner = join(', ',@owners); |
my $ownerstr = join(', ',@owners); |
$r->print(&course_chooser($multiple,$cdom,$cnum,$cleandesc)); |
$r->print('<td>'.&course_chooser($multiple,$cdom,$cnum,$cleandesc).'</td>'); |
$r->print($description.'('. |
$r->print('<td>'.$description.'</td>'); |
(&Apache::lonnet::domain($cdom,'description')? |
$r->print('<td>'); |
&Apache::lonnet::domain($cdom,'description'):$cdom).")"); |
$r->print(&Apache::lonnet::domain($cdom,'description')? |
|
$cdom.' ('.&Apache::lonnet::domain($cdom,'description').')':$cdom); |
|
$r->print('</td>'); |
|
$r->print('<td>'); |
if ($instcode ne '') { |
if ($instcode ne '') { |
$r->print(" - ".&unescape($instcode)); |
$r->print(&unescape($instcode)); |
} |
} else { |
if (@owners > 1) { |
$r->print(' '); |
$r->print(', '.&mt('owners').' - ',join(', ',@owners)); |
|
} elsif (@owners == 1) { |
|
$r->print(', '.&mt('owner').' - '.$owner); |
|
} |
} |
|
$r->print('</td>'); |
|
$r->print('<td>'.$ownerstr.'</td>'); |
|
$r->print('<td>'); |
if ($ttype ne '') { |
if ($ttype ne '') { |
$r->print('('.&unescape($ttype).')'); |
$r->print(&mt(&unescape($ttype))); |
|
} else { |
|
$r->print(' '); |
} |
} |
|
$r->print('</td>'); |
if ($multiple) { $r->print("</label>\n"); } |
if ($multiple) { $r->print("</label>\n"); } |
$r->print("<br />\n"); |
$r->print(&Apache::loncommon::end_data_table_row()); |
|
# $r->print("<br />\n"); |
} |
} |
} |
} |
|
if (%courses) { |
|
$r->print(&Apache::loncommon::end_data_table()); |
|
} |
|
|
if (!%courses) { |
if (!%courses) { |
$r->print(&mt('None found')); |
$r->print(&mt('None found')); |
} elsif ($multiple) { |
} elsif ($multiple) { |
Line 296 sub display_matched_courses {
|
Line 352 sub display_matched_courses {
|
$r->print('<input type="hidden" name="setroles" value="'.$env{'form.setroles'}.'" />'); |
$r->print('<input type="hidden" name="setroles" value="'.$env{'form.setroles'}.'" />'); |
$r->print('<input type="hidden" name="action" value="rolepicker" />'); |
$r->print('<input type="hidden" name="action" value="rolepicker" />'); |
} elsif ($env{'form.form'} eq 'modifycourse') { |
} elsif ($env{'form.form'} eq 'modifycourse') { |
$r->print('<input type="hidden" name="phase" value="menu" />'."\n"); |
|
$r->print(&Apache::lonhtmlcommon::echo_form_input(['phase','pickedcourse','type','form'])); |
$r->print(&Apache::lonhtmlcommon::echo_form_input(['phase','pickedcourse','type','form'])); |
} else { |
} else { |
$r->print('<input type="hidden" name="cnumelement" value="'. |
$r->print('<input type="hidden" name="cnumelement" value="'. |
Line 397 sub build_filters {
|
Line 452 sub build_filters {
|
$list->{'instcodefilter'}.'" />'; |
$list->{'instcodefilter'}.'" />'; |
} |
} |
foreach my $posstype ('Course','Non-standard Course') { |
foreach my $posstype ('Course','Non-standard Course') { |
$typeselectform.='<option value="'.$posstype.'" "'. |
$typeselectform.='<option value="'.$posstype.'"'. |
($posstype eq $type ? 'selected="selected" ' : ''). ">$posstype</option>\n"; |
($posstype eq $type ? ' selected="selected" ' : ''). ">".&mt($posstype)."</option>\n"; |
} |
} |
$typeselectform.="</select>"; |
$typeselectform.="</select>"; |
my $output = qq| |
my $output = qq| |
Line 406 sub build_filters {
|
Line 461 sub build_filters {
|
<input type="hidden" name="form" value="$formname" /> |
<input type="hidden" name="form" value="$formname" /> |
|; |
|; |
if ($formname eq 'modifycourse') { |
if ($formname eq 'modifycourse') { |
$output .= '<input type="hidden" name="phase" value="courselist" />'; |
$output .= '<input type="hidden" name="phase" value="courselist" />'."\n". |
} else { |
'<input type="hidden" name="prevphase" value="'. |
|
$env{'form.prevphase'}.'" />'."\n"; |
|
} else { |
my $name_input; |
my $name_input; |
if ($env{'form.cnameelement'} ne '') { |
if ($env{'form.cnameelement'} ne '') { |
$name_input = '<input type="hidden" name="cnameelement" value="'. |
$name_input = '<input type="hidden" name="cnameelement" value="'. |
Line 430 $multelement
|
Line 487 $multelement
|
if ($domainselectform) { |
if ($domainselectform) { |
$output .= $lt{'cdo'}.': '.$domainselectform.'<br />'."\n"; |
$output .= $lt{'cdo'}.': '.$domainselectform.'<br />'."\n"; |
} |
} |
# if ($typeselectform) { |
if ($typeselectform) { |
# $output .= $lt{'cog'}.': '.$typeselectform.'<br />'."\n"; |
$output .= $lt{'cog'}.': '.$typeselectform.'<br />'."\n"; |
# } |
} |
if ($instcodeform) { |
if ($instcodeform) { |
$output .= $lt{'cin'}.': '.$instcodeform.'<br />'."\n"; |
$output .= $lt{'cin'}.': '.$instcodeform.'<br />'."\n"; |
} |
} |
Line 452 $multelement
|
Line 509 $multelement
|
'<input type="text" name="descriptfilter" size="40" value="'. |
'<input type="text" name="descriptfilter" size="40" value="'. |
$list->{'descriptfilter'}.'" />'."\n"; |
$list->{'descriptfilter'}.'" />'."\n"; |
} |
} |
$output .= qq| |
$output .= '<p><input type="submit" name="gosearch" value="'. |
<p><input type="submit" name="gosearch" value="Search" /></p> |
&mt('Search').'" /></p>'."\n".'</form>'."\n".'<hr />'."\n"; |
</form> |
|
<hr /> |
|
|; |
|
return $output; |
return $output; |
} |
} |
|
|
Line 464 sub search_courses {
|
Line 518 sub search_courses {
|
my ($r,$type,$onlyown,$filter) = @_; |
my ($r,$type,$onlyown,$filter) = @_; |
my %courses; |
my %courses; |
if (!$onlyown) { |
if (!$onlyown) { |
$r->print(&mt('Searching').' ...<br /> <br />'); |
$r->print(&mt('Searching ...').'<br /> <br />'); |
$r->rflush(); |
$r->rflush(); |
if (($filter->{'ownerfilter'} ne '') || |
if (($filter->{'ownerfilter'} ne '') || |
($filter->{'ownerdomfilter'} ne '')) { |
($filter->{'ownerdomfilter'} ne '')) { |
Line 504 sub course_chooser {
|
Line 558 sub course_chooser {
|
if ($multiple) { |
if ($multiple) { |
$output = '<label><input type="checkbox" name="course_id" value="'.$cdom.'_'.$cnum.'" />'."\n"; |
$output = '<label><input type="checkbox" name="course_id" value="'.$cdom.'_'.$cnum.'" />'."\n"; |
} else { |
} else { |
$output = '<input type="button" value="Select" onClick="gochoose('. |
$output = '<input type="button" value="'.&mt('Select').'" onClick="gochoose('. |
"'".$cnum."','".$cdom."','".$cleandesc."')".'" />'."\n"; |
"'".$cnum."','".$cdom."','".$cleandesc."')".'" />'."\n"; |
} |
} |
return $output; |
return $output; |