list_status = new Array();

function showHide(theid){
    if (document.getElementById) {
    var switch_id = document.getElementById(theid);

        if(list_status[theid] != 'show') {
           switch_id.className = 'show';
           list_status[theid] = 'show';
        }else{
           switch_id.className = 'hide';
           list_status[theid] = 'hide';
        }
    }
}

//Start Checkbox replace
/* var inputs;
var imgFalse = '/images/unchecked.gif';
var imgTrue = '/images/checked.gif';

function init() {
    replaceChecks();
}

function replaceChecks() {

    inputs = document.getElementsByTagName('input');

    for(var i=0; i < inputs.length; i++) {

        if(inputs[i].getAttribute('type') == 'checkbox') {

            var img = document.createElement('img');

            if(inputs[i].checked) {
                img.src = imgTrue;
            } else {
                img.src = imgFalse;
            }

            img.id = 'checkImage'+i;

            img.onclick = new Function('checkChange('+i+')');

            inputs[i].parentNode.insertBefore(img, inputs[i]);

            inputs[i].style.display='none';
        }
    }
}

function checkChange(i) {

    if(inputs[i].checked) {
        inputs[i].checked = '';
        document.getElementById('checkImage'+i).src=imgFalse;
    } else {
        inputs[i].checked = 'checked';
        document.getElementById('checkImage'+i).src=imgTrue;
    }
}

window.onload = init;
*/
///// below

var __COMMENT_CHAR_LIMIT__ = 1000;

function f_scrollTop() {
	return f_filterResults (
		window.pageYOffset ? window.pageYOffset : 0,
		document.documentElement ? document.documentElement.scrollTop : 0,
		document.body ? document.body.scrollTop : 0
	);
}


var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;

function jumpToComment()
{
	document.getElementById('new_comment').value = "";
	document.getElementById('add_comment_div').style.display = "block";
	document.getElementById('new_comment').focus();
}

function clearCommentBox()
{
	var newComObj = document.getElementById('new_comment');
	if (newComObj.value.replace(/\s+/g, '').match('Pleaseprovide'))
	{
		newComObj.value = "";
	}
	calcCommentCharsUsed();
}

function checkCommentBox()
{
	var newComObj = document.getElementById('new_comment');
	if (newComObj.value.replace(/\s+/g, '') == "")
	{
		newComObj.value = "Please provide your comments here...";
		//calcCommentCharsUsed();
	}
}

function clearAlertEmail()
{
	var alertEmailObj = document.getElementById('alert_email');
	if (alertEmailObj.value.replace(/\s+/g, '').match('EmailAdd'))
	{
		alertEmailObj.value = "";
	}
}

function checkAlertEmail()
{
	var alertEmailObj = document.getElementById('alert_email');
	if (alertEmailObj.value.replace(/\s+/g, '') == "")
	{
		alertEmailObj.value = "Email Address";
	}
}

//var __AJAX_FILE__ = "/newsroom/commentary/getURLs/getURL_commentary.php";
var __AJAX_FILE__ = "/AJAX/getURL_commentary.php";
var __RELATED_STORY_HTML__ = "";

function getMostPopular(popType)
{
	var loadingPopObj = document.getElementById('loading_popular_div');
	var loadingPopTextObj = document.getElementById('loading_popular_text');
	var mostPopHeight = document.getElementById('most_popular_box').offsetHeight;
	mostPopHeight = parseInt(mostPopHeight);
	loadingPopObj.style.height = mostPopHeight+"px";

	var loadingTextTopPad = parseInt((mostPopHeight/2) - 50);
	loadingPopTextObj.style.paddingTop = loadingTextTopPad+"px";

	switch(popType)
	{
		case "video":
			loadingPopTextObj.innerHTML = '<div id="loading_popular_text"><img class="loading_image" src="/screener/images/loading.gif" />&nbsp;Loading Videos...</div>';
			break;
		case "ticker":
			loadingPopTextObj.innerHTML = '<div id="loading_popular_text"><img class="loading_image" src="/screener/images/loading.gif" />&nbsp;Loading Tickers...</div>';
			break;
		case "story":
			loadingPopTextObj.innerHTML = '<div id="loading_popular_text"><img class="loading_image" src="/screener/images/loading.gif" />&nbsp;Loading Stories...</div>';
			break;
		default:
			loadingPopTextObj.innerHTML = '<div id="loading_popular_text"><img class="loading_image" src="/screener/images/loading.gif" />&nbsp;Loading Stories...</div>';
			break;
	}
	loadingPopObj.style.display = "block";
	posturl_obj=new postURL(__AJAX_FILE__, getMostPopular_handler);
	posturl_obj.addpost("popType", popType);
	posturl_obj.addpost("GET_MOST_POPULAR", "GET_MOST_POPULAR");
    posturl_obj.go();
}

