--- loncom/interface/lonpickcourse.pm 2006/06/29 17:44:03 1.50.2.1
+++ loncom/interface/lonpickcourse.pm 2006/07/11 02:28:22 1.52
@@ -1,7 +1,7 @@
# The LearningOnline Network
# Pick a course
#
-# $Id: lonpickcourse.pm,v 1.50.2.1 2006/06/29 17:44:03 albertel Exp $
+# $Id: lonpickcourse.pm,v 1.52 2006/07/11 02:28:22 raeburn Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -53,7 +53,7 @@ sub handler {
'cdomelement','cnameelement','roleelement',
'pickedcourse','instcodefilter',
'ownerfilter','coursefilter','multiple',
- 'type']);
+ 'type','ownerdomfilter']);
# domain filter and selection
my $domainfilter=$env{'form.domainfilter'};
$domainfilter=~s/\W//g;
@@ -70,8 +70,13 @@ sub handler {
my $listinstcode=&HTML::Entities::encode($instcodefilter,'<>&"');
# course owner filter
my $ownerfilter=$env{'form.ownerfilter'};
- unless ($ownerfilter) { $ownerfilter=''; }
+ $ownerfilter=~s/\W//g;
my $listowner=&HTML::Entities::encode($ownerfilter,'<>&"');
+# course ownerdomain filter
+ my $ownerdomfilter=$env{'form.ownerdomfilter'};
+ $ownerdomfilter=~s/\W//g;
+ my $ownerdomselectform=
+ &Apache::loncommon::select_dom_form($ownerdomfilter,'ownerdomfilter',1);
# course ID filter for DCs only
my ($courseidtag,$coursefilter);
if ($env{'user.adv'} && $domainfilter && exists($env{'user.role.dc./'.
@@ -243,6 +248,7 @@ function setGroups() {
'cdo' => &mt('[_1] Domain',$type),
'cin' => &mt('Course Institutional Code'),
'cow' => &mt("[_1] Owner's Username",$type),
+ 'cod' => &mt("[_1] Owner's Domain", $type),
'cog' => &mt('Course or Group')
);
@@ -272,10 +278,9 @@ function setGroups() {
}
my $instcodeform;
if ($type eq 'Course') {
- $instcodeform = $lt{'cin'}.':
';
}
-
my %elements = (
Course => {
name => 'coursepick',
@@ -396,13 +401,15 @@ $multelement
$lt{'cac'}: $sincefilterform
$lt{'cdo'}: $domainselectform
-
+
+$lt{'cog'}: $typeselectform
$instcodeform
$lt{'cow'}:
+$lt{'cod'}: $ownerdomselectform
+
$courseidtag
$lt{'cde'}:
@@ -416,13 +423,17 @@ ENDSCRIPT
$r->rflush();
unless ($descriptfilter) { $descriptfilter='.'; }
unless ($instcodefilter) { $instcodefilter='.'; }
- unless ($ownerfilter) { $ownerfilter='.'; }
- unless ($coursefilter) { $coursefilter='.'; }
- unless ($type) { $type = '.'; }
+ my $combownerfilter;
+ if (($ownerfilter ne '') || ($ownerdomfilter ne '')) {
+ $combownerfilter = $ownerfilter.':'.$ownerdomfilter;
+ }
+ if ($combownerfilter eq '') { $combownerfilter='.'; }
+ if ($coursefilter eq '') { $coursefilter='.'; }
+ if ($type eq '') { $type = '.'; }
my $timefilter=($sincefilter==-1?1:time-$sincefilter);
- my %courses=
- &Apache::lonnet::courseiddump
- ($domainfilter,$descriptfilter,$timefilter,$instcodefilter,$ownerfilter,$coursefilter,undef,undef,$type);
+ my %courses = &Apache::lonnet::courseiddump($domainfilter,$descriptfilter,
+ $timefilter,$instcodefilter,$combownerfilter,
+ $coursefilter,undef,undef,$type);
$r->print('