/*function over(elem)
{
    var curClass = elem.className;
    if(curClass.indexOf("ovr") == -1)
        elem.className = curClass + " ovr";
}

function out(elem)
{
    var curClass = elem.className;
    if(curClass.indexOf("ovr") != -1)
        elem.className = curClass.replace(/\sovr/g, "");
}*/

if(document.domain.indexOf("internationaltrucks.com") != -1)
	document.domain = "internationaltrucks.com";

function hilite(element) {
	if (element) {
		if (element.className) {
			element.className = element.className.replace(/ ovr$/, "");
			element.className = element.className.replace(/ovr$/, "");
			element.className  = element.className + " ovr";
		} else {
			element.className  = "on";
		}
	}
}

function lolite(element) {
	if (element && element.className) {
		element.className = element.className.replace(/ ovr$/, "");
		element.className = element.className.replace(/ovr$/, "");
	}
}

over = hilite;
out = lolite;

function over_sum(element) {
    if (element.parentNode) {
        over(element.parentNode.parentNode);
    }
}

function out_sum(element) {
    if (element.parentNode) {
        out(element.parentNode.parentNode);
    }
}

function findParent(node, name, className) {
    // the "toUpperCase" should be unnecessary. but just in case ...
    if (node.parentNode == null) {
        return null;
    } else if (node.parentNode.nodeName == name) {
        if (className != null) {
            if (node.parentNode.className == className) {
                return node.parentNode;
            } else {
                return findParent(node.parentNode, name, className);
            }
        } else {
            return node.parentNode;
        }
    } else {
        return findParent(node.parentNode, name, className);
    }
}

function rateOver(elem, idx)
{
    var siblings = elem.parentNode.getElementsByTagName("div");
    var cls;
    
    for(var r = 0; r < siblings.length; r++)
    {
        cls = siblings[r].className;
        
        if(r <= idx)
            siblings[r].className = cls.replace(/\brate\b/g,"rateOn");
        else
            siblings[r].className = cls.replace(/\brateOn\b/g,"rate");
    }
    
}

function rateOut(elem)
{
    var ratings = elem.getElementsByTagName("div");
    var cls;
    
    for(var r = 0; r < ratings.length; r++)
    {
        cls = ratings[r].className;
        
        if(cls.indexOf("x") != -1)
            ratings[r].className = "rateOn x";
        else
            ratings[r].className = "rate";
        
    }    
}

function setRating(elem, storyId, rating)
{
    var addRating = new ajaxObj("addrating.aspx", "storyid=" + storyId + "&rating=" + rating);
    
    if(elem != null && typeof elem != "undefined")
    {    
        addRating.handler_params = new Array(elem, rating - 1)
        addRating.handler_method = function()
        {
            var siblings = this.handler_params[0].parentNode.getElementsByTagName("div");
            var cls;
            
            for(var r = 0; r < siblings.length; r++)
            {
                cls = siblings[r].className;
                
                if(r <= this.handler_params[1])
                    siblings[r].className = "rateOn x";
                else
                    siblings[r].className = "rate";
            }
        };
    }
    addRating.init();
}


var tabNames = new Array("most-recent", "most-popular", "videos");

function sa_tabOver(tab, idx)
{
    var img = tab.getElementsByTagName("img")[0];
    if(img.src.indexOf("-on") == -1)
        img.src = "assets/common/" + tabNames[idx] + "-ovr.gif";
}

function sa_tabOut(tab, idx)
{
    var img = tab.getElementsByTagName("img")[0];
    if(img.src.indexOf("-on") == -1)
        img.src = "assets/common/" + tabNames[idx] + ".gif";
}


function sa_tabClick(tab, idx)
{
    var img = tab.getElementsByTagName("img")[0];
    if(img.src.indexOf("-on") == -1)
    {
        img.src = "assets/common/" + tabNames[idx] + "-on.gif";
        document.getElementById(tabNames[idx] + "-content").className = "summaries";
        
        for(var t = 0; t < tabNames.length; t++)
        {
            if(t != idx)
            {
                document.getElementById(tabNames[t] + "-content").className = "hidden";
            
                var otherImg = document.getElementById(tabNames[t] + "-tab").getElementsByTagName("img")[0];
                otherImg.src = "assets/common/" + tabNames[t] + ".gif";
            }
        }
    }
    
}

function hiliteImg(img) {
    if (img.src) {
        img.old_src = img.src;
		var i = img.src.lastIndexOf(".");
		if (i != -1) {
			var x = img.src.substring(0,i);
			var y = img.src.substring(i);
			img.src = x + "_ovr" + y;
		}
    }
}

