=head1 set_zustand_status

Setzt den Status- bzw. Infotext für einen Zustandsübergang.

=head2 Argumente

=over 4

=item $typ

Tabelle.

=item $id

ID des Eintrags.

=item $kn

Standard-Prompt.

=item $tkn

Textform des Tabellennamens ("Domain").

Default: C<ucfirst($typ)>.

=back

=head2 Ergebnis

Nix.

=cut

use utf8;
use warnings; no warnings "redefine";
use strict;
use Dbase::Help qw(Do DoFn qquote);
use Dbase::Globals qw(content def_or_minus);
use Loader qw(log_update line_in line_add);

sub set_zustand_status($$;$$) {
	my($typ,$id,$kn,$tkn) = @_;
	$tkn = ucfirst($typ) unless defined $tkn;

	my $otxt = def_or_minus(DoFn("select statusinfo from ${typ}zustand where id=$id"));
	line_add($otxt);
	
	content ( my $ntxt = line_in "Status/Infotext: " ) or return;

	my($von,$mail) = DoFn("select von,erkannt from ${typ}zustand where id=$id");

	log_update("${typ}zustand","von",$von,"mail",$mail,undef,"statusinfo",undef,$otxt);
	Do("update ${typ}zustand set statusinfo=${\qquote $ntxt,1} where id=$id");
	$id;
}
1;
