var agt = navigator.userAgent.toLowerCase () ;
var is_ie = ((agt.indexOf ("msie") != -1) && (agt.indexOf ("opera") == -1)) ;
var is_ff = ((agt.indexOf ("firefox") != -1)) ;
//var images_path = <%= image_path('') %>

function getPngImage(imgName, width, height, key, alt, id, usemap, vspace){
	var str = "";
	if(is_ie){
		str += "<img src=\""+ images_path +"/0.gif\" width=\"" + width + "\" height=\"" + height + "\" border=\"0\" ";
		if(vspace){
			str += "vspace=\"" + vspace + "\" ";
		}
		if(id){
			str += "id=\"" + id + "\" ";
		}
		if(usemap){
			str += "usemap=\"" + usemap + "\" ";
		}
		if(alt){
			str += "alt=\"" + alt + "\" title=\"" + alt + "\" ";
		}
		 str += "style=\"filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+ imgName + "', enabled=1, sizingMethod='scale')\">";
	}else{
		str = "<img src=\"" + imgName + "\" width=\"" + width + "\" height=\"" + height + "\" border=\"0\"";
		if(vspace){
			str += "vspace=\"" + vspace + "\" ";
		}
		if(id){
			str += "id=\"" + id + "\" ";
		}
		if(usemap){
			str += "usemap=\"" + usemap + "\" ";
		}
		if(alt){
			str += "alt=\"" + alt + "\" title=\"" + alt + "\" ";
		}
		str += ">";
	}
	if(key){
		document.write(str);
		return;
	}
	return str;
}

function getDialog(id, extContainerId, delta){
	var obj = document.getElementById(id);
	var extContainerObj = document.getElementById(extContainerId);
	if(obj){
		obj.style.display = "block";
		if(extContainerObj){
			var h = (obj.offsetHeight + delta);
			if(extContainerObj.offsetHeight < h) extContainerObj.style.height = h + "px";
		}
	}
}

function closeDialog(id, extContainerId){
	var obj = document.getElementById(id);
	var extContainerObj = document.getElementById(extContainerId);
	if(obj){
		obj.style.display = "none";
		if(extContainerObj) extContainerObj.style.height = "";
	}
}

var activLink = null;
var activLinkAlt = null;

function setStyle_s(obj, className, visAlt, extBlockId){
//    alert(obj + "\n" + className + "\n" + visAlt + "\n" + extBlockId);
	obj.className = className;
	activLink = null;
	activLinkAlt = null;
	if(visAlt){
		var _altBlock = getAltBlock(obj);
		var extBlockIdObj = null;
		if(extBlockId) extBlockIdObj = document.getElementById(extBlockId);
		//alert(extBlockId + "\n" + extBlockIdObj);
		if(extBlockIdObj && !extBlockIdObj.offsetHeight) return;
		if(_altBlock){
			obj.altBlock = _altBlock;
			obj.altBlock.style.display = "block";
			obj.altBlock.style.top = parseInt(0 - obj.altBlock.offsetHeight - 6) + "px";
		}
	}else if(obj.altBlock){
		obj.altBlock.style.display = "none";
	}
}

function getAltBlock(obj){
	var divs = obj.getElementsByTagName("div");
	var res = null;
	for(var i = 0; i < divs.length; i++){
		if(divs[i].className.indexOf("alt_block") == 0){
			res = divs[i];
			break;
		}
	}
	return res;
}

function openCloseBlock(idBlock, use_cookie){
	var block = document.getElementById(idBlock);
	var linkObj = document.getElementById(idBlock + "_link");
	if(block){
		if(use_cookie){
			var opened = getFromCookie(idBlock + "_opened");
			block._opened = !(opened == "true");
		}
		if(!block._opened){
			block.style.display = "block";
			if(linkObj) linkObj.className = "block_open";
			block._opened = true;
		}else{
			block.style.display = "none";
			if(linkObj) linkObj.className = "block_close";
			block._opened = false;
		}
		setToCookie(idBlock + "_opened", block._opened, "/");
	}
}

