X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=httemplate%2Fpref%2Fpref.html;h=c7c7c9d605b19ae03005ff7dfe27d9302b1dd375;hb=fe8c3092f0c4210049de3a9673f70e8f4bb541be;hp=4007bb9f1c6c7d601bda83725b690927d124a34a;hpb=b96629eb08231f78f334f78c0bd6c277c60844fa;p=freeside.git diff --git a/httemplate/pref/pref.html b/httemplate/pref/pref.html index 4007bb9f1..c7c7c9d60 100644 --- a/httemplate/pref/pref.html +++ b/httemplate/pref/pref.html @@ -1,11 +1,18 @@ <% include('/elements/header.html', 'Preferences for '. getotaker ) %> +% my $js_form_validate = { 'pref_form' => { 'name' => 'pref_form' } }; +
<% include('/elements/error.html') %> +<<<<<<< HEAD +======= +<& /elements/alert.html &> + +% if ( FS::Auth->auth_class->can('change_password') ) { -Change password (leave blank for no change) +<% mt('Change password (leave blank for no change)') |h %> <% ntable("#cccccc",2) %> @@ -31,7 +38,21 @@ Interface <% ntable("#cccccc",2) %> - Menu location: + Locale: + + + + + + + Menu location: > Left
> Top
@@ -39,6 +60,120 @@ Interface + + Enable mobile-friendly menu: + + option('mobile_menu') ? 'CHECKED' : '' %>> + + + + + Default customer view: + + + + + +% my $history_order = $curuser->option('history_order') || 'oldest'; + + Customer history sort order: + + <& /elements/select.html, + field => 'history_order', + curr_value => $history_order, + options => [ 'oldest', 'newest' ], + labels => { 'oldest' => 'Oldest first', + 'newest' => 'Newest first', + }, + &> + + + + + Spreadsheet download format: + + + + + +% if ( FS::Conf->new->exists('enable_fuzzy_on_exact') ) { + + + +% } else { + + + Enable approximate customer searching
even when an exact match is found: + + option('enable_fuzzy_on_exact') ? 'CHECKED' : '' %>> + + + +% } + + + Disable HTML editor for customer notes: + + option('disable_html_editor') ? 'CHECKED' : '' %>> + + + + + Disable submission on [Enter] key - one-time charges: + + option('disable_enter_submit_onetimecharge') ? 'CHECKED' : '' %>> + + + + + Don't copy MAC address delimiters to clipboard + + option('enable_mask_clipboard_hack') ? 'CHECKED' : '' %>> + + + + + When printing, scale HTML documents to fit on a letter-size page + + option('printtofit') ? 'CHECKED' : '' %>> + + + + + <% emt("How many recently-modified customers displayed on dashboard") %> + + + + + +% my $validate_field_cve = 'customer_view_emails'; +% $js_form_validate->{pref_form}->{validate_fields}{$validate_field_cve} = 'digits: true'; +% $js_form_validate->{pref_form}->{error_message}{$validate_field_cve} = 'Please only enter numbers here.'; + + + How many recent outbound emails to show in customer view + + + + +
@@ -61,13 +196,61 @@ Development <% ntable("#cccccc",2) %> + Show customer package timestamps: + option('cust_pkg-display_times') ? 'CHECKED' : '' %>> + + Show internal package numbers: option('show_pkgnum') ? 'CHECKED' : '' %>> + + Show config item counts: + option('show_confitem_counts') ? 'CHECKED' : '' %>> + + + Show export data on service view (when available): + option('export_getsettings') ? 'CHECKED' : '' %>> + + + Show database profiling (when available): + option('show_db_profile') ? 'CHECKED' : '' %>> + + + Save database profiling logs (when available): + option('save_db_profile') ? 'CHECKED' : '' %>> + + + Save temporary invoice typesetting files: + option('save_tmp_typesetting') ? 'CHECKED' : '' %>> +
+% if ( $curuser->access_right('Employee preference telephony integration') ) { + +SNOM integration +<% ntable("#cccccc",2) %> + + + SNOM IP address + + + + + SNOM HTTP username (if necessary) + + + + + SNOM HTTP password (if necessary) + + + + +
+ +OR

Vonage integration (see Click2Call) <% ntable("#cccccc",2) %> @@ -90,6 +273,7 @@ Vonage integration (see Click2Call
+% } % foreach my $prop (qw( height width availHeight availWidth colorDepth )) { @@ -100,17 +284,34 @@ Vonage integration (see Click2Call -<% include('/elements/footer.html') %> +% my %footerdata = ( +% 'formvalidation' => $js_form_validate, +% ); +<% include("/elements/footer.html", %footerdata) %> + <%init> my $curuser = $FS::CurrentUser::CurrentUser; +#false laziness w/view/cust_main.cgi and Conf.pm (cust_main-default_view) + +tie my %customer_views, 'Tie::IxHash', + 'Basics' => 'basics', + 'Notes' => 'notes', #notes and files? + 'Tickets' => 'tickets', + 'Packages' => 'packages', + 'Payment History' => 'payment_history', +; +$customer_views{'Change History'} = 'change_history' + if $curuser->access_right('View customer history'); +$customer_views{'Jumbo'} = 'jumbo'; + # XSS via your own preferences? seems unlikely, but nice try anyway... -( $curuser->option('menu_position') || 'left' ) +( $curuser->option('menu_position') || 'top' ) =~ /^(\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;