function getMostPopular_handler(data)
{
	var split_ary = data.split('||||');
	var html = split_ary[0];
	var type = split_ary[1];
	var listObj = document.getElementById('pop_list_div');
	var loadingPopObj = document.getElementById('loading_popular_div');

	switch(type)
	{
		case "ARTICLES":
			document.getElementById('most_pop_story_tab').className = "selected_tab";
			document.getElementById('most_pop_video_tab').className = "inactive_tab";
			document.getElementById('most_pop_ticker_tab').className = "inactive_tab";
			break;
		case "VIDEO":
			document.getElementById('most_pop_story_tab').className = "inactive_tab";
			document.getElementById('most_pop_video_tab').className = "selected_tab";
			document.getElementById('most_pop_ticker_tab').className = "inactive_tab";
			break;
		case "TICKER":
			document.getElementById('most_pop_story_tab').className = "inactive_tab";
			document.getElementById('most_pop_video_tab').className = "inactive_tab";
			document.getElementById('most_pop_ticker_tab').className = "selected_tab";
			break;
	}

	listObj.innerHTML = html;
	loadingPopObj.style.display = "none";
}

function getArchive(group_id, article_type)
{
	showRelatedLoading();
	document.getElementById('related_story_tab').className = "inactive_tab";
	document.getElementById('story_archive_tab').className = "selected_tab";
	var archiveTableObj = document.getElementById('related_archive_div');
	if (__RELATED_STORY_HTML__ == "")
	{
		__RELATED_STORY_HTML__ = archiveTableObj.innerHTML;
	}
	posturl_obj=new postURL(__AJAX_FILE__, getArchive_handler);
	posturl_obj.addpost("groupID", group_id);
	posturl_obj.addpost("articleType", article_type);
	posturl_obj.addpost("GET_ARCHIVE", "GET_ARCHIVE");
	posturl_obj.addpost("startLimit", 0)
    posturl_obj.go();
}

function getArchive_handler(data)
{
	var archiveTableObj = document.getElementById('related_archive_div');
	archiveTableObj.innerHTML = data;
	hideRelatedLoading();
}

function next_5 (startLimit, group_id, article_type)
{
	showRelatedLoading();
	posturl_obj=new postURL(__AJAX_FILE__, next_5_handler);
	posturl_obj.addpost("groupID", group_id);
	posturl_obj.addpost("GET_ARCHIVE", "GET_ARCHIVE");
	posturl_obj.addpost("articleType", article_type);
	posturl_obj.addpost("startLimit", startLimit)
    posturl_obj.go();
}

function next_5_handler(data)
{
	document.getElementById('related_archive_div').innerHTML = data;
	hideRelatedLoading();
}

function prev_5 (startLimit, group_id, article_type)
{
	showRelatedLoading();
	posturl_obj=new postURL(__AJAX_FILE__, next_5_handler);
	posturl_obj.addpost("groupID", group_id);
	posturl_obj.addpost("GET_ARCHIVE", "GET_ARCHIVE");
	posturl_obj.addpost("articleType", article_type);
	posturl_obj.addpost("startLimit", startLimit)
    posturl_obj.go();
}

function prev_5_handler(data)
{
	document.getElementById('related_archive_div').innerHTML = data;
	hideRelatedLoading();
}

function positionRelatedLoading()
{
	var loadingRelatedObj = document.getElementById('loading_related_div');
	var loadingRelatedTextObj = document.getElementById('loading_related_text');
	var mostRelatedHeight = document.getElementById('related_stories_div_id').offsetHeight;
	mostRelatedHeight = parseInt(mostRelatedHeight);
	loadingRelatedObj.style.height = mostRelatedHeight+"px";

	var loadingTextTopPad = parseInt((mostRelatedHeight/2) - 110);
	if (loadingTextTopPad < 0)
	{
		loadingTextTopPad = 0;
	}
	loadingRelatedTextObj.style.paddingTop = loadingTextTopPad+"px";
}

