/**
 * Sfb Ajax Page (CMS SFB 647 Public)
 *
 * File created 2006/11/11 
 * @author Martin Stricker <martin.stricker@gmail.com>
 * @copyright Copyright (C) 2006, Martin Stricker
 * @license http://license.string/
 * @version $Id$
 * @package SFB.p
 * 
 */
 
var request = YAHOO.util.Connect;

/* Fotoalben */

function fotoSuccess(o) {
	document.getElementById(o.argument.divId).innerHTML = o.responseText;
	// special treatment for initial select control: load selected set
	if(o.argument.evt == "setSelect") {
		if(o.argument.setId.length > 0) {
			callFoto('set',o.argument.setId);
		}
	}
}

function fotoFailure(o) {
	var fail = "AJAX/HTTP Status " + o.status + ": " + o.statusText + "";
	var eMsg = o.argument.errorMessage;
	if(o.argument.showErrorStatus > 0)
		eMsg += "<div class=\"errorMessage\">" + fail + "</div>";
	document.getElementById(o.argument.divId).innerHTML = eMsg;
}

var fotoCallback = {
	success: fotoSuccess,
	failure: fotoFailure,
	timeout: 20000
}

var fUrlPfx = "sfbajaxrequest.php?evt=";

function callFoto(evt,id) {
	var callOk = 1;
	var fUrl = fUrlPfx;
	switch(evt) {
	case "set":
		if(id.length > 0) {
			// we are loading a set
			fUrl += "fotoSet&id="+id;
			fotoCallback.argument = {
				divId: "fotoSet",
				errorMessage: "<div class=\"loading\">Album konnte nicht geladen werden.<br>Could not load Album, sorry.</div>",
				showErrorStatus: 0
			}
		} else {
			// "empty" choice in set select control
			callOk = 0;
			document.getElementById('fotoSet').innerHTML = "&nbsp;";
		}
		break;
	default:
		callOk = 0;
		break;
	}
	fotoCallback.argument.evt = evt;
	if(callOk > 0)
		request.asyncRequest('GET',fUrl,fotoCallback);
}

