3 # A form for creating a new slave or stub zone
5 require './bind8-lib.pl';
6 $type = ($0 =~ /slave_form/);
7 $access{'slave'} || &error($type ? $text{'screate_ecannot1'}
8 : $text{'screate_ecannot2'});
10 &ui_print_header(undef, $type ? $text{'screate_title1'}
11 : $text{'screate_title2'}, "",
12 undef, undef, undef, undef, &restart_links());
15 print &ui_form_start("create_slave.cgi", "post");
16 print &ui_hidden("type", $type);
17 print &ui_table_start($type ? $text{'screate_header1'}
18 : $text{'screate_header2'}, "width=100%", 4);
21 print &ui_table_row($text{'screate_type'},
22 &ui_radio("rev", 0, [ [ 0, $text{'screate_fwd'} ],
23 [ 1, $text{'screate_rev'} ] ]), 3);
26 print &ui_table_row($text{'screate_dom'},
27 &ui_textbox("zone", undef, 60), 3);
30 @views = &find("view", $conf);
32 ($defview) = grep { lc($_->{'values'}->[0]) eq
33 lc($config{'default_view'}) } @views;
34 print &ui_table_row($text{'mcreate_view'},
35 &ui_select("view", $defview ? $defview->{'index'} : undef,
36 [ map { [ $_->{'index'}, $_->{'values'}->[0] ] }
37 grep { &can_edit_view($_) } @views ]), 3);
41 print &ui_table_row($text{'slave_file'},
42 &ui_radio("file_def", 2, [ [ 1, $text{'slave_none'} ],
43 [ 2, $text{'slave_auto'} ],
44 [ 0, &ui_filebox("file", undef, 30) ] ]), 3);
47 print &ui_table_row($text{'slave_masters'},
48 &ui_textarea("masters",
49 join("\n", split(/\s+/, $config{'default_master'})),
53 print &ui_table_row($text{'slave_masterport'},
54 &ui_opt_textbox("port", undef, 5, $text{'default'},
55 $text{'slave_master_port'}));
57 # Create on slave servers?
58 @servers = grep { $_->{'sec'} } &list_slave_servers();
59 if (@servers && $access{'remote'}) {
60 print &ui_table_row($text{'master_onslave'},
61 &ui_yesno_radio("onslave", 1));
64 print &ui_table_end();
65 print &ui_form_end([ [ undef, $text{'create'} ] ]);
67 &ui_print_footer("", $text{'index_return'});