Diff for /loncom/interface/courseprefs.pm between versions 1.49.2.28.2.12 and 1.49.2.28.2.13

version 1.49.2.28.2.12, 2022/08/29 16:02:09 version 1.49.2.28.2.13, 2022/09/19 19:19:39
Line 116  This module is used for configuration of Line 116  This module is used for configuration of
   
 =item item_table_row_end()  =item item_table_row_end()
   
 =item yes_no_radio()  =item yesno_radio()
   
 =item select_from_options()  =item select_from_options()
   
Line 293  sub handler { Line 293  sub handler {
                 excc => 'Exclude from community catalog',                  excc => 'Exclude from community catalog',
                 clon => 'Users allowed to clone community',                  clon => 'Users allowed to clone community',
                 rept => 'Replacement titles for standard community roles',                  rept => 'Replacement titles for standard community roles',
                 time => 'Timezone where the community is located',                  time => 'Time Zone where the community is located',
                 date => 'Locale used for community calendar',                  date => 'Locale used for community calendar',
                 coco => 'Community Content',                  coco => 'Community Content',
                 copo => 'Community Policy',                  copo => 'Community Policy',
Line 322  sub handler { Line 322  sub handler {
                 excc => 'Exclude from course catalog',                  excc => 'Exclude from course catalog',
                 clon => 'Users allowed to clone course',                  clon => 'Users allowed to clone course',
                 rept => 'Replacement titles for standard course roles',                  rept => 'Replacement titles for standard course roles',
                 time => 'Timezone in which the course takes place',                  time => 'Time Zone in which the course takes place',
                 date => 'Locale used for course calendar',                  date => 'Locale used for course calendar',
                 coco => 'Course Content',                  coco => 'Course Content',
                 copo => 'Course Policy',                  copo => 'Course Policy',
Line 1441  sub process_changes { Line 1441  sub process_changes {
                                     $changes->{$entry} = $newvalues{$entry};                                      $changes->{$entry} = $newvalues{$entry};
                                 }                                  }
                             }                              }
                           } elsif ($entry eq 'timezone') {
                               if ($env{'form.'.$entry}) {
                                   $newvalues{$entry} = $env{'form.'.$entry};
                                   if ($newvalues{$entry} ne $values->{$entry}) {
                                       $changes->{$entry} = $newvalues{$entry};
                                   }
                                   if ($env{'form.tzover'}) {
                                       $newvalues{'tzover'} = $env{'form.tzover'};
                                       if ($newvalues{'tzover'} ne $values->{'tzover'}) {
                                           $changes->{'tzover'} = $newvalues{'tzover'};
                                       }
                                   } elsif ($values->{'tzover'}) {
                                       $changes->{'tzover'} = '';
                                   }
                               } elsif ($values->{$entry}) {
                                   $changes->{$entry} = '';
                               }
                         } else {                          } else {
                             $newvalues{$entry} = $env{'form.'.$entry};                              $newvalues{$entry} = $env{'form.'.$entry};
                         }                          }
                         unless (($entry eq 'co-owners') || ($entry eq 'discussion_post_fonts') || ($entry eq 'extresource')) {                          unless (($entry eq 'co-owners') || ($entry eq 'discussion_post_fonts') ||
                                   ($entry eq 'extresource') || ($entry eq 'timezone')) {
                             if ($newvalues{$entry} ne $values->{$entry}) {                              if ($newvalues{$entry} ne $values->{$entry}) {
                                 $changes->{$entry} = $newvalues{$entry};                                  $changes->{$entry} = $newvalues{$entry};
                             }                              }
Line 1875  sub store_changes { Line 1893  sub store_changes {
                                     if ($msg ne '') {                                      if ($msg ne '') {
                                         $output .= '<li>'.&Apache::lonhtmlcommon::confirm_success(&mt($displayname)).'<ul class="LC_success">'.$msg.'</ul></li>';                                          $output .= '<li>'.&Apache::lonhtmlcommon::confirm_success(&mt($displayname)).'<ul class="LC_success">'.$msg.'</ul></li>';
                                     }                                      }
                                   } elsif ($key eq 'timezone') {
                                       next unless ((exists($changes->{$item}{$key})) || (exists($changes->{$item}{'tzover'})));
                                       my ($displayname,$text);
                                       $text = $prefs->{$item}->{'itemtext'}{$key};
                                       my $displayval;
                                       if (exists($changes->{$item}{$key})) {
                                           $displayname = &mt($text);
                                           $storehash{$key} = $changes->{$item}{$key};
                                           if ($changes->{$item}{$key} ne '') {
                                               $displayval = '<b>'.$changes->{$item}{$key}.'</b>';
                                           } else {
                                               push(@delkeys,$key);
                                               if (exists($values->{'tzover'})) {
                                                   push(@delkeys,'tzover');
                                               }
                                               $output .= '<li>'.&Apache::lonhtmlcommon::confirm_success(&mt('Deleted setting for [_1]',
                                                                                                         '<i>'.$displayname.'</i>')).'</li>';
                                           }
                                       }
                                       unless (grep(/^\Q$key\E$/,@delkeys)) {
                                           if (exists($changes->{$item}{'tzover'})) {
                                               $storehash{'tzover'} = $changes->{$item}{'tzover'};
                                               my $tzovertext;
                                               if ($changes->{$item}{'tzover'} ne '') {
                                                   $tzovertext = &mt('Course Time Zone overrides individual user preference');
                                               } else {
                                                   push(@delkeys,'tzover');
                                                   $tzovertext = &mt('Course Time Zone does not override individual user preference');
                                               }
                                               if ($displayval eq '') {
                                                   $output .= '<li>'.&Apache::lonhtmlcommon::confirm_success($tzovertext).'</li>';
                                               } else {
                                                   $displayval .= '<br />'.('&nbsp;'x5).$tzovertext;
                                               }
                                           }
                                           if ($displayval ne '') {
                                               $output .= '<li>'.&Apache::lonhtmlcommon::confirm_success(&mt('[_1] set to [_2]',
                                                                 '<i>'.$displayname.'</i>',$displayval)).'</li>';
                                           }
                                       }
                                 } else {                                  } else {
                                     next if (!exists($changes->{$item}{$key}));                                      next if (!exists($changes->{$item}{$key}));
                                     my ($displayname,$text);                                      my ($displayname,$text);
Line 2467  sub get_course { Line 2525  sub get_course {
 sub get_jscript {  sub get_jscript {
     my ($cid,$cdom,$phase,$crstype,$settings,$noedit) = @_;      my ($cid,$cdom,$phase,$crstype,$settings,$noedit) = @_;
     my ($can_toggle_cat,$can_categorize) = &can_modify_catsettings($cdom,$crstype);      my ($can_toggle_cat,$can_categorize) = &can_modify_catsettings($cdom,$crstype);
     my ($jscript,$categorize_js,$loncaparev_js,$instcode_js,$extresource_js);      my ($jscript,$categorize_js,$loncaparev_js,$instcode_js,$extresource_js,$localization_js);
     my $stubrowse_js = &Apache::loncommon::studentbrowser_javascript();      my $stubrowse_js = &Apache::loncommon::studentbrowser_javascript();
     my $browse_js = &Apache::loncommon::browser_and_searcher_javascript('parmset');      my $browse_js = &Apache::loncommon::browser_and_searcher_javascript('parmset');
     my $cloners_js = &cloners_javascript($phase);      my $cloners_js = &cloners_javascript($phase);
Line 2701  function toggleExtRes() { Line 2759  function toggleExtRes() {
     }      }
 }  }
 ENDSCRIPT  ENDSCRIPT
       $localization_js = <<"ENDSCRIPT";
   function toggleTimeZone() {
       if (document.getElementById('LC_set_timezone')) {
           var timezonesel = document.getElementById('LC_set_timezone').value;
           if (document.getElementById('LC_tzoverdiv')) {
               var tzoverdiv = document.getElementById('LC_tzoverdiv');
               if (timezonesel == '') {
                   tzoverdiv.style.display = 'none';
               } else {
                   tzoverdiv.style.display = 'block';
               }
           }
       }
   }
   ENDSCRIPT
     $jscript = '<script type="text/javascript" language="Javascript">'."\n".      $jscript = '<script type="text/javascript" language="Javascript">'."\n".
                '// <![CDATA['."\n".                 '// <![CDATA['."\n".
                $browse_js."\n".$categorize_js."\n".$loncaparev_js."\n".                 $browse_js."\n".$categorize_js."\n".$loncaparev_js."\n".
                $cloners_js."\n".$instcode_js.                 $cloners_js."\n".$instcode_js."\n".$localization_js."\n".
                $syllabus_js."\n".$menuitems_js."\n".$extresource_js."\n".                 $syllabus_js."\n".$menuitems_js."\n".$extresource_js."\n".
                &linkprot_javascript()."\n".'//]]>'."\n".                 &linkprot_javascript()."\n".'//]]>'."\n".
                '</script>'."\n".$stubrowse_js."\n";                 '</script>'."\n".$stubrowse_js."\n";
Line 4217  sub print_localization { Line 4290  sub print_localization {
         if ($item eq 'timezone') {          if ($item eq 'timezone') {
             my $includeempty = 1;              my $includeempty = 1;
             my $timezone = &Apache::lonlocal::gettimezone();              my $timezone = &Apache::lonlocal::gettimezone();
               my $onchange;
               unless ($noedit) {
                  $onchange = ' onchange="javascript:toggleTimeZone();"';
               }
               my $id = ' id="LC_set_timezone"';
             $datatable .=               $datatable .= 
                 &Apache::loncommon::select_timezone($item,$timezone,undef,                  &Apache::loncommon::select_timezone($item,$timezone,$onchange,
                                                     $includeempty,$disabled);                                                      $includeempty,$id,$disabled);
               my $tzsty = 'none';
               if ($timezone ne '') {
                   $tzsty = 'block';
               }
               $datatable .= '<div id="LC_tzoverdiv" style="display:'.$tzsty.';">'.
                             '<span class="LC_nobreak">'.
                             &mt('Override individual user preference?').
                             &yesno_radio('tzover',$settings,undef,1,'',$noedit).
                             '</span></div>';
         } elsif ($item eq 'datelocale') {          } elsif ($item eq 'datelocale') {
             my $includeempty = 1;              my $includeempty = 1;
             my $locale_obj = &Apache::lonlocal::getdatelocale();              my $locale_obj = &Apache::lonlocal::getdatelocale();

Removed from v.1.49.2.28.2.12  
changed lines
  Added in v.1.49.2.28.2.13


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>