<?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/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>CodeBit</title>
	<atom:link href="http://codebit.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://codebit.wordpress.com</link>
	<description>Sharing bits of code and projects</description>
	<lastBuildDate>Wed, 17 Apr 2013 20:01:11 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='codebit.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>CodeBit</title>
		<link>http://codebit.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://codebit.wordpress.com/osd.xml" title="CodeBit" />
	<atom:link rel='hub' href='http://codebit.wordpress.com/?pushpress=hub'/>
		<item>
		<title>Session Timeout Warning Popup for Multiple Tabs</title>
		<link>http://codebit.wordpress.com/2012/08/26/session-timeout-warning-popup-for-multiple-tabs/</link>
		<comments>http://codebit.wordpress.com/2012/08/26/session-timeout-warning-popup-for-multiple-tabs/#comments</comments>
		<pubDate>Sun, 26 Aug 2012 02:08:10 +0000</pubDate>
		<dc:creator>Kyle Peterson</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://codebit.wordpress.com/?p=314</guid>
		<description><![CDATA[Demo Click here to view the demo Description A javascript function for displaying a session timeout warning popup before a user times out in an application.  Below are some highlights of it&#8217;s functionality: Will only display one warning popup even if a user has multiple tabs for the application open As a user browses in [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=codebit.wordpress.com&#038;blog=6669686&#038;post=314&#038;subd=codebit&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<h2><span style="text-decoration:underline;">Demo</span></h2>
<p><a href="http://home.comcast.net/~littlemoe85/SessionTimeoutWarning/index.html" target="_blank">Click here to view the demo</a></p>
<h2><span style="text-decoration:underline;">Description</span></h2>
<p>A javascript function for displaying a session timeout warning popup before a user times out in an application.  Below are some highlights of it&#8217;s functionality:</p>
<ul>
<li>Will only display one warning popup even if a user has multiple tabs for the application open</li>
<li>As a user browses in one tab it will reset the warning popup countdown in all other tabs so they are synchronized</li>
<li>Can display a countdown in each tab&#8217;s title area of how much time is left before the warning popup<br />
<a href="http://codebit.files.wordpress.com/2012/08/sessiontimeoutwarningcountdown.jpg"><img class="alignnone size-full wp-image-316" title="SessionTimeoutWarningCountdown" src="http://codebit.files.wordpress.com/2012/08/sessiontimeoutwarningcountdown.jpg?w=600" alt=""   /></a></li>
<li>Easily configure times, cookie names, URLs, and messaging.</li>
</ul>
<h2><span style="text-decoration:underline;">How To Use</span></h2>
<p><a href="http://home.comcast.net/~littlemoe85/SessionTimeoutWarning/scripts.js" target="_blank">Download</a></p>
<h3>Configure</h3>
<table>
<tbody>
<tr>
<th>Option</th>
<th>Type</th>
<th>Default Value</th>
</tr>
<tr>
<td>iSecondsTillWarning</td>
<td>Integer</td>
<td>15</td>
</tr>
<tr>
<td>iSecondsTillRedirect</td>
<td>Integer</td>
<td>10</td>
</tr>
<tr>
<td>sShowCountdownCookieName</td>
<td>String</td>
<td>TimeoutWarningDisplay</td>
</tr>
<tr>
<td>sLastAccessTimeCookieName</td>
<td>String</td>
<td>TimeoutWarningLastAccessTime</td>
</tr>
<tr>
<td>sWarningURL</td>
<td>String</td>
<td>warning.html</td>
</tr>
<tr>
<td>sLogoutURL</td>
<td>String</td>
<td>logout.html</td>
</tr>
<tr>
<td>sPopupBlockedMessage</td>
<td>String</td>
<td>Your browser blocked a popup trying to warn you that your session is about to time out. Disable your popup blocker for this site so you can receive the warning popup next time.</td>
</tr>
</tbody>
</table>
<h3>App Pages</h3>
<p>Example: home.aspx</p>
<p>The actual pages of the app that need a warning popup.</p>
<p>&lt;script&gt;<br />
var oSessionTimeoutWarning = new SessionTimeoutWarning();<br />
oSessionTimeoutWarning.StartTimeoutWarningTimer(true);<br />
&lt;/script&gt;</p>
<h3>Warning Popup</h3>
<p>Example: warning.html</p>
<p>The warning popup page that will give the user the ability to continue their session or will redirect all of their app tabs to the logout page.  This page needs to be an html page so that it does not affect the app&#8217;s actual session.</p>
<p>&lt;script&gt;<br />
var oSessionTimeoutWarning = new SessionTimeoutWarning();<br />
oSessionTimeoutWarning.StartTimeoutRedirectTimer();<br />
&lt;/script&gt;</p>
<h3>Continue Page</h3>
<p>Example: continue.aspx</p>
<p>The continue page that resets their session clock.  This needs to be an app page that affects the app&#8217;s actual session so it gets reset.</p>
<p>&lt;script language=&#8221;javascript&#8221;&gt;<br />
window.opener.oSessionTimeoutWarning.StartTimeoutWarningTimer(false);<br />
window.close();<br />
&lt;/script&gt;</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/codebit.wordpress.com/314/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/codebit.wordpress.com/314/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=codebit.wordpress.com&#038;blog=6669686&#038;post=314&#038;subd=codebit&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://codebit.wordpress.com/2012/08/26/session-timeout-warning-popup-for-multiple-tabs/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/95d8a34c33bb4664cb29c46b33e895fe?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Kyle</media:title>
		</media:content>

		<media:content url="http://codebit.files.wordpress.com/2012/08/sessiontimeoutwarningcountdown.jpg" medium="image">
			<media:title type="html">SessionTimeoutWarningCountdown</media:title>
		</media:content>
	</item>
		<item>
		<title>Report Viewer 10 Blurry and Jumpy in ASP.NET</title>
		<link>http://codebit.wordpress.com/2012/06/21/report-viewer-2010-blurry-and-jumpy-in-asp-net/</link>
		<comments>http://codebit.wordpress.com/2012/06/21/report-viewer-2010-blurry-and-jumpy-in-asp-net/#comments</comments>
		<pubDate>Thu, 21 Jun 2012 01:37:56 +0000</pubDate>
		<dc:creator>Kyle Peterson</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[asp.net]]></category>
		<category><![CDATA[reportviewer]]></category>

		<guid isPermaLink="false">http://codebit.wordpress.com/?p=308</guid>
		<description><![CDATA[Below are solutions for two issues I experienced when implementing the ReportViewer 10 control in a new ASP.NET 4.0 web application.  The control was being loaded asynchronously and was set to size itself to the report content. Blurry Text with Graph Images Label text for axis or legends were showing up blurred in different browsers [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=codebit.wordpress.com&#038;blog=6669686&#038;post=308&#038;subd=codebit&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>Below are solutions for two issues I experienced when implementing the ReportViewer 10 control in a new ASP.NET 4.0 web application.  The control was being loaded asynchronously and was set to size itself to the report content.</p>
<h2>Blurry Text with Graph Images</h2>
<p>Label text for axis or legends were showing up blurred in different browsers for different graphs.  It ended up being the css that gets generated with the control on the page.  It was setting specific widths and heights on images (using millimeters?) which caused the images to be displayed at something other than their true dimensions.  We put a class of &#8220;ReportViewerControl&#8221; on all of our controls and then put this style in our stylesheet to override the generated styles.</p>
<pre>.ReportViewerControl img
{
    width: auto !important;
    height: auto !important;
}</pre>
<h2>Page Jumping to Top While Report Loads</h2>
<p>If a user tried to scroll down while a report was loading, the page would jump back up to the top of the page while it was loading or when it finished.  We thought this might have been something to do with the javascript the report uses but we ended up thinking it was something more related to how ASP.NET AJAX works (that&#8217;s what the report uses to load asynchronously).  Somewhere in the javascript it is using the standard scrollTo function so since we didn&#8217;t need that function for our pages we overrode it to do nothing.</p>
<pre>&lt;script&gt;
window.scrollTo = function( x,y ) 
{
    return true;
}
&lt;/script&gt;</pre>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/codebit.wordpress.com/308/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/codebit.wordpress.com/308/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=codebit.wordpress.com&#038;blog=6669686&#038;post=308&#038;subd=codebit&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://codebit.wordpress.com/2012/06/21/report-viewer-2010-blurry-and-jumpy-in-asp-net/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/95d8a34c33bb4664cb29c46b33e895fe?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Kyle</media:title>
		</media:content>
	</item>
		<item>
		<title>Easily Toggle Standard Page Override Using a Bookmarklet</title>
		<link>http://codebit.wordpress.com/2012/04/30/easily-toggle-standard-page-override-using-a-bookmarklet/</link>
		<comments>http://codebit.wordpress.com/2012/04/30/easily-toggle-standard-page-override-using-a-bookmarklet/#comments</comments>
		<pubDate>Mon, 30 Apr 2012 03:02:45 +0000</pubDate>
		<dc:creator>Kyle Peterson</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[bookmarklet]]></category>
		<category><![CDATA[Salesforce]]></category>
		<category><![CDATA[visualforce]]></category>

		<guid isPermaLink="false">http://codebit.wordpress.com/?p=297</guid>
		<description><![CDATA[What It Does This is a bookmarklet that makes it easy to view a standard detail page that is normally overridden by a visualforce page.  I have found this useful because it makes it easier to access the Edit Page Layout link of the standard detail page.  In a few scenarios, I have overridden a [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=codebit.wordpress.com&#038;blog=6669686&#038;post=297&#038;subd=codebit&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<h2>What It Does</h2>
<p>This is a bookmarklet that makes it easy to view a standard detail page that is normally overridden by a visualforce page.  I have found this useful because it makes it easier to access the Edit Page Layout link of the standard detail page.  In a few scenarios, I have overridden a standard page only for the purpose of including custom related lists.  The standard detail section is still shown which follows the established page layouts and the easiest way to customize the detail section is still using the Edit Page Layout link.</p>
<p>Make this the URL of your bookmark:</p>
<pre>javascript:(function(){if(document.location.pathname.indexOf("/apex/")==0){var id=/(\?|&amp;)id=([a-zA-Z0-9]+)/.exec(document.location.search)[2];document.location="/"+id+"?nooverride=1";}else{document.location=document.location.pathname;}})();</pre>
<h2>How It Works</h2>
<p>An overridden page looks like the URL below with the id being specified as a querystring.</p>
<p>/apex/Account?id=0016000000N1OWK&amp;sfdc.override=1</p>
<p>To view the standard page you must make the URL the following:</p>
<p>/0016000000N1OWK?nooverride=1</p>
<p>Below is the javascript in the bookmarklet:</p>
<pre>if (document.location.pathname.indexOf("/apex/") == 0)
{
  //get id from querystring and force nooverride mode
  var id = /(\?|&amp;)id=([a-zA-Z0-9]+)/.exec(document.location.search)[2];
  document.location = "/"+id+"?nooverride=1";
}
else
{
  document.location = document.location.pathname; //strip off search
}</pre>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/codebit.wordpress.com/297/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/codebit.wordpress.com/297/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=codebit.wordpress.com&#038;blog=6669686&#038;post=297&#038;subd=codebit&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://codebit.wordpress.com/2012/04/30/easily-toggle-standard-page-override-using-a-bookmarklet/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/95d8a34c33bb4664cb29c46b33e895fe?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Kyle</media:title>
		</media:content>
	</item>
		<item>
		<title>Salesforce Queue Record Delegation</title>
		<link>http://codebit.wordpress.com/2012/04/18/salesforce-queue-record-delegation/</link>
		<comments>http://codebit.wordpress.com/2012/04/18/salesforce-queue-record-delegation/#comments</comments>
		<pubDate>Wed, 18 Apr 2012 03:02:20 +0000</pubDate>
		<dc:creator>Kyle Peterson</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[apex]]></category>
		<category><![CDATA[Salesforce]]></category>
		<category><![CDATA[visualforce]]></category>

		<guid isPermaLink="false">http://codebit.wordpress.com/?p=273</guid>
		<description><![CDATA[Introduction This is a solution for managers to easily delegate and prioritize queue records. Key Points Managers can drag records from queues to different users. Managers can prioritize the records assigned to users by dragging and dropping them in the order they want. A rollup of a column for each user can be calculated to [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=codebit.wordpress.com&#038;blog=6669686&#038;post=273&#038;subd=codebit&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<h2><span style="text-decoration:underline;">Introduction</span></h2>
<p>This is a solution for managers to easily delegate and prioritize queue records.</p>
<h2><span style="text-decoration:underline;">Key Points</span></h2>
<ul>
<li>Managers can drag records from queues to different users.</li>
<li>Managers can prioritize the records assigned to users by dragging and dropping them in the order they want.</li>
<li>A rollup of a column for each user can be calculated to provide numbers, like total estimated hours, so managers can have an idea of each user&#8217;s current workload.  This can help managers determine which users have the availability to handle more work.</li>
<li>Inline editing of records is available if managers need to adjust statuses, titles, descriptions, etc. on the fly.</li>
<li>An additional table of data can be shown at the bottom of the display for things like recently completed records if managers want to review the delegated assignments that have recently been completed.</li>
<li>This setup can work for any object type and its queues.</li>
</ul>
<div><a href="http://codebit.files.wordpress.com/2012/04/queuescheduling-assignments.jpg" target="_blank"><img class="alignnone size-full wp-image-282" title="QueueScheduling-Assignments" src="http://codebit.files.wordpress.com/2012/04/queuescheduling-assignments.jpg?w=600&#038;h=361" alt="" width="600" height="361" /></a></div>
<h2><span style="text-decoration:underline;">How It Works</span></h2>
<p>The records displayed are defined using a custom SOQL query definition object, called Dynamic Queries, which is also shown in the <a title="Console 3 for Salesforce" href="http://codebit.wordpress.com/2011/10/19/console-3-for-salesforce/" target="_blank">Console 3</a> post.  A component was created to handle combining the queries and generating the page UI so that multiple queue management pages could easily be created by simply adding the component to new pages.  The Dynamic Queries determine the object type, so a page could be created to manage customer service case queues and another page could be created to handle lead queues.  The users, queues, and records shown are determined by the criteria in the Dynamic Queries.  Multiple users and queues can be shown on the same page so that records from different queues can be assigned to users.</p>
<p><a href="http://codebit.files.wordpress.com/2012/04/queuescheduling-component.jpg" target="_blank"><img class="alignnone size-full wp-image-279" title="QueueScheduling-Component" src="http://codebit.files.wordpress.com/2012/04/queuescheduling-component.jpg?w=600&#038;h=280" alt="" width="600" height="280" /></a></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/codebit.wordpress.com/273/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/codebit.wordpress.com/273/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=codebit.wordpress.com&#038;blog=6669686&#038;post=273&#038;subd=codebit&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://codebit.wordpress.com/2012/04/18/salesforce-queue-record-delegation/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/95d8a34c33bb4664cb29c46b33e895fe?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Kyle</media:title>
		</media:content>

		<media:content url="http://codebit.files.wordpress.com/2012/04/queuescheduling-assignments.jpg" medium="image">
			<media:title type="html">QueueScheduling-Assignments</media:title>
		</media:content>

		<media:content url="http://codebit.files.wordpress.com/2012/04/queuescheduling-component.jpg" medium="image">
			<media:title type="html">QueueScheduling-Component</media:title>
		</media:content>
	</item>
		<item>
		<title>Force.com Quick Login As Extension</title>
		<link>http://codebit.wordpress.com/2012/03/12/force-com-quick-login-as-extension/</link>
		<comments>http://codebit.wordpress.com/2012/03/12/force-com-quick-login-as-extension/#comments</comments>
		<pubDate>Mon, 12 Mar 2012 02:52:07 +0000</pubDate>
		<dc:creator>Kyle Peterson</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://codebit.wordpress.com/?p=263</guid>
		<description><![CDATA[This Google Chrome extension makes it easy to login as another user for the current page being viewed. Chrome Store Web Link Quick Login As Extension Main Points Gives a popup of the users listed on the user listing page so you can select to login as a different user on any page. When a [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=codebit.wordpress.com&#038;blog=6669686&#038;post=263&#038;subd=codebit&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p><a href="http://codebit.files.wordpress.com/2012/03/screenshot41.jpg"><img class="alignnone size-full wp-image-266" title="screenshot4" src="http://codebit.files.wordpress.com/2012/03/screenshot41.jpg?w=600&#038;h=286" alt="" width="600" height="286" /></a></p>
<p>This Google Chrome extension makes it easy to login as another user for the current page being viewed.</p>
<h2>Chrome Store Web Link</h2>
<p><a href="https://chrome.google.com/webstore/detail/dccccilgophpadpomgajjlkkioipoojh" target="_blank">Quick Login As Extension</a></p>
<h2>Main Points</h2>
<ul>
<li>Gives a popup of the users listed on the user listing page so you can select to login as a different user on any page.</li>
<li>When a user is selected, it logs you in as that user and keeps you on the page you were viewing.</li>
<li>When you log out, it will take you back to the page you were originally on when you logged in as the other user.</li>
</ul>
<h2> Additional Points</h2>
<ul>
<li>Above the user list in the popup, the &#8220;View&#8221; dropdown is available so you can change to another view from the user listing page.</li>
<li>Only the first 7 columns from the user listing table are shown by default (including the login column) since the popup has a limited width. A &#8220;Show All Columns&#8221; button is available if you can&#8217;t identify the user you need by the default columns shown.</li>
</ul>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/codebit.wordpress.com/263/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/codebit.wordpress.com/263/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=codebit.wordpress.com&#038;blog=6669686&#038;post=263&#038;subd=codebit&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://codebit.wordpress.com/2012/03/12/force-com-quick-login-as-extension/feed/</wfw:commentRss>
		<slash:comments>12</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/95d8a34c33bb4664cb29c46b33e895fe?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Kyle</media:title>
		</media:content>

		<media:content url="http://codebit.files.wordpress.com/2012/03/screenshot41.jpg" medium="image">
			<media:title type="html">screenshot4</media:title>
		</media:content>
	</item>
	</channel>
</rss>