function loliteImg(img) {
    if (img.src) {
        if (img.old_src) {
            img.src = img.old_src;
        } else {
            img.src = img.src.replace(/_ovr/, "");
        }
    }
}

function sa_submitWrapper(node, txt) {
    var lnks = node.parentNode.getElementsByTagName("a");
    var txts = node.parentNode.parentNode.parentNode.getElementsByTagName("textarea");
    if (lnks.length > 0 && txts.length > 0) {
        var val = txts[0].value.replace(/^\s+|\s+$/g, "");
        if (val.length == 0) {
            if (txt == null) {
                alert("Please enter a reply");
            } else {
                alert("Please enter a " + txt);
            }
        } else {
            lnks[0].click();
        }
    }
}

function sa_showAddComment(node, div_id) {
    node.className = "xlnk";
    node.onmouseover = "";
    node.onmouseout = "";
    node.onclick = "";
    sa_show(div_id);
    var area = document.getElementById("cmt_txt");
    if (area != null) {
        area.focus();
    }
}

function sa_hideAddComment(node, div_id) {
    var div = document.getElementById("sa_cmnt_btn");
    if (div) {
        div.className = "lnk";
        div.onmouseover = "over(this)";
        div.onmouseout = "out(this)";
        div.onclick = "sa_showAddComment(this, 'cmt_add_cmt')";
    }
    sa_hide(div_id);
}

function sa_showAddReply(node, cmt_id) {
    var div_id = "cmt_add_rpl_" + cmt_id;
    var div = document.getElementById("sa_cmnt_ul");
    if (div) {
        for (var i = 0; i < div.childNodes.length; i++) {
            if (div.childNodes[i].nodeName == "LI") {
                cancel_reply(div.childNodes[i]);
            }
        }
    }
    disableReply(node.parentNode);
    sa_show(div_id);
    var area = document.getElementById("cmt_rpl_txt_" + cmt_id);
    if (area != null) {
        area.focus();
    }
}

function sa_hideAddReply(node, div_id) {
    var li = findParent(node, "LI");
    if (li) {
        var divs = li.getElementsByTagName("div");
        for (var i = 0; i < divs.length; i++) {
            if (divs[i].className && divs[i].className.indexOf("crtl") > -1) {
                enableReply(divs[i]);
                break;
            }
        }
    }
    sa_hide(div_id);
}

function cancel_reply(li) {
    var divs = li.getElementsByTagName("div");
    for (var i = 0; i < divs.length; i++) {
        if (divs[i].className) {
            if (divs[i].className == "cmt_add_reply") {
                divs[i].style.display = "none";
                divs[i].style.visibility = "hidden";
                // for ie6
                divs[i].className = divs[i].className + "";
            } else if (divs[i].className == "crtl") {
                enableReply(divs[i]);
            }
        }
    }
}

function disableReply(div) {
    var spans = div.getElementsByTagName("span");
    for (var i = 0; i < spans.length; i++) {
        if (spans[i].className && spans[i].className.indexOf("rpl") > -1) {
            spans[i].style.display = "inline";
            spans[i].style.visibility = "visible";
        } else if (spans[i].className && spans[i].className.indexOf("lnk") > -1) {
            spans[i].style.display = "none";
            spans[i].style.visibility = "hidden";
        }
    }
}

function enableReply(div) {
    var spans = div.getElementsByTagName("span");
    for (var i = 0; i < spans.length; i++) {
        if (spans[i].className && spans[i].className.indexOf("rpl") > -1) {
            spans[i].style.display = "none";
            spans[i].style.visibility = "hidden";
        } else if (spans[i].className && spans[i].className.indexOf("lnk") > -1) {
            spans[i].style.display = "inline";
            spans[i].style.visibility = "visible";
        }
    }
}

function sa_showReplies(node, div_id) {
    node.innerHTML = "Hide Replies";
    node.onclick = function() {sa_hideReplies(node, div_id);};
    sa_show(div_id);
}

function sa_hideReplies(node, div_id) {
    node.innerHTML = "View Replies";
    node.onclick = function() {sa_showReplies(node, div_id);};
    sa_hide(div_id);
}

function sa_show(div_id) {
    var div = document.getElementById(div_id);
    if (div) {
        div.style.display = "block";
        div.style.visibility = "visible";
        // for ie6
        div.className = div.className + "";
    }
}

function sa_hide(div_id) {
    var div = document.getElementById(div_id);
    if (div) {
        div.style.display = "none";
        div.style.visibility = "hidden";
        // for ie6
        div.className = div.className + "";
    }
}

