[freeside-commits] branch FREESIDE_3_BRANCH updated. 76b68d748691dad85e22ab644e9bffcd567b3f9f

Jonathan Prykop jonathan at 420.am
Fri Jan 23 12:40:49 PST 2015


The branch, FREESIDE_3_BRANCH has been updated
       via  76b68d748691dad85e22ab644e9bffcd567b3f9f (commit)
       via  b951a687384fb16e2970ff45626de570dac6d574 (commit)
      from  a0859cc5a9c0c40a3fe17a2484d2ee532cb2c3e2 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit 76b68d748691dad85e22ab644e9bffcd567b3f9f
Merge: b951a68 a0859cc
Author: Jonathan Prykop <jonathan at freeside.biz>
Date:   Fri Jan 23 14:10:46 2015 -0600

    Merge branch 'FREESIDE_3_BRANCH' of git.freeside.biz:/home/git/freeside into FREESIDE_3_BRANCH


commit b951a687384fb16e2970ff45626de570dac6d574
Author: Jonathan Prykop <jonathan at freeside.biz>
Date:   Thu Jan 22 15:51:11 2015 -0600

    30392, refactored manage devices link, added it to broadband service page

diff --git a/httemplate/elements/manage_device_link.html b/httemplate/elements/manage_device_link.html
new file mode 100644
index 0000000..76a3cdf
--- /dev/null
+++ b/httemplate/elements/manage_device_link.html
@@ -0,0 +1,46 @@
+<%doc>
+
+#For including the "Manage Device" link for broadband svc
+#  Handles check if svcdb is svc_broadband, ip_addr/mac_addr substitution 
+#  and manage_link-new_window, but manage_link_loc and no_links must
+#  be checked as appropriate before including this
+
+#Example:
+
+  <& /elements/manage_device_link.html, 
+	'svc' => $svc_x,
+	'part_svc' => $part_svc,
+	'manage_link' => scalar($conf->config('svc_broadband-manage_link')),
+	'manage_link_text' => scalar($conf->config('svc_broadband-manage_link_text')),
+	'manage_link-new_window' => $conf->exists('svc_broadband-manage_link-new_window'),
+	'prepend' => ' ( ',
+	'append' => ' ) '
+  &>
+
+</%doc>
+% if ($manage_link) {
+<% $startdec %><A HREF="<% $manage_link %>"<% $manage_target %>><% $manage_link_text |h %></A><% $enddec %>
+% }
+<%init>
+
+my %opt = @_;
+my $manage_link = '';
+my $manage_link_text = '';
+my $manage_target = '';
+my $startdec = '';
+my $enddec = '';
+
+if ( $opt{'part_svc'} and $opt{'svc'} and $opt{'manage_link'} and $opt{'part_svc'}->svcdb eq 'svc_broadband' ) {
+	my $ip_addr  = $opt{'svc'}->ip_addr || '';  #substitution for $manage_link
+	my $mac_addr = $opt{'svc'}->mac_addr || ''; # ditto
+	$manage_link = $opt{'manage_link'};
+	$manage_link =~ s/\$ip_addr/$ip_addr/g;   #safer than using eval
+	$manage_link =~ s/\$mac_addr/$mac_addr/g; # ditto
+	$manage_link_text = $opt{'manage_link_text'} || mt('Manage Device');
+	$manage_target = ' target="_blank"' if $opt{'manage_link-new_window'};
+	$startdec = $opt{'prepend'};
+	$enddec = $opt{'append'};
+}
+
+</%init>
+
diff --git a/httemplate/elements/tr-cust_svc.html b/httemplate/elements/tr-cust_svc.html
index cc5ec0f..03de3ba 100644
--- a/httemplate/elements/tr-cust_svc.html
+++ b/httemplate/elements/tr-cust_svc.html
@@ -43,8 +43,14 @@ Usage:
 %   }
   </TD>
 <TD ALIGN="right"><% FS::UI::Web::svc_export_links($m, $part_svc, $cust_svc) %>
-%   if ( $manage_link and $opt{'manage_link_loc'} eq 'right' && ! $opt{no_links} ) {
-      <A HREF="<% $manage_link %>" <% $manage_target %>><% $opt{'manage_link_text'} |h %></A>
+%   if ( $opt{'manage_link_loc'} eq 'right' && ! $opt{no_links} ) {
+<& /elements/manage_device_link.html, 
+	'svc' => $svc_x,
+	'part_svc' => $opt{'part_svc'} || $cust_svc->part_svc,
+	'manage_link' => $opt{'manage_link'},
+	'manage_link_text' => $opt{'manage_link_text'},
+	'manage_link-new_window' => $opt{'manage_link-new_window'}
+&>
 % }
 </TD>
 </TR>
@@ -90,8 +96,16 @@ $cust_svc->overlimit )
       include('/elements/popup_link-ping.html',
               'ip' => $svc_x->ip_addr
       ) %> )</FONT>
