X-Git-Url: http://git.freeside.biz/gitweb/?p=freeside.git;a=blobdiff_plain;f=httemplate%2Fconfig%2Fconfig-view.cgi;h=5f09b128a383fcc6e6f531039a5c2341d41dbc11;hp=02a24adbf4c1f06369d9421b2c9222f15576cd49;hb=HEAD;hpb=f3c4966ed1f6ec3db7accd6dcdd3a5a3821d72a7 diff --git a/httemplate/config/config-view.cgi b/httemplate/config/config-view.cgi index 02a24adbf..5f09b128a 100644 --- a/httemplate/config/config-view.cgi +++ b/httemplate/config/config-view.cgi @@ -7,7 +7,7 @@ Click on a configuration value to change it. % % if ( $cgi->param('showagent') ) { % $cgi->param('showagent', 0); - ( hide agent overrides ) + ( show global configuration ) % $cgi->param('showagent', 1); % } else { % $cgi->param('showagent', 1); @@ -34,11 +34,11 @@ invoice language options:
<& /elements/select.html, 'field' => 'locale', - 'options' => [ '', @locales ], + 'options' => [ '', grep { $_ ne 'en_US'} @locales ], 'labels' => { map { my %info = FS::Locales->locale_info($_); $_ => "$info{name} ($info{country})" - } @locales }, + } grep { $_ ne 'en_US' } @locales }, 'curr_value' => $locale, 'id' => 'select-locale', 'onchange' => 'changeLocale' @@ -58,24 +58,28 @@ invoice language options: % foreach my $section (@sections) { - + % foreach my $nav_section (@sections) { % % if ( $section eq $nav_section ) { - [<% ucfirst($nav_section || 'unclassified') %>] + <% section_title($nav_section) %> % } else { - [<% ucfirst($nav_section || 'unclassified') %>] + <% section_title($nav_section) %> % } % +% unless ( $nav_section eq $sections[-1] ) { + | +% } +% % }
- @@ -292,7 +308,7 @@ invoice language options: % if ( @add_agents ) { -
- <% ucfirst($section || 'unclassified') %> + <% section_title($section) %> % if ( $curuser->option('show_confitem_counts') ) { (<% scalar( @{ $section_items{$section} } ) %> items) % } @@ -114,7 +118,10 @@ invoice language options: % foreach my $agent ( @agents ) { % my $agentnum = $agent ? $agent->agentnum : ''; % -% next if $section eq 'deprecated' && ! $conf->exists($i->key, $agentnum); +% next if $section eq 'deprecated' +% && ( ! $conf->exists($i->key, $agentnum) +% || $conf->config($i->key, $agentnum) eq '' +% ); % % my $label = $i->key; % $label = '['. $agent->agent. "] $label" @@ -125,16 +132,21 @@ invoice language options: % ";agentnum=$agentnum" . ($locale ? ";locale=$locale" : '');
<% include('/elements/popup_link.html', - 'action' => $action, - 'width' => $width, - 'height' => $height, - 'actionlabel' => 'Enter configuration value', - 'label' => "$label", - 'aname' => $i->key, #agentnum - # if $cgi->param('showagent')? +% unless ( $cgi->param('showagent') ) { + + <% include('/elements/popup_link.html', + 'action' => $action, + 'width' => $width, + 'height' => $height, + 'actionlabel' => 'Enter configuration value', + 'html_label' => "$label", + 'aname' => $i->key, ) - %>: <% $i->description %> + %>: +% } else { + <% $label %>: +% } + <% $i->description %> % if ( $agent && $cgi->param('showagent') ) { % my $confnum = $conf->conf( $i->key, $agent->agentnum, 1 )->confnum; (delete agent override) @@ -200,11 +212,15 @@ invoice language options:
-
<% encode_entities(join("\n",
-     map { length($_) > 88 ? substr($_,0,88).'...' : $_ }
-         $conf->config($i->key, $agentnum)
-   ) )
-%>
+ +% my $escaped = eval { encode_entities(join("\n", +% map { length($_) > 88 ? substr($_,0,88).'...' : $_ } +% $conf->config($i->key, $agentnum) +% ) ); +% }; +% $escaped = $@ ? '('.encode_entities($@).')' : $escaped; +
<% $escaped %>
+
+ Add <% $i->key %> override for <% include('/elements/select-agent.html', @@ -403,20 +419,37 @@ if ( $cgi->param('locale') =~ /^\w+_\w+$/ ) { } elsif ($page_agent) { $title = 'Agent Configuration for '. $page_agent->agent; $title .= ", $locale_desc" if $locale; +} elsif ( $cgi->param('showagent') ) { + $title = 'Agent Configuration Overrides' } else { $title = 'Global Configuration'; } +my $show_over = $page_agent || $cgi->param('showagent'); + my @config_items = grep { !defined($locale) or $_->per_locale } - grep { $page_agent ? $_->per_agent : 1 } - grep { $page_agent ? 1 : !$_->agentonly } + grep { $show_over ? $_->per_agent : 1 } + grep { $show_over ? 1 : !$_->agentonly } $conf->config_items; my @deleteable = qw( invoice_latexreturnaddress invoice_htmlreturnaddress ); my %deleteable = map { $_ => 1 } @deleteable; -my @sections = qw(required billing invoicing notification UI self-service ticketing network_monitoring username password session shell BIND telephony ); -push @sections, '', 'deprecated'; +my @sections = (qw( + important + billing payments payment_batching credit_cards e-checks taxation + packages suspension cancellation + printing print_services email_to_voice_services + invoicing invoice_email invoice_balances invoice_templates quotations + notification UI addresses customer_number customer_fields reporting + localization scalability backup + signup self-service self-service_skinning + API ticketing appointments network_monitoring + services + username password + telephony telephony_invoicing RADIUS wireless_broadband shell BIND hosting + ), '', qw( development deprecated ) +); my %section_items = (); foreach my $section (@sections) { @@ -430,4 +463,10 @@ if ( $cgi->param('showagent') ) { @all_agents = qsearch('agent', { 'disabled' => '' } ); } +sub section_title { + my $sec = ucfirst(shift || 'misc'); + $sec =~ s/_/ /; + $sec; +} +