diff options
Diffstat (limited to 'httemplate/view/cust_main/packages/services.html')
-rw-r--r-- | httemplate/view/cust_main/packages/services.html | 140 |
1 files changed, 140 insertions, 0 deletions
diff --git a/httemplate/view/cust_main/packages/services.html b/httemplate/view/cust_main/packages/services.html new file mode 100644 index 0000000..6e30922 --- /dev/null +++ b/httemplate/view/cust_main/packages/services.html @@ -0,0 +1,140 @@ +% ### +% # Services +% ### + + <TD CLASS="inv" BGCOLOR="<% $bgcolor %>"> + <TABLE CLASS="inv" BORDER=0 CELLSPACING=0 CELLPADDING=0 WIDTH="100%"> + +% #foreach my $svcpart (sort {$a->{svcpart} <=> $b->{svcpart}} @{$pkg->{svcparts}}) { +% foreach my $part_svc ( $cust_pkg->part_svc ) { + +% #foreach my $service (@{$svcpart->{services}}) { +% foreach my $cust_svc ( @{ $part_svc->cust_pkg_svc } ) { + + <TR> + <TD ALIGN="right" VALIGN="top"><% FS::UI::Web::svc_link($m, $part_svc, $cust_svc) %></TD> + <TD STYLE="padding-bottom:0px"><B><% FS::UI::Web::svc_label_link($m, $part_svc, $cust_svc) %></B></TD> + <TD><% FS::UI::Web::svc_export_links($m, $part_svc, $cust_svc) %></TD> + </TR> + + <TR> + <TD ALIGN="right" COLSPAN="3" VALIGN="top" STYLE="padding-bottom:1px;padding-top:0px"><FONT SIZE="-2" COLOR="#FFD000"> + + <% $cust_svc->overlimit ? "Overlimit: ". time2str('%b %o %Y' . ($opt{'cust_pkg-display_times'} ? ' %l:%M %P' : ''), $cust_svc->overlimit) : '' %> + </FONT></TD> + </TR> + + <TR> + <TD ALIGN="right" VALIGN="top" STYLE="padding-bottom:5px;padding-top:0px"><FONT SIZE="-2"> + +% if ( $curuser->access_right('Recharge customer service') +% && $part_svc->svcdb eq 'svc_acct' +% && ( $cust_svc->svc_x->seconds ne '' +% || $cust_svc->svc_x->upbytes ne '' +% || $cust_svc->svc_x->downbytes ne '' +% || $cust_svc->svc_x->totalbytes ne '' +% ) +% ) { + ( <%svc_recharge_link($cust_svc)%> ) +% } + </FONT></TD> + + <TD ALIGN="right" VALIGN="top" STYLE="padding-bottom:5px;padding-top:0px"> + +% my $ip_addr = $cust_svc->svc_x->ip_addr; + +% if ( $part_svc->svcdb eq 'svc_broadband' ) { + <FONT SIZE="-1" STYLE="float:left">( <% include('/elements/popup_link-ping.html', 'ip'=> $ip_addr ) %> )</FONT> + +% } + +% my $manage_link = $opt{'svc_broadband-manage_link'}; +% if ( $manage_link && $part_svc->svcdb eq 'svc_broadband' ) { +% my $svc_manage_link = eval(qq("$manage_link")); + <FONT SIZE="-1" STYLE="float:left">( <A HREF="<% $svc_manage_link %>">Manage Device</A> )</FONT> + +% } + +% if ( $curuser->access_right('Unprovision customer service') ) { + <FONT SIZE="-2">( <%svc_unprovision_link($cust_svc)%> )</FONT> +% } + +% if ( $part_svc->svcdb eq 'svc_pbx' && $opt{'maestro-status_test'} ){ + <FONT SIZE="-2">( <A HREF="<% $p %>misc/maestro-customer_status-test.html?<% $cust_pkg->custnum.'+'.$cust_svc->svcnum %>">Test maestro status</A> )</FONT> +% } + + </TD> + </TR> +% } + +% if ( ! $cust_pkg->get('cancel') +% && $curuser->access_right('Provision customer service') +% && $part_svc->num_avail +% ) { + + <TR> + <TD COLSPAN=3 ALIGN="center" STYLE="padding-bottom:4px;padding-top:0px"> + <B><% svc_provision_link($cust_pkg, $part_svc, \%opt, $curuser) %></B> + </TD> + </TR> + +% } + +% } + + </TABLE> + </TD> + +<%init> + +my %opt = @_; + +my $bgcolor = $opt{'bgcolor'}; +my $cust_pkg = $opt{'cust_pkg'}; +my $part_pkg = $opt{'part_pkg'}; +my $curuser = $FS::CurrentUser::CurrentUser; + +my $conf = new FS::Conf; + +sub svc_provision_link { + my ($cust_pkg, $part_svc, $opt, $curuser) = @_; + ( my $svc_nbsp = $part_svc->svc ) =~ s/\s+/ /g; + my $num_avail = $part_svc->num_avail; + my $pkgnum_svcpart = "pkgnum=". $cust_pkg->pkgnum. ';'. + "svcpart=". $part_svc->svcpart; + my $url; + if ( $part_svc->svcdb eq 'svc_external' #could be generalized + && $opt->{'svc_external-skip_manual'} + ) { + $url = "${p}edit/process/". $part_svc->svcdb. ".cgi?$pkgnum_svcpart"; + } else { + $url = svc_url( + 'm' => $m, + 'action' => 'edit', + 'part_svc' => $part_svc, + 'query' => $pkgnum_svcpart, + ); + #$url = "${p}edit/$svcpart->{svcdb}.cgi?$pkgnum_svcpart"; + } + + my $link = qq!<A CLASS="provision" HREF="$url">!. + "Provision $svc_nbsp ($num_avail)</A>"; + if ( $opt->{'legacy_link'} + && $curuser->access_right('View/link unlinked services') + ) + { + $link .= '<BR>'. + qq!<A CLASS="provision" HREF="${p}misc/link.cgi?!. + qq!$pkgnum_svcpart">!. + "Link to legacy $svc_nbsp ($num_avail)</A>"; + } + $link; +} + +sub svc_unprovision_link { + my $cust_svc = shift or return ''; + qq!<A HREF="javascript:areyousure('${p}misc/unprovision.cgi?!. $cust_svc->svcnum. + qq!', 'Permanently unprovision and delete this service?')">Unprovision</A>!; +} + +</%init> |