function hideRelatedLoading()
{
	document.getElementById('loading_related_div').style.display = "none";
}

function showRelatedLoading()
{
	positionRelatedLoading();
	document.getElementById('loading_related_div').style.display = "block";
}

function getRelatedStories()
{
	showRelatedLoading();
	document.getElementById('related_story_tab').className = "selected_tab";
	document.getElementById('story_archive_tab').className = "inactive_tab";
	var archiveTableObj = document.getElementById('related_archive_div');
	archiveTableObj.innerHTML = __RELATED_STORY_HTML__;
	hideRelatedLoading();
}

function showPostLoading()
{
	document.getElementById('loading_post_comment').style.display = "block";
}

function hidePostLoading()
{
	document.getElementById('loading_post_comment').style.display = "none";
}

function showCommentLoading()
{
	var loadingCommentObj = document.getElementById('loading_comment_archive');
	var loadingCommentTextObj = document.getElementById('loading_comment_archive_text');
	var mainCommentHeight = document.getElementById('main_comment_div').offsetHeight;
	mainCommentHeight = parseInt(mainCommentHeight);
	loadingCommentObj.style.height = mainCommentHeight+"px";

	var loadingTextTopPad = parseInt((mainCommentHeight/2) - 20);
	if (loadingTextTopPad < 0)
	{
		loadingTextTopPad = 0;
	}
	loadingCommentTextObj.style.paddingTop = loadingTextTopPad+"px";
	loadingCommentObj.style.display = "block";
}

function hideCommentLoading()
{
	document.getElementById('loading_comment_archive').style.display = "none";
}

function checkDisplayName(displayName, postType, eType, idArticle, szTicker, comment, email, iMail)
{
	posturl_obj=new postURL(__AJAX_FILE__, checkDisplayName_handler);
	posturl_obj.addpost("displayName", displayName);
	posturl_obj.addpost("postType", postType);
	posturl_obj.addpost("eType", eType);
	posturl_obj.addpost("idArticle", idArticle);
	posturl_obj.addpost("szTicker", szTicker);
	posturl_obj.addpost("comment", comment);
	posturl_obj.addpost("email", email);
	posturl_obj.addpost("iMail", iMail);
	posturl_obj.addpost("CHECK_DISPLAY_NAME", "CHECK_DISPLAY_NAME");
    posturl_obj.go();
}

function setPostCommentError(msg)
{
	document.getElementById('error_post_comment_text').innerHTML = msg + '<br><br><span onclick="hideError(\'error_post_comment\');" class="error_close">[CLICK TO CLOSE X]</span>';
	showError('error_post_comment');
}

function checkDisplayName_handler (data)
{
	if (data == 'true')
	{
		posturl_obj=new postURL(__AJAX_FILE__, successPostComment_handler);
		posturl_obj.addpost("POST_COMMENT_DISPLAY_UPDATED", "POST_COMMENT_DISPLAY_UPDATED");
	    posturl_obj.go();
	}
	else
	{

		//alert('This display name is already taken.  Please try another name.');
		setPostCommentError('This display name is already taken.  Please try another name.');
		document.getElementById('display_name').focus();
		hidePostLoading();
	}
}

