#!/usr/bin/perl

# Module Laden
use strict;
#use Getopt::Long;
use DBI;

my ($uid, $uidNum, $dn);

# Parameter mit GetOpt einlesen
#
#GetOptions(
#            "uid=s"       	=> \$uid,
#            "uidnumber=i"   => \$uidNum,
#            "dn=s"			=> \$dn,
#);

#Parameter von STDIN lesen
while(<STDIN>)
{
 my ( $key, $value ) = split / /,$_,2;
 chomp $value;

 if( $key =~ /^uid$/i )
 {
   $uid = $value;
 }
 elsif ( $key =~ /^uidnumber$/i)
 {
   $uidNum = $value;
 }
}

# Gruppenzugehrigkeit einlesen
chomp(my $gidNum = (`ldapsearch -x uidnumber=$uidNum | grep gidNumber`)); $gidNum =~ s/^.*\s//g;

if ($gidNum eq '502')
{
	# Result-Array definieren
	my @box_id = undef;

	# Datenbankname setzen
	my $dbname = "schule";

	# Querys definieren
	my $q_sel		= "SELECT box_id FROM kjs_zuo_box_user_teacher WHERE user_teacher_id = '$uidNum'";
	my $q_del_kut	= "DELETE FROM kjs_user_teacher WHERE teacher_id = '$uidNum'";

	# Datenbank-Verbindung aufbauen
	my $dbh = DBI->connect( 'dbi:mysql:'.$dbname, 'root', '')
			  || die "Kann keine Verbindung zum MySQL-Server aufbauen: $DBI::errstr\n";

	# Benutzer-Lernboxen abfragen
	my $sth1 = $dbh->prepare($q_sel); $sth1->execute();

	while ( @box_id = $sth1->fetchrow_array() )
	{
		# Lschqueries pro Lernbox definieren
		my $q_del_kbt 	= "DELETE FROM kjs_box_teacher WHERE box_id = '$box_id[0]'";
		my $q_del_kw	= "DELETE FROM kjs_when WHERE box_id = '$box_id[0]'";
		my $q_del_kl	= "DELETE FROM kjs_links WHERE box_id = '$box_id[0]'";
		my $q_del_kt	= "DELETE FROM kjs_tasks WHERE box_id = '$box_id[0]'";
		my $q_del_kzbu	= "DELETE FROM kjs_zuo_box_urlchecker WHERE box_id = '$box_id[0]'";
		my $q_del_kzbm	= "DELETE FROM kjs_zuo_box_mediatype WHERE box_id = '$box_id[0]'";
		my $q_del_kzbw	= "DELETE FROM kjs_zuo_box_workstation WHERE box_id = '$box_id[0]'";
		my $q_del_kzbut	= "DELETE FROM kjs_zuo_box_user_teacher WHERE box_id = '$box_id[0]'";

		# Lschqueries pro Lernbox absetzen
		my $sth2 = $dbh->prepare($q_del_kbt);	$sth2->execute(); $sth2->finish(); $sth2 = undef;
		$sth2 = $dbh->prepare($q_del_kw);		$sth2->execute(); $sth2->finish(); $sth2 = undef;
		$sth2 = $dbh->prepare($q_del_kl);		$sth2->execute(); $sth2->finish(); $sth2 = undef;
		$sth2 = $dbh->prepare($q_del_kt);		$sth2->execute(); $sth2->finish(); $sth2 = undef;
		$sth2 = $dbh->prepare($q_del_kzbu);		$sth2->execute(); $sth2->finish(); $sth2 = undef;
		$sth2 = $dbh->prepare($q_del_kzbm);		$sth2->execute(); $sth2->finish(); $sth2 = undef;
		$sth2 = $dbh->prepare($q_del_kzbw);		$sth2->execute(); $sth2->finish(); $sth2 = undef;
		$sth2 = $dbh->prepare($q_del_kzbut);	$sth2->execute(); $sth2->finish(); $sth2 = undef;
	}
	# Lschquery Benutzereintrag
	my $sth3 = $dbh->prepare($q_del_kut); $sth3->execute(); $sth3->finish(); $sth3 = undef;

	# Abfragehandle freigeben
	$sth1->finish();

	# Datenbank-Verbindung beenden
	$dbh->disconnect;

	exit 1;
}
else
{
	exit 0;
}