<% include('/elements/error.html') %>
-Change password (leave blank for no change)
+<% mt('Change password (leave blank for no change)') |h %>
<% ntable("#cccccc",2) %>
<TR>
</SELECT>
</TD>
</TR>
-
+
+ <TR>
+ <TH ALIGN="right">Hide package changes: </TH>
+ <TD COLSPAN=2>
+ <& /elements/select.html,
+ field => 'hide_package_changes',
+ options => [ '', 'location', 'all' ],
+ labels => { '' => 'never',
+ 'location' => 'location changes',
+ 'all' => 'all package changes',
+ },
+ curr_value => ($cgi->param('hide_package_changes')
+ || $curuser->option('hide_package_changes')),
+ &>
+ </TD>
+ </TR>
+
+% my $history_order = $curuser->option('history_order') || 'oldest';
+ <TR>
+ <TH ALIGN="right">Customer history sort order: </TH>
+ <TD COLSPAN=2>
+ <& /elements/select.html,
+ field => 'history_order',
+ curr_value => $history_order,
+ options => [ 'oldest', 'newest' ],
+ labels => { 'oldest' => 'Oldest first',
+ 'newest' => 'Newest first',
+ },
+ &>
+ </TD>
+ </TR>
+
+ <TR>
+ <TH ALIGN="right">Spreadsheet download format: </TH>
+ <TD COLSPAN=2>
+ <SELECT NAME="spreadsheet_format">
+% my $xls = $curuser->option('spreadsheet_format') eq 'XLS';
+% my $xlsx = $curuser->option('spreadsheet_format') eq 'XLSX';
+ <OPTION VALUE=""></OPTION>
+ <OPTION VALUE="XLS"<% $xls ? 'SELECTED' : '' %>>XLS (Excel 97/2000/XP)
+ </OPTION>
+ <OPTION VALUE="XLSX"<% $xlsx ? 'SELECTED' : ''%>>XLSX (Excel 2007+)
+ </OPTION>
+ </SELECT>
+ </TD>
+ </TR>
+
+% if ( FS::Conf->new->exists('enable_fuzzy_on_exact') ) {
+
+ <INPUT TYPE="hidden" NAME="enable_fuzzy_on_exact" VALUE="<% $curuser->option('enable_fuzzy_on_exact') ? 1 : 0 %>">
+
+% } else {
+
+ <TR>
+ <TH ALIGN="right" COLSPAN=1>Enable approximate customer searching <BR>even when an exact match is found: </TH>
+ <TD ALIGN="left" COLSPAN=2>
+ <INPUT TYPE="checkbox" NAME="enable_fuzzy_on_exact" VALUE="1" <% $curuser->option('enable_fuzzy_on_exact') ? 'CHECKED' : '' %>>
+ </TD>
+ </TR>
+
+% }
+
<TR>
<TH ALIGN="right" COLSPAN=1>Disable HTML editor for customer notes: </TH>
<TD ALIGN="left" COLSPAN=2>
</TD>
</TR>
+ <TR>
+ <TH ALIGN="right">Don't copy MAC address delimiters to clipboard</TH>
+ <TD ALIGN="left" COLSPAN=2>
+ <INPUT TYPE="checkbox" NAME="enable_mask_clipboard_hack" VALUE="1" <% $curuser->option('enable_mask_clipboard_hack') ? 'CHECKED' : '' %>>
+ </TD>
+ </TR>
+
+ <TR>
+ <TH ALIGN="right">How many recently-modified customers displayed on dashboard</TH>
+ <TD ALIGN="left" COLSPAN=2>
+ <INPUT TYPE="text" NAME="dashboard_customers" VALUE="<% $curuser->option('dashboard_customers') %>"></TD>
+ </TD>
+ </TR>
+
</TABLE>
<BR>
<TH>Save database profiling logs (when available): </TH>
<TD><INPUT TYPE="checkbox" NAME="save_db_profile" VALUE="1" <% $curuser->option('save_db_profile') ? 'CHECKED' : '' %>></TD>
</TR>
+ <TR>
+ <TH>Save temporary invoice typesetting files: </TH>
+ <TD><INPUT TYPE="checkbox" NAME="save_tmp_typesetting" VALUE="1" <% $curuser->option('save_tmp_typesetting') ? 'CHECKED' : '' %>></TD>
+ </TR>
</TABLE>
<BR>
=~ /^(\w+)$/ or die "illegal menu_position";
my $menu_position = $1;
( $curuser->option('email_address') )
- =~ /^([,\w\@.]*)$/ or die "illegal email_address"; #too late
+ =~ /^([,\w\@.\-]*)$/ or die "illegal email_address"; #too late
my $email_address = $1;
</%init>