//Almacena referencias a frames
var framePointer = new Array();

/*
* Escribe una referencia a frame en el array framePointer
*
* Parámetros:
*	- name: nombre bajo el que se almacenará la referencia || String
*	- obj: frame || Objeto window
*/
function setFramePointer(name,obj){
	framePointer[name] = obj;
}

/*
* Devuelve una referencia a un frame almacenada en el array framePointer
*
* Parámetros:
*	- name: nombre bajo el que se ha almacenado la referencia || String
*/
function getFramePointer(name){
	return framePointer[name];
}	

/*
* Recorre recursivamente un frameset hasta encontrar un frame concreto.
*
* Parámetros:
*	- name: nombre del frame a buscar || String
*	- win: ventana en la que iniciar la búsqueda. || Objeto window || Optativo con valor por defecto window.top
*
* Retorno:
*	- objeto window: si se encuentra el frame
*	- booleano false: si no se encuentra
*/
function getFrame(name,win){

	var frms = (win!=null && win!='undefined') ? win.frames : top.window.frames;
	var found = false;
	for (var i=frms.length;i--;){
		if (frms[i].name==name) {
			found = frms[i];
			break;
		}
		else {
			found = getFrame(name,frms[i]);
			if (found) break;
		}
	}

	return found;
}

