Diff for /loncom/interface/Attic/londropadd.pm between versions 1.13 and 1.18

version 1.13, 2001/02/22 16:47:54 version 1.18, 2002/01/04 15:56:07
Line 1 Line 1
 # The LearningOnline Network with CAPA  # The LearningOnline Network with CAPA
 # Handler to drop and add students in courses   # Handler to drop and add students in courses 
 #  #
   # $Id$
   #
   # Copyright Michigan State University Board of Trustees
   #
   # This file is part of the LearningOnline Network with CAPA (LON-CAPA).
   #
   # LON-CAPA is free software; you can redistribute it and/or modify
   # it under the terms of the GNU General Public License as published by
   # the Free Software Foundation; either version 2 of the License, or
   # (at your option) any later version.
   #
   # LON-CAPA is distributed in the hope that it will be useful,
   # but WITHOUT ANY WARRANTY; without even the implied warranty of
   # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   # GNU General Public License for more details.
   #
   # You should have received a copy of the GNU General Public License
   # along with LON-CAPA; if not, write to the Free Software
   # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
   #
   # /home/httpd/html/adm/gpl.txt
   #
   # http://www.lon-capa.org/
   #
 # (Handler to set parameters for assessments  # (Handler to set parameters for assessments
 #  #
 # (Handler to resolve ambiguous file locations  # (Handler to resolve ambiguous file locations
 #  #
 # (TeX Content Handler  # (TeX Content Handler
 #  #
   # YEAR=2000
 # 05/29/00,05/30,10/11 Gerd Kortemeyer)  # 05/29/00,05/30,10/11 Gerd Kortemeyer)
 #  #
 # 10/11,10/12,10/16 Gerd Kortemeyer)  # 10/11,10/12,10/16 Gerd Kortemeyer)
Line 15 Line 40
 # 12/08,12/12 Gerd Kortemeyer)  # 12/08,12/12 Gerd Kortemeyer)
 #  #
 # 12/26,12/27,12/28,  # 12/26,12/27,12/28,
   # YEAR=2001
 # 01/01/01,01/15,02/10,02/13,02/14,02/22 Gerd Kortemeyer  # 01/01/01,01/15,02/10,02/13,02/14,02/22 Gerd Kortemeyer
   # 8/6 Scott Harrison
   # Guy Albertelli
   # 9/25 Gerd Kortemeyer
   # 12/19 Guy Albertelli
   # YEAR=2002
   # 1/4 Gerd Kortemeyer
   
 package Apache::londropadd;  package Apache::londropadd;
   
