<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet href="http://feeds.feedburner.com/~d/styles/rss2full.xsl" type="text/xsl" media="screen"?><?xml-stylesheet href="http://feeds.feedburner.com/~d/styles/itemcontent.css" type="text/css" media="screen"?><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:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>Savvy.UI</title>
	
	<link>http://savvyui.com</link>
	<description>JavaScript Library for the Mass</description>
	<pubDate>Fri, 27 Jun 2008 03:45:16 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.6</generator>
	<language>en</language>
			<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" href="http://feeds.feedburner.com/savvyui" type="application/rss+xml" /><feedburner:emailServiceId>1514002</feedburner:emailServiceId><feedburner:feedburnerHostname>http://www.feedburner.com</feedburner:feedburnerHostname><feedburner:feedFlare href="http://add.my.yahoo.com/rss?url=http%3A%2F%2Ffeeds.feedburner.com%2Fsavvyui" src="http://us.i1.yimg.com/us.yimg.com/i/us/my/addtomyyahoo4.gif">Subscribe with My Yahoo!</feedburner:feedFlare><feedburner:feedFlare href="http://www.newsgator.com/ngs/subscriber/subext.aspx?url=http%3A%2F%2Ffeeds.feedburner.com%2Fsavvyui" src="http://www.newsgator.com/images/ngsub1.gif">Subscribe with NewsGator</feedburner:feedFlare><feedburner:feedFlare href="http://feeds.my.aol.com/add.jsp?url=http%3A%2F%2Ffeeds.feedburner.com%2Fsavvyui" src="http://o.aolcdn.com/favorites.my.aol.com/webmaster/ffclient/webroot/locale/en-US/images/myAOLButtonSmall.gif">Subscribe with My AOL</feedburner:feedFlare><feedburner:feedFlare href="http://www.bloglines.com/sub/http://feeds.feedburner.com/savvyui" src="http://www.bloglines.com/images/sub_modern11.gif">Subscribe with Bloglines</feedburner:feedFlare><feedburner:feedFlare href="http://www.netvibes.com/subscribe.php?url=http%3A%2F%2Ffeeds.feedburner.com%2Fsavvyui" src="http://www.netvibes.com/img/add2netvibes.gif">Subscribe with Netvibes</feedburner:feedFlare><feedburner:feedFlare href="http://fusion.google.com/add?feedurl=http%3A%2F%2Ffeeds.feedburner.com%2Fsavvyui" src="http://buttons.googlesyndication.com/fusion/add.gif">Subscribe with Google</feedburner:feedFlare><feedburner:feedFlare href="http://www.pageflakes.com/subscribe.aspx?url=http%3A%2F%2Ffeeds.feedburner.com%2Fsavvyui" src="http://www.pageflakes.com/ImageFile.ashx?instanceId=Static_4&amp;fileName=ATP_blu_91x17.gif">Subscribe with Pageflakes</feedburner:feedFlare><item>
		<title>Savvy.UI version 0.1.2-ab1 Released</title>
		<link>http://feeds.feedburner.com/~r/savvyui/~3/316093269/</link>
		<comments>http://savvyui.com/blog/savvyui-version-012-ab1-released/#comments</comments>
		<pubDate>Fri, 20 Jun 2008 09:51:51 +0000</pubDate>
		<dc:creator>zaki</dc:creator>
		
		<category><![CDATA[Changelog]]></category>

		<category><![CDATA[News]]></category>

		<category><![CDATA[Release]]></category>

		<guid isPermaLink="false">http://savvyui.com/?p=49</guid>
		<description><![CDATA[After quite a long break from development, we present you a new release of Savvy.UI JavaScript Library build 0.1.2-ab1 with bundle of new feature and improvement from the previous.
What’s New in Base
DOM Manipulation
We also extend the feature of SUI.DOM namespace by adding DOM navigation and detection, range of newly available function includes:

SUI.DOM.next
SUI.DOM.prev
SUI.DOM.first
SUI.DOM.last
SUI.DOM.parent
SUI.DOM.isElement
SUI.DOM.isFirst
SUI.DOM.isLast
SUI.DOM.isOnlyChild
SUI.DOM.isParentOf

Dual Browser Detection
In reality, [...]]]></description>
			<content:encoded><![CDATA[<p>After quite a long break from development, we present you a new release of Savvy.UI JavaScript Library build 0.1.2-ab1 with bundle of new feature and improvement from the previous.</p>
<h3>What’s New in Base</h3>
<h4>DOM Manipulation</h4>
<p>We also extend the feature of SUI.DOM namespace by adding DOM navigation and detection, range of newly available function includes:</p>
<ul class="lists">
<li><code>SUI.DOM.next</code></li>
<li><code>SUI.DOM.prev</code></li>
<li><code>SUI.DOM.first</code></li>
<li><code>SUI.DOM.last</code></li>
<li><code>SUI.DOM.parent</code></li>
<li><code>SUI.DOM.isElement</code></li>
<li><code>SUI.DOM.isFirst</code></li>
<li><code>SUI.DOM.isLast</code></li>
<li><code>SUI.DOM.isOnlyChild</code></li>
<li><code>SUI.DOM.isParentOf</code></li>
</ul>
<h4>Dual Browser Detection</h4>
<p>In reality, there no absolute method to detect browser either it be detection using available Object/Function or using the UserAgent string. Previously Savvy.UI introduce <code>SUI.fn.behaviour</code> object to collect the browser information based on registered Object but we all know anyone can register dummy Object to as global variable and this will make the reporting faulty. So, as alternative we also include <code>SUI.fn.browser</code> which detect browser using UserAgent string (this might also be faulty if the user modify the browser UserAgent).</p>

<div class="wp_syntax"><div class="code"><pre class="javascript"><span style="color: #fff;">alert</span><span style="color: #00CC00;">&#40;</span>SUI.<span style="color: #FFF799;">fn</span>.<span style="color: #FFF799;">browser</span>.<span style="color: #FFF799;">ua</span><span style="color: #00CC00;">&#41;</span>; <span style="color: #444; font-style: italic;">// return UserAgent string</span></pre></div></div>

<p><strong>Note:</strong> this function is now in testing and we will enhanced it will more option in next release.</p>
<h4>Better typeOf</h4>
<p>Did you know that typeof array is consider an Object? how to difference nodeList and Array? We answer all this question via <code>SUI.fn.typeOf</code>:</p>
<table class="perf" style="width:99%">
<thead>
<tr>
<th>Value</th>
<th>typeof</th>
<th>constructor</th>
<th>SUI.fn.typeOf</th>
</tr>
</thead>
<tbody>
<tr>
<td><strong>&#8220;Hello World&#8221;</strong></td>
<td class="good">string</td>
<td class="good">String</td>
<td class="good">string</td>
</tr>
<tr>
<td><strong>["Hello", "World"]</strong></td>
<td class="bad invalid">Object</td>
<td class="good">Array</td>
<td class="good">array</td>
</tr>
<tr>
<td><strong>{h:&#8221;Hello World&#8221;}</strong></td>
<td class="good">object</td>
<td class="good">Object</td>
<td class="good">object</td>
</tr>
<tr>
<td><strong>5</strong></td>
<td class="good">number</td>
<td class="good">Number</td>
<td class="good">number</td>
</tr>
<tr>
<td><strong>true</strong></td>
<td class="good">boolean</td>
<td class="good">Boolean</td>
<td class="good">boolean</td>
</tr>
<tr>
<td><strong>document.getElementsByTagName(&#8221;div&#8221;)</strong></td>
<td class="bad invalid">Object</td>
<td class="bad invalid">Object</td>
<td class="good">HTMLelement</td>
</tr>
<tr>
<td><strong>document.getElementById(&#8221;#helloworld&#8221;)</strong></td>
<td class="bad invalid">Object</td>
<td class="bad invalid">Object</td>
<td class="good">HTMLelement</td>
</tr>
</tbody>
</table>
<h4>Better Querying Engine</h4>
<p>In order to prove user better option, we also improve our <code>SUI.Query</code> namespace. Previously we only provide two function under <code>SUI.Query</code> including:</p>
<ul class="lists">
<li><code>SUI.Query.is</code></li>
<li><code>SUI.Query.selector</code></li>
</ul>
<p>We modularize <code>SUI.Query.selector</code> to:</p>
<ul class="lists">
<li><code>SUI.Query.hasClass</code></li>
<li><code>SUI.Query.hasAttr</code></li>
<li><code>SUI.Query.id</code></li>
<li><code>SUI.Query.tags</code></li>
<li><code>SUI.Query.tagParentOf</code></li>
<li><code>SUI.Query.tagChildOf</code></li>
<li><code>SUI.Query.tagNextOf</code></li>
<li><code>SUI.Query.tagSiblingOf</code></li>
</ul>
<p>as well as introducing <code>SUI.Query.create</code>.</p>
<h4>Namespace</h4>
<p>Savvy.UI has been always going into a mixture of solid JavaScript namespace and selector querying engine library which means there a lot of namespace inside <code>SUI</code> such as <code>SUI.DOM</code>, <code>SUI.CSS</code>, <code>SUI.Util</code> and etc. <code>SUI.ns</code> Object now available to help logs and check available of any namespace inside Savvy.UI.</p>
<p>Checking Namespace Availability:</p>

<div class="wp_syntax"><div class="code"><pre class="javascript">SUI.<span style="color: #FFF799;">ns</span>.<span style="color: #FFF799;">require</span><span style="color: #00CC00;">&#40;</span><span style="color: #ff1111;">&quot;SUI.CSS&quot;</span><span style="color: #00CC00;">&#41;</span>;</pre></div></div>

<h4>Retrieving Running Version</h4>
<p>Getting the running version of Savvy.UI is never been easier, <code>SUI.toString()</code> function eliminate that hassle.</p>

<div class="wp_syntax"><div class="code"><pre class="javascript"><span style="color: #fff;">alert</span><span style="color: #00CC00;">&#40;</span>SUI.<span style="color: #FFF799;">toString</span><span style="color: #00CC00;">&#40;</span><span style="color: #00CC00;">&#41;</span><span style="color: #00CC00;">&#41;</span>; <span style="color: #444; font-style: italic;">// will return Savvy.UI version 0.1.2 alpha</span></pre></div></div>

<h3>What&#8217;s New in Extension</h3>
<h4>Ajax</h4>
<p>We include mutliple new feature for SUI.Ajax mainly timeout feature, caching, parameter as object, better header status detection and object removal once the request has been successly process.</p>
<h5>Caching</h5>
<p>By default we will cache all the XHR request unless you add <code>cache: false</code> inside the JSON parameter.</p>

<div class="wp_syntax"><div class="code"><pre class="javascript"><span style="color: #00cc00; font-weight: bold;">new</span> SUI.<span style="color: #FFF799;">Ajax</span><span style="color: #00CC00;">&#40;</span><span style="color: #00CC00;">&#123;</span>
    uri: <span style="color: #ff1111;">&quot;http://savvyui.com/ajax.php&quot;</span>,
    cache: <span style="color: #00cc00; font-weight: bold;">false</span>
<span style="color: #00CC00;">&#125;</span><span style="color: #00CC00;">&#41;</span>;</pre></div></div>

<h5>Timeout</h5>
<p>Enable timeout to safely close XHR object.</p>

<div class="wp_syntax"><div class="code"><pre class="javascript"><span style="color: #00cc00; font-weight: bold;">new</span> SUI.<span style="color: #FFF799;">Ajax</span><span style="color: #00CC00;">&#40;</span><span style="color: #00CC00;">&#123;</span>
    uri: <span style="color: #ff1111;">&quot;http://savvyui.com/ajax.php&quot;</span>,
    timeout: <span style="color: #febfbf;">1000</span>
<span style="color: #00CC00;">&#125;</span><span style="color: #00CC00;">&#41;</span>;</pre></div></div>

<h5>Object as Parameter</h5>
<p>You can also parse Object as parameter as an alternative to querystring.</p>

<div class="wp_syntax"><div class="code"><pre class="javascript"><span style="color: #00cc00; font-weight: bold;">new</span> SUI.<span style="color: #FFF799;">Ajax</span><span style="color: #00CC00;">&#40;</span><span style="color: #00CC00;">&#123;</span>
    uri: <span style="color: #ff1111;">&quot;http://savvyui.com/ajax.php&quot;</span>,
    data: <span style="color: #00CC00;">&#123;</span> <span style="color: #fff;">name</span>: <span style="color: #ff1111;">&quot;zaki&quot;</span>, email: <span style="color: #ff1111;">&quot;crynobone@gmail.com&quot;</span> <span style="color: #00CC00;">&#125;</span> 
<span style="color: #00CC00;">&#125;</span><span style="color: #00CC00;">&#41;</span>;</pre></div></div>

<p><strong>Note:</strong> we will try to cover this in depth in future entry.</p>
<h4>Form</h4>
<p>We also introduce two main feature in <code>SUI.Form</code> or <code>SUI.Ext.Form</code> which is; Live Validation engine and Custom field checking.</p>
<h5>Using Live Validation</h5>

<div class="wp_syntax"><div class="code"><pre class="javascript"><span style="color: #00cc00; font-weight: bold;">var</span> obj = SUI.<span style="color: #FFF799;">Query</span>.<span style="color: #FFF799;">id</span><span style="color: #00CC00;">&#40;</span><span style="color: #ff1111;">&quot;form-adduser&quot;</span><span style="color: #00CC00;">&#41;</span>;
<span style="color: #00cc00; font-weight: bold;">var</span> form = <span style="color: #00cc00; font-weight: bold;">new</span> SUI.<span style="color: #FFF799;">Ext</span>.<span style="color: #FFF799;">Form</span><span style="color: #00CC00;">&#40;</span><span style="color: #00CC00;">&#41;</span>;
form.<span style="color: #FFF799;">LiveValidate</span><span style="color: #00CC00;">&#40;</span>obj<span style="color: #00CC00;">&#41;</span>;</pre></div></div>

<h5>Using Custom Field Checking</h5>
<p>Let say you have a input</p>

<div class="wp_syntax"><div class="code"><pre>Type either check/radio &lt;input type=&quot;text&quot; id=&quot;hello-world&quot; name=&quot;hello&quot; /&gt;</pre></div></div>

<p>You can either use Regular Expression checking</p>

<div class="wp_syntax"><div class="code"><pre class="javascript"><span style="color: #00cc00; font-weight: bold;">var</span> custom = <span style="color: #00CC00;">&#123;</span>
    <span style="color: #ff1111;">&quot;hello-world&quot;</span>: <span style="color: #00CC00;">&#123;</span>
        err: <span style="color: #ff1111;">&quot;Please write check/radio&quot;</span>,
        test: <span style="color: #00cc00; font-weight: bold;">new</span> RegExp<span style="color: #00CC00;">&#40;</span><span style="color: #009900;">/^<span style="color: #00CC00;">&#40;</span>check|radio<span style="color: #00CC00;">&#41;</span>$/</span><span style="color: #00CC00;">&#41;</span>
    <span style="color: #00CC00;">&#125;</span>
<span style="color: #00CC00;">&#125;</span>;
<span style="color: #00cc00; font-weight: bold;">var</span> obj = SUI.<span style="color: #FFF799;">Query</span>.<span style="color: #FFF799;">id</span><span style="color: #00CC00;">&#40;</span><span style="color: #ff1111;">&quot;form-adduser&quot;</span><span style="color: #00CC00;">&#41;</span>;
<span style="color: #00cc00; font-weight: bold;">var</span> form = <span style="color: #00cc00; font-weight: bold;">new</span> SUI.<span style="color: #FFF799;">Ext</span>.<span style="color: #FFF799;">Form</span><span style="color: #00CC00;">&#40;</span><span style="color: #00CC00;">&#41;</span>;
form.<span style="color: #FFF799;">LiveValidate</span><span style="color: #00CC00;">&#40;</span>obj, custom<span style="color: #00CC00;">&#41;</span>;</pre></div></div>

<p>or using callback function</p>

<div class="wp_syntax"><div class="code"><pre class="javascript"><span style="color: #00cc00; font-weight: bold;">var</span> custom = <span style="color: #00CC00;">&#123;</span>
    <span style="color: #ff1111;">&quot;hello-world&quot;</span>: <span style="color: #00CC00;">&#123;</span>
        err: <span style="color: #ff1111;">&quot;Please write check/radio&quot;</span>,
        callback: <span style="color: #00cc00; font-weight: bold;">function</span><span style="color: #00CC00;">&#40;</span>value<span style="color: #00CC00;">&#41;</span> <span style="color: #00CC00;">&#123;</span>
        	<span style="color: #ff5656; font-weight: bold;">return</span> value.<span style="color: #FFF799;">match</span><span style="color: #00CC00;">&#40;</span><span style="color: #009900;">/^<span style="color: #00CC00;">&#40;</span>check|radio<span style="color: #00CC00;">&#41;</span>$/</span><span style="color: #00CC00;">&#41;</span>;
        <span style="color: #00CC00;">&#125;</span>
    <span style="color: #00CC00;">&#125;</span>
<span style="color: #00CC00;">&#125;</span>;
<span style="color: #00cc00; font-weight: bold;">var</span> obj = SUI.<span style="color: #FFF799;">Query</span>.<span style="color: #FFF799;">id</span><span style="color: #00CC00;">&#40;</span><span style="color: #ff1111;">&quot;form-adduser&quot;</span><span style="color: #00CC00;">&#41;</span>;
<span style="color: #00cc00; font-weight: bold;">var</span> form = <span style="color: #00cc00; font-weight: bold;">new</span> SUI.<span style="color: #FFF799;">Ext</span>.<span style="color: #FFF799;">Form</span><span style="color: #00CC00;">&#40;</span><span style="color: #00CC00;">&#41;</span>;
form.<span style="color: #FFF799;">LiveValidate</span><span style="color: #00CC00;">&#40;</span>obj, custom<span style="color: #00CC00;">&#41;</span>;</pre></div></div>

<p><strong>Note:</strong> we will try to cover this in depth in future entry.</p>
<h4>Object Oriented in Savvy.UI</h4>
<p>As introduce in previous <a href="http://savvyui.com/blog/suijsclass-preview/">SUI.JsClass Preview</a> entry, we are please with the capability of the <code>SUI.JsClass</code> or <code>SUI.Ext.JsClass</code>. Take a look at the entry to learn how to utilize this function.</p>
<h4>Cookie</h4>
<p><code>SUI.Cookie</code> or <code>SUI.Ext.Cookie</code> is very much in testing but we still include it in the current release to enable us and user to take advantage of browser cookie using Savvy.UI. </p>
<h3>What&#8217;s New in Utility</h3>
<h4>In-page Navigation</h4>
<p>This is our first test implementing <code>SUI.JsClass</code> for application, checkout <a href="http://crynobone.com/in-page-active-hyperlink-using-savvyui/">In-page Active Hyperlink using Savvy.UI</a> to get the detail on this approach.</p>
<h3>Download Savvy.UI</h3>
<p>Download Savvy.UI version 0.1.2-ab1 and follow these instructions:</p>
<ul class="lists">
<li><a href="http://savvyui.com/downloads/16" title="Version 0.1.2 Alpha 1 downloaded 342 times" >Savvy.UI Version 0.1.2 Alpha 1 (342)</a></li>
<li><a href="http://savvyui.com/downloads/17" title="Version 0.1.2 Alpha 1 Packed downloaded 318 times" >Savvy.UI Version 0.1.2 Alpha 1 Packed (318)</a></li>
<li><a href="http://savvyui.com/downloads/18" title="Version 0.1.2 Alpha 1 Combined downloaded 306 times" >Savvy.UI Version 0.1.2 Alpha 1 Combined (306)</a></li>
</ul>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~f/savvyui?a=hEPn9I"><img src="http://feeds.feedburner.com/~f/savvyui?i=hEPn9I" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/savvyui?a=KlREfi"><img src="http://feeds.feedburner.com/~f/savvyui?i=KlREfi" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/savvyui?a=OXQUVi"><img src="http://feeds.feedburner.com/~f/savvyui?i=OXQUVi" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/savvyui?a=J6jIii"><img src="http://feeds.feedburner.com/~f/savvyui?i=J6jIii" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/savvyui?a=fLoIrI"><img src="http://feeds.feedburner.com/~f/savvyui?i=fLoIrI" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/savvyui?a=m80Tqi"><img src="http://feeds.feedburner.com/~f/savvyui?i=m80Tqi" border="0"></img></a>
</div>]]></content:encoded>
			<wfw:commentRss>http://savvyui.com/blog/savvyui-version-012-ab1-released/feed/</wfw:commentRss>
		<feedburner:origLink>http://savvyui.com/blog/savvyui-version-012-ab1-released/</feedburner:origLink></item>
		<item>
		<title>SUI.JsClass Preview</title>
		<link>http://feeds.feedburner.com/~r/savvyui/~3/291458140/</link>
		<comments>http://savvyui.com/blog/suijsclass-preview/#comments</comments>
		<pubDate>Fri, 16 May 2008 06:58:07 +0000</pubDate>
		<dc:creator>zaki</dc:creator>
		
		<category><![CDATA[Development]]></category>

		<category><![CDATA[News]]></category>

		<guid isPermaLink="false">http://savvyui.com/?p=48</guid>
		<description><![CDATA[We would like to preview yet another new Extension for Savvy.UI which is SUI.Ext.JsClass or SUI.JsClass which allow you create Simple Class and Inheritance using JavaScript in more similar to how it&#8217;s done in PHP but with the limitation of JavaScript writing structure.
Some available features or limitation of this implementation:

All methods and properties for the [...]]]></description>
			<content:encoded><![CDATA[<p>We would like to preview yet another new Extension for Savvy.UI which is <code>SUI.Ext.JsClass</code> or <code>SUI.JsClass</code> which allow you create Simple Class and Inheritance using JavaScript in more similar to how it&#8217;s done in PHP but with the limitation of JavaScript writing structure.</p>
<p>Some available features or limitation of this implementation:</p>
<ul class="lists">
<li>All methods and properties for the Class Object are <strong>ONLY public</strong></li>
<li>Inheritance is available but using <strong>ONLY extends</strong></li>
<li>In case of extends being used and both Object have <code>__construct</code> function, only the child Class <code>__construct</code> will be called.</li>
<li><code>__destruct</code> function is available and successfully delete all method and properties of the Object but doesn&#8217;t delete <code>this.prototype</code> methods</li>
</ul>
<p><span id="more-48"></span></p>
<h3>Let See an Example</h3>

<div class="wp_syntax"><div class="code"><pre class="javascript"><span style="color: #444; font-style: italic;">// Declare Class Person</span>
<span style="color: #00cc00; font-weight: bold;">var</span> Person = SUI.<span style="color: #FFF799;">JsClass</span>.<span style="color: #FFF799;">create</span><span style="color: #00CC00;">&#40;</span><span style="color: #00CC00;">&#123;</span>
	<span style="color: #444; font-style: italic;">// public property name</span>
	<span style="color: #fff;">name</span>: <span style="color: #ff1111;">&quot;zaki&quot;</span>,
	<span style="color: #444; font-style: italic;">// public method getName</span>
	getName: <span style="color: #00cc00; font-weight: bold;">function</span><span style="color: #00CC00;">&#40;</span><span style="color: #00CC00;">&#41;</span> <span style="color: #00CC00;">&#123;</span>
		SUI<span style="color: #00CC00;">&#40;</span><span style="color: #ff1111;">&quot;body&quot;</span><span style="color: #00CC00;">&#41;</span>.<span style="color: #FFF799;">first</span><span style="color: #00CC00;">&#40;</span><span style="color: #00CC00;">&#41;</span>.<span style="color: #FFF799;">insertion</span><span style="color: #00CC00;">&#40;</span><span style="color: #ff1111;">&quot;p&quot;</span><span style="color: #00CC00;">&#41;</span>.<span style="color: #FFF799;">text</span><span style="color: #00CC00;">&#40;</span><span style="color: #ff5656; font-weight: bold;">this</span>.<span style="color: #fff;">name</span><span style="color: #00CC00;">&#41;</span>;
	<span style="color: #00CC00;">&#125;</span>,
	<span style="color: #444; font-style: italic;">// public __construct</span>
	__construct: <span style="color: #00cc00; font-weight: bold;">function</span><span style="color: #00CC00;">&#40;</span><span style="color: #00CC00;">&#41;</span> <span style="color: #00CC00;">&#123;</span>
		<span style="color: #ff5656; font-weight: bold;">this</span>.<span style="color: #fff;">name</span> = <span style="color: #ff1111;">&quot;Zaki&quot;</span>;
	<span style="color: #00CC00;">&#125;</span>
<span style="color: #00CC00;">&#125;</span><span style="color: #00CC00;">&#41;</span>;
&nbsp;
<span style="color: #444; font-style: italic;">// Declare Class Student</span>
<span style="color: #00cc00; font-weight: bold;">var</span> Student = Person.<span style="color: #FFF799;">extend</span><span style="color: #00CC00;">&#40;</span><span style="color: #00CC00;">&#123;</span>
	<span style="color: #444; font-style: italic;">// public __construct, overwrite Person.__construct</span>
	__construct: <span style="color: #00cc00; font-weight: bold;">function</span><span style="color: #00CC00;">&#40;</span><span style="color: #00CC00;">&#41;</span> <span style="color: #00CC00;">&#123;</span>
		<span style="color: #ff5656; font-weight: bold;">this</span>.<span style="color: #fff;">name</span> = <span style="color: #ff1111;">&quot;Mior Muhammad Zaki&quot;</span>;
		<span style="color: #ff5656; font-weight: bold;">this</span>.<span style="color: #FFF799;">getName</span><span style="color: #00CC00;">&#40;</span><span style="color: #00CC00;">&#41;</span>;
	<span style="color: #00CC00;">&#125;</span>,
	<span style="color: #444; font-style: italic;">// public method setName, not inherit to super Class</span>
	setName: <span style="color: #00cc00; font-weight: bold;">function</span><span style="color: #00CC00;">&#40;</span>n<span style="color: #00CC00;">&#41;</span> <span style="color: #00CC00;">&#123;</span>
		<span style="color: #ff5656; font-weight: bold;">this</span>.<span style="color: #fff;">name</span> = n;
	<span style="color: #00CC00;">&#125;</span>
<span style="color: #00CC00;">&#125;</span><span style="color: #00CC00;">&#41;</span>;
&nbsp;
<span style="color: #00cc00; font-weight: bold;">var</span> Zaki = <span style="color: #00cc00; font-weight: bold;">new</span> Student<span style="color: #00CC00;">&#40;</span><span style="color: #00CC00;">&#41;</span>; <span style="color: #444; font-style: italic;">// similar to $Zaki = new Student(); in PHP</span>
Zaki.<span style="color: #FFF799;">setName</span><span style="color: #00CC00;">&#40;</span><span style="color: #ff1111;">&quot;crynobone&quot;</span><span style="color: #00CC00;">&#41;</span>; <span style="color: #444; font-style: italic;">// set Zaki.name = 'crynobone'</span>
Zaki.<span style="color: #FFF799;">getName</span><span style="color: #00CC00;">&#40;</span><span style="color: #00CC00;">&#41;</span>; <span style="color: #444; font-style: italic;">// alert Zaki.name;</span>
&nbsp;
<span style="color: #00cc00; font-weight: bold;">var</span> Mior = <span style="color: #00cc00; font-weight: bold;">new</span> Person<span style="color: #00CC00;">&#40;</span><span style="color: #00CC00;">&#41;</span>; <span style="color: #444; font-style: italic;">// similar to $Zaki = new Person(); in PHP</span>
Mior.<span style="color: #FFF799;">setName</span><span style="color: #00CC00;">&#40;</span><span style="color: #ff1111;">&quot;Mior Khairuddin&quot;</span><span style="color: #00CC00;">&#41;</span>; <span style="color: #444; font-style: italic;">// return error: Mior.setName is not a function</span>
Mior.<span style="color: #FFF799;">getName</span><span style="color: #00CC00;">&#40;</span><span style="color: #00CC00;">&#41;</span>; <span style="color: #444; font-style: italic;">// alert Mior.name (inherited from Person.name)</span></pre></div></div>

<p>Check out the <a href="http://savvyui.com/deploy/ext/jsclass.js">SUI.JsClass source code</a> and <a href="http://savvyui.com/deploy/example/class.html">SUI.JsClass demo page</a>.</p>
<p><strong>Update:</strong> Modify code to support <strong>Savvy.UI 0.1.2-ab1</strong></p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~f/savvyui?a=LgiqnH"><img src="http://feeds.feedburner.com/~f/savvyui?i=LgiqnH" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/savvyui?a=dPpCCh"><img src="http://feeds.feedburner.com/~f/savvyui?i=dPpCCh" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/savvyui?a=za9cFh"><img src="http://feeds.feedburner.com/~f/savvyui?i=za9cFh" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/savvyui?a=qgFI1h"><img src="http://feeds.feedburner.com/~f/savvyui?i=qgFI1h" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/savvyui?a=nXOeEH"><img src="http://feeds.feedburner.com/~f/savvyui?i=nXOeEH" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/savvyui?a=GFZFTh"><img src="http://feeds.feedburner.com/~f/savvyui?i=GFZFTh" border="0"></img></a>
</div>]]></content:encoded>
			<wfw:commentRss>http://savvyui.com/blog/suijsclass-preview/feed/</wfw:commentRss>
		<feedburner:origLink>http://savvyui.com/blog/suijsclass-preview/</feedburner:origLink></item>
		<item>
		<title>Savvy.UI version 0.1.1.8 (Alpha-Build-3) Released</title>
		<link>http://feeds.feedburner.com/~r/savvyui/~3/285801274/</link>
		<comments>http://savvyui.com/blog/savvyui-version-0118-alpha-build-3-released/#comments</comments>
		<pubDate>Thu, 08 May 2008 03:33:06 +0000</pubDate>
		<dc:creator>zaki</dc:creator>
		
		<category><![CDATA[Changelog]]></category>

		<category><![CDATA[News]]></category>

		<category><![CDATA[Release]]></category>

		<guid isPermaLink="false">http://savvyui.com/?p=47</guid>
		<description><![CDATA[The new version Savvy.UI focus more on ensuring better support to mobile browser than the previous version, at the same time we also added extendability to our code so that everyone can easily create utilities (or plug-in) for Savvy.UI
What&#8217;s New
Extender
Extender function allow JavaScript developer to add countless methods to SUI.Elements without having to modify our [...]]]></description>
			<content:encoded><![CDATA[<p>The new version Savvy.UI focus more on ensuring better support to mobile browser than the previous version, at the same time we also added extendability to our code so that everyone can easily create utilities (or plug-in) for Savvy.UI</p>
<h3>What&#8217;s New</h3>
<h4>Extender</h4>
<p>Extender function allow JavaScript developer to add countless methods to SUI.Elements without having to modify our code. For example you can add fadeIn function by adding this code:</p>

<div class="wp_syntax"><div class="code"><pre class="javascript">SUI.<span style="color: #FFF799;">fn</span>.<span style="color: #FFF799;">extend</span><span style="color: #00CC00;">&#40;</span><span style="color: #ff1111;">&quot;fadeIn&quot;</span>, <span style="color: #00cc00; font-weight: bold;">function</span><span style="color: #00CC00;">&#40;</span><span style="color: #00CC00;">&#41;</span> <span style="color: #00CC00;">&#123;</span>
	<span style="color: #ff5656; font-weight: bold;">this</span>.<span style="color: #FFF799;">pushCALLBACK</span><span style="color: #00CC00;">&#40;</span><span style="color: #00cc00; font-weight: bold;">function</span><span style="color: #00CC00;">&#40;</span><span style="color: #00CC00;">&#41;</span> <span style="color: #00CC00;">&#123;</span>
		SUI.<span style="color: #FFF799;">CSS</span>.<span style="color: #FFF799;">Show</span><span style="color: #00CC00;">&#40;</span><span style="color: #ff5656; font-weight: bold;">this</span>, <span style="color: #ff1111;">&quot;slow&quot;</span><span style="color: #00CC00;">&#41;</span>;
    <span style="color: #00CC00;">&#125;</span>, i<span style="color: #00CC00;">&#41;</span>;
    <span style="color: #ff5656; font-weight: bold;">return</span> <span style="color: #ff5656; font-weight: bold;">this</span>;
<span style="color: #00CC00;">&#125;</span><span style="color: #00CC00;">&#41;</span>;</pre></div></div>

<p>To use it, all you need to do is:</p>

<div class="wp_syntax"><div class="code"><pre class="javascript">SUI<span style="color: #00CC00;">&#40;</span><span style="color: #ff1111;">&quot;#some-id&quot;</span><span style="color: #00CC00;">&#41;</span>.<span style="color: #FFF799;">fadeIn</span><span style="color: #00CC00;">&#40;</span><span style="color: #00CC00;">&#41;</span>;</pre></div></div>

<h4>New Theme</h4>
<p>With the new theme in place for Savvy.UI I think it is the right time to add a new style to our JavaScript theme collection. The new theme can be access through <code>css/style-black.css</code>.</p>
<h4>Custom Builder</h4>
<p>Also check out our custom Savvy.UI builder at <a href="http://savvyui.com/download/build">http://savvyui.com/download/build</a> to customize what you need for your application.</p>
<h4>Other Update</h4>
<p>Additionally here a list of changelog for version 0.1.1.8-ab3:</p>
<ul class="lists">
<li>Nokia s60 3rd Edition mobile browser support</li>
<li>SUI.Util.Toggler is added to default download.</li>
</ul>
<h3>Download Savvy.UI</h3>
<p>Download Savvy.UI version 0.1.1.8 (alpha-build-2) and follow these instructions:</p>
<ul class="lists">
<li><a href="http://savvyui.com/downloads/13" title="Version 0.1.1.8-alpha-build3 downloaded 463 times" >Savvy.UI Version 0.1.1.8-alpha-build3 (463)</a></li>
<li><a href="http://savvyui.com/downloads/14" title="Version 0.1.1.8-alpha-build3 Packed downloaded 437 times" >Savvy.UI Version 0.1.1.8-alpha-build3 Packed (437)</a></li>
<li><a href="http://savvyui.com/downloads/15" title="Version 0.1.1.8-alpha-build3 Combined downloaded 426 times" >Savvy.UI Version 0.1.1.8-alpha-build3 Combined (426)</a></li>
</ul>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~f/savvyui?a=bfD6AH"><img src="http://feeds.feedburner.com/~f/savvyui?i=bfD6AH" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/savvyui?a=ebHtBh"><img src="http://feeds.feedburner.com/~f/savvyui?i=ebHtBh" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/savvyui?a=RVKAMh"><img src="http://feeds.feedburner.com/~f/savvyui?i=RVKAMh" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/savvyui?a=fLPGMh"><img src="http://feeds.feedburner.com/~f/savvyui?i=fLPGMh" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/savvyui?a=3vlJQH"><img src="http://feeds.feedburner.com/~f/savvyui?i=3vlJQH" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/savvyui?a=jtieKh"><img src="http://feeds.feedburner.com/~f/savvyui?i=jtieKh" border="0"></img></a>
</div>]]></content:encoded>
			<wfw:commentRss>http://savvyui.com/blog/savvyui-version-0118-alpha-build-3-released/feed/</wfw:commentRss>
		<feedburner:origLink>http://savvyui.com/blog/savvyui-version-0118-alpha-build-3-released/</feedburner:origLink></item>
		<item>
		<title>News Update #2</title>
		<link>http://feeds.feedburner.com/~r/savvyui/~3/283855962/</link>
		<comments>http://savvyui.com/blog/news-update-2/#comments</comments>
		<pubDate>Mon, 05 May 2008 10:47:32 +0000</pubDate>
		<dc:creator>zaki</dc:creator>
		
		<category><![CDATA[News]]></category>

		<guid isPermaLink="false">http://savvyui.com/?p=46</guid>
		<description><![CDATA[First of all, I would like to thank Themetation, owned by Kai Loon for such a nicely done Theme for Savvy.UI. Other than that I also added a blackish css template for Savvy.UI which is included in the next release (which I would probably release in one or two days).
]]></description>
			<content:encoded><![CDATA[<p>First of all, I would like to thank <a href="http://themetation.com">Themetation</a>, owned by <a href="http://kailoon.com">Kai Loon</a> for such a nicely done Theme for Savvy.UI. Other than that I also added a blackish css template for Savvy.UI which is included in the next release (which I would probably release in one or two days).</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~f/savvyui?a=woRDPH"><img src="http://feeds.feedburner.com/~f/savvyui?i=woRDPH" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/savvyui?a=MFU7jh"><img src="http://feeds.feedburner.com/~f/savvyui?i=MFU7jh" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/savvyui?a=p4kEgh"><img src="http://feeds.feedburner.com/~f/savvyui?i=p4kEgh" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/savvyui?a=u2cRmh"><img src="http://feeds.feedburner.com/~f/savvyui?i=u2cRmh" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/savvyui?a=PuvnIH"><img src="http://feeds.feedburner.com/~f/savvyui?i=PuvnIH" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/savvyui?a=hZbFKh"><img src="http://feeds.feedburner.com/~f/savvyui?i=hZbFKh" border="0"></img></a>
</div>]]></content:encoded>
			<wfw:commentRss>http://savvyui.com/blog/news-update-2/feed/</wfw:commentRss>
		<feedburner:origLink>http://savvyui.com/blog/news-update-2/</feedburner:origLink></item>
		<item>
		<title>Bringing Calendar for Savvy.UI Back</title>
		<link>http://feeds.feedburner.com/~r/savvyui/~3/263088875/</link>
		<comments>http://savvyui.com/blog/bringing-calendar-for-savvyui-back/#comments</comments>
		<pubDate>Thu, 03 Apr 2008 04:23:59 +0000</pubDate>
		<dc:creator>zaki</dc:creator>
		
		<category><![CDATA[Prototype]]></category>

		<guid isPermaLink="false">http://savvyui.com/?p=45</guid>
		<description><![CDATA[
We're be bringing Calendar plug-in back in the next Savvy.UI release along with better customization for Simple Tab plug-in.


new SUI.Util.Calendar&#40;&#123;
     renderTo: &#34;#cal-post45&#34;,
     navigation: true
&#125;&#41;;



[inline]
new SUI.Util.Calendar({
     renderTo: "#cal-post45",
     navigation: true
});
[/inline]]]></description>
			<content:encoded><![CDATA[<div id="cal-post45"></div>
<p>We're be bringing Calendar plug-in back in the next Savvy.UI release along with better customization for Simple Tab plug-in.</p>


<div class="wp_syntax"><div class="code"><pre class="javascript"><span style="color: #00cc00; font-weight: bold;">new</span> SUI.<span style="color: #FFF799;">Util</span>.<span style="color: #FFF799;">Calendar</span><span style="color: #00CC00;">&#40;</span><span style="color: #00CC00;">&#123;</span>
     renderTo: <span style="color: #ff1111;">&quot;#cal-post45&quot;</span>,
     navigation: <span style="color: #00cc00; font-weight: bold;">true</span>
<span style="color: #00CC00;">&#125;</span><span style="color: #00CC00;">&#41;</span>;</pre></div></div>



[inline]<script type="text/javascript">
new SUI.Util.Calendar({
     renderTo: "#cal-post45",
     navigation: true
});
</script>[/inline]<div class="feedflare">
<a href="http://feeds.feedburner.com/~f/savvyui?a=4HwkdH"><img src="http://feeds.feedburner.com/~f/savvyui?i=4HwkdH" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/savvyui?a=zZMwUh"><img src="http://feeds.feedburner.com/~f/savvyui?i=zZMwUh" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/savvyui?a=Jl3Fsh"><img src="http://feeds.feedburner.com/~f/savvyui?i=Jl3Fsh" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/savvyui?a=tw5cCh"><img src="http://feeds.feedburner.com/~f/savvyui?i=tw5cCh" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/savvyui?a=0trr0H"><img src="http://feeds.feedburner.com/~f/savvyui?i=0trr0H" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/savvyui?a=F9RdQh"><img src="http://feeds.feedburner.com/~f/savvyui?i=F9RdQh" border="0"></img></a>
</div>]]></content:encoded>
			<wfw:commentRss>http://savvyui.com/blog/bringing-calendar-for-savvyui-back/feed/</wfw:commentRss>
		<feedburner:origLink>http://savvyui.com/blog/bringing-calendar-for-savvyui-back/</feedburner:origLink></item>
		<item>
		<title>Savvy.UI version 0.1.1.8 (Alpha-Build-2) Released</title>
		<link>http://feeds.feedburner.com/~r/savvyui/~3/261785187/</link>
		<comments>http://savvyui.com/blog/savvyui-version-0118-alpha-build-2-released/#comments</comments>
		<pubDate>Tue, 01 Apr 2008 07:19:39 +0000</pubDate>
		<dc:creator>zaki</dc:creator>
		
		<category><![CDATA[Changelog]]></category>

		<category><![CDATA[News]]></category>

		<category><![CDATA[Release]]></category>

		<guid isPermaLink="false">http://savvyui.com/?p=41</guid>
		<description><![CDATA[We currently testing multiple new feature for Savvy.UI, some of it already available in the newly release while other we put it on hold for the future. As for now, we are more careful with all the code and function inside Savvy.UI to ensure that it is usable when needed. We have also try to [...]]]></description>
			<content:encoded><![CDATA[<p>We currently testing multiple new feature for Savvy.UI, some of it already available in the newly release while other we put it on hold for the future. As for now, we are more careful with all the code and function inside Savvy.UI to ensure that it is usable when needed. We have also try to let you have lesser code to write with the bundled utility or plug-in which is first introduce in this release.</p>
<h3>What's New</h3>
<h4>DOM Selector</h4>
<p>For the new Savvy.UI we have provide support to a set of CSS1, CSS2 and minor CSS3 support for our DOM Selector engine. The Engine uses native or traditional DOM querying instead of XPath, we currently will mantain this as for the next few development. The engine itself were first introduced after version 0.1.1.6, below is list of supported Selector query for version 0.1.1.8 (Alpha-Build-2):</p>
<ul class="lists">
	<li><strong>Basic</strong>
        <ul>
            <li>tag</li>
            <li>tag#id</li>
            <li>tag.class</li>
            <li>#id</li>
            <li>.class</li>
            <li>*</li>	<li>
        </ul>
	</li>
	<li><strong>Extended</strong> - Element is a combination of any of the Basic.
        <ul>
            <li>element element n-element</li>
            <li>element, element, n-element</li>
            <li>element > element</li>
            <li>element ~ element</li>
            <li>element + element</li>
            <li>element:first-child</li>
            <li>element:last-child</li>
            <li>element:hidden</li>
            <li>element:visible</li>
            <li>element[value]</li>
        </ul>
    </li>
    <li><strong>Form Element</strong>
    	<ul>
            <li>element:input</li>
            <li>element:checked</li>
            <li>element:selected</li>
            <li>element:enabled</li>
            <li>element:disabled</li>
            <li>element:text</li>
            <li>element:password</li>
            <li>element:checkbox</li>
            <li>element:radio</li>
            <li>element:submit</li>
            <li>element:button</li>
            <li>element:image</li>
            <li>element:file</li>
            <li>element:reset</li>
		</ul>
	</li>
</ul>
<p>Example below will make all first child span which is child of any input DOM Element which is inside of DIV#hello to have red as it's font color.</p>


<div class="wp_syntax"><div class="code"><pre class="javascript">SUI<span style="color: #00CC00;">&#40;</span><span style="color: #ff1111;">&quot;div#hello &gt; :input span:first-child&quot;</span><span style="color: #00CC00;">&#41;</span>.<span style="color: #FFF799;">css</span><span style="color: #00CC00;">&#40;</span><span style="color: #ff1111;">&quot;color&quot;</span>, <span style="color: #ff1111;">&quot;red&quot;</span><span style="color: #00CC00;">&#41;</span>;</pre></div></div>



<h4>OnDOMReady</h4>
<p>We also improve <strong>OnDOMReady</strong> or <code>.ready()</code> function for Savvy.UI  which will enable you to prepare set of event to occur right after the DOM is ready instead of waiting for all external element to be available (including flash, images and video). During early implementation the script failed in IE based browser because the browser document.onstateready function were overwrite when there multiple <code>.ready()</code> call.</p>


<div class="wp_syntax"><div class="code"><pre class="javascript">SUI<span style="color: #00CC00;">&#40;</span><span style="color: #ff1111;">&quot;p&quot;</span><span style="color: #00CC00;">&#41;</span>.<span style="color: #FFF799;">ready</span><span style="color: #00CC00;">&#40;</span><span style="color: #00cc00; font-weight: bold;">function</span><span style="color: #00CC00;">&#40;</span><span style="color: #00CC00;">&#41;</span> <span style="color: #00CC00;">&#123;</span>
	SUI<span style="color: #00CC00;">&#40;</span><span style="color: #ff5656; font-weight: bold;">this</span><span style="color: #00CC00;">&#41;</span>.<span style="color: #FFF799;">css</span><span style="color: #00CC00;">&#40;</span><span style="color: #ff1111;">&quot;color&quot;</span>,<span style="color: #ff1111;">&quot;red&quot;</span><span style="color: #00CC00;">&#41;</span>;
<span style="color: #00CC00;">&#125;</span><span style="color: #00CC00;">&#41;</span>;</pre></div></div>



<h4>Other</h4>
<p>Additionally here a list of changelog for version 0.1.1.8:</p>
<ul class="lists">
	<li>Introduction to SUI.vars which will extend to SUI.string or SUI.array, the constructor is workable but there're some issue when array variable return typeof as object instead of array.</li>
	<li>Separation of some plug-in based extension to SUI.Util, the changes include SUI.Util.Ticker, SUI.Util.SimpleTab, SUI.Util.DropMenu.</li>
	<li>Enhancement of SUI.Ajax, predefine callback will only be called when you add and object value <code>{SUIXHR:true, ...}</code>.</li>
	<li>Introduction of SUI.Util.SimpleTab</li>
	<li>All extension will have __contructor callback which is similar to PHP5.</li>
	<li>Introduction of .has(), .is(), .start() and .end() for SUI.Elements.</li>

</ul>

<h3>Download Savvy.UI</h3>
<p>Download Savvy.UI version 0.1.1.8 (alpha-build-2) and <a href="http://savvyui.com/download/">follow these instructions</a>:</p>
<ul class="lists">
	<li><a href="http://savvyui.com/downloads/10" title="Version 0.1.1.8-alpha-build2 Uncompressed downloaded 325 times" >Savvy.UI Version 0.1.1.8-alpha-build2 Uncompressed (325)</a></li>
	<li><a href="http://savvyui.com/downloads/11" title="Version 0.1.1.8-alpha-build2 Packed downloaded 306 times" >Savvy.UI Version 0.1.1.8-alpha-build2 Packed (306)</a></li>
	<li><a href="http://savvyui.com/downloads/12" title="Version 0.1.1.8-alpha-build2 Combined downloaded 314 times" >Savvy.UI Version 0.1.1.8-alpha-build2 Combined (314)</a></li>
</ul>

<div class="feedflare">
<a href="http://feeds.feedburner.com/~f/savvyui?a=lC59EH"><img src="http://feeds.feedburner.com/~f/savvyui?i=lC59EH" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/savvyui?a=OIXPph"><img src="http://feeds.feedburner.com/~f/savvyui?i=OIXPph" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/savvyui?a=eR2unh"><img src="http://feeds.feedburner.com/~f/savvyui?i=eR2unh" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/savvyui?a=hEMTdh"><img src="http://feeds.feedburner.com/~f/savvyui?i=hEMTdh" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/savvyui?a=UgmfwH"><img src="http://feeds.feedburner.com/~f/savvyui?i=UgmfwH" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/savvyui?a=eQmU4h"><img src="http://feeds.feedburner.com/~f/savvyui?i=eQmU4h" border="0"></img></a>
</div>]]></content:encoded>
			<wfw:commentRss>http://savvyui.com/blog/savvyui-version-0118-alpha-build-2-released/feed/</wfw:commentRss>
		<feedburner:origLink>http://savvyui.com/blog/savvyui-version-0118-alpha-build-2-released/</feedburner:origLink></item>
		<item>
		<title>New Savvy.UI Panel</title>
		<link>http://feeds.feedburner.com/~r/savvyui/~3/261785188/</link>
		<comments>http://savvyui.com/blog/new-savvyui-panel/#comments</comments>
		<pubDate>Fri, 22 Feb 2008 09:34:56 +0000</pubDate>
		<dc:creator>zaki</dc:creator>
		
		<category><![CDATA[Development]]></category>

		<guid isPermaLink="false">http://savvyui.com/weblog/new-savvyui-panel/</guid>
		<description><![CDATA[
We are working on SUI.Ext.TabPanel and SUI.Ext.Panel, so any comment on the design?]]></description>
			<content:encoded><![CDATA[<img src='http://savvyui.com/wp-content/uploads/panel.jpg' alt='Savvy.UI Panel' />
<p>We are working on <code>SUI.Ext.TabPanel</code> and <code>SUI.Ext.Panel</code>, so any comment on the design?</p><div class="feedflare">
<a href="http://feeds.feedburner.com/~f/savvyui?a=w5SI6H"><img src="http://feeds.feedburner.com/~f/savvyui?i=w5SI6H" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/savvyui?a=r9fOfh"><img src="http://feeds.feedburner.com/~f/savvyui?i=r9fOfh" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/savvyui?a=liNeqh"><img src="http://feeds.feedburner.com/~f/savvyui?i=liNeqh" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/savvyui?a=akNjLh"><img src="http://feeds.feedburner.com/~f/savvyui?i=akNjLh" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/savvyui?a=mpCXuH"><img src="http://feeds.feedburner.com/~f/savvyui?i=mpCXuH" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/savvyui?a=dTlH0h"><img src="http://feeds.feedburner.com/~f/savvyui?i=dTlH0h" border="0"></img></a>
</div>]]></content:encoded>
			<wfw:commentRss>http://savvyui.com/blog/new-savvyui-panel/feed/</wfw:commentRss>
		<feedburner:origLink>http://savvyui.com/blog/new-savvyui-panel/</feedburner:origLink></item>
		<item>
		<title>Unique String Validator</title>
		<link>http://feeds.feedburner.com/~r/savvyui/~3/261785189/</link>
		<comments>http://savvyui.com/blog/unique-string-validator/#comments</comments>
		<pubDate>Sun, 17 Feb 2008 13:28:32 +0000</pubDate>
		<dc:creator>zaki</dc:creator>
		
		<category><![CDATA[Example]]></category>

		<guid isPermaLink="false">http://savvyui.com/weblog/unique-string-validator/</guid>
		<description><![CDATA[Here's an example where Savvy.UI can be use to evaluate set of string and return only uniques string using SUI.Elements constructor object and SUI.fn.unique function. The whole test is done at client side.

Input
Separate each string/word using semicolon (;)


Unique Output

The Code
Here's the code behind this small application:


SUI&#40;document&#41;.ready&#40;function&#40;&#41;&#123;
	var ins = SUI&#40;&#34;textarea.strlist&#34;&#41;;
	SUI&#40;&#34;#submit-str&#34;&#41;.on&#40;&#34;click&#34;,function&#40;&#41; &#123;
		var m = ins.first&#40;&#41;.val&#40;&#41;.split&#40;&#34;;&#34;&#41;;
		m = SUI.fn.unique&#40;m&#41;;
		ins.last&#40;&#41;.val&#40;m.join&#40;&#34;; [...]]]></description>
			<content:encoded><![CDATA[<p>Here's an example where <strong>Savvy.UI</strong> can be use to evaluate set of string and return only uniques string using <strong>SUI.Elements</strong> constructor object and <strong>SUI.fn.unique</strong> function. The whole test is done at client side.</p>
<span id="more-37"></span>
<h4>Input</h4>
<p>Separate each string/word using semicolon (;)</p>
<p><textarea id="str-list" class="strlist" cols="40" rows="10"></textarea></p>
<p><input type="button" value="Submit" id="submit-str" /></p>
<h4>Unique Output</h4>
<p><textarea id="str-unique" class="strlist" cols="40" rows="10"></textarea></p>
<h3>The Code</h3>
Here's the code behind this small application:</p>


<div class="wp_syntax"><div class="code"><pre class="javascript">SUI<span style="color: #00CC00;">&#40;</span>document<span style="color: #00CC00;">&#41;</span>.<span style="color: #FFF799;">ready</span><span style="color: #00CC00;">&#40;</span><span style="color: #00cc00; font-weight: bold;">function</span><span style="color: #00CC00;">&#40;</span><span style="color: #00CC00;">&#41;</span><span style="color: #00CC00;">&#123;</span>
	<span style="color: #00cc00; font-weight: bold;">var</span> ins = SUI<span style="color: #00CC00;">&#40;</span><span style="color: #ff1111;">&quot;textarea.strlist&quot;</span><span style="color: #00CC00;">&#41;</span>;
	SUI<span style="color: #00CC00;">&#40;</span><span style="color: #ff1111;">&quot;#submit-str&quot;</span><span style="color: #00CC00;">&#41;</span>.<span style="color: #FFF799;">on</span><span style="color: #00CC00;">&#40;</span><span style="color: #ff1111;">&quot;click&quot;</span>,<span style="color: #00cc00; font-weight: bold;">function</span><span style="color: #00CC00;">&#40;</span><span style="color: #00CC00;">&#41;</span> <span style="color: #00CC00;">&#123;</span>
		<span style="color: #00cc00; font-weight: bold;">var</span> m = ins.<span style="color: #FFF799;">first</span><span style="color: #00CC00;">&#40;</span><span style="color: #00CC00;">&#41;</span>.<span style="color: #FFF799;">val</span><span style="color: #00CC00;">&#40;</span><span style="color: #00CC00;">&#41;</span>.<span style="color: #FFF799;">split</span><span style="color: #00CC00;">&#40;</span><span style="color: #ff1111;">&quot;;&quot;</span><span style="color: #00CC00;">&#41;</span>;
		m = SUI.<span style="color: #FFF799;">fn</span>.<span style="color: #FFF799;">unique</span><span style="color: #00CC00;">&#40;</span>m<span style="color: #00CC00;">&#41;</span>;
		ins.<span style="color: #FFF799;">last</span><span style="color: #00CC00;">&#40;</span><span style="color: #00CC00;">&#41;</span>.<span style="color: #FFF799;">val</span><span style="color: #00CC00;">&#40;</span>m.<span style="color: #FFF799;">join</span><span style="color: #00CC00;">&#40;</span><span style="color: #ff1111;">&quot;; &quot;</span><span style="color: #00CC00;">&#41;</span><span style="color: #00CC00;">&#41;</span>;
		<span style="color: #ff5656; font-weight: bold;">return</span> <span style="color: #00cc00; font-weight: bold;">false</span>;
	<span style="color: #00CC00;">&#125;</span><span style="color: #00CC00;">&#41;</span>;
<span style="color: #00CC00;">&#125;</span><span style="color: #00CC00;">&#41;</span>;</pre></div></div>



[inline]<script type="text/javascript">
var ins = SUI("textarea.strlist");
SUI(document).ready(function(){
	var ins = SUI("textarea.strlist");
	SUI("#submit-str").on("click",function() {
		var m = ins.first().val().split(";");
		m = SUI.fn.unique(m);
		ins.last().val(m.join("; "));
		return false;
	});
});</script>[/inline]<div class="feedflare">
<a href="http://feeds.feedburner.com/~f/savvyui?a=zGGHyH"><img src="http://feeds.feedburner.com/~f/savvyui?i=zGGHyH" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/savvyui?a=7WjNzh"><img src="http://feeds.feedburner.com/~f/savvyui?i=7WjNzh" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/savvyui?a=bMppNh"><img src="http://feeds.feedburner.com/~f/savvyui?i=bMppNh" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/savvyui?a=0Wr2Gh"><img src="http://feeds.feedburner.com/~f/savvyui?i=0Wr2Gh" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/savvyui?a=iQikcH"><img src="http://feeds.feedburner.com/~f/savvyui?i=iQikcH" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/savvyui?a=FnDJSh"><img src="http://feeds.feedburner.com/~f/savvyui?i=FnDJSh" border="0"></img></a>
</div>]]></content:encoded>
			<wfw:commentRss>http://savvyui.com/blog/unique-string-validator/feed/</wfw:commentRss>
		<feedburner:origLink>http://savvyui.com/blog/unique-string-validator/</feedburner:origLink></item>
		<item>
		<title>News.Update #1</title>
		<link>http://feeds.feedburner.com/~r/savvyui/~3/261785190/</link>
		<comments>http://savvyui.com/blog/newsupdate-1/#comments</comments>
		<pubDate>Mon, 11 Feb 2008 04:41:50 +0000</pubDate>
		<dc:creator>zaki</dc:creator>
		
		<category><![CDATA[News]]></category>

		<guid isPermaLink="false">http://savvyui.com/weblog/newsupdate-1/</guid>
		<description><![CDATA[First of all, sorry for not being able to update this site more frequently that we would hope for but there are things that we can't avoid. I choose the title "News.Update" as an indication that this is a summary of multiple news or update regarding Savvy.UI, so let get on with the news shall [...]]]></description>
			<content:encoded><![CDATA[<p>First of all, sorry for not being able to update this site more frequently that we would hope for but there are things that we can't avoid. I choose the title "News.Update" as an indication that this is a summary of multiple news or update regarding Savvy.UI, so let get on with the news shall we.</p>
<span id="more-36"></span>
<h3>New Release</h3>
<p>We would like to inform that Savvy.UI version 0.1.1.7-ab2 has just been release less than 12 hours ago. This release include many bug fix from version 0.1.1.7-ab1 and version 0.1.1.6 which we consider the worst release for Savvy.UI. If you have downloaded any of the following version please upgrade to the latest version. Additionally full change log will be included as soon as possible.</p>

<h3>Subscribe to Us</h3>
<p>While this isn't a compulsory but we would like to encourage our users to subscribe to our feed using Feed Aggregator or E-mail which will help you get latest update from Savvy.UI.</p><div class="feedflare">
<a href="http://feeds.feedburner.com/~f/savvyui?a=SuhCKH"><img src="http://feeds.feedburner.com/~f/savvyui?i=SuhCKH" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/savvyui?a=ZedkVh"><img src="http://feeds.feedburner.com/~f/savvyui?i=ZedkVh" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/savvyui?a=AgzZFh"><img src="http://feeds.feedburner.com/~f/savvyui?i=AgzZFh" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/savvyui?a=TZqGyh"><img src="http://feeds.feedburner.com/~f/savvyui?i=TZqGyh" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/savvyui?a=2PbQkH"><img src="http://feeds.feedburner.com/~f/savvyui?i=2PbQkH" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/savvyui?a=0HhAch"><img src="http://feeds.feedburner.com/~f/savvyui?i=0HhAch" border="0"></img></a>
</div>]]></content:encoded>
			<wfw:commentRss>http://savvyui.com/blog/newsupdate-1/feed/</wfw:commentRss>
		<feedburner:origLink>http://savvyui.com/blog/newsupdate-1/</feedburner:origLink></item>
		<item>
		<title>SUI.selector() Modern Browser Results</title>
		<link>http://feeds.feedburner.com/~r/savvyui/~3/261785191/</link>
		<comments>http://savvyui.com/blog/suiselector-modern-browser-results/#comments</comments>
		<pubDate>Tue, 29 Jan 2008 09:26:17 +0000</pubDate>
		<dc:creator>codenitive</dc:creator>
		
		<category><![CDATA[Development]]></category>

		<category><![CDATA[Test]]></category>

		<category><![CDATA[SUI.Selector()]]></category>

		<guid isPermaLink="false">http://savvyui.com/weblog/suiselector-modern-browser-results/</guid>
		<description><![CDATA[Recently I took a bit of time off the development of Savvy.UI and test out SUI.selector() speed. For this purpose, we took the same test sample from SlickSpeed selector test but half of the actually test were ignored since our selector doesn't support those query at the moment, those unsupported format will be added later [...]]]></description>
			<content:encoded><![CDATA[<p>Recently I took a bit of time off the development of <strong>Savvy.UI</strong> and test out <code>SUI.selector()</code> speed. For this purpose, we took the same test sample from <a href="http://mootools.net/slickspeed/">SlickSpeed</a> selector test but half of the actually test were ignored since our selector doesn't support those query at the moment, those unsupported format will be added later in the future.</p>
<span id="more-30"></span>
<p>As for now, the table below represent the time it took (in miliseconds) to query the selector and retrieve total elements related to the selector query. Each browser test were done using the same computer running on Microsoft Windows XP powered by 512MB RAM.</p>
<h3>Result</h3>
<table class="perf" style="width:96% ">
	<thead>
		<tr>
			<th>Selector</th>
			<th>IE 7</th>
			<th>Firefox 2.0.0.11</th>
			<th>Opera 9.25</th>
			<th>Safari 3 Beta</th>
		</tr>
	</thead>
	<tbody>
		<tr>
			<td><strong>*</strong></td>
			<td class="bad invalid">47ms | 252 found</td>
			<td class="normal">16ms | 251 found</td>
			<td class="good">0ms | 251 found</td>
			<td class="good">0ms | 251 found</td>
		</tr>
		<tr>
			<td><strong>body</strong></td>
			<td class="good">0ms | 1 found</td>
			<td class="good">0ms | 1 found</td>
			<td class="good">0ms | 1 found</td>
			<td class="good">0ms | 1 found</td>
		</tr>
		<tr>
			<td><strong>body div</strong></td>
			<td class="bad">47ms | 1 found</td>
			<td class="good">0ms | 1 found</td>
			<td class="good">0ms | 1 found</td>
			<td class="normal">15ms | 1 found</td>
		</tr>
		<tr>
			<td><strong>div</strong></td>
			<td class="bad">15ms | 243 found</td>
			<td class="bad">15ms | 243 found</td>
			<td class="bad">15ms | 243 found</td>
			<td class="good">0ms | 243 found</td>
		</tr>
		<tr>
			<td><strong>div div</strong></td>
			<td class="bad">282ms | 242 found</td>
			<td class="normal">219ms | 242 found</td>
			<td class="good">47ms | 242 found</td>
			<td class="normal">94ms | 242 found</td>
		</tr>
		<tr>
			<td><strong>div, div, div</strong></td>
			<td class="normal">15ms | 243 found</td>
			<td class="bad">16ms | 243 found</td>
			<td class="good">0ms | 243 found</td>
			<td class="good">0ms | 243 found</td>
		</tr>
		<tr>
			<td><strong>div, a, span </strong></td>
			<td class="bad">31ms | 243 found</td>
			<td class="normal">16ms | 243 found</td>
			<td class="good">0ms | 243 found</td>
			<td class="good">0ms | 243 found</td>
		</tr>
		<tr>
			<td><strong>.dialog</strong></td>
			<td class="bad">32ms | 51 found</td>
			<td class="good">0ms | 51 found</td>
			<td class="normal">16ms | 51 found</td>
			<td class="good">0ms | 51 found</td>
		</tr>
		<tr>
			<td><strong>div.dialog</strong></td>
			<td class="bad">31ms | 51 found</td>
			<td class="normal">16ms | 51 found</td>
			<td class="good">0ms | 51 found</td>
			<td class="good">0ms | 51 found</td>
		</tr>
		<tr>
			<td><strong>div .dialog</strong></td>
			<td class="bad">47ms | 51 found</td>
			<td class="normal">16ms | 51 found</td>
			<td class="good">15ms | 51 found</td>
			<td class="normal">16ms | 51 found</td>
		</tr>
		<tr>
			<td><strong>div.character, div.dialog</strong></td>
			<td class="bad">47ms | 99 found</td>
			<td class="normal">15ms | 99 found</td>
			<td class="normal">16ms | 99 found</td>
			<td class="good">0ms | 99 found</td>
		</tr>
		<tr>
			<td><strong>#speech5</strong></td>
			<td class="good">0ms | 1 found</td>
			<td class="good">0ms | 1 found</td>
			<td class="good">0ms | 1 found</td>
			<td class="good">0ms | 1 found</td>
		</tr>
		<tr>
			<td><strong>div#speech5</strong></td>
			<td class="good">0ms | 1 found</td>
			<td class="good">0ms | 1 found</td>
			<td class="good">0ms | 1 found</td>
			<td class="good">0ms | 1 found</td>
		</tr>
		<tr>
			<td><strong>div #speech5</strong></td>
			<td class="bad">15ms | 1 found</td>
			<td class="good">0ms | 1 found</td>
			<td class="good">0ms | 1 found</td>
			<td class="good">0ms | 1 found</td>
		</tr>
		<tr>
			<td><strong>div div div</strong></td>
			<td class="bad">531ms | 241 found</td>
			<td class="normal">453ms | 241 found</td>
			<td class="good">62ms | 241 found</td>
			<td class="normal">94ms | 241 found</td>
		</tr>
		<tr>
			<td><strong>div.scene div.dialog</strong></td>
			<td class="bad">47ms | 49 found</td>
			<td class="bad">47ms | 49 found</td>
			<td class="good">0ms | 49 found</td>
			<td class="good">0ms | 49 found</td>
		</tr>
		<tr>
			<td><strong>div#scene1 div.dialog div</strong></td>
			<td class="normal">156ms | 142 found</td>
			<td class="bad">344ms | 142 found</td>
			<td class="good">16ms | 142 found</td>
			<td class="normal">31ms | 142 found</td>
		</tr>
		<tr>
			<td><strong>#scene1 #speech1</strong></td>
			<td class="good">0ms | 1 found</td>
			<td class="good">0ms | 1 found</td>
			<td class="good">0ms | 1 found</td>
			<td class="good">0ms | 1 found</td>
		</tr>
		<tr class="footer">
			<td><strong>TOTAL</strong></td>
			<td class="bad">983ms</td>
			<td class="normal">773ms</td>
			<td class="good">187ms</td>
			<td class="normal">250ms</td>
		</tr>
	</tbody>
</table>
<h3>Verdict</h3>
<p>Opera 9.25 undoubtedly is the fastest among the four while it took IE7 almost a second to query the whole test, 8 times longer than Opera. Other than that, we will review the code and hopefully optimize it so to ensure each test can be done faster and without causing your code to break.</p><div class="feedflare">
<a href="http://feeds.feedburner.com/~f/savvyui?a=TKjxDH"><img src="http://feeds.feedburner.com/~f/savvyui?i=TKjxDH" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/savvyui?a=eJeQRh"><img src="http://feeds.feedburner.com/~f/savvyui?i=eJeQRh" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/savvyui?a=cl1LBh"><img src="http://feeds.feedburner.com/~f/savvyui?i=cl1LBh" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/savvyui?a=6fPr6h"><img src="http://feeds.feedburner.com/~f/savvyui?i=6fPr6h" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/savvyui?a=mW4T3H"><img src="http://feeds.feedburner.com/~f/savvyui?i=mW4T3H" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/savvyui?a=pjyfEh"><img src="http://feeds.feedburner.com/~f/savvyui?i=pjyfEh" border="0"></img></a>
</div>]]></content:encoded>
			<wfw:commentRss>http://savvyui.com/blog/suiselector-modern-browser-results/feed/</wfw:commentRss>
		<feedburner:origLink>http://savvyui.com/blog/suiselector-modern-browser-results/</feedburner:origLink></item>
	</channel>
</rss>
