--- loncom/interface/lonpickcourse.pm 2010/07/08 23:19:19 1.99
+++ loncom/interface/lonpickcourse.pm 2013/03/25 04:05:30 1.107
@@ -1,7 +1,7 @@
# The LearningOnline Network
# Pick a course
#
-# $Id: lonpickcourse.pm,v 1.99 2010/07/08 23:19:19 raeburn Exp $
+# $Id: lonpickcourse.pm,v 1.107 2013/03/25 04:05:30 raeburn Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -31,6 +31,7 @@ package Apache::lonpickcourse;
use strict;
use Apache::Constants qw(:common);
use Apache::loncommon;
+use Apache::lonhtmlcommon;
use Apache::loncoursedata;
use Apache::lonnet;
use Apache::lonlocal;
@@ -105,7 +106,7 @@ sub handler {
if ((($env{'form.form'} eq 'cu') || ($env{'form.form'} eq 'studentform')) &&
($env{'form.pickedcourse'})) {
- $loaditem{'onload'} .= 'setRoles();setSections();';
+ $loaditem{'onload'} .= 'setDefaultCredits();setRoles();setSections();';
}
my $js = &js_changer();
$r->print(&Apache::loncommon::start_page($title,$js,
@@ -133,8 +134,7 @@ sub handler {
$onlyown) {
$r->print(&gochoose_javascript($type,$multiple,$autosubmit,$lastaction));
}
- $r->print('');
+ $r->print(&Apache::lonhtmlcommon::scripttag($jscript));
$r->print($submitopener);
# ------------------------------------------ Display of filters to limit search
@@ -207,20 +207,19 @@ sub handler {
}
sub js_changer {
- return <<"ENDJS";
+ return <
-
+//
ENDJS
-
}
sub processpick {
@@ -282,6 +281,13 @@ sub create_user_javascript {
my $cdom = $coursedescription{'domain'};
my $cnum = $coursedescription{'num'};
my $crstype = $coursedescription{'type'};
+ my %domdefs = &Apache::lonnet::get_domain_defaults($cdom);
+ my ($showcredits,$credits);
+ if (($crstype ne 'Community') &&
+ ($domdefs{'officialcredits'} || $domdefs{'unofficialcredits'})) {
+ $showcredits = 1;
+ $credits = $coursedescription{'internal.defaultcredits'};
+ }
my $sec_element = 'currsec';
my $grplist_element = 'groups';
my ($sections,$groups) =
@@ -292,6 +298,7 @@ sub create_user_javascript {
my $groupslist = join(',',@{$groups});
$output = qq|
|;
-;
}
return $output;
}
@@ -325,9 +341,10 @@ sub display_matched_courses {
my $ccrolechk = ' ';
my $menuchk = ' checked="checked" ';
$r->print(
- ''
- .''.&mt('Action').' '
- .''
+ .' '
);
}
}
@@ -364,9 +381,9 @@ sub display_matched_courses {
}
if ($numcourses > 1 && $multiple) {
- $r->print(' print('
-
');
}
@@ -439,10 +456,10 @@ sub display_matched_courses {
}
}
}
- push(@owners,&unescape($courses{$course}{'owner'}));
- if (ref($courses{$course}{'co-owners'}) eq 'ARRAY') {
- foreach my $item (@{$courses{$course}{'co-owners'}}) {
- push(@owners,&unescape($item));
+ push(@owners,$courses{$course}{'owner'});
+ if ($courses{$course}{'co-owners'} ne '') {
+ foreach my $item (split(/,/,$courses{$course}{'co-owners'})) {
+ push(@owners,$item);
}
}
} else {
@@ -494,9 +511,9 @@ sub display_matched_courses {
}
if (!%courses) {
- $r->print(&mt('None found'));
+ $r->print(''.&mt('None found').'
');
} elsif ($multiple) {
- $r->print(' ');
+ $r->print(' ');
}
$r->print(' '.
"\n".' '."\n".
@@ -645,7 +662,7 @@ sub build_filters {
} else {
$typeselectform = ' ';
}
}
- $output .= ' '."\n".
+ $output .= ' '."\n".
'
'."\n".''."\n".' '."\n";
return $jscript.$warning.$output;
@@ -830,7 +847,11 @@ sub timebased_select_form {
sub get_coordinator_cloneable {
my ($cloneruname,$clonerudom,$type) = @_;
- if (&Apache::lonnet::homeserver($cloneruname,$clonerudom) eq 'no_host') {
+ if (($cloneruname!~/\w/) || ($clonerudom!~/\w/)) {
+ my $warning = ''.&mt('Intended course owner not specified').
+ '
';
+ return ('',$warning);
+ } elsif (&Apache::lonnet::homeserver($cloneruname,$clonerudom) eq 'no_host') {
my $warning = ''.&mt('Intended course owner does not exist').
'
';
return ('',$warning);
@@ -888,7 +909,7 @@ sub search_courses {
$ccrole = 'cc';
}
if (!$onlyown) {
- $r->print(&mt('Searching ...').' ');
+ $r->print(''.&mt('Searching ...').'
');
$r->rflush();
if (($filter->{'ownerfilter'} ne '') ||
($filter->{'ownerdomfilter'} ne '')) {
@@ -1007,8 +1028,7 @@ sub gochoose_javascript {
list => 'courselist',
},
);
- my $output .= qq|
-
|;
- return $output;
+ return &Apache::lonhtmlcommon::scripttag($output);
}
1;
@@ -1285,7 +1309,7 @@ javascript functions used when user sele
=item
-(g) Scantron Operator uploading a scantron file to a course - course number is written to visible form element in opener window. Child window closes.
+(g) Bubblesheet Scanning Operator uploading a bubblesheet file to a course - course number is written to visible form element in opener window. Child window closes.
=item