diff --git a/shorewall/shorewall-lib.pl b/shorewall/shorewall-lib.pl
index ed62cb556..59a348d60 100755
--- a/shorewall/shorewall-lib.pl
+++ b/shorewall/shorewall-lib.pl
@@ -1280,39 +1280,31 @@ return @rv;
sub nat_form
{
-print "
| $text{'nat_0'} | \n";
-print " | \n";
+print &ui_table_row($text{'nat_0'},
+ &ui_textbox("nat", $_[0], 15));
-print "$text{'nat_1'} | \n";
-print "";
if (&version_atleast(1, 3, 14)) {
- local ($iface, $virt) = split(/:/, $_[1]);
- print &iface_field("iface", $iface);
- print "$text{'nat_virt'}\n";
- print "\n";
- print " |
\n";
+ my ($iface, $virt) = split(/:/, $_[1]);
+ print &ui_table_row($text{'nat_1'},
+ &iface_field("iface", $iface)." ".
+ "$text{'nat_virt'}\n".
+ &ui_textbox("virt", $virt, 3));
}
else {
- print &iface_field("iface", $_[1]);
- print " \n";
+ print &ui_table_row($text{'nat_1'},
+ &iface_field("iface", $_[1]));
}
-print " | $text{'nat_2'} | \n";
-print " |
\n";
+print &ui_table_row($text{'nat_2'},
+ &ui_textbox("int", $_[2], 15));
-local $all = $_[3] eq '-' || $_[3] eq '' || $_[3] =~ /yes/i;
-print " | $text{'nat_all'} | \n";
-printf " %s\n",
- $all ? "checked" : "", $text{'yes'};
-printf " %s | \n",
- $all ? "" : "checked", $text{'no'};
+my $all = $_[3] eq '-' || $_[3] eq '' || $_[3] =~ /yes/i ? 1 : 0;
+print &ui_table_row($text{'nat_all'},
+ &ui_yesno_radio("all", $all));
-local $local = $_[4] =~ /yes/i;
-print "$text{'nat_local'} | \n";
-printf " %s\n",
- $local ? "checked" : "", $text{'yes'};
-printf " %s |
\n",
- $local ? "" : "checked", $text{'no'};
+my $local = $_[4] =~ /yes/i ? 1 : 0;
+print &ui_table_row($text{'nat_local'},
+ &ui_yesno_radio("local", $local));
}
sub nat_validate