X-Git-Url: http://git.freeside.biz/gitweb/?p=freeside.git;a=blobdiff_plain;f=torrus%2Fperllib%2FTorrus%2FRenderer%2FHTML.pm;h=1408b7f64a30b0e2727da9b055af781f46c7a371;hp=e9f72acf0b682d4737f01c0f640675a0faaf7281;hb=7ad2a279a763e2d74612e0d164f036a80148bbcd;hpb=74e058c8a010ef6feb539248a550d0bb169c1e94 diff --git a/torrus/perllib/Torrus/Renderer/HTML.pm b/torrus/perllib/Torrus/Renderer/HTML.pm index e9f72acf0..1408b7f64 100644 --- a/torrus/perllib/Torrus/Renderer/HTML.pm +++ b/torrus/perllib/Torrus/Renderer/HTML.pm @@ -14,7 +14,7 @@ # along with this program; if not, write to the Free Software # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA. -# $Id: HTML.pm,v 1.1 2010-12-27 00:03:44 ivan Exp $ +# $Id: HTML.pm,v 1.9 2011-02-27 19:08:12 ivan Exp $ # Stanislav Sinyagin package Torrus::Renderer::HTML; @@ -112,7 +112,67 @@ sub render_html 'verifyDate' => sub { return verifyDate($_[0]); }, 'markup' => sub{ return $self->translateMarkup( @_ ); }, 'searchEnabled' => $Torrus::Renderer::searchEnabled, - 'searchResults' => sub { return $self->doSearch($config_tree, $_[0]); } + 'searchResults' => sub { return $self->doSearch($config_tree, $_[0]); }, + + #Freeside + 'freesideHeader' => sub { return $self->freesideHeader(@_); }, + 'freesideFooter' => sub { return $self->freesideFooter(); }, + 'freesideComponent' => sub { return $self->freesideComponent(@_); }, + 'uri_escape' => sub { return uri_escape(@_); }, + 'matches' => sub { return $_[0] =~ $_[1]; }, + 'slash2underscore' => sub { $_[0] =~ s/\//_/g; return $_[0]; }, + 'load_nms' => sub { return $self->load_nms; }, + 'get_serviceids' => sub { my $nms = shift; + my $router = shift; + return $nms->get_router_serviceids($router); + }, + 'popup_link' => sub { + my $type = shift; + + if($type eq 'nms-add_iface.html') { + my $host = shift; + my $iface = shift; + my $nms = shift; + my $serviceids = shift; + my $svc_port = ''; + + if ( $serviceids && $serviceids->{$iface} ) { + + my $svc_port = $nms->find_svc($serviceids->{$iface}) + + if ($svc_port) { + my $url = $Torrus::Freeside::FSURL. + "/view/svc_port.cgi?".$svc_port->svcnum; + return "View Service"; + } else { + return 'Monitored as '. $serviceids->{$iface}. + '; customer service not yet provisioned'; + } + + } else { + + return + $self->freesideComponent('/elements/popup_link.html', + 'action' => "/freeside/misc/". + $type."?host=$host;iface=$iface", + 'label' => 'Monitor for billing', + 'actionlabel' => 'Monitor interface', + ); + + } + + } elsif ($type eq 'nms-add_router.html') { + return + $self->freesideComponent('/elements/popup_link.html', + 'action' => "/freeside/misc/$type", + 'label' => 'Add Router', + 'actionlabel' => 'Add Router', + ); + } + + ''; + }, + };