version 1.36, 2008/07/07 15:20:18
|
version 1.40, 2008/07/15 19:43:15
|
Line 53 sub handler {
|
Line 53 sub handler {
|
} |
} |
&Apache::lonacc::get_posted_cgi($r); |
&Apache::lonacc::get_posted_cgi($r); |
&Apache::lonlocal::get_language_handle($r); |
&Apache::lonlocal::get_language_handle($r); |
&Apache::loncommon::get_unprocessed_cgi($ENV{'QUERY_STRING'},['sortby']); |
&Apache::loncommon::get_unprocessed_cgi($ENV{'QUERY_STRING'}, |
|
['sortby','showdom']); |
|
|
my $codedom = &Apache::lonnet::default_login_domain(); |
my $codedom = &Apache::lonnet::default_login_domain(); |
|
|
Line 101 function setCatDepth(depth) {
|
Line 102 function setCatDepth(depth) {
|
return; |
return; |
} |
} |
|
|
ENDSCRIPT |
|
if ($env{'form.state'} eq 'listing') { |
|
$catjs .= qq| |
|
function changeSort(caller) { |
function changeSort(caller) { |
document.$formname.sortby.value = caller; |
document.$formname.sortby.value = caller; |
document.$formname.submit(); |
document.$formname.submit(); |
} |
} |
|
|
function setCourseId(caller) { |
function setCourseId(caller) { |
document.$formname.coursenum.value = caller; |
document.$formname.coursenum.value = caller; |
document.$formname.submit(); |
document.$formname.submit(); |
}\n|; |
} |
} |
|
|
ENDSCRIPT |
|
$catjs .= &syllabus_javascript(); |
my $numtitles; |
my $numtitles; |
if ($env{'form.currcat_0'} eq 'instcode::0') { |
if ($env{'form.currcat_0'} eq 'instcode::0') { |
$numtitles = &instcode_course_selector($r,$codedom,$formname,$domdesc, |
$numtitles = &instcode_course_selector($r,$codedom,$formname,$domdesc, |
Line 156 sub course_details {
|
Line 157 sub course_details {
|
my $output; |
my $output; |
my %add_entries = (topmargin => "0", |
my %add_entries = (topmargin => "0", |
marginheight => "0",); |
marginheight => "0",); |
|
my $js = '<script type="text/javascript">'."\n". |
|
&syllabus_javascript().'</script>'."\n"; |
my $start_page = |
my $start_page = |
&Apache::loncommon::start_page('Course Catalog','', |
&Apache::loncommon::start_page('Course Catalog',$js, |
{ |
{ |
'add_entries' => \%add_entries, |
'add_entries' => \%add_entries, |
'no_inline_link' => 1,}); |
'no_inline_link' => 1,}); |
Line 173 sub course_details {
|
Line 176 sub course_details {
|
{text=>"Course details"}); |
{text=>"Course details"}); |
$r->print(&Apache::lonhtmlcommon::breadcrumbs('Course Details')); |
$r->print(&Apache::lonhtmlcommon::breadcrumbs('Course Details')); |
$r->print('<br />'.&mt('Detailed course information:').'<br /><br />'. |
$r->print('<br />'.&mt('Detailed course information:').'<br /><br />'. |
'<form name="'.$formname.'" method="post">'. |
|
&print_course_listing($codedom,undef,$trails,$allitems). |
&print_course_listing($codedom,undef,$trails,$allitems). |
'<br /><br />'); |
'<br /><br />'); |
$r->print('<a href = "javascript:document.coursecatalog.submit()">'. |
$r->print('<form name="'.$formname.'" method="post" action="/adm/coursecatalog">'. |
|
'<a href = "javascript:document.coursecatalog.submit()">'. |
&mt('Back to course listing').'</a>'. |
&mt('Back to course listing').'</a>'. |
'<input type="hidden" name="sortby" value="'. |
&Apache::lonhtmlcommon::echo_form_input(['coursenum','catalogfilter','showdetails']).'</form>'); |
$env{'form.sortby'}.'" />'. |
return; |
'<input type="hidden" name="state" value="listing" /></form>'); |
} |
|
|
|
sub syllabus_javascript { |
|
return <<"END"; |
|
|
|
function ToSyllabus(cdom,cnum) { |
|
if (cdom == '' || cdom == null) { |
|
return; |
|
} |
|
if (cnum == '' || cnum == null) { |
|
return; |
|
} |
|
document.syllabuslaunch.action = "/public/"+cdom+"/"+cnum+"/syllabus"; |
|
document.syllabuslaunch.submit(); |
|
} |
|
|
|
END |
} |
} |
|
|
|
|
sub instcode_course_selector { |
sub instcode_course_selector { |
my ($r,$codedom,$formname,$domdesc,$catlinks,$catjs) = @_; |
my ($r,$codedom,$formname,$domdesc,$catlinks,$catjs) = @_; |
my %coursecodes = (); |
my %coursecodes = (); |
Line 319 function setElements() {
|
Line 339 function setElements() {
|
'<input type="submit" name="catalogfilter" value="'. |
'<input type="submit" name="catalogfilter" value="'. |
&mt('Display courses').'" />'. |
&mt('Display courses').'" />'. |
'<input type="hidden" name="numtitles" value="'.$numtitles. |
'<input type="hidden" name="numtitles" value="'.$numtitles. |
'" /></form>'); |
'" /></form><br /><br />'); |
if (($numtitles > 0) && ($env{'form.state'} eq 'listing')) { |
|
$r->print('<br />'); |
|
} |
|
} else { |
} else { |
&cat_header($r,$codedom,$js,\%add_entries,$catlinks,$numtitles); |
&cat_header($r,$codedom,$js,\%add_entries,$catlinks,$numtitles); |
my $cat_maxdepth = $env{'form.catalog_maxdepth'}; |
my $cat_maxdepth = $env{'form.catalog_maxdepth'}; |
Line 492 sub additional_filters {
|
Line 509 sub additional_filters {
|
$output .= '<tr><td><label>'. |
$output .= '<tr><td><label>'. |
'<input type="checkbox" name="withsubcats" value="1" '. |
'<input type="checkbox" name="withsubcats" value="1" '. |
$include_subcat_status.'/>'. |
$include_subcat_status.'/>'. |
&mt('Include subcategories within "[_1]"',$catname). |
&mt('Include subcategories within "[_1]"', |
'</label></td></tr>'; |
&unescape($catname)).'</label></td></tr>'; |
} |
} |
} |
} |
my $show_selfenroll_status; |
my $show_selfenroll_status; |
Line 738 sub print_course_listing {
|
Line 755 sub print_course_listing {
|
my %domconfig = |
my %domconfig = |
&Apache::lonnet::get_dom('configuration',['usercreation'],$domain); |
&Apache::lonnet::get_dom('configuration',['usercreation'],$domain); |
$output .= &construct_data_table($knownuser,\%courses,$details,undef,$now,\%domconfig,$trails,$allitems); |
$output .= &construct_data_table($knownuser,\%courses,$details,undef,$now,\%domconfig,$trails,$allitems); |
if ($env{'form.coursenum'} ne '') { |
$output .= "\n".'<form name="syllabuslaunch" method="post" action="">'. |
$output .= &Apache::lonhtmlcommon::echo_form_input(['coursenum','state','catalogfilter','sortby','showdetails']); |
'<input type="hidden" name="backto" value="coursecatalog" />'. |
} |
&Apache::lonhtmlcommon::echo_form_input(['catalogfilter']).'</form>'; |
return $output; |
return $output; |
} |
} |
|
|
Line 841 sub build_courseinfo_hash {
|
Line 858 sub build_courseinfo_hash {
|
$cleandesc=~s/'/\\'/g; |
$cleandesc=~s/'/\\'/g; |
$cleandesc =~ s/^\s+//; |
$cleandesc =~ s/^\s+//; |
my ($cdom,$cnum)=split(/\_/,$course); |
my ($cdom,$cnum)=split(/\_/,$course); |
my ($descr,$instcode,$singleowner,$ttype,$selfenroll_types, |
my ($instcode,$singleowner,$ttype,$selfenroll_types, |
$selfenroll_start,$selfenroll_end,@owners,%ownernames,$categories); |
$selfenroll_start,$selfenroll_end,@owners,%ownernames,$categories); |
if (ref($courses->{$course}) eq 'HASH') { |
if (ref($courses->{$course}) eq 'HASH') { |
$descr = $courses->{$course}{'description'}; |
$descr = $courses->{$course}{'description'}; |
Line 1043 sub courseinfo_row {
|
Line 1060 sub courseinfo_row {
|
'<td>'.$xlist_items.'</td>'. |
'<td>'.$xlist_items.'</td>'. |
'<td>'.$title.' <font size="-2">'; |
'<td>'.$title.' <font size="-2">'; |
if ($showsyllabus) { |
if ($showsyllabus) { |
$output .= &Apache::loncommon::syllabuswrapper(&mt('Syllabus'),$cnum,$cdom); |
$output .= '<a href="javascript:ToSyllabus('."'$cdom','$cnum'".')">'.&mt('Syllabus').'</a>'; |
} else { |
} else { |
$output .= ' '; |
$output .= ' '; |
} |
} |
Line 1097 sub identify_sections {
|
Line 1114 sub identify_sections {
|
} |
} |
} |
} |
@secnums = sort {$a <=> $b} @secnums; |
@secnums = sort {$a <=> $b} @secnums; |
my $seclist = join(', ',@secnums); |
$seclist = join(', ',@secnums); |
my $numsec = @secnums; |
my $numsec = @secnums; |
return ($seclist,$numsec); |
return ($seclist,$numsec); |
} |
} |