function postComment(postType, eType, idArticle, szTicker)
{
	showPostLoading();
	if (checkCommentLength() === false)
	{
		hidePostLoading();
		return false;
	}
	postType = parseInt(postType);
	var email = "";
	var displayName = "";
	var comment = "";
	var testDisplayName = "";
	var testComment = "";

	var comment = "";

	var emailObj = document.getElementById('email_address');
	var displayNameObj = document.getElementById('display_name');
	var commentObj = document.getElementById('new_comment');

	if (postType == 0)
	{
		email = emailObj.value;
	}

	if (postType <= 1)
	{
		displayName = displayNameObj.value;
		testDisplayName = displayName.replace(/\s+/g, '');
	}

	if((reg.test(email) == false) && (postType == 0))
	{
      	//alert('You must enter a valid email address.');
      	setPostCommentError('Please enter a valid email address to submit comment.<br><br>Thank you.  Zacks.com');
      	emailObj.style.border = "1px solid #FF0000";
      	emailObj.focus();
      	hidePostLoading();
      	return false;
   	}

   	if (((testDisplayName == "") || (reg.test(displayName) == true)) && ((postType == 0) || (postType == 1)))
   	{
   		//alert('You must enter a valid display name.  Display name cannot be an email address.');
   		setPostCommentError('Please enter a valid display name (no email addresses).<br><br>Thank you.  Zacks.com');
   		displayNameObj.style.border = "1px solid #FF0000";
   		displayNameObj.focus();
   		hidePostLoading();
   		return false;
   	}

	comment = commentObj.value;
	testComment = comment.replace(/\s+/g, '');

   	if ((testComment == "") || testComment.match('Pleaseprovideyourcommentshere'))
   	{
   		//alert('You must enter a comment.');
   		setPostCommentError('You must enter a comment.');
   		commentObj.style.border = "1px solid #FF0000";
   		commentObj.focus();
   		hidePostLoading();
   		return false;
   	}

	if (postType == 0)
	{
		hidePostLoading();
		GB_showCenter('Confirm account to post comment.' , "/articles_confirm.php?switch_type=pop_new_account&eType="+eType+"&idArticle="+idArticle+"&display_name="+displayName+"&email_address="+email+"&comment="+comment+"&szTicker="+szTicker+"&postType="+postType, 250, 400);
		return true;
	}
	else if (postType == 1)
	{
		displayName = displayNameObj.value;
		checkDisplayName(displayName, postType, eType, idArticle, szTicker, comment, '', 1);
		return true;
	}
	else
	{
	   	posturl_obj=new postURL(__AJAX_FILE__, postComment_handler);
		posturl_obj.addpost("comment", comment);
		posturl_obj.addpost("POST_COMMENT", "POST_COMMENT");
		posturl_obj.addpost("displayName", displayName);
		posturl_obj.addpost("eType", eType);
		posturl_obj.addpost("idArticle", idArticle);
		posturl_obj.addpost("szTicker", szTicker);
		posturl_obj.addpost("email", email);
		posturl_obj.addpost("postType", postType);
	    posturl_obj.go();
	}
}

function postComment_handler(data)
{
	if (!data.match('~~~~'))
	{
		var data_ary = data.split('||||');

		var switch_type = data_ary[0];
		var display_name = data_ary[1];
		var email_address = data_ary[2];
		var cust_id = data_ary[3];
		var window_title = data_ary[4];

		hidePostLoading();
		GB_showCenter(window_title , "/articles_confirm.php?switch_type="+switch_type+"&display_name="+display_name+"&email_address="+email_address+"&cust_id="+cust_id, 300, 400);
	}
	else
	{
		var data_ary = data.split('~~~~');

		if (data_ary['0'] == '0')
		{
			//alert(data_ary['1']);
			setPostCommentError(data_ary['1']);
		}
		else
		{
			document.getElementById('main_comment_div').innerHTML = data_ary['1'];
			//document.getElementById('add_comment_div').innerHTML = "";
			document.getElementById('add_comment_div').style.display = "none";
			updateRelatedTickers();
			hidePostLoading();
		}
	}
}

function confirmEmail(display_name)
{
	var confirmObj = document.getElementById('confirm_email');
	var confirmTestObj = document.getElementById('email');

	if(reg.test(confirmObj.value) == false)
	{
		alert('You must enter a valid email!');
		confirmObj.style.border="#FF0000";
		confirmObj.focus();
		return false;
	}
	else if (confirmObj.value != confirmTestObj.value)
	{
		alert('Your email addresses don\'t match!');
		confirmTestObj.style.border="#FF0000";
		confirmTestObj.focus();
		return false;
	}

	posturl_obj=new postURL(__AJAX_FILE__, confirmEmail_handler);
	posturl_obj.addpost("email", confirmTestObj.value);
	posturl_obj.addpost("displayName", display_name);
	posturl_obj.addpost("CREATE_NEW_ACCOUNT", "CREATE_NEW_ACCOUNT");
    posturl_obj.go();


}


