﻿var xfnRelationships = ["friend", "acquaintance", "contact", "met", "co-worker", "colleague", "co-resident", "neighbor", "child", "parent", "sibling", "spouse", "kin", "muse", "crush", "date", "sweetheart", "me"]; var xfnFriendInfo = { createFriendInfoBox: function(A, B) { var C = this.createInfoDiv(); C.innerHTML = B; A._infoBox = C; A.friendInfo = this; document.body.appendChild(C); A.style.position = "relative"; A.onmouseover = this.showFriendInfoBox; A.onmouseout = this.hideFriendInfoBox }, createInfoDiv: function() { var A = document.createElement("div"); A.className = "xfnFriendInfoBox"; A.style.position = "absolute"; A.style.display = "none"; return A }, showFriendInfoBox: function(B) { if (!B) { B = event } var A = B.target || B.srcElement; if (!A) { return } if (A._infoBox) { A.friendInfo.positionInfoBox(B, A._infoBox); A._infoBox.style.display = "block" } }, hideFriendInfoBox: function(B) { if (!B) { B = event } var A = B.target || B.srcElement; if (!A) { return } if (A._infoBox) { A._infoBox.style.display = "none" } }, positionInfoBox: function(C, B) { var A = this.getScroll(); if (B.offsetWidth >= A.width) { B.style.width = A.width - 10 + "px" } else { B.style.width = "" } if (C.clientX > A.width - B.offsetWidth) { B.style.left = A.width - B.offsetWidth + A.left + "px" } else { B.style.left = C.clientX - 2 + A.left + "px" } if (C.clientY + B.offsetHeight + 18 < A.height) { B.style.top = C.clientY + 18 + A.top + "px" } else { if (C.clientY - B.offsetHeight > 0) { B.style.top = C.clientY + A.top - B.offsetHeight + "px" } else { B.style.top = A.top + 5 + "px" } } B.style.display = "inline" }, getScroll: function() { if (document.all && typeof document.body.scrollTop != "undefined") { var B = document.compatMode != "CSS1Compat"; var A = B ? document.body : document.documentElement; return { left: A.scrollLeft, top: A.scrollTop, width: A.clientWidth, height: A.clientHeight} } else { return { left: window.pageXOffset, top: window.pageYOffset, width: window.innerWidth, height: window.innerHeight} } } }; function highlightXFNLinks() { if (!document.getElementsByTagName) { return } var G = document.getElementsByTagName("a"); for (var E = 0; E < G.length; E++) { var C = G[E]; if (C.getAttribute("href") && C.getAttribute("rel")) { var D = ""; var A = C.getAttribute("rel"); for (var B = 0; B < xfnRelationships.length; B++) { var F = new RegExp("\\b" + xfnRelationships[B] + "\\b", "i"); if (A.match(F)) { if (D.length === 0) { D = "<h3>XFN Relationships</h3><ul>" } D += "<li>" + xfnRelationships[B] + "</li>" } } if (D.length > 0) { D += "</ul>"; xfnFriendInfo.createFriendInfoBox(C, D); if (C.className.length > 0) { C.className += " xfnRelationship" } else { C.className = "xfnRelationship" } } } } } 
