<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss 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:creativeCommons="http://backend.userland.com/creativeCommonsRssModule" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>pipwerks</title>
	
	<link>http://pipwerks.com</link>
	<description>E-Learning and Web Development</description>
	<lastBuildDate>Fri, 26 Apr 2013 06:08:02 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/pipwerks" /><feedburner:info uri="pipwerks" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><creativeCommons:license>http://creativecommons.org/licenses/by-sa/3.0/</creativeCommons:license><image><link>http://creativecommons.org/licenses/by-sa/3.0/</link><url>http://creativecommons.org/images/public/somerights20.gif</url><title>Some Rights Reserved</title></image><feedburner:emailServiceId>pipwerks</feedburner:emailServiceId><feedburner:feedburnerHostname>http://feedburner.google.com</feedburner:feedburnerHostname><item>
		<title>Setting OS X Desktop Picture Based on Time of Day</title>
		<link>http://feedproxy.google.com/~r/pipwerks/~3/RCuAFj2ruYM/</link>
		<comments>http://pipwerks.com/2013/04/25/setting-os-x-desktop-picture-based-on-time-of-day/#comments</comments>
		<pubDate>Fri, 26 Apr 2013 06:08:02 +0000</pubDate>
		<dc:creator>philip</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[Apple]]></category>
		<category><![CDATA[Apple Mac]]></category>
		<category><![CDATA[AppleScript]]></category>
		<category><![CDATA[GitHub]]></category>
		<category><![CDATA[How-to]]></category>
		<category><![CDATA[technology]]></category>

		<guid isPermaLink="false">http://pipwerks.com/?p=1797</guid>
		<description><![CDATA[I recently changed jobs (Hello, FireEye!) and was issued a new MacBook Air. I spend a lot of time looking at the screen and was getting bored with the supplied desktop pictures. I also start work very early most days (7am-ish), and thought it would be nice to have a desktop picture that matches the [...]<p><a href="http://pipwerks.com/2013/04/25/setting-os-x-desktop-picture-based-on-time-of-day/">Setting OS X Desktop Picture Based on Time of Day</a> is a post from: <a href="http://pipwerks.com">pipwerks.com</a>. Unless specified otherwise, all code is licensed under an <a rel="license" href="http://www.opensource.org/licenses/mit-license.php">MIT-style</a> license. All other content is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by-sa/3.0/us/">Creative Commons Attribution-Share Alike 3.0 United States License</a>.</p>
]]></description>
				<content:encoded><![CDATA[<p>I recently changed jobs (Hello, <a href="http://www.fireeye.com">FireEye</a>!) and was issued a new MacBook Air. I spend a lot of time looking at the screen and was getting bored with the supplied desktop pictures. I also start work very early most days (7am-ish), and thought it would be nice to have a desktop picture that matches the mellow-ness of such an early hour.</p>
<p>Of course, this leads to daydreaming &#8212; &#8220;scope creep&#8221; in professional parlance &#8212; and next thing you know, I started thinking &#8220;well, maybe I could also set it to show a nice evening-themed picture at night&#8221;. Then &#8220;maybe I can get it to change both screens&#8221; (I use a laptop with an external display).</p>
<p>I also liked the challenge of putting together a script as quickly as possible. (In my off-hours, of course!)</p>
<p>I downloaded some nice wallpaper images from <a href="http://ngm.nationalgeographic.com/wallpaper/">National Geographic</a>, then created six folders that correspond to the major periods of the day: morning (early and late), afternoon (early and late), and evening (early and late). I organized my National Geographic photos into those six folders, based on the mood each photo evokes. For example, <a href="http://photography.nationalgeographic.com/photography/photo-of-the-day/morning-forest-germany/">this one is an early morning photo</a>.</p>
<p>Then I rolled up my sleeves and got out the trusty old AppleScript Editor. <a href="https://github.com/pipwerks/OS-X-Wallpaper-Changer">The resulting AppleScript is posted on GitHub</a>, if you&#8217;d like to take a gander.</p>
<p>The gist:</p>
<ul>
<li>It selects a folder based on the time of day.</li>
<li>It randomly selects an image from within that folder and displays it as the desktop picture.</li>
<li>It supports more than one monitor, with an option to either display the same image on all monitors, or display different images on each monitor.</li>
</ul>
<p>The resulting AppleScript must be run at a regularly scheduled interval. I&#8217;m currently using GeekTool to run the script every 15 minutes, but I might eventually switch to a crontab job for less overhead.</p>
<p>Regardless, I&#8217;m quite happy with the way it turned out, and have already started daydreaming about other things I can hack together with AppleScript.</p>
<p><a href="http://pipwerks.com/2013/04/25/setting-os-x-desktop-picture-based-on-time-of-day/">Setting OS X Desktop Picture Based on Time of Day</a> is a post from: <a href="http://pipwerks.com">pipwerks.com</a>. Unless specified otherwise, all code is licensed under an <a rel="license" href="http://www.opensource.org/licenses/mit-license.php">MIT-style</a> license. All other content is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by-sa/3.0/us/">Creative Commons Attribution-Share Alike 3.0 United States License</a>.</p>
<div class='yarpp-related-rss'>
<p>Related posts:<ol>
<li><a href='http://pipwerks.com/2009/03/10/font-replacement-techniques/' rel='bookmark' title='Font replacement techniques'>Font replacement techniques</a></li>
<li><a href='http://pipwerks.com/2009/03/06/image-free-progress-bar-using-mootools-and-canvas/' rel='bookmark' title='Image-Free Progress Bar using MooTools and Canvas'>Image-Free Progress Bar using MooTools and Canvas</a></li>
<li><a href='http://pipwerks.com/2008/11/11/installing-parallels-tools-v4-in-ubuntu-810/' rel='bookmark' title='Installing Parallels Tools (v4) in Ubuntu 8.10'>Installing Parallels Tools (v4) in Ubuntu 8.10</a></li>
</ol></p>
</div>
<img src="http://feeds.feedburner.com/~r/pipwerks/~4/RCuAFj2ruYM" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://pipwerks.com/2013/04/25/setting-os-x-desktop-picture-based-on-time-of-day/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://pipwerks.com/2013/04/25/setting-os-x-desktop-picture-based-on-time-of-day/</feedburner:origLink></item>
		<item>
		<title>Flash support is increasingly a minefield</title>
		<link>http://feedproxy.google.com/~r/pipwerks/~3/qVFXKSyktS8/</link>
		<comments>http://pipwerks.com/2013/03/13/flash-support-is-increasingly-a-minefield/#comments</comments>
		<pubDate>Thu, 14 Mar 2013 01:24:44 +0000</pubDate>
		<dc:creator>philip</dc:creator>
				<category><![CDATA[e-learning]]></category>
		<category><![CDATA[web design and development]]></category>
		<category><![CDATA[Adobe]]></category>
		<category><![CDATA[Adobe Flash]]></category>
		<category><![CDATA[Flash Player]]></category>
		<category><![CDATA[opinion]]></category>
		<category><![CDATA[web browsers]]></category>

		<guid isPermaLink="false">http://pipwerks.com/?p=1781</guid>
		<description><![CDATA[Back in 2011, I mentioned that Microsoft was about to halt development of the Silverlight plugin, that Flash mobile was being discontinued, and that Adobe recommended HTML5 for enterprise RIA development instead of Flex, which was being open-sourced. My post was a little long-winded, but the short version was: whoa, the times-are-a-changin&#8217;, it&#8217;s getting dangerous to [...]<p><a href="http://pipwerks.com/2013/03/13/flash-support-is-increasingly-a-minefield/">Flash support is increasingly a minefield</a> is a post from: <a href="http://pipwerks.com">pipwerks.com</a>. Unless specified otherwise, all code is licensed under an <a rel="license" href="http://www.opensource.org/licenses/mit-license.php">MIT-style</a> license. All other content is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by-sa/3.0/us/">Creative Commons Attribution-Share Alike 3.0 United States License</a>.</p>
]]></description>
				<content:encoded><![CDATA[<p>Back in 2011, I <a title="HTML5, Flash, Silverlight, and your courseware" href="http://pipwerks.com/2011/11/14/html5-flash-silverlight-and-your-courseware/">mentioned</a> that Microsoft was about to halt development of the Silverlight plugin, that Flash mobile was being discontinued, and that Adobe recommended HTML5 for enterprise RIA development instead of Flex, which was being open-sourced. My post was a little long-winded, but the short version was: whoa, the times-are-a-changin&#8217;, it&#8217;s getting dangerous to rely on browser plugins.</p>
<p>Over the last year, the situation has evolved in an interesting way &#8212; browser support for plugins (especially Flash Player) has been considerably restricted by browser vendors due to repeated security vulnerabilities in Flash Player and Java.</p>
<h3>Automatically disabling Flash Player</h3>
<p>In May 2012, Apple&#8217;s Safari browser began <a href="http://support.apple.com/kb/HT5271">automatically disabling outdated versions of Flash Player</a>: &#8220;Out-of-date versions of Adobe Flash Player do not include the latest security updates and will be disabled to help keep your Mac secure.&#8221; If a webpage contains a SWF but the installed edition of Flash Player is deemed out of date, Safari will display a &#8220;blocked plugin&#8221; message and inform the user they need to download the latest edition of Flash Player at adobe.com. This change came with <a href="http://blogs.adobe.com/asset/2012/05/working-together-on-keeping-our-mutual-customers-up-to-date.html">Adobe&#8217;s blessing</a>.</p>
<p>In January 2013, <a href="https://blog.mozilla.org/security/2013/01/29/putting-users-in-control-of-plugins/">Mozilla introduced a global &#8220;click to play&#8221; mechanism</a> that disables ALL plugins in Firefox by default, except the latest edition of Flash Player:  &#8221;Our plan is to enable Click to Play for all versions of all plugins except the current version of Flash.&#8221;</p>
<p>To Adobe&#8217;s credit, Flash Player updates are being released at a fast clip to address known security vulnerabilities. Unfortunately, this has a nasty side effect: you&#8217;re very likely to have an outdated edition of Flash Player when you try to view Flash content on a website. (By my unofficial count, <a href="http://www.adobe.com/support/security/#flashplayer">there have been at least 13 updates over the past calendar year</a>, averaging about once a month.)</p>
<p>At a recent job, I managed a small network of Macs in classrooms. The Macs were set up to use <a href="http://blogs.adobe.com/asset/2012/03/an-update-for-the-flash-player-updater.html">Adobe&#8217;s &#8216;automatic updates&#8217; feature for Flash Player</a>, but they never seemed to update fast enough &#8212; we received numerous complaints from classroom users who couldn&#8217;t view Flash content because Safari blocked it.</p>
<h3>Internet Explorer&#8217;s on-again, off-again relationship with Flash Player</h3>
<p>I <a href="http://pipwerks.com/2011/11/14/html5-flash-silverlight-and-your-courseware/">previously mentioned that Microsoft&#8217;s Windows 8 &#8216;Metro&#8217; mode disabled all plugins</a>, including Flash Player; Microsoft said Internet Explorer in Windows 8 Metro mode &#8221;<a href="http://technet.microsoft.com/en-us/library/hh846773.aspx">provides an add-on–free experience, so browser plugins don&#8217;t load and dependent content isn&#8217;t displayed</a>&#8220;.</p>
<p>In May 2012 <a href="http://blogs.msdn.com/b/ie/archive/2012/05/31/windows-release-preview-the-sixth-ie10-platform-preview.aspx">Microsoft changed their minds and enabled Flash in Metro mode</a>. BUT&#8230; Microsoft will ship Flash Player as a <em>component</em> of IE 10 (much like Google Chrome does), and will restrict which sites are allowed to run Flash! &#8220;While any site can play Flash content in IE10 on the Windows desktop, only sites that are on the Compatibility View (<a href="http://msdn.microsoft.com/en-us/library/ie/gg622935(v=vs.85).aspx">CV</a>) list can play Flash content within Metro style IE.&#8221;</p>
<p>In other words, if you don&#8217;t have Microsoft&#8217;s blessing, your Flash site will not work when viewed in Metro mode.</p>
<p><em><strong>Update:</strong> <a href="https://twitter.com/Chris__Sage/status/312014571864981504">@chris_sage</a> pointed me to a post by Microsoft written just three days ago where they apparently <a href="http://blogs.msdn.com/b/ie/archive/2013/03/11/flash-in-windows-8.aspx">changed their minds again</a> &#8212; almost a year after saying they&#8217;d require a whitelist, they now say they support Flash Player by default in Metro mode without requiring sites to be whitelisted.</em></p>
<h3>What it boils down to&#8230;</h3>
<p>If you develop Flash-based content, it will be more and more of a challenge to provide a smooth, problem-free user experience. For e-learning developers, one of the original lures of Flash was the ubiquity of Flash Player; Flash made it easy to provide the same e-learning experience across browsers and platforms. Due to fragmentation in Flash support, this no longer appears possible.</p>
<ul>
<li><strong>Adobe</strong> says: No Flash Player for mobile devices.</li>
<li><strong>Microsoft</strong> says: <del>No Flash Player on Surface tablets (or other Windows 8/RT tablets) unless the user switches to desktop mode OR gets on our whitelist for Metro mode.</del> We love us some Flash! But we&#8217;ll manage the security updates ourselves, thank-you.</li>
<li><strong>Mozilla</strong> says: Only the latest edition of Flash Player for Firefox.</li>
<li><strong>Apple</strong> says: No Flash Player on Apple iOS devices, and only the latest edition of Flash Player for desktop Safari.</li>
<li><strong>Opera</strong> says: Flash Player on desktop editions of Opera? No problem. Flash Player in Opera Mobile? Don&#8217;t get mad at us, Adobe stopped providing Flash Player for mobile devices!</li>
<li><strong>Google</strong> says: We control Flash Player for Chrome (desktop) ourselves. No worries. Flash Player in Chrome on mobile devices? Don&#8217;t get mad at us, Adobe stopped providing Flash Player for mobile devices!</li>
</ul>
<p>The browser vendors are enforcing their will. You don&#8217;t have to be a Flash-hater to see that building Flash-dependent sites is a minefield.</p>
<p>For those of you in e-learning who depend almost completely on Flash-based courseware, it&#8217;s a good idea to start looking for alternatives.</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p><a href="http://pipwerks.com/2013/03/13/flash-support-is-increasingly-a-minefield/">Flash support is increasingly a minefield</a> is a post from: <a href="http://pipwerks.com">pipwerks.com</a>. Unless specified otherwise, all code is licensed under an <a rel="license" href="http://www.opensource.org/licenses/mit-license.php">MIT-style</a> license. All other content is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by-sa/3.0/us/">Creative Commons Attribution-Share Alike 3.0 United States License</a>.</p>
<div class='yarpp-related-rss'>
<p>Related posts:<ol>
<li><a href='http://pipwerks.com/2011/11/14/html5-flash-silverlight-and-your-courseware/' rel='bookmark' title='HTML5, Flash, Silverlight, and your courseware'>HTML5, Flash, Silverlight, and your courseware</a></li>
<li><a href='http://pipwerks.com/2010/04/08/providing-the-same-ui-across-browsers/' rel='bookmark' title='Providing the same UI across browsers'>Providing the same UI across browsers</a></li>
<li><a href='http://pipwerks.com/2010/03/19/html5-video-minus-ogg/' rel='bookmark' title='HTML5 Video, minus Ogg'>HTML5 Video, minus Ogg</a></li>
</ol></p>
</div>
<img src="http://feeds.feedburner.com/~r/pipwerks/~4/qVFXKSyktS8" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://pipwerks.com/2013/03/13/flash-support-is-increasingly-a-minefield/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://pipwerks.com/2013/03/13/flash-support-is-increasingly-a-minefield/</feedburner:origLink></item>
		<item>
		<title>The lower 48</title>
		<link>http://feedproxy.google.com/~r/pipwerks/~3/gHmCU2nFy0I/</link>
		<comments>http://pipwerks.com/2012/05/28/the-lower-48/#comments</comments>
		<pubDate>Tue, 29 May 2012 05:56:41 +0000</pubDate>
		<dc:creator>philip</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[hawaii]]></category>
		<category><![CDATA[Rant]]></category>

		<guid isPermaLink="false">http://pipwerks.com/?p=1760</guid>
		<description><![CDATA[While doing some online shopping, I received a notice that said Estimated Economy Delivery (delivered via USPS): 6 to 12 business days within the lower 48 United States. All P.O. Boxes, APO/FPO/DPO addresses and shipments to Alaska, Hawaii, Puerto Rico and the Virgin Islands will ship via Economy Delivery. I always get peeved when I [...]<p><a href="http://pipwerks.com/2012/05/28/the-lower-48/">The lower 48</a> is a post from: <a href="http://pipwerks.com">pipwerks.com</a>. Unless specified otherwise, all code is licensed under an <a rel="license" href="http://www.opensource.org/licenses/mit-license.php">MIT-style</a> license. All other content is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by-sa/3.0/us/">Creative Commons Attribution-Share Alike 3.0 United States License</a>.</p>
]]></description>
				<content:encoded><![CDATA[<p>While doing some online shopping, I received a notice that said</p>
<blockquote><p>Estimated Economy Delivery (delivered via USPS): 6 to 12 business days within the lower 48 United States. All P.O. Boxes, APO/FPO/DPO addresses and shipments to Alaska, Hawaii, Puerto Rico and the Virgin Islands will ship via Economy Delivery.</p></blockquote>
<p>I always get peeved when I see people use the phrase &#8220;lower 48 states&#8221;. Why?  Well, having grown up in the State of Hawaii, I can tell you with certainty that the Hawaiian islands are farther south than any other state in the United States of America, even the southernmost point of Florida. Taken literally, &#8220;lower 48 states&#8221; actually means all states except Alaska and <a href="http://en.wikipedia.org/wiki/Extreme_points_of_the_United_States#Northernmost">Minnesota</a> (due to <a href="http://en.wikipedia.org/wiki/Lake_of_the_Woods">Lake of the Woods</a>).</p>
<p>Somehow I don&#8217;t think these merchants were referring to Minnesota.</p>
<p>Meh.</p>
<p><a href="http://pipwerks.com/2012/05/28/the-lower-48/">The lower 48</a> is a post from: <a href="http://pipwerks.com">pipwerks.com</a>. Unless specified otherwise, all code is licensed under an <a rel="license" href="http://www.opensource.org/licenses/mit-license.php">MIT-style</a> license. All other content is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by-sa/3.0/us/">Creative Commons Attribution-Share Alike 3.0 United States License</a>.</p>
<div class='yarpp-related-rss yarpp-related-none'>
<p>No related posts.</p>
</div>
<img src="http://feeds.feedburner.com/~r/pipwerks/~4/gHmCU2nFy0I" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://pipwerks.com/2012/05/28/the-lower-48/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://pipwerks.com/2012/05/28/the-lower-48/</feedburner:origLink></item>
		<item>
		<title>Important Adobe Captivate SCORM template update</title>
		<link>http://feedproxy.google.com/~r/pipwerks/~3/Yj6ehEhTJnA/</link>
		<comments>http://pipwerks.com/2012/03/28/important-adobe-captivate-scorm-template-update/#comments</comments>
		<pubDate>Thu, 29 Mar 2012 05:42:14 +0000</pubDate>
		<dc:creator>philip</dc:creator>
				<category><![CDATA[e-learning]]></category>
		<category><![CDATA[SCORM]]></category>
		<category><![CDATA[Adobe Captivate]]></category>
		<category><![CDATA[Adobe Captivate Hacks]]></category>
		<category><![CDATA[How-to]]></category>

		<guid isPermaLink="false">http://pipwerks.com/?p=1749</guid>
		<description><![CDATA[Over the last few weeks, I received a few reports that scores were not being saved in the LMS when using my template.  Turns out there was a simple oversight on my part, and the issue is fixed. Please download the latest version (v1.20120328) from <a href="https://github.com/pipwerks/Captivate-Publishing-Templates-Redux">GitHub</a>.<p><a href="http://pipwerks.com/2012/03/28/important-adobe-captivate-scorm-template-update/">Important Adobe Captivate SCORM template update</a> is a post from: <a href="http://pipwerks.com">pipwerks.com</a>. Unless specified otherwise, all code is licensed under an <a rel="license" href="http://www.opensource.org/licenses/mit-license.php">MIT-style</a> license. All other content is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by-sa/3.0/us/">Creative Commons Attribution-Share Alike 3.0 United States License</a>.</p>
]]></description>
				<content:encoded><![CDATA[<p>Over the last few weeks, I received a few reports that scores were not being saved in the LMS when using my template.  Turned out to be a simple oversight on my part, which I have just fixed. Please download the latest version of <em>scorm_support.js</em> (v1.20120328) from <a href="https://github.com/pipwerks/Captivate-Publishing-Templates-Redux">GitHub</a>.</p>
<h2>Cause and effect</h2>
<p>If you&#8217;re curious what happened, here&#8217;s a quick rundown:</p>
<p>When a SCORM course launches for the first time, the value of <code>cmi.completion_status</code> is <code>"ab-initio"</code>. This means the course is a fresh launch with no prior completion attempts, and therefore no historical data in the LMS.</p>
<p>When Captivate launches, it requests a slew of information from the LMS via <code>SCORM_API.GetValue</code>. This includes the usual suspects, such as completion status, suspend data, location, score.raw, score.max, score.min, and score.scaled. However, if the course has never been launched before, suspend_data, location, and the score elements will all be empty (null). If the LMS follows the SCORM spec, it will throw the &#8220;element not initialized&#8221; error.</p>
<p>In my earlier work on the template, I decided to prevent these &#8220;element not initialized&#8221; errors by adding some logic to the template, preventing suspend_data, location, and the score elements from being checked when the course status is ab-initio. This was achieved via a regular expression:</p>

<div class="wp_syntax"><table><tr><td class="code"><pre class="javascript" style="font-family:monospace;"><span style="color: #000066; font-weight: bold;">if</span><span style="color: #009900;">&#40;</span>entryStatus <span style="color: #339933;">===</span> <span style="color: #3366CC;">&quot;ab-initio&quot;</span> <span style="color: #339933;">&amp;&amp;</span> <span style="color: #009966; font-style: italic;">/location|suspend_data|score/g</span>.<span style="color: #660066;">test</span><span style="color: #009900;">&#40;</span>parameter<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
   <span style="color: #006600; font-style: italic;">//prevent action</span>
<span style="color: #009900;">&#125;</span></pre></td></tr></table></div>

<p>Unfortunately, I overlooked one important detail:  when the Captivate course loads, it queries the LMS to see which SCORM fields are supported.  This is done by requesting the &#8220;<code>._children</code>&#8221; CMI elements. For example, <code>cmi.score._children</code> will return the string &#8220;scaled,min,max,raw&#8221; indicating that <code>cmi.score.scaled</code>, <code>cmi.score.min</code>, <code>cmi.score.max</code>, and <code>cmi.score.raw</code> are supported by the LMS.</p>
<p>See any problems yet?</p>
<p>My regular expression was too broad, and prevented <code>cmi.score._children</code> from being queried, making Captivate believe that <code>cmi.score</code> was not supported. Since Captivate thought <code>cmi.score</code> was not supported, it did the right thing and stopped sending <code>cmi.score</code> data to the LMS.</p>
<p>The solution was to make the regular expression a bit more explicit:</p>

<div class="wp_syntax"><table><tr><td class="code"><pre class="javascript" style="font-family:monospace;"><span style="color: #000066; font-weight: bold;">if</span><span style="color: #009900;">&#40;</span>entryStatus <span style="color: #339933;">===</span> <span style="color: #3366CC;">&quot;ab-initio&quot;</span> <span style="color: #339933;">&amp;&amp;</span> <span style="color: #009966; font-style: italic;">/location|suspend_data|score\.(raw|min|max|scaled)/g</span>.<span style="color: #660066;">test</span><span style="color: #009900;">&#40;</span>parameter<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
   <span style="color: #006600; font-style: italic;">//prevent action</span>
<span style="color: #009900;">&#125;</span></pre></td></tr></table></div>

<p>Instead of blocking any GetValue calls requesting &#8220;score&#8221; data when the course is ab-initio, we now only block GetValue calls that request specific CMI elements: score.raw, score.min, score.max, and score.scaled. Problem solved.</p>
<p><a href="http://pipwerks.com/2012/03/28/important-adobe-captivate-scorm-template-update/">Important Adobe Captivate SCORM template update</a> is a post from: <a href="http://pipwerks.com">pipwerks.com</a>. Unless specified otherwise, all code is licensed under an <a rel="license" href="http://www.opensource.org/licenses/mit-license.php">MIT-style</a> license. All other content is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by-sa/3.0/us/">Creative Commons Attribution-Share Alike 3.0 United States License</a>.</p>
<div class='yarpp-related-rss'>
<p>Related posts:<ol>
<li><a href='http://pipwerks.com/2012/02/15/new-scorm-1-2-template-for-adobe-captivate/' rel='bookmark' title='New SCORM 1.2 Template for Adobe Captivate'>New SCORM 1.2 Template for Adobe Captivate</a></li>
<li><a href='http://pipwerks.com/2012/02/02/further-tweaks-to-the-adobe-captivate-scorm-publishing-template/' rel='bookmark' title='Further Tweaks to the Adobe Captivate SCORM Publishing Template'>Further Tweaks to the Adobe Captivate SCORM Publishing Template</a></li>
<li><a href='http://pipwerks.com/2012/01/25/cleaning-up-adobe-captivate%e2%80%99s-scorm-publishing-template-part-7-giving-the-revisions-a-home/' rel='bookmark' title='Cleaning up Adobe Captivate’s SCORM Publishing Template, Part 7: Giving the Revisions a Home'>Cleaning up Adobe Captivate’s SCORM Publishing Template, Part 7: Giving the Revisions a Home</a></li>
</ol></p>
</div>
<img src="http://feeds.feedburner.com/~r/pipwerks/~4/Yj6ehEhTJnA" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://pipwerks.com/2012/03/28/important-adobe-captivate-scorm-template-update/feed/</wfw:commentRss>
		<slash:comments>10</slash:comments>
		<feedburner:origLink>http://pipwerks.com/2012/03/28/important-adobe-captivate-scorm-template-update/</feedburner:origLink></item>
		<item>
		<title>Introducing SWFRightClick</title>
		<link>http://feedproxy.google.com/~r/pipwerks/~3/i0IWz91vUQ0/</link>
		<comments>http://pipwerks.com/2012/02/28/introducing-swfrightclick/#comments</comments>
		<pubDate>Wed, 29 Feb 2012 07:35:35 +0000</pubDate>
		<dc:creator>philip</dc:creator>
				<category><![CDATA[e-learning]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Adobe Captivate]]></category>
		<category><![CDATA[Adobe Captivate Hacks]]></category>
		<category><![CDATA[Adobe Flash]]></category>
		<category><![CDATA[JavaScript UI Goodies]]></category>

		<guid isPermaLink="false">http://pipwerks.com/?p=1745</guid>
		<description><![CDATA[Adobe Captivate currently ships with a 3rd-party JavaScript utility named RightClick.js, which enables the Captivate SWF to detect when a user right-clicks the SWF. While upgrading the Captivate publishing templates, I realized RightClick.js wasn&#8217;t built to work with SWFObject 2.x and suffered from a few shortcomings. I modified the Captivate template&#8217;s SWFObject code to get [...]<p><a href="http://pipwerks.com/2012/02/28/introducing-swfrightclick/">Introducing SWFRightClick</a> is a post from: <a href="http://pipwerks.com">pipwerks.com</a>. Unless specified otherwise, all code is licensed under an <a rel="license" href="http://www.opensource.org/licenses/mit-license.php">MIT-style</a> license. All other content is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by-sa/3.0/us/">Creative Commons Attribution-Share Alike 3.0 United States License</a>.</p>
]]></description>
				<content:encoded><![CDATA[<p>Adobe Captivate currently ships with a 3rd-party JavaScript utility named <a href="http://code.google.com/p/custom-context-menu/">RightClick.js</a>, which enables the Captivate SWF to detect when a user right-clicks the SWF. While <a href="http://pipwerks.com/2012/01/11/cleaning-up-adobe-captivates-scorm-publishing-template-part-1-introduction/">upgrading the Captivate publishing templates</a>, I realized RightClick.js wasn&#8217;t built to work with SWFObject 2.x and suffered from a few shortcomings.  I modified the Captivate template&#8217;s SWFObject code to get around the issue, but marked it down as something to revisit when I have the time.</p>
<p>Now, I&#8217;m happy to report I&#8217;ve created a replacement for the RightClick.js utility, creatively named <a href="https://github.com/pipwerks/swfrightclick">SWFRightClick</a>. It uses the same approach to handling right-clicks, but does it with a completely new codebase and a few extra goodies.  SWFRightClick is compatible with every edition of SWFObject, and is free to use (<a href="http://pipwerks.mit-license.org/">MIT license</a>).</p>
<p>Check it out on <a href="https://github.com/pipwerks/swfrightclick">GitHub</a>. I plan to fold it in to my Captivate publishing templates very soon.</p>
<p><a href="http://pipwerks.com/2012/02/28/introducing-swfrightclick/">Introducing SWFRightClick</a> is a post from: <a href="http://pipwerks.com">pipwerks.com</a>. Unless specified otherwise, all code is licensed under an <a rel="license" href="http://www.opensource.org/licenses/mit-license.php">MIT-style</a> license. All other content is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by-sa/3.0/us/">Creative Commons Attribution-Share Alike 3.0 United States License</a>.</p>
<div class='yarpp-related-rss'>
<p>Related posts:<ol>
<li><a href='http://pipwerks.com/2010/02/15/introducing-learnswfobject-com/' rel='bookmark' title='Introducing LearnSWFObject.com'>Introducing LearnSWFObject.com</a></li>
<li><a href='http://pipwerks.com/2009/06/07/introducing-the-captivatecontroller/' rel='bookmark' title='Introducing the CaptivateController'>Introducing the CaptivateController</a></li>
<li><a href='http://pipwerks.com/2008/10/14/introducing-the-pipwerks-captivate-controller-javascript-utility/' rel='bookmark' title='Introducing the pipwerks Captivate Controller JavaScript utility'>Introducing the pipwerks Captivate Controller JavaScript utility</a></li>
</ol></p>
</div>
<img src="http://feeds.feedburner.com/~r/pipwerks/~4/i0IWz91vUQ0" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://pipwerks.com/2012/02/28/introducing-swfrightclick/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://pipwerks.com/2012/02/28/introducing-swfrightclick/</feedburner:origLink></item>
	</channel>
</rss>
