version 1.220, 2007/12/21 18:16:39
|
version 1.223, 2007/12/23 15:50:23
|
Line 2109 sub update_roles {
|
Line 2109 sub update_roles {
|
if ($url =~ m-^/($match_domain)/($match_courseid)/?(\w*)$-) { |
if ($url =~ m-^/($match_domain)/($match_courseid)/?(\w*)$-) { |
my $result = &Apache::loncommon::commit_studentrole(\$logmsg,$udom,$uname,$url,$role,$now,0,$1,$2,$3); |
my $result = &Apache::loncommon::commit_studentrole(\$logmsg,$udom,$uname,$url,$role,$now,0,$1,$2,$3); |
if (($result =~ /^error/) || ($result eq 'not_in_class') || ($result eq 'unknown_course') || ($result eq 'refused')) { |
if (($result =~ /^error/) || ($result eq 'not_in_class') || ($result eq 'unknown_course') || ($result eq 'refused')) { |
$output = "Error: $result\n"; |
if ($result eq 'refused' && $logmsg) { |
|
$output = $logmsg; |
|
} else { |
|
$output = "Error: $result\n"; |
|
} |
} else { |
} else { |
$output = &mt('Assigning').' '.$role.' in '.$url. |
$output = &mt('Assigning').' '.$role.' in '.$url. |
&mt('starting').' '.localtime($now). |
&mt('starting').' '.localtime($now). |
Line 2730 sub handler {
|
Line 2734 sub handler {
|
if (! exists($env{'form.state'})) { |
if (! exists($env{'form.state'})) { |
&Apache::lonuserutils::print_first_users_upload_form($r,$context); |
&Apache::lonuserutils::print_first_users_upload_form($r,$context); |
} elsif ($env{'form.state'} eq 'got_file') { |
} elsif ($env{'form.state'} eq 'got_file') { |
&Apache::lonuserutils::print_upload_manager_form($r,$context); |
&Apache::lonuserutils::print_upload_manager_form($r,$context, |
|
$permission); |
} elsif ($env{'form.state'} eq 'enrolling') { |
} elsif ($env{'form.state'} eq 'enrolling') { |
if ($env{'form.datatoken'}) { |
if ($env{'form.datatoken'}) { |
&Apache::lonuserutils::upfile_drop_add($r,$context); |
&Apache::lonuserutils::upfile_drop_add($r,$context,$permission); |
} |
} |
} else { |
} else { |
&Apache::lonuserutils::print_first_users_upload_form($r,$context); |
&Apache::lonuserutils::print_first_users_upload_form($r,$context); |
Line 2755 sub handler {
|
Line 2760 sub handler {
|
my $response; |
my $response; |
if ($env{'form.srchterm'} !~ /^$match_username$/) { |
if ($env{'form.srchterm'} !~ /^$match_username$/) { |
my $response = &mt('You must specify a valid username. Only the following are allowed: letters numbers - . @'); |
my $response = &mt('You must specify a valid username. Only the following are allowed: letters numbers - . @'); |
|
$env{'form.phase'} = ''; |
&print_username_entry_form($r,$context,$response,$srch); |
&print_username_entry_form($r,$context,$response,$srch); |
} else { |
} else { |
my $ccuname =&LONCAPA::clean_username($srch->{'srchterm'}); |
my $ccuname =&LONCAPA::clean_username($srch->{'srchterm'}); |
my $ccdomain=&LONCAPA::clean_domain($srch->{'srchdomain'}); |
my $ccdomain=&LONCAPA::clean_domain($srch->{'srchdomain'}); |
&print_user_modification_page($r,$ccuname,$ccdomain, |
&print_user_modification_page($r,$ccuname,$ccdomain, |
$srch,$response,$context); |
$srch,$response,$context, |
|
$permission); |
} |
} |
} elsif ($env{'form.phase'} eq 'get_user_info') { |
} elsif ($env{'form.phase'} eq 'get_user_info') { |
my ($currstate,$response,$forcenewuser,$results) = |
my ($currstate,$response,$forcenewuser,$results) = |
&user_search_result($srch); |
&user_search_result($context,$srch); |
if ($env{'form.currstate'} eq 'modify') { |
if ($env{'form.currstate'} eq 'modify') { |
$currstate = $env{'form.currstate'}; |
$currstate = $env{'form.currstate'}; |
} |
} |
Line 2793 sub handler {
|
Line 2800 sub handler {
|
$response = ''; |
$response = ''; |
} |
} |
&print_user_modification_page($r,$ccuname,$ccdomain, |
&print_user_modification_page($r,$ccuname,$ccdomain, |
$srch,$response,$context); |
$srch,$response,$context, |
|
$permission); |
} elsif ($currstate eq 'query') { |
} elsif ($currstate eq 'query') { |
&print_user_query_page($r,'createuser'); |
&print_user_query_page($r,'createuser'); |
} else { |
} else { |
Line 2804 sub handler {
|
Line 2812 sub handler {
|
my $ccuname = &LONCAPA::clean_username($env{'form.seluname'}); |
my $ccuname = &LONCAPA::clean_username($env{'form.seluname'}); |
my $ccdomain = &LONCAPA::clean_domain($env{'form.seludom'}); |
my $ccdomain = &LONCAPA::clean_domain($env{'form.seludom'}); |
&print_user_modification_page($r,$ccuname,$ccdomain,$srch,'', |
&print_user_modification_page($r,$ccuname,$ccdomain,$srch,'', |
$context); |
$context,$permission); |
} |
} |
} elsif ($env{'form.phase'} eq 'update_user_data') { |
} elsif ($env{'form.phase'} eq 'update_user_data') { |
&update_user_data($r,$context); |
&update_user_data($r,$context); |
Line 2821 sub handler {
|
Line 2829 sub handler {
|
($permission->{'view'} || $permission->{'cusr'})) { |
($permission->{'view'} || $permission->{'cusr'})) { |
if ($env{'form.phase'} eq 'bulkchange') { |
if ($env{'form.phase'} eq 'bulkchange') { |
&Apache::lonhtmlcommon::add_breadcrumb |
&Apache::lonhtmlcommon::add_breadcrumb |
({href=>'backPage(document.studentform)', |
({href=>'/adm/createuser?action=listusers', |
text=>"List Users"}); |
text=>"List Users"}, |
|
{href=>"/adm/createuser", |
|
text=>"Result"}); |
my $setting = $env{'form.roletype'}; |
my $setting = $env{'form.roletype'}; |
my $choice = $env{'form.bulkaction'}; |
my $choice = $env{'form.bulkaction'}; |
$r->print(&header()); |
$r->print(&header()); |
$r->print(&Apache::lonhtmlcommon::breadcrumbs("List Users", |
$r->print(&Apache::lonhtmlcommon::breadcrumbs("Update Users", |
'User_Management_List')); |
'User_Management_List')); |
if ($permission->{'cusr'}) { |
if ($permission->{'cusr'}) { |
&Apache::lonuserutils::update_user_list($r,$context,$setting,$choice); |
&Apache::lonuserutils::update_user_list($r,$context,$setting,$choice); |
|
$r->print(&Apache::loncommon::end_page()); |
|
} else { |
|
$r->print(&mt('You are not authorized to make bulk changes to user roles')); |
|
$r->print('<p><a href="/adm/createuser?action=listusers">'.&mt('Display User Lists').'</a>'); |
|
$r->print(&Apache::loncommon::end_page()); |
} |
} |
} else { |
} else { |
&Apache::lonhtmlcommon::add_breadcrumb |
&Apache::lonhtmlcommon::add_breadcrumb |
Line 2882 sub handler {
|
Line 2897 sub handler {
|
} elsif ($env{'form.action'} eq 'dateselect') { |
} elsif ($env{'form.action'} eq 'dateselect') { |
if ($permission->{'cusr'}) { |
if ($permission->{'cusr'}) { |
$r->print(&header(undef,undef,{'no_nav_bar' => 1}). |
$r->print(&header(undef,undef,{'no_nav_bar' => 1}). |
&Apache::lonuserutils::date_section_selector($context). |
&Apache::lonuserutils::date_section_selector($context, |
|
$permission). |
&Apache::loncommon::end_page()); |
&Apache::loncommon::end_page()); |
} else { |
} else { |
$r->print(&header(). |
$r->print(&header(). |
Line 2936 sub print_main_menu {
|
Line 2952 sub print_main_menu {
|
my %links = ( |
my %links = ( |
domain => { |
domain => { |
upload => 'Upload a File of Users', |
upload => 'Upload a File of Users', |
singleuser => 'Add/Manage a Single User', |
singleuser => 'Add/Modify a Single User', |
listusers => 'Manage Multiple Users', |
listusers => 'Manage Multiple Users', |
}, |
}, |
author => { |
author => { |
upload => 'Upload a File of Co-authors', |
upload => 'Upload a File of Co-authors', |
singleuser => 'Add/Manage a Single Co-author', |
singleuser => 'Add/Modify a Single Co-author', |
listusers => 'Display Co-authors and Manage Multiple Users', |
listusers => 'Display Co-authors and Manage Multiple Users', |
}, |
}, |
course => { |
course => { |
upload => 'Upload a File of Course Users', |
upload => 'Upload a File of Course Users', |
singleuser => 'Add/Manage a Single Course User', |
singleuser => 'Add/Modify a Single Course User', |
listusers => 'Display Class Lists and Manage Multiple Users', |
listusers => 'Display Class Lists and Manage Multiple Users', |
}, |
}, |
); |
); |
Line 3040 sub restore_prev_selections {
|
Line 3056 sub restore_prev_selections {
|
|
|
#-------------------------------------------------- functions for &phase_two |
#-------------------------------------------------- functions for &phase_two |
sub user_search_result { |
sub user_search_result { |
my ($srch) = @_; |
my ($context,$srch) = @_; |
my %allhomes; |
my %allhomes; |
my %inst_matches; |
my %inst_matches; |
my %srch_results; |
my %srch_results; |
Line 3109 sub user_search_result {
|
Line 3125 sub user_search_result {
|
my $uhome=&Apache::lonnet::homeserver($srch->{'srchterm'},$srch->{'srchdomain'}); |
my $uhome=&Apache::lonnet::homeserver($srch->{'srchterm'},$srch->{'srchdomain'}); |
if ($uhome eq 'no_host') { |
if ($uhome eq 'no_host') { |
($currstate,$response,$forcenewuser) = |
($currstate,$response,$forcenewuser) = |
&build_search_response($srch,%srch_results); |
&build_search_response($context,$srch,%srch_results); |
} else { |
} else { |
$currstate = 'modify'; |
$currstate = 'modify'; |
} |
} |
} else { |
} else { |
%srch_results = &Apache::lonnet::usersearch($srch); |
%srch_results = &Apache::lonnet::usersearch($srch); |
($currstate,$response,$forcenewuser) = |
($currstate,$response,$forcenewuser) = |
&build_search_response($srch,%srch_results); |
&build_search_response($context,$srch,%srch_results); |
} |
} |
} else { |
} else { |
my $courseusers = &get_courseusers(); |
my $courseusers = &get_courseusers(); |
Line 3125 sub user_search_result {
|
Line 3141 sub user_search_result {
|
$currstate = 'modify'; |
$currstate = 'modify'; |
} else { |
} else { |
($currstate,$response,$forcenewuser) = |
($currstate,$response,$forcenewuser) = |
&build_search_response($srch,%srch_results); |
&build_search_response($context,$srch,%srch_results); |
} |
} |
} else { |
} else { |
foreach my $user (keys(%$courseusers)) { |
foreach my $user (keys(%$courseusers)) { |
Line 3152 sub user_search_result {
|
Line 3168 sub user_search_result {
|
} |
} |
} |
} |
($currstate,$response,$forcenewuser) = |
($currstate,$response,$forcenewuser) = |
&build_search_response($srch,%srch_results); |
&build_search_response($context,$srch,%srch_results); |
} |
} |
} |
} |
} |
} |
Line 3162 sub user_search_result {
|
Line 3178 sub user_search_result {
|
($dirsrchres,%srch_results) = &Apache::lonnet::inst_directory_query($srch); |
($dirsrchres,%srch_results) = &Apache::lonnet::inst_directory_query($srch); |
if ($dirsrchres eq 'ok') { |
if ($dirsrchres eq 'ok') { |
($currstate,$response,$forcenewuser) = |
($currstate,$response,$forcenewuser) = |
&build_search_response($srch,%srch_results); |
&build_search_response($context,$srch,%srch_results); |
} else { |
} else { |
my $showdom = &display_domain_info($srch->{'srchdomain'}); |
my $showdom = &display_domain_info($srch->{'srchdomain'}); |
$response = '<span class="LC_warning">'. |
$response = '<span class="LC_warning">'. |
Line 3176 sub user_search_result {
|
Line 3192 sub user_search_result {
|
if ($srch->{'srchin'} eq 'dom') { |
if ($srch->{'srchin'} eq 'dom') { |
%srch_results = &Apache::lonnet::usersearch($srch); |
%srch_results = &Apache::lonnet::usersearch($srch); |
($currstate,$response,$forcenewuser) = |
($currstate,$response,$forcenewuser) = |
&build_search_response($srch,%srch_results); |
&build_search_response($context,$srch,%srch_results); |
} elsif ($srch->{'srchin'} eq 'crs') { |
} elsif ($srch->{'srchin'} eq 'crs') { |
my $courseusers = &get_courseusers(); |
my $courseusers = &get_courseusers(); |
foreach my $user (keys(%$courseusers)) { |
foreach my $user (keys(%$courseusers)) { |
Line 3228 sub user_search_result {
|
Line 3244 sub user_search_result {
|
} |
} |
} |
} |
($currstate,$response,$forcenewuser) = |
($currstate,$response,$forcenewuser) = |
&build_search_response($srch,%srch_results); |
&build_search_response($context,$srch,%srch_results); |
} elsif ($srch->{'srchin'} eq 'alc') { |
} elsif ($srch->{'srchin'} eq 'alc') { |
$currstate = 'query'; |
$currstate = 'query'; |
} elsif ($srch->{'srchin'} eq 'instd') { |
} elsif ($srch->{'srchin'} eq 'instd') { |
($dirsrchres,%srch_results) = &Apache::lonnet::inst_directory_query($srch); |
($dirsrchres,%srch_results) = &Apache::lonnet::inst_directory_query($srch); |
if ($dirsrchres eq 'ok') { |
if ($dirsrchres eq 'ok') { |
($currstate,$response,$forcenewuser) = |
($currstate,$response,$forcenewuser) = |
&build_search_response($srch,%srch_results); |
&build_search_response($context,$srch,%srch_results); |
} else { |
} else { |
my $showdom = &display_domain_info($srch->{'srchdomain'}); $response = '<span class="LC_warning">'. |
my $showdom = &display_domain_info($srch->{'srchdomain'}); $response = '<span class="LC_warning">'. |
&mt('Institutional directory search is not available in domain: [_1]',$showdom). |
&mt('Institutional directory search is not available in domain: [_1]',$showdom). |
Line 3341 sub get_courseusers {
|
Line 3357 sub get_courseusers {
|
} |
} |
|
|
sub build_search_response { |
sub build_search_response { |
my ($srch,%srch_results) = @_; |
my ($context,$srch,%srch_results) = @_; |
my ($currstate,$response,$forcenewuser); |
my ($currstate,$response,$forcenewuser); |
my %names = ( |
my %names = ( |
'uname' => 'username', |
'uname' => 'username', |
Line 3400 sub build_search_response {
|
Line 3416 sub build_search_response {
|
} |
} |
} |
} |
if (!($srch->{'srchby'} eq 'uname' && $srch->{'srchin'} eq 'dom' && $srch->{'srchtype'} eq 'exact' && $srch->{'srchdomain'} eq $env{'request.role.domain'})) { |
if (!($srch->{'srchby'} eq 'uname' && $srch->{'srchin'} eq 'dom' && $srch->{'srchtype'} eq 'exact' && $srch->{'srchdomain'} eq $env{'request.role.domain'})) { |
my $showdom = &display_domain_info($env{'request.role.domain'}); |
my $cancreate = |
|
&Apache::lonuserutils::can_create_user($env{'request.role.domain'},$context); |
|
if ($cancreate) { |
|
my $showdom = &display_domain_info($env{'request.role.domain'}); |
$response .= '<br /><br />'.&mt("<b>To add a new user</b> (you can only create new users in your current role's domain - <span class=\"LC_cusr_emph\">[_1]</span>):",$env{'request.role.domain'}).'<ul><li>'.&mt("Set 'Domain/institution to search' to: <span class=\"LC_cusr_emph\">[_1]</span>",$showdom).'<li>'.&mt("Set 'Search criteria' to: <span class=\"LC_cusr_emph\">'username is ...... in selected LON-CAPA domain'").'</span></li><li>'.&mt('Provide the proposed username').'</li><li>'.&mt('Search').'</li></ul><br />'; |
$response .= '<br /><br />'.&mt("<b>To add a new user</b> (you can only create new users in your current role's domain - <span class=\"LC_cusr_emph\">[_1]</span>):",$env{'request.role.domain'}).'<ul><li>'.&mt("Set 'Domain/institution to search' to: <span class=\"LC_cusr_emph\">[_1]</span>",$showdom).'<li>'.&mt("Set 'Search criteria' to: <span class=\"LC_cusr_emph\">'username is ...... in selected LON-CAPA domain'").'</span></li><li>'.&mt('Provide the proposed username').'</li><li>'.&mt('Search').'</li></ul><br />'; |
|
} else { |
|
my $helplink = ' href="javascript:helpMenu('."'display'".')"'; |
|
$response .= '<br /><br />'.&mt("You are not authorized to create new users in your current role's domain - <span class=\"LC_cusr_emph\">[_1]</span>.",$env{'request.role.domain'}).'<br />'.&mt('Contact the <a[_1]>helpdesk</a> if you need to create a new user.',$helplink).'<br /><br />'; |
|
} |
} |
} |
} |
} |
} |
} |
Line 3503 sub course_level_table {
|
Line 3526 sub course_level_table {
|
} |
} |
my @roles = &Apache::lonuserutils::roles_by_context('course'); |
my @roles = &Apache::lonuserutils::roles_by_context('course'); |
foreach my $role (@roles) { |
foreach my $role (@roles) { |
|
my $plrole=&Apache::lonnet::plaintext($role); |
if (&Apache::lonnet::allowed('c'.$role,$thiscourse)) { |
if (&Apache::lonnet::allowed('c'.$role,$thiscourse)) { |
my $plrole=&Apache::lonnet::plaintext($role); |
$table .= &course_level_row($protectedcourse,$role,$area,$domain, |
$table .= &Apache::loncommon::start_data_table_row(). |
$plrole,\%sections_count,\%lt); |
'<td><input type="checkbox" name="act_'.$protectedcourse.'_'.$role.'" /></td> |
} elsif ($env{'request.course.sec'} ne '') { |
<td>'.$plrole.'</td> |
if (&Apache::lonnet::allowed('c'.$role,$thiscourse.'/'. |
<td>'.$area.'<br />Domain: '.$domain.'</td>'."\n"; |
$env{'request.course.sec'})) { |
if ($role ne 'cc') { |
$table .= &course_level_row($protectedcourse,$role,$area,$domain, |
if (%sections_count) { |
$plrole,\%sections_count,\%lt); |
my $currsec = |
|
&Apache::lonuserutils::course_sections(\%sections_count, |
|
$protectedcourse.'_'.$role); |
|
$table .= |
|
'<td><table class="LC_createuser">'. |
|
'<tr class="LC_section_row"> |
|
<td valign="top">'.$lt{'exs'}.'<br />'. |
|
$currsec.'</td>'. |
|
'<td> </td>'. |
|
'<td valign="top"> '.$lt{'new'}.'<br />'. |
|
'<input type="text" name="newsec_'.$protectedcourse.'_'.$role.'" value="" />'. |
|
'<input type="hidden" '. |
|
'name="sec_'.$protectedcourse.'_'.$role.'" /></td>'. |
|
'</tr></table></td>'; |
|
} else { |
|
$table .= '<td><input type="text" size="10" '. |
|
'name="sec_'.$protectedcourse.'_'.$role.'" /></td>'; |
|
} |
|
} else { |
|
$table .= '<td> </td>'; |
|
} |
} |
$table .= <<ENDTIMEENTRY; |
|
<td><input type="hidden" name="start_$protectedcourse\_$role" value='' /> |
|
<a href= |
|
"javascript:pjump('date_start','Start Date $plrole',document.cu.start_$protectedcourse\_$role.value,'start_$protectedcourse\_$role','cu.pres','dateset')">$lt{'ssd'}</a></td> |
|
<td><input type="hidden" name="end_$protectedcourse\_$role" value='' /> |
|
<a href= |
|
"javascript:pjump('date_end','End Date $plrole',document.cu.end_$protectedcourse\_$role.value,'end_$protectedcourse\_$role','cu.pres','dateset')">$lt{'sed'}</a></td> |
|
ENDTIMEENTRY |
|
$table.= &Apache::loncommon::end_data_table_row(); |
|
} |
} |
} |
} |
foreach my $cust (sort keys %customroles) { |
if (&Apache::lonnet::allowed('ccr',$thiscourse)) { |
if (&Apache::lonnet::allowed('ccr',$thiscourse)) { |
foreach my $cust (sort keys %customroles) { |
my $plrole=$cust; |
my $role = 'cr_cr_'.$env{'user.domain'}.'_'.$env{'user.name'}.'_'.$cust; |
my $customrole=$protectedcourse.'_cr_cr_'.$env{'user.domain'}. |
$table .= &course_level_row($protectedcourse,$role,$area,$domain, |
'_'.$env{'user.name'}.'_'.$plrole; |
$cust,\%sections_count,\%lt); |
$table .= &Apache::loncommon::start_data_table_row(). |
} |
'<td><input type="checkbox" name="act_'.$customrole.'" /></td> |
|
<td>'.$plrole.'</td> |
|
<td>'.$area.'</td>'."\n"; |
|
if (%sections_count) { |
|
my $currsec = |
|
&Apache::lonuserutils::course_sections(\%sections_count, |
|
$customrole); |
|
$table.= |
|
'<td><table class="LC_createuser">'. |
|
'<tr class="LC_section_row"><td valign="top">'. |
|
$lt{'exs'}.'<br />'.$currsec.'</td>'. |
|
'<td> </td>'. |
|
'<td valign="top"> '.$lt{'new'}.'<br />'. |
|
'<input type="text" name="newsec_'.$customrole.'" value="" /></td>'. |
|
'<input type="hidden" '. |
|
'name="sec_'.$customrole.'" /></td>'. |
|
'</tr></table></td>'; |
|
} else { |
|
$table .= '<td><input type="text" size="10" '. |
|
'name="sec_'.$customrole.'" /></td>'; |
|
} |
|
$table .= <<ENDENTRY; |
|
<td><input type="hidden" name="start_$customrole" value='' /> |
|
<a href= |
|
"javascript:pjump('date_start','Start Date $plrole',document.cu.start_$customrole.value,'start_$customrole','cu.pres','dateset')">$lt{'ssd'}</a></td> |
|
<td><input type="hidden" name="end_$customrole" value='' /> |
|
<a href= |
|
"javascript:pjump('date_end','End Date $plrole',document.cu.end_$customrole.value,'end_$customrole','cu.pres','dateset')">$lt{'sed'}</a></td> |
|
ENDENTRY |
|
$table .= &Apache::loncommon::end_data_table_row(); |
|
} |
|
} |
} |
} |
} |
return '' if ($table eq ''); # return nothing if there is nothing |
return '' if ($table eq ''); # return nothing if there is nothing |
Line 3599 $table.
|
Line 3563 $table.
|
return $result; |
return $result; |
} |
} |
|
|
|
sub course_level_row { |
|
my ($protectedcourse,$role,$area,$domain,$plrole,$sections_count,$lt) = @_; |
|
my $row = &Apache::loncommon::start_data_table_row(). |
|
' <td><input type="checkbox" name="act_'. |
|
$protectedcourse.'_'.$role.'" /></td>'."\n". |
|
' <td>'.$plrole.'</td>'."\n". |
|
' <td>'.$area.'<br />Domain: '.$domain.'</td>'."\n"; |
|
if ($role eq 'cc') { |
|
$row .= '<td> </td>'; |
|
} elsif ($env{'request.course.sec'} ne '') { |
|
$row .= ' <td><input type="hidden" value="'. |
|
$env{'request.course.sec'}.'" '. |
|
'name="sec_'.$protectedcourse.'_'.$role.'" />'. |
|
$env{'request.course.sec'}.'</td>'; |
|
} else { |
|
if (ref($sections_count) eq 'HASH') { |
|
my $currsec = |
|
&Apache::lonuserutils::course_sections($sections_count, |
|
$protectedcourse.'_'.$role); |
|
$row .= '<td><table class="LC_createuser">'."\n". |
|
'<tr class="LC_section_row">'."\n". |
|
' <td valign="top">'.$lt->{'exs'}.'<br />'. |
|
$currsec.'</td>'."\n". |
|
' <td> </td>'."\n". |
|
' <td valign="top"> '.$lt->{'new'}.'<br />'. |
|
'<input type="text" name="newsec_'.$protectedcourse.'_'.$role. |
|
'" value="" />'. |
|
'<input type="hidden" '. |
|
'name="sec_'.$protectedcourse.'_'.$role.'" /></td>'."\n". |
|
'</tr></table></td>'."\n"; |
|
} else { |
|
$row .= '<td><input type="text" size="10" '. |
|
'name="sec_'.$protectedcourse.'_'.$role.'" /></td>'."\n"; |
|
} |
|
} |
|
$row .= <<ENDTIMEENTRY; |
|
<td><input type="hidden" name="start_$protectedcourse\_$role" value="" /> |
|
<a href= |
|
"javascript:pjump('date_start','Start Date $plrole',document.cu.start_$protectedcourse\_$role.value,'start_$protectedcourse\_$role','cu.pres','dateset')">$lt->{'ssd'}</a></td> |
|
<td><input type="hidden" name="end_$protectedcourse\_$role" value="" /> |
|
<a href= |
|
"javascript:pjump('date_end','End Date $plrole',document.cu.end_$protectedcourse\_$role.value,'end_$protectedcourse\_$role','cu.pres','dateset')">$lt->{'sed'}</a></td> |
|
ENDTIMEENTRY |
|
$row .= &Apache::loncommon::end_data_table_row(); |
|
return $row; |
|
} |
|
|
sub course_level_dc { |
sub course_level_dc { |
my ($dcdom) = @_; |
my ($dcdom) = @_; |
my %customroles=&Apache::lonuserutils::my_custom_roles(); |
my %customroles=&Apache::lonuserutils::my_custom_roles(); |
Line 3645 sub course_level_dc {
|
Line 3656 sub course_level_dc {
|
'<td> </td>'. |
'<td> </td>'. |
'<td valign="top"> <b>'.$lt{'new'}.'</b><br />'. |
'<td valign="top"> <b>'.$lt{'new'}.'</b><br />'. |
'<input type="text" name="newsec" value="" />'. |
'<input type="text" name="newsec" value="" />'. |
|
'<input type="hidden" name="sections" value="" />'. |
'<input type="hidden" name="groups" value="" /></td>'. |
'<input type="hidden" name="groups" value="" /></td>'. |
'</tr></table></td>'; |
'</tr></table></td>'; |
$otheritems .= <<ENDTIMEENTRY; |
$otheritems .= <<ENDTIMEENTRY; |