function confirmEmail_handler(data)
{
	var data_ary = data.split('||||');
	if (data_ary['0'] == '0')
	{
		alert(data_ary['1']);
	}
	else
	{
		//parent.parent.document.getElementById('add_comment_div').innerHTML = "";
		parent.parent.document.getElementById('add_comment_div').style.display = "none";
		parent.parent.document.getElementById('main_comment_div').innerHTML = data_ary['1'];
	}
	parent.parent.GB_CURRENT.hide();
}

function successPostComment_handler(data)
{
	var data_ary = data.split('~~~~');

	if (data_ary['0'] == '0')
	{
		alert(data_ary['1']);
	}
	else
	{
		document.getElementById('main_comment_div').innerHTML = data_ary['1'];
		//document.getElementById('add_comment_div').innerHTML = "";
		document.getElementById('add_comment_div').style.display = "none";
		updateRelatedTickers();
		hidePostLoading();
	}
}

function loginAJAX()
{
	if (document.getElementById('displayName').value == document.getElementById('display_name_check').value)
	{
		alert('This display name is already taken.  Please try another.');
	}
	else
	{
		posturl_obj=new postURL(__AJAX_FILE__, loginAJAX_handler);
		posturl_obj.addpost("username", document.getElementById('username').value);
		posturl_obj.addpost("password", document.getElementById('password').value);
		posturl_obj.addpost("displayName", document.getElementById('displayName').value);
		posturl_obj.addpost("DO_LOGIN", "DO_LOGIN");
	    posturl_obj.go();
	}
}

function loginAJAX_handler(data)
{
	if (data.match('~~~~'))
	{
		var data_ary = data.split('~~~~');
		if (data_ary['0'] == '0')
		{
			alert(data_ary['1']);
		}
		else
		{
			//parent.parent.document.getElementById('add_comment_div').innerHTML = "";
			parent.parent.document.getElementById('add_comment_div').style.display = "none";
			parent.parent.document.getElementById('main_comment_div').innerHTML = data_ary['1'];
			parent.parent.updateRelatedTickers();
		}
		parent.parent.GB_CURRENT.hide();
		}
	else
	{
		var data_ary = data.split('||||');
		alert(data_ary[1]);
	}
}

function confirmAccount(confirm_display_name, displayName)
{
	var emailObj = document.getElementById('email');
	var confrimEmailObj = document.getElementById('confirm_email');
	if (document.getElementById('display_name_check'))
	{
		var displayNameObj = document.getElementById('display_name_check');
		if (displayNameObj.value.replace(/\s/g, '') == '')
	   	{
	   		alert('Display Name cannot be blank!  Please try again.');
	   		displayNameObj.style.border = "1px solid #FF0000";
	   		emailObj.style.border = "1px solid #CCCCCC";
	      	displayNameObj.focus();
	      	return false;
	   	}
	}

	var email = emailObj.value;
	var confirmEmail = confrimEmailObj.value;

	if(reg.test(email) == false)
	{
      	alert('You must enter a valid email address.');
      	emailObj.style.border = "1px solid #FF0000";
      	emailObj.focus();
      	return false;
   	}

   	if (email != confirmEmail)
   	{
   		alert('Email and Confirm Email do not match.  Please verify that you typed them correctly.');
      	emailObj.style.border = "1px solid #FF0000";
      	emailObj.focus();
      	return false;
   	}

   	if (confirm_display_name == 'yes')
   	{
   		verifyDisplay(email, confirmEmail);
   	}
   	else
   	{
   		createAccountPostComment(email, displayName);
   	}
}

function verifyDisplay(email, confirmEmail)
{
	var displayName = document.getElementById('display_name_check').value;
	posturl_obj=new postURL(__AJAX_FILE__, verifyDisplay_handler);
	posturl_obj.addpost("email", email);
	posturl_obj.addpost("displayName", displayName);
	posturl_obj.addpost("VERIFY_DISPLAY", "VERIFY_DISPLAY");
    posturl_obj.go();
}

function verifyDisplay_handler(data)
{
	if (!data.match('~~~~'))
	{
		alert('Your display name has already been used.  Please try a different one.');
		return false;
	}
	else
	{
		var data_ary = data.split('~~~~');
		var email = data_ary[0];
		var displayName = data_ary[1];
		createAccountPostComment(email, displayName);
	}
}

