document.open();document.writeln('<div onmouseover="document.getElementById(\'snipt-6807\').style.display = \'block\'; return false;" onmouseout="document.getElementById(\'snipt-6807\').style.display = \'none\'; return false;" style="position: relative;">');document.writeln('<div class="highlight"><pre style="-moz-border-radius: 5px; border-radius: 5px; -webkit-border-radius: 5px; margin: 0; display: block; font: 11px Monaco, monospace !important; padding: 15px; background-color: #1C1C1C; overflow: auto; color: #D0D0D0;"><span style="color: #999999; font-style: italic">// Behavior Class for Awesome Passwords    </span>');document.writeln('<span style="color: #6ab825; font-weight: normal">var</span> <span style="color: #d0d0d0">AwesomePassword</span> <span style="color: #d0d0d0">=</span> <span style="color: #d0d0d0">Behavior.create({</span>');document.writeln('');document.writeln('        <span style="color: #d0d0d0">password_string</span> <span style="color: #d0d0d0">:</span> <span style="color: #6ab825; font-weight: normal">null</span><span style="color: #d0d0d0">,</span>');document.writeln('        <span style="color: #d0d0d0">password_field_id</span>  <span style="color: #d0d0d0">:</span> <span style="color: #6ab825; font-weight: normal">null</span><span style="color: #d0d0d0">,</span>');document.writeln('        <span style="color: #d0d0d0">password_length</span> <span style="color: #d0d0d0">:</span> <span style="color: #6ab825; font-weight: normal">null</span><span style="color: #d0d0d0">,</span>');document.writeln('');document.writeln('        <span style="color: #d0d0d0">initialize</span> <span style="color: #d0d0d0">:</span> <span style="color: #6ab825; font-weight: normal">function</span> <span style="color: #d0d0d0">(config)</span> <span style="color: #d0d0d0">{</span>');document.writeln('            <span style="color: #6ab825; font-weight: normal">this</span><span style="color: #d0d0d0">.password_string</span> <span style="color: #d0d0d0">=</span> <span style="color: #ed9d13">&quot;&quot;</span><span style="color: #d0d0d0">;</span>');document.writeln('            <span style="color: #6ab825; font-weight: normal">this</span><span style="color: #d0d0d0">.password_length</span> <span style="color: #d0d0d0">=</span> <span style="color: #3677a9">0</span><span style="color: #d0d0d0">;</span>');document.writeln('            <span style="color: #6ab825; font-weight: normal">this</span><span style="color: #d0d0d0">.password_field_id</span> <span style="color: #d0d0d0">=</span> <span style="color: #d0d0d0">config[</span><span style="color: #ed9d13">&#39;password_field_id&#39;</span><span style="color: #d0d0d0">];</span>');document.writeln('            <span style="color: #6ab825; font-weight: normal">this</span><span style="color: #d0d0d0">.password_field</span> <span style="color: #d0d0d0">=</span> <span style="color: #d0d0d0">$(</span><span style="color: #6ab825; font-weight: normal">this</span><span style="color: #d0d0d0">.password_field_id);</span>');document.writeln('            <span style="color: #6ab825; font-weight: normal">this</span><span style="color: #d0d0d0">.hidden_password_field</span> <span style="color: #d0d0d0">=</span> <span style="color: #d0d0d0">$(config[</span><span style="color: #ed9d13">&#39;hidden_password&#39;</span><span style="color: #d0d0d0">]);</span>');document.writeln('        <span style="color: #d0d0d0">},</span>');document.writeln('');document.writeln('        <span style="color: #d0d0d0">onblur</span> <span style="color: #d0d0d0">:</span> <span style="color: #6ab825; font-weight: normal">function</span><span style="color: #d0d0d0">(e)</span> <span style="color: #d0d0d0">{</span>');document.writeln('            <span style="color: #6ab825; font-weight: normal">this</span><span style="color: #d0d0d0">.password_string</span> <span style="color: #d0d0d0">=</span> <span style="color: #ed9d13">&quot;&quot;</span><span style="color: #d0d0d0">;</span>');document.writeln('            <span style="color: #6ab825; font-weight: normal">this</span><span style="color: #d0d0d0">.password_length</span> <span style="color: #d0d0d0">=</span> <span style="color: #ed9d13">&quot;&quot;</span><span style="color: #d0d0d0">;</span>');document.writeln('        <span style="color: #d0d0d0">},</span>');document.writeln('        ');document.writeln('        <span style="color: #d0d0d0">onkeyup</span> <span style="color: #d0d0d0">:</span> <span style="color: #6ab825; font-weight: normal">function</span><span style="color: #d0d0d0">(e)</span> <span style="color: #d0d0d0">{</span>');document.writeln('            <span style="color: #6ab825; font-weight: normal">if</span><span style="color: #d0d0d0">(e.which</span> <span style="color: #d0d0d0">==</span> <span style="color: #3677a9">8</span><span style="color: #d0d0d0">)</span> <span style="color: #d0d0d0">{</span>');document.writeln('                <span style="color: #6ab825; font-weight: normal">this</span><span style="color: #d0d0d0">.password_string</span> <span style="color: #d0d0d0">=</span> <span style="color: #6ab825; font-weight: normal">this</span><span style="color: #d0d0d0">.password_string.substr(</span><span style="color: #3677a9">0</span><span style="color: #d0d0d0">,</span><span style="color: #6ab825; font-weight: normal">this</span><span style="color: #d0d0d0">.password_field.value.length);</span>');document.writeln('            <span style="color: #d0d0d0">}</span>');document.writeln('        <span style="color: #d0d0d0">},</span>');document.writeln('');document.writeln('        <span style="color: #d0d0d0">onkeypress</span> <span style="color: #d0d0d0">:</span> <span style="color: #6ab825; font-weight: normal">function</span><span style="color: #d0d0d0">(e)</span> <span style="color: #d0d0d0">{</span>');document.writeln('            <span style="color: #6ab825; font-weight: normal">var</span> <span style="color: #d0d0d0">source</span> <span style="color: #d0d0d0">=</span> <span style="color: #d0d0d0">Event.element(e);</span>');document.writeln('            <span style="color: #6ab825; font-weight: normal">if</span> <span style="color: #d0d0d0">(</span> <span style="color: #d0d0d0">source.id</span> <span style="color: #d0d0d0">==</span> <span style="color: #6ab825; font-weight: normal">this</span><span style="color: #d0d0d0">.password_field_id)</span> <span style="color: #6ab825; font-weight: normal">this</span><span style="color: #d0d0d0">._awesomeify_password(source,e);</span>');document.writeln('        <span style="color: #d0d0d0">},</span>');document.writeln('        <span style="color: #d0d0d0">_awesomeify_password</span> <span style="color: #d0d0d0">:</span> <span style="color: #6ab825; font-weight: normal">function</span><span style="color: #d0d0d0">(source,e)</span> <span style="color: #d0d0d0">{</span>');document.writeln('            <span style="color: #999999; font-style: italic">// Mask Field With Bullets</span>');document.writeln('            <span style="color: #6ab825; font-weight: normal">var</span> <span style="color: #d0d0d0">bullet_string</span> <span style="color: #d0d0d0">=</span> <span style="color: #ed9d13">&quot;&quot;</span><span style="color: #d0d0d0">;</span>');document.writeln('            ');document.writeln('            <span style="color: #999999; font-style: italic">// Loop through and add bullets</span>');document.writeln('            <span style="color: #6ab825; font-weight: normal">for</span><span style="color: #d0d0d0">(</span> <span style="color: #d0d0d0">i</span> <span style="color: #d0d0d0">=</span> <span style="color: #3677a9">0</span><span style="color: #d0d0d0">;</span> <span style="color: #d0d0d0">i</span> <span style="color: #d0d0d0">&lt;</span> <span style="color: #6ab825; font-weight: normal">this</span><span style="color: #d0d0d0">.password_field.value.length;</span> <span style="color: #d0d0d0">i++</span> <span style="color: #d0d0d0">)</span> <span style="color: #d0d0d0">{</span>');document.writeln('                <span style="color: #d0d0d0">bullet_string</span> <span style="color: #d0d0d0">+=</span> <span style="color: #24909d">String</span><span style="color: #d0d0d0">.fromCharCode(</span><span style="color: #3677a9">8226</span><span style="color: #d0d0d0">);</span>    ');document.writeln('            <span style="color: #d0d0d0">}</span>');document.writeln('            ');document.writeln('            <span style="color: #999999; font-style: italic">// Fill bullets</span>');document.writeln('            <span style="color: #6ab825; font-weight: normal">this</span><span style="color: #d0d0d0">.password_field.value</span> <span style="color: #d0d0d0">=</span> <span style="color: #d0d0d0">bullet_string;</span>');document.writeln('');document.writeln('            <span style="color: #999999; font-style: italic">// If valid Password Character Update Password String</span>');document.writeln('            <span style="color: #6ab825; font-weight: normal">if</span><span style="color: #d0d0d0">(</span> <span style="color: #24909d">String</span><span style="color: #d0d0d0">.fromCharCode(e.which).match(</span><span style="color: #ed9d13">/[a-zA-Z0-9!-)]/</span><span style="color: #d0d0d0">)</span> <span style="color: #d0d0d0">&amp;&amp;</span> <span style="color: #24909d">String</span><span style="color: #d0d0d0">.fromCharCode(e.which).match(</span><span style="color: #ed9d13">/[a-zA-Z0-9!-)]/</span><span style="color: #d0d0d0">).first</span> <span style="color: #d0d0d0">)</span> <span style="color: #d0d0d0">{</span>');document.writeln('                <span style="color: #6ab825; font-weight: normal">this</span><span style="color: #d0d0d0">.password_string</span> <span style="color: #d0d0d0">+=</span> <span style="color: #24909d">String</span><span style="color: #d0d0d0">.fromCharCode(e.which);</span>');document.writeln('                ');document.writeln('                <span style="color: #6ab825; font-weight: normal">var</span> <span style="color: #d0d0d0">password_field</span> <span style="color: #d0d0d0">=</span> <span style="color: #6ab825; font-weight: normal">this</span><span style="color: #d0d0d0">.password_field;</span>');document.writeln('                <span style="color: #999999; font-style: italic">// Wait for user to stop typeing</span>');document.writeln('                <span style="color: #d0d0d0">setTimeout(</span><span style="color: #6ab825; font-weight: normal">function</span><span style="color: #d0d0d0">()</span> <span style="color: #d0d0d0">{</span>');document.writeln('                    <span style="color: #d0d0d0">setTimeout(</span><span style="color: #6ab825; font-weight: normal">function</span><span style="color: #d0d0d0">()</span> <span style="color: #d0d0d0">{</span>');document.writeln('                        <span style="color: #d0d0d0">password_field.value</span> <span style="color: #d0d0d0">=</span> <span style="color: #d0d0d0">password_field.value.replace(</span><span style="color: #ed9d13">/.$/</span><span style="color: #d0d0d0">,</span><span style="color: #24909d">String</span><span style="color: #d0d0d0">.fromCharCode(</span><span style="color: #3677a9">8226</span><span style="color: #d0d0d0">));</span> ');document.writeln('                    <span style="color: #d0d0d0">},</span> <span style="color: #3677a9">500</span><span style="color: #d0d0d0">);</span>        ');document.writeln('                <span style="color: #d0d0d0">},</span><span style="color: #3677a9">1000</span><span style="color: #d0d0d0">);</span>');document.writeln('            <span style="color: #d0d0d0">}</span>');document.writeln('        <span style="color: #d0d0d0">},</span>');document.writeln('        <span style="color: #d0d0d0">onsubmit</span> <span style="color: #d0d0d0">:</span> <span style="color: #6ab825; font-weight: normal">function</span><span style="color: #d0d0d0">(e)</span> <span style="color: #d0d0d0">{</span>');document.writeln('            <span style="color: #6ab825; font-weight: normal">this</span><span style="color: #d0d0d0">.hidden_password_field.value</span> <span style="color: #d0d0d0">=</span> <span style="color: #6ab825; font-weight: normal">this</span><span style="color: #d0d0d0">.password_string;</span>');document.writeln('            <span style="color: #6ab825; font-weight: normal">return</span> <span style="color: #6ab825; font-weight: normal">true</span><span style="color: #d0d0d0">;</span>');document.writeln('        <span style="color: #d0d0d0">}</span>');document.writeln('    <span style="color: #d0d0d0">});</span>');document.writeln('</pre></div>');document.writeln('');document.writeln('<div style="background-color: #111; color: #D0D0D0; float: right; padding: 5px 10px; -moz-border-radius-topleft: 5px; -webkit-border-top-left-radius: 5px; border-top-left-radius: 5px; -moz-border-radius-bottomright: 5px; -webkit-border-bottom-right-radius: 5px; border-bottom-right-radius: 5px; font: 11px Arial,Sans-Serif; display: none; position: absolute; bottom: 0; right: 0;" id="snipt-6807">code hosted by <a href="http://snipt.net/zurbinc/iphone-password-behavior" style="color: #0084FF; text-decoration: none;">snipt.net</a></div>');document.writeln('</div>');document.close();