diff options
author | Mark Wells <mark@freeside.biz> | 2012-11-29 22:03:29 -0800 |
---|---|---|
committer | Mark Wells <mark@freeside.biz> | 2012-11-29 22:03:29 -0800 |
commit | a2a69f909cad813d7164bae805e87f5874a9fdae (patch) | |
tree | 29e426af02eb03106e55507103fc90f92fa55f61 /httemplate/edit/elements/part_export | |
parent | 226fffec6fd0154ea8798b58321d4d119341879f (diff) |
broadband_snmp export: better MIB selection
Diffstat (limited to 'httemplate/edit/elements/part_export')
-rw-r--r-- | httemplate/edit/elements/part_export/broadband_snmp.html | 100 | ||||
-rw-r--r-- | httemplate/edit/elements/part_export/foot.html | 6 | ||||
-rw-r--r-- | httemplate/edit/elements/part_export/head.html | 19 |
3 files changed, 125 insertions, 0 deletions
diff --git a/httemplate/edit/elements/part_export/broadband_snmp.html b/httemplate/edit/elements/part_export/broadband_snmp.html new file mode 100644 index 000000000..8df0b8e02 --- /dev/null +++ b/httemplate/edit/elements/part_export/broadband_snmp.html @@ -0,0 +1,100 @@ +<%doc> +</%doc> +<& head.html, %opt &> +<INPUT TYPE="hidden" NAME="options" VALUE="community,version,ip_addr_change_to_new,timeout"> +<& /elements/tr-select.html, + label => 'SNMP version', + field => 'version', + options => [ '', 'v1', 'v2c' ], + labels => { v1 => '1', v2c => '2c' }, + curr_value => $part_export->option('version') &> +<& /elements/tr-input-text.html, + label => 'Community', + field => 'community', + curr_value => $part_export->option('community'), +&> +<& /elements/tr-checkbox.html, + label => 'Send IP address changes to new address', + field => 'ip_addr_change_to_new', + value => 1, + curr_value => $part_export->option('ip_addr_change_to_new'), +&> +<& /elements/tr-input-text.html, + label => 'Timeout (seconds)', + field => 'timeout', + curr_value => $part_export->option('timeout'), +&> +</TABLE> +<script type="text/javascript"> +function open_select_mib(obj) { + nd(1); // if there's already one open, close it + var rownum = obj.rownum; + var curr_oid = obj.value || ''; + var url = '<%$fsurl%>/elements/select-mib-popup.html?' + + 'callback=receive_mib;' + + 'arg=' + rownum + + ';curr_value=' + curr_oid; + overlib( + OLiframeContent(url, 550, 450, '<% $popup_name %>', 0, 'auto'), + CAPTION, 'Select MIB object', STICKY, AUTOSTATUSCAP, + MIDX, 0, MIDY, 0, DRAGGABLE, CLOSECLICK, + BGCOLOR, '#333399', CGCOLOR, '#333399', + CLOSETEXT, 'Close' + ); +} +function receive_mib(obj, rownum) { + //console.log(JSON.stringify(obj)); + // we don't really need the numeric OID or any of the other properties + document.getElementById('oid'+rownum).value = obj.fullname; + document.getElementById('datatype'+rownum).innerHTML = obj.type; +} +</script> + +<table bgcolor="#cccccc" border=0 cellspacing=3> +<TR> + <TH>Action</TH> + <TH>Object</TH> + <TH>Type</TH> + <TH>Value</TH> +</TR> +<TR id="mytemplate"> + <TD> + <SELECT NAME="action"> +% foreach ('', qw(insert delete replace suspend unsuspend)) { + <OPTION VALUE="<%$_%>"><%$_%></OPTION> +% } + </SELECT> + </TD> + <TD> + <INPUT NAME="oid" ID="oid" SIZE="60" onclick="open_select_mib(this)"> + </TD> + <TD> + <SPAN ID="datatype"></SPAN> + </TD> + <TD> + <INPUT NAME="value" ID="value"> + </TD> +</TR> +<& /elements/auto-table.html, + template_row => 'mytemplate', + fieldorder => ['action', 'oid', 'value'], + data => \@data, +&> +<INPUT TYPE="hidden" NAME="multi_options" VALUE="action,oid,value"> +<& foot.html, %opt &> +<%init> +my %opt = @_; +my $part_export = $opt{part_export} || FS::part_export->new; + +my @actions = split("\n", $part_export->option('action')); +my @oids = split("\n", $part_export->option('oid')); +my @values = split("\n", $part_export->option('value')); + +my @data; +while (@actions or @oids or @values) { + my @thisrow = (shift(@actions), shift(@oids), shift(@values)); + push @data, \@thisrow if grep length($_), @thisrow; +} + +my $popup_name = 'popup-'.time."-$$-".rand() * 2**32; +</%init> diff --git a/httemplate/edit/elements/part_export/foot.html b/httemplate/edit/elements/part_export/foot.html new file mode 100644 index 000000000..9cb8073ce --- /dev/null +++ b/httemplate/edit/elements/part_export/foot.html @@ -0,0 +1,6 @@ +</TABLE> +<INPUT TYPE="hidden" NAME="nodomain" VALUE="<% $opt{export_info}{nodomain} %>"> +<INPUT TYPE="submit" VALUE="<% $opt{part_export}->exportnum ? 'Apply changes' : 'Add export' %>"> +<%init> +my %opt = @_; +</%init> diff --git a/httemplate/edit/elements/part_export/head.html b/httemplate/edit/elements/part_export/head.html new file mode 100644 index 000000000..cb0ab894a --- /dev/null +++ b/httemplate/edit/elements/part_export/head.html @@ -0,0 +1,19 @@ +% if ( $export_info->{no_machine} ) { +<INPUT TYPE="hidden" NAME="machine" VALUE=""> +<INPUT TYPE="hidden" NAME="svc_machine" VALUE="N"> +% } else { +% # clone this from edit/part_export.cgi if this case ever gets used +% } +<INPUT TYPE="hidden" NAME="exporttype" VALUE="<%$layer |h%>"> +<% ntable('cccccc', 2) %> +<TR> + <TD ALIGN="right" ><% emt('Description') %></TD> + <TD BGCOLOR="#ffffff" WIDTH="600"><% $notes %></TD> +</TR> +<%init> +my %opt = @_; +my $layer = $opt{layer}; +my $part_export = $opt{part_export}; +my $export_info = $opt{export_info}; +my $notes = $opt{notes} || $export_info->{notes}; +</%init> |