version 1.8.2.3, 2010/01/03 01:09:41
|
version 1.8.2.6, 2010/02/12 00:39:51
|
Line 57 sub handler {
|
Line 57 sub handler {
|
$r->send_http_header; |
$r->send_http_header; |
} else { |
} else { |
if ($navmap) { |
if ($navmap) { |
$env{'user.error.msg'}= |
if ($crstype eq 'Community') { |
"/adm/courseprefs:opa:0:0:Cannot modify course settings"; |
$env{'user.error.msg'}= |
|
"/adm/courseprefs:opa:0:0:Cannot modify community settings"; |
|
} else { |
|
$env{'user.error.msg'}= |
|
"/adm/courseprefs:opa:0:0:Cannot modify course settings"; |
|
} |
} else { |
} else { |
$env{'user.error.msg'}= |
if ($crstype eq 'Community') { |
"/adm/courseprefs::0:1:Course environment gone, reinitialize the course"; |
$env{'user.error.msg'}= |
|
"/adm/courseprefs::0:1:Course environment gone, reinitialize the community"; |
|
} else { |
|
$env{'user.error.msg'}= |
|
"/adm/courseprefs::0:1:Course environment gone, reinitialize the course"; |
|
|
|
} |
} |
} |
return HTTP_NOT_ACCEPTABLE; |
return HTTP_NOT_ACCEPTABLE; |
} |
} |
Line 73 sub handler {
|
Line 84 sub handler {
|
&Apache::lonhtmlcommon::add_breadcrumb({href=>"/adm/parmset", |
&Apache::lonhtmlcommon::add_breadcrumb({href=>"/adm/parmset", |
text=>"Parameter Manager"}); |
text=>"Parameter Manager"}); |
} |
} |
|
my ($brtext,$brtitle,$crsinfotext,$crsinfodesc,$crscateg,$crshide); |
|
my %lt; |
|
if ($crstype eq 'Community') { |
|
%lt = ( |
|
conf => 'Community Configuration', |
|
edit => 'Edit Community Configuration', |
|
gens => 'General community settings', |
|
idnu => 'Community ID or number', |
|
desc => 'Community Description', |
|
catg => 'Categorize community', |
|
excc => 'Exclude from community catalog', |
|
clon => 'Users allowed to clone community', |
|
rept => 'Replacement titles for standard community roles', |
|
time => 'Timezone where the community is located', |
|
date => 'Locale used for community calendar', |
|
coco => 'Community Content', |
|
copo => 'Community Policy', |
|
priv => 'Domain Coordinators in community', |
|
defd => 'Default dates for member access', |
|
stuv => 'Member-viewable membership list options', |
|
stul => 'Member agreement needed to be listed', |
|
clas => 'Membership and Facilitator Listing', |
|
priv => 'Privileged users (Domain Coordinators) in facilitator listing', |
|
defc => 'Default Community Spreadsheet', |
|
defs => 'Default User Spreadsheet', |
|
seme => 'Send message to member when clicking Done on Tasks' |
|
); |
|
} else { |
|
%lt = ( |
|
conf => 'Course Configuration', |
|
edit => 'Edit Course Configuration', |
|
gens => 'General course settings', |
|
idnu => 'Course ID or number', |
|
desc => 'Course Description', |
|
catg => 'Categorize course', |
|
excc => 'Exclude from course catalog', |
|
clon => 'Users allowed to clone course', |
|
rept => 'Replacement titles for standard course roles', |
|
time => 'Timezone in which the course takes place', |
|
date => 'Locale used for course calendar', |
|
coco => 'Course Content', |
|
copo => 'Course Policy', |
|
priv => 'Domain Coordinators in course', |
|
defd => 'Default dates for student access', |
|
stuv => 'Student-viewable classlist options', |
|
stul => 'Student agreement needed to be listed', |
|
clas => 'Classlists and Staff Listing', |
|
priv => 'Privileged users (Domain Coordinators) in staff listing', |
|
defc => 'Default Course Spreadsheet', |
|
defs => 'Default Student Spreadsheet', |
|
seme => 'Send message to student when clicking Done on Tasks', |
|
); |
|
} |
&Apache::lonhtmlcommon::add_breadcrumb({href=>'/adm/courseprefs', |
&Apache::lonhtmlcommon::add_breadcrumb({href=>'/adm/courseprefs', |
text=>"Course Configuration"}); |
text=>$lt{'conf'}}); |
my $breadcrumbs = |
my $breadcrumbs = |
&Apache::lonhtmlcommon::breadcrumbs('Edit Course Configuration'); |
&Apache::lonhtmlcommon::breadcrumbs($lt{'edit'}); |
|
|
my $phase = 'pickactions'; |
my $phase = 'pickactions'; |
if ( exists($env{'form.phase'}) ) { |
if ( exists($env{'form.phase'}) ) { |
Line 84 sub handler {
|
Line 148 sub handler {
|
} |
} |
|
|
if ($phase eq 'categorizecourse') { |
if ($phase eq 'categorizecourse') { |
&assign_course_categories($r); |
&assign_course_categories($r,$crstype); |
return OK; |
return OK; |
} |
} |
|
|
Line 95 sub handler {
|
Line 159 sub handler {
|
|
|
my %prefs = ( |
my %prefs = ( |
'courseinfo' => |
'courseinfo' => |
{ text => 'General course settings', |
{ text => $lt{'gens'}, |
help => 'Course_Environment', |
help => 'Course_Environment', |
header => [{col1 => 'Setting', |
header => [{col1 => 'Setting', |
col2 => 'Value'}], |
col2 => 'Value'}], |
Line 103 sub handler {
|
Line 167 sub handler {
|
'hidefromcat','cloners','externalsyllabus', |
'hidefromcat','cloners','externalsyllabus', |
'url','rolenames'], |
'url','rolenames'], |
itemtext => { |
itemtext => { |
description => 'Course Description', |
description => $lt{'desc'}, |
courseid => 'Course ID or number', |
courseid => $lt{'idnu'}, |
categories => 'Categorize course', |
categories => $lt{'catg'}, |
hidefromcat => 'Exclude from course catalog', |
hidefromcat => $lt{'excc'}, |
cloners => 'Users allowed to clone course', |
cloners => $lt{'clon'}, |
externalsyllabus => 'URL of Syllabus', |
externalsyllabus => 'URL of Syllabus', |
url => 'Top Level Map', |
url => 'Top Level Map', |
rolenames => 'Replacement titles for standard course roles', |
rolenames => $lt{'rept'}, |
}, |
}, |
}, |
}, |
'localization' => |
'localization' => |
Line 121 sub handler {
|
Line 185 sub handler {
|
ordered => ['languages','timezone','datelocale'], |
ordered => ['languages','timezone','datelocale'], |
itemtext => { |
itemtext => { |
languages => 'Languages used', |
languages => 'Languages used', |
timezone => 'Timezone in which the course takes place', |
timezone => $lt{'time'}, |
datelocale => 'Locale used for course calendar', |
datelocale => $lt{'date'}, |
}, |
}, |
}, |
}, |
'feedback' => |
'feedback' => |
Line 135 sub handler {
|
Line 199 sub handler {
|
ordered => ['question.email','comment.email','policy.email'], |
ordered => ['question.email','comment.email','policy.email'], |
itemtext => { |
itemtext => { |
'question.email' => 'Resource Content', |
'question.email' => 'Resource Content', |
'comment.email' => 'Course Content', |
'comment.email' => $lt{'coco'}, |
'policy.email' => 'Course Policy', |
'policy.email' => $lt{'copo'}, |
}, |
}, |
}, |
}, |
'discussion' => |
'discussion' => |
Line 158 sub handler {
|
Line 222 sub handler {
|
}, |
}, |
}, |
}, |
'classlists' => |
'classlists' => |
{ text => 'Classlists and Staff Listing', |
{ text => $lt{'clas'}, |
help => 'Course_Environment', |
help => 'Course_Environment', |
header => [{col1 => 'Type', |
header => [{col1 => 'Type', |
col2 => 'Default dates for student access'}, |
col2 => $lt{'defd'}}, |
{col1 => 'Setting', |
{col1 => 'Setting', |
col2 => 'Privileged users (Domain Coordinators) in staff listing'}, |
col2 => $lt{'priv'}}, |
{col1 => 'Setting', |
{col1 => 'Setting', |
col2 => 'Student-viewable classlist options'}], |
col2 => $lt{'stuv'}}], |
ordered => ['default_enrollment_start_date', |
ordered => ['default_enrollment_start_date', |
'default_enrollment_end_date', |
'default_enrollment_end_date', |
'nothideprivileged','student_classlist_view', |
'nothideprivileged','student_classlist_view', |
Line 173 sub handler {
|
Line 237 sub handler {
|
itemtext => { |
itemtext => { |
default_enrollment_start_date => 'Start date', |
default_enrollment_start_date => 'Start date', |
default_enrollment_end_date => 'End date', |
default_enrollment_end_date => 'End date', |
nothideprivileged => 'Domain Coodinators in course', |
nothideprivileged => $lt{'priv'}, |
student_classlist_view => 'Student-viewable classlist', |
student_classlist_view => $lt{'stuv'}, |
student_opt_in => 'Student agreement needed to be listed', |
student_opt_in => $lt{'stul'}, |
student_classlist_portfiles => 'Include link to accessible portfolio files', |
student_classlist_portfiles => 'Include link to accessible portfolio files', |
}, |
}, |
}, |
}, |
Line 235 sub handler {
|
Line 299 sub handler {
|
'spreadsheet_default_studentcalc', |
'spreadsheet_default_studentcalc', |
'spreadsheet_default_assesscalc','hideemptyrows'], |
'spreadsheet_default_assesscalc','hideemptyrows'], |
itemtext => { |
itemtext => { |
spreadsheet_default_classcalc => 'Default Course Spreadsheet', |
spreadsheet_default_classcalc => $lt{'defc'}, |
spreadsheet_default_studentcalc => 'Default Student Spreadsheet', |
spreadsheet_default_studentcalc => $lt{'defs'}, |
spreadsheet_default_assesscalc => 'Default Assessment Spreadsheet', |
spreadsheet_default_assesscalc => 'Default Assessment Spreadsheet', |
hideemptyrows => 'Hide Empty Rows in Spreadsheets', |
hideemptyrows => 'Hide Empty Rows in Spreadsheets', |
}, |
}, |
Line 249 sub handler {
|
Line 313 sub handler {
|
ordered => ['task_messages','task_grading', |
ordered => ['task_messages','task_grading', |
'suppress_embed_prompt'], |
'suppress_embed_prompt'], |
itemtext => { |
itemtext => { |
task_messages => 'Send message to student when clicking Done on Tasks', |
task_messages => $lt{'seme'}, |
task_grading => 'Bridge Task grading by instructors and TAs in sections' , |
task_grading => 'Bridge Task grading by instructors and TAs in sections' , |
suppress_embed_prompt => 'Hide upload references prompt if uploading file to portfolio', |
suppress_embed_prompt => 'Hide upload references prompt if uploading file to portfolio', |
}, |
}, |
Line 271 sub handler {
|
Line 335 sub handler {
|
my $jscript = &get_jscript($cdom,$phase,$crstype); |
my $jscript = &get_jscript($cdom,$phase,$crstype); |
my @allitems = &get_allitems(%prefs); |
my @allitems = &get_allitems(%prefs); |
&Apache::lonconfigsettings::display_settings($r,$cdom,$phase,$context, |
&Apache::lonconfigsettings::display_settings($r,$cdom,$phase,$context, |
\@prefs_order,\%prefs,\%values,undef,$jscript,\@allitems); |
\@prefs_order,\%prefs,\%values,undef,$jscript,\@allitems,$crstype); |
} else { |
} else { |
&Apache::lonconfigsettings::display_choices($r,$phase,$context, |
&Apache::lonconfigsettings::display_choices($r,$phase,$context, |
\@prefs_order,\%prefs); |
\@prefs_order,\%prefs); |
Line 296 sub get_allitems {
|
Line 360 sub get_allitems {
|
} |
} |
|
|
sub print_config_box { |
sub print_config_box { |
my ($r,$cdom,$phase,$action,$item,$settings,$allitems) = @_; |
my ($r,$cdom,$phase,$action,$item,$settings,$allitems,$crstype) = @_; |
my $ordered = $item->{'ordered'}; |
my $ordered = $item->{'ordered'}; |
my $itemtext = $item->{'itemtext'}; |
my $itemtext = $item->{'itemtext'}; |
my $rowtotal = 0; |
my $rowtotal = 0; |
Line 320 sub print_config_box {
|
Line 384 sub print_config_box {
|
if ($action eq 'feedback') { |
if ($action eq 'feedback') { |
$output .= &print_feedback('top',$cdom,$settings,$ordered,$itemtext,\$rowtotal); |
$output .= &print_feedback('top',$cdom,$settings,$ordered,$itemtext,\$rowtotal); |
} elsif ($action eq 'classlists') { |
} elsif ($action eq 'classlists') { |
$output .= &print_classlists('top',$cdom,$settings,$itemtext,\$rowtotal); |
$output .= &print_classlists('top',$cdom,$settings,$itemtext,\$rowtotal,$crstype); |
} |
} |
$output .= ' |
$output .= ' |
</table> |
</table> |
Line 335 sub print_config_box {
|
Line 399 sub print_config_box {
|
<td class="LC_right_item">'.&mt($item->{'header'}->[1]->{'col2'}).'</td> |
<td class="LC_right_item">'.&mt($item->{'header'}->[1]->{'col2'}).'</td> |
</tr>'; |
</tr>'; |
if ($action eq 'classlists') { |
if ($action eq 'classlists') { |
$output .= &print_classlists('middle',$cdom,$settings,$itemtext,\$rowtotal). |
$output .= &print_classlists('middle',$cdom,$settings,$itemtext,\$rowtotal,$crstype). |
' |
' |
</table> |
</table> |
</td> |
</td> |
Line 360 sub print_config_box {
|
Line 424 sub print_config_box {
|
} |
} |
$rowtotal ++; |
$rowtotal ++; |
if ($action eq 'courseinfo') { |
if ($action eq 'courseinfo') { |
$output .= &print_courseinfo($cdom,$settings,$ordered,$itemtext,\$rowtotal); |
$output .= &print_courseinfo($cdom,$settings,$ordered,$itemtext,\$rowtotal,$crstype); |
} elsif ($action eq 'localization') { |
} elsif ($action eq 'localization') { |
$output .= &print_localization($cdom,$settings,$ordered,$itemtext,\$rowtotal); |
$output .= &print_localization($cdom,$settings,$ordered,$itemtext,\$rowtotal); |
} elsif ($action eq 'feedback') { |
} elsif ($action eq 'feedback') { |
Line 368 sub print_config_box {
|
Line 432 sub print_config_box {
|
} elsif ($action eq 'discussion') { |
} elsif ($action eq 'discussion') { |
$output .= &print_discussion($cdom,$settings,$ordered,$itemtext,\$rowtotal); |
$output .= &print_discussion($cdom,$settings,$ordered,$itemtext,\$rowtotal); |
} elsif ($action eq 'classlists') { |
} elsif ($action eq 'classlists') { |
$output .= &print_classlists('bottom',$cdom,$settings,$itemtext,\$rowtotal); |
$output .= &print_classlists('bottom',$cdom,$settings,$itemtext,\$rowtotal,$crstype); |
} elsif ($action eq 'appearance') { |
} elsif ($action eq 'appearance') { |
$output .= &print_appearance($cdom,$settings,$ordered,$itemtext,\$rowtotal); |
$output .= &print_appearance($cdom,$settings,$ordered,$itemtext,\$rowtotal,$crstype); |
} elsif ($action eq 'grading') { |
} elsif ($action eq 'grading') { |
$output .= &print_grading($cdom,$settings,$ordered,$itemtext,\$rowtotal); |
$output .= &print_grading($cdom,$settings,$ordered,$itemtext,\$rowtotal,$crstype); |
} elsif ($action eq 'printouts') { |
} elsif ($action eq 'printouts') { |
$output .= &print_printouts($cdom,$settings,$ordered,$itemtext,\$rowtotal); |
$output .= &print_printouts($cdom,$settings,$ordered,$itemtext,\$rowtotal,$crstype); |
} elsif ($action eq 'spreadsheet') { |
} elsif ($action eq 'spreadsheet') { |
$output .= &print_spreadsheet($cdom,$settings,$ordered,$itemtext,\$rowtotal); |
$output .= &print_spreadsheet($cdom,$settings,$ordered,$itemtext,\$rowtotal,$crstype); |
} elsif ($action eq 'bridgetasks') { |
} elsif ($action eq 'bridgetasks') { |
$output .= &print_bridgetasks($cdom,$settings,$ordered,$itemtext,\$rowtotal); |
$output .= &print_bridgetasks($cdom,$settings,$ordered,$itemtext,\$rowtotal,$crstype); |
} elsif ($action eq 'other') { |
} elsif ($action eq 'other') { |
$output .= &print_other($cdom,$settings,$allitems,\$rowtotal); |
$output .= &print_other($cdom,$settings,$allitems,\$rowtotal,$crstype); |
} |
} |
$output .= ' |
$output .= ' |
</table> |
</table> |
Line 391 sub print_config_box {
|
Line 455 sub print_config_box {
|
} |
} |
|
|
sub process_changes { |
sub process_changes { |
my ($cdom,$action,$values,$item,$changes,$allitems,$disallowed) = @_; |
my ($cdom,$action,$values,$item,$changes,$allitems,$disallowed,$crstype) = @_; |
my %newvalues; |
my %newvalues; |
if (ref($item) eq 'HASH') { |
if (ref($item) eq 'HASH') { |
if (ref($changes) eq 'HASH') { |
if (ref($changes) eq 'HASH') { |
Line 530 sub process_changes {
|
Line 594 sub process_changes {
|
} elsif ($entry =~ /^default_enrollment_(start|end)_date$/) { |
} elsif ($entry =~ /^default_enrollment_(start|end)_date$/) { |
$newvalues{$entry}=&Apache::lonhtmlcommon::get_date_from_form($entry); |
$newvalues{$entry}=&Apache::lonhtmlcommon::get_date_from_form($entry); |
} elsif ($entry eq 'rolenames') { |
} elsif ($entry eq 'rolenames') { |
my $crstype = &Apache::loncommon::course_type(); |
|
my %adv_roles = |
my %adv_roles = |
&Apache::lonnet::get_course_adv_roles($env{'request.course.id'},1); |
&Apache::lonnet::get_course_adv_roles($env{'request.course.id'},1); |
my @stds = ('cc','in','ta','ep','ad','st'); |
my @stds; |
|
if ($crstype eq 'Community') { |
|
@stds = ('co'); |
|
} else { |
|
@stds = ('cc'); |
|
} |
|
push(@stds,('in','ta','ep','ad','st')); |
my (@replacements,@regulars); |
my (@replacements,@regulars); |
foreach my $role (@stds) { |
foreach my $role (@stds) { |
if ($values->{$role.'.plaintext'} ne '') { |
if ($values->{$role.'.plaintext'} ne '') { |
push(@replacements,$role); |
push(@replacements,$role); |
} else { |
} else { |
push(@regulars,$role); |
push(@regulars,$role); |
} |
} |
} |
} |
foreach my $stdrole (@stds) { |
foreach my $stdrole (@stds) { |
my $ext_entry = $entry.'_'.$stdrole; |
my $ext_entry = $entry.'_'.$stdrole; |
my $stdname = &Apache::lonnet::plaintext($stdrole,$crstype, |
my $stdname = &Apache::lonnet::plaintext($stdrole,$crstype, |
Line 789 sub check_clone {
|
Line 858 sub check_clone {
|
} |
} |
|
|
sub store_changes { |
sub store_changes { |
my ($cdom,$cnum,$prefs_order,$actions,$prefs,$values,$changes) = @_; |
my ($cdom,$cnum,$prefs_order,$actions,$prefs,$values,$changes,$crstype) = @_; |
my ($chome,$output); |
my ($chome,$output); |
my (%storehash,@delkeys,@need_env_update); |
my (%storehash,@delkeys,@need_env_update); |
if ((ref($values) eq 'HASH') && (ref($changes) eq 'HASH')) { |
if ((ref($values) eq 'HASH') && (ref($changes) eq 'HASH')) { |
%storehash = %{$values}; |
%storehash = %{$values}; |
} else { |
} else { |
$output = &mt('No changes made to course settings.'); |
if ($crstype eq 'Community') { |
return; |
$output = &mt('No changes made to community settings.'); |
|
} else { |
|
$output = &mt('No changes made to course settings.'); |
|
} |
|
return $output; |
} |
} |
my %yesno = ( |
my %yesno = ( |
hidefromcat => '1', |
hidefromcat => '1', |
Line 832 sub store_changes {
|
Line 905 sub store_changes {
|
foreach my $key (@settings) { |
foreach my $key (@settings) { |
if ($key eq 'rolenames') { |
if ($key eq 'rolenames') { |
my $displayname = $prefs->{$item}->{'itemtext'}{$key}; |
my $displayname = $prefs->{$item}->{'itemtext'}{$key}; |
my $crstype = &Apache::loncommon::course_type(); |
|
my $msg; |
my $msg; |
foreach my $role ('cc','in','ta','ep','ad','st') { |
my @roles; |
|
if ($crstype eq 'Community') { |
|
@roles = ('co'); |
|
} else { |
|
@roles = ('cc'); |
|
} |
|
push(@roles,('in','ta','ep','ad','st')); |
|
foreach my $role (@roles) { |
next if (!exists($changes->{$item}{$key.'_'.$role})); |
next if (!exists($changes->{$item}{$key.'_'.$role})); |
my $stdname = &Apache::lonnet::plaintext($role,$crstype,undef,1); |
my $stdname = &Apache::lonnet::plaintext($role,$crstype,undef,1); |
my $newname = $changes->{$item}{$key.'_'.$role}; |
my $newname = $changes->{$item}{$key.'_'.$role}; |
Line 904 sub store_changes {
|
Line 983 sub store_changes {
|
$displayname = &mt($text); |
$displayname = &mt($text); |
} |
} |
if (defined($yesno{$key})) { |
if (defined($yesno{$key})) { |
$displayval = 'no'; |
$displayval = &mt('No'); |
if ($changes->{$item}{$key} eq 'yes') { |
if ($changes->{$item}{$key} eq 'yes') { |
$displayval = 'yes'; |
$displayval = &mt('Yes'); |
} |
} |
} elsif (($key =~ /^default_enrollment_(start|end)_date$/) && ($displayval)) { |
} elsif (($key =~ /^default_enrollment_(start|end)_date$/) && ($displayval)) { |
$displayval = &Apache::lonlocal::locallocaltime($displayval); |
$displayval = &Apache::lonlocal::locallocaltime($displayval); |
Line 939 sub store_changes {
|
Line 1018 sub store_changes {
|
} |
} |
$output .= '</ul>'; |
$output .= '</ul>'; |
} else { |
} else { |
$output = &mt('No changes made to course settings.'); |
if ($crstype eq 'Community') { |
|
$output = &mt('No changes made to community settings.'); |
|
} else { |
|
$output = &mt('No changes made to course settings.'); |
|
} |
} |
} |
} |
} |
} |
} |
Line 947 sub store_changes {
|
Line 1030 sub store_changes {
|
if (&Apache::lonnet::put('environment',\%storehash,$cdom,$cnum) eq 'ok') { |
if (&Apache::lonnet::put('environment',\%storehash,$cdom,$cnum) eq 'ok') { |
if (@delkeys) { |
if (@delkeys) { |
if (&Apache::lonnet::del('environment',\@delkeys,$cdom,$cnum) ne 'ok') { |
if (&Apache::lonnet::del('environment',\@delkeys,$cdom,$cnum) ne 'ok') { |
$output .= '<br /><span class="LC_error">'. |
$output .= '<br /><span class="LC_error">'; |
&mt('An error occurred when removing course settings which are no longer in use.').'</span>'; |
if ($crstype eq 'Community') { |
|
$output .= &mt('An error occurred when removing community settings which are no longer in use.'); |
|
} else { |
|
$output .= &mt('An error occurred when removing course settings which are no longer in use.'); |
|
} |
|
$output .= '</span>'; |
|
} |
|
} else { |
|
foreach my $key (@delkeys) { |
|
&Apache::lonnet::delenv('course.'.$cdom.'_'.$cnum.'.'.$key); |
} |
} |
} |
} |
if (@need_env_update) { |
if (@need_env_update) { |
Line 958 sub store_changes {
|
Line 1050 sub store_changes {
|
&Apache::lonnet::coursedescription($env{'request.course.id'}, |
&Apache::lonnet::coursedescription($env{'request.course.id'}, |
{'freshen_cache' => 1}); |
{'freshen_cache' => 1}); |
} else { |
} else { |
$output = '<span class="LC_error">'. |
$output = '<span class="LC_error">'; |
&mt('An error occurred when saving changes to course settings, which remain unchanged.').'</span>'; |
if ($crstype eq 'Community') { |
|
$output .= &mt('An error occurred when saving changes to community settings, which remain unchanged.'); |
|
} else { |
|
$output .= &mt('An error occurred when saving changes to course settings, which remain unchanged.'); |
|
} |
|
$output .= '</span>'; |
} |
} |
return $output; |
return $output; |
} |
} |
Line 990 sub update_env {
|
Line 1087 sub update_env {
|
} |
} |
|
|
sub display_disallowed { |
sub display_disallowed { |
my ($item,$disallowed,$prefs) = @_; |
my ($item,$disallowed,$prefs,$crstype) = @_; |
my $output; |
my $output; |
if ((ref($disallowed) eq 'HASH') && (ref($prefs) eq 'HASH')) { |
if ((ref($disallowed) eq 'HASH') && (ref($prefs) eq 'HASH')) { |
if (keys(%{$disallowed})) { |
if (keys(%{$disallowed})) { |
Line 1006 sub display_disallowed {
|
Line 1103 sub display_disallowed {
|
my $msg = '<b>'.$disallowed->{$error}.'</b>, '.&mt('reason').' - '. |
my $msg = '<b>'.$disallowed->{$error}.'</b>, '.&mt('reason').' - '. |
$lt{$error}; |
$lt{$error}; |
if ($error eq 'newuser') { |
if ($error eq 'newuser') { |
$msg .= '<br />'.&mt('Please [_1]add the user(s)[_2] before returning to the [_3]Course Configuration[_2] to add as potential cloners.','<a href="/adm/createuser">','</a>','<a href="/adm/courseprefs">'); |
$msg .= '<br />'.&mt("Please [_1]add the user(s)[_2] before returning to the [_3]$crstype Configuration[_2] to add as potential cloners.",'<a href="/adm/createuser">','</a>','<a href="/adm/courseprefs">'); |
} |
} |
push(@fails,$msg); |
push(@fails,$msg); |
} |
} |
Line 1037 sub display_disallowed {
|
Line 1134 sub display_disallowed {
|
} elsif (($item eq 'feedback') || ($item eq 'discussion') || ($item eq 'localization')) { |
} elsif (($item eq 'feedback') || ($item eq 'discussion') || ($item eq 'localization')) { |
$output .= '<span class="LC_warning">'; |
$output .= '<span class="LC_warning">'; |
if ($item eq 'feedback') { |
if ($item eq 'feedback') { |
$output .= &mt('Unable to include as a recipient of course feedback for:'); |
if ($crstype eq 'Community') { |
|
$output .= &mt('Unable to include as a recipient of community feedback for:'); |
|
} else { |
|
$output .= &mt('Unable to include as a recipient of course feedback for:'); |
|
} |
} elsif ($item eq 'discussion') { |
} elsif ($item eq 'discussion') { |
$output .= &mt('Unable to include in user-based access control for:'); |
$output .= &mt('Unable to include in user-based access control for:'); |
} elsif ($item eq 'localization') { |
} elsif ($item eq 'localization') { |
$output .= &mt('Unable to include in course localization:'); |
if ($crstype eq 'Community') { |
|
$output .= &mt('Unable to include in community localization:'); |
|
} else { |
|
$output .= &mt('Unable to include in course localization:'); |
|
} |
} |
} |
$output .= '</span><ul>'; |
$output .= '</span><ul>'; |
foreach my $key (sort(keys(%{$disallowed}))) { |
foreach my $key (sort(keys(%{$disallowed}))) { |
Line 1181 ENDSCRIPT
|
Line 1286 ENDSCRIPT
|
|
|
|
|
sub print_courseinfo { |
sub print_courseinfo { |
my ($cdom,$settings,$ordered,$itemtext,$rowtotal) = @_; |
my ($cdom,$settings,$ordered,$itemtext,$rowtotal,$crstype) = @_; |
unless ((ref($settings) eq 'HASH') && (ref($ordered) eq 'ARRAY') && (ref($itemtext) eq 'HASH')) { |
unless ((ref($settings) eq 'HASH') && (ref($ordered) eq 'ARRAY') && (ref($itemtext) eq 'HASH')) { |
return; |
return; |
} |
} |
my ($cathash,$categoriesform); |
my ($cathash,$categoriesform); |
my $crstype = &Apache::loncommon::course_type(); |
|
my %domconf = |
my %domconf = |
&Apache::lonnet::get_dom('configuration',['coursecategories'],$cdom); |
&Apache::lonnet::get_dom('configuration',['coursecategories'],$cdom); |
if (ref($domconf{'coursecategories'}) eq 'HASH') { |
if (ref($domconf{'coursecategories'}) eq 'HASH') { |
Line 1198 sub print_courseinfo {
|
Line 1302 sub print_courseinfo {
|
} |
} |
} |
} |
if (!defined($categoriesform)) { |
if (!defined($categoriesform)) { |
$categoriesform = &mt('No categories defined for this domain'); |
$categoriesform = &mt('No categories defined in this domain.'); |
} |
} |
|
|
my ($can_toggle_cat,$can_categorize) = &can_modify_catsettings($cdom,$crstype); |
my ($can_toggle_cat,$can_categorize) = &can_modify_catsettings($cdom,$crstype); |
|
|
|
my $replace; |
|
if ($crstype eq 'Community') { |
|
$replace = &mt('To replace the standard title for a course role, enter a title, otherwise leave blank'); |
|
} else { |
|
$replace = &mt('To replace the standard title for a course role, enter a title, otherwise leave blank'); |
|
} |
my %items = ( |
my %items = ( |
'url' => { |
'url' => { |
text => '<b>'.&mt($itemtext->{'url'}).'</b>'.(' 'x2). |
text => '<b>'.&mt($itemtext->{'url'}).'</b>'.(' 'x2). |
Line 1227 sub print_courseinfo {
|
Line 1337 sub print_courseinfo {
|
}, |
}, |
'cloners' => { |
'cloners' => { |
text => '<b>'.&mt($itemtext->{'cloners'}).'</b><br />'. |
text => '<b>'.&mt($itemtext->{'cloners'}).'</b><br />'. |
&mt('Course Coordinators included automatically'), |
&mt('Coordinators included automatically'), |
input => 'textbox', |
input => 'textbox', |
size => '40', |
size => '40', |
}, |
}, |
'rolenames' => { |
'rolenames' => { |
text => '<b>'.&mt($itemtext->{'rolenames'}).'</b><br />'. |
text => '<b>'.&mt($itemtext->{'rolenames'}).'</b><br />'. |
'('.&mt('To replace the standard title for a course role, enter a title, otherwise leave blank').')', |
'('.$replace.')', |
input => 'textbox', |
input => 'textbox', |
size => '20', |
size => '20', |
}, |
}, |
Line 1345 sub print_courseinfo {
|
Line 1455 sub print_courseinfo {
|
&Apache::loncommon::end_data_table(); |
&Apache::loncommon::end_data_table(); |
} elsif ($item eq 'rolenames') { |
} elsif ($item eq 'rolenames') { |
$datatable .= &Apache::loncommon::start_data_table(); |
$datatable .= &Apache::loncommon::start_data_table(); |
foreach my $role ('cc','in','ta','ep','ad','st') { |
my @roles; |
|
if ($crstype eq 'Community') { |
|
@roles = ('co'); |
|
} else { |
|
@roles = ('cc'); |
|
} |
|
push (@roles,('in','ta','ep','ad','st')); |
|
foreach my $role (@roles) { |
$datatable .= &Apache::loncommon::start_data_table_row(). |
$datatable .= &Apache::loncommon::start_data_table_row(). |
'<td align="left"><span class="LC_nobreak">'. |
'<td align="left"><span class="LC_nobreak">'. |
&Apache::lonnet::plaintext($role,$crstype,undef,1). |
&Apache::lonnet::plaintext($role,$crstype,undef,1). |
Line 1418 sub can_modify_catsettings {
|
Line 1535 sub can_modify_catsettings {
|
} |
} |
|
|
sub assign_course_categories { |
sub assign_course_categories { |
my ($r) = @_; |
my ($r,$crstype) = @_; |
my $cdom = $env{'course.'.$env{'request.course.id'}.'.domain'}; |
my $cdom = $env{'course.'.$env{'request.course.id'}.'.domain'}; |
my $cnum = $env{'course.'.$env{'request.course.id'}.'.num'}; |
my $cnum = $env{'course.'.$env{'request.course.id'}.'.num'}; |
my $hascats = 0; |
my $hascats = 0; |
Line 1438 sub assign_course_categories {
|
Line 1555 sub assign_course_categories {
|
} |
} |
my $catwin_js; |
my $catwin_js; |
if ($hascats) { |
if ($hascats) { |
my $alert = &mt("Use 'Save' in the main window to save course categories"); |
my $alert; |
|
if ($crstype eq 'Community') { |
|
$alert = &mt("Use 'Save' in the main window to save community categories"); |
|
} else { |
|
$alert = &mt("Use 'Save' in the main window to save course categories"); |
|
} |
$catwin_js = <<ENDSCRIPT; |
$catwin_js = <<ENDSCRIPT; |
<script type="text/javascript"> |
<script type="text/javascript"> |
|
|
Line 1507 ENDSCRIPT
|
Line 1629 ENDSCRIPT
|
'onclick="javascript:updateCategories()" /></form><br />'; |
'onclick="javascript:updateCategories()" /></form><br />'; |
} |
} |
} else { |
} else { |
$categoriesform .= &mt('No categories defined in this domain'); |
$categoriesform .= &mt('No categories defined in this domain.'); |
} |
} |
$r->print($start_page.$categoriesform.$end_page); |
$r->print($start_page.$categoriesform.$end_page); |
return; |
return; |
Line 1638 sub print_feedback {
|
Line 1760 sub print_feedback {
|
my %sections = &Apache::loncommon::get_sections($cdom,$cnum); |
my %sections = &Apache::loncommon::get_sections($cdom,$cnum); |
my @sections = sort( { $a <=> $b } keys(%sections)); |
my @sections = sort( { $a <=> $b } keys(%sections)); |
my %lt = &Apache::lonlocal::texthash ( |
my %lt = &Apache::lonlocal::texthash ( |
currone => 'Current recipient:', |
currone => 'Current recipient:', |
curmult => 'Current recipients:', |
currmult => 'Current recipients:', |
add => 'Additional recipient:', |
add => 'Additional recipient:', |
del => 'Delete?', |
del => 'Delete?', |
sec => 'Sections:', |
sec => 'Sections:', |
); |
); |
|
|
foreach my $item (@{$ordered}) { |
foreach my $item (@{$ordered}) { |
Line 1703 sub user_table {
|
Line 1825 sub user_table {
|
if ($num) { |
if ($num) { |
$output .= '<tr>'. |
$output .= '<tr>'. |
'<td align="left"><i>'; |
'<td align="left"><i>'; |
if ($num > 1) { |
if ($num == 1) { |
$output .= $lt->{'currone'}; |
$output .= $lt->{'currone'}; |
} else { |
} else { |
$output .= $lt->{'currmult'}; |
$output .= $lt->{'currmult'}; |
Line 1783 sub print_discussion {
|
Line 1905 sub print_discussion {
|
} |
} |
my %items = ( |
my %items = ( |
'plc.roles.denied' => { |
'plc.roles.denied' => { |
text => '<span class="LC_nobreak"><b>'. |
text => '<span class="LC_nobreak"><b>'.&mt($itemtext->{'plc.roles.denied'}).'</b>'. |
&mt($itemtext->{'plc.roles.denied'}).'</b>'. |
|
&Apache::loncommon::help_open_topic("Course_Disable_Discussion").'</span><br />'. |
&Apache::loncommon::help_open_topic("Course_Disable_Discussion").'</span><br />'. |
&mt('(role-based)'), |
&mt('(role-based)'), |
input => 'checkbox', |
input => 'checkbox', |
Line 1797 sub print_discussion {
|
Line 1918 sub print_discussion {
|
}, |
}, |
|
|
'pch.roles.denied' => { |
'pch.roles.denied' => { |
text => '<span class="LC_nobreak"><b>'. |
text => '<span class="LC_nobreak"><b>'.&mt($itemtext->{'pch.roles.denied'}).'</b>'. |
&mt($itemtext->{'pch.roles.denied'}).'</b>'. |
|
&Apache::loncommon::help_open_topic("Course_Disable_Discussion").'</span><br />'. |
&Apache::loncommon::help_open_topic("Course_Disable_Discussion").'</span><br />'. |
&mt('(role-based)'), |
&mt('(role-based)'), |
input => 'checkbox', |
input => 'checkbox', |
Line 1825 sub print_discussion {
|
Line 1945 sub print_discussion {
|
my %sections = &Apache::loncommon::get_sections($cdom,$cnum); |
my %sections = &Apache::loncommon::get_sections($cdom,$cnum); |
my @sections = sort( { $a <=> $b } keys(%sections)); |
my @sections = sort( { $a <=> $b } keys(%sections)); |
my %lt = &Apache::lonlocal::texthash ( |
my %lt = &Apache::lonlocal::texthash ( |
currone => 'Disallowed:', |
currone => 'Disallowed:', |
curmult => 'Disallowed:', |
currmult => 'Disallowed:', |
add => 'Disallow more:', |
add => 'Disallow more:', |
del => 'Delete?', |
del => 'Delete?', |
sec => 'Sections:', |
sec => 'Sections:', |
); |
); |
|
|
foreach my $item (@{$ordered}) { |
foreach my $item (@{$ordered}) { |
Line 1865 sub print_discussion {
|
Line 1985 sub print_discussion {
|
} |
} |
|
|
sub role_checkboxes { |
sub role_checkboxes { |
my ($cdom,$cnum,$item,$settings,$showsections) = @_; |
my ($cdom,$cnum,$item,$settings,$showsections,$crstype) = @_; |
my @roles = ('st','ad','ta','ep','in','cc'); |
my @roles = ('st','ad','ta','ep','in'); |
|
if ($crstype eq 'Community') { |
|
push(@roles,'co'); |
|
} else { |
|
push(@roles,'cc'); |
|
} |
my $output; |
my $output; |
my (@current,@curr_roles,%currsec,@sections); |
my (@current,@curr_roles,%currsec,@sections); |
if ($showsections) { |
if ($showsections) { |
Line 1903 sub role_checkboxes {
|
Line 2028 sub role_checkboxes {
|
if (grep(/^\Q$role\E$/,@current)) { |
if (grep(/^\Q$role\E$/,@current)) { |
$checked = ' checked="checked" '; |
$checked = ' checked="checked" '; |
} |
} |
my $plrole=&Apache::lonnet::plaintext($role); |
my $plrole=&Apache::lonnet::plaintext($role,$crstype); |
if ($showsections) { |
if ($showsections) { |
$output .= &Apache::loncommon::start_data_table_row(); |
$output .= &Apache::loncommon::start_data_table_row(); |
} else { |
} else { |
Line 1974 sub role_checkboxes {
|
Line 2099 sub role_checkboxes {
|
} |
} |
|
|
sub print_classlists { |
sub print_classlists { |
my ($position,$cdom,$settings,$itemtext,$rowtotal) = @_; |
my ($position,$cdom,$settings,$itemtext,$rowtotal,$crstype) = @_; |
my @ordered; |
my @ordered; |
if ($position eq 'top') { |
if ($position eq 'top') { |
@ordered = ('default_enrollment_start_date', |
@ordered = ('default_enrollment_start_date', |
Line 1985 sub print_classlists {
|
Line 2110 sub print_classlists {
|
@ordered = ('student_classlist_view', |
@ordered = ('student_classlist_view', |
'student_opt_in','student_classlist_portfiles'); |
'student_opt_in','student_classlist_portfiles'); |
} |
} |
|
my %lt; |
|
|
|
if ($crstype eq 'Community') { |
|
%lt = &Apache::lonlocal::texthash ( |
|
disabled => 'No viewable membership list', |
|
section => "Membership of viewer's section", |
|
all => 'List of all members', |
|
); |
|
} else { |
|
%lt = &Apache::lonlocal::texthash ( |
|
disabled => 'No viewable classlist', |
|
section => "Classlist of viewer's section", |
|
all => 'Classlist of all students', |
|
); |
|
} |
|
|
my %items = ( |
my %items = ( |
'default_enrollment_start_date' => { |
'default_enrollment_start_date' => { |
text => '<b>'.&mt($itemtext->{'default_enrollment_start_date'}).'</b>', |
text => '<b>'.&mt($itemtext->{'default_enrollment_start_date'}).'</b>', |
Line 2003 sub print_classlists {
|
Line 2144 sub print_classlists {
|
'student_classlist_view' => { |
'student_classlist_view' => { |
text => '<b>'.&mt($itemtext->{'student_classlist_view'}).'</b>', |
text => '<b>'.&mt($itemtext->{'student_classlist_view'}).'</b>', |
input => 'selectbox', |
input => 'selectbox', |
options => { |
options => \%lt, |
disabled => &mt('No viewable classlist'), |
|
section => &mt("Classlist of viewer's section"), |
|
all => &mt('Classlist of all students'), |
|
}, |
|
order => ['disabled','all','section'], |
order => ['disabled','all','section'], |
}, |
}, |
'student_opt_in' => { |
'student_opt_in' => { |
Line 2024 sub print_classlists {
|
Line 2161 sub print_classlists {
|
($settings->{'student_classlist_view'} eq 'section')) { |
($settings->{'student_classlist_view'} eq 'section')) { |
$settings->{'student_classlist_view'} = 'disabled'; |
$settings->{'student_classlist_view'} = 'disabled'; |
} |
} |
return &make_item_rows($cdom,\%items,\@ordered,$settings,$rowtotal); |
return &make_item_rows($cdom,\%items,\@ordered,$settings,$rowtotal,$crstype); |
} |
} |
|
|
sub print_appearance { |
sub print_appearance { |
my ($cdom,$settings,$ordered,$itemtext,$rowtotal) = @_; |
my ($cdom,$settings,$ordered,$itemtext,$rowtotal,$crstype) = @_; |
unless ((ref($settings) eq 'HASH') && (ref($ordered) eq 'ARRAY') && (ref($itemtext) eq 'HASH')) { |
unless ((ref($settings) eq 'HASH') && (ref($ordered) eq 'ARRAY') && (ref($itemtext) eq 'HASH')) { |
return; |
return; |
} |
} |
|
my $mathdef; |
|
if ($crstype eq 'Community') { |
|
$mathdef = &mt("None specified - use member's choice"); |
|
} else { |
|
$mathdef = &mt("None specified - use student's choice"); |
|
} |
my %items = ( |
my %items = ( |
'default_xml_style' => { |
'default_xml_style' => { |
text => '<b>'.&mt($itemtext->{'default_xml_style'}).'</b> '. |
text => '<b>'.&mt($itemtext->{'default_xml_style'}).'</b> '. |
Line 2059 sub print_appearance {
|
Line 2202 sub print_appearance {
|
tth => &mt('TeX to HTML'), |
tth => &mt('TeX to HTML'), |
}, |
}, |
order => ['jsMath','mimetex','tth'], |
order => ['jsMath','mimetex','tth'], |
nullval => &mt("None specified - use student's choice"), |
nullval => $mathdef, |
}, |
}, |
'tthoptions' => { |
'tthoptions' => { |
text => '<b>'.&mt($itemtext->{'tthoptions'}).'</b>', |
text => '<b>'.&mt($itemtext->{'tthoptions'}).'</b>', |
Line 2067 sub print_appearance {
|
Line 2210 sub print_appearance {
|
size => 40, |
size => 40, |
}, |
}, |
); |
); |
return &make_item_rows($cdom,\%items,$ordered,$settings,$rowtotal); |
return &make_item_rows($cdom,\%items,$ordered,$settings,$rowtotal,$crstype); |
} |
} |
|
|
sub print_grading { |
sub print_grading { |
my ($cdom,$settings,$ordered,$itemtext,$rowtotal) = @_; |
my ($cdom,$settings,$ordered,$itemtext,$rowtotal,$crstype) = @_; |
unless ((ref($settings) eq 'HASH') && (ref($ordered) eq 'ARRAY') && (ref($itemtext) eq 'HASH')) { |
unless ((ref($settings) eq 'HASH') && (ref($ordered) eq 'ARRAY') && (ref($itemtext) eq 'HASH')) { |
return; |
return; |
} |
} |
Line 2120 sub print_grading {
|
Line 2263 sub print_grading {
|
input => 'radio', |
input => 'radio', |
}, |
}, |
); |
); |
return &make_item_rows($cdom,\%items,$ordered,$settings,$rowtotal); |
return &make_item_rows($cdom,\%items,$ordered,$settings,$rowtotal,$crstype); |
} |
} |
|
|
sub print_printouts { |
sub print_printouts { |
my ($cdom,$settings,$ordered,$itemtext,$rowtotal) = @_; |
my ($cdom,$settings,$ordered,$itemtext,$rowtotal,$crstype) = @_; |
unless ((ref($settings) eq 'HASH') && (ref($ordered) eq 'ARRAY') && (ref($itemtext) eq 'HASH')) { |
unless ((ref($settings) eq 'HASH') && (ref($ordered) eq 'ARRAY') && (ref($itemtext) eq 'HASH')) { |
return; |
return; |
} |
} |
Line 2163 sub print_printouts {
|
Line 2306 sub print_printouts {
|
input => 'radio', |
input => 'radio', |
}, |
}, |
); |
); |
return &make_item_rows($cdom,\%items,$ordered,$settings,$rowtotal); |
return &make_item_rows($cdom,\%items,$ordered,$settings,$rowtotal,$crstype); |
} |
} |
|
|
sub print_spreadsheet { |
sub print_spreadsheet { |
my ($cdom,$settings,$ordered,$itemtext,$rowtotal) = @_; |
my ($cdom,$settings,$ordered,$itemtext,$rowtotal,$crstype) = @_; |
unless ((ref($settings) eq 'HASH') && (ref($ordered) eq 'ARRAY') && (ref($itemtext) eq 'HASH')) { |
unless ((ref($settings) eq 'HASH') && (ref($ordered) eq 'ARRAY') && (ref($itemtext) eq 'HASH')) { |
return; |
return; |
} |
} |
Line 2199 sub print_spreadsheet {
|
Line 2342 sub print_spreadsheet {
|
input => 'radio', |
input => 'radio', |
}, |
}, |
); |
); |
return &make_item_rows($cdom,\%items,$ordered,$settings,$rowtotal); |
return &make_item_rows($cdom,\%items,$ordered,$settings,$rowtotal,$crstype); |
} |
} |
|
|
sub print_bridgetasks { |
sub print_bridgetasks { |
my ($cdom,$settings,$ordered,$itemtext,$rowtotal) = @_; |
my ($cdom,$settings,$ordered,$itemtext,$rowtotal,$crstype) = @_; |
unless ((ref($settings) eq 'HASH') && (ref($ordered) eq 'ARRAY') && (ref($itemtext) eq 'HASH')) { |
unless ((ref($settings) eq 'HASH') && (ref($ordered) eq 'ARRAY') && (ref($itemtext) eq 'HASH')) { |
return; |
return; |
} |
} |
|
my ($stumsg,$msgnote); |
|
if ($crstype eq 'Community') { |
|
$stumsg = &mt('Send message to member'); |
|
$msgnote = &mt('Message to member and add to user notes'); |
|
} else { |
|
$stumsg = &mt('Send message to student'); |
|
$msgnote = &mt('Message to student and add to user notes'); |
|
} |
my %items = ( |
my %items = ( |
task_messages => { |
task_messages => { |
text => '<b>'.&mt($itemtext->{'task_messages'}).'</b>', |
text => '<b>'.&mt($itemtext->{'task_messages'}).'</b>', |
input => 'selectbox', |
input => 'selectbox', |
options => { |
options => { |
only_student => &mt('Send message to student'), |
only_student => $stumsg, |
student_and_user_notes_screen => &mt('Message to student and add to user notes'), |
student_and_user_notes_screen => $msgnote, |
}, |
}, |
order => ['only_student','student_and_user_notes_screen'], |
order => ['only_student','student_and_user_notes_screen'], |
nullval => &mt('No message or record in user notes'), |
nullval => &mt('No message or record in user notes'), |
Line 2233 sub print_bridgetasks {
|
Line 2384 sub print_bridgetasks {
|
input => 'radio', |
input => 'radio', |
}, |
}, |
); |
); |
return &make_item_rows($cdom,\%items,$ordered,$settings,$rowtotal); |
return &make_item_rows($cdom,\%items,$ordered,$settings,$rowtotal,$crstype); |
} |
} |
|
|
sub print_other { |
sub print_other { |
my ($cdom,$settings,$allitems,$rowtotal) = @_; |
my ($cdom,$settings,$allitems,$rowtotal,$crstype) = @_; |
unless ((ref($settings) eq 'HASH') && (ref($allitems) eq 'ARRAY')) { |
unless ((ref($settings) eq 'HASH') && (ref($allitems) eq 'ARRAY')) { |
return; |
return; |
} |
} |
Line 2258 sub print_other {
|
Line 2409 sub print_other {
|
input => 'textbox', |
input => 'textbox', |
size => '30', |
size => '30', |
}; |
}; |
my $output = &make_item_rows($cdom,\%items,\@ordered,$settings,$rowtotal); |
my $output = &make_item_rows($cdom,\%items,\@ordered,$settings,$rowtotal,$crstype); |
} |
} |
|
|
sub get_other_items { |
sub get_other_items { |
Line 2275 sub get_other_items {
|
Line 2426 sub get_other_items {
|
unless (($parameter =~ m/^internal\./)||($parameter =~ m/^metadata\./) || |
unless (($parameter =~ m/^internal\./)||($parameter =~ m/^metadata\./) || |
($parameter =~ m/^selfenroll_/) || ($parameter =~ /_selfenroll$/) |
($parameter =~ m/^selfenroll_/) || ($parameter =~ /_selfenroll$/) |
|| ($parameter eq 'type') || |
|| ($parameter eq 'type') || |
($parameter =~ m/^(cc|in|ta|ep|ad|st)\.plaintext$/)) { |
($parameter =~ m/^(cc|co|in|ta|ep|ad|st)\.plaintext$/)) { |
push(@ordered,$parameter); |
push(@ordered,$parameter); |
} |
} |
} |
} |
Line 2363 sub select_from_options {
|
Line 2514 sub select_from_options {
|
} |
} |
|
|
sub make_item_rows { |
sub make_item_rows { |
my ($cdom,$items,$ordered,$settings,$rowtotal) = @_; |
my ($cdom,$items,$ordered,$settings,$rowtotal,$crstype) = @_; |
my $datatable; |
my $datatable; |
if ((ref($items) eq 'HASH') && (ref($ordered) eq 'ARRAY')) { |
if ((ref($items) eq 'HASH') && (ref($ordered) eq 'ARRAY')) { |
my $count = 0; |
my $count = 0; |
Line 2371 sub make_item_rows {
|
Line 2522 sub make_item_rows {
|
$count ++; |
$count ++; |
$datatable .= &item_table_row_start($items->{$item}{text},$count); |
$datatable .= &item_table_row_start($items->{$item}{text},$count); |
if ($item eq 'nothideprivileged') { |
if ($item eq 'nothideprivileged') { |
$datatable .= ¬hidepriv_row($cdom,$item,$settings); |
$datatable .= ¬hidepriv_row($cdom,$item,$settings,$crstype); |
} elsif ($item eq 'print_header_format') { |
} elsif ($item eq 'print_header_format') { |
$datatable .= &print_hdrfmt_row($item,$settings); |
$datatable .= &print_hdrfmt_row($item,$settings); |
} elsif ($items->{$item}{input} eq 'dates') { |
} elsif ($items->{$item}{input} eq 'dates') { |
Line 2401 sub make_item_rows {
|
Line 2552 sub make_item_rows {
|
} |
} |
|
|
sub nothidepriv_row { |
sub nothidepriv_row { |
my ($cdom,$item,$settings) = @_; |
my ($cdom,$item,$settings,$crstype) = @_; |
my ($cnum) = &get_course(); |
my ($cnum) = &get_course(); |
my %nothide; |
my %nothide; |
my $datatable; |
my $datatable; |
Line 2469 sub nothidepriv_row {
|
Line 2620 sub nothidepriv_row {
|
} |
} |
$datatable .= '</table>'; |
$datatable .= '</table>'; |
} else { |
} else { |
$datatable .= &mt('No Domain Coordinators have course roles'); |
if ($crstype eq 'Community') { |
|
$datatable .= &mt('No Domain Coordinators have community roles'); |
|
} else { |
|
$datatable .= &mt('No Domain Coordinators have course roles'); |
|
} |
} |
} |
return $datatable; |
return $datatable; |
} |
} |
Line 2573 ENDJS
|
Line 2728 ENDJS
|
&position_selector($pos,$currnum,$maxnum). |
&position_selector($pos,$currnum,$maxnum). |
'<b>'.&mt('New').'</b></span></td><td align="left">'. |
'<b>'.&mt('New').'</b></span></td><td align="left">'. |
&substitution_selector($currnum).'</td>'. |
&substitution_selector($currnum).'</td>'. |
'</tr>'; |
'</tr>'; |
$pos ++; |
$pos ++; |
$currnum ++; |
$currnum ++; |
$output .= '<tr>'. |
$output .= '<tr>'. |
Line 2586 ENDJS
|
Line 2741 ENDJS
|
'<input type="hidden" name="printfmthdr_maxnum" value="'. |
'<input type="hidden" name="printfmthdr_maxnum" value="'. |
$maxnum.'" /></td>'. |
$maxnum.'" /></td>'. |
'</tr>'. |
'</tr>'. |
'</table>'; |
'</table>'; |
return $output; |
return $output; |
} |
} |
|
|
Line 2606 sub position_selector {
|
Line 2761 sub position_selector {
|
} |
} |
|
|
sub substitution_selector { |
sub substitution_selector { |
my ($num,$subst,$limit) = @_; |
my ($num,$subst,$limit,$crstype) = @_; |
|
my ($stunametxt,$crsidtxt); |
|
if ($crstype eq 'Community') { |
|
$stunametxt = 'member name'; |
|
$crsidtxt = 'community ID', |
|
} else { |
|
$stunametxt = 'student name'; |
|
$crsidtxt = 'course ID', |
|
} |
my %lt = &Apache::lonlocal::texthash( |
my %lt = &Apache::lonlocal::texthash( |
n => 'student name', |
n => $stunametxt, |
c => 'course ID', |
c => $crsidtxt, |
a => 'assignment note', |
a => 'assignment note', |
); |
); |
my $output .= &mt('Substitution').'<br />'. |
my $output .= &mt('Substitution').'<br />'. |