function switchBlockState(blockId, useCookie, defaultState) {
    var block = document.getElementById(blockId);
	var linkObj = document.getElementById(blockId + "_link");
	if(block){
		if(useCookie){
			var opened = getFromCookie(blockId + "_opened");
            if (opened == null) opened = (defaultState) ? "true" : "false";
			block._opened = !(opened == "true");
		}
		if(!block._opened){
			block.style.display = "block";
			if(linkObj) linkObj.className = "block_open";
			block._opened = true;
		}else{
			block.style.display = "none";
			if(linkObj) linkObj.className = "block_close";
			block._opened = false;
		}
		setToCookie(blockId + "_opened", block._opened, "/");
	}
}

function openBlock(idBlock, key){
	var block = document.getElementById(idBlock);
	if(block){
		block.style.display = key?"block":"none";
	}
}

function openCloseContent(radioId, blockArr){
	var radioObj = document.getElementById(radioId);
	var form = radioObj.form;
	var radioGroup = null;
	var blockObj = null;
	if(form){
		radioGroup = form[radioObj.name];
		if(radioGroup && radioGroup.length && blockArr && blockArr.length){
			if(radioGroup[0].checked == true){
				$(blockArr[0]).hide()
				$(blockArr[1]).show()
				//openBlock(blockArr[0], false);
				//openBlock(blockArr[1], true);
			}else if(radioGroup[1].checked == true){
				$(blockArr[1]).hide()
				$(blockArr[0]).show()
				//openBlock(blockArr[1], false);
				//openBlock(blockArr[0], true);
			}
		}
	}
}

function visFormBlock(obj, targetedBlock, targetedValue){
	var targetedBlockObj = document.getElementById(targetedBlock);
	if(targetedBlockObj){
		if(obj.value == targetedValue) targetedBlockObj.style.display = "block";
		else targetedBlockObj.style.display = "none";
	}
}

function getPos(element){
	var left = 0, top = 0; width = element.offsetWidth || 0; height = element.offsetHeight || 0;
	while(element){
		top += element.offsetTop;
		left += element.offsetLeft;
		element = element.offsetParent;
	}
    return [left, top, width, height];
}

var editBlock = null;

function getEditBlock(){
//	if(!editBlock){
//		editBlock = document.createElement("div");
//		editBlock.id = "editBlock";
//		editBlock.innerHTML = '<div class="edit_block_inner">Each tag should be separated by commas. Each tag can consist of several words.<br/><b>Example: Hello, World, Beer with friends</b><form name="form_edit"><textarea name="edit_value" id="edit_value" style="width: 100%; height: 50px; margin-top: 5px; margin-bottom: 5px;"></textarea><br/><div align="right"><input type="image" src="images/add_btn.gif" alt="Add" title="Add" align="absmiddle"> or <a href="javascript:closeEditBlock();">Cancel</a></div></form></div>';
//		document.body.appendChild(editBlock);
//	}
//	return editBlock.id;
    if(!editBlock){
        editBlock = $('editBlock')
    }
    return editBlock.id
}

function closeEditBlock(){
	document.getElementById("edit_value").value = "";
	editBlock.style.display = "none";
}

function editThisValue(value, baseElement){
	var forEdit = getEditBlock();
	var forEditObj = document.getElementById(forEdit);
	var baseElementObj = document.getElementById(baseElement)
	if(forEditObj && baseElementObj){
		var pos = getPos(baseElementObj);
		forEditObj.style.top = parseInt(pos[1] + 20) + "px";
		forEditObj.style.left = parseInt(pos[0] + pos[2]/2) + "px";
		document.getElementById("edit_value").value = value;
		forEditObj.style.display = "block";
	}
}

function setToCookie(name, value, path){
	var ExpireDate = new Date();
	ExpireDate.setTime(ExpireDate.getTime() + (30 * 24 * 3600 * 1000));
	var curCookie = name + "=" + escape(value.toString()) + "; expires=" + ExpireDate.toGMTString(); 
	if(path) curCookie += "; path=" + path;
	document.cookie = curCookie;
}

function getFromCookie(name) {
    var start = document.cookie.indexOf(name+"=");
    var len = start + name.length + 1;
    if ((!start) && (name != document.cookie.substring(0,name.length))) return null;
    if (start == -1) return null;
    var end = document.cookie.indexOf(";",len);
    if (end == -1) end = document.cookie.length;
    return unescape(document.cookie.substring(len,end));
}
