<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Kevin E. Kline &#187; Transact-SQL Programming</title>
	<atom:link href="http://kevinekline.com/category/transact-sql-programming/feed/" rel="self" type="application/rss+xml" />
	<link>http://kevinekline.com</link>
	<description>Kevin E. Kline&#039;s Blog</description>
	<lastBuildDate>Mon, 09 Jan 2012 23:47:34 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>Everybody Needs a Test Harness</title>
		<link>http://kevinekline.com/2011/10/31/everybody-needs-a-test-harness/</link>
		<comments>http://kevinekline.com/2011/10/31/everybody-needs-a-test-harness/#comments</comments>
		<pubDate>Mon, 31 Oct 2011 14:39:42 +0000</pubDate>
		<dc:creator>kevin</dc:creator>
				<category><![CDATA[Databases]]></category>
		<category><![CDATA[On-Line Resources]]></category>
		<category><![CDATA[Performance]]></category>
		<category><![CDATA[SQL Server]]></category>
		<category><![CDATA[SQLMag]]></category>
		<category><![CDATA[SQLServerPedia Syndication]]></category>
		<category><![CDATA[TCD blog post]]></category>
		<category><![CDATA[Tips & Tricks]]></category>
		<category><![CDATA[Tool Time]]></category>
		<category><![CDATA[Transact-SQL Programming]]></category>
		<category><![CDATA[DBA]]></category>
		<category><![CDATA[Developer]]></category>
		<category><![CDATA[SQL Server 2008 R2]]></category>
		<category><![CDATA[Tools & Scripts]]></category>
		<category><![CDATA[Troubleshooting]]></category>

		<guid isPermaLink="false">http://kevinekline.com/?p=1831</guid>
		<description><![CDATA[Here's a handy little block of T-SQL code to improve code stability.]]></description>
			<content:encoded><![CDATA[<p>When you&#8217;re developing new Transact-SQL code or modifying some existing code, do you just launch directly into programming?</p>
<p>I know that I did just that, for years.  It wasn&#8217;t until I was trying to performance tune some existing code that I realized I hadn&#8217;t actually taken caching of data and execution plans into account.  So all those modified stored procedures that I was so proud of might not actually be faster than the first generation of procedures because I hadn&#8217;t checked to ensure that I was testing cached programs against uncached programs (and, by extension, the data used by those programs).  That&#8217;s easy enough to fix with a <em>test harness.</em>  Test harness were originally an actual, physical harness used by engineers to clamp down parts of an electrical or mechanical device they were prototyping.  Ours is no different.  It locks down all of the assumptions about our code (like my early, false assumption that I didn&#8217;t need to clear the caches) and adds a metric or two for good measure &#8211; literally &#8211; so we can better measure what&#8217;s happening in that code.</p>
<p>Here&#8217;s what my test harness looks like:</p>
<pre style="padding-left: 30px;">/* Transact-SQL test harness by Kevin Kline, http://KevinEKline.com, Twitter at kekline */</pre>
<pre style="padding-left: 30px;">/* Flush dirty pages from the buffer to the database files. */</pre>
<pre style="padding-left: 30px;">CHECKPOINT;</pre>
<pre style="padding-left: 30px;">/* Flush the data cache and procedure cache, respectively. For DEV environments only! */</pre>
<pre style="padding-left: 30px;">DBCC DROPCLEANBUFFERS;</pre>
<pre style="padding-left: 30px;">DBCC FREEPROCCACHE;</pre>
<pre style="padding-left: 30px;">/* Enable statistics tracking for IO and timings. Remember, SET commands remain enabled during a session until disabled. */</pre>
<pre style="padding-left: 30px;">SET STATISTICS IO ON;</pre>
<pre style="padding-left: 30px;">SET STATISTICS TIME ON;</pre>
<pre style="padding-left: 30px;">-- Whatever SQL code you'd like to process goes below.</pre>
<pre style="padding-left: 30px;">SELECT SalesOrderID</pre>
<pre style="padding-left: 30px;">FROM Sales.SalesOrderHeader H</pre>
<pre style="padding-left: 30px;">WHERE CustomerID = 344</pre>
<pre style="padding-left: 30px;">GO</pre>
<pre style="padding-left: 30px;">SET STATISTICS IO OFF;</pre>
<pre style="padding-left: 30px;">SET STATISTICS TIME OFF;</pre>
<pre style="padding-left: 30px;">/* Textual Execution Plans, if desired.</pre>
<pre style="padding-left: 30px;">SET SHOWPLAN_TEXT ON;</pre>
<pre style="padding-left: 30px;">SET SHOWPLAN_TEXT OFF;</pre>
<pre style="padding-left: 30px;">*/</pre>
<p>&nbsp;</p>
<p>I also like to include the execution plans a lot of the time.  You might wonder why I don&#8217;t save the execution plans for the GUI in SSMS?  Well, I&#8217;m a big advocate of scripting in general because I like to automate activities.  By pulling the execution plans using scripts, I can use SQLCMD to schedule a large number of query executions during the evening and have the results ready for analysis when I come back into the office in the morning.  <em>Workin&#8217; smarter, not harder, Baby!</em></p>
<p>So how does this test harness work for you?  Do you use other elements in yours?  If so, share your experiences here!</p>
<p>Thanks,</p>
<p>-Kevin</p>
<p>-<a title="C'mon. You know you want to." href="http://twitter.com/kekline" target="_blank">Follow me on Twitter</a></p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://kevinekline.com/2011/10/31/everybody-needs-a-test-harness/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SQL Server Migration Roll-Up</title>
		<link>http://kevinekline.com/2011/05/02/sql-server-migration-roll-up/</link>
		<comments>http://kevinekline.com/2011/05/02/sql-server-migration-roll-up/#comments</comments>
		<pubDate>Mon, 02 May 2011 15:39:55 +0000</pubDate>
		<dc:creator>rachel</dc:creator>
				<category><![CDATA[Administration]]></category>
		<category><![CDATA[Challenges]]></category>
		<category><![CDATA[Databases]]></category>
		<category><![CDATA[On-Line Resources]]></category>
		<category><![CDATA[Performance]]></category>
		<category><![CDATA[SQL Server]]></category>
		<category><![CDATA[SQLMag]]></category>
		<category><![CDATA[SQLServerPedia Syndication]]></category>
		<category><![CDATA[Tips & Tricks]]></category>
		<category><![CDATA[Tool Time]]></category>
		<category><![CDATA[Transact-SQL Programming]]></category>
		<category><![CDATA[Virtualization]]></category>
		<category><![CDATA[cloud computing]]></category>
		<category><![CDATA[DBA]]></category>
		<category><![CDATA[Developer]]></category>
		<category><![CDATA[MS-Access]]></category>
		<category><![CDATA[MySQL]]></category>
		<category><![CDATA[Oracle]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[SQL Azure]]></category>
		<category><![CDATA[SQL Server 2008 R2]]></category>
		<category><![CDATA[Sybase]]></category>
		<category><![CDATA[Tools]]></category>
		<category><![CDATA[Tools & Scripts]]></category>

		<guid isPermaLink="false">http://kevinekline.com/?p=1287</guid>
		<description><![CDATA[Here are a hand full of cool database migration tools and white papers worth mentioning for SQL Server, Oracle, MySQL, and Sybase.]]></description>
			<content:encoded><![CDATA[<p>There are so many great tools out there for data professionals using Microsoft SQL Server.  I really like to see all of these great tools made free to the public.  On the other hand, I&#8217;m bummed that the tools are cast about in a very decentralized fashion. If you haven&#8217;t done migrations before, you might want to start with <a title="SQL Server Migration White Papers" href="http://www.microsoft.com/downloads/en/details.aspx?displaylang=en&amp;FamilyID=c7933d3e-b7b9-43a6-ade3-f8e37c8cb046#tm" target="_blank">these good white papers first</a>.</p>
<p>Here are a hand full of cool <em>migration</em> tools worth mentioning:</p>
<p><a title="Migrate from MySQL to SQL Server" href="http://blogs.technet.com/b/dataplatforminsider/archive/2010/08/12/microsoft-announces-sql-server-migration-assistant-for-mysql.aspx" target="_blank">Microsoft SQL Server Migration Assistant (SSMA) for MySQL</a>: Migrate from MySQL to <strong>SQL Azure </strong>or <strong>SQL Server</strong> with ease.  Plus, here are a few related Knowledge Base (KB) articles:</p>
<p style="padding-left: 30px;">Azure SQL Service: Database Migration To Sql Azure<br />
<a href="http://support.microsoft.com/kb/2212855/en-US">http://support.microsoft.com/kb/2212855/en-US</a></p>
<p>Azure SQL Service: Database Migration To Sql Azure<br />
<a href="http://support.microsoft.com/kb/2212990/en-US">http://support.microsoft.com/kb/2212990/en-US</a></p>
<p>Azure SQL Service: Developing Applications For Sql Azure<br />
<a href="http://support.microsoft.com/kb/2213496/en-US">http://support.microsoft.com/kb/2213496/en-US</a></p>
<p><a title="Migrate from Sybase to SQL Server" href="http://www.microsoft.com/downloads/details.aspx?displaylang=en&amp;familyid=f39d6150-e611-46e1-84c5-0808010711c8" target="_blank">SQL Server Migration Assistant (SSMA) for Sybase</a>: Migrate from Sybase ASE to SQL Server 2005, SQL Server 2008 and SQL Server 2008 R2.</p>
<p><a title="Migrate from MS-Access" href="http://www.microsoft.com/downloads/details.aspx?displaylang=en&amp;familyid=5abe098d-c7e1-46c6-994a-09a2856eef0b" target="_blank">SQL Server Migration Assistant (SSMA) for Microsoft Access</a>: Migrate from Access to SQL Server 2005, SQL Server 2008, SQL Server 2008 R2 and SQL Azure.</p>
<p><a title="Migrate from Oracle to SQL Server" href="http://www.microsoft.com/downloads/details.aspx?displaylang=en&amp;familyid=9dfb1773-5594-44a9-869f-a891629f80a5" target="_blank">SQL Server Migration Assistant (SSMA) for Oracle</a>:  Migrate from Oracle to SQL Server 2005, SQL Server 2008 or SQL Server  2008 R2.  I&#8217;m thinking about installing it on my SQL Servers even  without even needing to migrate existing Oracle databases to SQL Server.  Why?  Well as an old Oracle hand, I came to really enjoy quite a few Oracle PL/SQL system packages (kind&#8217;a like a SQL Server system stored procedure, but often more powerful).  As it turns out SSMA-Oracle includes stored procedures, extended stored procedures, and CLR  routines that reproduce the functionality in most all of the cool and powerful Oracle  packages like <strong>DBMS_PIPES.</strong> It&#8217;d be nice to have those on my SQL Servers just because I know them and like them.<strong><br />
</strong></p>
<p><a title="PHP for SQL Server Drivers" href="http://blogs.technet.com/b/dataplatforminsider/archive/2010/08/05/microsoft-drivers-for-php-for-sql-server-2-0-released.aspx" target="_blank">Microsoft Drivers for PHP for SQL Server 2.0</a>: Microsoft Drivers for PHP for SQL Server &#8211; and PHP is good.<a title="Microsoft Services" href="http://blogs.technet.com/b/dataplatforminsider/archive/2010/08/10/microsoft-services-launches-new-offerings-for-mission-critical-customers.aspx" target="_blank"></a></p>
<p><a title="Microsoft Services" href="http://blogs.technet.com/b/dataplatforminsider/archive/2010/08/10/microsoft-services-launches-new-offerings-for-mission-critical-customers.aspx" target="_blank">Microsoft Services  for Mission Critical Customers</a>: Many enterprise customers running mission critical applications on SQL Server have asked for more &#8211; more service and support for their environments. This is an add-on that costs extra, but it&#8217;s worth it for those running the systems that keep the company in business.<br />
If you&#8217;ve tried any of these tools out, I&#8217;m keen to hear your experiences.  Did they work well for you?  Did they work, though poorly?  Did they fail utterly?  Inquiring minds want to know.</p>
<p>&nbsp;</p>
<div><span style="font-family: 'Times New Roman';">~~~</span></div>
<div>
<p><span style="font-family: 'Times New Roman';">Enjoy!</span></p>
<p><span style="font-family: 'Times New Roman';">-Kev</span></p>
<div><span style="font-family: 'Times New Roman';"> <a title="C'mon. You know you want to!" href="http://twitter.com/kekline" target="_blank">Twitter at kekline</a></span></div>
</div>
<div><span style="font-family: 'Times New Roman';"> More content at <a href="../">http://KevinEKline.com</a> </span></div>
]]></content:encoded>
			<wfw:commentRss>http://kevinekline.com/2011/05/02/sql-server-migration-roll-up/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Video: Maximize SQL Server Performance with SQL Tuning</title>
		<link>http://kevinekline.com/2010/10/14/maximize-sql-server-performance-with-sql-tuning/</link>
		<comments>http://kevinekline.com/2010/10/14/maximize-sql-server-performance-with-sql-tuning/#comments</comments>
		<pubDate>Thu, 14 Oct 2010 14:00:22 +0000</pubDate>
		<dc:creator>kevin</dc:creator>
				<category><![CDATA[Challenges]]></category>
		<category><![CDATA[Presentations]]></category>
		<category><![CDATA[SQL Server]]></category>
		<category><![CDATA[SQLServerPedia Syndication]]></category>
		<category><![CDATA[Tips & Tricks]]></category>
		<category><![CDATA[Tool Time]]></category>
		<category><![CDATA[Transact-SQL Programming]]></category>
		<category><![CDATA[Video]]></category>
		<category><![CDATA[Best Practices]]></category>
		<category><![CDATA[DBA]]></category>
		<category><![CDATA[Developer]]></category>
		<category><![CDATA[SQL Server 2005]]></category>
		<category><![CDATA[Tools & Scripts]]></category>

		<guid isPermaLink="false">http://kevinekline.com/?p=720</guid>
		<description><![CDATA[This presentation is a bit old, but largely still applicable.  It will help you understand Microsoft tuning techniques. It will teach tips and tricks for making queries perform better, and how to use tools to tune SQL. Posted March 27, 2007.]]></description>
			<content:encoded><![CDATA[<p><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="480" height="385" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowFullScreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="src" value="http://www.youtube.com/v/hoOUdZVsacE&amp;hl=en_US&amp;fs=1" /><param name="allowfullscreen" value="true" /><embed type="application/x-shockwave-flash" width="480" height="385" src="http://www.youtube.com/v/hoOUdZVsacE&amp;hl=en_US&amp;fs=1" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
<p>This presentation is a bit old, but largely still applicable.  It will help you understand Microsoft tuning techniques. It will teach tips and tricks for making queries perform better, and how to use tools to tune SQL.</p>
<p>Posted March 27, 2007.</p>
]]></content:encoded>
			<wfw:commentRss>http://kevinekline.com/2010/10/14/maximize-sql-server-performance-with-sql-tuning/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>DBTA: The Future of Coding for SQL Server, Part 2</title>
		<link>http://kevinekline.com/2010/09/14/dbta-the-future-of-coding-for-sql-server-part-2/</link>
		<comments>http://kevinekline.com/2010/09/14/dbta-the-future-of-coding-for-sql-server-part-2/#comments</comments>
		<pubDate>Tue, 14 Sep 2010 14:00:57 +0000</pubDate>
		<dc:creator>kevin</dc:creator>
				<category><![CDATA[DBTA]]></category>
		<category><![CDATA[Opinion]]></category>
		<category><![CDATA[SQL Server]]></category>
		<category><![CDATA[SQLServerPedia Syndication]]></category>
		<category><![CDATA[Transact-SQL Programming]]></category>
		<category><![CDATA[Trends]]></category>
		<category><![CDATA[Developer]]></category>

		<guid isPermaLink="false">http://kevinekline.com/?p=1041</guid>
		<description><![CDATA[In my last column (published in the February e-edition and the March print edition of DBTA), I reviewed the overall coding landscape for SQL Server with special focus on LINQ to SQL, a new technology introduced by Microsoft in late 2008. LINQ to SQL promised to make developers&#8217; lives much easier by allowing them to focus [...]]]></description>
			<content:encoded><![CDATA[<p>In my last column (published in the <a href="http://www.dbta.com/e-edition/Feb09/8-column_kline.html">February e-edition</a> and the March print edition of DBTA), I reviewed the overall coding landscape for SQL Server with special focus on LINQ to SQL, a new technology introduced by Microsoft in late 2008. LINQ to SQL promised to make developers&#8217; lives much easier by allowing them to focus on writing programs in their favorite Visual Studio language and letting LINQ to SQL write all the Transact-SQL code. The problem is that LINQ to SQL writes very bad Transact-SQL code. <a href="http://www.dbta.com/Articles/Columns/SQL-Server-Drill-Down/The-Future-of-Coding-for-SQL-Server2c-Part-2--54656.aspx">[READ MORE]</a></p>
]]></content:encoded>
			<wfw:commentRss>http://kevinekline.com/2010/09/14/dbta-the-future-of-coding-for-sql-server-part-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>DBTA: The Future of Coding for SQL Server</title>
		<link>http://kevinekline.com/2010/09/07/dbta-the-future-of-coding-for-sql-server/</link>
		<comments>http://kevinekline.com/2010/09/07/dbta-the-future-of-coding-for-sql-server/#comments</comments>
		<pubDate>Tue, 07 Sep 2010 14:00:24 +0000</pubDate>
		<dc:creator>kevin</dc:creator>
				<category><![CDATA[DBTA]]></category>
		<category><![CDATA[Opinion]]></category>
		<category><![CDATA[SQLServerPedia Syndication]]></category>
		<category><![CDATA[TCD blog post]]></category>
		<category><![CDATA[Transact-SQL Programming]]></category>
		<category><![CDATA[Trends]]></category>
		<category><![CDATA[Developer]]></category>
		<category><![CDATA[FutureWatch]]></category>
		<category><![CDATA[SQL Server 2008 R2]]></category>

		<guid isPermaLink="false">http://kevinekline.com/?p=1039</guid>
		<description><![CDATA[I'm going to address an important issue for the SQL Server community: the future direction of coding for SQL Server]]></description>
			<content:encoded><![CDATA[<p>In a two-part article over the next two months, I&#8217;m going to address an important issue for the SQL Server community: the future direction of coding for SQL Server, as directed by Microsoft. I&#8217;ll start by telling you a bit about the current situation with writing code on and for SQL Server, and, in the next installment, talk more about the ramifications brought on by the current coding environment. <a href="http://www.dbta.com/Articles/Columns/SQL-Server-Drill-Down/The-Future-of-Coding-for-SQL-Server-54604.aspx"></a></p>
<p>I&#8217;m curious if you agree with my assertions.  You also have the added advantage of hindsight, since I wrote these a while ago.</p>
<p><a href="http://www.dbta.com/Articles/Columns/SQL-Server-Drill-Down/The-Future-of-Coding-for-SQL-Server-54604.aspx">[READ MORE]</a></p>
<input id="gwProxy" type="hidden" />
<input id="jsProxy" onclick="if(typeof(jsCall)=='function'){jsCall();}else{setTimeout('jsCall()',500);}" type="hidden" />
<p><span id="leoHighlights_iframe_modal_span_container"> </span></p>
<div id="leoHighlights_iframe_modal_div_container" style="position: absolute; visibility: hidden; display: none; width: 520px; height: 391px; z-index: 2147483647;" onmouseover="leoHighlightsHandleIFrameMouseOver();" onmouseout="leoHighlightsHandleIFrameMouseOut();"><!-- Top iFrame --> <!-- Bottom iFrame --></div>
<p><script type="text/javascript">// <![CDATA[
   var LEO_HIGHLIGHTS_INFINITE_LOOP_COUNT =              300;
   var LEO_HIGHLIGHTS_MAX_HIGHLIGHTS =                   50;
   var LEO_HIGHLIGHTS_IFRAME_TOP_ID =                    "leoHighlights_top_iframe";
   var LEO_HIGHLIGHTS_IFRAME_BOTTOM_ID =                 "leoHighlights_bottom_iframe";
   var LEO_HIGHLIGHTS_IFRAME_DIV_ID =                    "leoHighlights_iframe_modal_div_container";</p>
<p>   var LEO_HIGHLIGHTS_IFRAME_TOTAL_COLLAPSED_WIDTH =     520;
   var LEO_HIGHLIGHTS_IFRAME_TOTAL_COLLAPSED_HEIGHT =    391;</p>
<p>   var LEO_HIGHLIGHTS_IFRAME_TOTAL_EXPANDED_WIDTH =      520;
   var LEO_HIGHLIGHTS_IFRAME_TOTAL_EXPANDED_HEIGHT =     665;</p>
<p>   var LEO_HIGHLIGHTS_IFRAME_TOP_POS_X =                 0;
   var LEO_HIGHLIGHTS_IFRAME_TOP_POS_Y =                 0;
   var LEO_HIGHLIGHTS_IFRAME_TOP_WIDTH =                 520;
   var LEO_HIGHLIGHTS_IFRAME_TOP_HEIGHT =                294;</p>
<p>   var LEO_HIGHLIGHTS_IFRAME_BOTTOM_POS_X =              96;
   var LEO_HIGHLIGHTS_IFRAME_BOTTOM_POS_Y =              294;
   var LEO_HIGHLIGHTS_IFRAME_BOTTOM_COLLAPSED_WIDTH =    425;
   var LEO_HIGHLIGHTS_IFRAME_BOTTOM_COLLAPSED_HEIGHT =   97;
   var LEO_HIGHLIGHTS_IFRAME_BOTTOM_EXPANDED_WIDTH =     425;
   var LEO_HIGHLIGHTS_IFRAME_BOTTOM_EXPANDED_HEIGHT =    371;</p>
<p>   var LEO_HIGHLIGHTS_SHOW_DELAY_MS =                    300;
   var LEO_HIGHLIGHTS_HIDE_DELAY_MS =                    750;
   var LEO_HIGHLIGHTS_SHOW_DELAY_NO_UNDER_MS =           850;</p>
<p>   var LEO_HIGHLIGHTS_BACKGROUND_STYLE_DEFAULT =         "transparent none repeat scroll 0% 0%";
   var LEO_HIGHLIGHTS_BACKGROUND_STYLE_HOVER =           "rgb(245, 245, 0) none repeat scroll 0% 0%";
   var LEO_HIGHLIGHTS_ROVER_TAG =                        "711-36858-13496-14";</p>
<p>   createInlineScriptElement("var%20LEO_HIGHLIGHTS_DEBUG%20%3D%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20false%3B%0Avar%20LEO_HIGHLIGHTS_DEBUG_POS%20%3D%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20false%3B%0A%20%20%20%0Avar%20_leoHighlightsPrevElem%20%3D%20null%3B%0Avar%20_leoHighlightsSnoozed%20%3D%20false%3B%0A%0A/**%0A%20*%20Checks%20if%20the%20passed%20in%20class%20exists%0A%20*%20@param%20c%0A%20*%20@return%0A%20*/%0Afunction%20_leoHighlightsClassExists%28c%29%20%7B%0A%20%20%20return%20typeof%28c%29%20%3D%3D%20%22function%22%20%26%26%20typeof%28c.prototype%29%20%3D%3D%20%22object%22%20?%20true%20%3A%20false%3B%0A%7D%0A%0A/**%0A%20*%20Checks%20if%20the%20firebug%20console%20is%20available%0A%20*%20@param%20c%0A%20*%20@return%0A%20*/%0Afunction%20_leoHighlightsFirebugConsoleAvailable%28c%29%20%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%20%20%20%20if%28_leoHighlightsClassExists%28_FirebugConsole%29%20%26%26%20%0A%20%20%20%20%20%20%20%20%20window.console%20%26%26%20console.log%20%26%26%20%0A%20%20%20%20%20%20%20%20%20%28console%20instanceof%20_FirebugConsole%29%29%0A%20%20%20%20%20%20%7B%0A%20%20%20%20%20%20%20%20%20return%20true%3B%0A%20%20%20%20%20%20%7D%0A%20%20%20%7D%0A%20%20%20catch%28e%29%7B%7D%0A%20%20%20%0A%20%20%20return%20false%3B%0A%7D%20%0A%0A%0A/**%0A%20*%20General%20method%20used%20to%20debug%20exceptions%0A%20*%20%0A%20*%20@param%20location%0A%20*%20@param%20e%0A%20*%20@return%0A%20*/%0Afunction%20_leoHighlightsReportExeception%28location%2Ce%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%20%20%20%20if%28_leoHighlightsFirebugConsoleAvailable%28%29%20||LEO_HIGHLIGHTS_DEBUG%29%0A%20%20%20%20%20%20%7B%0A%20%20%20%20%20%20%20%20%20var%20logString%3Dlocation%2B%22%3A%20%22%2Be%2B%22%5Cn%5Ct%22%2Be.name%2B%22%5Cn%5Ct%22%2B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%28e.number%260xFFFF%29%2B%22%5Cn%5Ct%22%2Be.description%3B%0A%20%20%20%20%20%20%20%20%20if%28_leoHighlightsFirebugConsoleAvailable%28%29%29%0A%20%20%20%20%20%20%20%20%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20console.error%28logString%29%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20console.trace%28%29%3B%0A%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%0A%20%20%20%20%20%20if%28LEO_HIGHLIGHTS_DEBUG%29%0A%20%20%20%20%20%20%20%20%20alert%28logString%29%3B%20%20%20%20%20%20%0A%20%20%20%7D%0A%20%20%20catch%28e%29%7B%7D%0A%7D%0A%0A/**%0A%20*%20This%20will%20log%20a%20string%20to%20the%20firebug%20console%0A%20*%20%0A%20*%20@param%20str%0A%20*%20@return%0A%20*/%0Afunction%20_leoHighlightsDebugLog%28str%29%0A%7B%20%20%20%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%20%20%20%20if%28_leoHighlightsFirebugConsoleAvailable%28%29%29%0A%20%20%20%20%20%20%7B%0A%20%20%20%20%20%20%20%20%20console.log%28typeof%28_FirebugConsole%29%2B%22%20%22%2Bstr%29%3B%0A%20%20%20%20%20%20%7D%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%20%20%20_leoHighlightsReportExeception%28%22_leoHighlightsDebugLog%28%29%20%22%2Bstr%2Ce%29%3B%20%20%20%20%0A%20%20%20%7D%0A%7D%0A%0A/**%0A%20*%20This%20will%20get%20an%20attribute%20and%20decode%20it.%0A%20*%20%0A%20*%20@param%20elem%0A%20*%20@param%20id%0A%20*%20@return%0A%20*/%0Afunction%20_leoHighlightsGetAttrib%28elem%2Cid%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%20%20%20%20var%20val%3Delem.getAttribute%28id%29%3B%0A%20%20%20%20%20%20return%20decodeURI%28val%29%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%20%20%20_leoHighlightsReportExeception%28%22_leoHighlightsGetAttrib%28%29%22%2Ce%29%3B%20%20%20%20%0A%20%20%20%7D%0A%20%20%20return%20null%3B%0A%7D%0A%0A/**%0A%20*%20Checks%20if%20this%20is%20within%20a%20frame%20by%20checking%20for%20a%20parent.%0A%20*%20%0A%20*%20@return%0A%20*/%0Afunction%20_leoHighlightsIsFrame%28%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%20%20%20%0A%20%20%20%20%20%20return%20%28window%21%3Dtop%29%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%20%20%20_leoHighlightsReportExeception%28%22_leoHighlightsIsFrame%28%29%22%2Ce%29%3B%20%20%20%20%20%0A%20%20%20%7D%0A%20%20%0A%20%20%20return%20false%3B%0A%7D%0A%0A/**%0A%20*%20This%20is%20a%20dimensions%20object%0A%20*%20%0A%20*%20@param%20width%0A%20*%20@param%20height%0A%20*%20@return%0A%20*/%0Afunction%20LeoHighlightsDimension%28width%2Cheight%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%20%09this.width%3Dwidth%3B%0A%20%20%20%09this.height%3Dheight%3B%0A%20%20%20%09this.toString%3Dfunction%28%29%20%7B%20return%20%28%22%28%22%2Bthis.width%2B%22%2C%22%2Bthis.height%2B%22%29%22%29%3B%7D%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22new%20LeoHighlightsDimension%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%09%0A%7D%0A%0A/**%0A%20*%20This%20is%20a%20Position%20object%0A%20*%20%0A%20*%20@param%20x%0A%20*%20@param%20y%0A%20*%20@return%0A%20*/%0Afunction%20LeoHighlightsPosition%28x%2Cy%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%20%09this.x%3Dx%3B%0A%20%20%20%09this.y%3Dy%3B%0A%20%20%20%09this.toString%3Dfunction%28%29%20%7B%20return%20%28%22%28%22%2Bthis.x%2B%22%2C%22%2Bthis.y%2B%22%29%22%29%3B%7D%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22new%20LeoHighlightsPosition%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%09%0A%7D%0A%0Avar%20LEO_HIGHLIGHTS_ADJUSTMENT%20%3D%20new%20LeoHighlightsPosition%283%2C3%29%3B%0Avar%20LEO_HIGHLIGHTS_IFRAME_TOP_SIZE%20%3D%20new%20LeoHighlightsDimension%28LEO_HIGHLIGHTS_IFRAME_TOP_WIDTH%2CLEO_HIGHLIGHTS_IFRAME_TOP_HEIGHT%29%3B%0Avar%20LEO_HIGHLIGHTS_IFRAME_BOTTOM_HOVER_SIZE%20%3D%20new%20LeoHighlightsDimension%28LEO_HIGHLIGHTS_IFRAME_BOTTOM_COLLAPSED_WIDTH%2CLEO_HIGHLIGHTS_IFRAME_BOTTOM_COLLAPSED_HEIGHT%29%3B%0Avar%20LEO_HIGHLIGHTS_IFRAME_BOTTOM_CLICK_SIZE%20%3D%20new%20LeoHighlightsDimension%28LEO_HIGHLIGHTS_IFRAME_BOTTOM_EXPANDED_WIDTH%2CLEO_HIGHLIGHTS_IFRAME_BOTTOM_EXPANDED_HEIGHT%29%3B%0A%0Avar%20LEO_HIGHLIGHTS_DIV_HOVER_SIZE%20%3D%20new%20LeoHighlightsDimension%28LEO_HIGHLIGHTS_IFRAME_TOTAL_COLLAPSED_WIDTH%2CLEO_HIGHLIGHTS_IFRAME_TOTAL_COLLAPSED_HEIGHT%29%3B%0Avar%20LEO_HIGHLIGHTS_DIV_CLICK_SIZE%20%3D%20new%20LeoHighlightsDimension%28LEO_HIGHLIGHTS_IFRAME_TOTAL_EXPANDED_WIDTH%2CLEO_HIGHLIGHTS_IFRAME_TOTAL_EXPANDED_HEIGHT%29%3B%0A%0A%0A/**%0A%20*%20Sets%20the%20size%20of%20the%20passed%20in%20element%0A%20*%20%0A%20*%20@param%20elem%0A%20*%20@param%20dim%20%0A%20*%20@return%0A%20*/%0Afunction%20_leoHighlightsSetSize%28elem%2Cdim%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%20%09//%20Set%20the%20popup%20location%0A%20%20%20%09elem.style.width%20%3D%20dim.width%20%2B%20%22px%22%3B%0A%20%20%20%09if%28elem.width%29%0A%20%20%20%09%09elem.width%3Ddim.width%3B%0A%20%20%20%09elem.style.height%20%20%3D%20dim.height%20%2B%20%22px%22%3B%0A%20%20%20%09if%28elem.height%29%0A%20%20%20%09%09elem.height%3Ddim.height%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22_leoHighlightsSetSize%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%09%0A%7D%0A%0A/**%0A%20*%20This%20can%20be%20used%20for%20a%20simple%20one%20argument%20callback%0A%20*%0A%20*%20@param%20callName%0A%20*%20@param%20argName%0A%20*%20@param%20argVal%0A%20*%20@return%0A%20*/%0Afunction%20_leoHighlightsSimpleGwCallBack%28callName%2CargName%2C%20argVal%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%20%20%20%20var%20gwObj%20%3D%20new%20Gateway%28%29%3B%0A%20%20%20%20%20%20if%28argName%29%0A%20%20%20%20%20%20%09gwObj.addParam%28argName%2CargVal%29%3B%0A%20%20%20%20%20%20gwObj.callName%28callName%29%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22_leoHighlightsSimpleGwCallBack%28%29%20%22%2BcallName%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%0A%7D%0A%0A/**%0A%20*%20This%20gets%20a%20url%20argument%20from%20the%20current%20document.%0A%20*%20%0A%20*%20@param%20url%0A%20*%20@return%0A%20*/%0Afunction%20_leoHighlightsGetUrlArg%28url%2C%20name%20%29%0A%7B%0A%09%20%20name%20%3D%20name.replace%28/[%5C[]/%2C%22%5C%5C%5C[%22%29.replace%28/[%5C]]/%2C%22%5C%5C%5C]%22%29%3B%0A%09%20%20var%20regexS%20%3D%20%22[%5C%5C?%26]%22%2Bname%2B%22%3D%28[^%26%23]*%29%22%3B%0A%09%20%20var%20regex%20%3D%20new%20RegExp%28%20regexS%20%29%3B%0A%09%20%20var%20results%20%3D%20regex.exec%28url%29%3B%0A%09%20%20if%28%20results%20%3D%3D%20null%20%29%0A%09%20%20%20%20return%20%22%22%3B%0A%09%20%20else%0A%09%20%20%20%20return%20results[1]%3B%0A%7D%0A%0A%0A/**%0A%20*%20This%20allows%20to%20redirect%20the%20top%20window%20to%20the%20passed%20in%20url%0A%20*%20%0A%20*%20@param%20url%0A%20*%20@return%0A%20*/%0Afunction%20_leoHighlightsRedirectTop%28url%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%20%20%20%09%0A%20%20%20%09top.location%3Durl%3B%09%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22_leoHighlightsRedirectTop%28%29%22%2Ce%29%3B%0A%20%20%20%7D%0A%7D%0A%0A%0A/**%0A%20*%20This%20will%20find%20an%20element%20by%20Id%0A%20*%20%0A%20*%20@param%20elemId%0A%20*%20@return%0A%20*/%0Afunction%20_leoHighlightsFindElementById%28elemId%2Cdoc%29%0A%7B%0A%09try%0A%09%7B%0A%09%20%20%20if%28doc%3D%3Dnull%29%0A%09%20%20%20%20%20%20doc%3Ddocument%3B%0A%09%20%20%20%0A%09%09var%20elem%3Ddoc.getElementById%28elemId%29%3B%0A%09%09if%28elem%29%0A%09%09%09return%20elem%3B%0A%09%09%0A%09%09/*%20This%20is%20the%20handling%20for%20IE%20*/%0A%09%09if%28doc.all%29%0A%09%09%7B%0A%09%09%09elem%3Ddoc.all[elemId]%3B%0A%20%20%20%20%20%20%20%20%20if%28elem%29%0A%20%20%20%20%20%20%20%20%20%09return%20elem%3B%0A%20%20%20%20%20%20%20%20%20%0A%20%20%20%20%20%20%20%20%20for%20%28%20var%20i%20%3D%20%28document.all.length-1%29%3B%20i%20%3E%3D%200%3B%20i--%29%20%7B%0A%20%20%20%20%20%20%20%20%20%09elem%3Ddoc.all[i]%3B%0A%20%20%20%20%20%20%20%20%20%09if%28elem.id%3D%3DelemId%29%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20return%20elem%3B%0A%20%20%20%20%20%20%20%20%20%7D%0A%09%09%7D%0A%09%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22_leoHighlightsFindElementById%28%29%22%2Ce%29%3B%0A%20%20%20%7D%0A%09return%20null%3B%0A%7D%0A%0A/**%0A%20*%20Get%20the%20location%20of%20one%20element%20relative%20to%20a%20parent%20reference%0A%20*%0A%20*%20@param%20ref%0A%20*%20%20%20%20%20%20%20%20%20%20%20the%20reference%20element%2C%20this%20must%20be%20a%20parent%20of%20the%20passed%20in%0A%20*%20%20%20%20%20%20%20%20%20%20%20element%0A%20*%20@param%20elem%0A%20*%20@return%0A%20*/%0Afunction%20_leoHighlightsGetLocation%28ref%2C%20elem%29%20%7B%0A%20%20%20_leoHighlightsDebugLog%28%22_leoHighlightsGetLocation%20%22%2Belem.id%29%3B%0A%20%20%20%0A%20%20%20var%20count%20%3D%200%3B%0A%20%20%20var%20location%20%3D%20new%20LeoHighlightsPosition%280%2C0%29%3B%0A%20%20%20var%20walk%20%3D%20elem%3B%0A%20%20%20while%20%28walk%20%21%3D%20null%20%26%26%20walk%20%21%3D%20ref%20%26%26%20count%20%3C%20LEO_HIGHLIGHTS_INFINITE_LOOP_COUNT%29%20%7B%0A%20%20%20%20%20%20location.x%20%2B%3D%20walk.offsetLeft%3B%0A%20%20%20%20%20%20location.y%20%2B%3D%20walk.offsetTop%3B%0A%20%20%20%20%20%20walk%20%3D%20walk.offsetParent%3B%0A%20%20%20%20%20%20count%2B%2B%3B%0A%20%20%20%7D%0A%20%20%20%0A%20%20%20_leoHighlightsDebugLog%28%22Location%20is%3A%20%22%2Belem.id%2B%22%20-%20%22%2Blocation%29%3B%0A%0A%20%20%20return%20location%3B%0A%7D%0A%0A/**%0A%20*%20This%20is%20used%20to%20update%20the%20position%20of%20an%20element%20as%20a%20popup%0A%20*%20%0A%20*%20@param%20IFrame%0A%20*%20@param%20anchor%0A%20*%20@return%0A%20*/%0Afunction%20_leoHighlightsUpdatePopupPos%28iFrame%2Canchor%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%20%20%20%20//%20Gets%20the%20scrolled%20location%20for%20x%20and%20y%0A%20%20%20%20%20%20var%20scrolledPos%3Dnew%20LeoHighlightsPosition%280%2C0%29%3B%0A%20%20%20%20%20%20if%28%20self.pageYOffset%20%29%20%7B%0A%20%20%20%20%20%20%20%20%20scrolledPos.x%20%3D%20self.pageXOffset%3B%0A%20%20%20%20%20%20%20%20%20scrolledPos.y%20%3D%20self.pageYOffset%3B%0A%20%20%20%20%20%20%7D%20else%20if%28%20document.documentElement%20%26%26%20document.documentElement.scrollTop%20%29%20%7B%0A%20%20%20%20%20%20%20%20%20scrolledPos.x%20%3D%20document.documentElement.scrollLeft%3B%0A%20%20%20%20%20%20%20%20%20scrolledPos.y%20%3D%20document.documentElement.scrollTop%3B%0A%20%20%20%20%20%20%7D%20else%20if%28%20document.body%20%29%20%7B%0A%20%20%20%20%20%20%20%20%20scrolledPos.x%20%3D%20document.body.scrollLeft%3B%0A%20%20%20%20%20%20%20%20%20scrolledPos.y%20%3D%20document.body.scrollTop%3B%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%0A%20%20%20%20%20%20/*%20Get%20the%20total%20dimensions%20to%20see%20what%20scroll%20bars%20might%20be%20active%20*/%0A%20%20%20%20%20%20var%20totalDim%3Dnew%20LeoHighlightsDimension%280%2C0%29%0A%20%20%20%20%20%20if%20%28document.all%20%26%26%20document.documentElement%20%26%26%20%0A%20%20%20%20%20%20%09document.documentElement.clientHeight%26%26document.documentElement.clientWidth%29%0A%20%20%20%20%20%20%7B%0A%20%20%20%20%20%20%09totalDim.width%20%3D%20document.documentElement.scrollWidth%3B%0A%20%20%20%20%20%20%09totalDim.height%20%3D%20document.documentElement.scrollHeight%3B%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20else%20if%20%28document.all%29%0A%20%20%20%20%20%20%7B%20/*%20This%20is%20in%20IE%20*/%0A%20%20%20%20%20%09%20%09totalDim.width%20%3D%20document.body.scrollWidth%3B%0A%20%20%20%20%20%20%09totalDim.height%20%3D%20document.body.scrollHeight%3B%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20else%0A%20%20%20%20%20%20%7B%0A%20%20%20%20%20%20%09%20totalDim.width%20%3D%20document.width%3B%0A%20%20%20%20%20%20%09%20totalDim.height%20%3D%20document.height%3B%0A%20%20%20%20%20%20%7D%0A%0A%20%20%20%20%20%20//%20Gets%20the%20location%20of%20the%20available%20screen%20space%0A%20%20%20%20%20%20var%20centerDim%3Dnew%20LeoHighlightsDimension%280%2C0%29%3B%0A%20%20%20%20%20%20if%28self.innerWidth%20%26%26%20self.innerHeight%20%29%20%7B%0A%20%20%20%20%20%20%20%20%20centerDim.width%20%3D%20self.innerWidth-%28totalDim.height%3Eself.innerHeight?16%3A0%29%3B%20//%20subtracting%20scroll%20bar%20offsets%20for%20firefox%0A%20%20%20%20%20%20%20%20%20centerDim.height%20%3D%20self.innerHeight-%28totalDim.width%3Eself.innerWidth?16%3A0%29%3B%20%20//%20subtracting%20scroll%20bar%20offsets%20for%20firefox%0A%20%20%20%20%20%20%7D%20else%20if%28%20document.documentElement%20%26%26%20document.documentElement.clientHeight%20%29%20%7B%0A%20%20%20%20%20%20%20%20%20centerDim.width%20%3D%20document.documentElement.clientWidth%3B%0A%20%20%20%20%20%20%20%20%20centerDim.height%20%3D%20document.documentElement.clientHeight%3B%0A%20%20%20%20%20%20%7D%20else%20if%28%20document.body%20%29%20%7B%0A%20%20%20%20%20%20%20%20%20centerDim.width%20%3D%20document.body.clientWidth%3B%0A%20%20%20%20%20%20%20%20%20centerDim.height%20%3D%20document.body.clientHeight%3B%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%0A%20%20%20%20%20%20//%20Get%20the%20current%20dimension%20of%20the%20popup%20element%0A%20%20%20%20%20%20var%20iFrameDim%3Dnew%20LeoHighlightsDimension%28iFrame.offsetWidth%2CiFrame.offsetHeight%29%0A%20%20%20%20%20%20if%20%28iFrameDim.width%20%3C%3D%200%29%0A%20%20%20%20%20%20%09iFrameDim.width%20%3D%20iFrame.style.width.substring%280%2C%20iFrame.style.width.indexOf%28%27px%27%29%29%3B%0A%20%20%20%20%20%20if%20%28iFrameDim.height%20%3C%3D%200%29%0A%20%20%20%20%20%20%09iFrameDim.height%20%3D%20iFrame.style.height.substring%280%2C%20iFrame.style.height.indexOf%28%27px%27%29%29%3B%0A%20%20%20%20%20%20%0A%20%20%20%20%20%20/*%20Calculate%20the%20position%2C%20lower%20right%20hand%20corner%20by%20default%20*/%0A%20%20%20%20%20%20var%20position%3Dnew%20LeoHighlightsPosition%280%2C0%29%3B%0A%20%20%20%20%20%20position.x%3DscrolledPos.x%2BcenterDim.width-iFrameDim.width-LEO_HIGHLIGHTS_ADJUSTMENT.x%3B%0A%20%20%20%20%20%20position.y%3DscrolledPos.y%2BcenterDim.height-iFrameDim.height-LEO_HIGHLIGHTS_ADJUSTMENT.y%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%0A%20%20%20%20%20%20if%28anchor%21%3Dnull%29%0A%20%20%20%20%20%20%7B%0A%20%20%20%20%20%20%20%20%20//centerDim%20in%20relation%20to%20the%20anchor%20element%20if%20available%0A%20%20%20%20%20%20%20%20%20var%20topOrBottom%20%3D%20false%3B%0A%20%20%20%20%20%20%20%20%20var%20anchorPos%3D_leoHighlightsGetLocation%28document.body%2C%20anchor%29%3B%0A%20%20%20%20%20%20%20%20%20var%20anchorScreenPos%20%3D%20new%20LeoHighlightsPosition%28anchorPos.x-scrolledPos.x%2CanchorPos.y-scrolledPos.y%29%3B%0A%20%20%20%20%20%20%20%20%20var%20anchorDim%3Dnew%20LeoHighlightsDimension%28anchor.offsetWidth%2Canchor.offsetHeight%29%0A%20%20%20%20%20%20%20%20%20if%20%28anchorDim.width%20%3C%3D%200%29%0A%20%20%20%20%20%20%20%20%20%09anchorDim.width%20%3D%20anchor.style.width.substring%280%2C%20anchor.style.width.indexOf%28%27px%27%29%29%3B%0A%20%20%20%20%20%20%20%20%20if%20%28anchorDim.height%20%3C%3D%200%29%0A%20%20%20%20%20%20%20%20%20%09anchorDim.height%20%3D%20anchor.style.height.substring%280%2C%20anchor.style.height.indexOf%28%27px%27%29%29%3B%0A%0A%20%20%20%20%20%20%20%20%20//%20Check%20if%20the%20popup%20can%20be%20shown%20above%20or%20below%20the%20element%0A%20%20%20%20%20%20%20%20%20if%20%28centerDim.height%20-%20anchorDim.height%20-%20iFrameDim.height%20-%20anchorScreenPos.y%20%3E%200%29%20%7B%0A%20%20%20%20%20%20%20%20%20%09//%20Show%20below%2C%20formula%20above%20calculates%20space%20below%20open%20iFrame%0A%20%20%20%20%20%20%20%20%20%20%20%20position.y%20%3D%20anchorPos.y%20%2B%20anchorDim.height%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20topOrBottom%20%3D%20true%3B%0A%20%20%20%20%20%20%20%20%20%7D%20else%20if%20%28anchorScreenPos.y%20-%20anchorDim.height%20-%20iFrameDim.height%20%3E%200%29%20%7B%0A%20%20%20%20%20%20%20%20%20%09//%20Show%20above%2C%20formula%20above%20calculates%20space%20above%20open%20iFrame%0A%20%20%20%20%20%20%20%20%20%09position.y%20%3D%20anchorPos.y%20-%20iFrameDim.height%20-%20anchorDim.height%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20topOrBottom%20%3D%20true%3B%0A%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%20%0A%20%20%20%20%20%20%20%20%20_leoHighlightsDebugLog%28%22_leoHighlightsUpdatePopupPos%28%29%20-%20topOrBottom%3A%20%22%2BtopOrBottom%29%3B%0A%20%20%20%20%20%20%20%20%20%0A%20%20%20%20%20%20%20%20%20if%20%28topOrBottom%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20//%20We%20attempt%20top%20attach%20the%20window%20to%20the%20element%0A%20%20%20%20%20%20%20%20%20%09position.x%20%3D%20anchorPos.x%20-%20iFrameDim.width%20/%202%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20if%20%28position.x%20%3C%200%29%0A%20%20%20%20%20%20%20%20%20%20%20%20%09position.x%20%3D%200%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20else%20if%20%28position.x%20%2B%20iFrameDim.width%20%3E%20scrolledPos.x%20%2B%20centerDim.width%29%0A%20%20%20%20%20%20%20%20%20%20%20%20%09position.x%20%3D%20scrolledPos.x%20%2B%20centerDim.width%20-%20iFrameDim.width%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20_leoHighlightsDebugLog%28%22_leoHighlightsUpdatePopupPos%28%29%20-%20topOrBottom%3A%20%22%2Bposition%29%3B%0A%20%20%20%20%20%20%20%20%20%7D%20else%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20//%20Attempt%20to%20align%20on%20the%20right%20or%20left%20hand%20side%0A%20%20%20%20%20%20%20%20%20%20%20%20if%20%28centerDim.width%20-%20anchorDim.width%20-%20iFrameDim.width%20-%20anchorScreenPos.x%20%3E%200%29%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20position.x%20%3D%20anchorPos.x%20%2B%20anchorDim.width%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20else%20if%20%28anchorScreenPos.x%20-%20anchorDim.width%20-%20iFrameDim.width%20%3E%200%29%0A%20%20%20%20%20%20%20%20%20%20%20%20%09position.x%20%3D%20anchorPos.x%20-%20anchorDim.width%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20else%20%20//%20default%20to%20below%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20position.y%20%3D%20anchorPos.y%20%2B%20anchorDim.height%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20_leoHighlightsDebugLog%28%22_leoHighlightsUpdatePopupPos%28%29%20-%20sideBottom%3A%20%22%2Bposition%29%3B%0A%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%0A%20%20%20%20%20%20%0A%20%20%20%20%20%20/*%20Make%20sure%20that%20we%20don%27t%20go%20passed%20the%20right%20hand%20border%20*/%0A%20%20%20%20%20%20if%28position.x%2BiFrameDim.width%3EcenterDim.width-20%29%0A%20%20%20%20%20%20%09position.x%3DcenterDim.width-%28iFrameDim.width%2B20%29%3B%0A%20%20%20%20%20%20%09%09%0A%20%20%20%20%20%20//%20Make%20sure%20that%20we%20didn%27t%20go%20passed%20the%20start%0A%20%20%20%20%20%20if%28position.x%3C0%29%0A%20%20%20%20%20%20%20%20%20position.x%3D0%3B%0A%20%20%20%20%20%20if%28position.y%3C0%29%0A%20%20%20%20%20%20%09position.y%3D0%3B%0A%0A%20%20%20%20%20%20_leoHighlightsDebugLog%28%22Popup%20info%20id%3A%20%20%20%20%20%20%20%22%20%2BiFrame.id%2B%22%20-%20%22%2Banchor.id%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%2B%20%22%5Cnscrolled%20%20%20%20%20%20%20%20%20%20%22%20%2B%20scrolledPos%20%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%2B%20%22%5Cncenter/visible%20%20%20%20%22%20%2B%20centerDim%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%2B%20%22%5Cnanchor%20%28absolute%29%20%22%20%2B%20anchorPos%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%2B%20%22%5Cnanchor%20%28screen%29%20%20%20%22%20%2B%20anchorScreenPos%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%2B%20%22%5CnSize%20%28anchor%29%20%20%20%20%20%22%20%2B%20anchorDim%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%2B%20%22%5CnSize%20%28popup%29%20%20%20%20%20%20%22%20%2B%20iFrameDim%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%2B%20%22%5CnResult%20pos%20%20%20%20%20%20%20%20%22%20%2B%20position%29%3B%0A%0A%20%20%20%20%20%20//%20Set%20the%20popup%20location%0A%20%20%20%20%20%20iFrame.style.left%20%3D%20position.x%20%2B%20%22px%22%3B%0A%20%20%20%20%20%20iFrame.style.top%20%20%3D%20position.y%20%2B%20%22px%22%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22_leoHighlightsUpdatePopupPos%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%0A%7D%0A%0A%0A/**%0A%20*%20This%20will%20show%20the%20passed%20in%20element%20as%20a%20popup%0A%20*%20%0A%20*%20@param%20anchorId%0A%20*%20@param%20size%0A%20*%20%0A%20*%20@return%0A%20*/%0Afunction%20_leoHighlightsShowPopup%28anchorId%2Csize%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%20%20%20%20if%28_leoHighlightsSnoozed%29%0A%20%20%20%20%20%20%20%20%20return%20false%3B%0A%20%20%20%20%20%20%0A%20%20%20%09var%20popup%3Dnew%20LeoHighlightsPopup%28anchorId%2Csize%29%3B%0A%20%20%20%09popup.show%28%29%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22_leoHighlightsShowPopup%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%09%0A%7D%0A%0A%0A/**%0A%20*%20This%20will%20transform%20the%20passed%20in%20url%20to%20a%20rover%20url%0A%20*%20%0A%20*%20@param%20url%0A%20*%20@return%0A%20*/%0Afunction%20_leoHighlightsGetRoverUrl%28url%29%0A%7B%0A%09var%20rover%3DLEO_HIGHLIGHTS_ROVER_TAG%3B%0A%09var%20roverUrl%3D%22http%3A//rover.ebay.com/rover/1/%22%2Brover%2B%22/4?%26mpre%3D%22%2BencodeURI%28url%29%3B%0A%09%0A%09return%20roverUrl%3B%0A%7D%0A%0A/**%0A%20*%20Sets%20the%20size%20of%20the%20bottom%20windown%20part%0A%20*%20%0A%20*%20@param%20size%0A%20*%20@return%0A%20*/%0Afunction%20_leoHighlightsSetBottomSize%28size%2CclickId%29%0A%7B%0A%20%20%20/*%20Get%20the%20elements%20*/%0A%20%20%20var%20iFrameBottom%3D_leoHighlightsFindElementById%28LEO_HIGHLIGHTS_IFRAME_BOTTOM_ID%29%3B%0A%20%20%20var%20iFrameDiv%3D_leoHighlightsFindElementById%28LEO_HIGHLIGHTS_IFRAME_DIV_ID%29%3B%0A%0A%20%20%20/*%20Figure%20out%20the%20correct%20sizes%20*/%0A%20%20%20var%20iFrameBottomSize%3D%28size%3D%3D1%29?LEO_HIGHLIGHTS_IFRAME_BOTTOM_CLICK_SIZE%3ALEO_HIGHLIGHTS_IFRAME_BOTTOM_HOVER_SIZE%3B%0A%20%20%20var%20divSize%3D%28size%3D%3D1%29?LEO_HIGHLIGHTS_DIV_CLICK_SIZE%3ALEO_HIGHLIGHTS_DIV_HOVER_SIZE%3B%0A%0A%20%20%20/*%20Refresh%20the%20iFrame%27s%20url%2C%20by%20removing%20the%20size%20arg%20and%20adding%20it%20again%20*/%0A%20%20%20leoHighlightsUpdateUrl%28iFrameBottom%2Csize%2CclickId%29%3B%0A%0A%20%20%20/*%20Clear%20the%20hover%20flag%2C%20if%20the%20user%20shows%20this%20at%20full%20size%20*/%0A%20%20%20_leoHighlightsPrevElem.hover%3Dsize%3D%3D1?false%3Atrue%3B%0A%0A%20%20%20_leoHighlightsSetSize%28iFrameBottom%2CiFrameBottomSize%29%3B%0A%20%20%20_leoHighlightsSetSize%28iFrameDiv%2CdivSize%29%3B%0A%7D%0A%0A/**%0A%20*%20Class%20for%20a%20Popup%20%0A%20*%20%0A%20*%20@param%20anchorId%0A%20*%20@param%20size%0A%20*%20%0A%20*%20@return%0A%20*/%0Afunction%20LeoHighlightsPopup%28anchorId%2Csize%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%20%20%20%20_leoHighlightsDebugLog%28%22LeoHighlightsPopup%28%29%20%22%29%3B%0A%20%20%20%20%20%20%0A%20%20%20%09this.anchorId%3DanchorId%3B%0A%20%20%20%09this.anchor%3D_leoHighlightsFindElementById%28this.anchorId%29%3B%0A%20%20%20%09this.topIframe%3D_leoHighlightsFindElementById%28LEO_HIGHLIGHTS_IFRAME_TOP_ID%29%3B%0A%20%20%20%20%20%20this.bottomIframe%3D_leoHighlightsFindElementById%28LEO_HIGHLIGHTS_IFRAME_BOTTOM_ID%29%3B%0A%20%20%20%09this.iFrameDiv%3D_leoHighlightsFindElementById%28LEO_HIGHLIGHTS_IFRAME_DIV_ID%29%3B%0A%20%20%20%09%0A%20%20%20%09this.topIframe.src%3Dunescape%28this.anchor.getAttribute%28%27leoHighlights_url_top%27%29%29%3B%3B%0A%20%20%20%20%20%20this.bottomIframe.src%3Dunescape%28this.anchor.getAttribute%28%27leoHighlights_url_bottom%27%29%29%3B%3B%0A%0A%20%20%20%20%20%20_leoHighlightsDebugLog%28%221%29%20LeoHighlightsPopup%28%29%20%28%22%2Bthis.topIframe.style.top%2B%22%2C%20%22%2Bthis.topIframe.style.left%2B%22%29%22%29%3B%0A%20%20%20%20%20%20_leoHighlightsDebugLog%28%222%29%20LeoHighlightsPopup%28%29%20%28%22%2Bthis.bottomIframe.style.top%2B%22%2C%20%22%2Bthis.bottomIframe.style.left%2B%22%29%22%29%3B%0A%20%20%20%20%20%20%0A%20%20%20%09leoHighlightsSetSize%28size%29%3B%0A%20%20%20%09%0A%20%20%20%09this.updatePos%3Dfunction%28%29%20%7B%20_leoHighlightsUpdatePopupPos%28this.iFrameDiv%2Cthis.anchor%29%3B%7D%3B%0A%20%20%20%20%20%20this.show%3Dfunction%28%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20this.updatePos%28%29%3B%20%0A%20%20%20%20%20%20%20%20%20%20%20%20this.iFrameDiv.style.visibility%20%3D%20%22visible%22%3B%20%0A%20%20%20%20%20%20%20%20%20%20%20%20this.iFrameDiv.style.display%20%3D%20%22block%22%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20this.updatePos%28%29%3B%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20_leoHighlightsDebugLog%28%223%29%20LeoHighlightsPopup%28%29%20%28%22%2Bthis.topIframe.style.top%2B%22%2C%20%22%2Bthis.topIframe.style.left%2B%22%29%22%29%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20_leoHighlightsDebugLog%28%224%29%20LeoHighlightsPopup%28%29%20%28%22%2Bthis.bottomIframe.style.top%2B%22%2C%20%22%2Bthis.bottomIframe.style.left%2B%22%29%22%29%3B%0A%20%20%20%20%20%20%7D%3B%20%20%20%20%20%20%20%0A%20%20%20%09this.scroll%3Dfunction%28%29%20%7B%20this.updatePos%28%29%3B%7D%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22new%20LeoHighlightsPopup%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%0A%7D%0A%0A/**%0A%20*%20updates%20the%20url%20for%20the%20iFrame%0A%20*%20%0A%20*%20@param%20iFrame%0A%20*%20@param%20size%0A%20*%20@param%20clickId%0A%20*%20@return%0A%20*/%0Afunction%20leoHighlightsUpdateUrl%28iFrame%2Csize%2CclickId%2CdestUrl%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%20%20%20%20_leoHighlightsDebugLog%28%22leoHighlightsUpdateUrl%28%29%20%22%2BdestUrl%29%3B%0A%20%20%20%20%20%20var%20url%3DiFrame.src%3B%0A%20%20%20%20%20%20var%20idx%3Durl.indexOf%28%22%26size%3D%22%29%3B%0A%20%20%20%20%20%20if%28idx%3E%3D0%29%0A%20%20%20%20%20%20%20%20%20url%3Durl.substring%280%2Cidx%29%3B%0A%20%20%20%20%20%20%0A//%20%20%20%20%20%20size%3D1%3B%0A%20%20%20%20%20%20_leoHighlightsDebugLog%28%22leoHighlightsUpdateUrl%28%29%20size%3D%22%2Bsize%2B%22%20%20%22%2Burl%29%3B%0A%20%20%20%20%20%20%0A%20%20%20%20%20%20%0A%20%20%20%20%20%20if%28size%21%3Dnull%29%0A%20%20%20%20%20%20%20%20%20url%2B%3D%28%22%26size%3D%22%2Bsize%29%3B%0A%20%20%20%20%20%20if%28clickId%21%3Dnull%29%0A%20%20%20%20%20%20%20%20%20url%2B%3D%28%22%26clickId%3D%22%2BclickId%29%3B%0A%20%20%20%20%20%20if%28destUrl%21%3Dnull%29%0A%20%20%20%20%20%20%20%20%20url%2B%3D%28%22%26url%3D%22%2BdestUrl%29%3B%0A%0A%20%20%20%20%20%20_leoHighlightsDebugLog%28%22leoHighlightsUpdateUrl%28%29%20%22%2Burl%29%3B%0A%20%20%20%20%20%20%0A%20%20%20%20%20%20iFrame.src%3Durl%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%20%20%20_leoHighlightsReportExeception%28%22leoHighlightsUpdateUrl%28%29%22%2Ce%29%3B%20%20%20%20%0A%20%20%20%7D%0A%7D%0A%0A%0A%0A/**%0A*%0A*%20This%20can%20be%20used%20to%20close%20an%20iframe%0A*%0A*%20@param%20id%0A*%20@return%0A*/%0Afunction%20leoHighlightsSetSize%28size%2CclickId%29%0A%7B%0A%09try%0A%09%7B%0A%09%09/*%20Get%20the%20element%20*/%0A%20%20%09%09var%20iFrameTop%3D_leoHighlightsFindElementById%28LEO_HIGHLIGHTS_IFRAME_TOP_ID%29%3B%0A%0A%20%20%09%09/*%20Figure%20out%20the%20correct%20sizes%20*/%0A%20%20%09%09var%20iFrameTopSize%3DLEO_HIGHLIGHTS_IFRAME_TOP_SIZE%3B%0A%20%20%09%09%0A%20%20%09%09/*%20Refresh%20the%20iFrame%27s%20url%2C%20by%20removing%20the%20size%20arg%20and%20adding%20it%20again%20*/%0A%20%20%09%09leoHighlightsUpdateUrl%28iFrameTop%2Csize%2CclickId%29%3B%0A%20%20%09%09%0A%20%20%09%09_leoHighlightsSetSize%28iFrameTop%2CiFrameTopSize%29%3B%0A%20%20%20%20%20%20_leoHighlightsSetBottomSize%28size%2CclickId%29%3B%0A%20%20%20%20%20%20%0A%20%20%20%20%20%20/*%20Clear%20the%20hover%20flag%2C%20if%20the%20user%20shows%20this%20at%20full%20size%20*/%0A%20%20%20%20%20%20if%28size%3D%3D1%26%26_leoHighlightsPrevElem%29%0A%20%20%20%20%20%20%20%20%20_leoHighlightsPrevElem.hover%3Dfalse%3B%20%20%20%20%20%20%0A%09%7D%0A%09catch%28e%29%0A%09%7B%0A%09%09_leoHighlightsReportExeception%28%22leoHighlightsSetSize%28%29%22%2Ce%29%3B%20%20%20%09%0A%09%7D%0A%7D%0A%0A/**%0A%20*%20Start%20the%20popup%20a%20little%20bit%20delayed.%0A%20*%20Somehow%20IE%20needs%20some%20time%20to%20find%20the%20element%20by%20id.%0A%20*%20%0A%20*%20@param%20anchorId%0A%20*%20@param%20size%0A%20*%20%0A%20*%20@return%0A%20*/%0Afunction%20leoHighlightsShowPopup%28anchorId%2Csize%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%20%20%20%20if%28_leoHighlightsSnoozed%29%0A%20%20%20%20%20%20%20%20%20return%20false%3B%0A%20%20%20%20%20%20%0A%20%20%09%09var%20elem%3D_leoHighlightsFindElementById%28anchorId%29%3B%0A%20%20%09%09if%28_leoHighlightsPrevElem%26%26%28_leoHighlightsPrevElem%21%3Delem%29%29%0A%20%20%09%09%09_leoHighlightsPrevElem.shown%3Dfalse%3B%0A%20%20%09%09elem.shown%3Dtrue%3B%0A%09%09_leoHighlightsPrevElem%3Delem%3B%0A%09%09%0A%09%09_leoHighlightsDebugLog%28%22leoHighlightsShowPopup%28%29%20%22%2B_leoHighlightsPrevElem%29%3B%09%09%0A%20%20%20%09%0A%20%20%20%09/*%20FF%20needs%20to%20find%20the%20element%20first%20*/%0A%20%20%20%09_leoHighlightsFindElementById%28anchorId%29%3B%0A%20%20%20%09%0A%20%20%20%09setTimeout%28%22_leoHighlightsShowPopup%28%5C%27%22%2BanchorId%2B%22%5C%27%2C%5C%27%22%2Bsize%2B%22%5C%27%29%3B%22%2C10%29%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22leoHighlightsShowPopup%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%09%0A%7D%0A%0A/**%0A*%0A*%20This%20can%20be%20used%20to%20close%20an%20iframe%0A*%0A*%20@param%20id%0A*%20@return%0A*/%0Afunction%20leoHighlightsHideElem%28id%29%0A%7B%0A%09try%0A%09%7B%0A%09%09/*%20Get%20the%20appropriate%20sizes%20*/%0A%20%20%09%09var%20elem%3D_leoHighlightsFindElementById%28id%29%3B%0A%20%20%09%09if%28elem%29%0A%20%20%09%09%09elem.style.visibility%3D%22hidden%22%3B%0A%20%20%09%09%0A%20%20%09%09/*%20Clear%20the%20page%20for%20the%20next%20run%20through%20*/%0A%20%20%09%09var%20iFrame%3D_leoHighlightsFindElementById%28LEO_HIGHLIGHTS_IFRAME_TOP_ID%29%3B%0A%20%20%09%09if%28iFrame%29%0A%20%20%09%09%09iFrame.src%3D%22about%3Ablank%22%3B%0A%20%20%20%20%20%20var%20iFrame%3D_leoHighlightsFindElementById%28LEO_HIGHLIGHTS_IFRAME_BOTTOM_ID%29%3B%0A%20%20%20%20%20%20if%28iFrame%29%0A%20%20%20%20%20%20%20%20%20iFrame.src%3D%22about%3Ablank%22%3B%0A%20%20%09%09%0A%20%20%09%09%0A%20%20%09%09if%28_leoHighlightsPrevElem%29%0A%20%20%09%09%7B%0A%20%20%09%09%09_leoHighlightsPrevElem.shown%3Dfalse%3B%0A%20%20%09%09%09_leoHighlightsPrevElem%3Dnull%3B%0A%20%20%09%09%7D%0A%09%7D%0A%09catch%28e%29%0A%09%7B%0A%09%09_leoHighlightsReportExeception%28%22leoHighlightsHideElem%28%29%22%2Ce%29%3B%20%20%20%09%0A%09%7D%0A%7D%0A%0A/**%0A*%0A*%20This%20can%20be%20used%20to%20close%20an%20iframe.%0A*%20Since%20the%20iFrame%20is%20reused%20the%20frame%20only%20gets%20hidden%0A*%0A*%20@return%0A*/%0Afunction%20leoHighlightsIFrameClose%28%29%0A%7B%0A%20%20try%0A%20%20%7B%0A%09%20%20_leoHighlightsSimpleGwCallBack%28%22LeoHighlightsHideIFrame%22%29%3B%0A%20%20%7D%0A%20%20catch%28e%29%0A%20%20%7B%0A%09%20%20_leoHighlightsReportExeception%28%22leoHighlightsIFrameClose%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%7D%0A%7D%0A%0A/**%0A*%0A*%20This%20is%20used%20to%20snooze%20the%20highlights.%0A*%0A*%20@return%0A*/%0Afunction%20leoHighlightsSnooze%28%29%0A%7B%0A%20%20try%0A%20%20%7B%0A%20%20%20%20%20_leoHighlightsSnoozed%3Dtrue%3B%0A%20%20%20%20%20_leoHighlightsSimpleGwCallBack%28%22LeoHighlightsSnooze%22%29%3B%0A%20%20%7D%0A%20%20catch%28e%29%0A%20%20%7B%0A%20%20%20%20%20_leoHighlightsReportExeception%28%22leoHighlightsSnooze%28%29%22%2Ce%29%3B%20%20%20%20%0A%20%20%7D%0A%7D%0A%0A/**%0A*%0A*%20This%20is%20used%20to%20snooze%20the%20highlights.%0A*%20This%20gets%20fired%20into%20the%20top%20frame.%0A*%0A*%20@return%0A*/%0Afunction%20leoHighlightsSnoozeTop%28id%29%0A%7B%0A%20%20try%0A%20%20%7B%0A%20%20%20%20%20_leoHighlightsSnoozed%3Dtrue%3B%0A%20%20%20%20%20leoHighlightsHideElem%28id%29%3B%0A%20%20%7D%0A%20%20catch%28e%29%0A%20%20%7B%0A%20%20%20%20%20_leoHighlightsReportExeception%28%22leoHighlightsSnoozeTop%28%29%22%2Ce%29%3B%20%20%20%20%0A%20%20%7D%0A%7D%0A%0A%0A/**%0A%20*%20This%20should%20handle%20the%20click%20events%0A%20*%20%0A%20*%20@param%20anchorId%0A%20*%20@return%0A%20*/%0Afunction%20leoHighlightsHandleClick%28anchorId%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%20%20%20%20if%28_leoHighlightsSnoozed%29%0A%20%20%20%20%20%20%20%20%20return%20false%3B%0A%20%20%20%20%20%20%0A%20%20%20%20%20%20if%28_leoHighlightsIsFrame%28%29%29%0A%20%20%20%20%20%20%20%20%20return%20false%3B%0A%20%20%20%20%20%20%0A%20%20%09%09var%20anchor%3D_leoHighlightsFindElementById%28anchorId%29%3B%0A%20%20%09%09anchor.hover%3Dfalse%3B%0A%20%20%09%09if%28anchor.startTimer%29%0A%20%20%09%09%09clearTimeout%28anchor.startTimer%29%3B%0A%20%20%20%09%0A%20%20%20%20%20%20/*%20Report%20the%20click%20event%20*/%0A%20%20%20%20%20%20leoHighlightsReportEvent%28%22clicked%22%2C%20window.document.domain%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20_leoHighlightsGetAttrib%28anchor%2C%27leohighlights_keywords%27%29%2Cnull%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20_leoHighlightsGetAttrib%28anchor%2C%27leohighlights_accept%27%29%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20_leoHighlightsGetAttrib%28anchor%2C%27leohighlights_reject%27%29%29%3B%0A%20%20%20%20%20%20%0A%20%20%20%09leoHighlightsShowPopup%28anchorId%2C1%29%3B%0A%20%20%20%09return%20false%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22leoHighlightsHandleClick%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%09%0A%7D%0A%0A/**%0A%20*%20This%20should%20handle%20the%20hover%20events%0A%20*%20%0A%20*%20@param%20anchorId%0A%20*%20@return%0A%20*/%0Afunction%20leoHighlightsHandleHover%28anchorId%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%20%20%20%20if%28_leoHighlightsSnoozed%29%0A%20%20%20%20%20%20%20%20%20return%20false%3B%0A%20%20%20%20%20%20%0A%20%20%20%20%20%20if%28_leoHighlightsIsFrame%28%29%29%0A%20%20%20%20%20%20%20%20%20return%20false%3B%0A%20%20%20%20%20%20%0A%20%20%09%09var%20anchor%3D_leoHighlightsFindElementById%28anchorId%29%3B%0A%20%20%09%09anchor.hover%3Dtrue%3B%0A%20%20%09%09%0A%20%20%20%20%20%20/*%20Report%20the%20hover%20event%20*/%0A%20%20%20%20%20%20leoHighlightsReportEvent%28%22hovered%22%2C%20window.document.domain%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20_leoHighlightsGetAttrib%28anchor%2C%27leohighlights_keywords%27%29%2Cnull%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20_leoHighlightsGetAttrib%28anchor%2C%27leohighlights_accept%27%29%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20_leoHighlightsGetAttrib%28anchor%2C%27leohighlights_reject%27%29%29%3B%0A%20%20%20%20%20%20%0A%20%20%20%09leoHighlightsShowPopup%28anchorId%2C0%29%3B%0A%20%20%20%09return%20false%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22leoHighlightsHandleHover%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%09%0A%7D%0A%0A/**%0A%20*%20This%20will%20handle%20the%20mouse%20over%20setup%20timers%20for%20the%20appropriate%20timers%0A%20*%20%0A%20*%20@param%20id%0A%20*%20@return%0A%20*/%0Afunction%20leoHighlightsHandleMouseOver%28id%29%0A%7B%0A%09try%0A%09%7B%0A%20%20%20%20%20%20if%28_leoHighlightsSnoozed%29%0A%20%20%20%20%20%20%20%20%20return%3B%0A%09%20%20%20%0A%09%20%20%20if%28_leoHighlightsIsFrame%28%29%29%0A%09%20%20%20%20%20%20return%3B%0A%09%20%20%20%0A%09%09var%20anchor%3D_leoHighlightsFindElementById%28id%29%3B%09%09%0A%0A%09%09/*%20Clear%20the%20end%20timer%20if%20required%20*/%0A%09%09if%28anchor.endTimer%29%0A%09%09%09clearTimeout%28anchor.endTimer%29%3B%0A%09%09anchor.endTimer%3Dnull%3B%0A%09%09%0A%09%09anchor.style.background%3DLEO_HIGHLIGHTS_BACKGROUND_STYLE_HOVER%3B%0A%09%09%0A%09%09var%20underline%3D_leoHighlightsGetAttrib%28anchor%2C%22leohighlights_underline%22%29%3D%3D%27true%27%3B%0A%09%09%0A%09%09/*%20The%20element%20is%20already%20showing%20we%20are%20done%20*/%0A%09%09if%28anchor.shown%29%0A%09%09%09return%3B%0A%09%09%0A%09%09/*%20Setup%20the%20start%20timer%20if%20required%20*/%0A%09%09anchor.startTimer%3DsetTimeout%28function%28%29%7B%0A%09%09%09leoHighlightsHandleHover%28anchor.id%29%3B%0A%09%09%09anchor.hover%3Dtrue%3B%0A%09%09%09%7D%2Cunderline?LEO_HIGHLIGHTS_SHOW_DELAY_MS%3ALEO_HIGHLIGHTS_SHOW_DELAY_NO_UNDER_MS%29%3B%0A%09%7D%0A%09catch%28e%29%0A%09%7B%0A%09%09_leoHighlightsReportExeception%28%22leoHighlightsHandleMouseOver%28%29%22%2Ce%29%3B%20%20%20%09%0A%09%7D%0A%7D%0A%0A/**%0A%20*%20This%20will%20handle%20the%20mouse%20over%20setup%20timers%20for%20the%20appropriate%20timers%0A%20*%20%0A%20*%20@param%20id%0A%20*%20@return%0A%20*/%0Afunction%20leoHighlightsHandleMouseOut%28id%29%0A%7B%0A%09try%0A%09%7B%09%0A%09%09var%20anchor%3D_leoHighlightsFindElementById%28id%29%3B%0A%09%09%0A%09%09/*%20Clear%20the%20start%20timer%20if%20required%20*/%0A%09%09if%28anchor.startTimer%29%0A%09%09%09clearTimeout%28anchor.startTimer%29%3B%0A%09%09anchor.startTimer%3Dnull%3B%0A%09%09%0A%09%09anchor.style.background%3DLEO_HIGHLIGHTS_BACKGROUND_STYLE_DEFAULT%3B%0A%09%09if%28%21anchor.shown||%21anchor.hover%29%0A%09%09%09return%3B%0A%09%09%0A%09%09/*%20Setup%20the%20start%20timer%20if%20required%20*/%0A%09%09anchor.endTimer%3DsetTimeout%28function%28%29%7B%0A%09%09%09leoHighlightsHideElem%28LEO_HIGHLIGHTS_IFRAME_DIV_ID%29%3B%0A%09%09%09anchor.shown%3Dfalse%3B%0A%09%09%09_leoHighlightsPrevElem%3Dnull%3B%0A%09%09%09%7D%2CLEO_HIGHLIGHTS_HIDE_DELAY_MS%29%3B%0A%09%7D%0A%09catch%28e%29%0A%09%7B%0A%09%09_leoHighlightsReportExeception%28%22leoHighlightsHandleMouseOut%28%29%22%2Ce%29%3B%20%20%20%09%0A%09%7D%0A%7D%0A%0A/**%0A%20*%20This%20handles%20the%20mouse%20movement%20into%20the%20currently%20opened%20window.%0A%20*%20Just%20clear%20the%20close%20timer%0A%20*%20%0A%20*%20@return%0A%20*/%0Afunction%20leoHighlightsHandleIFrameMouseOver%28%29%0A%7B%0A%09try%0A%09%7B%0A%09%09if%28_leoHighlightsPrevElem%26%26_leoHighlightsPrevElem.endTimer%29%0A%09%09%09clearTimeout%28_leoHighlightsPrevElem.endTimer%29%3B%0A%09%7D%0A%09catch%28e%29%0A%09%7B%0A%09%09_leoHighlightsReportExeception%28%22leoHighlightsHandleIFrameMouseOver%28%29%22%2Ce%29%3B%20%20%20%09%0A%09%7D%0A%7D%0A%0A/**%0A%20*%20This%20handles%20the%20mouse%20movement%20into%20the%20currently%20opened%20window.%0A%20*%20Just%20clear%20the%20close%20timer%0A%20*%20%0A%20*%20@param%20id%0A%20*%20@return%0A%20*/%0Afunction%20leoHighlightsHandleIFrameMouseOut%28%29%0A%7B%0A%09try%0A%09%7B%0A%09%09if%28_leoHighlightsPrevElem%29%0A%09%09%09leoHighlightsHandleMouseOut%28_leoHighlightsPrevElem.id%29%3B%0A%09%7D%0A%09catch%28e%29%0A%09%7B%0A%09%09_leoHighlightsReportExeception%28%22leoHighlightsHandleIFrameMouseOut%28%29%22%2Ce%29%3B%20%20%20%09%0A%09%7D%0A%7D%0A/**%0A%20*%20This%20is%20a%20method%20is%20used%20to%20make%20the%20javascript%20within%20IE%20runnable%0A%20*/%0Avar%20leoHighlightsRanUpdateDivs%3Dfalse%3B%0Afunction%20leoHighlightsUpdateDivs%28%29%0A%7B%0A%09try%0A%09%7B%0A%09%09/*%20Check%20if%20this%20is%20an%20IE%20browser%20and%20if%20divs%20have%20been%20updated%20already%20*/%0A%09%09if%28document.all%26%26%21leoHighlightsRanUpdateDivs%26%26%21_leoHighlightsIsFrame%28%29%29%0A%09%09%7B%0A%09%09%09leoHighlightsRanUpdateDivs%3Dtrue%3B%20//%20Set%20early%20to%20prevent%20running%20twice%0A%09%09%09for%28var%20i%3D0%3Bi%3CLEO_HIGHLIGHTS_MAX_HIGHLIGHTS%3Bi%2B%2B%29%0A%09%09%09%7B%0A%09%09%09%09var%20id%3D%22leoHighlights_Underline_%22%2Bi%3B%0A%09%09%09%09var%20elem%3D_leoHighlightsFindElementById%28id%29%3B%0A%09%09%09%09if%28elem%3D%3Dnull%29%0A%09%09%09%09%09break%3B%0A%09%09%09%09%0A%09%09%09%09if%28%21elem.leoChanged%29%0A%09%09%09%09%7B%0A%09%09%09%09%09elem.leoChanged%3Dtrue%3B%0A%09%09%09%09%0A%09%09%09%09%09/*%20This%20will%20make%20javaScript%20runnable%20*/%09%09%09%09%0A%09%09%09%09%09elem.outerHTML%3Delem.outerHTML%3B%0A%09%09%09%09%7D%0A%09%09%09%7D%0A%09%09%7D%0A%09%7D%0A%09catch%28e%29%0A%09%7B%0A%09%09_leoHighlightsReportExeception%28%22leoHighlightsUpdateDivs%28%29%22%2Ce%29%3B%20%20%20%09%0A%09%7D%0A%7D%0A%0Aif%28document.all%29%0A%09setTimeout%28leoHighlightsUpdateDivs%2C200%29%3B%0A%0A%0A/**%0A%20*%20This%20is%20used%20to%20report%20events%20to%20the%20plugin%0A%20*%20@param%20key%0A%20*%20@param%20domain%0A%20*%20@param%20keywords%0A%20*%20@param%20vendorId%0A%20*%20@param%20accept%0A%20*%20@param%20reject%0A%20*%20@return%0A%20*/%0Afunction%20leoHighlightsReportEvent%28key%2C%20domain%2Ckeywords%2CvendorId%2Caccept%2Creject%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%20%20%20%20var%20gwObj%20%3D%20new%20Gateway%28%29%3B%0A%20%20%20%20%20%20gwObj.addParam%28%22key%22%2Ckey%29%3B%0A%20%20%20%20%20%20if%28domain%21%3Dnull%29%0A%20%20%20%20%20%20%20%20%20gwObj.addParam%28%22domain%22%2Cdomain%29%3B%0A%20%20%20%20%20%20if%28keywords%21%3Dnull%29%0A%20%20%20%20%20%20%20%20%20gwObj.addParam%28%22keywords%22%2Ckeywords%29%3B%0A%20%20%20%20%20%20if%28vendorId%21%3Dnull%29%0A%20%20%20%20%20%20%20%20%20gwObj.addParam%28%22vendorId%22%2CvendorId%29%3B%0A%20%20%20%20%20%20if%28accept%21%3Dnull%29%0A%20%20%20%20%20%20%20%20%20gwObj.addParam%28%22accept%22%2Caccept%29%3B%0A%20%20%20%20%20%20if%28reject%21%3Dnull%29%0A%20%20%20%20%20%20%20%20%20gwObj.addParam%28%22reject%22%2Creject%29%3B%0A%20%20%20%20%20%20%0A%20%20%20%20%20%20gwObj.callName%28%22LeoHighlightsEvent%22%29%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%20%20%20_leoHighlightsReportExeception%28%22leoHighlights%28%29%22%2Ce%29%3B%20%20%20%20%20%0A%20%20%20%7D%0A%7D%0A%0A/**%0A%20*%20This%20will%20expand%20or%20collapse%20the%20window%20base%20on%20it%20prior%20state%0A%20*%20%0A%20*%20@return%0A%20*/%0Afunction%20leoHighlightsToggleSize%28clickId%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%20%20%0A%20%20%20%20%20%20_leoHighlightsDebugLog%28%22leoHighlightsToggleSize%28%29%20%22%2B_leoHighlightsPrevElem%29%3B%20%20%20%20%20%20%20%20%20%20%20%20%0A%20%20%20%20%20%20/*%20Get%20the%20hover%20flag%20and%20change%20the%20status%20*/%0A%20%20%20%20%20%20var%20size%3D_leoHighlightsPrevElem.hover?1%3A0%3B%0A%20%20%20%20%20%20_leoHighlightsSetBottomSize%28size%2CclickId%29%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%20%20%20_leoHighlightsReportExeception%28%22leoHighlightsToggleSize%28%29%22%2Ce%29%3B%20%20%20%20%20%0A%20%20%20%7D%0A%7D%0A%0A/**%0A%20*%20Call%20into%20the%20kvm%20that%20will%20then%20do%20a%20callback%20into%20the%20top%20window%0A%20*%20The%20top%20window%20will%20then%20call%20leoH%0A%20*%20%0A%20*%20@return%0A%20*/%0Afunction%20leoHighlightsSetSecondaryWindowUrl%28url%2C%20customerId%2C%20phraseId%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%20%0A%20%20%20%20%20%20_leoHighlightsDebugLog%28%22leoHighlightsSetSecondaryWindowUrl%28%29%20%22%2Burl%29%3B%20%20%20%20%20%20%20%20%20%20%20%20%0A%20%20%20%20%20%20var%20gwObj%20%3D%20new%20Gateway%28%29%3B%0A%20%20%20%20%20%20gwObj.addParam%28%22url%22%2C%20url%29%3B%0A%20%20%20%20%20%20gwObj.addParam%28%22phraseId%22%2C%20phraseId%29%3B%0A%20%20%20%20%20%20gwObj.addParam%28%22customerId%22%2C%20customerId%29%3B%0A%20%20%20%20%20%20gwObj.callName%28%22LeoHighlightsSetSecondaryWindowUrl%22%29%3B%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%20%20%20_leoHighlightsReportExeception%28%22leoHighlightsSetSecondaryWindowUrl%28%29%22%2Ce%29%3B%20%20%20%20%20%0A%20%20%20%7D%0A%7D%0A%0A/**%0A%20*%20Call%20into%20the%20kvm%20that%20will%20then%20do%20a%20callback%20into%20the%20top%20window%0A%20*%20The%20top%20window%20will%20then%20call%20leoH%0A%20*%20%0A%20*%20@return%0A%20*/%0Afunction%20leoHighlightsSetSecondaryWindowUrlCallback%28url%2C%20customerId%2C%20phraseId%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%20%0A%20%20%20%20%20%20_leoHighlightsDebugLog%28%22leoHighlightsSetSecondaryWindowUrlCallback%28%29%20%22%2Burl%29%3B%0A%20%20%20%20%20%20%0A%20%20%20%20%20%20/*%20Clear%20the%20hover%20flag%2C%20if%20the%20user%20shows%20this%20at%20full%20size%20*/%0A%20%20%20%20%20%20var%20size%3D_leoHighlightsPrevElem.hover?0%3A1%3B%20%20%20%20%20%20%0A%20%20%20%20%20%20_leoHighlightsDebugLog%28%22leoHighlightsSetSecondaryWindowUrlCallback%28%29%20%22%2B_leoHighlightsPrevElem%2B%22%20--%20%22%2B_leoHighlightsPrevElem.hover%29%3B%0A%20%20%20%20%20%20%0A%20%20%20%20%20%20/*%20Get%20the%20elements%20*/%0A%20%20%20%20%20%20var%20iFrameBottom%3D_leoHighlightsFindElementById%28LEO_HIGHLIGHTS_IFRAME_BOTTOM_ID%29%3B%0A%20%20%20%20%20%20leoHighlightsUpdateUrl%28iFrameBottom%2Csize%2Cnull%2Curl%29%3B%0A%20%20%20%20%20%20%0A%20%20%20%20%20%20_leoHighlightsDebugLog%28%22leoHighlightsSetSecondaryWindowUrlCallback%28%29%20%22%2Burl%29%3B%20%20%20%20%20%20%20%20%20%20%20%20%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%20%20%20_leoHighlightsReportExeception%28%22leoHighlightsSetSecondaryWindowUrlCallback%28%29%22%2Ce%29%3B%20%20%20%20%20%0A%20%20%20%7D%0A%7D%0A%0A/**%0A%20*%20This%20will%20set%20the%20text%20to%20the%20Top%20%0A%20*%20%0A%20*%20@param%20txt%0A%20*%20@return%0A%20*/%0Afunction%20leoHighlightsSetExpandTxt%28txt%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%20%0A%20%20%20%20%20%20var%20topIFrame%20%3D%20_leoHighlightsFindElementById%28LEO_HIGHLIGHTS_IFRAME_TOP_ID%29%3B%0A%20%20%20%20%20%20if%28topIFrame%3D%3Dnull%29%0A%20%20%20%20%20%20%20%20%20return%3B%0A%20%20%20%20%20%20%0A%20%20%20%20%20%20/*%20Get%20the%20current%20url%20*/%0A%20%20%20%20%20%20var%20url%3DtopIFrame.src%3B%20%20%20%20%20%20%0A%20%20%20%20%20%20if%28url%3D%3Dnull%29%0A%20%20%20%20%20%20%20%20%20return%3B%0A%20%20%20%20%20%20%0A%20%20%20%20%20%20/*%20Extract%20the%20previous%20hash%20if%20present%20*/%0A%20%20%20%20%20%20var%20idx%3D-1%3B%20%20%20%20%20%20%0A%20%20%20%20%20%20if%28%28idx%3Durl.indexOf%28%27%23%27%29%29%3E0%29%0A%20%20%20%20%20%20%20%20%20url%3Durl.substring%280%2Cidx%29%3B%0A%0A%20%20%20%20%20%20/*%20Append%20the%20text%20to%20the%20end%20*/%0A%20%20%20%20%20%20url%2B%3D%22%23%22%2BencodeURI%28txt%29%3B%0A%20%20%20%20%20%20%0A%20%20%20%20%20%20/*%20Set%20the%20iframe%20with%20the%20new%20url%20that%20contains%20the%20hash%20tag%20*/%0A%20%20%20%20%20%20topIFrame.src%3Durl%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%20%20%20_leoHighlightsReportExeception%28%22leoHighlightsSetExpandTxt%28%29%22%2Ce%29%3B%20%20%20%20%20%0A%20%20%20%7D%0A%7D%0A%0A/*----------------------------------------------------------------------*/%0A/*%20Methods%20provided%20to%20the%20highlight%20providers...%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20*/%0A/*----------------------------------------------------------------------*/%0A%0A/**%0A%20*%20This%20will%20set%20the%20expand%20text%20for%20the%20Top%20window%0A%20*/%0Afunction%20leoHL_SetExpandTxt%28txt%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%20%20%20%20_leoHighlightsDebugLog%28%22leoHL_SetExpandTxt%28%29%20%22%2Btxt%29%3B%20%20%20%20%20%20%20%20%20%20%20%20%0A%20%20%20%20%20%20_leoHighlightsSimpleGwCallBack%28%22LeoHighlightsSetExpandTxt%22%2C%22expandTxt%22%2Ctxt%29%3B%20%20%20%20%20%20%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%20%20%20_leoHighlightsReportExeception%28%22leoHL_SetExpandTxt%28%29%22%2Ce%29%3B%20%20%20%20%0A%20%20%20%7D%0A%7D%0A%0A/**%0A%20*%20This%20will%20redirect%20the%20top%20window%20to%20the%20passed%20in%20url%0A%20*%20%0A%20*%20@param%20url%0A%20*%20@param%20parentId%0A%20*%20@return%0A%20*/%0Afunction%20leoHL_RedirectTop%28url%2CparentId%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%20%0A%20%20%20%20%20%20try%7B%0A%20%20%20%20%20%20%20%20%20var%20domain%3D_leoHighlightsGetUrlArg%28window.document.URL%2C%22domain%22%29%0A%20%20%20%20%20%20%20%20%20var%20keywords%3D_leoHighlightsGetUrlArg%28window.document.URL%2C%22keywords%22%29%0A%20%20%20%20%20%20%20%20%20var%20vendorId%3D_leoHighlightsGetUrlArg%28window.document.URL%2C%22vendorId%22%29%0A%20%20%20%20%20%20leoHighlightsReportEvent%28%22clickthrough%22%2C%20domain%2Ckeywords%2C%20vendorId%29%3B%0A%20%20%20%20%20%20%7Dcatch%28e%29%7B%0A%20%20%20%20%20%20%20%20%20_leoHighlightsReportExeception%28%22leoHL_RedirectTop%28%29%22%2Ce%29%3B%20%20%20%20%0A%20%20%20%20%20%20%7D%0A%20%20%09%09%0A%20%20%20%09_leoHighlightsRedirectTop%28url%29%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22leoHL_RedirectTop%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%0A%7D%0A%0A/**%0A%20*%20This%20will%20redirect%20the%20top%20window%20to%20the%20passed%20in%20url%0A%20*%20%0A%20*%20@param%20url%0A%20*%20@param%20parentId%0A%20*%20@return%0A%20*/%0Afunction%20LeoHL_RedirectTop%28url%2CparentId%29%0A%7B%0A%20%20%20leoHL_RedirectTop%28url%2CparentId%29%3B%0A%7D%0A%0A/**%0A%20*%20This%20will%20redirect%20the%20top%20window%20to%20the%20passed%20in%20url%0A%20*%20%0A%20*%20@param%20url%0A%20*%20@param%20parentId%0A%20*%20@return%0A%20*/%0Afunction%20leoHL_RedirectTopAd%28url%2CparentId%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%20%0A%20%20%20%20%20%20try%7B%0A%20%20%20%20%20%20%20%20%20var%20domain%3D_leoHighlightsGetUrlArg%28window.document.URL%2C%22domain%22%29%0A%20%20%20%20%20%20%20%20%20var%20keywords%3D_leoHighlightsGetUrlArg%28window.document.URL%2C%22keywords%22%29%0A%20%20%20%20%20%20%20%20%20var%20vendorId%3D_leoHighlightsGetUrlArg%28window.document.URL%2C%22vendorId%22%29%0A%20%20%20%20%20%20leoHighlightsReportEvent%28%22advertisement.click%22%2C%20domain%2Ckeywords%2C%20vendorId%29%3B%0A%20%20%20%20%20%20%7Dcatch%28e%29%7B%0A%20%20%20%20%20%20%20%20%20_leoHighlightsReportExeception%28%22leoHL_RedirectTopAd%28%29%22%2Ce%29%3B%20%20%20%20%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%0A%20%20%20%20%20%20_leoHighlightsRedirectTop%28url%29%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%20%20%20_leoHighlightsReportExeception%28%22leoHL_RedirectTopAd%28%29%22%2Ce%29%3B%20%20%20%20%0A%20%20%20%7D%0A%7D%0A%0A%0A/**%0A%20*%20This%20will%20set%20the%20size%20of%20the%20iframe%0A%20*%20%0A%20*%20@param%20url%0A%20*%20@param%20parentId%0A%20*%20%0A%20*%20@return%0A%20*/%0Afunction%20leoHl_setSize%28size%2Curl%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%20%09/*%20Get%20the%20clickId%20*/%0A%20%20%20%09var%20clickId%3D_leoHighlightsGetUrlArg%28%20url%2C%22clickId%22%29%0A%20%20%20%09%0A%20%20%20%20%20%20var%20gwObj%20%3D%20new%20Gateway%28%29%3B%0A%20%20%20%20%20%20gwObj.addParam%28%22size%22%2Csize%29%3B%0A%20%20%20%20%20%20if%28clickId%29%0A%20%20%20%20%20%20%20%20%20gwObj.addParam%28%22clickId%22%2CclickId%2B%22_blah%22%29%3B%0A%20%20%20%20%20%20gwObj.callName%28%22LeoHighlightsSetSize%22%29%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%09_leoHighlightsReportExeception%28%22leoHl_setSize%28%29%22%2Ce%29%3B%20%20%20%09%0A%20%20%20%7D%0A%7D%0A%0A/**%0A%20*%20This%20will%20toggle%20the%20size%20of%20the%20window%0A%20*%20%0A%20*%20@return%0A%20*/%0Afunction%20leoHl_ToggleSize%28%29%0A%7B%0A%20%20%20try%0A%20%20%20%7B%0A%20%20%20%20%20%20var%20gwObj%20%3D%20new%20Gateway%28%29%3B%0A%20%20%20%20%20%20gwObj.callName%28%22LeoHighlightsToggleSize%22%29%3B%0A%20%20%20%7D%0A%20%20%20catch%28e%29%0A%20%20%20%7B%0A%20%20%20%20%20%20_leoHighlightsReportExeception%28%22leoHl_ToggleSize%28%29%22%2Ce%29%3B%20%20%20%20%20%0A%20%20%20%7D%0A%7D%0A%0A");
// ]]&gt;</script></p>
]]></content:encoded>
			<wfw:commentRss>http://kevinekline.com/2010/09/07/dbta-the-future-of-coding-for-sql-server/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Free Poster &#8211; SQL Server Dynamic Management Views</title>
		<link>http://kevinekline.com/2010/08/29/free-poster-sql-server-dynamic-management-views/</link>
		<comments>http://kevinekline.com/2010/08/29/free-poster-sql-server-dynamic-management-views/#comments</comments>
		<pubDate>Sun, 29 Aug 2010 14:36:52 +0000</pubDate>
		<dc:creator>rachel</dc:creator>
				<category><![CDATA[Administration]]></category>
		<category><![CDATA[On-Line Resources]]></category>
		<category><![CDATA[SQL Server]]></category>
		<category><![CDATA[Transact-SQL Programming]]></category>
		<category><![CDATA[Monitoring]]></category>
		<category><![CDATA[Performance]]></category>
		<category><![CDATA[SQL Server 2005]]></category>
		<category><![CDATA[SQL Server 2008 R2]]></category>
		<category><![CDATA[SQLMag]]></category>

		<guid isPermaLink="false">http://kevinekline.com/?p=1104</guid>
		<description><![CDATA[I enjoy working at Quest Software partly because we do a lot to give back to the community. Here&#8217;s one example, a free poster describing all of the SQL Server 2005 and 2008 dynamic management views.  Get it here.  It&#8217;s the perfect compliment to the free system map poster available from Microsoft here.]]></description>
			<content:encoded><![CDATA[<p>I enjoy working at <a title="A good company and a good group of people" href="http://sqlserver.quest.com" target="_blank">Quest Software</a> partly because we do a lot to give back to the community. Here&#8217;s one example, a free poster describing all of the SQL Server 2005 and 2008 dynamic management views.  <a href="http://www.quest.com/common/registration.aspx?requestdefid=24480">Get it here</a>.  It&#8217;s the perfect compliment to the free system map poster available from Microsoft <a title="More complex than the London Tube map." href="http://www.microsoft.com/downloads/en/details.aspx?FamilyID=2ec9e842-40be-4321-9b56-92fd3860fb32&amp;displaylang=en" target="_blank">here</a>.</p>
<p><a href="http://www.quest.com/common/registration.aspx?requestdefid=24480"><br />
</a></p>
]]></content:encoded>
			<wfw:commentRss>http://kevinekline.com/2010/08/29/free-poster-sql-server-dynamic-management-views/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>New Fast Features Video &#8211; Toad for SQL Server</title>
		<link>http://kevinekline.com/2010/07/21/new-fast-features-video-toad-for-sql-server/</link>
		<comments>http://kevinekline.com/2010/07/21/new-fast-features-video-toad-for-sql-server/#comments</comments>
		<pubDate>Wed, 21 Jul 2010 12:57:03 +0000</pubDate>
		<dc:creator>kevin</dc:creator>
				<category><![CDATA[NoSQL]]></category>
		<category><![CDATA[On-Line Resources]]></category>
		<category><![CDATA[SQLServerPedia Syndication]]></category>
		<category><![CDATA[TCD blog post]]></category>
		<category><![CDATA[Transact-SQL Programming]]></category>
		<category><![CDATA[DBA]]></category>
		<category><![CDATA[Developer]]></category>
		<category><![CDATA[Quest Software]]></category>
		<category><![CDATA[Toad for SQL Server]]></category>
		<category><![CDATA[Tools]]></category>

		<guid isPermaLink="false">http://kevinekline.com/?p=588</guid>
		<description><![CDATA[Looking for great videos and blogs about the Toad database tools? Here are some useful pointers.]]></description>
			<content:encoded><![CDATA[<h3>Fast Features for Quest Tools. Someday soon, I promise.</h3>
<p>I&#8217;ve been trying hard to get more videos out the door about the SQL Server tools from Quest Software (my employer).  I&#8217;d sent a new one over to the program marketing team a while back, but it&#8217;s not showing up in the <a title="Not showing anything as of July 21, 2010" href="http://toadworld.com/KNOWLEDGE/ToadKnowledge/CoffeeBreakBytes/tabid/73/TID/397/cid/142/Default.aspx" target="_blank">Coffee Break Bytes section</a> like it should.  These little videos show a single feature in detail, usually taking no more than 5 minutes to watch in their entirety.</p>
<p>In the meanwhile, check out the excellent video series <a title="A YouTube Video Channel All About Toad" href="http://toadworld.com/LandingPages/YouTubeVideos/tabid/346/Default.aspx#SS" target="_blank">here</a>.  And the blogs are really good too, available on the interwebs <a title="Interwebs Brings Us Da Blogs" href="http://toadworld.com/BLOGS/tabid/67/Default.aspx" target="_blank">here</a>.</p>
<h3>Thinking about cloud computing? </h3>
<p>Well, there aren&#8217;t many tools out there that will make your life easier than Toad for Cloud Databases.  As is most cloud technology, this particular tool is still in beta.  But there&#8217;s no better time to help set the direction and features of a tool with as outstanding a record as Toad.  Get the details and <a title="I've heard that coastal rainfall sometimes drops baby toads - that is NOT what Toad for Cloud is about." href="http://toadworld.com/PRODUCTS/ToadforCloudDatabases/tabid/749/Default.aspx" target="_blank">download the beta here</a>.</p>
<p>And if you like providing feedback to the development team, don&#8217;t overlook the <a title="Toads love ponds. Get it? It's a JOKE!" href="http://toadfororacle.ideascale.com/" target="_blank">IdeaPond</a> where you can provide your own ideas and vote on others that are already posted.  (Currently targeted towards Oracle users, but I say let&#8217;s crash that party)!</p>
<p>Enjoy!</p>
<p>-Kevin</p>
<p> Twitter @kekline</p>
]]></content:encoded>
			<wfw:commentRss>http://kevinekline.com/2010/07/21/new-fast-features-video-toad-for-sql-server/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The Data Detective is on the Case (And I Can Hook You Up for Free!)</title>
		<link>http://kevinekline.com/2010/05/19/the-data-detective-is-on-the-case-and-i-can-hook-you-up-for-free/</link>
		<comments>http://kevinekline.com/2010/05/19/the-data-detective-is-on-the-case-and-i-can-hook-you-up-for-free/#comments</comments>
		<pubDate>Wed, 19 May 2010 12:49:58 +0000</pubDate>
		<dc:creator>kevin</dc:creator>
				<category><![CDATA[SQLServerPedia Syndication]]></category>
		<category><![CDATA[Transact-SQL Programming]]></category>
		<category><![CDATA[Data Analysis]]></category>
		<category><![CDATA[DBA]]></category>
		<category><![CDATA[Humor]]></category>
		<category><![CDATA[Quest Software]]></category>
		<category><![CDATA[Tools]]></category>

		<guid isPermaLink="false">http://kevinekline.com/?p=479</guid>
		<description><![CDATA[You may have seen a new super sleuth around Quest.com and Toad World &#8211; The Data Detective! The team at Quest Software has created a new comic series where users can learn how Toad for Data Analysts will help you find, understand and report on data.  Plus, you can take part in a contest to win [...]]]></description>
			<content:encoded><![CDATA[<h3 style="text-align: center;"><em>You may have seen a new super sleuth around <a title="Toad tools for databases" href="http://www.quest.com/toad/" target="_blank">Quest.com</a> and <a title="It's not really about amphibians" href="http://www.toadworld.com" target="_blank">Toad World</a> &#8211; The Data Detective! </em></h3>
<div class="wp-caption aligncenter" style="width: 155px"><a href="http://www.toadworld.com/LandingPages/ToadforDataAnalystsComicBook/tabid/667/e/1/Default.aspx"><img title="Toad Data Detective, found in Toad for Data Analysis" src="http://www.quest.com/images/logos/toad-magnifying-glass-145-145.gif" alt="Toad for Data Analysis" width="145" height="145" /></a><p class="wp-caption-text">Everyone wants good data, but not everyone wants to work hard to get it</p></div>
<p>The team at Quest Software has created a new comic series where users can learn how <strong>Toad for Data Analysts</strong> will help you find, understand and report on data.  Plus, you can take part in a contest to win a <strong>free</strong> one-year license of TDA!</p>
<p>The first in the comic book series is posted <a title="I think Spider-Man, Iron Man, or BatMan could probably kick Toad's butt" href="http://www.toadworld.com/LandingPages/ToadforDataAnalystsComicBook/tabid/667/Default.aspx" target="_blank">here</a>.  And there&#8217;s one each month.  If you <a title="KEKmail is not as good as SBEmail (from Strong Bad on HomeStarRunner.com)" href="http://kevinekline.com/contact/" target="_blank">contact me</a> directly, I can help you get to the front of the line for the contest!</p>
<input id="gwProxy" type="hidden" />
<input id="jsProxy" onclick="jsCall();" type="hidden" />
]]></content:encoded>
			<wfw:commentRss>http://kevinekline.com/2010/05/19/the-data-detective-is-on-the-case-and-i-can-hook-you-up-for-free/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Join Me May 19th for 24 Hours of PASS</title>
		<link>http://kevinekline.com/2010/04/26/join-me-may-19th-for-24-hours-of-pass/</link>
		<comments>http://kevinekline.com/2010/04/26/join-me-may-19th-for-24-hours-of-pass/#comments</comments>
		<pubDate>Mon, 26 Apr 2010 14:47:53 +0000</pubDate>
		<dc:creator>kevin</dc:creator>
				<category><![CDATA[Administration]]></category>
		<category><![CDATA[Conferences]]></category>
		<category><![CDATA[On-Line Resources]]></category>
		<category><![CDATA[PASS]]></category>
		<category><![CDATA[Presentations]]></category>
		<category><![CDATA[Professional Development]]></category>
		<category><![CDATA[SQLServerPedia Syndication]]></category>
		<category><![CDATA[Transact-SQL Programming]]></category>
		<category><![CDATA[Best Practices]]></category>
		<category><![CDATA[DBA]]></category>
		<category><![CDATA[Developer]]></category>
		<category><![CDATA[Performance]]></category>
		<category><![CDATA[SQLPASS]]></category>

		<guid isPermaLink="false">http://kevinekline.com/?p=516</guid>
		<description><![CDATA[Check out all the great SQL Server sessions you can attend for FREE in this on-line event.]]></description>
			<content:encoded><![CDATA[<p><a href="http://r20.rs6.net/tn.jsp?et=1103309079192&amp;s=12702&amp;e=001gzGzoQWNOUusCRSa00qv9Q5To4bnRO2xm0aHz7IEZfBn1nAVhnKbi52hRTNeWlDKjYsOUzrXHw1gwsHDQh_8--VChvOhlKPnPCX_VVPaqJiubsGU9kD5iAtgahCCID44aeaqRWZKTIKvv9HG8FrSOPuqDM4fGxC3cL9cDDczMKpL726nk3OcK1DkRCv-RM3QNI0Pbw4AsvrS6dfgMUNIGA==" target="_blank"></a><a title="Register Now!" href="http://r20.rs6.net/tn.jsp?et=1103309079192&amp;s=12702&amp;e=001gzGzoQWNOUsjFujLwMmO4PXzbygaF5fdku5SaYPWbUZFYdvFwOOVeDMn2MXVUPhUdDXvrGrKN5lWICmQo4aFkmwkh8PZytaUrVzvHHz7RySzSepLlGuiT6YwgI4KHag4I8HOpslFpBI=" target="_blank"><img class="aligncenter size-full wp-image-517" title="24HOP" src="http://kevinekline.com/wp-content/uploads/2010/04/24HOP.jpg" alt="" width="601" height="151" /></a></p>
<p><strong>Join Us for 24 Hours of SQL Server Training</strong></p>
<p><em>(with a special focus on SQL Server 2008 R2)</em></p>
<p style="text-align: center;"><em>Did I mention that your Cohorts in Crime (that be <a title="Take That, Access Programmer, erm, Evil-Doer!" href="http://r20.rs6.net/tn.jsp?et=1103309079192&amp;s=12702&amp;e=001gzGzoQWNOUuOZjF-KrHxujYlsOQMesC-mjFLtFzLOWgl_FT1teNLftVY1iE8GydpQ1TGM9SLvJmNqxuu6UxYOAt5v1VqsjIFkexYTKE2pHD4rFc6-WLwjibWnqbvYhawz06OkxRZq6UwkwpcGq2lyhRfYCNqMpq0hlTqEy8k1LSsnHc1v0kUtKSWyPtJoRER" target="_blank">me</a> and <a title="My Fist Will Defragment the Face of Criminals Everywhere!" href="http://r20.rs6.net/tn.jsp?et=1103309079192&amp;s=12702&amp;e=001gzGzoQWNOUvBoTeroUXVe1dwpHetEIajlBdTK-g57SuIoCeuKCsh-N8Er7lNvCsXBK01xw7I7dLzSuI7e9Y-8YPHXCJxS2arZoRPGc3wd9t_S5TbyWQAYP-qzOKpnSzqeToRSz4OY19b7-KG-Bx3X31e3QqWtYUXGZHsyKnQC7x8JqCbtA3WaSbmgl-xKuQD" target="_blank">Brent Ozar</a>) are presenting?!?<br />
</em></p>
<p>The FREE <a href="http://r20.rs6.net/tn.jsp?et=1103309079192&amp;s=12702&amp;e=001gzGzoQWNOUsjFujLwMmO4PXzbygaF5fdku5SaYPWbUZFYdvFwOOVeDMn2MXVUPhUdDXvrGrKN5lWICmQo4aFkmwkh8PZytaUrVzvHHz7RySzSepLlGuiT6YwgI4KHag4I8HOpslFpBI=" target="_blank">24 Hours of PASS</a> event is bringing an exceptional lineup of SQL Server and BI experts to     your computer starting at 12:00 GMT (UTC) on <strong>May 19</strong>.</p>
<p><a href="http://r20.rs6.net/tn.jsp?et=1103309079192&amp;s=12702&amp;e=001gzGzoQWNOUv9BzshqvEpgwFz2XgXW8b50msy2KWLG6SUXomR2ueFSBBlGRE8t0T3Gm8TFRUuAju_JJAJTk4sfASGuUxhKeZ_DnvhS8B1U3pNX_z7UuaJTzTpPFS_Jeffu-MFCaaZ-vodt5ipVGLca8kUGDZO0qkz" target="_blank">Get an in-depth look at     the hottest SQL Server and BI topics</a>, including (but not limited to!) &#8211;     the new <a href="http://r20.rs6.net/tn.jsp?et=1103309079192&amp;s=12702&amp;e=001gzGzoQWNOUucFSQNQD9KQ4Ntv3s9hlw6Q-cJKsl3izrdqF1yFPMNJOgl89Oz2Oxbw4e9-tx93DriP9fRXDPbHc4k3JOMfoOL0zRptrY-Az6_iobSekFy_wlyU7flegXgvCU_FWWd5weQJdIG1bUc_RAvtRW0dSuG" target="_blank">SQL Server 2008 R2</a>,     with its business intelligence and data management innovations, and     much more.</p>
<p style="padding-left: 30px;"><strong>When does it  start? 12:00 GMT (UTC):</strong></p>
<p style="padding-left: 30px;"><strong>New York:</strong> 08:00<br />
<strong>Chicago:</strong> 07:00<br />
<strong>San Francisco:</strong> 05:00<br />
<strong>London:</strong> 13:00<br />
<strong>Paris:</strong> 14:00<br />
<strong>Moscow:</strong> 16:00<br />
<strong>Mumbai:</strong> 17:30<br />
<strong>Singapore:</strong> 20:00<br />
<strong>Sydney: </strong>22:00</p>
<p><strong> </strong></p>
<p>The roster of phenomenal speakers features many MVPs and top-rated presenters, including <a href="http://r20.rs6.net/tn.jsp?et=1103309079192&amp;s=12702&amp;e=001gzGzoQWNOUvRttnKUIPgEfTwaZKi_dXRCm0ovRW61__s3U7eGggyi29sZlGbafhj1SG2mGAaJrtYaKN3pppoQkwoUVglQ0NNt9PML74oermOhrP3pnkU_s-D5oI8H-2koge2DYhQpFYO0KOXAqCE6WbYb52FnS10YDWdXr2oD9L_vSdZKCgcAdTJmLrHpEiNFo6fTZwgzEU=" target="_blank">Adam Machanic</a>, <a href="http://r20.rs6.net/tn.jsp?et=1103309079192&amp;s=12702&amp;e=001gzGzoQWNOUsRaxJ-QQCeYZucHSYDtsC3_l0d7zxFi0lAlAzS7a3AtrUnxJhfZu53TduvDTatyis5p_rmCC4zme5dDD7RsI1rA2TtnTg8o9M2x62WSbClCdcg7YB3Ky8BQCcLU7OvwLtDuSCJW2zj4M3fd08RypckBHINg1AnrCaTNzFvtursClTGPUB_O_OX" target="_blank">Andy Leonard</a>, <a href="http://r20.rs6.net/tn.jsp?et=1103309079192&amp;s=12702&amp;e=001gzGzoQWNOUtk-d8XeuFcUzbuJ93heeDU3L7AodjJcYHIYRS5miiYyFKGkxiw6tD1ovm0CHNI7qs8_sinbPz5GCpKIlLIVwKRZNn5fYqjJ1K1MrUXs2cgmb0DHedjPK3Zd12MuppYDN0xRd6OGcpH9XY4kW_Ks5jjgrVRQ6baCs2liRiqcSgtgwSlNqG0QFKsIVsiRr6wckVPNPjmsRXEsg==" target="_blank">Brad McGehee</a>, <a href="http://r20.rs6.net/tn.jsp?et=1103309079192&amp;s=12702&amp;e=001gzGzoQWNOUvBoTeroUXVe1dwpHetEIajlBdTK-g57SuIoCeuKCsh-N8Er7lNvCsXBK01xw7I7dLzSuI7e9Y-8YPHXCJxS2arZoRPGc3wd9t_S5TbyWQAYP-qzOKpnSzqeToRSz4OY19b7-KG-Bx3X31e3QqWtYUXGZHsyKnQC7x8JqCbtA3WaSbmgl-xKuQD" target="_blank">Brent Ozar</a>, <a href="http://r20.rs6.net/tn.jsp?et=1103309079192&amp;s=12702&amp;e=001gzGzoQWNOUv759uUGW0Z9kO0wSn-AhOGr6kyD__KRrZyZNtq9jUPojFIgXmC0jMKpKMapT2zpVzcynWQ-dXXyQdPT2NStMz85l3ACdj5QqJml11NrL09sEA4_1k-KdbaSh6zE63qaBFLRM3FYzq7TzlZXEzjp2XCir4W2JWRhwh-dnqHCKhkZWECX09gDD7X" target="_blank">Brian Knight</a>, <a href="http://r20.rs6.net/tn.jsp?et=1103309079192&amp;s=12702&amp;e=001gzGzoQWNOUvPZpqX_VoYtK9mvoNAFEcaaKwxUGUEXfsCaDkFkeF4ywTuXIFTNZ58dybX-GOah7QtZippU9LoSx2nLoQMtN6VJjYQZPFFJPsqY8Gw42bGkveXAK_5af5kOMih2T3qaAnfXxpJod12KXfYovXZfyRwZkYTX4UzoRHMjvvPEehZkBvuMtm2lljwYZrvW95S1Pw8_NNjngU_9w==" target="_blank">Chuck Heinzelman</a>, <a href="http://r20.rs6.net/tn.jsp?et=1103309079192&amp;s=12702&amp;e=001gzGzoQWNOUvTsIn8-QLqkXdl4TUlAkrSwlzwo951WIxpdvrUoHCWXnH_8b0yNohWDPSVfHnpU6Xg0GMjIBpYDNkba_uyUgcrQ6GgN9GIv6IVqPYNhTCKxyWTkrfcUzJ835uFb8qS5yfdXKrihHQkyPZM7suYxDeQAIVUbi8PVu38ZfMXYYNkjtRTF14d3y5KtSVu-B3XjiQ=" target="_blank">Dean Richards</a>, <a href="http://r20.rs6.net/tn.jsp?et=1103309079192&amp;s=12702&amp;e=001gzGzoQWNOUvrDILg7v9w8Ml-qJDVtbyZCOoLSmbQ3VIQ0yxSeOW6V6ymnNcxUM1njL3B2PPXhy2E3lPDDqykyxJdorGzhwp2NC5E1PSqbCBWFJWcJfInd-eytt4fOhGWEUvM2wTvbjUGH9ZXB-I0PNCaCCwNr_9f2E_x5gHLhCzdUedqaEQFMsMdKOqFhnK-cXVIZ6CHc94z2CWcagTyxg==" target="_blank">Don Kiely</a>, <a href="http://r20.rs6.net/tn.jsp?et=1103309079192&amp;s=12702&amp;e=001gzGzoQWNOUt8cKaJG-xGr7eRaLE-aBuMofXRyMc_rs5HGZ-rInl4bCT0XuO0xsoBr55n9T8hqhUB_tMDzphgjhZ49uL_vis3-w04R3SJpGTgW1H16twj9nOIcA-97xFYXrGcjCEQo-mKYhJD5Cx_RPvog8ffrSmlG9j0tT4q4Md41-d9YPTEO8-afoaCvpHC" target="_blank">Don Vilen</a>, <a href="http://r20.rs6.net/tn.jsp?et=1103309079192&amp;s=12702&amp;e=001gzGzoQWNOUsb0V0NrWcKVmZPC8ArhHlfJEil9C_Uqgi1sBCbCFDu_TZ5jXslmymf2YLEyKi-SjQSXa6AM5UoXSYZIXUELCmoUzTVk4QZDoJFKIwLX-4zzKkKHEZxbp0hzxqKyQxA6o2o2ryv8hsx1il_9XF_spp36xgALxqERtJajS3hYoFXvZmPy8IxmRiHwEMsHevSp40wARy018XNuw==" target="_blank">Donald Farmer</a>, <a href="http://r20.rs6.net/tn.jsp?et=1103309079192&amp;s=12702&amp;e=001gzGzoQWNOUv9V-QhuKbDXajC6kkRkHF5ZPn-mQrAaoRvOpBkOLIQkk-N2EyUIp2-ix4kUvts7xQ-fH_cdzFCg9Q_69WPSYBR6AFl9mBOK7dlIN_iJwffAQzTMKJtdHoN-qbA0FD-qJq7gK-jchd7Fex1PD_FvvxtV_b8GJq52u99Mj_qd0qRtdMg034WzCZp7qcwa2rN75I8Vott98Y1_w==" target="_blank">Glenn Berry</a>, <a href="http://r20.rs6.net/tn.jsp?et=1103309079192&amp;s=12702&amp;e=001gzGzoQWNOUvYa5FkvZ5tRxOc1zGqx2wqOsTpP0QbXPZPFm9521D_qlnQR6D5ACuGozNXTXffrHIfxe7LoxY2ALQHElm-KugmxaWoPT0yi1VHBDshWOUHNH6zfNkJJn0UXw77LJUXzaIlscW21Y9rfpr0EgURQ_6s34c2pI3WAds9K_FNer6uHxvedkTuhYiyenrCCr6LFvjPRBZW53i_nA==" target="_blank">Greg Low</a>, <a href="http://r20.rs6.net/tn.jsp?et=1103309079192&amp;s=12702&amp;e=001gzGzoQWNOUtsxBZq1jw_KH-qLD2DI52_Y3XyYzbSHSb6yM-rQWl-OfC4LOVHZlklIV77Wh99pJE9CVxGuWvWTstzEUpluDUVujDZ9ASuzhnpz4LzLoe3GXpaoLFd8lz3ovujAMpLpXjRguXfZg2vTPQhUPAjh4cxvrM1pPx8qPK9lSNc6v-BcQ==" target="_blank">Jacob Sebastian</a>, <a href="http://r20.rs6.net/tn.jsp?et=1103309079192&amp;s=12702&amp;e=001gzGzoQWNOUt3xSciFZoYQXjH0eDBFccjTzucFLHn-0Lf7CYyUhzIZ4Uia63EprDWmgE_oQPb7YBfEggx6pabfUWDIRugLaWapJndFesNODqZl7oqtIKkx-INEkfhIZ1u3_eCXmtUJJxPPKRsfu8FOMnOqpDHagdCC3BtQxy6PpvgcLMKh-3yLpkBxIQVAOJM_dMd1ViuKl9qITtmaeDQuA==" target="_blank">Jessica Moss</a>, <a href="http://r20.rs6.net/tn.jsp?et=1103309079192&amp;s=12702&amp;e=001gzGzoQWNOUsUzI5ItTP5FTNthnveT4hXmo1Uvr338NTJPBJh8E-9XopMNGPO5F5moLusnJltz_g7CPq9EYUP8u3ikHsq6xpZSQY0zCkgiBBgo06vZhShT0sHA8YaKNx12jOCe9m11yE3HTdV2KixPB6R88Py1Fu4bO-umonCYvtC7yHxCntDv8bpr4u9Z_22UQije_-Gj54=" target="_blank">Kevin Cox</a>, <a href="http://r20.rs6.net/tn.jsp?et=1103309079192&amp;s=12702&amp;e=001gzGzoQWNOUuOZjF-KrHxujYlsOQMesC-mjFLtFzLOWgl_FT1teNLftVY1iE8GydpQ1TGM9SLvJmNqxuu6UxYOAt5v1VqsjIFkexYTKE2pHD4rFc6-WLwjibWnqbvYhawz06OkxRZq6UwkwpcGq2lyhRfYCNqMpq0hlTqEy8k1LSsnHc1v0kUtKSWyPtJoRER" target="_blank">Kevin Kline</a>, <a href="http://r20.rs6.net/tn.jsp?et=1103309079192&amp;s=12702&amp;e=001gzGzoQWNOUvzkUExcYeTUjo01daTWZysvyT0Xl2lZD01dcgBM-F_1-zVrXx0pJjT5lea8BKg0GXEeO_Hi8BXJUHhMMqNVWvCD9RewkREnogAYUBysea-saeu0Tzgyt2qNXKKRm1TLrlpu6PwEL5Cj1VgaWeAl2Y0jnAd9U51R4zbH-SpNbRKm8TTAV3b5YOA" target="_blank">Louis Davidson</a>, <a href="http://r20.rs6.net/tn.jsp?et=1103309079192&amp;s=12702&amp;e=001gzGzoQWNOUvbuhRENF0zC3pBuIU8Q3c0puWIlJI3RAfNuy9o0ZgswbEdzXbb9rOm6ye-AEkikcRyqOQNnCgmorga_YcqJE6YFUW1PiFjBYxUhJDfxdBixJF4LYe5gd6Xo9Fx4c4zEGk92d92kc1zJHcPOIQrdaIwluo5yFF25_6JqSEmiJeWDr9jCA--66D_el0eFxfLdxfoGL0NyDpLuw==" target="_blank">Maciej Pilecki</a>, <a href="http://r20.rs6.net/tn.jsp?et=1103309079192&amp;s=12702&amp;e=001gzGzoQWNOUsEEk6IDxtt9nT6LonA4DZMTHGhX1DviG10I83vsVLhTBKQvlchQqJKa84nZ9lnccfPlcbApb_R6JdFHroZXF_ppwtqOm1y62h3OqjHOG93QiXb1XdM1P1he6QG1H0swrxCVuq3ZZWo2t83SSYiAeD-pEoVXSDP5JSwAv7kknZlgNpHEbnq8DA3aGJj5IEhzRF-w2u2TVpZAWzReeX48B7d" target="_blank">Peter Myers</a>, <a href="http://r20.rs6.net/tn.jsp?et=1103309079192&amp;s=12702&amp;e=001gzGzoQWNOUs86mRTX-_nLk8gehGTsYzAVDOaSQKMH09ibFQKQ58TWVmmzIaB4_8G3roFb9C5iwGbvBqvGuf4vVrkq2WgFc517HHwWlLz-2Hey-B1vIZoLa_ijX2HwEHy_QZskeM87IOrFMTU0x3K_jzp_KLYsp1aBlqovKuRZ_n4RSOVJ7cP2WQk0dlGvb_obKmsuhP9RLg=" target="_blank">Peter Ward</a>, <a href="http://r20.rs6.net/tn.jsp?et=1103309079192&amp;s=12702&amp;e=001gzGzoQWNOUsiHcxJKKv-htoBbEWbpPoiPAt8U3y38VLn2HJSoEsMZvHSdwcFmsxpVB2osQKfl1fF2nxojcHR7aIqYyTsewdIaO5_RaWc__btcWDJEWv9HCNuMhi0Ovwn4bO_ggahrW0JW7paP6CKDiefxB5BT3u1jEUuQYd865VMGpeBwUjrpcp77JCqt5KXZnYzFbTNMUrB6ZIiJeTnuw==" target="_blank">Rushabh Mehta</a>, <a href="http://r20.rs6.net/tn.jsp?et=1103309079192&amp;s=12702&amp;e=001gzGzoQWNOUvaOlOWHhuddpbCUBj46nDISE8cADHje4X07zaJlwKF8Lyc1fLEDCoKDGS57P3gHu8A7OjnurtxvToyamHijnfKBCJeY4tEqcN-0zxjKOIUMVtHs1zA0fPjNM5NwPSeAOs2xrygq6i5oyI5akHmD9ko1pe2qaFU3Auoy3pjT1dhjG5ueAEOr3wHnoU3Nbnc4gzy5LvCbBpKSw==" target="_blank">Sean McCown</a>, <a href="http://r20.rs6.net/tn.jsp?et=1103309079192&amp;s=12702&amp;e=001gzGzoQWNOUuBBIB0j-f-_qw_941E_ejf46YJYRRORUoxg96203opjnxuS-DJzcCWrU87L9gMsJSTn9mTbCGxXKdAkhAQPoOgQxgOi-urQyt_mVYZCPjOYSo7BnQt0KGY_kYPiSxxfF6r4IFNgs3KnwBUt8zhQyzMMF7wYu22iLFmvy2TECtPPqEyzOZWK_Yj" target="_blank">Simon Sabin</a>, <a href="http://r20.rs6.net/tn.jsp?et=1103309079192&amp;s=12702&amp;e=001gzGzoQWNOUtKRe3ZF5buPuLCr4qosGxeyUxrn2t8Tz4avfnvgMFrdmWfn6B8pldAThHkMNnUVW9k2H6KlX_jUfUsO7b8xJxmOVwkxefotak3nF-7XNopaS1_bq6L5VKLaq9PhkXEhFS6pyfQGNFbiSAacXzks3bKc_DpL3GKUqXOa0rPCAviwwsTNcn-3HP4tuD4C6-zR6poTORcsXVNcQ==" target="_blank">Thomas Grosher</a>.</p>
<p>Check out <a href="http://r20.rs6.net/tn.jsp?et=1103309079192&amp;s=12702&amp;e=001gzGzoQWNOUucFSQNQD9KQ4Ntv3s9hlw6Q-cJKsl3izrdqF1yFPMNJOgl89Oz2Oxbw4e9-tx93DriP9fRXDPbHc4k3JOMfoOL0zRptrY-Az6_iobSekFy_wlyU7flegXgvCU_FWWd5weQJdIG1bUc_RAvtRW0dSuG" target="_blank">all the great SQL Server     sessions</a> you can attend for FREE. Share this information with a friend or colleague.</p>
<p>PASS is looking forward to having you join us all for this exceptional event.     Please contact us at <a href="mailto:24hrs@sqlpass.org" target="_blank">24hrs@sqlpass.org</a> with any questions.  You can also find lots of general details at <a href="http://www.sqlpass.org/24hours/2010/">http://www.sqlpass.org/24hours/2010/</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://kevinekline.com/2010/04/26/join-me-may-19th-for-24-hours-of-pass/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Free Training for You, Punishing Workload for Me. Thank You for Enjoying My Misery.</title>
		<link>http://kevinekline.com/2010/02/09/free-training-for-you-punishing-workload-for-me-thank-you-for-enjoying-my-misery/</link>
		<comments>http://kevinekline.com/2010/02/09/free-training-for-you-punishing-workload-for-me-thank-you-for-enjoying-my-misery/#comments</comments>
		<pubDate>Tue, 09 Feb 2010 20:33:06 +0000</pubDate>
		<dc:creator>kevin</dc:creator>
				<category><![CDATA[Administration]]></category>
		<category><![CDATA[Conferences]]></category>
		<category><![CDATA[On-Line Resources]]></category>
		<category><![CDATA[PASS]]></category>
		<category><![CDATA[Presentations]]></category>
		<category><![CDATA[SQLServerPedia Syndication]]></category>
		<category><![CDATA[Transact-SQL Programming]]></category>
		<category><![CDATA[.NET]]></category>
		<category><![CDATA[Best Practices]]></category>
		<category><![CDATA[DBA]]></category>
		<category><![CDATA[Developer]]></category>
		<category><![CDATA[Performance]]></category>
		<category><![CDATA[SQL Injection]]></category>
		<category><![CDATA[SQL Server 2008 R2]]></category>
		<category><![CDATA[Training]]></category>

		<guid isPermaLink="false">http://kevinekline.com/?p=422</guid>
		<description><![CDATA[Everybody enjoys a little free training now and then.  I&#8217;ve got mountains of free training in the works.  Some of it is in-person and local while some are in webcast format.  Please join me as you&#8217;re able! Tomorrow &#8211; Wednesday! Wed, Feb 10, 2010 at 12 pm (noon) MST &#8211; PASS DBA Virtual Chapter; Top [...]]]></description>
			<content:encoded><![CDATA[<div id="attachment_423" class="wp-caption aligncenter" style="width: 310px"><a href="http://kevinekline.com/wp-content/uploads/2010/02/stupid-road-construction-workers-copy.gif"><img class="size-medium wp-image-423" title="stupid-road-construction-workers-copy" src="http://kevinekline.com/wp-content/uploads/2010/02/stupid-road-construction-workers-copy-300x222.gif" alt="" width="300" height="222" /></a><p class="wp-caption-text">Everybody Needs Training</p></div>
<p>Everybody enjoys a little free training now and then.  I&#8217;ve got mountains of free training in the works.  Some of it is in-person and local while some are in webcast format.  Please join me as you&#8217;re able!</p>
<h3>Tomorrow &#8211; Wednesday!</h3>
<p>Wed, Feb 10, 2010 at 12 pm (noon) MST &#8211; <a title="I made these mistakes so you don't have to." href="http://www.sqlpass.org/Events/ctl/ViewEvent/mid/521.aspx?ID=291" target="_blank">PASS DBA Virtual Chapter; Top 10 Administration Mistakes on SQL Server</a></p>
<p style="padding-left: 30px;">There are a short list of mistakes that, if you know of them in advance and prepare for them, will make your life much easier.  This presentation shows you these mistakes, the &#8220;low hanging fruit&#8221; of database administration.  Once you apply the lessons learned from this session, you’ll find yourself performing at a higher level of efficiency and effectiveness than before.  <a title="Great MSSQL Products from a Great Company" href="http://sqlserver.quest.com" target="_blank">Quest</a> is sponsoring this and raffling off a copy of my book, <em>SQL in a Nutshell</em>, and O-M-G a KINDLE!!!  (Free, but registration required.)  And if you haven&#8217;t already done it, join <a title="The Professional Association for SQL Server" href="http://www.sqlpass.org" target="_blank">PASS</a>!</p>
<p style="padding-left: 30px;">
<h3>Day After Tomorrow &#8211; Thursday!</h3>
<p>Thu, Feb 11, 2010 at 11 am EST &#8211; <a title="SQL Injection - All Too Common" href="http://www.quest.com/events/listdetails.aspx?contentid=10915&amp;technology=34&amp;prod=&amp;prodfamily=&amp;loc=" target="_blank">Quest Software Pain of the Week; Understanding &amp; Preventing SQL Injection Attacks</a> &#8211; with Kevin Kline and K. Brian Kelley</p>
<p style="padding-left: 30px;">SQL Injection attacks is the most common hacker trick used on the Web and yet, one of the easiest to prevent. Learn what they are and why you need to be concerned about them. In this webcast, I and SQL Server MVP K. Brian Kelley (<a title="K.B.K. at SQLServerCentral" href="www.sqlservercentral.com/blogs/brian_kelley/default.aspx" target="_blank">blog </a>| <a title="He's also a youth minister" href="http://twitter.com/kbriankelley" target="_blank">twitter</a>) will demonstrate different types of SQL injection attacks. You’ll learn how to find and block them to keep your databases safe, preventing disruptions to your organization. <a title="Great MSSQL Products from a Great Company" href="http://sqlserver.quest.com/" target="_blank">Quest</a> is sponsoring this as well and raffling off more goodies.  (Free, but registration required.)</p>
<p>Thu, Feb 11, 2010 at 6 pm CST &#8211; <a title="Presenting in my home town, Nashvegas" href="http://www.nashdotnet.org/Home/tabid/76/ModuleID/408/ItemID/38/mctl/EventDetails/Default.aspx" target="_blank">Nashville .NET User Group; Ten Things DBAs Want .NET Developers to Know</a></p>
<p style="padding-left: 30px;">Stereotypes abound for different types of people in the IT world. Developers think DBAs are control freaks. DBAs think developers are unruly cowboys. How do we overcome these differences? If you’re a developer, your best strategy is to manage your DBAs’ anxieties and demonstrate your competence and credibility. Attend this session to learn about 10 techniques that developers can apply to their code which will calm your DBAs’ fears and earn their admiration. Techniques include how to analyze a query plan and how to make sure your query is taking advantage of the best available indexes.  Attendance is free although registration is encouraged so we can get a good count for the food, plus there&#8217;s free pizza and a raffle at the end.  Drinks afterwards at Chilis.</p>
<h3>Coming Soon</h3>
<p>Mar 03, 2010 &gt;&gt;&gt;<em><strong>FULL DAY OF FREE TRAINING</strong></em>!&lt;&lt;&lt; &#8211; <a title="Live from Sunny Tucson, AZ" href="http://www.vconferenceonline.com/shows/spring10/quest/register/multireg.asp?newmem=1" target="_blank">Quest Software SQL Server vConference; Troubleshooting and Performance Tuning</a> with Kevin Kline, Brent Ozar, and Ariel Weil</p>
<p style="padding-left: 30px;">Join SQL Server MVPs, Kevin Kline and Brent Ozar (<a title="His blog's original name was &quot;King of SQL Server&quot; but felt it might be a tad haughty." href="http://www.brentozar.com" target="_blank">blog </a>| <a title="Many followers think it's about &quot;B&quot; Rentals." href="http://twitter.com/brento" target="_blank">twitter</a>), along with Quest Product Manager <a title="He doesn't blog or tweet, but he's a fricken genius!" href="http://www.vconferenceonline.com/shows/spring10/quest/register/bio.asp?id=3" target="_blank">Ari                             Weil</a> —all from <a title="Trading under Qsft - buy our stock!" href="http://sqlserver.quest.com" target="_blank">Quest Software</a>—as they interactively present tips and tricks to help you monitor                             your SQL Server environment with ease. You’ll learn how to use Dynamic Management                             Views (DMVs) to simplify troubleshooting and significantly enhance SQL Server performance.                             The day consists of <span style="text-decoration: underline;"><em>eight sessions with live Q&amp;A</em></span> &#8211; a great way to get answers to your questions straight from the source. Chat live with Quest experts. Plus, you can visit the Quest booth to download helpful resources like white papers, watch demos and more.  This virtual training day is free and you can attend the sessions that fit your needs &#8211; perfect for tight budgets and busy schedules.</p>
<p>Mar 06, 2010 &#8211; <a title="Home of Bank of America - &quot;May we wedgie your mortgage?&quot;" href="http://www.sqlsaturday.com/33/eventhome.aspx" target="_blank">PASS SQL Saturday, Charlotte, SC</a></p>
<p style="padding-left: 30px;">The SQL Server Community will experience an event like no other in the Southeast region. Renowned speakers from around the world will gather in Charlotte, NC to share their knowledge on Microsoft SQL Server. This is your opportunity to meet, network with and learn from the SQL Community leading experts such as Andrew Kelly, Rick Heiges, John Welch, Brian Knight, Geoff Hiten, Andy Warren, Jessica M. Moss, Rafael Salas, Sergey Pustovit and Tim Ford. Also scheduled to present are current SQL PASS President Rushabh Mehta and former SQL PASS Presidents Wayne Snyder and Kevin Kline.</p>
<p>Mar 24, 2010 &#8211; <a title="Details to come...eventually." href="http://dba.sqlpass.org/" target="_blank">PASS DBA Virtual Chapter</a>; SQL Internals &amp; Architecture</p>
<p>Apr 08, 2010 &#8211; <a title="Details will be announced soon. Bring a friend." href="http://www.quest.com/backstage/pow.aspx" target="_blank">Quest Software Pain of the Week</a>; The Admin&#8217;s Guide to SQL Server w/ Buck Woody</p>
<p>Apr 12, 2010 &#8211; <a title="The TN Titans &gt; The Houston Texans. Nyah Nyah Nyah!" href="http://houston.sqlpass.org/" target="_blank">PASS Chapter, Houston</a>; topic TBD</p>
<p>Apr 17, 2010 &#8211; <a title="In Which BrentO and I Will Shock, Amuse, and Entertain You. We might even talk about SQL Server." href="http://www.sqlsaturday.com/31/eventhome.aspx" target="_blank">PASS SQL Saturday, Chicago</a>; Keynoting w/ Brent Ozar</p>
<p>May 13, 2010 &#8211; <a title="Buck Still Has to Write This Slide Deck" href="http://www.quest.com/backstage/pow.aspx" target="_blank">Quest Software Pain of the Week</a>; SQL Server for the Oracle DBA w/ Buck Woody</p>
<p>May 13, 2010 &#8211; <a title="I'll miss the KY Derby by one week.  Dern!" href="http://louisville.sqlpass.org/" target="_blank">PASS Chapter, Louisville</a>; topic TBD</p>
<p>May 15, 2010 &#8211; <a title="I hope it's on Saturday." href="http://www.sqlsaturday.com" target="_blank">PASS SQL Saturday, Louisville</a>; topic TBD</p>
<p>May 22, 2010 &#8211; <a title="Website to host content soon... I think..." href="http://www.indytechfest.com/Home.aspx" target="_blank">Indy Tech Fest</a>; SQL Internals &amp; Architecture</p>
<input id="gwProxy" type="hidden" />
<p><!--Session data--></p>
<input id="jsProxy" onclick="jsCall();" type="hidden" />
<input id="gwProxy" type="hidden" />
<input id="jsProxy" onclick="jsCall();" type="hidden" />
<input id="gwProxy" type="hidden" />
<input id="jsProxy" onclick="jsCall();" type="hidden" />
]]></content:encoded>
			<wfw:commentRss>http://kevinekline.com/2010/02/09/free-training-for-you-punishing-workload-for-me-thank-you-for-enjoying-my-misery/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

<!-- Performance optimized by W3 Total Cache. Learn more: http://www.w3-edge.com/wordpress-plugins/

Page Caching using disk: enhanced
Database Caching 1/48 queries in 0.039 seconds using disk: basic
Object Caching 877/1025 objects using disk: basic

Served from: kevinekline.com @ 2012-02-05 11:24:38 -->
