X-Git-Url: http://git.freeside.biz/gitweb/?p=freeside.git;a=blobdiff_plain;f=httemplate%2Fedit%2Faccess_user.html;h=f40575c0bfc7f1961b30fcaa07fca6ea35544e02;hp=2b19dbf7bc982bbfae3c4d64cc4a5e059a39a1b0;hb=HEAD;hpb=2c757d7db4cb6a7b9655de13206fcc84fb7ce61f diff --git a/httemplate/edit/access_user.html b/httemplate/edit/access_user.html index 2b19dbf7b..f40575c0b 100644 --- a/httemplate/edit/access_user.html +++ b/httemplate/edit/access_user.html @@ -1,26 +1,42 @@ -<%= include( 'elements/edit.html', - 'name' => 'Internal User', +<% include( 'elements/edit.html', + 'name' => 'Employee', 'table' => 'access_user', 'fields' => [ - 'username', - { field=>'_password', type=>'password' }, - 'last', - 'first', - ], + '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', - 'last' => 'Last name', - 'first' => 'First name', - }, + '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', 'html_bottom' => sub { my $access_user = shift; - '
Internal Access Groups
'. - ntable("#cccccc",2). + '
'. + 'Employee Groups'. + '
'. + ''. '
'. include( '/elements/checkboxes-table.html', 'source_obj' => $access_user, @@ -33,5 +49,49 @@ '
' ; }, + 'onsubmit' => 'check_user_custnum_search', + 'html_foot' => $check_user_custnum_search, + 'html_table_class' => 'fsinnerbox', ) %> +<%init> + +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 = < + function check_user_custnum_search(what) { + while ( user_custnum_search_active ) { + // javascript needs ambien + } + return true; + } + +END + +sub edit_callback { + 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 { + my ($c, $o, $f) = @_; + if($f->{'type'} eq 'password' and $o->is_system_user) { + $f->{'type'} = 'hidden'; + $f->{'disabled'} = 1; + } +} + +