From: mark Date: Fri, 11 Nov 2011 03:13:16 +0000 (+0000) Subject: improve svc_broadband "manage device" link, #14696 X-Git-Tag: freeside_2_3_1~172 X-Git-Url: http://git.freeside.biz/gitweb/?p=freeside.git;a=commitdiff_plain;h=5157ebd894ad02c85bac66ed89313d0c0dea7aeb improve svc_broadband "manage device" link, #14696 --- diff --git a/FS/FS/Conf.pm b/FS/FS/Conf.pm index 8d26e91aa..e49174b20 100644 --- a/FS/FS/Conf.pm +++ b/FS/FS/Conf.pm @@ -4275,6 +4275,25 @@ and customer address. Include units.', 'type' => 'text', }, + { + 'key' => 'svc_broadband-manage_link_text', + 'section' => 'UI', + 'description' => 'Label for "Manage Device" link', + 'type' => 'text', + }, + + { + 'key' => 'svc_broadband-manage_link_loc', + 'section' => 'UI', + 'description' => 'Location for "Manage Device" link', + 'type' => 'select', + 'select_hash' => [ + 'bottom' => 'Near Unprovision link', + 'right' => 'With export-related links', + ], + }, + + #more fine-grained, service def-level control could be useful eventually? { 'key' => 'svc_broadband-allow_null_ip_addr', diff --git a/httemplate/elements/tr-cust_svc.html b/httemplate/elements/tr-cust_svc.html index dd81ce5e8..8bd77124d 100644 --- a/httemplate/elements/tr-cust_svc.html +++ b/httemplate/elements/tr-cust_svc.html @@ -12,7 +12,9 @@ Usage: 'cust_pkg' => $cust_pkg, #optional 'cust_pkg-display_times' => '', #bool - 'svc_broadband-manage_link' => '', + 'manage_link' => '', #for svc_broadband + 'manage_link_text' => '', #default 'Manage Device' + 'manage_link_loc' => '', #default 'bottom', or 'right' 'maestro-status_test' => '', ) %> @@ -25,7 +27,11 @@ FS::UI::Web::svc_link($m, $part_svc, $cust_svc) <% FS::UI::Web::svc_label_link($m, $part_svc, $cust_svc) %> -<% FS::UI::Web::svc_export_links($m, $part_svc, $cust_svc) %> +<% FS::UI::Web::svc_export_links($m, $part_svc, $cust_svc) %> +% if ( $manage_link and $opt{'manage_link_loc'} eq 'right' ) { + <% $opt{'manage_link_text'} |h %> +% } + % if ( $cust_svc->overlimit ) { @@ -55,16 +61,12 @@ $cust_svc->overlimit ) % # second column: all other action links % if ( $part_svc->svcdb eq 'svc_broadband' ) { - ( <% + ( <% include('/elements/popup_link-ping.html', 'ip' => $svc_x->ip_addr ) %> ) -% my $manage_link = $opt{'svc_broadband-manage_link'}; -% if ( $manage_link ) { -% my $ip_addr = $svc_x->ip_addr; #substitution for $manage_link - "><% mt('Manage Device') |h %> ) +% if ( $manage_link and $opt{'manage_link_loc'} eq 'bottom' ) { + <% $opt{'manage_link_text'} |h %> ) % } % } #svc_broadband % if ( $curuser->access_right('Unprovision customer service') ) { @@ -91,4 +93,15 @@ my $svc_unprovision_link = $cust_svc->svcnum . qq!', '!.emt('Permanently unprovision and delete this service?').qq!')">!.emt('Unprovision').''; +my $manage_link = $opt{'manage_link'}; +if ( $part_svc->svcdb eq 'svc_broadband' and $manage_link ) { + my $ip_addr = $svc_x->ip_addr; #substitution for $manage_link + $manage_link = eval(qq("$manage_link")); + $opt{'manage_link_text'} ||= mt('Manage Device'); + $opt{'manage_link_loc'} ||= 'bottom'; +} +else { + $manage_link = ''; +} + diff --git a/httemplate/view/cust_main/packages/section.html b/httemplate/view/cust_main/packages/section.html index 4ac2e7779..638e88cab 100755 --- a/httemplate/view/cust_main/packages/section.html +++ b/httemplate/view/cust_main/packages/section.html @@ -83,7 +83,9 @@ my %conf_opt = ( #for services.html 'svc_external-skip_manual' => $conf->exists('svc_external-skip_manual'), 'legacy_link' => $conf->exists('legacy_link'), - 'svc_broadband-manage_link' => scalar($conf->config('svc_broadband-manage_link')), + 'manage_link' => scalar($conf->config('svc_broadband-manage_link')), + 'manage_link_text' => scalar($conf->config('svc_broadband-manage_link_text')), + 'manage_link_loc' => scalar($conf->config('svc_broadband-manage_link_loc')), 'maestro-status_test' => $conf->exists('maestro-status_test'), 'cust_pkg-large_pkg_size' => $conf->config('cust_pkg-large_pkg_size'),