Diff for /loncom/interface/Attic/londropadd.pm between versions 1.73 and 1.74

version 1.73, 2003/07/05 10:07:11 version 1.74, 2003/07/14 15:25:59
Line 275  ENDPICK Line 275  ENDPICK
   
 }  }
   
   sub javascript_validations_without_auth {
       my $pjump_def = &Apache::lonhtmlcommon::pjump_javascript_definition();
       return (<<ENDPICK);
   function verify_message (vf,founduname,foundpwd,foundname,foundid,foundsec,foundemail) {
       var foundatype=0;
       var message='';
       if (founduname==0) {
    alert('You need to specify the username field');
           return;
       }
       if (foundname==0) { message='name fields'; }
       if (foundid==0) { if (message!='') { message+=', '; } message+='student number field'; }
       if (foundsec==0) {  if (message!='') { message+=', '; } message+='section or group field'; }
       if (foundemail==0) {  if (message!='') { message+=', '; } message+='email address field'; }
       if (message!='') {
          message='Not specified (optional): '+message+'.  Continue enrollment?';
          if (confirm(message)) {
             vf.state.value='enrolling';
     vf.submit();
          }
       } else {
         vf.state.value='enrolling';
         vf.submit();
       }
   }
   
   ENDPICK
   
   }
   
 ###############################################################  ###############################################################
 ###############################################################  ###############################################################
 sub upload_manager_javascript_forward_associate {  sub upload_manager_javascript_forward_associate {
Line 678  sub make_dates_default { Line 708  sub make_dates_default {
     return $result;      return $result;
 }  }
   
 # ======================================================= Menu Phase Two Enroll  ##
   ## Single student enrollment routines (some of them)
   ##
   sub get_student_username_domain_form {
       my $r = shift;
       my $domform = &Apache::loncommon::select_dom_form
           ($r->dir_config('lonDefDomain'),'cudomain',0);
       $r->print(<<END);
   <input type="hidden" name="action" value="enrollstudent" />
   <input type="hidden" name="state"  value="gotusername" />
   <h3>Enroll One Student</h3>
   <table>
   <tr><th>Username:</th>
       <td><input type="text" name="cuname"  size="15" /></td></tr>
   <tr><th>Domain:</th>
       <td>$domform</td></tr>
   <tr><th>&nbsp;</th>
       <td>
       <input type="submit" name="Begin Enrollment" value="Begin Enrollment" />
       </td></tr>
   </table>
   END
       return;
   }
   
 sub print_enroll_single_student_form {  sub print_enroll_single_student_form {
     my $r=shift;      my $r=shift;
     $r->print("<h3>Enroll One Student</h3>");      $r->print("<h3>Enroll One Student</h3>");
     my $today    = time;      #
     my $halfyear = $today+15552000;      my $username = $ENV{'form.cuname'};
     my $defdom=$r->dir_config('lonDefDomain');      my $domain   = $ENV{'form.cudomain'};
     # Set up authentication forms      my $home = &Apache::lonnet::homeserver($username,$domain);
     my ($krbdef,$krbdefdom) =      # $new_user flags whether we are creating a new user or using an old one
         &Apache::loncommon::get_kerberos_defaults($defdom);      my $new_user = 1;
     my $javascript_validations=&javascript_validations($krbdefdom);      if ($home ne 'no_host') {
     my %param = ( formname => 'document.studentform',          $new_user = 0;
                   kerb_def_dom => $krbdefdom,      }
                   kerb_def_auth => $krbdef      &Apache::lonnet::logthis('home = '.$home);
                   );      #
     my $krbform = &Apache::loncommon::authform_kerberos(%param);      my $user_data_html = '';
     my $intform = &Apache::loncommon::authform_internal(%param);      my $javascript_validations = '';
     my $locform = &Apache::loncommon::authform_local(%param);      if ($new_user) {
     # Set up domain selection form          my $defdom=$r->dir_config('lonDefDomain');
     my $domform = &domain_form($defdom);          # Set up authentication forms
           my ($krbdef,$krbdefdom) =
               &Apache::loncommon::get_kerberos_defaults($defdom);
           $javascript_validations=&javascript_validations($krbdefdom);
           my %param = ( formname => 'document.studentform',
                         kerb_def_dom => $krbdefdom,
                         kerb_def_auth => $krbdef
                         );
           my $krbform = &Apache::loncommon::authform_kerberos(%param);
           my $intform = &Apache::loncommon::authform_internal(%param);
           my $locform = &Apache::loncommon::authform_local(%param);
           #
           # Set up domain selection form
           my $homeserver_form = '';
           my %servers = &Apache::loncommon::get_library_servers($domain);
           $homeserver_form = '<select name="lcserver" size="1">'."\n".
               '<option value="default" selected>default</option>'."\n";
           while (my ($servername,$serverdescription) = each (%servers)) {
               $homeserver_form .= '<option value="'.$servername.'">'.
                   $serverdescription."</option>\n";
           }
           $homeserver_form .= "</select>\n";
           #
           #
           $user_data_html = <<END;
   <h3>User Data for $username\@$domain</h3>
   <table>
   <tr><th>First Name:</th>
       <td><input type="text" name="cfirst"  size="15"></td></tr>
   <tr><th>Middle Name:</th>
       <td><input type="text" name="cmiddle" size="15"></td></tr>
   <tr><th>Last Name:</th>
       <td><input type="text" name="clast"   size="15"></td></tr>
   <tr><th>Generation:</th>
       <td><input type="text" name="cgen"    size="5"> </td></tr>
   <tr><th>Home Server:</th>
       <td>$homeserver_form</td></tr>
   </table>
   <h3>Password</h3>
   Please select an authentication mechanism
   <table>
   <p>
   $krbform
   </p><p>
   $intform
   </p><p>
   $locform
   </p>
   END
       } else {
           # User already exists.  Do not worry about authentication
           my %uenv = &Apache::lonnet::dump('environment',$domain,$username);
           $javascript_validations = &javascript_validations_without_auth();
           $user_data_html = <<END;
   <h3>User Data for $username\@$domain</h3>
   <input type="hidden" name="lcserver" value="default" />
   <table>
   <tr><th>First Name:</th>
       <td>
       <input type="text" name="cfirst" value="$uenv{'firstname'}" size="15" />
       </td></tr>
   <tr><th>Middle Name:</th>
       <td>
       <input type="text" name="cmiddle" value="$uenv{'middlename'}" size="15" />
       </td></tr>
   <tr><th>Last Name:</th>
       <td>
       <input type="text" name="clast"value="$uenv{'lastname'}" size="15" />
       </td></tr>
   <tr><th>Generation:</th>
       <td>
       <input type="text" name="cgen" value="$uenv{'generation'}" size="5" />
       </td></tr>
   </table>
   END
       }
     my $date_table = &date_setting_table();      my $date_table = &date_setting_table();
     # Print it all out          # Print it all out
     $r->print(<<END);      $r->print(<<END);
 <input type="hidden" name="action" value="enrollstudent">  <input type="hidden" name="action" value="enrollstudent" />
 <input type="hidden" name="state"  value="done">  <input type="hidden" name="state"  value="done" />
   <input type="hidden" name="cuname" value="$username" />
   <input type="hidden" name="lcdomain" value="$domain" />
 <script type="text/javascript" language="Javascript">  <script type="text/javascript" language="Javascript">
 function verify(vf) {  function verify(vf) {
     var founduname=0;      var founduname=0;
Line 740  function clearpwd(vf) { Line 870  function clearpwd(vf) {
 }  }
   
 </script>  </script>
 <h3>Personal Data</h3>  
 <table>  
 <tr><td>First Name:</td><td> <input type="text" name="cfirst"  size="15"></td></tr>  
 <tr><td>Middle Name:</td><td> <input type="text" name="cmiddle" size="15"></td></tr>  
 <tr><td>Last Name: </td><td><input type="text" name="clast"   size="15"></td></tr>  
 <tr><td>Generation: </td><td><input type="text" name="cgen"    size="5"> </td></tr>  
 </table>  
   
 <h3>Login Data</h3>  $user_data_html
 <p>Username: <input type="text" name="cuname"  size="15"></p>  
 <p>Domain:   $domform</p>  
 <p>Note: login settings below  will not take effect if the user already exists  
 </p><p>  
 $krbform  
 </p><p>  
 $intform  
 </p><p>  
 $locform  
 </p><p>  
   
 <h3>Course Data</h3>  <h3>Course Data</h3>
   
Line 1648  The response to the request is governed Line 1761  The response to the request is governed
  upload           enrolling      enroll students based on upload   upload           enrolling      enroll students based on upload
  drop             undefined      print the classlist ready to drop   drop             undefined      print the classlist ready to drop
  drop             done           drop the selected students   drop             done           drop the selected students
  enrollstudent    undefined      print single student enroll menu   enrollstudent    undefined      print student username domain form
    enrollstudent    gotusername    print single student enroll menu
  enrollstudent    enrolling      enroll student   enrollstudent    enrolling      enroll student
  classlist        undefined      print html classlist   classlist        undefined      print html classlist
  classlist        csv            print csv classlist   classlist        csv            print csv classlist
Line 1716  sub handler { Line 1830  sub handler {
         }          }
     } elsif ($ENV{'form.action'} eq 'enrollstudent') {      } elsif ($ENV{'form.action'} eq 'enrollstudent') {
         if (! exists($ENV{'form.state'})) {          if (! exists($ENV{'form.state'})) {
               &get_student_username_domain_form($r);
           } elsif ($ENV{'form.state'} eq 'gotusername') {
             &print_enroll_single_student_form($r);              &print_enroll_single_student_form($r);
         } elsif ($ENV{'form.state'} eq 'enrolling') {          } elsif ($ENV{'form.state'} eq 'enrolling') {
             &enroll_single_student($r);              &enroll_single_student($r);
         } else {          } else {
             &print_enroll_single_student_form($r);              &get_student_username_domain_form($r);
         }          }
     } elsif ($ENV{'form.action'} eq 'classlist') {      } elsif ($ENV{'form.action'} eq 'classlist') {
         if (! exists($ENV{'form.state'})) {          if (! exists($ENV{'form.state'})) {

Removed from v.1.73  
changed lines
  Added in v.1.74


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