Diff for /loncom/interface/Attic/londropadd.pm between versions 1.89 and 1.91

version 1.89, 2003/11/06 22:49:59 version 1.91, 2003/12/05 21:27:59
Line 146  sub print_main_menu { Line 146  sub print_main_menu {
          'enrollone' => 'Enroll a single student',           'enrollone' => 'Enroll a single student',
          'modify'    => 'Modify student data',           'modify'    => 'Modify student data',
          'view'      => 'View Class List',           'view'      => 'View Class List',
          'drop'      => 'Drop Students');           'drop'      => 'Drop Students',
            'populate'  => 'Automated Enrollment Manager');
   
     $r->print(<<END);      $r->print(<<END);
 <p>  <p>
Line 169  sub print_main_menu { Line 170  sub print_main_menu {
 <font size="+1">  <font size="+1">
     <a href="/adm/dropadd?action=drop">$Text{'drop'}</a>      <a href="/adm/dropadd?action=drop">$Text{'drop'}</a>
 </font>  </font>
 </p>  </p><p>
   <font size="+1">
       <a href="/adm/populate">$Text{'populate'}</a>
   </font>
 END  END
 }  }
   
Line 237  sub javascript_validations { Line 241  sub javascript_validations {
         my %param = ( formname => 'studentform',          my %param = ( formname => 'studentform',
                       kerb_def_dom => $krbdefdom );                        kerb_def_dom => $krbdefdom );
         $authheader = &Apache::loncommon::authform_header(%param);          $authheader = &Apache::loncommon::authform_header(%param);
       } elsif ($mode eq 'createcourse') {
           my %param = ( formname => 'ccrs',
                     kerb_def_dom => $krbdefdom );
           $authheader = &Apache::loncommon::authform_header(%param);
     }      }
       
     my %alert = &Apache::lonlocal::texthash      my %alert = &Apache::lonlocal::texthash
         (username => 'You need to specify the username field.',          (username => 'You need to specify the username field.',
          authen   => 'You must choose an authentication type.',           authen   => 'You must choose an authentication type.',
Line 256  function verify_message (vf,founduname,f Line 265  function verify_message (vf,founduname,f
 END  END
     my $auth_checks = (<<END);      my $auth_checks = (<<END);
     var foundatype=0;      var foundatype=0;
   END
       unless ($mode eq 'createcourse') {
           $auth_checks .= (<<END);
     if (founduname==0) {      if (founduname==0) {
  alert('$alert{'username'}');   alert('$alert{'username'}');
         return;          return;
     }      }
   END
       }
       $auth_checks .= (<<END);
     // alert('current.radiovalue = '+current.radiovalue);      // alert('current.radiovalue = '+current.radiovalue);
     if (current.radiovalue == null || current.radiovalue == 'nochange') {      if (current.radiovalue == null || current.radiovalue == 'nochange') {
         // They did not check any of the login radiobuttons.          // They did not check any of the login radiobuttons.
Line 289  END Line 304  END
         }          }
     }      }
 END  END
     my $optional_checks = (<<END);      my $optional_checks = '';
       if ($mode eq 'createcourse') {
           $optional_checks = (<<END);
       vf.submit();
   }
   END
       } else {
           $optional_checks = (<<END);
     var message='';      var message='';
     if (foundname==0) {       if (foundname==0) { 
         message='$alert{'name'}';          message='$alert{'name'}';
Line 323  END Line 345  END
         vf.submit();          vf.submit();
     }      }
 }  }
   
 END  END
       }
     my $result = $function_name;      my $result = $function_name;
     if ($mode eq 'auth') {      if ( ($mode eq 'auth') || ($mode eq 'createcourse') ) {
         $result .= $auth_checks;          $result .= $auth_checks;
     }      }
     $result .= $optional_checks;      $result .= $optional_checks;
     if ($mode eq 'auth') {      if ( ($mode eq 'auth') || ($mode eq 'createcourse') ) {
         $result .= $authheader;          $result .= $authheader;
     }      }
     return $result;      return $result;