function sa_showEmailPopAgain() {
    var sa_share_frm = document.getElementById("sa_share_frm");
	var sa_share_rsp = document.getElementById("sa_share_rsp");
	var sa_share_sub = document.getElementById("sa_share_sub");
	
	sa_share_sub.style.display = "none";
    sa_share_sub.style.visibility = "hidden";
    sa_share_frm.style.display = "block";
    sa_share_frm.style.visibility = "visible";
	
	var sa_to_email = document.getElementById("sa_to_email");
	var sa_share_msg = document.getElementById("sa_share_msg");
	sa_to_email.value = "";
	sa_share_msg.value = "";
	
}

function sa_showEmailPop(story_id, story_name) {
	var sa_email_story_id = document.getElementById("sa_email_story_id");
	var sa_email_story_name = document.getElementById("sa_email_story_name");
	if (sa_email_story_id != null) {
		sa_email_story_id.value = story_id;
        showPopup(null);
	    var sa_to_email = document.getElementById("sa_to_email");
	    if (sa_to_email != null) {
	        sa_to_email.focus();
	    }
	}
}

function sa_cancelEmail() {
    var sa_share_frm = document.getElementById("sa_share_frm");
    var sa_share_rsp = document.getElementById("sa_share_rsp");
    var sa_share_sub = document.getElementById("sa_share_sub");
    
    
    sa_share_frm.style.display = "block";
    sa_share_frm.style.visibility = "visible";
    sa_share_sub.style.display = "none";
    sa_share_sub.style.visibility = "hidden";
	sa_share_rsp.innerHTML = "";
    closePopup(null);
}

function sa_sendEmail(story_id, story_name) {
	var sa_to_email = document.getElementById("sa_to_email");
	var sa_from_email = document.getElementById("sa_from_email");
	var sa_share_msg = document.getElementById("sa_share_msg");
	var sa_email_story_id = document.getElementById("sa_email_story_id");
	
	if (sa_email_story_id != null && sa_to_email != null && sa_from_email != null) {
        var email = sa_to_email.value.replace(/^\s+|\s+$/g, "");
        if (email.length == 0) {
            alert("Please enter an email address");
            return;
        }
        var re = /^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[(2([0-4]\d|5[0-5])|1?\d{1,2})(\.(2([0-4]\d|5[0-5])|1?\d{1,2})){3} \])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
        if (!email.match(re)) {
            alert("Please enter a valid email address");
            return;
        }
        var from_email = "";
        if (sa_from_email != null) {
            from_email = sa_from_email.value.replace(/^\s+|\s+$/g, "");
            if (from_email.length == 0) {
                alert("Please enter your email address");
                return;
            }
            var re = /^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[(2([0-4]\d|5[0-5])|1?\d{1,2})(\.(2([0-4]\d|5[0-5])|1?\d{1,2})){3} \])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
            if (!from_email.match(re)) {
                alert("Please enter your valid email address");
                return;
            }
        }
        
        var msg = "";
        if (sa_share_msg != null) {
            var str = sa_share_msg.value;
            msg = (str.substring(0, 250));
        }
	    var sa_share_frm = document.getElementById("sa_share_frm");
	    var sa_share_rsp = document.getElementById("sa_share_rsp");
	    var sa_share_sub = document.getElementById("sa_share_sub");
	    sendEmail(sa_email_story_id.value, email, from_email, msg, sa_share_frm, sa_share_sub, sa_share_rsp);
	}
    
}

function sendEmail(story_id, to_email, from_email, msg, div_frm, div_sub, div_rsp)
{
    div_frm.style.display = "none";
    div_frm.style.visibility = "hidden";
    div_sub.style.display = "block";
    div_sub.style.visibility = "visible";
    // TODO: something nicer here
	div_rsp.innerHTML = "Sending ...";
	        
    var ajax = new ajaxObj("sendstoryemail.aspx", "storyid=" + story_id + "&to_email=" + escape(to_email) + "&from_email=" + escape(from_email) + "&msg=" + escape(msg) );
    
    ajax.handler_method = function()
    {
        div_rsp.innerHTML = this.text;
    };
    ajax.init();
}

// from ginn resorts
function showPopup(src) {
	var popup_bkg = document.getElementById("popup_bkg");
	var popup_inr = document.getElementById("popup_inr");
	popup_bkg.style.width = document.documentElement.scrollWidth + "px";
	popup_bkg.style.height = document.documentElement.scrollHeight + "px";
	popup_bkg.style.display = "block";
	popup_bkg.style.visibility = "visible";

	popup_inr.style.width = document.documentElement.offsetWidth + "px";
	popup_inr.style.height = document.documentElement.offsetHeight + "px";
	popup_inr.style.left = document.documentElement.scrollLeft + "px";
	popup_inr.style.top = document.documentElement.scrollTop + "px";
	
	var div = document.getElementById("sa_share_story");
	if (div != null) {
		var h = document.documentElement.offsetHeight;
		// the width of the layout
		var w = Math.min(970, document.documentElement.offsetWidth);
	    centerImage(w, h, div);
	}
}

