{ rightname=>'Broadband configuration' },
{ rightname=>'Broadband global configuration', global=>1 },
+
+ { rightname=> 'Configure network monitoring', global=>1 },
#{ rightname=>'Edit employees', global=>1, },
#{ rightname=>'Edit employee groupss', global=>1, },
}
sub add_router {
- my($self, $ip) = @_;
+ my($self, $ip, $community) = @_;
+
+ $community = qq!<param name="snmp-community" value="$community"/>\n !
+ if length($community) > 1;
my $newhost =
qq( <host>\n).
- qq( <param name="snmp-host" value="$ip"/>\n).
+ qq( <param name="snmp-host" value="$ip"/>\n).$community.
qq( </host>\n);
my $ddx = $self->_torrus_loadddx;
],
}
-if ( $conf->config('network_monitoring_system') eq 'Torrus_Internal' ) {
+if ( $conf->config('network_monitoring_system') eq 'Torrus_Internal' &&
+ $curuser->access_right('Configure network monitoring') ) {
$menu{'Network Main'} =
[ $fsurl.'torrus/main', 'Network monitoring start page' ],
}
)
%>
<BR>
+SNMP Community String (optional)
+<% include('/elements/input-text.html',
+ 'field' => 'community',
+ )
+%>
+<BR>
+<BR>
<INPUT TYPE="submit" NAME="submit" ID="submit_nms-add_router" VALUE="Add Router">
</FORM>
</BODY></HTML>
<%init>
-# XXX: access rights
+die "access denied"
+ unless $FS::CurrentUser::CurrentUser->access_right('Configure network monitoring');
my $host = $cgi->param('host');
die 'invalid host' unless $host =~ /^[0-9.a-zA-Z\-]+$/;
</BODY></HTML>
<%init>
-# XXX: access rights
+die "access denied"
+ unless $FS::CurrentUser::CurrentUser->access_right('Configure network monitoring');
my $host = $cgi->param('host');
die 'invalid host' unless $host =~ /^[0-9.a-zA-Z\-]+$/;
+my $community = $cgi->param('community');
+die 'invalid SNMP community string' unless $community =~ /^[0-9.a-zA-Z\-]*$/;
+
my $nms = new FS::NetworkMonitoringSystem;
-$nms->add_router($host);
+$nms->add_router($host,$community);
</%init>