Diff for /loncom/interface/lonparmset.pm between versions 1.558 and 1.559

version 1.558, 2016/03/15 14:25:26 version 1.559, 2016/05/13 22:48:05
Line 824  sub valout { Line 824  sub valout {
         }          }
     } else {      } else {
         if ($type eq 'date_interval') {          if ($type eq 'date_interval') {
             my ($totalsecs,$donebutton,$proctor,$secretkey) = split(/_/,$value);              my ($totalsecs,$donesuffix) = split(/_/,$value,2);
               my ($usesdone,$donebuttontext,$proctor,$secretkey);
               if ($donesuffix =~ /^done\:([^\:]+)\:(.*)$/) {
                   $donebuttontext = $1;
                   (undef,$proctor,$secretkey) = split(/_/,$2);
                   $usesdone = 'done';
               } elsif ($donesuffix =~ /^done(|_.+)$/) {
                   $donebuttontext = &mt('Done');
                   ($usesdone,$proctor,$secretkey) = split(/_/,$donesuffix);
               }
             my ($sec,$min,$hour,$mday,$mon,$year)=gmtime($totalsecs);              my ($sec,$min,$hour,$mday,$mon,$year)=gmtime($totalsecs);
             my @timer;              my @timer;
             $year=$year-70;              $year=$year-70;
Line 858  sub valout { Line 867  sub valout {
                 push(@timer,&mt('[quant,_1,sec]',0));                  push(@timer,&mt('[quant,_1,sec]',0));
             }              }
             $result.=join(", ",@timer);              $result.=join(", ",@timer);
             if ($donebutton eq 'done') {              if ($usesdone eq 'done') {
                 if ($secretkey) {                  if ($secretkey) {
                     $result .= ' '.&mt('+ "done" with proctor key: [_1]',$secretkey);                        $result .= ' '.&mt('+ "[_1]" with proctor key: [_2]',$donebuttontext,$secretkey);  
                 } else {                  } else {
                     $result .= ' '.&mt('+ "done"');                      $result .= ' + "'.$donebuttontext.'"';
                 }                    }
             }              }
         } elsif (&isdateparm($type)) {          } elsif (&isdateparm($type)) {
             $result = &Apache::lonlocal::locallocaltime($value).              $result = &Apache::lonlocal::locallocaltime($value).
Line 3631  sub get_date_interval_from_form { Line 3640  sub get_date_interval_from_form {
     }      }
     }      }
     if (($key =~ /\.interval$/) && (($env{'form.done_'.$key} eq '_done') || ($env{'form.done_'.$key} eq '_done_proctor'))) {      if (($key =~ /\.interval$/) && (($env{'form.done_'.$key} eq '_done') || ($env{'form.done_'.$key} eq '_done_proctor'))) {
         $seconds .= $env{'form.done_'.$key};          if ($env{'form.done_'.$key.'_buttontext'}) {
         if ($env{'form.done_'.$key.'_proctorkey'}) {              $env{'form.done_'.$key.'_buttontext'} =~ s/\://g;
               $seconds .= '_done:'.$env{'form.done_'.$key.'_buttontext'}.':';
               if ($env{'form.done_'.$key} eq '_done_proctor') {
                   $seconds .= '_proctor';
               }
           } else {
               $seconds .= $env{'form.done_'.$key}; 
           }
           if (($env{'form.done_'.$key} eq '_done_proctor') && 
               ($env{'form.done_'.$key.'_proctorkey'})) {
             $seconds .= '_'.$env{'form.done_'.$key.'_proctorkey'};              $seconds .= '_'.$env{'form.done_'.$key.'_proctorkey'};
         }          }
     }      }
Line 3941  my %intervals = Line 3959  my %intervals =
   
 my %intervalmatches = (  my %intervalmatches = (
          'date_interval'           'date_interval'
               => [['done','\d+_done$'],                => [['done','\d+_done(|\:[^\:]+\:)$'],
                   ['done_proctor','\d+_done_proctor_']],                    ['done_proctor','\d+_done(|\:[^\:]+\:)_proctor_']],
     );      );
   
 my %intervaltypes = (  my %intervaltypes = (
Line 4033  sub date_interval_selector { Line 4051  sub date_interval_selector {
             my $checkedproc = '';              my $checkedproc = '';
             my $currproctorkey = '';              my $currproctorkey = '';
             my $currprocdisplay = 'hidden';              my $currprocdisplay = 'hidden';
               my $currdonetext = &mt('Done');
             my $checkedoff = ' checked="checked"';              my $checkedoff = ' checked="checked"';
             if ($currval =~ /^(\d+)_done$/) {              if ($currval =~ /^(?:\d+)_done$/) {
                   $checkedon = ' checked="checked"';
                   $checkedoff = '';
               } elsif ($currval =~ /^(?:\d+)_done\:([^\:]+)\:$/) {
                   $currdonetext = $1;
                 $checkedon = ' checked="checked"';                  $checkedon = ' checked="checked"';
                 $checkedoff = '';                  $checkedoff = '';
             } elsif ($currval =~ /^(?:\d+)_done_proctor_(.+)$/) {              } elsif ($currval =~ /^(?:\d+)_done_proctor_(.+)$/) {
Line 4042  sub date_interval_selector { Line 4065  sub date_interval_selector {
                 $checkedproc = ' checked="checked"';                  $checkedproc = ' checked="checked"';
                 $checkedoff = '';                  $checkedoff = '';
                 $currprocdisplay = 'text';                  $currprocdisplay = 'text';
               } elsif ($currval =~ /^(?:\d+)_done\:([^\:]+)\:_proctor_(.+)$/) {
                   $currdonetext = $1;
                   $currproctorkey = $2;
                   $checkedproc = ' checked="checked"';
                   $checkedoff = '';
                   $currprocdisplay = 'text';
             }              }
             my $onclick = ' onclick="toggleSecret(this.form,'."'done_','$thiskey'".');"';              my $onclick = ' onclick="toggleSecret(this.form,'."'done_','$thiskey'".');"';
             $result .= '<br /><span class="LC_nobreak">'.&mt('Include "done" button').              $result .= '<br /><span class="LC_nobreak">'.&mt('Include "done" button').
Line 4052  sub date_interval_selector { Line 4081  sub date_interval_selector {
                        '<label><input type="radio" value="_done_proctor" name="done_'.$thiskey.'"'.$checkedproc.$onclick.' />'.                         '<label><input type="radio" value="_done_proctor" name="done_'.$thiskey.'"'.$checkedproc.$onclick.' />'.
                        &mt('Yes, with proctor key').'</label>'.                         &mt('Yes, with proctor key').'</label>'.
                        '<input type="'.$currprocdisplay.'" id="done_'.$thiskey.'_proctorkey" '.                         '<input type="'.$currprocdisplay.'" id="done_'.$thiskey.'_proctorkey" '.
                        'name="done_'.$thiskey.'_proctorkey" value="'.$currproctorkey.'" /></span>';                         'name="done_'.$thiskey.'_proctorkey" value="'.&HTML::Entities::encode($currproctorkey,'"<>&').'" /></span><br />'.
                          '<span class="LC_nobreak">'.&mt('Button text').': '.
                          '<input type="text" name="done_'.$thiskey.'_buttontext" value="'.&HTML::Entities::encode($currdonetext,'"<>&').'" /></span>';
         }          }
     }      }
     unless ($readonly) {      unless ($readonly) {

Removed from v.1.558  
changed lines
  Added in v.1.559


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