version 1.52, 2009/05/27 16:54:57
|
version 1.57, 2009/11/23 21:45:18
|
Line 149 ENDJS
|
Line 149 ENDJS
|
for (my $i=0; $i<$deeper; $i++) { |
for (my $i=0; $i<$deeper; $i++) { |
$r->print('<input type="hidden" name="currcat_'.$i.'" value="'.$env{'form.currcat_'.$i}.'" />'."\n"); |
$r->print('<input type="hidden" name="currcat_'.$i.'" value="'.$env{'form.currcat_'.$i}.'" />'."\n"); |
} |
} |
|
my $display_button; |
|
if ($env{'form.currcat_0'} eq 'communities::0') { |
|
$display_button = &mt('Display communities'); |
|
} else { |
|
$display_button = &mt('Display courses'); |
|
} |
$r->print('<input type="hidden" name="coursenum" value="" />'."\n". |
$r->print('<input type="hidden" name="coursenum" value="" />'."\n". |
'<input type="hidden" name="sortby" value="" />'."\n". |
'<input type="hidden" name="sortby" value="" />'."\n". |
'<input type="hidden" name="state" value="listing" />'."\n". |
'<input type="hidden" name="state" value="listing" />'."\n". |
'<input type="hidden" name="showdom" value="'. |
'<input type="hidden" name="showdom" value="'. |
$env{'form.showdom'}.'" />'. |
$env{'form.showdom'}.'" />'. |
'<input type="submit" name="catalogfilter" value="'. |
'<input type="submit" name="catalogfilter" value="'. |
&mt('Display courses').'" /></form><br /><br />'); |
$display_button.'" /></form><br /><br />'); |
} |
} |
if ($env{'form.state'} eq 'listing') { |
if ($env{'form.state'} eq 'listing') { |
$r->print(&print_course_listing($codedom,undef,\@trails,\%allitems,$subcats)); |
$r->print(&print_course_listing($codedom,undef,\@trails,\%allitems,$subcats)); |
Line 174 sub course_details {
|
Line 180 sub course_details {
|
my $js = '<script type="text/javascript">'."\n". |
my $js = '<script type="text/javascript">'."\n". |
&courselink_javascript().'</script>'."\n"; |
&courselink_javascript().'</script>'."\n"; |
my $start_page = |
my $start_page = |
&Apache::loncommon::start_page('Course Catalog',$js, |
&Apache::loncommon::start_page('Course/Community Catalog',$js, |
{ |
{ |
'add_entries' => \%add_entries, |
'add_entries' => \%add_entries, |
'no_inline_link' => 1,}); |
'no_inline_link' => 1,}); |
Line 182 sub course_details {
|
Line 188 sub course_details {
|
if ($env{'form.numtitles'} > 0) { |
if ($env{'form.numtitles'} > 0) { |
&Apache::lonhtmlcommon::add_breadcrumb |
&Apache::lonhtmlcommon::add_breadcrumb |
({href=>"/adm/coursecatalog", |
({href=>"/adm/coursecatalog", |
text=>"Select courses"}); |
text=>"Course/Community Catalog"}); |
} |
} |
&Apache::lonhtmlcommon::add_breadcrumb |
&Apache::lonhtmlcommon::add_breadcrumb |
({href=>"javascript:document.$formname.submit()", |
({href=>"javascript:document.$formname.submit()", |
text=>"Course listing"}, |
text=>"Course listing"}, |
{text=>"Course details"}); |
{text=>"Course details"}); |
$r->print(&Apache::lonhtmlcommon::breadcrumbs('Course Details')); |
$r->print(&Apache::lonhtmlcommon::breadcrumbs('Course/Community Catalog')); |
$r->print('<br />'.&mt('Detailed course information:').'<br /><br />'. |
$r->print('<br />'.&mt('Detailed course information:').'<br /><br />'. |
&print_course_listing($codedom,undef,$trails,$allitems). |
&print_course_listing($codedom,undef,$trails,$allitems). |
'<br /><br />'); |
'<br /><br />'); |
Line 292 sub cat_header {
|
Line 298 sub cat_header {
|
if ($numtitles > 0) { |
if ($numtitles > 0) { |
&Apache::lonhtmlcommon::add_breadcrumb |
&Apache::lonhtmlcommon::add_breadcrumb |
({href=>"/adm/coursecatalog", |
({href=>"/adm/coursecatalog", |
text=>"Select courses"}, |
text=>"Course/Community Catalog"}, |
{text=>"Course listing"}); |
{text=>"Course listing"}); |
} else { |
} else { |
&Apache::lonhtmlcommon::add_breadcrumb |
&Apache::lonhtmlcommon::add_breadcrumb |
({text=>"Course listing"}); |
({text=>"Course listing"}); |
} |
} |
$r->print(&Apache::lonhtmlcommon::breadcrumbs('Course Listing')); |
|
} else { |
} else { |
&Apache::lonhtmlcommon::add_breadcrumb |
&Apache::lonhtmlcommon::add_breadcrumb |
({href=>"/adm/coursecatalog", |
({href=>"/adm/coursecatalog", |
text=>"Select courses"}); |
text=>"Course/Community Catalog"}); |
$r->print(&Apache::lonhtmlcommon::breadcrumbs('Select courses')); |
|
} |
} |
|
$r->print(&Apache::lonhtmlcommon::breadcrumbs('Course/Community Catalog')); |
my $onchange; |
my $onchange; |
unless ($env{'form.interface'} eq 'textual') { |
unless ($env{'form.interface'} eq 'textual') { |
$onchange = 1; |
$onchange = 'this.form.submit()'; |
} |
} |
$r->print('<form name="coursecatdom" method="post" action="/adm/coursecatalog">'. |
$r->print('<form name="coursecatdom" method="post" action="/adm/coursecatalog">'. |
'<table border="0"><tr><td><b>'.&mt('Domain:').'</b></td><td>'. |
'<table border="0"><tr><td><b>'.&mt('Domain:').'</b></td><td>'. |
Line 326 sub category_breadcrumbs {
|
Line 331 sub category_breadcrumbs {
|
my ($dom,@cats) = @_; |
my ($dom,@cats) = @_; |
my $crumbsymbol = ' ▶ '; |
my $crumbsymbol = ' ▶ '; |
my ($currdepth,$deeper) = &get_depth_values(); |
my ($currdepth,$deeper) = &get_depth_values(); |
my $currcat_str = '<input type="hidden" name="catalog_maxdepth" value="'.$deeper.'" /><input type="hidden" name="showdom" value="'.$dom.'" />'; |
my $currcat_str = |
|
'<input type="hidden" name="catalog_maxdepth" value="'.$deeper.'" />'. |
|
'<input type="hidden" name="showdom" value="'.$dom.'" />'; |
my $catlinks = '<td valign="top"><b>'.&mt('Catalog:').'</b></td><td><table><tr>'; |
my $catlinks = '<td valign="top"><b>'.&mt('Catalog:').'</b></td><td><table><tr>'; |
my $has_subcats; |
my $has_subcats; |
my $selitem; |
my $selitem; |
Line 356 sub category_breadcrumbs {
|
Line 363 sub category_breadcrumbs {
|
$catlinks .= &mt('Official courses (with institutional codes)'). |
$catlinks .= &mt('Official courses (with institutional codes)'). |
'<input type="hidden" name="currcat_0" value="instcode::0" />'; |
'<input type="hidden" name="currcat_0" value="instcode::0" />'; |
$env{'form.currcat_0'} = 'instcode::0'; |
$env{'form.currcat_0'} = 'instcode::0'; |
|
} elsif ($cats[0][0] eq 'communities') { |
|
$catlinks .= &mt('Communities'). |
|
'<input type="hidden" name="currcat_0" value="instcode::0" />'; |
|
$env{'form.currcat_0'} = 'communities::0'; |
} else { |
} else { |
my $name = $cats[0][0]; |
my $name = $cats[0][0]; |
my $item = &escape($name).'::0'; |
my $item = &escape($name).'::0'; |
Line 378 sub category_breadcrumbs {
|
Line 389 sub category_breadcrumbs {
|
$catlinks .= '<option value="'.$item.'">'; |
$catlinks .= '<option value="'.$item.'">'; |
if ($name eq 'instcode') { |
if ($name eq 'instcode') { |
$catlinks .= &mt('Official courses (with institutional codes)'); |
$catlinks .= &mt('Official courses (with institutional codes)'); |
|
} elsif ($name eq 'communities') { |
|
$catlinks .= &mt('Communities'); |
} else { |
} else { |
$catlinks .= $name; |
$catlinks .= $name; |
} |
} |
Line 404 sub category_breadcrumbs {
|
Line 417 sub category_breadcrumbs {
|
my $currcat = $cat; |
my $currcat = $cat; |
if ($cat eq 'instcode') { |
if ($cat eq 'instcode') { |
$currcat = &mt('Official courses (with institutional codes)'); |
$currcat = &mt('Official courses (with institutional codes)'); |
|
} elsif ($cat eq 'communities') { |
|
$currcat = &mt('Communities'); |
} |
} |
$catlinks .= '<td><b>'.$currcat.'</b>'; |
$catlinks .= '<td><b>'.$currcat.'</b>'; |
if (ref($cats[$deeper]{$cat}) eq 'ARRAY') { |
if (ref($cats[$deeper]{$cat}) eq 'ARRAY') { |
Line 476 sub additional_filters {
|
Line 491 sub additional_filters {
|
if ($env{'form.showselfenroll'}) { |
if ($env{'form.showselfenroll'}) { |
$show_selfenroll_status = 'checked="checked" '; |
$show_selfenroll_status = 'checked="checked" '; |
} |
} |
|
my $selfenroll_text; |
|
if ($env{'form.currcat_0'} eq 'communities::0') { |
|
$selfenroll_text = &mt('Only show communities which allow self-enrollment'); |
|
} else { |
|
$selfenroll_text = &mt('Only show courses which allow self-enrollment'); |
|
} |
$output .= '<tr><td>'. |
$output .= '<tr><td>'. |
'<label><input type="checkbox" name="showselfenroll" value="1" '. |
'<label><input type="checkbox" name="showselfenroll" value="1" '. |
$show_selfenroll_status.'/>'. |
$show_selfenroll_status.'/>'.$selfenroll_text. |
&mt('Only show courses which allow self-enrollment'). |
|
'</label></td></tr>'; |
'</label></td></tr>'; |
if (&user_is_dc($codedom)) { |
if (&user_is_dc($codedom)) { |
my $showdetails_status; |
my $showdetails_status; |
Line 491 sub additional_filters {
|
Line 511 sub additional_filters {
|
$showhidden_status = 'checked="checked" '; |
$showhidden_status = 'checked="checked" '; |
} |
} |
my $dc_title = &Apache::lonnet::plaintext('dc'); |
my $dc_title = &Apache::lonnet::plaintext('dc'); |
|
my ($details_text,$hidden_text); |
|
if ($env{'form.currcat_0'} eq 'communities::0') { |
|
$details_text = &mt('Show full details for each community ([_1] only)',$dc_title); |
|
$hidden_text = &mt('Include communities set to be hidden from catalog ([_1] only)',$dc_title); |
|
} else { |
|
$details_text = &mt('Show full details for each course ([_1] only)',$dc_title); |
|
$hidden_text = &mt('Include courses set to be hidden from catalog ([_1] only)',$dc_title); |
|
} |
$output .= '<tr><td>'."\n". |
$output .= '<tr><td>'."\n". |
'<label><input type="checkbox" name="showdetails" value="1" '. |
'<label><input type="checkbox" name="showdetails" value="1" '. |
$showdetails_status.'/>'. |
$showdetails_status.'/>'.$details_text. |
&mt('Show full details for each course ([_1] only)',$dc_title). |
|
'</label>'."\n".'</td></tr><tr><td>'. |
'</label>'."\n".'</td></tr><tr><td>'. |
'<label><input type="checkbox" name="showhidden" value="1" '. |
'<label><input type="checkbox" name="showhidden" value="1" '. |
$showhidden_status.'/>'. |
$showhidden_status.'/>'.$hidden_text. |
&mt('Include courses set to be hidden from catalog ([_1] only)',$dc_title). |
|
'</label>'."\n".'</td></tr>'; |
'</label>'."\n".'</td></tr>'; |
} |
} |
$output .= '</table><br />'; |
$output .= '</table><br />'; |
Line 559 sub search_courselist {
|
Line 585 sub search_courselist {
|
} else { |
} else { |
$filterstr = $filter; |
$filterstr = $filter; |
} |
} |
my $showhidden; |
my ($showhidden,$typefilter); |
if (&user_is_dc($domain)) { |
if (&user_is_dc($domain)) { |
$showhidden = $env{'form.showhidden'}; |
$showhidden = $env{'form.showhidden'}; |
} |
} |
|
if ($env{'form.currcat_0'} eq 'communities::0') { |
|
$typefilter = 'Community'; |
|
} else { |
|
$typefilter = '.'; |
|
} |
%courses = |
%courses = |
&Apache::lonnet::courseiddump($domain,'.',1,'.','.','.',undef,undef, |
&Apache::lonnet::courseiddump($domain,'.',1,'.','.','.',undef,undef, |
'.',1,$env{'form.showselfenroll'}, |
$typefilter,1,$env{'form.showselfenroll'}, |
$filterstr,$showhidden,'coursecatalog'); |
$filterstr,$showhidden,'coursecatalog'); |
} |
} |
return %courses; |
return %courses; |
Line 597 sub print_course_listing {
|
Line 628 sub print_course_listing {
|
%courses = &search_courselist($domain,$subcats); |
%courses = &search_courselist($domain,$subcats); |
} |
} |
if (keys(%courses) == 0) { |
if (keys(%courses) == 0) { |
$output = &mt('No courses match the criteria you selected.'); |
if ($env{'form.currcat_0'} eq 'communities::0') { |
|
$output = &mt('No communities match the criteria you selected.'); |
|
} else { |
|
$output = &mt('No courses match the criteria you selected.'); |
|
} |
return $output; |
return $output; |
} |
} |
if (($knownuser) && (!$env{'form.showdetails'}) && (!&user_is_dc($domain))) { |
if (($knownuser) && (!$env{'form.showdetails'}) && (!&user_is_dc($domain))) { |
Line 733 sub build_courseinfo_hash {
|
Line 768 sub build_courseinfo_hash {
|
} |
} |
} |
} |
foreach my $owner (@owners) { |
foreach my $owner (@owners) { |
my ($ownername,$ownerdom) = @_; |
my ($ownername,$ownerdom); |
if ($owner =~ /:/) { |
if ($owner =~ /:/) { |
($ownername,$ownerdom) = split(/:/,$owner); |
($ownername,$ownerdom) = split(/:/,$owner); |
} else { |
} else { |