<?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>Peak Systems, Boise</title>
	<atom:link href="http://boise.peaksystems.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://boise.peaksystems.com</link>
	<description>Boise's Full Service Web Design Firm</description>
	<lastBuildDate>Wed, 01 Sep 2010 16:40:11 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Coldfusion 8 CSV Parsing the Elegant Way</title>
		<link>http://boise.peaksystems.com/coldfusion-8-csv-parsing-the-elegant-way/</link>
		<comments>http://boise.peaksystems.com/coldfusion-8-csv-parsing-the-elegant-way/#comments</comments>
		<pubDate>Wed, 01 Sep 2010 16:36:14 +0000</pubDate>
		<dc:creator>TheHahn</dc:creator>
				<category><![CDATA[Boise Office]]></category>
		<category><![CDATA[CF8]]></category>
		<category><![CDATA[Cold Fusion 8]]></category>
		<category><![CDATA[Coldfusion]]></category>
		<category><![CDATA[CSV]]></category>
		<category><![CDATA[csv to array]]></category>
		<category><![CDATA[JAR]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[parse]]></category>

		<guid isPermaLink="false">http://boise.peaksystems.com/?p=67</guid>
		<description><![CDATA[Not a hard task, but I very much like doing things using the most efficient and straightforward means.
Get the jar from sourceforge, then add it to your favorite Coldfusion class path.

&#60;cfset oFile = CreateObject("java","java.io.FileReader") /&#62;
&#60;cfset oFile.init(ExpandPath("some.csv")) /&#62;
&#60;cfset oReader = CreateObject("java","au.com.bytecode.opencsv.CSVReader") /&#62;
&#60;cfset oReader.init(oFile,",") /&#62;
&#60;cfset arrCSV = oReader.readAll() /&#62;
&#60;cfdump var="#aData#" /&#62;
]]></description>
			<content:encoded><![CDATA[<p>Not a hard task, but I very much like doing things using the most efficient and straightforward means.</p>
<p>Get the jar from <a href="http://sourceforge.net/projects/opencsv/files/opencsv/2.2/opencsv-2.2-src-with-libs.tar.gz/download">sourceforge</a>, then add it to your favorite Coldfusion class path.</p>
<p><code><br />
&lt;cfset oFile = CreateObject("java","java.io.FileReader") /&gt;<br />
&lt;cfset oFile.init(ExpandPath("some.csv")) /&gt;</code></p>
<p><code>&lt;cfset oReader = CreateObject("java","au.com.bytecode.opencsv.CSVReader") /&gt;<br />
&lt;cfset oReader.init(oFile,",") /&gt;<br />
&lt;cfset arrCSV = oReader.readAll() /&gt;<br />
&lt;cfdump var="#aData#" /&gt;</code></p>
]]></content:encoded>
			<wfw:commentRss>http://boise.peaksystems.com/coldfusion-8-csv-parsing-the-elegant-way/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PeakSystems&#8217; iPhone and iPad App</title>
		<link>http://boise.peaksystems.com/dipticap/</link>
		<comments>http://boise.peaksystems.com/dipticap/#comments</comments>
		<pubDate>Thu, 24 Jun 2010 16:26:27 +0000</pubDate>
		<dc:creator>TheHahn</dc:creator>
				<category><![CDATA[Design Goodness]]></category>
		<category><![CDATA[Marketing Goodness]]></category>
		<category><![CDATA[Programming Goodness]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[app]]></category>
		<category><![CDATA[apple]]></category>
		<category><![CDATA[application]]></category>
		<category><![CDATA[boise]]></category>
		<category><![CDATA[diptic]]></category>
		<category><![CDATA[diptych]]></category>
		<category><![CDATA[facebook]]></category>
		<category><![CDATA[flickr pool]]></category>
		<category><![CDATA[iOS4]]></category>
		<category><![CDATA[ipad]]></category>
		<category><![CDATA[iphone]]></category>
		<category><![CDATA[mac]]></category>
		<category><![CDATA[mobile]]></category>
		<category><![CDATA[peaksystems]]></category>
		<category><![CDATA[photography]]></category>
		<category><![CDATA[triptych]]></category>
		<category><![CDATA[twitter]]></category>

		<guid isPermaLink="false">http://boise.peaksystems.com/?p=58</guid>
		<description><![CDATA[Our company has released its first app!
First, get the app on iTunes. Next, show off your new diptych creations in the Diptic App Flickr pool. If you&#8217;ve questions, stop at the app&#8217;s website for instructions and FAQ. Get your friends to join in the fun and become a fan of Diptic on Facebook; while you&#8217;re [...]]]></description>
			<content:encoded><![CDATA[<p>Our company has released its first app!</p>
<p>First, get the <a href="http://itunes.apple.com/us/app/diptic/id377989827?mt=8">app on iTunes</a>. Next, show off your new diptych creations in the <a href="http://www.flickr.com/groups/1445593@N21/">Diptic App Flickr pool</a>. If you&#8217;ve questions, stop at the <a href="http://dipticapp.com/">app&#8217;s website</a> for instructions and FAQ. Get your friends to join in the fun and become a <a href="http://www.facebook.com/pages/Diptic/126138580746365">fan of Diptic</a> on Facebook; while you&#8217;re at it you might as well become a <a href="http://www.facebook.com/pages/Seattle-WA/Peak-Systems/102165006268">fan of PeakSystems</a> as well. Finally, if you&#8217;ve feedback or just want to sing our praises, then <a href="http://twitter.com/dipticapp">find us on Twitter</a>.</p>
<p>YAY!</p>
]]></content:encoded>
			<wfw:commentRss>http://boise.peaksystems.com/dipticap/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Script Include Sans &#8220;HTTP&#8221;</title>
		<link>http://boise.peaksystems.com/script-include-sans-http/</link>
		<comments>http://boise.peaksystems.com/script-include-sans-http/#comments</comments>
		<pubDate>Tue, 20 Apr 2010 19:28:27 +0000</pubDate>
		<dc:creator>TheHahn</dc:creator>
				<category><![CDATA[Programming Goodness]]></category>
		<category><![CDATA[Tips]]></category>

		<guid isPermaLink="false">http://boise.peaksystems.com/?p=50</guid>
		<description><![CDATA[So according to the Facebook tracking guide the URL recommended for including the tracking script is: //ah8.facebook.com/js/conversions/tracking.js
This is potentially a very convenient way to include a script regardless of SSL (http vs https), which will cause an alert or warning on computers with common settings. Unfortunately, this method does not work in Chrome. IE6 and [...]]]></description>
			<content:encoded><![CDATA[<p>So according to the <a href="http://ads.ak.facebook.com/ads/FacebookAds/ConversionTrackingGuide.pdf">Facebook tracking guide</a> the URL recommended for including the tracking script is: //ah8.facebook.com/js/conversions/tracking.js</p>
<p>This is potentially a very convenient way to include a script regardless of SSL (http vs https), which will cause an alert or warning on computers with common settings. Unfortunately, this method does not work in Chrome. IE6 and FF3 will redirect to the appropriate full path with http(s). Chrome will assume the link is a relative local file, adding the prefix &#8220;file://&#8221;.</p>
<p>I assumed this was a typo, but the implementation guide is very deliberate in the &#8220;http&#8221; omission. I was surprised to find this works in some browsers and I wish it was a great revelation, however it is entirely impractical.</p>
]]></content:encoded>
			<wfw:commentRss>http://boise.peaksystems.com/script-include-sans-http/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Flash Prototypes</title>
		<link>http://boise.peaksystems.com/flash-prototypes/</link>
		<comments>http://boise.peaksystems.com/flash-prototypes/#comments</comments>
		<pubDate>Tue, 02 Mar 2010 20:02:48 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Boise Office]]></category>
		<category><![CDATA[Programming Goodness]]></category>

		<guid isPermaLink="false">http://boise.peaksystems.com/?p=45</guid>
		<description><![CDATA[Here&#8217;s two AS2 Flash prototypes that I use all the time. The search proto is probably from that genius sephiroth but I can&#8217;t remember since it&#8217;s been a while.  The shuffle prototype is from kingdavid.
Array Search Prototype

Array.prototype.search = function(needle, from, strict)
{
   if(from == undefined &#124;&#124; from &#62;= this.length) from = 0;
   [...]]]></description>
			<content:encoded><![CDATA[<p>Here&#8217;s two AS2 Flash prototypes that I use all the time. The search proto is probably from that genius <a href="http://www.sephiroth.it/proto_detail.php?id=62" target="_blank">sephiroth</a> but I can&#8217;t remember since it&#8217;s been a while.  The shuffle prototype is from <a href="http://www.sephiroth.it/proto_detail.php?id=98" target="_blank">kingdavid</a>.</p>
<p><strong>Array Search Prototype</strong></p>
<blockquote>
<pre>Array.prototype.search = function(needle, from, strict)
{
   if(from == undefined || from &gt;= this.length) from = 0;
   strict = strict == undefined ? false : strict;
   for(var a = from; a &lt; this.length; a++)
   {
      if(this[a] == needle)
      {
         if(strict)
         {
            if(this[a].__proto__ == needle.__proto__)
            {
               return a;
            }
         } else {
            return a;
         }
      }
   }
   return -1;
};</pre>
</blockquote>
<p><strong>Array Shuffle Prototype</strong></p>
<blockquote>
<pre>Array.prototype.shuffle = function() {</pre>
</blockquote>
<blockquote>
<pre>
<pre id="entry-code">   var myArray = new Array();
   for (i=0; i&lt;this.length; i++) {
      var control = true;
      while (control) {
         j = int(random(this.length));
         if (myArray[j] == undefined) {
            myArray[j] = this[i];
            control = false;
         }
      }
   }
   return myArray;
};</pre>
</pre>
</blockquote>
]]></content:encoded>
			<wfw:commentRss>http://boise.peaksystems.com/flash-prototypes/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>New Love for Inline Block</title>
		<link>http://boise.peaksystems.com/new-love-for-inline-block/</link>
		<comments>http://boise.peaksystems.com/new-love-for-inline-block/#comments</comments>
		<pubDate>Thu, 11 Feb 2010 00:15:39 +0000</pubDate>
		<dc:creator>TheHahn</dc:creator>
				<category><![CDATA[Programming Goodness]]></category>
		<category><![CDATA[cross browser]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[display inline]]></category>
		<category><![CDATA[display inline block]]></category>
		<category><![CDATA[expand]]></category>
		<category><![CDATA[fit to width]]></category>
		<category><![CDATA[menu]]></category>
		<category><![CDATA[text align justify]]></category>

		<guid isPermaLink="false">http://boise.peaksystems.com/?p=40</guid>
		<description><![CDATA[Inline-block is spectacular.
Check out this menu.

&#60;div&#62;
  &#60;p&#62;
    &#60;a&#62;Home&#60;/a&#62;
    &#60;a&#62;Products&#60;/a&#62;
    &#60;a&#62;Services&#60;/a&#62;
    &#60;a&#62;About Us&#60;/a&#62;
    &#60;a&#62;Contact Us&#60;/a&#62;
    &#60;span&#62;&#60;/span&#62;
  &#60;/p&#62;
&#60;/div&#62;

CSS:
p { width:776px; text-align:justify; }
p a { height:18px; padding:10px 20px; display:inline-block; }
p a span { display:inline-block; width:50%; }
Now I get [...]]]></description>
			<content:encoded><![CDATA[<p>Inline-block is spectacular.</p>
<p>Check out this menu.<br />
<code><br />
&lt;div&gt;<br />
  &lt;p&gt;<br />
    &lt;a&gt;Home&lt;/a&gt;<br />
    &lt;a&gt;Products&lt;/a&gt;<br />
    &lt;a&gt;Services&lt;/a&gt;<br />
    &lt;a&gt;About Us&lt;/a&gt;<br />
    &lt;a&gt;Contact Us&lt;/a&gt;<br />
    &lt;span&gt;&lt;/span&gt;<br />
  &lt;/p&gt;<br />
&lt;/div&gt;<br />
</code><br />
CSS:<br />
p { width:776px; text-align:justify; }</p>
<p>p a { height:18px; padding:10px 20px; display:inline-block; }</p>
<p>p a span { display:inline-block; width:50%; }</p>
<p>Now I get a menu that spans the container with automatic spacing. With justified text the last line is not stretched. To force the single line to expand I added an element that is well beyond enough width to force a carriage return. Note that inline block only works in IE if the element is inline by default. In FF 2.0 inline-block is not supported, but can be cheated like so:<br />
display: -moz-inline-block;<br />
display: inline-block;</p>
<p>So&#8230; good luck!</p>
]]></content:encoded>
			<wfw:commentRss>http://boise.peaksystems.com/new-love-for-inline-block/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Chroma Hash</title>
		<link>http://boise.peaksystems.com/chroma-hash/</link>
		<comments>http://boise.peaksystems.com/chroma-hash/#comments</comments>
		<pubDate>Fri, 04 Dec 2009 18:11:45 +0000</pubDate>
		<dc:creator>TheHahn</dc:creator>
				<category><![CDATA[Design Goodness]]></category>
		<category><![CDATA[Programming Goodness]]></category>
		<category><![CDATA[chroma]]></category>
		<category><![CDATA[client]]></category>
		<category><![CDATA[input]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[jquery]]></category>
		<category><![CDATA[js]]></category>
		<category><![CDATA[password]]></category>
		<category><![CDATA[pretty]]></category>

		<guid isPermaLink="false">http://boise.peaksystems.com/?p=37</guid>
		<description><![CDATA[I just want to post a message about how clever I find this password input. I can thank Reddit for originally bringing this to my attention. I hope to implement this on my next project. If you decide to do the same, please give some credit back to the source site.
Chroma Hash Demo
]]></description>
			<content:encoded><![CDATA[<p>I just want to post a message about how clever I find this password input. I can thank <a href="http://www.reddit.com">Reddit</a> for originally bringing this to my attention. I hope to implement this on my next project. If you decide to do the same, please give some credit back to the source site.</p>
<p><a href="http://foxxtrot.github.com/Chroma-Hash/">Chroma Hash Demo</a></p>
]]></content:encoded>
			<wfw:commentRss>http://boise.peaksystems.com/chroma-hash/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Credit Card Autocomplete</title>
		<link>http://boise.peaksystems.com/credit-card-autocomplete/</link>
		<comments>http://boise.peaksystems.com/credit-card-autocomplete/#comments</comments>
		<pubDate>Fri, 21 Aug 2009 20:27:09 +0000</pubDate>
		<dc:creator>TheHahn</dc:creator>
				<category><![CDATA[Programming Goodness]]></category>
		<category><![CDATA[Tips]]></category>
		<category><![CDATA[auto complete]]></category>
		<category><![CDATA[credit card]]></category>
		<category><![CDATA[form]]></category>
		<category><![CDATA[html]]></category>
		<category><![CDATA[input]]></category>
		<category><![CDATA[security]]></category>

		<guid isPermaLink="false">http://boise.peaksystems.com/?p=36</guid>
		<description><![CDATA[When working on a shared computer, there is a lot of risk involved with personal data. For example, buying something online with a credit card. Best practice is to clear all saved data from the computer as one logs off. However, I am not convinced a majority of users know / remember to do so. [...]]]></description>
			<content:encoded><![CDATA[<p>When working on a shared computer, there is a lot of risk involved with personal data. For example, buying something online with a credit card. Best practice is to clear all saved data from the computer as one logs off. However, I am not convinced a majority of users know / remember to do so. The first idea that comes to a developer&#8217;s mind is to leverage the &#8220;autocomplete&#8221; attribute of form fields. Unfortunately, this does nothing other than prevent the auto-complete from appearing, not the browser from storing data; I would consider the auto-complete attribute worse than not, as it provides a false sense of security. The solution I&#8217;m thinking of is a small hack.</p>
<p>Correct me if I am wrong [&#97;&#110;&#100;&#114;&#101;&#119;&#46;&#104;&#97;&#104;&#110;&#64;&#112;&#101;&#97;&#107;&#115;&#121;&#115;&#116;&#101;&#109;&#115;&#46;&#99;&#111;&#109;], but browsers do not store hidden form field data, only fields of input type &#8220;text&#8221;. My testing suggests that it does not.</p>
<p>So, the proposed hack is to create two forms. One form contains a dummy text field that will not be submit.</p>
<p><code>&lt;form&gt;&lt;input type="text" id="CCN_prop" /&gt;&lt;/form&gt;</code></p>
<p>The second form will be actually submit. It will contain a hidden input and a submit button. When the submit button is pressed, javascript will update the hidden field (CCN) with the value from the dummy field (CCN_prop).<br />
<code>&lt;form method="post" onsubmit="<br />
&nbsp;&nbsp;&nbsp;&nbsp;$('#CCN').val($('#CCN_prop').val());"&gt;<br />
&nbsp;&nbsp;&lt;input type=&quot;hidden&quot; name=&quot;CCN&quot; id=&quot;CCN&quot; /&gt;<br />
&nbsp;&nbsp;&lt;input type=&quot;submit&quot; /&gt;<br />
&lt;/form&gt;</code></p>
]]></content:encoded>
			<wfw:commentRss>http://boise.peaksystems.com/credit-card-autocomplete/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Horizontal Scroll</title>
		<link>http://boise.peaksystems.com/horizontal-scroll/</link>
		<comments>http://boise.peaksystems.com/horizontal-scroll/#comments</comments>
		<pubDate>Fri, 07 Aug 2009 19:43:46 +0000</pubDate>
		<dc:creator>TheHahn</dc:creator>
				<category><![CDATA[Design Goodness]]></category>
		<category><![CDATA[Programming Goodness]]></category>
		<category><![CDATA[Tips]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[horizontal scroll]]></category>
		<category><![CDATA[html]]></category>
		<category><![CDATA[inline]]></category>
		<category><![CDATA[photography]]></category>
		<category><![CDATA[photos]]></category>

		<guid isPermaLink="false">http://boise.peaksystems.com/?p=35</guid>
		<description><![CDATA[For some reason I haven&#8217;t seen many examples of a horizontal scrolling div. These are commonly used for image slideshows (we have a number of photography clients).
CSS:
div {
width:380px;
height:80px;
padding: 15px 0 30px 0;
overflow-x:auto;
white-space:nowrap;
}
By default, img tags are display:inline, so you need only something like this:
&#60;div&#62;
&#160;&#160;&#60;img /&#62;
&#160;&#160;&#60;img /&#62;
&#160;&#160;&#60;img /&#62;
&#60;/div&#62;
       
]]></description>
			<content:encoded><![CDATA[<p>For some reason I haven&#8217;t seen many examples of a horizontal scrolling div. These are commonly used for image slideshows (we have a number of photography clients).</p>
<p>CSS:<br />
div {<br />
width:380px;<br />
height:80px;<br />
padding: 15px 0 30px 0;<br />
overflow-x:auto;<br />
white-space:nowrap;<br />
}</p>
<p>By default, img tags are display:inline, so you need only something like this:<br />
&lt;div&gt;<br />
&nbsp;&nbsp;&lt;img /&gt;<br />
&nbsp;&nbsp;&lt;img /&gt;<br />
&nbsp;&nbsp;&lt;img /&gt;<br />
&lt;/div&gt;</p>
<div style="width:380px;height:80px;padding:14px 0 30px 0;display:block;overflow-x:auto;white-space:nowrap;border:rgb(8,67,145) solid 2px;"><a title="S7S_5580, by silent7seven" href="http://www.flickr.com/photos/silent7seven/2673286288/"><img src="http://farm4.static.flickr.com/3066/2673286288_669a927109_s.jpg" width="75" height="75" style="display:inline;"></a> <a title="Nwod Edispu Denrut Si Efil" href="http://www.flickr.com/photos/silent7seven/91724222/"><img src="http://farm1.static.flickr.com/28/91724222_ec9d5a754c_s.jpg" width="75" height="75" style="display:inline;"></a> <a title="S7S_5697, by silent7seven" href="http://www.flickr.com/photos/silent7seven/2673314214/"><img src="http://farm4.static.flickr.com/3123/2673314214_caa6301167_s.jpg" width="75" height="75" style="display:inline;"></a> <a title="Crowd of Tinmen, by silent7seven" href="http://www.flickr.com/photos/silent7seven/2547499758/"><img src="http://farm4.static.flickr.com/3080/2547499758_f5913a8d1a_s.jpg" width="75" height="75" style="display:inline;"></a> <a title="S7S_5814, by silent7seven" href="http://www.flickr.com/photos/silent7seven/2673333376/"><img src="http://farm4.static.flickr.com/3152/2673333376_bef72d5724_s.jpg" width="75" height="75" style="display:inline;"></a> <a title="Internet Death Sauce by silent7seven" href="http://www.flickr.com/photos/silent7seven/2678595537/"><img src="http://farm4.static.flickr.com/3092/2678595537_44f92b4cd6_s.jpg" width="75" height="75" style="display:inline;"></a> <a title="breezy, by silent7seven" href="http://www.flickr.com/photos/silent7seven/2718297869/"><img src="http://farm4.static.flickr.com/3192/2718297869_1c077efe9e_s.jpg" width="75" height="75" style="display:inline;"></a> <a title="kachow, by silent7seven" href="http://www.flickr.com/photos/silent7seven/3387856004/"><img src="http://farm4.static.flickr.com/3419/3387856004_729671a981_s.jpg" width="75" height="75" style="display:inline;"></a></div>
]]></content:encoded>
			<wfw:commentRss>http://boise.peaksystems.com/horizontal-scroll/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Dreamweaver code on black</title>
		<link>http://boise.peaksystems.com/dreamweaver-code-on-black/</link>
		<comments>http://boise.peaksystems.com/dreamweaver-code-on-black/#comments</comments>
		<pubDate>Wed, 24 Jun 2009 01:12:21 +0000</pubDate>
		<dc:creator>TheHahn</dc:creator>
				<category><![CDATA[Programming Goodness]]></category>
		<category><![CDATA[Tips]]></category>
		<category><![CDATA[code on black]]></category>
		<category><![CDATA[code view]]></category>
		<category><![CDATA[colors.xml]]></category>
		<category><![CDATA[dreamweaver]]></category>
		<category><![CDATA[DW]]></category>

		<guid isPermaLink="false">http://boise.peaksystems.com/?p=34</guid>
		<description><![CDATA[Your poor peepers. Too much white all day long. Not only should you do this, you should use Blackle instead of regular Google to save on energy (alternatively, you can use iGoogle and just pick a darker theme). I&#8217;ve gone through and replaced the backgrounds with black and white text with CCC. Some colors (009 [...]]]></description>
			<content:encoded><![CDATA[<p>Your poor peepers. Too much white all day long. Not only should you do this, you should use <a href="http://blackle.com/" onclick="window.open(this.href);return false;">Blackle</a> instead of regular Google to save on energy (alternatively, you can use iGoogle and just pick a darker theme). I&#8217;ve gone through and replaced the backgrounds with black and white text with CCC. Some colors (009 and 00F) have been slightly adjusted (039 and 03F) for better contrast. Other than those, the greens, reds, oranges, etc are the same. Make sure to enable &#8220;Highlight Invalid Code&#8221; or lines containing unclosed tags and the like will change to black text. <a href="http://peaksystems.info/boise/codecolor.gif" onclick="window.open(this.href);return false;">Screen cap</a></p>
<p>Backup &#8220;colors.xml&#8221; in the following folder.</p>
<p>Vista: C:\Users\&#60;username&#62;\AppData\Roaming\Adobe\Dreamweaver CS4\&#60;language&#62;\Configuration</p>
<p>Windows XP: C:\Documents and Settings\&#60;username&#62;\Application Data\Adobe\Dreamweaver CS4\&#60;language&#62;\Configuration</p>
<p>Mac OS X: Macintosh HD:&#60;username&#62;:Library:Application Support:Adobe:Dreamweaver CS4:&#60;language&#62;:Configuration</p>
<p>Then replace it with this: <a href="http://peaksystems.info/boise/colors.rar" onclick="window.open(this.href);return false;">colors.rar</a>. Should be ready to rock.</p>
<p>Oh, on a side note, the font <a href="http://www.ms-studio.com/FontSales/anonymous.html" onclick="window.open(this.href);return false;">Anonymous</a> is great for coding, very easy to read. I like it on the smallest font size setting.</p>
]]></content:encoded>
			<wfw:commentRss>http://boise.peaksystems.com/dreamweaver-code-on-black/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Coldfusion Regex Unicode Characters</title>
		<link>http://boise.peaksystems.com/coldfusion-regex-unicode-characters/</link>
		<comments>http://boise.peaksystems.com/coldfusion-regex-unicode-characters/#comments</comments>
		<pubDate>Sat, 13 Jun 2009 17:20:47 +0000</pubDate>
		<dc:creator>TheHahn</dc:creator>
				<category><![CDATA[Programming Goodness]]></category>
		<category><![CDATA[chr]]></category>
		<category><![CDATA[Coldfusion]]></category>
		<category><![CDATA[isvalid]]></category>
		<category><![CDATA[match]]></category>
		<category><![CDATA[pattern]]></category>
		<category><![CDATA[regex]]></category>
		<category><![CDATA[regular expression]]></category>
		<category><![CDATA[unicode]]></category>

		<guid isPermaLink="false">http://boise.peaksystems.com/?p=33</guid>
		<description><![CDATA[I was having a grand time writing some regex patterns in my Regular Expression Tester extension for FireFox. I needed to match some special characters because the site I was working on catered to international users. I would need to be able to validate strings containing acute, umlauts, etc. So, a pattern that I was [...]]]></description>
			<content:encoded><![CDATA[<p>I was having a grand time writing some regex patterns in my <a href="https://addons.mozilla.org/en-US/firefox/addon/2077" onclick="window.open(this.href);return false;">Regular Expression Tester</a> extension for FireFox. I needed to match some special characters because the site I was working on catered to international users. I would need to be able to validate strings containing acute, umlauts, etc. So, a pattern that I was happy with that would work in typical regex fashion:</p>
<p><code>[\u0021-\u007E<br />
 |\u00A1-\u00FF<br />
 |\u2013-\u2030<br />
 |\u20AC]<br />
</code><br />
This matches exclamation to tilde, inverted exclamation to lower &#8220;y&#8221; with umlauts, en dash to per thousand sign, and the euro symbol. I allowed a couple non-html 4/4.01 characters just to keep the pattern within reason. Now, I&#8217;m a CFer and the typical format of escaping &#8220;u&#8221; followed by the unicode hex does not work. What I was not sure of was whether or not I could create a range of characters with Coldfusion&#8217;s CHR() business. True enough. Check your local ascii table for more info on which specific characters you want to match. Here&#8217;s some code testing the method:<br />
<code><br />
&#60;cfoutput&#62;<br />
&#60;cfset pattern = &quot;[&#35;CHR(33)&#35;-&#35;CHR(126)&#35;<br />
|&#35;CHR(161)&#35;-&#35;CHR(255)&#35;<br />
|&#35;CHR(8211)&#35;-&#35;CHR(8240)&#35;<br />
|&#35;CHR(8364)&#35;]&quot; /&#62;</p>
<p>&#35;IsValid("regext","&#64;",pattern)&#35;<br />
&#35;IsValid("regext","&#209;",pattern)&#35;<br />
&#35;IsValid("regext","&#8364;",pattern)&#35;<br />
&#60;/cfoutput&#62;<br />
</code></p>
<p>yes yes yes</p>
<p>PS, sorry about how narrow the content section is; Some code won&#8217;t work because I added line breaks.</p>
]]></content:encoded>
			<wfw:commentRss>http://boise.peaksystems.com/coldfusion-regex-unicode-characters/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
