Buenos dias. Tengo un pequeño problema con el cierre de una página mediante javascript (Seguro que es una tonteria)

La página en cuestión sirve para pasar el código de activación de usuario en un proceso de registro. Se contemplan varias posibilidades dependiendo de las condiciones y se abren dos posibles páginas diferentes "home" o "registro_pregunta", todo funciona bien pero lo que deseo es que, una vez efectuado el proceso de abrir las paginas (mediante window.open), me cierre la ventana de origen. Ahora se quedan las dos ventanas abiertas. He estado mirando por ahí y no he encontrado nada que me ayude a resolver el problema

Os pongo el código (disculpad por la longitud) para ver si podéis ayudarme.
Código:
Muchas gracias por anticipado<?php session_start(); error_reporting(E_ALL); ini_set("display_errors", 1); // Llamo las variables de conexión a DB require_once ('../recor/LoginDB.php'); // Abro conexión y selecciono la base de datos $connection = mysql_connect($host, $user, $pass) or die ("Unable to connect!"); mysql_select_db($db) or die ("Unable to select database!"); //Activamos el ususario //Recuperamos el código de activación y depuramos frente a SQLInjection if (isset($_GET['codigo'])) { $codeACT = $_GET['codigo']; $codeACT = stripslashes($codeACT); //Comprobamos que el codigo recibido existe en la BBDD $queryCHECK = mysql_query("SELECT `codigoACT` FROM `personas` WHERE `codigoACT`=$codeACT"); $num_rows = mysql_num_rows($queryCHECK); switch ($num_rows) { //Si el código no existe derivamos a registro de nuevo case 0: ?> <script language=javascript> function ventanaSecundaria (URL){ window.open(URL,"ventana1") } ventanaSecundaria("../Registro_pregunta.php"); window.close() echo "Código no existe"; </script> <?php break; //Si existe case 1: //Verificamos que el usuario no ha sido activado con anterioridad $queryCHECKACT = mysql_query("SELECT `activo` FROM `personas` WHERE `codigoACT`=$codeACT"); while ($row = mysql_fetch_array($queryCHECKACT, MYSQL_NUM)) { $CheckAct = $row [0]; } switch ($CheckAct) { //Si no está activo case 0; //Cambiamos el valor 0=desactivado por valor 1=activado $activo="1"; //Activamos el usuario $queryACT = "UPDATE personas SET `activo`=$activo Where `codigoACT`=$codeACT"; mysql_query($queryACT) or die(mysql_error()); //Seleccionamos las variables de sesion $queryVarSes = "SELECT `TipoColaborador`,`TipoAdministrador`,`activo`,`silverUser`,`goldUser` FROM `personas` WHERE `codigoACT`=$codeACT"; $VarSes = mysql_query($queryVarSes); while ($row = mysql_fetch_array($VarSes, MYSQL_NUM)) { $TipoColaborador = $row [0]; $TipoAdministrador = $row [1]; $activo = $row [2]; $silverUser = $row [3]; $goldUser = $row [4]; } //Registramos las variables de sesión $_SESSION["TipoColaborador"]= $TipoColaborador; $_SESSION["TipoAdministrador"]= $TipoAdministrador; $_SESSION["activo"]=$activo; $_SESSION["silverUser"]= $silverUser; $_SESSION["goldUser"]= $goldUser; //Y vamos a la página de inicio ?> <script language=javascript> function ventanaSecundaria2 (URL){ window.open(URL,"ventana2") } ventanaSecundaria2("../home.php"); window.close() </script> <?php break 2; case 1: //Si el usuario ya está activo lo derivamos a la página de registro ?> <script language=javascript> function ventanaSecundaria3 (URL){ window.open(URL,"ventana3") } ventanaSecundaria3("../Registro_pregunta.php"); window.close() </script> <?php break 2; } } }else { //En cualquier otro caso lo derivamos a registro ?> <script language=javascript> function ventanaSecundaria3 (URL){ window.open(URL,"ventana3") } ventanaSecundaria3("../Registro_pregunta.php"); window.close() </script> <?php } ?> <script language="javascript"> function CloseWin(){ window.opener = top ; window.close(); } </script>
