--- loncom/interface/loncreateuser.pm 2006/05/09 15:09:27 1.115 +++ loncom/interface/loncreateuser.pm 2006/05/30 12:46:09 1.118 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # Create a user # -# $Id: loncreateuser.pm,v 1.115 2006/05/09 15:09:27 albertel Exp $ +# $Id: loncreateuser.pm,v 1.118 2006/05/30 12:46:09 www Exp $ # # Copyright Michigan State University Board of Trustees # @@ -64,6 +64,9 @@ use Apache::Constants qw(:common :http); use Apache::lonnet; use Apache::loncommon; use Apache::lonlocal; +use Apache::longroup; +use lib '/home/httpd/lib/perl/'; +use LONCAPA; my $loginscript; # piece of javascript used in two separate instances my $generalrule; @@ -235,25 +238,26 @@ sub user_modification_js { else { sections = document.cu.elements[i+1].value; } - var newsecs = document.cu.elements[i+1].value; - if (newsecs != null && newsecs != "") { - var numsplit = newsecs.split(/,/g); - numsec = numsec + numsplit.length; + var newseclist = document.cu.elements[i+1].value; + var newsecs = new Array(); + if (newseclist != null && newseclist != "") { + newsecs = newseclist.split(/,/g); + numsec = numsec + newsecs.length; } if ((role == 'st') && (numsec > 1)) { alert("In each course, each user may only have one student role at a time. You had selected "+numsec+" sections.\\nPlease modify your selections so they include no more than one section.") return; } else { - for (var j=0; j 1)) { alert("In each course, each user may only have one student role at a time. You had selected "+numsections+" sections.\\nPlease modify your selections so they include no more than one section.") return; } - for (var j=0; j
'); } } @@ -1238,7 +1243,8 @@ END '
'); } } elsif ($_=~/^form\.del/) { - if ($_=~/^form\.del\:([^\_]+)\_([^\_]+)$/) { + if ($_=~/^form\.del\:([^\_]+)\_([^\_\.]+)$/) { +# Delete standard role $r->print(&mt('Deleting').' '.$2.' in '.$1.': '. &Apache::lonnet::assignrole($env{'form.ccdomain'}, $env{'form.ccuname'},$1,$2,$now,0,1).'
'); @@ -1249,16 +1255,26 @@ END &Apache::lonnet::critical('put:'. $env{'course.'.$cid.'.domain'}.':'. $env{'course.'.$cid.'.num'}.':classlist:'. - &Apache::lonnet::escape($env{'form.ccuname'}.':'. + &escape($env{'form.ccuname'}.':'. $env{'form.ccdomain'}).'='. - &Apache::lonnet::escape($now.':'), + &escape($now.':'), $env{'course.'.$cid.'.home'}).'
'); } - } + } + if ($_=~/^form\.del\:([^\_]+)\_cr\.cr\/(\w+)\/(\w+)\/(\w+)$/) { + my ($url,$rdom,$rnam,$rolename) = ($1,$2,$3,$4); +# Delete custom role + $r->print(&mt('Deleting custom role [_1] by [_2]@[_3] in [_4]', + $rolename,$rnam,$rdom,$url).': '. + &Apache::lonnet::assigncustomrole($env{'form.ccdomain'}, + $env{'form.ccuname'},$url,$rdom,$rnam,$rolename,$now, + 0,1).'
'); + } } elsif ($_=~/^form\.ren/) { my $udom = $env{'form.ccdomain'}; my $uname = $env{'form.ccuname'}; - if ($_=~/^form\.ren\:([^\_]+)\_([^\_]+)$/) { +# Re-enable standard role + if ($_=~/^form\.ren\:([^\_]+)\_([^\_\.]+)$/) { my $url = $1; my $role = $2; my $logmsg; @@ -1278,11 +1294,20 @@ END } else { my $result=&Apache::lonnet::assignrole($env{'form.ccdomain'}, $env{'form.ccuname'},$url,$role,0,$now); - $output = &mt('Re-Enabling [_1] in [_2]: [_3]', + $output = &mt('Re-enabling [_1] in [_2]: [_3]', $role,$url,$result).'
'; } $r->print($output); } +# Re-enable custom role + if ($_=~/^form\.ren\:([^\_]+)\_cr\.cr\/(\w+)\/(\w+)\/(\w+)$/) { + my ($url,$rdom,$rnam,$rolename) = ($1,$2,$3,$4); + my $result = &Apache::lonnet::assigncustomrole( + $env{'form.ccdomain'}, $env{'form.ccuname'}, + $url,$rdom,$rnam,$rolename,0,$now); + $r->print(&mt('Re-enabling custom role [_1] by [_2]@[_3] in [_4] : [_5]', + $rolename,$rnam,$rdom,$url,$result).'
'); + } } elsif ($_=~/^form\.act/) { my $udom = $env{'form.ccdomain'}; my $uname = $env{'form.ccuname'}; @@ -1306,7 +1331,7 @@ END $r->print(&commit_customrole($udom,$uname,$url,$three,$four,$five,$start,$end)); } else { my %curr_groups = - &Apache::loncommon::coursegroups($one,$two); + &Apache::longroup::coursegroups($one,$two); foreach my $sec (sort {$a cmp $b} keys %sections) { if (($sec eq 'none') || ($sec eq 'all') || exists($curr_groups{$sec})) { @@ -1336,7 +1361,7 @@ END $r->print(&commit_standardrole($udom,$uname,$url,$three,$start,$end,$one,$two,'')); } else { my %curr_groups = - &Apache::loncommon::coursegroups($one,$two); + &Apache::longroup::coursegroups($one,$two); my $emptysec = 0; foreach my $sec (sort {$a cmp $b} keys %sections) { $sec =~ s/\W//g;