#!/usr/local/bin/perl # edit_group_quota.cgi # Display a form for editing the quotas for a group on some filesystem require './quota-lib.pl'; &ReadParse(); $u = $in{'group'}; $fs = $in{'filesys'}; &can_edit_group($u) || &error(&text('egroup_eallowgr', $u)); $access{'ro'} && &error(&text('egroup_eallowgr', $u)); &can_edit_filesys($fs) || &error($text{'egroup_eallowfs'}); &ui_print_header(undef, $text{'egroup_title'}, "", "edit_group_quota"); @quot = &group_quota($u, $fs); $first = (@quot == 0); $bsize = &block_size($fs); $fsbsize = &block_size($fs, 1); print &ui_form_start("save_group_quota.cgi"); print &ui_hidden("group", $u); print &ui_hidden("filesys", $fs); print &ui_hidden("source", $in{'source'}); print &ui_table_start(&text('egroup_quotas', &html_escape($u), $fs), "width=100%", 4); # Soft block limit print &ui_table_row($bsize ? $text{'egroup_sklimit'} : $text{'egroup_sblimit'}, "a_input("sblocks", $quot[1], $bsize)); # Hard block limit print &ui_table_row($bsize ? $text{'egroup_hklimit'} : $text{'egroup_hblimit'}, "a_input("hblocks", $quot[2], $bsize)); # Space used if (!$first) { if ($bsize) { print &ui_table_row($text{'egroup_kused'}, &nice_size($quot[0]*$bsize)); } else { print &ui_table_row($text{'egroup_bused'}, $quot[0]); } } if ($access{'diskspace'}) { # Filesystem space ($binfo, $finfo) = &filesystem_info($fs, undef, undef, $fsbsize); print &ui_table_row($bsize ? $text{'euser_sdisk'} : $text{'euser_bdisk'}, $binfo); } print &ui_table_hr(); # Soft file limit print &ui_table_row($text{'egroup_sflimit'}, "a_input("sfiles", $quot[4])); # Hard file limit print &ui_table_row($text{'egroup_hflimit'}, "a_input("hfiles", $quot[5])); # Files used if (!$first) { print &ui_table_row($text{'egroup_fused'}, $quot[3]); } # Filesystem files if ($access{'diskspace'}) { print &ui_table_row($text{'euser_fdisk'}, $finfo); } print &ui_table_end(); print &ui_form_end([ [ undef, $text{'egroup_update'} ] ]); print &ui_hr(); print &ui_buttons_start(); print &ui_buttons_row("group_filesys.cgi", $text{'egroup_listall'}, $text{'egroup_listalldesc'}, &ui_hidden("group", $u)); print &ui_buttons_end(); if ($in{'source'}) { &ui_print_footer("group_filesys.cgi?group=".&urlize($u), $text{'egroup_freturn'}); } else { &ui_print_footer("list_groups.cgi?dir=".&urlize($fs), $text{'egroup_greturn'}); }