
function UrlRewrite()
{
    var anchors = document.getElementsByTagName("a");

    for(var i=0; i < anchors.length; i++)
    {
        var hrefLink = anchors[i].href;
        var hrefLinkLower = hrefLink.toLowerCase();

        var profileEditURL = "http://" + document.location.host + "/pages/editregistration.aspx?source=http://" + document.location.host + "/pages/userprofile.aspx"
        var profileBioEditURL = "http://" + document.location.host + "/pages/editregistration.aspx?source=http://" + document.location.host + "/pages/userprofile.aspx&biofocus=true"

        if (hrefLinkLower == profileEditURL || hrefLinkLower == profileBioEditURL)
        {
            // Don't change the href.
        }
        else
        {
            var splitProfileHref = hrefLink.split("/");
            if(hrefLink.toLowerCase().match("/pages/userprofile.aspx?"))
            {
                var userName = hrefLink.substring(hrefLink.lastIndexOf("=") + 1, hrefLink.length);
                var newProfileLink = splitProfileHref[0] + "/" + splitProfileHref[1] + "/" + splitProfileHref[2] + "/" + userName;
                anchors[i].href = newProfileLink;
            }
        }

        var splitHref = hrefLink.split("/");        
        if(splitHref.length > 3)
        {
           if(splitHref[3].toLowerCase().match("viewpoints"))
           {                
                if(!(anchors[i].href.toLowerCase().match("_layouts")))
                {
                    var newViewPointUrl;
                    var viewPointName = splitHref[4];
                    var newViewPointBaseUrl = anchors[i].protocol + "//" + anchors[i].host + "/" + "viewpoints" + "/" + viewPointName
                    var queryString = anchors[i].href.toLowerCase().split("?");
                
                    if(queryString.length > 1)
                    {
                        var linkArray = queryString[0].split("/");                        
                        if(linkArray.length > 6)
                        {
                            newViewPointBaseUrl = newViewPointBaseUrl + "/" + linkArray[6] + "?" + queryString[1];
                            anchors[i].href = newViewPointBaseUrl;
                        }
                    }
                    else
                    {   
                        if(splitHref.length > 5)
                        {                
                        if(splitHref[5].toLowerCase().match("favorites"))
                        {
                            newViewPointBaseUrl = hrefLinkLower;
                        }   
                        else
                        {       
                            if(splitHref[6].length > 1)
                            {
                                if(!(splitHref[6].toLowerCase().match("viewpointhome.aspx")))
                                {
                                    newViewPointBaseUrl = newViewPointBaseUrl + "/" + splitHref[6];                                    
                                }
                                anchors[i].href = newViewPointBaseUrl;
                            }
                         }
                        }
                    }
                }
            }
            
            // rewrite users begin
           if(splitHref[3].match("users"))
           {
                if(!(anchors[i].href.match("_layouts")))
                {    
                    anchors[i].href = anchors[i].protocol + "//" + anchors[i].host;
                    for(var j=5; j< splitHref.length; j++)
                    {
                       anchors[i].href = anchors[i].href + "/" + splitHref[j];
                    }
                }
           }           
           // rewrite users end
        }
    }
}
