+ my $uid = POSIX::getuid;
+ my $gid = POSIX::getgid;
+
+ $tpl->parse_if_block('users',1);
+
+ # ID's of user and group
+
+ $tpl->fillin('UID',$uid);
+ $tpl->fillin('GID',$gid);
+
+ # Names of user and group
+
+ if(my $user = getpwuid($uid))
+ {
+ $tpl->fillin('USER',encode_entities($user));
+ $tpl->parse_if_block('user_detected',1);
+ }
+ else
+ {
+ $tpl->parse_if_block('user_detected',0);
+ }
+
+ if(my $group = getgrgid($gid))
+ {
+ $tpl->fillin('GROUP',encode_entities($group));
+ $tpl->parse_if_block('group_detected',1);
+ }
+ else
+ {
+ $tpl->parse_if_block('group_detected',0);
+ }
+
+ # Process umask
+
+ $tpl->fillin('UMASK',sprintf('%04o',umask));
+ }
+ else
+ {
+ $tpl->parse_if_block('users',0);
+ }
+
+ my $output = header(-type => 'text/html');
+ $output .= $tpl->get_template;
+
+ return \$output;