Line 147  sub dropstudent { Line 179  sub dropstudent {
         if ($key=~/^$courseid(?:\/)*(\w+)*\_st$/) {          if ($key=~/^$courseid(?:\/)*(\w+)*\_st$/) {
           my $section=$1;            my $section=$1;
           if ($key eq $courseid.'_st') { $section=''; }            if ($key eq $courseid.'_st') { $section=''; }
           if ($section ne $csec) {            if (((!$section) && (!$csec)) || ($section ne $csec)) {
     my ($dummy,$end,$start)=split(/\_/,      my ($dummy,$end,$start)=split(/\_/,
                                     &Apache::lonnet::unescape($value));                                      &Apache::lonnet::unescape($value));
             my $now=time;              my $now=time;
Line 257  function verify(vf) { Line 289  function verify(vf) {
             return;              return;
         }          }
     }      }
       if (vf.login[2].checked) {
    foundatype=1;
    //An argument is not required
       }
     if (foundatype==0) {      if (foundatype==0) {
  alert('You need to set the login type');   alert('You need to set the login type');
         return;          return;
Line 315  function flip(vf,tf) { Line 351  function flip(vf,tf) {
        vf.login[1].checked=true;         vf.login[1].checked=true;
        vf.intpwd.value='';         vf.intpwd.value='';
        vf.krbdom.value='';         vf.krbdom.value='';
          vf.locarg.value='';
    }     }
   
 }  }
Line 431  ENDPICK Line 468  ENDPICK
 <input type=hidden name=nfields value=$i>  <input type=hidden name=nfields value=$i>
 <input type=hidden name=keyfields value="$keyfields">  <input type=hidden name=keyfields value="$keyfields">
 <h3>Login Type</h3>  <h3>Login Type</h3>
 Note: this will not take effect if the user already exists<p>  <p>Note: this will not take effect if the user already exists</p>
 <input type=radio name=login value=krb onClick="clickkrb(this.form);">  <p>
   <input type=radio name=login value=krb onClick="clickkrb(this.form);" />
 Kerberos authenticated with domain  Kerberos authenticated with domain
 <input type=text size=10 name=krbdom onChange="setkrb(this.form);"><p>  <input type=text size=10 name=krbdom onChange="setkrb(this.form);" />
 <input type=radio name=login value=int onClick="clickint(this.form);">   </p>
   <p>
   <input type=radio name=login value=int onClick="clickint(this.form);" />
 Internally authenticated (with initial password   Internally authenticated (with initial password 
 <input type=text size=10 name=intpwd onChange="setint(this.form);">)  <input type=text size=10 name=intpwd onChange="setint(this.form);" />)
   </p>
   <p>
   <input type=radio name=login value=loc onClick="clickloc(this.form);" />
   Local Authentication with argument
   <input type=text size=10 name=locarg onChange="setloc(this.form);" />
   </p>
 <h3>LON-CAPA Domain for Students</h3>  <h3>LON-CAPA Domain for Students</h3>
 LON-CAPA domain: <input type=text size=10 value=$defdom name=lcdomain><p>  LON-CAPA domain: <input type=text size=10 value=$defdom name=lcdomain><p>
 <h3>Starting and Ending Dates</h3>  <h3>Starting and Ending Dates</h3>
Line 456  LON-CAPA domain: <input type=text size=1 Line 502  LON-CAPA domain: <input type=text size=1
 <h3>Full Update</h3>  <h3>Full Update</h3>
 <input type=checkbox name=fullup value=yes> Full update   <input type=checkbox name=fullup value=yes> Full update 
 (also print list of users not enrolled anymore)<p>  (also print list of users not enrolled anymore)<p>
   <h3>ID/Student Number</h3>
   <input type=checkbox name=forceid value=yes> 
   Disable ID/Student Number Safeguard and Force Change of Conflicting IDs
   (only do if you know what you are doing)  
 <input type=button onClick="verify(this.form)" value="Update Courselist"><br>  <input type=button onClick="verify(this.form)" value="Update Courselist"><br>
 Note: for large courses, this operation might be time consuming.  Note: for large courses, this operation might be time consuming.
 ENDPICK  ENDPICK
Line 476  sub enroll_single_student { Line 526  sub enroll_single_student {
         } elsif ($ENV{'form.login'} eq 'int') {          } elsif ($ENV{'form.login'} eq 'int') {
            $amode='internal';             $amode='internal';
            $genpwd=$ENV{'form.intpwd'};             $genpwd=$ENV{'form.intpwd'};
         }          }  elsif ($ENV{'form.login'} eq 'loc') {
       $amode='localauth';
       $genpwd=$ENV{'form.locarg'};
       if (!$genpwd) { $genpwd=" "; }
    }
         if (($amode) && ($genpwd)) {          if (($amode) && ($genpwd)) {
    &dropstudent($ENV{'form.cdomain'},$ENV{'form.cuname'},     &dropstudent($ENV{'form.cdomain'},$ENV{'form.cuname'},
        $ENV{'request.course.id'},$ENV{'form.csec'});         $ENV{'request.course.id'},$ENV{'form.csec'});
Line 520  function verify(vf) { Line 574  function verify(vf) {
     var foundatype=0;      var foundatype=0;
     var tw;      var tw;
     var message='';      var message='';
     if ((vf.cuname.value!=undefined) && (vf.cuname.value!='') &&       if ((typeof(vf.cuname.value)!="undefined") && (vf.cuname.value!='') && 
  (vf.cdomain.value!=undefined) && (vf.cdomain.value!='')) {   (typeof(vf.cdomain.value)!="undefined") && (vf.cdomain.value!='')) {
         founduname=1;          founduname=1;
     }      }
     if ((vf.cfirst.value!=undefined) && (vf.cfirst.value!='') &&      if ((typeof(vf.cfirst.value)!="undefined") && (vf.cfirst.value!='') &&
  (vf.clast.value!=undefined) && (vf.clast.value!='')) {   (typeof(vf.clast.value)!="undefined") && (vf.clast.value!='')) {
         foundname=1;          foundname=1;
     }      }
     if ((vf.csec.value!=undefined) && (vf.csec.value!='')) {      if ((typeof(vf.csec.value)!="undefined") && (vf.csec.value!='')) {
         foundsec=1;          foundsec=1;
     }      }
     if ((vf.cstid.value!=undefined) && (vf.cstid.value!='')) {      if ((typeof(vf.cstid.value)!="undefined") && (vf.cstid.value!='')) {
  foundid=1;   foundid=1;
     }      }
     if (founduname==0) {      if (founduname==0) {
Line 552  function verify(vf) { Line 606  function verify(vf) {
             return;              return;
         }          }
     }      }
       if (vf.login[2].checked) {
    foundatype=1;
    //An argument is not required
       }
     if (foundatype==0) {      if (foundatype==0) {
  alert('You need to set the login type');   alert('You need to set the login type');
         return;          return;
Line 588  function setkrb(vf) { Line 646  function setkrb(vf) {
        vf.login[0].checked=true;         vf.login[0].checked=true;
        vf.krbdom.value=vf.krbdom.value.toUpperCase();         vf.krbdom.value=vf.krbdom.value.toUpperCase();
        vf.intpwd.value='';         vf.intpwd.value='';
          vf.locarg.value='';
    }     }
 }  }
   
Line 595  function setint(vf) { Line 654  function setint(vf) {
     if (vf.intpwd.value!='') {      if (vf.intpwd.value!='') {
        vf.login[1].checked=true;         vf.login[1].checked=true;
        vf.krbdom.value='';         vf.krbdom.value='';
          vf.locarg.value='';
      }
   }
   
   function setloc(vf) {
       if (vf.locarg.value!='') {
          vf.login[2].checked=true;
          vf.krbdom.value='';
          vf.intpwd.value='';
    }     }
 }  }
   
 function clickkrb(vf) {  function clickkrb(vf) {
     vf.krbdom.value='$krbdefdom';      vf.krbdom.value='$krbdefdom';
     vf.intpwd.value='';      vf.intpwd.value='';
       vf.locarg.value='';
 }  }
   
 function clickint(vf) {  function clickint(vf) {
     vf.krbdom.value='';      vf.krbdom.value='';
       vf.locarg.value='';
   }
   
   function clickloc(vf) {
       vf.krbdom.value='';
       vf.intpwd.value='';
 }  }
   
     function pclose() {      function pclose() {
Line 656  Kerberos authenticated with domain Line 731  Kerberos authenticated with domain
 <input type=radio name=login value=int onClick="clickint(this.form);">   <input type=radio name=login value=int onClick="clickint(this.form);"> 
 Internally authenticated (with initial password   Internally authenticated (with initial password 
 <input type=text size=10 name=intpwd onChange="setint(this.form);">)  <input type=text size=10 name=intpwd onChange="setint(this.form);">)
   <p>
   <input type=radio name=login value=loc onClick="clickloc(this.form);" />
   Local Authentication with argument
   <input type=text size=10 name=locarg onChange="setloc(this.form);" />
   </p>
 <h3>Starting and Ending Dates</h3>  <h3>Starting and Ending Dates</h3>
 <input type="hidden" value='' name="pres_value">  <input type="hidden" value='' name="pres_value">
 <input type="hidden" value='' name="pres_type">  <input type="hidden" value='' name="pres_type">
Line 670  Internally authenticated (with initial p Line 749  Internally authenticated (with initial p
 <a   <a 
  href="javascript:pjump('date_end','Enrollment Ending Date',document.studentform.enddate.value,'end','studentform.pres','dateset');"   href="javascript:pjump('date_end','Enrollment Ending Date',document.studentform.enddate.value,'end','studentform.pres','dateset');"
 >Set Ending Date</a><p>  >Set Ending Date</a><p>
   <h3>ID/Student Number</h3>
   <input type=checkbox name=forceid value=yes> 
   Disable ID/Student Number Safeguard and Force Change of Conflicting IDs
   (only do if you know what you are doing)  
 <input type=button onClick="verify(this.form)" value="Enroll as student"><br>  <input type=button onClick="verify(this.form)" value="Enroll as student"><br>
 <input type=hidden name=phase value=five>  <input type=hidden name=phase value=five>
 ENDSENROLL  ENDSENROLL
Line 767  sub upfile_drop_add { Line 850  sub upfile_drop_add {
                  if ((defined($ENV{'form.intpwd'})) && ($ENV{'form.intpwd'})) {                   if ((defined($ENV{'form.intpwd'})) && ($ENV{'form.intpwd'})) {
      $genpwd=$ENV{'form.intpwd'};       $genpwd=$ENV{'form.intpwd'};
                  }                   }
              }               } elsif ($ENV{'form.login'} eq 'loc') {
    $amode='localauth';
    if ((defined($ENV{'form.locarg'})) && ($ENV{'form.locarg'})) {
        $genpwd=$ENV{'form.locarg'};
                    }
        }
              unless (($domain=~/\W/) || ($amode eq '')) {               unless (($domain=~/\W/) || ($amode eq '')) {
               $r->print('<h3>Enrolling Students</h3>');                $r->print('<h3>Enrolling Students</h3>');
               my $count=0;                my $count=0;

Removed from v.1.13  
changed lines
  Added in v.1.18


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