// ===========================================================================
//
//  Copyright Uwe Dierolf
//  University Library of Karlsruhe
//  7.7.1998 (Original Version)
//
// ===========================================================================

// Javascript for the Utah Multi-Catalog Search appearing on the Utah State Library Division web site and including only public libraries

function initForm() {
    form = document.forms[0]
    cookieName = document.URL.substr(document.URL.lastIndexOf("/") + 1, document.URL.length - document.URL.lastIndexOf("/") + 1) + "_utah_catalog_selection"
    //fields = new Array("TI", "PY", "AU", "SB", "ST", "SS", "CI", "PU", "SE")
    libraries = new Array("UTAH_DAVIS", "UTAH_OREM", "UTAH_MURRAY", "UTAH_PROVO", "UTAH_SLC", "UTAH_SLCO", "UTAH_USL", "UTAH_WEBER")
    //fields = new Array("TI", "AU", "ST")
    setFocus("TI")
    //autoLoadPrefs()
    if (allUnchecked()) selectSet(libraries, 1)
}

// Possible values for "state": 1 - select; 0 - deselect; -1 - reverse
function selectCatalog(name, state) {
    for (var i = 0; i < form.kataloge.length; i++) {
	if (form.kataloge[i].value == name) {
	    if (state == -1) {
		if (form.kataloge[i].checked) form.kataloge[i].checked = 0
		else form.kataloge[i].checked = 1
	    } else {
		form.kataloge[i].checked = state;
	    }
	    break
	}
    }
}

// Possible values for "state": 1 - select; 0 - deselect; -1 - reverse
function selectSet(name, state) {
    for (var i = 0; i < name.length; i++)
	selectCatalog(name[i], state)
}

function clearFields() {
    for (var i = 0; i < fields.length; i++)
	form.elements[fields[i]].value = ""
    setFocus("TI")
}

function setFocus(element) {
    form.elements[element].focus()
}

function drawButton(text, onClick, tooltip) {
    document.write("<input class=\"button\" type=\"button\" value=\"" + text + "\" OnClick=\"" + onClick + "\" title=\"" + tooltip +"\">")
}

function savePrefs() {
    var prefs = cookieName + "=" + checkedCatalogs() + "; expires=Fri, 01 Jan 2010 16:00:00 GMT"
    document.cookie = prefs
}

function loadPrefs() {
    var prefs = document.cookie
    if(!prefs) return (0)
    prefs = prefs.substring(prefs.indexOf(cookieName) + cookieName.length + 1)
    for (var i = 0; i < form.kataloge.length; i++)
	form.kataloge[i].checked = (prefs.substring(i, i + 1) == 1)
}

function autoLoadPrefs() {
    if (allUnchecked()) loadPrefs()
}

function checkedCatalogs() {
    var prefs = "";
    for (var i = 0; i < form.kataloge.length; i++) {
	if (form.kataloge[i].checked == true) prefs += "1"
	else prefs += "0"
    }
    return prefs
}

function allUnchecked() {
    for (var i = 0; i < form.kataloge.length; i++)
	if (form.kataloge[i].checked == true) return false;
    return true;
}