Line 500  sub print_upload_manager_footer { Line 522  sub print_upload_manager_footer {
     my $locform = &Apache::loncommon::authform_local(%param);      my $locform = &Apache::loncommon::authform_local(%param);
     my $domform = &domain_form($defdom);      my $domform = &domain_form($defdom);
     my $date_table = &date_setting_table();      my $date_table = &date_setting_table();
     $r->print(<<ENDPICK);      my $Str = "</table>\n";
 </table>      $Str .= &hidden_input('nfields',$i);
 <input type="hidden" name="nfields" value="$i">      $Str .= &hidden_input('keyfields',$keyfields);
 <input type="hidden" name="keyfields" value="$keyfields">      $Str .= '<h3>'.&mt('Login Type')."</h3>\n";
 <h3>Login Type</h3>      $Str .= "<p>\n".
 <p>Note: this will not take effect if the user already exists</p>          &mt('Note: this will not take effect if the user already exists').
 <p>          "</p><p>\n";
 $krbform      $Str .= $krbform."\n</p><p>\n".
 </p>          $intform."\n</p><p>\n".
 <p>          $locform."\n</p>\n";
 $intform      $Str .= '<h3>'.&mt('LON-CAPA Domain for Students')."</h3>\n";
 </p>      $Str .= "<p>\n".&mt('LON-CAPA domain: [_1]',$domform)."\n</p>\n";
 <p>      $Str .= "<h3>".&mt('Starting and Ending Dates')."</h3>\n";
 $locform      $Str .= "<p>\n".$date_table."</p>\n";
 </p>      $Str .= "<h3>".&mt('Full Update')."</h3>\n";
 <h3>LON-CAPA Domain for Students</h3>      $Str .= '<input type="checkbox" name="fullup" value="yes">'.
 LON-CAPA domain: $domform <p>          ' '.&mt('Full update (also print list of users not enrolled anymore)').
 <h3>Starting and Ending Dates</h3>          "</p>\n";
 <p>      $Str .= "<h3>".&mt('Student Number')."</h3>\n";
 $date_table      $Str .= "<p>\n".'<input type="checkbox" name="forceid" value="yes">';
 </p>      $Str .= &mt('Disable ID/Student Number Safeguard and Force Change '.
 <h3>Full Update</h3>                  'of Conflicting IDs (only do if you know what you are doing)').
 <input type=checkbox name=fullup value=yes> Full update                   "\n</p><p>\n";
 (also print list of users not enrolled anymore)<p>      $Str .= '<input type="button" onClick="javascript:verify(this.form)" '.
 <h3>ID/Student Number</h3>          'value="Update Courselist" />'."<br />\n";
 <input type=checkbox name=forceid value=yes>       $Str .= &mt('Note: for large courses, this operation may be time '.
 Disable ID/Student Number Safeguard and Force Change of Conflicting IDs                  'consuming');
 (only do if you know what you are doing)<p>      $r->print($Str);
 <input type="button" onClick="javascript:verify(this.form)" value="Update Courselist" /><br />      return;
 Note: for large courses, this operation may be time consuming.  
 ENDPICK  
 }  }
   
 # ======================================================= Menu Phase Two Upload  ###############################################################
   ###############################################################
 sub print_upload_manager_form {  sub print_upload_manager_form {
     my $r=shift;      my $r=shift;
     my $firstLine;      my $firstLine;
     my $datatoken;      my $datatoken;
     if (!$ENV{'form.datatoken'}) {      if (!$ENV{'form.datatoken'}) {
       $datatoken=&Apache::loncommon::upfile_store($r);          $datatoken=&Apache::loncommon::upfile_store($r);
     } else {      } else {
       $datatoken=$ENV{'form.datatoken'};          $datatoken=$ENV{'form.datatoken'};
       &Apache::loncommon::load_tmp_file($r);          &Apache::loncommon::load_tmp_file($r);
     }      }
     my @records=&Apache::loncommon::upfile_record_sep();      my @records=&Apache::loncommon::upfile_record_sep();
     if($ENV{'form.noFirstLine'}){$firstLine=shift(@records);}      if($ENV{'form.noFirstLine'}){
           $firstLine=shift(@records);
       }
     my $total=$#records;      my $total=$#records;
     my $distotal=$total+1;      my $distotal=$total+1;
     my $today=time;      my $today=time;
Line 557  sub print_upload_manager_form { Line 580  sub print_upload_manager_form {
     my $i;      my $i;
     my $keyfields;      my $keyfields;
     if ($total>=0) {      if ($total>=0) {
  my @d=(['username','Username'],          my @field=(['username',&mt('Username')],
                ['names','Last Name, First Names'],                     ['names',&mt('Last Name, First Names')],
        ['fname','First Name'],                     ['fname',&mt('First Name')],
                ['mname','Middle Names/Initials'],                     ['mname',&mt('Middle Names/Initials')],
        ['lname','Last Name'],                     ['lname',&mt('Last Name')],
                ['gen','Generation'],                     ['gen',&mt('Generation')],
        ['id','ID/Student Number'],                     ['id',&mt('ID/Student Number')],
                ['sec','Group/Section'],                     ['sec',&mt('Group/Section')],
        ['ipwd','Initial Password'],                     ['ipwd',&mt('Initial Password')],
                ['email','EMail Address']);                     ['email',&mt('EMail Address')]);
  if ($ENV{'form.upfile_associate'} eq 'reverse') {   if ($ENV{'form.upfile_associate'} eq 'reverse') {
     &Apache::loncommon::csv_print_samples($r,\@records);      &Apache::loncommon::csv_print_samples($r,\@records);
     $i=&Apache::loncommon::csv_print_select_table($r,\@records,\@d);      $i=&Apache::loncommon::csv_print_select_table($r,\@records,
     foreach (@d) { $keyfields.=$_->[0].','; }                                                            \@field);
       foreach (@field) { 
                   $keyfields.=$_->[0].','; 
               }
     chop($keyfields);      chop($keyfields);
  } else {   } else {
     unshift(@d,['none','']);      unshift(@field,['none','']);
     $i=&Apache::loncommon::csv_samples_select_table($r,\@records,\@d);      $i=&Apache::loncommon::csv_samples_select_table($r,\@records,
                                                               \@field);
     my %sone=&Apache::loncommon::record_sep($records[0]);      my %sone=&Apache::loncommon::record_sep($records[0]);
     $keyfields=join(',',sort(keys(%sone)));      $keyfields=join(',',sort(keys(%sone)));
  }   }
Line 582  sub print_upload_manager_form { Line 609  sub print_upload_manager_form {
     &print_upload_manager_footer($r,$i,$keyfields,$defdom,$today,$halfyear);      &print_upload_manager_footer($r,$i,$keyfields,$defdom,$today,$halfyear);
 }  }
   
 # ======================================================= Enroll single student  ###############################################################
   ###############################################################
 sub enroll_single_student {  sub enroll_single_student {
     my $r=shift;      my $r=shift;
     # Remove non alphanumeric values from section      # Remove non alphanumeric values from section
Line 668  sub enroll_single_student { Line 696  sub enroll_single_student {
 }  }
   
 sub setup_date_selectors {  sub setup_date_selectors {
     my ($starttime,$endtime) = @_;      my ($starttime,$endtime,$mode) = @_;
     if (! defined($starttime)) {      if (! defined($starttime)) {
         $starttime = time;          $starttime = time;
         if (exists($ENV{'course.'.$ENV{'request.course.id'}.          unless ($mode eq 'createcourse') {
               if (exists($ENV{'course.'.$ENV{'request.course.id'}.
                             '.default_enrollment_start_date'})) {                              '.default_enrollment_start_date'})) {
             $starttime = $ENV{'course.'.$ENV{'request.course.id'}.                  $starttime = $ENV{'course.'.$ENV{'request.course.id'}.
                                   '.default_enrollment_start_date'};                                    '.default_enrollment_start_date'};
               }
         }          }
     }      }
     if (! defined($endtime)) {      if (! defined($endtime)) {
         $endtime = time+(6*30*24*60*60); # 6 months from now, approx          $endtime = time+(6*30*24*60*60); # 6 months from now, approx
         if (exists($ENV{'course.'.$ENV{'request.course.id'}.          unless ($mode eq 'createcourse') {
               if (exists($ENV{'course.'.$ENV{'request.course.id'}.
                             '.default_enrollment_end_date'})) {                              '.default_enrollment_end_date'})) {
             $endtime = $ENV{'course.'.$ENV{'request.course.id'}.                  $endtime = $ENV{'course.'.$ENV{'request.course.id'}.
                                 '.default_enrollment_end_date'};                                  '.default_enrollment_end_date'};
               }
         }          }
     }      }
     my $startdateform = &Apache::lonhtmlcommon::date_setter('studentform',      my $startdateform = &Apache::lonhtmlcommon::date_setter('studentform',
Line 691  sub setup_date_selectors { Line 723  sub setup_date_selectors {
     my $enddateform = &Apache::lonhtmlcommon::date_setter('studentform',      my $enddateform = &Apache::lonhtmlcommon::date_setter('studentform',
                                                           'enddate',                                                            'enddate',
                                                           $endtime);                                                            $endtime);
       if ($mode eq 'createcourse') {
           $startdateform = &Apache::lonhtmlcommon::date_setter('ccrs',
                                                               'startdate',
                                                               $starttime);
           $enddateform = &Apache::lonhtmlcommon::date_setter('ccrs',
                                                             'enddate',
                                                             $endtime);
       }
     return ($startdateform,$enddateform);      return ($startdateform,$enddateform);
 }  }
   
Line 704  sub get_dates_from_form { Line 744  sub get_dates_from_form {
 }  }
   
 sub date_setting_table {  sub date_setting_table {
     my ($starttime,$endtime) = @_;      my ($starttime,$endtime,$mode) = @_;
     my ($startform,$endform)=&setup_date_selectors($starttime,$endtime);      my ($startform,$endform)=&setup_date_selectors($starttime,$endtime,$mode);
     my $dateDefault = '<nobr>'.      my $dateDefault = '<nobr>'.
         '<input type="checkbox" name="makedatesdefault" />'.          '<input type="checkbox" name="makedatesdefault" />'.
         ' make these dates the default for future enrollment';          ' make these dates the default for future enrollment';
       if ($mode eq 'createcourse') {
           $dateDefault = '&nbsp;';
       }
     my $perpetual = '<nobr><input type="checkbox" name="no_end_date"';      my $perpetual = '<nobr><input type="checkbox" name="no_end_date"';
     if (defined($endtime) && $endtime == 0) {      if (defined($endtime) && $endtime == 0) {
         $perpetual .= ' checked';          $perpetual .= ' checked';

Removed from v.1.89  
changed lines
  Added in v.1.91


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