use utf8;
use warnings; no warnings "redefine";
use strict;
use Dbase::Globals qw(bignum find_descr);
use Dbase::Help qw(DoFn);
use Loader qw(current_user);

sub show_person_pw($;$) {
	my($pers,$kn) = @_;

	my $knd = DoFn("select kunde from person where person.id = $pers");
	if($knd == 1 and $pers != current_user()) {
		my $fl = find_descr("pwdomain","verwaltung");
		if($fl and not((bignum(1)<<$fl) & DoFn("select pwuse from person where id = ".current_user()))) {
			warn "Du kannst nicht das PW eines anderen Mitarbeiters ansehen!\n";
			return undef;
		}
	}
	my $pw = DoFn("select pass from person where id = $pers");
	if($pw ne "") {
		print "[A                                                             \r    $pw\rPW:";
		system("stty -echo"); my $xpw = <>; system("stty echo");
		local($|)=1;
		print " ","*"x(length $pw),"\r"," "x(4+length $pw)."\r";
	} else {
		print "[A                                                             \rKein Passwort gesetzt.\n";
	}
}
1;
