--- loncom/interface/coursecatalog.pm 2008/07/13 20:13:10 1.38
+++ loncom/interface/coursecatalog.pm 2008/09/23 13:14:32 1.42
@@ -1,7 +1,7 @@
# The LearningOnline Network with CAPA
# Handler for displaying the course catalog interface
#
-# $Id: coursecatalog.pm,v 1.38 2008/07/13 20:13:10 raeburn Exp $
+# $Id: coursecatalog.pm,v 1.42 2008/09/23 13:14:32 bisitz Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -106,12 +106,14 @@ function changeSort(caller) {
document.$formname.sortby.value = caller;
document.$formname.submit();
}
+
function setCourseId(caller) {
document.$formname.coursenum.value = caller;
document.$formname.submit();
}
ENDSCRIPT
+ $catjs .= &courselink_javascript();
my $numtitles;
if ($env{'form.currcat_0'} eq 'instcode::0') {
$numtitles = &instcode_course_selector($r,$codedom,$formname,$domdesc,
@@ -155,8 +157,10 @@ sub course_details {
my $output;
my %add_entries = (topmargin => "0",
marginheight => "0",);
+ my $js = ''."\n";
my $start_page =
- &Apache::loncommon::start_page('Course Catalog','',
+ &Apache::loncommon::start_page('Course Catalog',$js,
{
'add_entries' => \%add_entries,
'no_inline_link' => 1,});
@@ -172,16 +176,43 @@ sub course_details {
{text=>"Course details"});
$r->print(&Apache::lonhtmlcommon::breadcrumbs('Course Details'));
$r->print('
'.&mt('Detailed course information:').'
'.
- '
');
+ return;
+}
+
+sub courselink_javascript {
+ return <<"END";
+
+function ToSyllabus(cdom,cnum) {
+ if (cdom == '' || cdom == null) {
+ return;
+ }
+ if (cnum == '' || cnum == null) {
+ return;
+ }
+ document.linklaunch.action = "/public/"+cdom+"/"+cnum+"/syllabus";
+ document.linklaunch.submit();
+}
+
+function ToSelfenroll(courseid) {
+ if (courseid == '') {
+ return;
+ }
+ document.linklaunch.action = "/adm/selfenroll";
+ document.linklaunch.courseid.value = courseid;
+ document.linklaunch.submit();
+}
+
+END
}
+
sub instcode_course_selector {
my ($r,$codedom,$formname,$domdesc,$catlinks,$catjs) = @_;
my %coursecodes = ();
@@ -734,9 +765,10 @@ sub print_course_listing {
my %domconfig =
&Apache::lonnet::get_dom('configuration',['usercreation'],$domain);
$output .= &construct_data_table($knownuser,\%courses,$details,undef,$now,\%domconfig,$trails,$allitems);
- if ($env{'form.coursenum'} ne '') {
- $output .= &Apache::lonhtmlcommon::echo_form_input(['coursenum','state','catalogfilter','sortby','showdetails']);
- }
+ $output .= "\n".'';
return $output;
}
@@ -778,7 +810,7 @@ sub construct_data_table {
$output .=
''.&mt('Default Access Dates for Students').' | '.
''.&mt('Student Counts').' | '.
- ''.&mt('Auto-enrollment of registered students').' | ';
+ ''.&mt('Auto-enrollment of[_1]registered students',' ').' | ';
} else {
$output .= ''.&mt('Details').' | ';
}
@@ -837,7 +869,7 @@ sub build_courseinfo_hash {
$cleandesc=~s/'/\\'/g;
$cleandesc =~ s/^\s+//;
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);
if (ref($courses->{$course}) eq 'HASH') {
$descr = $courses->{$course}{'description'};
@@ -925,10 +957,10 @@ sub build_courseinfo_hash {
}
}
if ($startaccess) {
- $accessdates .= &mt('From: ').$startaccess.'
';
+ $accessdates .= ''.&mt('From:[_1]',' '.$startaccess).'
';
}
if ($endaccess) {
- $accessdates .= &mt('To: ').$endaccess.'
';
+ $accessdates .= ''.&mt('To:[_1]',' '.$endaccess).'
';
}
if (($selfenroll_types ne '') &&
($selfenroll_end > 0 && $selfenroll_end > $now)) {
@@ -949,10 +981,10 @@ sub build_courseinfo_hash {
if ($selfenroll_start_access || $selfenroll_end_access) {
$accessdates .= '
'.&mt('Self-enrollers:').'
';
if ($selfenroll_start_access) {
- $accessdates .= &mt('From: ').$selfenroll_start_access.'
';
+ $accessdates .= ''.&mt('From:[_1]',' '.$selfenroll_start_access).'
';
}
if ($selfenroll_end_access) {
- $accessdates .= &mt('To: ').$selfenroll_end_access.'
';
+ $accessdates .= ''.&mt('To:[_1]',' '.$selfenroll_end_access).'
';
}
}
}
@@ -1039,7 +1071,7 @@ sub courseinfo_row {
''.$xlist_items.' | '.
''.$title.' ';
if ($showsyllabus) {
- $output .= &Apache::loncommon::syllabuswrapper(&mt('Syllabus'),$cnum,$cdom);
+ $output .= ''.&mt('Syllabus').'';
} else {
$output .= ' ';
}
@@ -1063,7 +1095,7 @@ sub courseinfo_row {
if (($info->{'selfenroll_start'} > 0) && ($info->{'selfenroll_start'} > $now)) {
$output .= ' | '.&mt('Starts: [_1]',''.$showstart.'').' '.&mt('Ends: [_1]',''.$showend.'').' | ';
} else {
- $output .= ''.&mt('Enroll in course').' | ';
+ $output .= ''.&mt('Enroll in course').' | ';
}
$selfenroll = 1;
}
@@ -1093,7 +1125,7 @@ sub identify_sections {
}
}
@secnums = sort {$a <=> $b} @secnums;
- my $seclist = join(', ',@secnums);
+ $seclist = join(', ',@secnums);
my $numsec = @secnums;
return ($seclist,$numsec);
}
@@ -1130,11 +1162,11 @@ sub get_valid_classes {
}
if ($totalitems > 0) {
if (@{$validations{'sections'}}) {
- $response = &mt('Sections: ').
+ $response = &mt('Sections:').' '.
join(', ',@{$validations{'sections'}}).'
';
}
if (@{$validations{'xlists'}}) {
- $response .= &mt('Courses: ').
+ $response .= &mt('Courses:').' '.
join(', ',@{$validations{'xlists'}});
}
}
@@ -1299,17 +1331,20 @@ sub autoenroll_info {
&get_valid_classes($seclist,$xlist_items,$code,
$owners,$cdom,$cnum);
if ($valid_classes ne '') {
- $autoenrolldates = &mt('Not enabled
Starts: ').
- $autostart.'
'.$valid_classes; }
+ $autoenrolldates = &mt('Not enabled').'
'
+ .&mt('Starts: [_1]',$autostart)
+ .'
'.$valid_classes;
+ }
}
} else {
if ($coursehash->{'internal.autoend'} && $coursehash->{'internal.autoend'} < $now) {
- $autoenrolldates = &mt('Not enabled
Ended: ').$autoend;
+ $autoenrolldates = &mt('Not enabled').'
'
+ .&mt('Ended: [_1]',$autoend);
} else {
my $valid_classes = &get_valid_classes($seclist,$xlist_items,
$code,$owners,$cdom,$cnum);
if ($valid_classes ne '') {
- $autoenrolldates = &mt('Currently enabled
').
+ $autoenrolldates = &mt('Currently enabled').'
'.
$valid_classes;
}
}