function cutcolumn() 
{
        
}
function updateReplyLinks() {
		var divs = document.getElementsByTagName('div');
		if(!divs)	return;
		var topBottomLinksUpdates = false;
		for(var i = 0; i < divs.length; i++) {
			var cls = mgetAttribute(divs[i], 'class');
			if(!cls) continue;
			if(cls.indexOf('Discussion_VisibilityContainer') < 0)
				continue;
			var postId;
			var node = divs[i].previousSibling;
			while(node != null && node.nodeType == 3)
				node = node.previousSibling;
			if(node.getAttribute) {
				postId = node.getAttribute('id');		
			}
			if(!postId)
				continue;
			var linkNode = getNodeWithClass(divs[i], 'Discussion_PostNew', 5);
			if(!linkNode || ! linkNode.getAttribute || !linkNode.setAttribute) {
				continue;
			}
			var href = mgetAttribute(linkNode, 'href');
			if(!href) continue;
			var hasToAppend = false;
			if(href.indexOf('#newPost') >= 0) {
				href = href.replace('#newPost', '');
				hasToAppend = true;
			}
			var encoded = href.indexOf('nextpage') >= 0;
			href = appendParm(href, 'plckPostId', postId, encoded);
			if(href.indexOf('plckIsQuotedReply') < 0) 
			    href = appendParm(href, 'plckIsQuotedReply', '0', encoded);
			if(hasToAppend) {
				if(encoded) 
					href += '%23';
				else 
				  href += '#';
				href += 'newPost';
			}
			msetAttribute(linkNode, 'href', href);
			if(!topBottomLinksUpdates) {
			    setLinkHref(href, 'forumHeader_linkAnswer');
			    setLinkHref(href, 'forumFooter_linkAnswer');
			    topBottomLinksUpdates = true;
			}
		}
}

function setLinkHref(href, partId) {
     var id    = getFullIdTag(partId, 'a');
     if(!id) {
        return false;
     }
     var link = document.getElementById(id);
     if(!link)
        return false;
     msetAttribute(link, 'href', href);
	 
	 var id2 = getFullIdTag(partId, 'a', id);
	 if(!id2)
		return;
	 var link = document.getElementById(id2);
     if(!link)
        return false;
     msetAttribute(link, 'href', href);
}

function msetAttribute(obj, attr, val) {
	 if(obj.attributes) {
	    var item = document.createAttribute(attr);
		item.value = val;
		obj.attributes.setNamedItem(item);
	 } else {
		if(obj.setAttribute) {
			obj.setAttribute(attr, val);
		}
	 }
}

function mgetAttribute(obj, attr) {
    if(!obj || ! attr) 
        return;
    if(obj.attributes && obj.attributes[attr] && obj.attributes[attr].value)
				return obj.attributes[attr].value;
    if(obj.getAttribute)
	    return obj.getAttribute(attr);
    return false;
}

/**
 * Append parameter to url
 */
function appendParm(url, parm, val, encoded) {
	if(!url || !parm || !val || !url.indexOf) {
		return url;
	}
	url = url.replace(/&$/, '').replace(/\?$/, '');
	var regex = new RegExp(parm + '=' + val);
	url = url.replace(regex, '');
	url = url.replace('?&', '&');
	url = url.replace('&&', '&');
	var ask = '?';
	var and = '&';
	var eq = '=';
	if(encoded) {
		ask = '%3F';
		and = '%26';
		eq  = '%3D';
		val = encodeURIComponent(val);
		parm = encodeURIComponent(parm);
	}
    if(url.indexOf(ask) >= 0 || url.indexOf(and) >= 0) {
		return url + and + parm + eq + val;
	}
	return url + ask + parm + eq + val;
}

/**
 * Get node with matching class - only search within child nodes of given obj.
 */
function getNodeWithClass(obj, cls, level) {
    if(!obj || !cls) {
        return false;
    }
    if(level <= 0) {
        return false;
    }
    for(var i = 0; i < obj.childNodes.length; i++) {
        var attr = mgetAttribute(obj.childNodes[i], 'class');
        if(attr && attr.indexOf(cls) >= 0) {
            return obj.childNodes[i];
        } else {
            if(obj.childNodes[i].childNodes && obj.childNodes[i].childNodes.length > 0) {
                var ret = getNodeWithClass(obj.childNodes[i], cls, level-1);
                if(ret)
                    return ret;
            }
        }
        
    }
    return false;
}

/**
 * Get text of child element with given tag
 * @param parent - parent element, @tag- tag to search for, @level - maximal child level 
 */
function getTextOf(parent, tag, level) {
    if (!parent || !tag || !parent.childNodes)
        return '';
    if (level <= 0)
        return '';
    tag = tag.toUpperCase();
    for (var i = 0; i < parent.childNodes.length; i++) {
        if (parent.childNodes[i].nodeType == 3) {
            continue;
        }
        if (parent.childNodes[i].nodeName == tag) {
            return parent.childNodes[i].childNodes[1].nodeValue;
        }
        else {
            if (parent.childNodes[i].childNodes && parent.childNodes[i].childNodes.length > 0) {
                var returnValue = getTextOf(parent.childNodes[i], tag, level - 1);
                if (returnValue && returnValue != '') {
                    return returnValue;
                }
            }
        }
    }
    return '';
}

/**
 * This function is called from a post when the user clicks "reply"
 * Read the title of the post ( within h1 tag )
 */
setReplyTitle = function(e) {
    var text = '';
    try {
        text = getTextOf(e.parentNode.parentNode, 'h1', 7);
        if(!text || text == '') {
            return;
        }
        var id = getFullIdTag('discussionTitleTextBox_value', 'input');
        if(!id)
            return;
        var obj = document.getElementById(id);
        if (obj) {
            obj.setAttribute('value', 'AW: ' + text);
        }
    } catch (e) {
    }
}

