--- loncom/interface/loncommon.pm 2009/08/06 04:05:38 1.880 +++ loncom/interface/loncommon.pm 2009/08/08 19:55:04 1.882 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # a pile of common routines # -# $Id: loncommon.pm,v 1.880 2009/08/06 04:05:38 raeburn Exp $ +# $Id: loncommon.pm,v 1.882 2009/08/08 19:55:04 raeburn Exp $ # # Copyright Michigan State University Board of Trustees # @@ -602,7 +602,7 @@ sub userbrowser_javascript { my $id_functions = &javascript_index_functions(); return <<"ENDUSERBRW"; -function openuserbrowser(formname,uname,udom,ulast,ufirst,uemail,hideudom) { +function openuserbrowser(formname,uname,udom,ulast,ufirst,uemail,hideudom,crsdom) { var url = '/adm/pickuser?'; var userdom = getDomainFromSelectbox(formname,udom); if (userdom != null) { @@ -615,7 +615,8 @@ function openuserbrowser(formname,uname, '&ulastelement='+ulast+ '&ufirstelement='+ufirst+ '&uemailelement='+uemail+ - '&hideudomelement='+hideudom; + '&hideudomelement='+hideudom+ + '&coursedom='+crsdom; var title = 'User_Browser'; var options = 'scrollbars=1,resizable=1,menubar=0'; options += ',width=700,height=600'; @@ -713,9 +714,11 @@ sub selectauthor_link { } sub selectuser_link { - my ($form,$unameelem,$domelem,$lastelem,$firstelem,$emailelem,$hdomelem,$linktext) = @_; + my ($form,$unameelem,$domelem,$lastelem,$firstelem,$emailelem,$hdomelem, + $coursedom,$linktext) = @_; return ''.$linktext.''; + "'$lastelem','$firstelem','$emailelem','$hdomelem','$coursedom'". + ');">'.$linktext.''; } sub check_uncheck_jscript { @@ -9857,7 +9860,8 @@ sub check_clone { $clonemsg = &mt('No new course created.').$linefeed.&mt('A new course could not be cloned from the specified original - [_1] - because it is a non-existent course.',$args->{'clonecourse'}.':'.$args->{'clonedomain'}); } else { my %clonedesc = &Apache::lonnet::coursedescription($cloneid,{'one_time' => 1}); - if ($env{'request.role.domain'} eq $args->{'clonedomain'}) { + if (($env{'request.role.domain'} eq $args->{'clonedomain'}) && + (&Apache::lonnet::allowed('ccc',$env{'request.role.domain'}))) { $can_clone = 1; } else { my %clonehash = &Apache::lonnet::get('environment',['cloners'], @@ -9885,7 +9889,7 @@ sub check_clone { } sub construct_course { - my ($args,$logmsg,$courseid,$crsudom,$crsunum,$udom,$uname,$context) = @_; + my ($args,$logmsg,$courseid,$crsudom,$crsunum,$udom,$uname,$context,$cnum) = @_; my $outcome; my $linefeed = '
'."\n"; if ($context eq 'auto') { @@ -9923,7 +9927,8 @@ sub construct_course { $args->{'crscode'}, $args->{'ccuname'}.':'. $args->{'ccdomain'}, - $args->{'crstype'}); + $args->{'crstype'}, + $cnum); # Note: The testing routines depend on this being output; see # Utils::Course. This needs to at least be output as a comment