[jQuery] User Environment Detection Suite. At 90% and need some help with the rest of the way
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=us-ascii">
<META content="MSHTML 6.00.6000.16525" name=GENERATOR></HEAD>
<BODY>
<DIV><FONT face=Arial size=2><SPAN class=321211419-23082007>My company uses a
user environment detection suite called Browserhawk (<A
href="http://www.browserhawk.com/">http://www.browserhawk.com/</A>) which sells
for around $1k per server. It detects a number of aspects about a web surfer's
environment. The detailed info on what it provides found can be found here:
</SPAN></FONT><FONT face=Arial size=2><SPAN class=321211419-23082007><A
href="http://www.browserhawk.com/showbrow.aspx">http://www.browserhawk.com/showbrow.aspx</A>.</SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN
class=321211419-23082007></SPAN></FONT> </DIV>
<DIV><FONT face=Arial size=2><SPAN class=321211419-23082007>Currently we're
using an older version of BH and we're deciding whether or not it's worth it for
us to upgrade as we really only "use" ONE of the pieces that BH provides, the
bandwidth test. We do store some of the other data, but it's only used in
helping us determine when to upgrade Flash, screen res, and all that
jazz.</SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN
class=321211419-23082007></SPAN></FONT> </DIV>
<DIV><FONT face=Arial size=2><SPAN class=321211419-23082007>My manager came to
me yesterday and asked me to see if there was a way for us to collect that
information without using BH. So I spent the last day coming up with this:
</SPAN></FONT><A href="http://www.commadelimited.com/browsertest/"><FONT
face=Arial size=2>http://www.commadelimited.com/browsertest/</FONT></A><FONT
face=Arial><FONT size=2> <SPAN class=321211419-23082007>.
</SPAN></FONT></FONT><SPAN class=321211419-23082007><FONT face=Arial size=2>It's
a one for one match for all of the pieces that we're storing and I think it's
pretty accurate.</FONT></SPAN></DIV>
<DIV><SPAN class=321211419-23082007><FONT face=Arial
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=321211419-23082007><FONT face=Arial size=2>So this post is
serving four purposes.</FONT></SPAN></DIV>
<DIV><SPAN class=321211419-23082007><FONT face=Arial
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=321211419-23082007><FONT face=Arial
size=2>1)</FONT></SPAN><SPAN class=321211419-23082007><FONT face=Arial size=2> I
need help finishing this.</FONT></SPAN></DIV>
<DIV><SPAN class=321211419-23082007><FONT face=Arial
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=321211419-23082007><FONT face=Arial size=2>I collected little
snippets of code from various tutorial sites I found so I'm sure it could be
improved quite drastically. The BIG issue though is the bandwidth test. The
original code I found dynamically wrote an image to the window, then ran a
function via the image's onLoad method. That worked really well, but I preferred
to use an AJAX call. So the code "runs", but it's not accurate, I think because
my call is asynchronous and the code needs the value right
away.</FONT></SPAN></DIV>
<DIV><SPAN class=321211419-23082007><FONT face=Arial
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=321211419-23082007><FONT face=Arial size=2>So how can I
force my code to 'wait' for the results of the image load?</FONT></SPAN></DIV>
<DIV><SPAN class=321211419-23082007><FONT face=Arial
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=321211419-23082007><FONT face=Arial size=2>2) I'm offering this
code to anyone who would like to use it [link to zip file below]. The end result
of all of this is that I'm going to do a post and submit all of the collected
data into our Stats database, as well as store it in a user's session for use in
various portions of our site.</FONT></SPAN></DIV>
<DIV><SPAN class=321211419-23082007><FONT face=Arial
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=321211419-23082007><FONT face=Arial size=2>3) I think something
like this could be VERY valuable as a jQuery plugin, but I have no idea where to
begin with.</FONT></SPAN></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><SPAN class=321211419-23082007><FONT face=Arial size=2>4) I'm trying
to get a good mix of browsers and OS to make sure that things are working as
well as possible. If you wouldn't mind running this page:</FONT></SPAN></DIV>
<DIV><SPAN class=321211419-23082007><FONT face=Arial size=2><A
href="http://www.commadelimited.com/browsertest/"><FONT face=Arial
size=2>http://www.commadelimited.com/browsertest/</FONT></A></FONT></SPAN></DIV>
<DIV><SPAN class=321211419-23082007><FONT face=Arial
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=321211419-23082007><FONT face=Arial size=2>, then copying and
pasting their results to me OFF LIST, I'd appreciate it.</FONT></SPAN></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><SPAN class=321211419-23082007><FONT face=Arial size=2>Here's a zip file if
anyone would like to look at it locally:</FONT></SPAN></DIV>
<DIV><SPAN class=321211419-23082007><A
href="http://www.commadelimited.com/browsertest/"><FONT face=Arial size=2><A
href="http://www.commadelimited.com/browsertest/userInfoDetection.zip">http://www.commadelimited.com/browsertest/</FONT></A><FONT
face=Arial size=2>userInfoDetection.zip</A></FONT></SPAN></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2><SPAN class=321211419-23082007>The server side
stuff is written in ColdFusion, but it's only basic code. Could be easily
altered for PHP, ASP, or Ruby I suppose.</SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV align=left><SPAN style="FONT-SIZE: 14px"><B><FONT face="Century Gothic">
<DIV align=left><SPAN class=159130414-05012007><FONT face=Arial size=2><SPAN
class=159130414-05012007><FONT face=Arial
size=2>____________________________________</FONT></SPAN></FONT></SPAN></DIV>
<DIV><SPAN class=159130414-05012007><FONT face=Arial size=2><SPAN
class=159130414-05012007></SPAN></FONT></SPAN> </DIV>Andy
Matthews<BR></FONT></B></SPAN><SPAN style="FONT-SIZE: 11px"><FONT
face="Century Gothic"><SPAN
style="FONT-SIZE: 8.5pt; FONT-FAMILY: 'Century Gothic'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: EN-US; mso-bidi-language: AR-SA; mso-no-proof: yes">Senior
ColdFusion Developer</SPAN><BR></FONT></SPAN><SPAN style="FONT-SIZE: 11px"><FONT
face="Century Gothic"><FONT color=#808080><IMG alt="" hspace=0
src="cid:321211419@23082007-181F" border=0><BR></FONT>Office: 877.707.5467
x747<BR>Direct: 615.627.9747<BR>Fax:
615.467.6249</FONT></SPAN></DIV>
<DIV><SPAN style="FONT-SIZE: 11px"><FONT
face="Century Gothic">amatthews@dealerskins.com<BR><A
href="http://www.dealerskins.com/">www.dealerskins.com</A></FONT></SPAN></DIV>
<DIV> </DIV></BODY></HTML>