-%   if ( $manage_link and $opt{'manage_link_loc'} eq 'bottom' && ! $opt{no_links} ) {
-      <FONT SIZE="-2">( <A HREF="<% $manage_link %>" <% $manage_target %>><% $opt{'manage_link_text'} |h %></A> )</FONT>
+%   if ( $opt{'manage_link_loc'} eq 'bottom' && ! $opt{no_links} ) {
+<& /elements/manage_device_link.html, 
+	'svc' => $svc_x,
+	'part_svc' => $opt{'part_svc'} || $cust_svc->part_svc,
+	'manage_link' => $opt{'manage_link'},
+	'manage_link_text' => $opt{'manage_link_text'},
+	'manage_link-new_window' => $opt{'manage_link-new_window'},
+	'prepend' => '<FONT SIZE="-2">( ',
+	'append' => ' )</FONT>'
+&>
 %   }
 % } #svc_broadband
 % if ( $curuser->access_right('Unprovision customer service') && ! $opt{no_links} ) {
@@ -114,18 +128,6 @@ my $svc_unprovision_link =
   $cust_svc->svcnum .
   qq!', '!.emt('Permanently unprovision and delete this service?').qq!')">!.emt('Unprovision').'</A>';
 
-my $manage_link = $opt{'manage_link'};
-my $manage_target = '';
-if ( $part_svc->svcdb eq 'svc_broadband' and $manage_link ) {
-  my $ip_addr  = $svc_x->ip_addr;  #substitution for $manage_link
-  my $mac_addr = $svc_x->mac_addr; # ditto
-  $manage_link = eval(qq("$manage_link"));
-  $opt{'manage_link_text'} ||= mt('Manage Device');
-  $opt{'manage_link_loc'}  ||= 'bottom';
-  $manage_target = ' target="_blank"' if $opt{'manage_link-new_window'};
-}
-else {
-  $manage_link = '';
-}
+$opt{'manage_link_loc'}  ||= 'bottom';
 
 </%init>
diff --git a/httemplate/view/elements/svc_Common.html b/httemplate/view/elements/svc_Common.html
index 7d21e76..771bfb2 100644
--- a/httemplate/view/elements/svc_Common.html
+++ b/httemplate/view/elements/svc_Common.html
@@ -22,6 +22,11 @@
              #at the very bottom (well, as low as you can go from here)
              'html_foot'  => '',
 
+             #only needed for svc_broadband Manage Devices link
+             'manage_link' => scalar($conf->config('svc_broadband-manage_link')),
+             'manage_link_text' => scalar($conf->config('svc_broadband-manage_link_text')),
+             'manage_link-new_window' => $conf->exists('svc_broadband-manage_link-new_window')
+
          )
 
 </%doc>
@@ -70,7 +75,11 @@ function areyousure(href) {
 <% mt('Service #') |h %><B><% $svcnum %></B>
 % if ( $custnum ) {
 %   my $url = $opt{'edit_url'} || $p. 'edit/'. $opt{'table'}. '.cgi?';
-<& /view/elements/svc_edit_link.html, 'svc' => $svc_x, 'edit_url' => $url &>
+<& /view/elements/svc_edit_link.html, 'svc' => $svc_x, 'part_svc' => $part_svc, 'edit_url' => $url,
+  'manage_link'               => $opt{'manage_link'},
+  'manage_link_text'          => $opt{'manage_link_text'},
+  'manage_link-new_window'    => $opt{'manage_link-new_window'}
+&>
 % }
 <BR>
 
@@ -222,7 +231,6 @@ my $format_field = sub {
     $field = $f;
     $type = 'text';
   }
-  warn "$field\t$type\t$value\n";
 
   my $columndef = $part_svc->part_svc_column($field);
   # skip fields that are fixed and empty
diff --git a/httemplate/view/elements/svc_edit_link.html b/httemplate/view/elements/svc_edit_link.html
index 5438ed2..3ff2f58 100644
--- a/httemplate/view/elements/svc_edit_link.html
+++ b/httemplate/view/elements/svc_edit_link.html
@@ -14,6 +14,14 @@ function areyousure_delete() {
 | <A HREF="javascript:areyousure_delete()"><% mt('Unprovision this Service') |h %></A>
 %   }
 % }
+<& /elements/manage_device_link.html, 
+	'svc' => $svc_x,
+	'part_svc' => $opt{'part_svc'} || $cust_svc->part_svc,
+	'manage_link' => $opt{'manage_link'},
+	'manage_link_text' => $opt{'manage_link_text'},
+	'manage_link-new_window' => $opt{'manage_link-new_window'},
+	'prepend' => '| '
+&>
 <%init>
 my %opt = @_;
 my $svc_x = $opt{'svc'} or die "'svc' required";
diff --git a/httemplate/view/svc_broadband.cgi b/httemplate/view/svc_broadband.cgi
index ec73c6d..70c0b53 100644
--- a/httemplate/view/svc_broadband.cgi
+++ b/httemplate/view/svc_broadband.cgi
@@ -4,6 +4,9 @@
   fields       => \@fields,
   svc_callback => \&svc_callback,
   radius_usage => 1,
+  'manage_link'               => scalar($conf->config('svc_broadband-manage_link')),
+  'manage_link_text'          => scalar($conf->config('svc_broadband-manage_link_text')),
+  'manage_link-new_window'    => $conf->exists('svc_broadband-manage_link-new_window')
 &>
 <%init>
 

-----------------------------------------------------------------------

Summary of changes:
 httemplate/elements/manage_device_link.html |   46 +++++++++++++++++++++++++++
 httemplate/elements/tr-cust_svc.html        |   36 +++++++++++----------
 httemplate/view/elements/svc_Common.html    |   12 +++++--
 httemplate/view/elements/svc_edit_link.html |    8 +++++
 httemplate/view/svc_broadband.cgi           |    3 ++
 5 files changed, 86 insertions(+), 19 deletions(-)
 create mode 100644 httemplate/elements/manage_device_link.html




More information about the freeside-commits mailing list