--- loncom/interface/lonrequestcourse.pm 2015/09/01 14:11:26 1.94 +++ loncom/interface/lonrequestcourse.pm 2018/09/02 01:16:59 1.95.2.3 @@ -1,7 +1,7 @@ # The LearningOnline Network # Request a course # -# $Id: lonrequestcourse.pm,v 1.94 2015/09/01 14:11:26 raeburn Exp $ +# $Id: lonrequestcourse.pm,v 1.95.2.3 2018/09/02 01:16:59 raeburn Exp $ # # Copyright Michigan State University Board of Trustees # @@ -2097,6 +2097,18 @@ sub print_personnel_menu { $output .= &Apache::lonhtmlcommon::row_headline(). '

'.&Apache::loncommon::help_open_topic('Course_Request_Personnel').' '.$lt{$crstype}.' '.&mt('Include other personnel?').'

'; } + my $cansearch = 1; + my @alldoms = &Apache::lonnet::all_domains(); + if (@alldoms == 1) { + my %domsrch = &Apache::lonnet::get_dom('configuration', + ['directorysrch'],$alldoms[0]); + if (ref($domsrch{'directorysrch'}) eq 'HASH') { + if ((!$domsrch{'directorysrch'}{'available'}) && + ($domsrch{'directorysrch'}{'lcavailable'} eq '0')) { + $cansearch = 0; + } + } + } for (my $i=0; $i<$persontotal; $i++) { my @linkargs = map { 'person_'.$i.'_'.$_ } (@items); my $linkargstr = join("','",@linkargs); @@ -2121,9 +2133,14 @@ sub print_personnel_menu { } $sectionselector .= $newtitle. ''."\n"; - my $usersrchlinktxt = &mt('Search for user'); - my $usersrchlink = &Apache::loncommon::selectuser_link($formname,@linkargs,$dom, - $usersrchlinktxt); + my $usersrchlink; + if ($cansearch) { + my $usersrchlinktxt = &mt('Search for user'); + $usersrchlink = &Apache::loncommon::selectuser_link($formname,@linkargs,$dom, + $usersrchlinktxt); + } else { + $usersrchlink = ' '; + } my $userchklinktxt = &mt('Check username'); my $userchklink = &Apache::loncommon::selectuser_link($formname,@linkargs,$dom, $userchklinktxt,'checkusername'); @@ -3162,7 +3179,7 @@ sub clone_form { &Apache::loncommon::select_dom_form($dom,'clonedom').''. &Apache::lonhtmlcommon::row_closure(1). &Apache::lonhtmlcommon::row_title($lt{'cid'}).' '. &Apache::loncommon::selectcourse_link($formname,'clonecrs','clonedom','','','',$type). &Apache::lonhtmlcommon::row_closure(1). @@ -4554,7 +4571,16 @@ sub print_textbook_form { $cc_clone .= $cdom.':'.$cnum.'&'; unless (exists($cloneable{$cdom.'_'.$cnum})) { my %courseinfo = &Apache::lonnet::coursedescription($cdom.'_'.$cnum,{'one_time' => 1}); - $cloneable{$cdom.'_'.$cnum} = \%courseinfo; + $cloneable{$cdom.'_'.$cnum} = { + context => $courseinfo{'internal.creationcontext'}, + created => $courseinfo{'internal.created'}, + creator => $courseinfo{'internal.creator'}, + description => $courseinfo{'description'}, + inst_code => $courseinfo{'coursecode'}, + owner => $courseinfo{'internal.courseowner'}, + releaserequired => $courseinfo{'internal.releaserequired'}, + type => $courseinfo{'type'}, + }; } } @@ -4849,19 +4875,12 @@ sub clone_selection_table { my $cleantitle=&HTML::Entities::encode($title,'<>&"'); $cleantitle=~s/'/\\'/g; $cleantitle =~ s/^\s+//; - my ($namestr,$singleowner,$otherowners,@owners,%ownernames); - if ($name eq 'colleague') { - $singleowner = $cloneableref->{$cid}{'owner'}; - $otherowners = $cloneableref->{$cid}{'co-owners'}; - } else { - $singleowner = $cloneableref->{$cid}{'internal.courseowner'}; - $otherowners = $cloneableref->{$cid}{'internal.co-owners'}; - } - if ($singleowner ne '') { - push(@owners,$singleowner); + my ($namestr,@owners,%ownernames); + if ($cloneableref->{$cid}{'owner'} ne '') { + push(@owners,$cloneableref->{$cid}{'owner'}); } - if ($otherowners ne '') { - foreach my $item (split(/,/,$otherowners)) { + if ($cloneableref->{$cid}{'co-owners'} ne '') { + foreach my $item (split(/,/,$cloneableref->{$cid}{'co-owners'})) { if (($item ne '') && (!grep(/^\Q$item\E$/,@owners))) { push(@owners,$item); } @@ -5013,6 +5032,9 @@ sub process_textbook_request { } else { $details->{dateshift} = ''; } + } elsif (($reqtype eq 'textbook') || ($reqtype eq 'template')) { + $details->{datemode} = 'delete'; + $details->{dateshift} = ''; } if ($details->{dateshift} ne '') { $details->{dateshift} =~ s/[^\d\.]+//g;