use utf8;
use warnings;
no warnings 'redefine';
use strict;
use Dbase::Globals qw(ipinfo);
use Dbase::Help qw(Do DoFn DoSelect);
use Fehler qw(problem);
use Loader qw(log_update);

sub delete_hostgroup($;$) {
	my ( $idi, $kn ) = @_;

	{
		my @hosts;
		DoSelect { push @hosts, ipinfo(shift) }
		"SELECT host FROM ip_hostgroup WHERE gruppe = $idi";
		return problem(
			join "\n",
			'Dieser Hostgroup '
			  . ( @hosts == 1 ? 'ist folgender Host' : 'sind folgende Hosts' )
			  . ' zugeordnet:',
			@hosts
		) if @hosts;
	}

	my ($kunde_id) = DoFn("SELECT kunde FROM hostgroup WHERE id = $idi");

	log_update(
		hostgroup =>
		  kunde => $kunde_id,
		undef,
		id => '-',
		undef, $idi
	);
	Do("DELETE FROM hostgroup WHERE id = $idi");

	log_update(
		kunde =>
		  id => $kunde_id,
		undef,
		hostgroup => '-',
		undef, $idi
	);

	Do(<<_);
	UPDATE kunde SET geaendert = UNIX_TIMESTAMP(NOW()) WHERE id = $kunde_id
_
}

1;
