3 # Display a form for editing the quotas for a group on some filesystem
5 require './quota-lib.pl';
7 $u = $in{'group'}; $fs = $in{'filesys'};
9 &error(&text('egroup_eallowgr', $u));
10 $access{'ro'} && &error(&text('egroup_eallowgr', $u));
11 &can_edit_filesys($fs) ||
12 &error($text{'egroup_eallowfs'});
13 &ui_print_header(undef, $text{'egroup_title'}, "", "edit_group_quota");
15 @quot = &group_quota($u, $fs);
16 $first = (@quot == 0);
17 $bsize = &block_size($fs);
18 $fsbsize = &block_size($fs, 1);
20 print &ui_form_start("save_group_quota.cgi");
21 print &ui_hidden("group", $u);
22 print &ui_hidden("filesys", $fs);
23 print &ui_hidden("source", $in{'source'});
24 print &ui_table_start(&text('egroup_quotas', &html_escape($u), $fs),
28 print &ui_table_row($bsize ? $text{'egroup_sklimit'} : $text{'egroup_sblimit'},
29 "a_input("sblocks", $quot[1], $bsize));
32 print &ui_table_row($bsize ? $text{'egroup_hklimit'} : $text{'egroup_hblimit'},
33 "a_input("hblocks", $quot[2], $bsize));
38 print &ui_table_row($text{'egroup_kused'},
39 &nice_size($quot[0]*$bsize));
42 print &ui_table_row($text{'egroup_bused'},
47 if ($access{'diskspace'}) {
49 ($binfo, $finfo) = &filesystem_info($fs, undef, undef, $fsbsize);
50 print &ui_table_row($bsize ? $text{'euser_sdisk'}
51 : $text{'euser_bdisk'}, $binfo);
57 print &ui_table_row($text{'egroup_sflimit'},
58 "a_input("sfiles", $quot[4]));
61 print &ui_table_row($text{'egroup_hflimit'},
62 "a_input("hfiles", $quot[5]));
66 print &ui_table_row($text{'egroup_fused'}, $quot[3]);
70 if ($access{'diskspace'}) {
71 print &ui_table_row($text{'euser_fdisk'}, $finfo);
74 print &ui_table_end();
75 print &ui_form_end([ [ undef, $text{'egroup_update'} ] ]);
78 print &ui_buttons_start();
79 print &ui_buttons_row("group_filesys.cgi", $text{'egroup_listall'},
80 $text{'egroup_listalldesc'},
81 &ui_hidden("group", $u));
82 print &ui_buttons_end();
85 &ui_print_footer("group_filesys.cgi?group=".&urlize($u),
86 $text{'egroup_freturn'});
89 &ui_print_footer("list_groups.cgi?dir=".&urlize($fs),
90 $text{'egroup_greturn'});