// fold menu

var fMenuIdx=0;
var fMenuList = [];

function foldMenu()
{
    fMenuIdx++; 
    fMenuList[fMenuIdx] = this;
    
    this.fMenuFoldIdx = 0;
    
    this.idx = fMenuIdx;
    this.cssPrefix;
    this.menuFolds = new Array();
    this.setCssPrefix = fmenu_set_css_prefix; 
    this.titleClicked = fmenu_title_clicked;
    this.titleMouseOver = fmenu_title_mouse_over;
    this.titleMouseOut = fmenu_title_mouse_out;
    this.itemMouseOver = fmenu_item_mouse_over;
    this.itemMouseOut = fmenu_item_mouse_out;
    this.itemClicked = fmenu_item_clicked;
    this.Add = fmenu_add;
    this.Open = fmenu_open;
    this.Close = fmenu_close;
    this.CloseOthers = fmenu_close_others;
    this.openLink = fmenu_open_link;
}

function fmenu_set_css_prefix(prefix)
{
    this.cssPrefix = prefix;
}

function fmenu_add(label, link, items, foldOpen)
{
    this.fMenuFoldIdx++;
    this.menuFolds[this.fMenuFoldIdx] = new Object();
    
    var writeThis = '';

//    writeThis += "<div class=\"fmenu_container\">";
    
	writeThis += "<li id=\"fmenu_" + fMenuIdx + "_" + this.fMenuFoldIdx + "\"";
	writeThis += "class=\"" + this.cssPrefix + "fmenu_title_normal\" ";
	writeThis += "onclick=\"fMenuList[" + fMenuIdx + "].titleClicked(this.id";
	if (((link !=null) && typeof link == 'string')) {
		this.menuFolds[this.fMenuFoldIdx]['type'] = "link";
		writeThis += ", '" + link.replace(/([^\\])(['])/g, "$1\\$2") + "'";
	}
	writeThis += ")\" ";
	writeThis += "onmouseover=\"fMenuList[" + fMenuIdx + "].titleMouseOver(this.id)\" ";
	writeThis += "onmouseout=\"fMenuList[" + fMenuIdx + "].titleMouseOut(this.id)\">";

	if (label=='Yeni Sezon Kadrosu') {
		writeThis += "<font color=red>" + label + "</font>";
	}else {
		writeThis += label;
	}
	writeThis += "</li>";

	
	
    if ((link == null)  && ((items != null) && (typeof items == "object"))) {
        this.menuFolds[this.fMenuFoldIdx]['type'] = "fold";
        
    	writeThis += "<ul id=\"fmenu_" + fMenuIdx + "_" + this.fMenuFoldIdx + "_items\" ";
    	writeThis += "class=\"" + this.cssPrefix + "fmenu_items\">";
    	for (i=0; i < items.length; i++) {
            writeThis += "<li id=\"fmenu_" + fMenuIdx + "_" + this.fMenuFoldIdx + "_" + i + "_item\" ";
            writeThis += "class=\"" + this.cssPrefix + "fmenu_item_normal\" ";
            writeThis += "onclick=\"fMenuList[" + fMenuIdx + "].itemClicked('";
            writeThis += items[i][1].replace(/([^\\])(['])/g, "$1\\$2");
            writeThis += "')\" ";
            writeThis += "onmouseover=\"fMenuList[" + fMenuIdx + "].itemMouseOver(this.id)\" ";
            writeThis += "onmouseout=\"fMenuList[" + fMenuIdx + "].itemMouseOut(this.id)\">";
            writeThis += items[i][0] + "</li>";
        }
        writeThis += "</ul>";
    }
//    writeThis += "</div>";
    
    document.write(writeThis);
    
    this.menuFolds[this.fMenuFoldIdx]['status'] = 'closed';
    if (this.menuFolds[this.fMenuFoldIdx].type == "fold") {
        if (foldOpen) {
            this.Open(this.fMenuFoldIdx);
        } else {
            this.Close(this.fMenuFoldIdx);
        }
    } else {
        this.Close(this.fMenuFoldIdx);
    }
}


function fmenu_open_link(link)
{
    parent.location = link;
}

function fmenu_open(foldIdx)
{
    if (this.menuFolds[foldIdx].type == 'fold') {
        this.menuFolds[foldIdx].status = 'opened';
        
        document.getElementById("fmenu_" + this.idx + "_" + foldIdx).className = this.cssPrefix + "fmenu_title_hover";
        document.getElementById("fmenu_" + this.idx + "_" + foldIdx + "_items").style.display = '';
    }
}

function fmenu_close(foldIdx)
{
    if (this.menuFolds[foldIdx].type == 'fold') {
        this.menuFolds[foldIdx].status = 'closed';
        document.getElementById("fmenu_" + this.idx + "_" + foldIdx).className = this.cssPrefix + "fmenu_title_normal";
        document.getElementById("fmenu_" + this.idx + "_" + foldIdx + "_items").style.display = 'none';
    }
}

function elementGetGroupID(elementID)
{
    return null;
}

function id2foldIdx(id)
{
    if (typeof id != "string") {
        return false;
    }

    if (id.match(/fmenu_([0-9]+)_([0-9]+)/)) {
        return id.replace(/fmenu_([0-9]+)_([0-9]+)/, "$2");
    } else {
        return false;
    }
}

function fmenu_close_others(id)
{
    var foldIdx = id2foldIdx(id);

    for (var i in this.menuFolds) {
        if (i != foldIdx) {
            this.Close(i);
        }
    }
    if (this.menuFolds[foldIdx].status == 'closed') {
        this.Open(foldIdx);
    } else {
        this.Close(foldIdx);
    }
}

function fmenu_title_mouse_over(id)
{
    var foldIdx = id2foldIdx(id);
    
    if (this.menuFolds[foldIdx].status == 'closed') {
        document.getElementById(id).className = this.cssPrefix + "fmenu_title_hover";
    }
}

function fmenu_title_mouse_out(id)
{
    var foldIdx = id2foldIdx(id);
 
    if (this.menuFolds[foldIdx].status == 'closed') {
        document.getElementById(id).className = this.cssPrefix + "fmenu_title_normal";
    }
}

function fmenu_title_clicked(id, link)
{
    /*
    if (this.menuFolds[id].status == 'closed') {
        this.Open(id);
    } else {
        this.Close(id);
    }
    */
    
    if (link == null) {
        this.CloseOthers(id);
    } else {
        this.openLink(link);
    }
}

function fmenu_item_mouse_over(id)
{
    if (id.substr(id.length - 5, 5) == "_item") {
        document.getElementById(id).className = this.cssPrefix + "fmenu_item_hover";
    }
}

function fmenu_item_mouse_out(id)
{
    if (id.substr(id.length - 5, 5) == "_item") {
        document.getElementById(id).className = this.cssPrefix + "fmenu_item_normal";
    }
}

function fmenu_item_clicked(link)
{
    this.openLink(link);
}