
function ShowHideUserComments(commentHideDivState, showDivState)
{ 
    var commentDiv = document.getElementById('userComments');
    var showDiv = document.getElementById('ShowUserComment');
    var hideDiv = document.getElementById('HideUserComment');
    
    if(commentDiv)
        commentDiv.style.display = commentHideDivState;
    if(hideDiv)
        hideDiv.style.display = commentHideDivState;
    if(showDiv)
        showDiv.style.display = showDivState;
    
}


var XMLHttpFactories = [
     function () {return new XMLHttpRequest()},
     function () {return new ActiveXObject("Msxml2.XMLHTTP")},
     function () {return new ActiveXObject("Msxml3.XMLHTTP")},
     function () {return new ActiveXObject("Microsoft.XMLHTTP")}
];

function createXMLHTTPObject() {
  var xmlhttp = false;
  for (var i=0;XMLHttpFactories.length > i;i++) {
    try {
            xmlhttp = XMLHttpFactories[i]();
    }
    catch (e) {
            continue;
    }
    break;
  }
  return xmlhttp;
}

function GetAssetid()
{
    var reg = /.*\/(\d\d\d\-\d\d\d\-\d\d\d).*/g;
    var assetid = '';
    if (reg.test(document.location.href))
    {
         assetid = document.location.href.replace(reg, "$1");
         return assetid;
    }

    reg = /.*\/(\d+).*/g;
    if (reg.test(document.location.href))
    {
        assetid = document.location.href.replace(reg, "$1");
        return assetid;
    }
    
    reg = /.*\?.*assetId=(\d+).*/g;
    if (reg.test(document.location.href))
    {
        assetid = document.location.href.replace(reg, "$1");
        return assetid;
    }
    
    return assetid;
}

function HttpRequest(url, write)
{
    var req = false;
    if(window.XMLHttpRequest && !(window.ActiveXObject)) {
            try {
                            req = new XMLHttpRequest();
            } catch(e) {
                            req = false;
            }
        // branch for IE/Windows ActiveX version
        } else if(window.ActiveXObject) {
            try {
                    req = new ActiveXObject("Msxml2.XMLHTTP");
                   
            } catch(e) {
                    try {
                            req = new ActiveXObject("Microsoft.XMLHTTP");
                    } catch(e) {
                            req = false;
                    }
                    }
        }
        
        try {
          req.open('POST', url, false); 
          req.send(null); 
          if (write)
            document.write(req.responseText); 
          return req.responseText;
         
        } 
        catch (e) { 
          return ""; 
          
        }
}

function injectReadOnlyUserRating(elementid) { 
    if(elementid){
                var cmd = 'update' + uelements[ca].value + '(null, true);';
                eval(cmd);
    }else{
        var uelements = document.getElementsByName('readOnlyRatingElementID');
        if(uelements){
            for(var ca=0; ca < uelements.length; ca++ ) {
                var cmd = 'update' + uelements[ca].value + '(null, true);';
                eval(cmd);
            }
        }
        
    }
}

function injectUserRating()
{
    var ord = Math.random()*10000000000000000;
    var pageUrl = window.location.pathname.replace(/\/preview\/\d+/i, "");
    var assetid = GetAssetid();            
    var theString = "/TopletsResources/UserRatingComments2/templates/Rating/" + assetid + "?HostingPageUrl=" + escape(pageUrl) + "&ord= " + ord;
    var text = HttpRequest(theString, true);
}

function injectUserComments(Page) {
    var commentDiv = document.getElementById('userComments');
    var commentDisplay = commentDiv.style.display;
    var params = 'null';
    if(Page){
        params = 'page=' + Page;
    }
    
    var uelements = document.getElementsByName('UserCommentsLayerId');
    if(uelements){
        for(var ca=0; ca < uelements.length; ca++ ) {
            var cmd = 'update' + uelements[ca].value + '(\'' + params + '\', true);';
            eval(cmd);
        }
    }

    initUserComments()
    if(commentDisplay == 'block') {
        ShowHideUserComments('block','none')
    } else {
        ShowHideUserComments('none','block')
    }
}

    
 function initUserComments()
 {
    var commentDiv = document.getElementById('userComments');
    var text = commentDiv.innerHTML;

    if (text.indexOf("Posted By") == -1)
    {
        if(document.getElementById('userCommentsHeader'))
            document.getElementById('userCommentsHeader').style.display = 'none';
        if(document.getElementById('NoCommentsHeader'))
            document.getElementById('NoCommentsHeader').style.display = 'block';   
    }
    else {
        if(document.getElementById('userCommentsHeader'))
            document.getElementById('userCommentsHeader').style.display = 'block';
        if(document.getElementById('NoCommentsHeader'))
            document.getElementById('NoCommentsHeader').style.display = 'none';
    }

 }
 
 function popup_alert()
 {
    alert("You can't agree or disagree" + '\n' + "with your own comments!");
 }

function AsynchronousPost(url)
{
  var rand = Math.random()*10000000000000000;
  url = url + '&rand=' + rand;
  if(window.XMLHttpRequest && !(window.ActiveXObject)) {
	try {
	  req = new XMLHttpRequest();
	} catch(e) {
	  req = false;
	}
	// branch for IE/Windows ActiveX version
	} else if(window.ActiveXObject) {
	  try {
	  	  req = new XMLHttpRequest();
          if (req == null) {
    		req = new ActiveXObject("Msxml2.XMLHTTP");
            }
	} catch(e) {
	   try {
		  req = new ActiveXObject("Microsoft.XMLHTTP");
		  } catch(e) {
			req = false;
		  }
	   }
	 }
	 try {
	  req.open('GET', url, false); 
	  req.send(null); 
	  } 
	 catch (e) { 
	 }

}

function URLoginClick( element )
{
    if(Tops.AjaxLogin.LoginWindow.getInstance()) {
        Tops.AjaxLogin.LoginWindow.getInstance().show();
        return false;
    }

    return true;
}