2 # Show the details of one client
4 require './bacula-backup-lib.pl';
6 $conf = &get_director_config();
7 @clients = &find("Client", $conf);
8 @catalogs = map { $n=&find_value("Name", $_->{'members'}) }
9 &find("Catalog", $conf);
11 &ui_print_header(undef, $text{'client_title1'}, "");
12 $mems = [ { 'name' => 'FDPort',
14 { 'name' => 'Catalog',
15 'value' => $catalogs[0] },
16 { 'name' => 'File Retention',
17 'value' => '30 days' },
18 { 'name' => 'Job Retention',
19 'value' => '6 months' },
21 $client = { 'members' => $mems };
24 &ui_print_header(undef, $text{'client_title2'}, "");
25 $client = &find_by("Name", $in{'name'}, \@clients);
26 $client || &error($text{'client_egone'});
27 $mems = $client->{'members'};
31 print &ui_form_start("save_client.cgi", "post");
32 print &ui_hidden("new", $in{'new'}),"\n";
33 print &ui_hidden("old", $in{'name'}),"\n";
34 print &ui_table_start($text{'client_header'}, "width=100%", 4);
37 print &ui_table_row($text{'client_name'},
38 &ui_textbox("name", $name=&find_value("Name", $mems), 40), 3);
41 print &ui_table_row($text{'client_pass'},
42 &ui_textbox("pass", $pass=&find_value("Password", $mems), 60), 3);
45 print &ui_table_row($text{'client_address'},
46 &ui_textbox("address", $address=&find_value("Address", $mems), 20));
47 print &ui_table_row($text{'client_port'},
48 &ui_textbox("port", $port=&find_value("FDPort", $mems), 6));
51 print &ui_table_row($text{'client_catalog'},
52 &ui_select("catalog", $catalog=&find_value("Catalog", $mems),
53 [ map { [ $_ ] } @catalogs ], 1, 0, 1));
56 $prune = &find_value("AutoPrune", $mems);
57 print &ui_table_row($text{'client_prune'},
58 &ui_radio("prune", $prune,
59 [ [ "yes", $text{'yes'} ], [ "no", $text{'no'} ],
60 [ "", $text{'default'} ] ]));
63 $fileret = &find_value("File Retention", $mems);
64 print &ui_table_row($text{'client_fileret'},
65 &show_period_input("fileret", $fileret));
66 $jobret = &find_value("Job Retention", $mems);
67 print &ui_table_row($text{'client_jobret'},
68 &show_period_input("jobret", $jobret));
71 &show_tls_directives($client);
74 print &ui_table_end();
76 print &ui_form_end([ [ "create", $text{'create'} ] ]);
79 print &ui_form_end([ [ "save", $text{'save'} ],
80 [ "status", $text{'client_status'} ],
81 [ "delete", $text{'delete'} ] ]);
83 &ui_print_footer("list_clients.cgi", $text{'clients_return'});