function createAccountPostComment(email, displayName)
{
	posturl_obj=new postURL(__AJAX_FILE__, createAccountPostComment_handler);
	posturl_obj.addpost("email", email);
	posturl_obj.addpost("displayName", displayName);
	posturl_obj.addpost("CREATE_ACCOUNT_POST_COMMENT", "CREATE_ACCOUNT_POST_COMMENT");
    posturl_obj.go();
}

function createAccountPostComment_handler(data)
{
	var data_ary = data.split('~~~~');
	if (data_ary['0'] == '0')
	{
		alert(data_ary['1']);
	}
	else
	{
		//parent.parent.document.getElementById('add_comment_div').innerHTML = "";
		parent.parent.document.getElementById('add_comment_div').style.display = "none";
		parent.parent.document.getElementById('main_comment_div').innerHTML = data_ary['1'];
		parent.parent.updateRelatedTickers();
	}
	parent.parent.GB_CURRENT.hide();
}

function next_comments(idArticle, szTicker, eType, order, num_to_show, start_num, szTitle)
{
	showCommentLoading();
	posturl_obj=new postURL(__AJAX_FILE__, next_comments_handler);
	posturl_obj.addpost("idArticle", idArticle);
	posturl_obj.addpost("szTicker", szTicker);
	posturl_obj.addpost("eType", eType);
	posturl_obj.addpost("order", order);
	posturl_obj.addpost("num_to_show", num_to_show);
	posturl_obj.addpost("start_num", start_num);
	posturl_obj.addpost("szTitle", szTitle);
	posturl_obj.addpost("GET_COMMENT_ARCHIVE", "GET_COMMENT_ARCHIVE");
    posturl_obj.go();
}

function next_comments_handler(data)
{
	hideCommentLoading();
	document.getElementById('main_comment_div').innerHTML = data;
}

function rate(idArticle, eType, szTicker, rateType)
{
	document.getElementById('rate_pos_td').innerHTML = '<img src="/images/icon_rate_up.gif"><br>Rate Pos';
	document.getElementById('rate_neg_td').innerHTML = '<img src="/images/icon_rate_down.gif"><br>Rate Neg';

	posturl_obj=new postURL(__AJAX_FILE__, rate_handler);
	posturl_obj.addpost("idArticle", idArticle);
	posturl_obj.addpost("szTicker", szTicker);
	posturl_obj.addpost("eType", eType);
	posturl_obj.addpost("rateType", rateType);
	posturl_obj.addpost("RATE_ARTICLE", "RATE_ARTICLE");
    posturl_obj.go();
}

function rate_handler(data)
{
	var data_ary = data.split('||||');
	var rate_type = data_ary[0];
	var num_pos = data_ary[1];
	if (rate_type == "POS")
	{
		document.getElementById('rate_pos_td').innerHTML = '<span style="color: #FF0000;">Success</span><br><img src="/images/icon_rate_up.gif"><br>Rate Pos';
		document.getElementById('rate_neg_td').innerHTML = '<img src="/images/icon_rate_down.gif"><br>Rate Neg';
	}
	else
	{
		document.getElementById('rate_pos_td').innerHTML = '<img src="/images/icon_rate_up.gif"><br>Rate Pos';
		document.getElementById('rate_neg_td').innerHTML = '<span style="color: #FF0000;">Success</span><br><img src="/images/icon_rate_down.gif"><br>Rate Neg';
	}

	document.getElementById('num_recs_1').innerHTML = num_pos;
	document.getElementById('num_recs_2').innerHTML = num_pos;
}

function calcCommentCharsUsed()
{
	var new_commentObj = document.getElementById('new_comment');
	var counterObj = document.getElementById('comment_chars_used');
	var chars_used = new_commentObj.value.length;
	counterObj.innerHTML = chars_used;
}

function checkCommentLength()
{
	var new_commentObj = document.getElementById('new_comment');
	var counterObj = document.getElementById('comment_chars_used');

	var chars_used = new_commentObj.value.length;
	var chars_left = parseInt(__COMMENT_CHAR_LIMIT__ - chars_used);

	if (chars_left < 0)
	{
		alert('You must remove '+Math.abs(chars_left)+' characters to submit this post.');
		return false;
	}
	else
	{
		return true;
	}
}

