installers, RT#16584
[freeside.git] / httemplate / edit / access_user.html
index 86ce253..9d25853 100644 (file)
@@ -2,24 +2,30 @@
                  'name'   => 'Employee',
                  'table'  => 'access_user',
                  'fields' => [
-                               'username',
-                               { field=>'_password', type=>'password' },
-                               { field=>'_password2', type=>'password' },
-                               'last',
-                               'first',
-                               { field=>'user_custnum', type=>'search-cust_main', },
-                               { field=>'disabled', type=>'checkbox', value=>'Y' },
-                             ],
+                   'username',
+                   @pw_fields,
+                   'last',
+                   'first',
+                   { field=>'sched_item_enabled', type=>'checkbox', value=>'Y' },
+                   { field=>'user_custnum', type=>'search-cust_main', },
+                   { field       => 'report_salesnum',
+                     type        => 'select-sales',
+                     empty_label => 'all',
+                   },
+                   { field=>'disabled', type=>'checkbox', value=>'Y' },
+                 ],
                  'labels' => { 
-                               'usernum'      => 'User number',
-                               'username'     => 'Username',
-                               '_password'    => 'Password',
-                               '_password2'   => 'Re-enter Password',
-                               'last'         => 'Last name',
-                               'first'        => 'First name',
-                               'user_custnum' => 'Customer (optional)',
-                               'disabled'     => 'Disable employee',
-                             },
+                   'usernum'            => 'User number',
+                   'username'           => 'Username',
+                   '_password'          => 'Password',
+                   '_password2'         => 'Re-enter Password',
+                   'last'               => 'Last name',
+                   'first'              => 'First name',
+                   'sched_item_enabled' => 'Installer',
+                   'user_custnum'       => 'Customer (optional)',
+                   'report_salesnum'    => 'Limit commission report to sales person',
+                   'disabled'           => 'Disable employee',
+                 },
                  'edit_callback' => \&edit_callback,
                  'field_callback'=> \&field_callback,
                  'viewall_dir' => 'browse',
 die "access denied"
   unless $FS::CurrentUser::CurrentUser->access_right('Configuration');
 
+my @pw_fields =
+  FS::Auth->auth_class->can('change_password')
+    ? ( { field=>'_password',  type=>'password' },
+        { field=>'_password2', type=>'password' },
+      )
+    : ();
+
 my $check_user_custnum_search = <<END;
   <SCRIPT TYPE="text/javascript">
     function check_user_custnum_search(what) {
@@ -62,8 +75,12 @@ my $check_user_custnum_search = <<END;
 END
 
 sub edit_callback {
-  my ($c, $o, $f, $opt) = @_;
-  $o->set('_password', '');
+  my ($cgi, $access_user, $fields_listref, $opt_hashref) = @_;
+  $access_user->_password('');
+
+  my @sched_item = $access_user->sched_item;
+  $access_user->sched_item_enabled('Y')
+    if $sched_item[0] && ! $sched_item[0]->disabled;
 }
 
 sub field_callback {