X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=httemplate%2Fview%2Fsvc_pbx.cgi;h=9b18dc3bd721d50396500d31a9e7a6247a2263e2;hb=35ac5f08fc816cd7d79dc9a861652537061aed03;hp=79cafed4dc270fd7ad081c221ae1440e0633a408;hpb=140b381af1008dad929b4d3b87aa1e54747d534f;p=freeside.git
diff --git a/httemplate/view/svc_pbx.cgi b/httemplate/view/svc_pbx.cgi
index 79cafed4d..9b18dc3bd 100644
--- a/httemplate/view/svc_pbx.cgi
+++ b/httemplate/view/svc_pbx.cgi
@@ -1,6 +1,6 @@
<% include('elements/svc_Common.html',
'table' => 'svc_pbx',
- 'edit_url' => $p."edit/svc_Common.html?svcdb=svc_pbx;svcnum=",
+ 'edit_url' => $p.'edit/svc_pbx.html?',
'labels' => \%labels,
'html_foot' => $html_foot,
)
@@ -18,6 +18,48 @@ my %labels = map { $_ => ( ref($fields->{$_})
my $html_foot = sub {
my $svc_pbx = shift;
+ ##
+ # Extensions
+ ##
+
+ my @pbx_extension = sort { $a->extension cmp $b->extension }
+ $svc_pbx->pbx_extension;
+
+ my $extensions = '';
+ if ( @pbx_extension ) {
+
+ $extensions .= 'Extensions'.
+ include('/elements/table-grid.html');
+ my $bgcolor1 = '#eeeeee';
+ my $bgcolor2 = '#ffffff';
+ my $bgcolor = '';
+
+ #$extensions .= '
+ #
+ # Ext |
+ # Name |
+ #
+ #';
+
+ foreach my $pbx_extension ( @pbx_extension ) {
+ if ( $bgcolor eq $bgcolor1 ) {
+ $bgcolor = $bgcolor2;
+ } else {
+ $bgcolor = $bgcolor1;
+ }
+
+ $extensions .= qq(
+
+ ). $pbx_extension->extension. qq(
+ | ). $pbx_extension->phone_name. qq(
+ |
+ );
+
+ }
+
+ $extensions .= '
';
+ }
+
##
# CDR links
##
@@ -29,7 +71,7 @@ my $html_foot = sub {
#matching as per package def cdr_svc_method
my $cust_pkg = $svc_pbx->cust_svc->cust_pkg;
- return '' unless $cust_pkg;
+ return $extensions unless $cust_pkg;
my @voip_pkgs =
grep { $_->plan eq 'voip_cdr' } $cust_pkg->part_pkg->self_and_bill_linked;
@@ -41,19 +83,21 @@ my $html_foot = sub {
}
my $voip_pkg = @voip_pkgs[0];
- my $cdr_svc_method = $voip_pkg->option('cdr_svc_method')
+ my $cdr_svc_method = ( $voip_pkg && $voip_pkg->option('cdr_svc_method') )
|| 'svc_phone.phonenum';
- return '' unless $cdr_svc_method =~ /^svc_pbx\.(\w+)$/;
+ return $extensions unless $cdr_svc_method =~ /^svc_pbx\.(.*)$/;
my $field = $1;
my $search;
if ( $field eq 'title' ) {
$search = 'charged_party='. uri_escape($svc_pbx->title);
+ } elsif ( $field =~ /^ip\.(\w+)$/ ) {
+ $search = "$1_ip_addr=". uri_escape($svc_pbx->title);
} elsif ( $field eq 'svcnum' ) {
$search = 'svcnum='. $svc_pbx->svcnum;
} else {
warn "unknown cdr_svc_method svc_pbx.$field";
- return '';
+ return $extensions
}
my @links = map {
@@ -65,6 +109,7 @@ my $html_foot = sub {
# concatenate & return
###
+ $extensions.
join(' | ', @links ). '
';
};