X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=httemplate%2Fconfig%2Fconfig-view.cgi;h=4f6b5463ada3e63e4a6b84506255927f44f4a26c;hb=a3eeea576fbb0119c3c55306979e62352c6905ec;hp=9a0006792cc99fd32b80c4a5f04e25e769c81dd3;hpb=a741f52db660b39a3f3c12acd0623d87bfc9108a;p=freeside.git diff --git a/httemplate/config/config-view.cgi b/httemplate/config/config-view.cgi index 9a0006792..4f6b5463a 100644 --- a/httemplate/config/config-view.cgi +++ b/httemplate/config/config-view.cgi @@ -1,64 +1,163 @@ - -<%= header('View Configuration', menubar( 'Main Menu' => $p, - 'Edit Configuration' => 'config.cgi' ) ) %> +<% include("/elements/header.html", + $title, + menubar( + 'View all agents' => $p.'browse/agent.cgi', + ) + ) +%> -<% my $conf = new FS::Conf; my @config_items = $conf->config_items; %> +Click on a configuration value to change it. +

-<% foreach my $section ( qw(required billing username password UI session - shell BIND - ), - '', 'deprecated') { %> - +<% include('/elements/init_overlib.html') %> + +% if ($FS::UID::use_confcompat) { + + CONFIGURATION NOT STORED IN DATABASE -- USING COMPATIBILITY MODE

+%} +% +% foreach my $section ( qw(required billing username password UI session +% shell BIND +% ), +% '', 'deprecated') { + + - <% foreach my $nav_section ( qw(required billing username password UI session - shell BIND - ), - '', 'deprecated') { %> - <% if ( $section eq $nav_section ) { %> - [<%= ucfirst($nav_section || 'unclassified') %>] - <% } else { %> - [<%= ucfirst($nav_section || 'unclassified') %>] - <% } %> - <% } %> +% foreach my $nav_section ( qw(required billing username password UI session +% shell BIND +% ), +% '', 'deprecated') { +% if ( $section eq $nav_section ) { + + [<% ucfirst($nav_section || 'unclassified') %>] +% } else { + + [<% ucfirst($nav_section || 'unclassified') %>] +% } +% } +
- <%= table("#cccccc", 2) %> + - <% foreach my $i (grep $_->section eq $section, @config_items) { %> +% foreach my $i (grep $_->section eq $section, @config_items) { +% my @types = ref($i->type) ? @{$i->type} : ($i->type); +% my( $width, $height ) = ( 522, 336 ); +% if ( grep $_ eq 'textarea', @types ) { +% #800x600 +% $width = 763; +% $height = 408; +% #1024x768 +% #$width = +% #$height = +% } + - + - <% } %> +% } +
- <%= ucfirst($section || 'unclassified') %> configuration options + <% ucfirst($section || 'unclassified') %> configuration options
- <%= $i->key %> - <%= $i->description %> - <% include('/elements/popup_link.html', + 'action' => 'config.cgi?key='. $i->key. + ';agentnum='. $agentnum, + 'width' => $width, + 'height' => $height, + 'actionlabel' => 'Enter configuration value', + 'label' => ''. $i->key. '', + 'aname' => $i->key, + ) + %>: <% $i->description %> + - <% foreach my $type ( ref($i->type) ? @{$i->type} : $i->type ) { - my $n = 0; %> - <% if ( $type eq '' ) { %> - - <% } elsif ( $type eq 'textarea' - || $type eq 'editlist' - || $type eq 'selectmultiple' ) { %> - - <% } elsif ( $type eq 'checkbox' ) { %> - - <% } elsif ( $type eq 'text' || $type eq 'select' ) { %> - - <% } else { %> +% foreach my $type (@types) { +% my $n = 0; +% if ( $type eq '' ) { + + + + +% } elsif ( $type eq 'binary' ) { + + + <% $conf->exists($i->key, $agentnum) + ? qq!download! + : 'empty' + %> + +% } elsif ( $type eq 'textarea' +% || $type eq 'editlist' +% || $type eq 'selectmultiple' ) { + + + + +% } elsif ( $type eq 'checkbox' ) { + + + + +% } elsif ( $type eq 'text' || $type eq 'select' ) { + + + +% } elsif ( $type eq 'select-sub' ) { + + + + +% } else { + - <% } %> - <% $n++; } %> +% } +% $n++; } +
no type
-
-<%= encode_entities(join("\n", $conf->config($i->key) ) ) %>
-
-
YES' : 'ff0000">NO' %>
<%= $conf->exists($i->key) ? $conf->config($i->key) : '' %>
no type
+
+<% encode_entities(join("\n",
+     map { length($_) > 88 ? substr($_,0,88).'...' : $_ }
+         $conf->config($i->key, $agentnum)
+   ) )
+%>
+
+
YES' : 'ff0000">NO' %>
+ <% $conf->exists($i->key, $agentnum) ? $conf->config($i->key, $agentnum) : '' %> +
+ <% $conf->config($i->key, $agentnum) %>: + <% &{ $i->option_sub }( $conf->config($i->key, $agentnum) ) %> +
- unknown type <%= $type %> + unknown type <% $type %>


-<% } %> +% } + +<%init> + +die "access denied" + unless $FS::CurrentUser::CurrentUser->access_right('Configuration'); + +my $agentnum = ''; +if ($cgi->param('agentnum') =~ /^(\d+)$/) { + $agentnum = $1; +} + +my $title; +if ($agentnum) { + my $agent = qsearchs('agent', { 'agentnum' => $agentnum } ); + die "Agent $agentnum not found!" unless $agent; + + $title = "Configuration for ". $agent->agent; +} else { + $title = 'Global Configuration'; +} + +my $conf = new FS::Conf; + +my @config_items = grep { $agentnum ? $_->per_agent : 1 } + grep { $_->key != ~/^invoice_(html|latex|template)/ } + $conf->config_items; + +