/**
 * Get number of pages and add the number as hidden form input field.
 */
addLastPageNumberToForm = function() {
   var lastPage = getLastPageNumber();
   if(lastPage == 0) {
	return;
   }
   var forms = document.getElementsByTagName('form');
   if(!forms || forms.length == 0) {
	return;
   }
   var form = document.forms[0];
   var el = document.createElement("input");
   el.type = "hidden";
   el.name = 'plckCurrentPage';
   el.value = lastPage;
   form.appendChild(el);
}

/**
 * Get Number of pages counting child nodes that are not text nodes in the paginator control.
 */
getLastPageNumber = function() {
    var paginator = document.getElementById('Paginator');
    if(!paginator) {
        return 0;
    }
    var number = paginator.childNodes.length;
	var num = 0;
	for(var i = 0; i < paginator.childNodes.length; i++) {
		var node = paginator.childNodes[i];
		if(node.nodeType == 3 || !node.innerHTML) { continue; }
		var n = parseInt(node.innerHTML);
		if(!n)
			continue;
		num = n-1;
	}
	return num;
}

/**
 * Scroll to the error element.
 */
jumpToAddReply = function () {
	var id = getFullId('globalError');
	var errorElement = document.getElementById(id);
	if(errorElement) {
	   scrollToElement(errorElement); 
	}
}

/**
 * Get absolute offset to a element.
 */
function absoluteOffset(e) { 
	if(!e) return -1;
	
    var numElems = 5;    
    while(e.style.display.toLowerCase() == 'none' && numElems-- > 0) {
        e = e.nextSibling;
        while(e.nodeType == 3 /*TEXT_NODE*/ && numElems-- > 0) {
            e = e.nextSibling;
        }    
    }
	if(e.offsetTop == 0)
		return 0;
    var offsetParent 	= 0;
	if(e.offsetParent) {
		offsetParent = absoluteOffset(e.offsetParent);
	}
    if(offsetParent < 0) 
        return -1;
    return e.offsetParent && e.offsetTop + offsetParent;
}  

function scrollToElement(elem) {
    var elemOffset = absoluteOffset(elem);
    if(elemOffset >= 0) {  
       window.scrollTo(0, elemOffset);
    }	
}

searchForum = function(elm) {
    var errorElms = $(".search-error");
    var searchElms = $(".search-txt-field");
    var txtElm;

    for (i = 0; i < errorElms.length; i++) {
        errorElms[i].style.display = "none";
    }

    for (i = 0; i < searchElms.length; i++) {
        txtElm = searchElms[i].firstChild.nodeName.toLowerCase() == "div" ? searchElms[i].firstChild : searchElms[i].firstChild.nextSibling;
        markWeviTextBoxCorrect(txtElm.id);
    }

    var txtContainer = elm.previousSibling.nodeName.toLowerCase() == "div" ? elm.previousSibling : elm.previousSibling.previousSibling;
    var index = 0;
    if (txtContainer == searchElms[1]) {
        index = 1;
    }
    var txtElm = searchElms[index].firstChild.nodeName.toLowerCase() == "div" ? searchElms[index].firstChild : searchElms[index].firstChild.nextSibling;
    searchText = $("#" + txtElm.id + "_value").val();

    if (searchText != null && searchText.value != "") {
        if (searchText == defaultSearchText) {
            txtElm = txtContainer.firstChild.nodeName.toLowerCase() == "div" ? txtContainer.firstChild : txtContainer.firstChild.nextSibling;
            markWeviTextBoxError(txtElm.id);
            $("#" + txtElm.id + "_value").val('');
            errorElms[index].style.display = "block";
            return false;
        }

    }
    else {
        txtElm = txtContainer.firstChild.nodeName.toLowerCase() == "div" ? txtContainer.firstChild : txtContainer.firstChild.nextSibling;
        markWeviTextBoxError(txtElm.id);
        errorElms[index].style.display = "block";
        return false;
    }

    searchText = searchText.replace(/^\s\s*/, '').replace(/\s\s*$/, '');
    searchText = searchText.replace(/^\*+/, '');
    searchText = searchText.replace("*", "SstarS");
    if (searchText.length == 0) {
        txtElm = txtContainer.firstChild.nodeName.toLowerCase() == "div" ? txtContainer.firstChild : txtContainer.firstChild.nextSibling;
        markWeviTextBoxError(txtElm.id);
        errorElms[index].style.display = "block";
        return false;
    }
    else {
        searchText = FixSearchString(searchText);

        forumBaseUrl += searchText;
        window.location.href = forumBaseUrl;
        //gSiteLife.LoadForumPage("ForumSearchPaginate", "plckSearchText", searchText, "plckSearchArea", "all", "plckCurrentPage", "0");

    }

    return false;
}

var searchInputCtrls = null;
addSearchBoxEventHandler = function()
{
	searchInputCtrls = $(".search-txt-field input");
	for(i = 0; i < searchInputCtrls.length; i++)
	{
		searchInputCtrls[i].onkeypress = searchTxtKeyPress;
	}
}

searchTxtKeyPress = function (event) 
{
	event = event || window.event;
	var targ = null;
	if (event.keyCode == 13) 
	{
		if (event.target) targ = event.target;
		else if (event.srcElement) targ = event.srcElement;
		if(targ == searchInputCtrls[0])
			targ = $(".forum-search-ctrl .primary-action")[0];
		else 
			targ = $(".forum-search-ctrl .primary-action")[1];		
		searchForum(targ);
		return false;
	}
}


