3 # Display zones matching some search
5 require './bind8-lib.pl';
8 @zones = &list_zone_names();
11 next if ($z->{'type'} eq 'view' ||
12 $v eq "." || !&can_edit_zone($z) ||
13 &arpa_to_ip($v) !~ /\Q$in{'search'}\E/i);
16 push(@zlinks, "edit_$t.cgi?index=$z->{'index'}".
17 "&view=$z->{'viewindex'}");
18 push(@ztitles, &ip6int_to_net(&arpa_to_ip($v))." ".
19 &text('index_view', "<tt>$z->{'view'}</tt>"));
20 push(@zdels, $z->{'index'}." ".$z->{'view'});
23 push(@zlinks, "edit_$t.cgi?index=$z->{'index'}");
24 push(@ztitles, &ip6int_to_net(&arpa_to_ip($v)));
25 push(@zdels, $z->{'index'});
27 push(@zicons, "images/$t.gif");
28 push(@ztypes, $text{"index_$t"});
32 &redirect($zlinks[0]);
36 &ui_print_header(undef, $text{'find_title'}, "");
37 print &text('find_match', "<tt>".&html_escape($in{'search'})."</tt>"),"<p>\n";
41 @zorder = sort { $ztitles[$a] cmp $ztitles[$b] } (0 .. $len-1);
42 @zlinks = map { $zlinks[$_] } @zorder;
43 @ztitles = map { $ztitles[$_] } @zorder;
44 @zicons = map { $zicons[$_] } @zorder;
45 @ztypes = map { $ztypes[$_] } @zorder;
46 @zdels = map { $zdels[$_] } @zorder;
48 if ($config{'show_list'}) {
50 $mid = int((@zlinks+1)/2);
51 print &ui_form_start("mass_delete.cgi", "post");
52 @links = ( &select_all_link("d", 0),
53 &select_invert_link("d", 0) );
54 print &ui_links_row(\@links);
56 push(@grid, &zones_table([ @zlinks[0 .. $mid-1] ],
57 [ @ztitles[0 .. $mid-1] ],
58 [ @ztypes[0 .. $mid-1] ],
59 [ @zdels[0 .. $mid-1] ] ));
61 push(@grid, &zones_table([ @zlinks[$mid .. $#zlinks] ],
62 [ @ztitles[$mid .. $#ztitles] ],
63 [ @ztypes[$mid .. $#ztypes] ],
64 [ @zdels[$mid .. $#zdels] ]));
66 print &ui_grid_table(\@grid, 2, 100,
67 [ "width=50%", "width=50%" ]);
68 print &ui_links_row(\@links);
69 print &ui_form_end([ [ "delete", $text{'index_massdelete'} ],
70 [ "update", $text{'index_massupdate'} ],
71 [ "create", $text{'index_masscreate'} ] ]);
75 &icons_table(\@zlinks, \@ztitles, \@zicons);
79 print "<b>$text{'find_none'}</b><p>\n";
82 &ui_print_footer("", $text{'index_return'});