function commentLink(articleTitle, link)
{
	article_title = urlencode(articleTitle);
	comment_link = urlencode(link);
	GB_showCenter('Copy and paste your desired link to this comment.' , "/articles_confirm.php?switch_type=comment_link_display&article_title="+article_title+"&comment_link="+comment_link, 300, 450);
}

function urldecode( str )
{
    var ret = str;
    ret = ret.replace(/\+/g, '%20');
    ret = unescape(ret);
    ret = ret.replace(/\\'/g, "'");
    ret = ret.replace(/\\"/g, '"');
    ret = ret.replace(/\\\\/g, "\\");
    ret = ret.toString();
    return ret;
}

function urlencode(str)
{
	str = escape(str);
	str = str.replace('+', '%2B');
	str = str.replace('%20', '+');
	str = str.replace('*', '%2A');
	str = str.replace('/', '%2F');
	str = str.replace('@', '%40');
	return str;
}

GB_myShow = function(caption, url, height, width, callback_fn) {
	var options = {
		caption: caption,
		height: height || 500,
		width: width || 500,
		fullscreen: false,
		show_loading: true,
		overlay_click_close: true,
		callback_fn: callback_fn
	}
	var win = new GB_Window(options);
	return win.show(url);
}


function showReportAbuseLoading(id)
{
	document.getElementById('loading_comment_abuse_'+id).style.display = 'block';
}

function hideReportAbuseLoading(id)
{
	document.getElementById('loading_comment_abuse_'+id).style.display = 'none';
}

function cancelAbuse(id)
{
	document.getElementById('report_abuse_div_'+id).style.display = 'none';
}

function reportAbuse(id)
{
	document.getElementById('report_abuse_div_'+id).style.display = 'block';
}

function clearAbuse(id)
{
	var textObj = document.getElementById('report_abuse_text_'+id);
	var textObjClean = textObj.value.replace(/\s/g, '');
	if (textObjClean.match('EnterComment.'))
	{
		textObj.value = '';
	}
}

function checkAbuse(id)
{
	var textObj = document.getElementById('report_abuse_text_'+id);
	var textObjClean = textObj.value.replace(/\s/g, '');
	if (textObjClean == '')
	{
		textObj.value = 'Enter Comment...';
	}
}

function insertAbuse(id)
{
	showReportAbuseLoading(id);
	var textObj = document.getElementById('report_abuse_text_'+id);
	posturl_obj=new postURL(__AJAX_FILE__, insertAbuse_handler);
	posturl_obj.addpost("idComment", id);
	posturl_obj.addpost("abuseComment", textObj.value);
	posturl_obj.addpost("REPORT_ABUSE", "REPORT_ABUSE");
    posturl_obj.go();
}

function insertAbuse_handler(data)
{
	var split_ary = data.split('||||');
	var id = split_ary[0];
	var msg = split_ary[1];
	if (msg == 'error')
	{
		showError('error_comment_abuse_'+id);
	}
	else
	{
		cancelAbuse(id);
		document.getElementById('report_link_'+id).style.display = 'none';
	}
	hideReportAbuseLoading(id);

}

function showError(id)
{
	document.getElementById(id).style.display = 'block';
}

function hideError(id)
{
	document.getElementById(id).style.display = 'none';
}

function sendToFriend()
{
	var sendFriendObj = document.getElementById('sendfriend_div');
	if ((sendFriendObj.style.display == "none") || (sendFriendObj.style.display == ""))
	{
		sendFriendObj.style.display = "block";
	}
	else
	{
		sendFriendObj.style.display = "none";
	}
}

function updateRelatedTickers()
{
	posturl_obj=new postURL(__AJAX_FILE__, updateRelatedTickers_handler);
	posturl_obj.addpost("UPDATE_RELATED_TICKERS", "UPDATE_RELATED_TICKERS");
    posturl_obj.go();
}

function updateRelatedTickers_handler(data)
{
	if (document)
	{
		document.getElementById('related_tickers_update_div').innerHTML = data;
	}
	else
	{
		parent.document.getElementById('related_tickers_update_div').innerHTML = data;
	}
}