//------------------------------------------------------------------------------
// (C)opyright 2002 by Stephan Klein
//------------------------------------------------------------------------------

// TODO: evtl beide CheckFrames* funktionen zusammenlegen (z.B. wenn URL != '' 
//		 lad das ansonsten NAmen errechnen.

//------------------------------------------------------------------------------
// CheckFrames(URL)
//
//		Überprüft, ob das Dokument im richtigen Frameset ist. Falls nicht wird 
//		die angegebene URL in das Fenster geladen und der korrekte Frameset 
//		wieder hergestellt.
//------------------------------------------------------------------------------
function CheckFramesURL(URL)
{	var ValidFrame = true;

	// Gallery Updates per XP-Uploads ohne Frames zulassen
	if (window.location.href.indexOf("publishxp") != -1)
		return;
	
	if (self == top)
		ValidFrame = false;
	else
	{	// letzten Frame nicht auswerten, da Zugriff im IE nicht
		// erlaubt, wenn Seite auf externem Server liegt! (z.B. Shop und Guestbook)
		for (i = 0; i < top.frames.length - 1; i++)
		{	if (top.frames[i].name.substr(0,10) != "dernekamp_")
				ValidFrame = false;
		}
	}
	
	if (ValidFrame == false)
		window.location.replace(URL);
} // Ende: CheckFrames(URL)

//------------------------------------------------------------------------------
// CheckFrames()
//
//		Überprüft, ob das Dokument im richtigen Frameset ist. Falls nicht wird 
//		der Name des Framesets aus dem Namen des Content Frames abgeleitet und  
//		der korrekte Frameset wieder hergestellt.
//------------------------------------------------------------------------------
function CheckFrames()
{	var ValidFrame = true;

	if (self == top)
		ValidFrame = false;
	else
	{	// letzten Frame nicht auswerten, da Zugriff im IE nicht
		// erlaubt, wenn Seite auf externem Server liegt! (z.B. Shop und Guestbook)
		for (i = 0; i < top.frames.length - 1; i++)
		{	if (top.frames[i].name.substr(0,10) != "dernekamp_")
				ValidFrame = false;
		}
	}
	
	if (ValidFrame == false)
		window.location.replace(GuessFramesetName());
	
} // Ende: CheckFrames

//------------------------------------------------------------------------------
// FreeFrameSet()
//
//		Stellt sicher, dass unser Frmaeset im eigenen Fenster und nicht in 
//		einem weiteren FrameSet dargestellt wird 
//------------------------------------------------------------------------------
function FreeFrameSet()
{	if (self != top) top.location = self.location;
} // Ende: FreeFrameSet


//------------------------------------------------------------------------------
// ChangeFrames(Frame1, URL1, Frame2, URL2, ...)
//
//		Setzt den Inhalt der übergebenen Frames mit den angegebenen URLs. Die
//		Reihenfolge muss dabei wie oben angegeben werden: Zunächst der Frame
//		gefolgt von der dazugehörigen URL.
//------------------------------------------------------------------------------

// TODO: Noch nicht getestet!!!
function ChangeFrames()
{	if (((ChangeFrames.arguments.length % 2) == 0) || (ChangeFrames.arguments.length < 2))
	{   for (i = 0; i < ChangeFrames.arguments.length; i++)
			top.frames[i].location.replace(i++);
	} else
		alert("Ungültige Anzahl an Parametern beim Aufruf der Funktion: ChangeFrames()");
} // Ende: ChangeFrames


