Diff for /loncom/interface/lonpickcourse.pm between versions 1.93.2.2 and 1.98

version 1.93.2.2, 2010/08/20 20:14:03 version 1.98, 2010/06/25 04:37:49
Line 143  sub handler { Line 143  sub handler {
     my ($numtitles,$showroles,$nohost);      my ($numtitles,$showroles,$nohost);
     if (!$onlyown) {      if (!$onlyown) {
         my $filterlist = ['domainfilter'];          my $filterlist = ['domainfilter'];
           # created filter for DCs only
         if ($env{'user.adv'} && $env{'form.domainfilter'} &&          if ($env{'user.adv'} && $env{'form.domainfilter'} &&
             exists($env{'user.role.dc./'.$env{'form.domainfilter'}.'/'})              exists($env{'user.role.dc./'.$env{'form.domainfilter'}.'/'})
             && $env{'form.form'} ne 'portform') {              && $env{'form.form'} ne 'portform') {
Line 152  sub handler { Line 153  sub handler {
             }              }
         }          }
         push(@{$filterlist},('descriptfilter','instcodefilter'));          push(@{$filterlist},('descriptfilter','instcodefilter'));
   
         if ($env{'form.form'} eq 'rules') {          if ($env{'form.form'} eq 'rules') {
             push(@{$filterlist},'personfilter');              push(@{$filterlist},'personfilter');
             if (($env{'form.personfilter'} ne '') && ($env{'form.persondomfilter'} ne '')) {              if (($env{'form.personfilter'} ne '') && ($env{'form.persondomfilter'} ne '')) {
Line 418  sub display_matched_courses { Line 418  sub display_matched_courses {
                             $canclone = 1;                              $canclone = 1;
                         }                          }
                     }                      }
                     unless ($canclone) {                      unless ($canclone) { 
                         if ($cc_cloneable{$cnum.':'.$cdom}) {                          if ($cc_cloneable{$cnum.':'.$cdom}) {
                             $canclone = 1;                              $canclone = 1;
                         }                          }
Line 551  sub build_filters { Line 551  sub build_filters {
     } else {      } else {
         $formname = $caller;          $formname = $caller;
     }      }
     my $onchange;      my $onchange = 'javascript:updateFilters(this)';
     unless ($env{'form.interface'} eq 'textual') {  
         $onchange = 'javascript:updateFilters(this)';  
     }  
     my ($domainselectform,$sincefilterform,$createdfilterform,      my ($domainselectform,$sincefilterform,$createdfilterform,
         $ownerdomselectform,$persondomselectform,$instcodeform,          $ownerdomselectform,$persondomselectform,$instcodeform,
         $typeselectform,$instcodetitle);          $typeselectform,$instcodetitle);
Line 619  sub build_filters { Line 616  sub build_filters {
         }          }
     }      }
   
   
     # last course activity filter and selection      # last course activity filter and selection
     $sincefilterform = &timebased_select_form('sincefilter',$filter);      $sincefilterform = &timebased_select_form('sincefilter',$filter);
   
Line 630  sub build_filters { Line 626  sub build_filters {
   
     my %lt = &Apache::lonlocal::texthash(      my %lt = &Apache::lonlocal::texthash(
                 'cac' => "$type Activity",                  'cac' => "$type Activity",
                 'ccr' => "$type Created",                  'ccr' => "$type Created", 
                 'cde' => "$type Title",                  'cde' => "$type Title",
                 'cdo' => "$type Domain",                  'cdo' => "$type Domain",
                 'ins' => 'Institutional Code',                  'ins' => 'Institutional Code',
Line 816  sub timebased_select_form { Line 812  sub timebased_select_form {
         $filter->{$item} = $env{'form.'.$item};          $filter->{$item} = $env{'form.'.$item};
         $filter->{$item} =~ s/[^\d-]//g;          $filter->{$item} =~ s/[^\d-]//g;
         if (!$filter->{$item}) { $filter->{$item}=-1; }          if (!$filter->{$item}) { $filter->{$item}=-1; }
         return &Apache::loncommon::select_form(          return &Apache::loncommon::select_form( 
                             $filter->{$item},                              $filter->{$item},
                             $item,                              $item,
                             (      '-1' => '',                              {      '-1' => '',
                                 '86400' => &mt('today'),                                  '86400' => &mt('today'),
                                '604800' => &mt('last week'),                                 '604800' => &mt('last week'),
                               '2592000' => &mt('last month'),                                '2592000' => &mt('last month'),
Line 828  sub timebased_select_form { Line 824  sub timebased_select_form {
                              '31104000' => &mt('last year'),                               '31104000' => &mt('last year'),
                     'select_form_order' =>                      'select_form_order' =>
                            ['-1','86400','604800','2592000','7776000',                             ['-1','86400','604800','2592000','7776000',
                             '15552000','31104000']));                              '15552000','31104000']});
     }      }
 }  }
   
Line 905  sub search_courses { Line 901  sub search_courses {
             }              }
         }          }
         my $now = time;          my $now = time;
         my $timefilter =          my $timefilter = 
            ($filter->{'sincefilter'}==-1?1:$now-$filter->{'sincefilter'});             ($filter->{'sincefilter'}==-1?1:$now-$filter->{'sincefilter'});
         my ($createdbefore,$createdafter);          my ($createdbefore,$createdafter);
         if (($filter->{'createdfilter'} ne '') && ($filter->{'createdfilter'} !=-1)) {          if (($filter->{'createdfilter'} ne '') && ($filter->{'createdfilter'} !=-1)) {
Line 1228  B<search_courses($r,$type,$onlyown,$filt Line 1224  B<search_courses($r,$type,$onlyown,$filt
                  $domcloner)>:                   $domcloner)>:
   
   
 Input: 8 -  request object, course type, search scope: only courses in which user has active role (1), or any course (0); anonymous hash of criteria and their values; for institutional codes - number of categories; optional username of new course owner, optional domain of new course owner). Seventh and eighth needed when search is for courses to clone from course request form, or course creation form (DC). Optional "domcloner" flag (has value=1 if user has ccc priv in domain being filtered by (used when DC is using course creation form).  Input: 8 -  request object, course type, search scope: only courses in which user has active role (1), or any course (0); anonymous hash of criteria and their values; for institutional codes - number of categories; optional username of new course owner, optional domain of new course owner). Last two needed when search is for courses to clone from course request form, or course creation form (DC). Optional "domcloner" flag (has value=1 if user has ccc priv in  
   domain being filtered by (used when DC is using course creation form).
   
 Output: 1 - %courses - hash of courses satisfying search criteria, keys = course IDs, values are corresponding colon-separated escaped description, institutional code, owner and type.  Output: 1 - %courses - hash of courses satisfying search criteria, keys = course IDs, values are corresponding colon-separated escaped description, institutional code, owner and type.
   

Removed from v.1.93.2.2  
changed lines
  Added in v.1.98


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>