Kijavítottam a funkcionális hibákat, de a kód botrányos. Refaktor következik... :)