Diff for /loncom/interface/loncreateuser.pm between versions 1.57 and 1.59

version 1.57, 2003/07/17 18:10:53 version 1.59, 2003/07/17 19:40:39
Line 83  BEGIN { Line 83  BEGIN {
 }  }
   
   
   # ======================================================= Existing Custom Roles
   
   sub my_custom_roles {
       my %returnhash=();
       my %rolehash=&Apache::lonnet::dump('roles');
       foreach (keys %rolehash) {
    if ($_=~/^rolesdef\_(\w+)$/) {
       $returnhash{$_}=$_;
    }
       }
       return %returnhash;
   }
   
 # ==================================================== Figure out author access  # ==================================================== Figure out author access
   
Line 107  sub print_username_entry_form { Line 119  sub print_username_entry_form {
     my $selscript=&Apache::loncommon::studentbrowser_javascript();      my $selscript=&Apache::loncommon::studentbrowser_javascript();
     my $sellink=&Apache::loncommon::selectstudent_link      my $sellink=&Apache::loncommon::selectstudent_link
                                         ('crtuser','ccuname','ccdomain');                                          ('crtuser','ccuname','ccdomain');
       my %existingroles=&my_custom_roles();
       my $choice=&Apache::loncommon::select_form('make new role','rolename',
    ('make new role' => 'Generate new role ...',%existingroles));
     $r->print(<<"ENDDOCUMENT");      $r->print(<<"ENDDOCUMENT");
 <html>  <html>
 <head>  <head>
Line 116  $selscript Line 131  $selscript
 $bodytag  $bodytag
 <form action="/adm/createuser" method="post" name="crtuser">  <form action="/adm/createuser" method="post" name="crtuser">
 <input type="hidden" name="phase" value="get_user_info">  <input type="hidden" name="phase" value="get_user_info">
 <p>  <h2>Set Individual User Roles</h2>
 <table>  <table>
 <tr><td>Username:</td><td><input type="text" size="15" name="ccuname">  <tr><td>Username:</td><td><input type="text" size="15" name="ccuname">
 </td><td rowspan="2">$sellink</td></tr><tr><td>  </td><td rowspan="2">$sellink</td></tr><tr><td>
 Domain:</td><td>$domform</td></tr>  Domain:</td><td>$domform</td></tr>
 </table>   </table>
 </p>  <input name="userrole" type="submit" value="User Roles" />
 <input type="submit" value="Continue">  
 </form>  </form>
   <form action="/adm/createuser" method="post" name="docustom">
   <input type="hidden" name="phase" value="selected_custom_edit">
   <h2>Edit Custom Role Privileges</h2>
   Name of Role: $choice <input type="text" size="15" name="newrolename" /><br />
   <input name="customeditor" type="submit" value="Custom Role Editor" />
 </body>  </body>
 </html>  </html>
 ENDDOCUMENT  ENDDOCUMENT
Line 136  sub print_user_modification_page { Line 155  sub print_user_modification_page {
     my $ccuname=$ENV{'form.ccuname'};      my $ccuname=$ENV{'form.ccuname'};
     my $ccdomain=$ENV{'form.ccdomain'};      my $ccdomain=$ENV{'form.ccdomain'};
   
       $ccuname=~s/\W//gs;
       $ccdomain=~s/\W//gs;
   
       unless (($ccuname) && ($ccdomain)) {
    &print_username_entry_form($r);
           return;
       }
   
     my $defdom=$ENV{'request.role.domain'};      my $defdom=$ENV{'request.role.domain'};
   
     my ($krbdef,$krbdefdom) =      my ($krbdef,$krbdefdom) =
Line 827  END Line 854  END
     $r->print('</body></html>');      $r->print('</body></html>');
 }  }
   
   # ========================================================== Custom Role Editor
   
   sub custom_role_editor {
       my $r=shift;
       my $rolename=$ENV{'form.rolename'};
   
       if ($rolename eq 'make new role') {
    $rolename=$ENV{'form.newrolename'};
       }
   
       $rolename=~s/\W//gs;
   
       unless ($rolename) {
    &print_username_entry_form($r);
           return;
       }
   
       $r->print(&Apache::loncommon::bodytag(
                        'Create Users, Change User Privileges').'<h2>');
       my ($rdummy,$roledef)=
    &Apache::lonnet::get('roles',["rolesdef_$rolename"]);
       if (($rdummy ne 'con_lost') && ($roledef ne '')) {
    $r->print('Existing Role "');
       } else {
    $r->print('New Role "');
    $roledef='';
       }
       $r->print($rolename.'"</h2>');
       $r->print('Not yet implemented.');
   }
   
 # ================================================================ Main Handler  # ================================================================ Main Handler
 sub handler {  sub handler {
     my $r = shift;      my $r = shift;
Line 852  sub handler { Line 910  sub handler {
            &print_user_modification_page($r);             &print_user_modification_page($r);
        } elsif ($ENV{'form.phase'} eq 'update_user_data') {         } elsif ($ENV{'form.phase'} eq 'update_user_data') {
            &update_user_data($r);             &update_user_data($r);
          } elsif ($ENV{'form.phase'} eq 'selected_custom_edit') {
              &custom_role_editor($r);
        }         }
    } else {     } else {
       $ENV{'user.error.msg'}=        $ENV{'user.error.msg'}=

Removed from v.1.57  
changed lines
  Added in v.1.59


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