--- loncom/interface/lonpickcourse.pm 2005/04/07 06:56:23 1.27
+++ loncom/interface/lonpickcourse.pm 2005/12/15 23:31:32 1.36
@@ -1,7 +1,7 @@
# The LearningOnline Network
# Pick a course
#
-# $Id: lonpickcourse.pm,v 1.27 2005/04/07 06:56:23 albertel Exp $
+# $Id: lonpickcourse.pm,v 1.36 2005/12/15 23:31:32 raeburn Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -54,7 +54,8 @@ ENDDOCUMENT
($ENV{'QUERY_STRING'},['domainfilter','descriptfilter',
'sincefilter','form','cnumelement',
'cdomelement','cnameelement','roleelement',
- 'pickedcourse','instcodefilter','ownerfilter']);
+ 'pickedcourse','instcodefilter',
+ 'ownerfilter','coursefilter','multiple']);
# domain filter and selection
my $domainfilter=$env{'form.domainfilter'};
$domainfilter=~s/\W//g;
@@ -73,6 +74,18 @@ ENDDOCUMENT
my $ownerfilter=$env{'form.ownerfilter'};
unless ($ownerfilter) { $ownerfilter=''; }
my $listowner=&HTML::Entities::encode($ownerfilter,'<>&"');
+# course ID filter for DCs only
+ my ($courseidtag,$coursefilter);
+ if ($env{'user.adv'} && $domainfilter && exists($env{'user.role.dc./'.
+ $domainfilter.'/'})) {
+ $coursefilter=$env{'form.coursefilter'};
+ unless ($coursefilter) { $coursefilter=''; }
+ my $listcourseid=&HTML::Entities::encode($coursefilter,'<>&"');
+ $courseidtag = &mt('LON-CAPA course ID');
+ $courseidtag .= qq|
+
+ |;
+ }
# last course activity filter and selection
my $sincefilter=$env{'form.sincefilter'};
$sincefilter=~s/[^\d-]//g;
@@ -98,11 +111,21 @@ ENDDOCUMENT
$num_sections = &Apache::loncommon::get_sections($cdom,$cnum,\%sections_count);
my @sections = ();
if ($num_sections > 0) {
- @sections = (sort {$a <=> $b} keys %sections_count);
+ @sections = (sort {$a <=> $b} keys(%sections_count));
$seclist = join('","',@sections);
}
}
- $r->print(&Apache::loncommon::bodytag("Selecting a Course",undef,$loaditem));
+ my $jscript;
+ my $title = 'Selecting a course';
+# Setup for multiple course selections, if flag for multiples set.
+ my $multiple = $env{'form.multiple'};
+ my $multelement;
+ if ($multiple) {
+ $title = 'Selecting course(s)';
+ $jscript = &Apache::loncommon::check_uncheck_jscript();
+ $multelement = '';
+ }
+ $r->print(&Apache::loncommon::bodytag($title,undef,$loaditem,undef,undef,undef,undef,1));
my %lt=&Apache::lonlocal::texthash(
'cac' => 'Course Activity',
'cde' => 'Course Description',
@@ -126,23 +149,63 @@ ENDDOCUMENT
my $roledom = $env{'form.roleelement'};
if ($roledom) {
$roleelement = '';
- $submitopener = &Apache::lonroles::processpick($roledom);
+ $submitopener = &Apache::lonroles::processpick();
$autosubmit = 'process_pick("'.$roledom.'")';
}
$r->print(<
-function gochoose(cname,cdom,cdesc) {
- $name_code
+function gochoose(cname,cdom,cdesc,multiple,caller) {
var openerForm = "$env{'form.form'}";
- opener.document.$env{'form.form'}.$env{'form.cnumelement'}.value=cname;
- if (openerForm == 'cu' || openerForm == 'rolechoice') {
- opener.document.$env{'form.form'}.$env{'form.cdomelement'}.value=cdom;
- }
- else {
+ courseCount = 0;
+ var courses = '';
+ if (multiple) {
+ if (typeof(document.courselist.course_id.length) == 'undefined') {
+ // only 1 course checkbox was created
+ if (document.courselist.course_id.checked) {
+ courses = courses + document.courselist.course_id.value + "&&";
+ courseCount ++;
+ }
+ } else {
+ for (var j=0; j 0) {
+ courses = courses.substr(0,courses.length-2);
+ opener.document.$env{'form.form'}.courselist.value = courses;
+ }
+ } else {
+ $name_code
+ opener.document.$env{'form.form'}.$env{'form.cnumelement'}.value=cname;
var slct=opener.document.$env{'form.form'}.$env{'form.cdomelement'};
- var i;
- for (i=0;i
$submitopener
-');
+ ''."\n");
+ if ((exists($env{'form.roleelement'})) && ($env{'form.form'} eq 'rolechoice')) {
+ $r->print(''."\n");
+ }
+ $r->print("\n");
}
$r->print('