Diff for /loncom/interface/lonuserutils.pm between versions 1.109.2.6 and 1.109.2.8

version 1.109.2.6, 2010/11/08 21:08:27 version 1.109.2.8, 2010/11/09 14:14:55
Line 330  sub print_upload_manager_header { Line 330  sub print_upload_manager_header {
     my ($sectionjs,$groupslist);      my ($sectionjs,$groupslist);
     if ($context eq 'course') {      if ($context eq 'course') {
         $groupslist = &get_groupslist();          $groupslist = &get_groupslist();
         if ($env{'form.caller'} eq 'requestcrs') {          if ($env{'form.context'} eq 'requestcrs') {
             $sectionjs = <<"ENDJS";              $sectionjs = <<"ENDJS";
   
 function toggleSectionsDefault() {  function toggleSectionsDefault() {
Line 375  ENDJS Line 375  ENDJS
               &hidden_input('fileupload',$env{'form.fileupload'}).                &hidden_input('fileupload',$env{'form.fileupload'}).
               &hidden_input('upfiletype',$env{'form.upfiletype'}).                &hidden_input('upfiletype',$env{'form.upfiletype'}).
               &hidden_input('upfile_associate',$env{'form.upfile_associate'}).                &hidden_input('upfile_associate',$env{'form.upfile_associate'}).
               &hidden_input('caller',$env{'form.caller'}));                &hidden_input('context',$env{'form.context'}));
     $r->print('<br /><label><input type="checkbox" name="noFirstLine"'.$checked.' />'.      $r->print('<br /><label><input type="checkbox" name="noFirstLine"'.$checked.' />'.
               &mt('Ignore First Line').'</label><br />');                &mt('Ignore First Line').'</label><br />');
     $r->print('<br /><input type="button" value="'.&mt('Reverse Association').'" '.      $r->print('<br /><input type="button" value="'.&mt('Reverse Association').'" '.
Line 415  sub javascript_validations { Line 415  sub javascript_validations {
             if ($context eq 'course') {              if ($context eq 'course') {
                 if ($env{'request.course.sec'} eq '') {                  if ($env{'request.course.sec'} eq '') {
                     $setsection_call = 'setSections(document.'.$param{'formname'}.",'$crstype'".');';                      $setsection_call = 'setSections(document.'.$param{'formname'}.",'$crstype'".');';
                     if ($env{'form.caller'} eq 'requestcrs') {                      if ($env{'form.context'} eq 'requestcrs') {
                         $setsections_js =  &newsections_javascript($param{'formname'});                          $setsections_js =  &newsections_javascript($param{'formname'});
                     } else {                      } else {
                         $setsections_js =                          $setsections_js =
Line 550  END Line 550  END
     } else {      } else {
         $section_checks = &section_check_js();          $section_checks = &section_check_js();
   
         unless ($env{'form.caller'} eq 'requestcrs') {          unless ($env{'form.context'} eq 'requestcrs') {
             $optional_checks = (<<END);              $optional_checks = (<<END);
     var message='';      var message='';
     if (foundname==0) {      if (foundname==0) {
Line 566  END Line 566  END
         if (message!='') {          if (message!='') {
             message+='\\n';              message+='\\n';
         }          }
           message+='$alert{'section'}';
     }      }
     if (foundemail==0) {      if (foundemail==0) {
         if (message!='') {          if (message!='') {
Line 598  END Line 599  END
     }      }
 END  END
         }          }
         if ($env{'form.caller'} eq 'requestcrs') {          if ($env{'form.context'} eq 'requestcrs') {
             $optional_checks .= (<<END);              $optional_checks .= (<<END);
     vf.state.value='enrolling';      vf.state.value='enrolling';
     $finish      $finish
Line 668  function verify(vf,sec_caller) { Line 669  function verify(vf,sec_caller) {
     for (i=0;i<=vf.nfields.value;i++) {      for (i=0;i<=vf.nfields.value;i++) {
         tw=eval('vf.f'+i+'.selectedIndex');          tw=eval('vf.f'+i+'.selectedIndex');
         if (tw==1) { founduname=1; }          if (tw==1) { founduname=1; }
         if ((tw>=2) && (tw<=6)) { foundname=1; }          if (tw==2) { foundpwd=1; }
         if (tw==7) { foundid=1; }          if ((tw>=3) && (tw<=7)) { foundname=1; }
         if (tw==8) { foundsec=1; }          if (tw==8) { foundid=1; }
         if (tw==9) { foundpwd=1; }          if (tw==9) { foundsec=1; }
         if (tw==10) { foundemail=1; }          if (tw==10) { foundemail=1; }
         if (tw==11) { foundrole=1; }          if (tw==11) { foundrole=1; }
         if (tw==12) { founddomain=1; }          if (tw==12) { founddomain=1; }
Line 688  function verify(vf,sec_caller) { Line 689  function verify(vf,sec_caller) {
 //  //
 // 0 = none  // 0 = none
 // 1 = username  // 1 = username
 // 2 = names (lastname, firstnames)  // 2 = ipwd  (password)
 // 3 = fname (firstname)  // 3 = names (lastname, firstnames)
 // 4 = mname (middlename)  // 4 = fname (firstname)
 // 5 = lname (lastname)  // 5 = mname (middlename)
 // 6 = gen   (generation)  // 6 = lname (lastname)
 // 7 = id  // 7 = gen   (generation)
 // 8 = section  // 8 = id
 // 9 = ipwd  (password)  // 9 = section
 // 10 = email address  // 10 = email address
 // 11 = role  // 11 = role
 // 12 = domain  // 12 = domain
Line 711  function flip(vf,tf) { Line 712  function flip(vf,tf) {
       }        }
    }     }
    // If we set this to 'lastname, firstnames', clear out all the ones     // If we set this to 'lastname, firstnames', clear out all the ones
    // set to 'fname','mname','lname','gen' (3,4,5,6) currently.     // set to 'fname','mname','lname','gen' (4,5,6,7) currently.
    if (nw==2) {     if (nw==3) {
       for (i=0;i<=vf.nfields.value;i++) {        for (i=0;i<=vf.nfields.value;i++) {
          if ((eval('vf.f'+i+'.selectedIndex')>=3) &&           if ((eval('vf.f'+i+'.selectedIndex')>=4) &&
              (eval('vf.f'+i+'.selectedIndex')<=6)) {               (eval('vf.f'+i+'.selectedIndex')<=7)) {
              eval('vf.f'+i+'.selectedIndex=0;')               eval('vf.f'+i+'.selectedIndex=0;')
          }           }
       }        }
    }     }
    // If we set this to one of 'fname','mname','lname','gen' (3,4,5,6),     // If we set this to one of 'fname','mname','lname','gen' (4,5,6,7),
    // clear out any that are set to 'lastname, firstnames' (2)     // clear out any that are set to 'lastname, firstnames' (3)
    if ((nw>=3) && (nw<=6)) {     if ((nw>=4) && (nw<=7)) {
       for (i=0;i<=vf.nfields.value;i++) {        for (i=0;i<=vf.nfields.value;i++) {
          if (eval('vf.f'+i+'.selectedIndex')==2) {           if (eval('vf.f'+i+'.selectedIndex')==3) {
              eval('vf.f'+i+'.selectedIndex=0;')               eval('vf.f'+i+'.selectedIndex=0;')
          }           }
       }        }
Line 735  function flip(vf,tf) { Line 736  function flip(vf,tf) {
 function clearpwd(vf) {  function clearpwd(vf) {
     var i;      var i;
     for (i=0;i<=vf.nfields.value;i++) {      for (i=0;i<=vf.nfields.value;i++) {
         if (eval('vf.f'+i+'.selectedIndex')==9) {          if (eval('vf.f'+i+'.selectedIndex')==2) {
             eval('vf.f'+i+'.selectedIndex=0;')              eval('vf.f'+i+'.selectedIndex=0;')
         }          }
     }      }
Line 777  function verify(vf,sec_caller) { Line 778  function verify(vf,sec_caller) {
     var foundname=0;      var foundname=0;
     var foundid=0;      var foundid=0;
     var foundsec=0;      var foundsec=0;
       var foundemail=0;
     var foundrole=0;      var foundrole=0;
     var founddomain=0;      var founddomain=0;
     var foundinststatus=0;      var foundinststatus=0;
Line 784  function verify(vf,sec_caller) { Line 786  function verify(vf,sec_caller) {
     for (i=0;i<=vf.nfields.value;i++) {      for (i=0;i<=vf.nfields.value;i++) {
         tw=eval('vf.f'+i+'.selectedIndex');          tw=eval('vf.f'+i+'.selectedIndex');
         if (i==0 && tw!=0) { founduname=1; }          if (i==0 && tw!=0) { founduname=1; }
         if (((i>=1) && (i<=5)) && tw!=0 ) { foundname=1; }          if (i==1 && tw!=0) { foundpwd=1; }
         if (i==6 && tw!=0) { foundid=1; }          if (((i>=2) && (i<=6)) && tw!=0 ) { foundname=1; }
         if (i==7 && tw!=0) { foundsec=1; }          if (i==7 && tw!=0) { foundid=1; }
         if (i==8 && tw!=0) { foundpwd=1; }          if (i==8 && tw!=0) { foundsec=1; }
         if (i==9 && tw!=0) { foundrole=1; }          if (i==9 && tw!=0) { foundemail=1; }
         if (i==10 && tw!=0) { founddomain=1; }          if (i==10 && tw!=0) { foundrole=1; }
         if (i==13 && tw!=0) { foundinstatus=1; }          if (i==11 && tw!=0) { founddomain=1; }
           if (i==12 && tw!=0) { foundinstatus=1; }
     }      }
     verify_message(vf,founduname,foundpwd,foundname,foundid,foundsec,foundrole,founddomain,foundinststatus);      verify_message(vf,founduname,foundpwd,foundname,foundid,foundsec,foundemail,foundrole,founddomain,foundinststatus);
 }  }
   
 function flip(vf,tf) {  function flip(vf,tf) {
    var nw=eval('vf.f'+tf+'.selectedIndex');     var nw=eval('vf.f'+tf+'.selectedIndex');
    var i;     var i;
    // picked the all one name field, reset the other name ones to blank     // picked the all one name field, reset the other name ones to blank
    if (tf==1 && nw!=0) {     if (tf==2 && nw!=0) {
       for (i=2;i<=5;i++) {        for (i=3;i<=6;i++) {
          eval('vf.f'+i+'.selectedIndex=0;')           eval('vf.f'+i+'.selectedIndex=0;')
       }        }
    }     }
    //picked one of the piecewise name fields, reset the all in     //picked one of the piecewise name fields, reset the all in
    //one field to blank     //one field to blank
    if ((tf>=2) && (tf<=5) && (nw!=0)) {     if ((tf>=3) && (tf<=6) && (nw!=0)) {
       eval('vf.f1.selectedIndex=0;')        eval('vf.f2.selectedIndex=0;')
    }     }
    $auth_update     $auth_update
 }  }
   
 function clearpwd(vf) {  function clearpwd(vf) {
     var i;      var i;
     if (eval('vf.f8.selectedIndex')!=0) {      if (eval('vf.f1.selectedIndex')!=0) {
         eval('vf.f8.selectedIndex=0;')          eval('vf.f1.selectedIndex=0;')
     }      }
 }  }
 ENDPICK  ENDPICK
Line 838  sub print_upload_manager_footer { Line 841  sub print_upload_manager_footer {
         $env{'form.ipwd_choice'} ne '') {          $env{'form.ipwd_choice'} ne '') {
         $param{'curr_authtype'} = 'int';          $param{'curr_authtype'} = 'int';
     }      }
     if ($env{'form.caller'} eq 'requestcrs') {      if ($env{'form.context'} eq 'requestcrs') {
         $param{'caller'} = $env{'form.caller'};          $param{'context'} = $env{'form.context'};
     }      }
     my $krbform = &Apache::loncommon::authform_kerberos(%param);      my $krbform = &Apache::loncommon::authform_kerberos(%param);
     my $intform = &Apache::loncommon::authform_internal(%param);      my $intform = &Apache::loncommon::authform_internal(%param);
Line 853  sub print_upload_manager_footer { Line 856  sub print_upload_manager_footer {
   
     $Str .= '<h3>'.&mt('Options').'</h3>'      $Str .= '<h3>'.&mt('Options').'</h3>'
            .&Apache::lonhtmlcommon::start_pick_box();             .&Apache::lonhtmlcommon::start_pick_box();
     if ($env{'form.caller'} eq 'requestcrs') {      if ($env{'form.context'} eq 'requestcrs') {
         $Str .= &Apache::lonhtmlcommon::row_title(&mt('Default password'));          $Str .= &Apache::lonhtmlcommon::row_title(&mt('Default password'));
     } else {      } else {
         $Str .= &Apache::lonhtmlcommon::row_title(&mt('Login Type'));          $Str .= &Apache::lonhtmlcommon::row_title(&mt('Login Type'));
Line 879  sub print_upload_manager_footer { Line 882  sub print_upload_manager_footer {
             $Str .= "</p>\n";              $Str .= "</p>\n";
     }      }
     $Str .= &set_login($defdom,$krbform,$intform,$locform);      $Str .= &set_login($defdom,$krbform,$intform,$locform);
     if ($env{'form.caller'} eq 'requestcrs') {      if ($env{'form.context'} eq 'requestcrs') {
         $Str .= '<input type="hidden" name="defaultdomain" value="gcitest" />';          $Str .= '<input type="hidden" name="defaultdomain" value="gcitest" />';
     }      }
     my ($home_server_pick,$numlib) =      my ($home_server_pick,$numlib) =
Line 897  sub print_upload_manager_footer { Line 900  sub print_upload_manager_footer {
                 &Apache::lonhtmlcommon::row_closure();                  &Apache::lonhtmlcommon::row_closure();
     }      }
   
     unless ($env{'form.caller'} eq 'requestcrs') {      unless ($env{'form.context'} eq 'requestcrs') {
         $Str .= &Apache::lonhtmlcommon::row_title(&mt('Default domain'))          $Str .= &Apache::lonhtmlcommon::row_title(&mt('Default domain'))
                .&Apache::loncommon::select_dom_form($defdom,'defaultdomain',undef,1)                 .&Apache::loncommon::select_dom_form($defdom,'defaultdomain',undef,1)
                .&Apache::lonhtmlcommon::row_closure()                 .&Apache::lonhtmlcommon::row_closure()
Line 924  sub print_upload_manager_footer { Line 927  sub print_upload_manager_footer {
                     &mt('Default role'))                      &mt('Default role'))
                .&mt('Choose the role to assign to users without a value specified in the uploaded file.')                 .&mt('Choose the role to assign to users without a value specified in the uploaded file.')
     } elsif ($context eq 'course') {      } elsif ($context eq 'course') {
         if ($env{'form.caller'} eq 'requestcrs') {          if ($env{'form.context'} eq 'requestcrs') {
             $Str .= &Apache::lonhtmlcommon::row_title(&mt('Default section')).              $Str .= &Apache::lonhtmlcommon::row_title(&mt('Default section')).
                     &mt('Students can be assigned to different sections.').'<br />'.                      &mt('Students can be assigned to different sections.').'<br />'.
                     &mt('Will you be using sections?').'&nbsp;'.                      &mt('Will you be using sections?').'&nbsp;'.
Line 964  sub print_upload_manager_footer { Line 967  sub print_upload_manager_footer {
     } else {      } else {
         my ($cnum,$cdom) = &get_course_identity();          my ($cnum,$cdom) = &get_course_identity();
         my ($rowtitle,$closure);          my ($rowtitle,$closure);
         if ($env{'form.caller'} eq 'requestcrs') {          if ($env{'form.context'} eq 'requestcrs') {
             $closure = 1;              $closure = 1;
             $rowtitle = &mt('default section name (letters/numbers only)');              $rowtitle = &mt('default section name (letters/numbers only)');
         } else {          } else {
Line 972  sub print_upload_manager_footer { Line 975  sub print_upload_manager_footer {
         }          }
         my $secbox = &section_picker($cdom,$cnum,'Any',$rowtitle,          my $secbox = &section_picker($cdom,$cnum,'Any',$rowtitle,
                                     $permission,$context,'upload',$crstype,                                      $permission,$context,'upload',$crstype,
                                     $env{'form.caller'}).                                      $env{'form.context'}).
                      &Apache::lonhtmlcommon::row_closure($closure);                       &Apache::lonhtmlcommon::row_closure($closure);
         if ($env{'form.caller'} eq 'requestcrs') {          if ($env{'form.context'} eq 'requestcrs') {
             $Str .= '<div id ="defaultsec" style="display: none" />'.$secbox.'</div>';              $Str .= '<div id ="defaultsec" style="display: none" />'.$secbox.'</div>';
         } else {          } else {
             $Str .= $secbox;               $Str .= $secbox; 
Line 991  sub print_upload_manager_footer { Line 994  sub print_upload_manager_footer {
                     stus => 'Students selected from this list can be dropped.'                      stus => 'Students selected from this list can be dropped.'
             );              );
         }          }
         unless ($env{'form.caller'} eq 'requestcrs') {          unless ($env{'form.context'} eq 'requestcrs') {
             $Str .= &Apache::lonhtmlcommon::row_title(&mt('Full Update'))              $Str .= &Apache::lonhtmlcommon::row_title(&mt('Full Update'))
                    .'<label><input type="checkbox" name="fullup" value="yes" />'                     .'<label><input type="checkbox" name="fullup" value="yes" />'
                    .' '.$lt{'disp'}                     .' '.$lt{'disp'}
Line 1001  sub print_upload_manager_footer { Line 1004  sub print_upload_manager_footer {
         }          }
     }      }
     if ($context eq 'course' || $context eq 'domain') {      if ($context eq 'course' || $context eq 'domain') {
         unless ($env{'form.caller'} eq 'requestcrs') {          unless ($env{'form.context'} eq 'requestcrs') {
             $Str .= &forceid_change($context);              $Str .= &forceid_change($context);
         }          }
     }      }
Line 3910  sub print_first_users_upload_form { Line 3913  sub print_first_users_upload_form {
            .&Apache::lonhtmlcommon::end_pick_box();             .&Apache::lonhtmlcommon::end_pick_box();
   
     $str .= '<p>'      $str .= '<p>'
            .'<input type="hidden" name=caller" value="'.$caller.'" />'              .'<input type="hidden" name="context" value="'.$caller.'" />' 
            .'<input type="submit" name="fileupload" value="'.&mt('Next').'" />'             .'<input type="submit" name="fileupload" value="'.&mt('Next').'" />'
            .'</p>';             .'</p>';
   
Line 3935  sub upfile_drop_add { Line 3938  sub upfile_drop_add {
             $fields{$env{'form.f'.$i}}=$keyfields[$i];              $fields{$env{'form.f'.$i}}=$keyfields[$i];
         }          }
     }      }
     if ($env{'form.fullup'} ne 'yes') {      if (($env{'form.fullup'} ne 'yes') && ($env{'form.context'} ne 'requestcrs')) {
         $r->print('<form name="studentform" method="post" action="/adm/createuser">'."\n".          $r->print('<form name="studentform" method="post" action="/adm/createuser">'."\n".
                   '<input type="hidden" name="action" value="'.$env{'form.action'}.'" />');                    '<input type="hidden" name="action" value="'.$env{'form.action'}.'" />');
     }      }
Line 3974  sub upfile_drop_add { Line 3977  sub upfile_drop_add {
         }          }
     }      }
     my ($startdate,$enddate);      my ($startdate,$enddate);
     if ($env{'form.caller'} eq 'requestcrs') {      if ($env{'form.context'} eq 'requestcrs') {
         $startdate = $env{'course.'.$env{'request.course.id'}.'.default_enrollment_start_date'};          $startdate = $env{'course.'.$env{'request.course.id'}.'.default_enrollment_start_date'};
         $enddate = $env{'course.'.$env{'request.course.id'}.'.default_enrollment_end_date'};          $enddate = $env{'course.'.$env{'request.course.id'}.'.default_enrollment_end_date'};
     } else {      } else {
Line 4310  sub upfile_drop_add { Line 4313  sub upfile_drop_add {
                         }                          }
                         $checkid = 1;                          $checkid = 1;
                         $newuser = 1;                          $newuser = 1;
                         my $user = $username.':'.$domain;  
                         if ($username =~/^[^\@]+\@[^\@]+$/) {                          if ($username =~/^[^\@]+\@[^\@]+$/) {
                             if ($email eq '') {                              if ($email eq '') {
                                 $email = $username;                                  $email = $username;
Line 4334  sub upfile_drop_add { Line 4336  sub upfile_drop_add {
                             }                              }
                         }                          }
                     }                      }
                       my $user = $username.':'.$userdomain;
                     if ($newuser) {                      if ($newuser) {
                         my $checkhash;                          my $checkhash;
                         my $checks = { 'username' => 1 };                          my $checks = { 'username' => 1 };

Removed from v.1.109.2.6  
changed lines
  Added in v.1.109.2.8


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