function centerImage(w, h, div) 
{
		var t = h - div.offsetHeight;
		var l = w - div.offsetWidth;
		if (t < 0) { t = 0; }
		if (l < 0) { l = 0; }
		// TODO fix this
		t = Math.min(t, 500);
		if (is_ie6) {
			div.style.margin = Math.round(t/3) + "px 0px 0px " + Math.round(l/4) + "px";
		} else {
			div.style.margin = Math.round(t/3) + "px 0px 0px " + Math.round(l/2) + "px";
		}
}

function closePopup(div) {
	if (div == null) {
		div = document.getElementById("popup_bkg");
	}
	if (div) {
		div.style.display = "none";
		div.style.visibility = "hidden";
	}
}


function sa_showStoryComments(story_id) {
    var div = document.getElementById("sa_story_comments");
    if (div != null) {
        var ajax = new ajaxObj("getcomments.aspx", "storyid=" + story_id);
        
        ajax.handler_method = function()
        {
            div.innerHTML = this.text;
        };
        ajax.init();
    }
}

function sa_rateCommentDown(story_id, comment_id) {
    var div = document.getElementById("sa_story_comments");
    if (typeof div != "undefined") {
        var ajax = new ajaxObj("getcomments.aspx", "storyid=" + story_id + "&commentid=" + comment_id + "&cmd=rate_down");
        ajax.handler_params = new Array(div);
        ajax.handler_method = function()
        {
            this.handler_params[0].innerHTML = this.text;
        };
        ajax.init();
    }
    return false;
}

function sa_rateCommentUp(story_id, comment_id) {
    var div = document.getElementById("sa_story_comments");
    if (typeof div != "undefined") {
        var ajax = new ajaxObj("getcomments.aspx", "storyid=" + story_id + "&commentid=" + comment_id + "&cmd=rate_up");
        ajax.handler_params = new Array(div);
        ajax.handler_method = function()
        {
            this.handler_params[0].innerHTML = this.text;
        };
        ajax.init();
    }
    return false;
}

function sa_submitCommentReply(node, div_id, story_id, comment_id) {
    var sa_story_comments = document.getElementById("sa_story_comments");
    var txt = document.getElementById("cmt_rpl_txt_" + comment_id);
    if (typeof txt != "undefined" && typeof sa_story_comments != "undefined") {
        var val = txt.value.replace(/^\s+|\s+$/g, "");
        if (val.length == 0) {
            alert("Please enter a reply");
            return;
        }
        sa_hideAddReply(node, div_id);
        var ajax = new ajaxObj("getcomments.aspx", "storyid=" + story_id + "&commentid=" + comment_id + "&cmd=add_reply" + "&txt=" + escape(val.substring(0,250)));
        ajax.handler_params = new Array(sa_story_comments);
        ajax.handler_method = function()
        {
            this.handler_params[0].innerHTML = this.text;
        };
        ajax.init();
    }
}

function sa_submitComment(story_id) {
    var sa_story_comments = document.getElementById("sa_story_comments");
    var txt = document.getElementById("cmt_txt");
    if (typeof txt != "undefined" && typeof sa_story_comments != "undefined") {
        var val = txt.value.replace(/^\s+|\s+$/g, "");
        if (val.length == 0) {
            alert("Please enter a comment");
            return;
        }
        sa_hideAddComment("", "cmt_add_cmt");
        var ajax = new ajaxObj("getcomments.aspx", "storyid=" + story_id + "&cmd=add_comment" + "&txt=" + escape(val.substring(0,250)));
        ajax.handler_params = new Array(sa_story_comments);
        ajax.handler_method = function()
        {
            this.handler_params[0].innerHTML = this.text;
        };
        ajax.init();
    }
}

function goTo(url) {
    document.location = url;
}

function showHelp(node, id) {
    sa_show(id);
}
function hideHelp(node, id) {
    sa_hide(id);
}

function submitOnReturn(node, btn_id, evt) {
    if ((window.event && window.event.keyCode == 13) ||
        (evt && evt.keyCode == 13)) {
        WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions(btn_id, "", true, "", "", false, true));
		return false;
	} else {
		return true;
	}
}

function resizeImg(img, max_w) {
    if (img.width > max_w) {
        //var scale = max_w / img.width;
        img.style.width = max_w + "px";
        //img.style.height = Math.floor(scale * img.height) + "px";
    }
}