<?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>Web Development Blog</title>
	<atom:link href="http://eisabainyo.net/weblog/feed/" rel="self" type="application/rss+xml" />
	<link>http://eisabainyo.net/weblog</link>
	<description>Web Development, Web Design, Web Applications, Web 2.0, AJAX, WordPress Themes, Search Engine Optimisation, Latest Technologies and more..</description>
	<lastBuildDate>Mon, 20 May 2013 09:59:55 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.4.1</generator>
		<item>
		<title>Using WordPress as a CMS &#8211; Customise Admin Login Page</title>
		<link>http://eisabainyo.net/weblog/2013/04/16/using-wordpress-as-a-cms-customise-admin-login-page-2/</link>
		<comments>http://eisabainyo.net/weblog/2013/04/16/using-wordpress-as-a-cms-customise-admin-login-page-2/#comments</comments>
		<pubDate>Tue, 16 Apr 2013 04:19:26 +0000</pubDate>
		<dc:creator>eisabai</dc:creator>
				<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://eisabainyo.net/weblog/?p=2100</guid>
		<description><![CDATA[When you&#8217;re using WordPress as a CMS for clients, it&#8217;s a good idea to customise the Admin Login page so the client feels the ownership of the Admin console that they will be using. It doesn&#8217;t have to be complicated, by placing the following code into functions.php of the current theme, almost half the work [...]]]></description>
			<content:encoded><![CDATA[<p>When you&#8217;re using WordPress as a CMS for clients, it&#8217;s a good idea to customise the Admin Login page so the client feels the ownership of the Admin console that they will be using.  It doesn&#8217;t have to be complicated, by placing the following code into functions.php of the current theme, almost half the work of customising is done.  </p>
<p><code>/* ADMIN */<br />
// Use your own external URL logo link<br />
function custom_url_login(){<br />
	return "http://www.anansi.com.au/"; /<br />
}<br />
add_filter('login_headerurl', 'custom_url_login');</p>
<p>// Custom WordPress Login Logo/CSS<br />
function login_css() {<br />
	wp_enqueue_style( 'login_css', get_template_directory_uri() . '/login.css' );<br />
}<br />
add_action('login_head', 'login_css');<br />
</code></p>
]]></content:encoded>
			<wfw:commentRss>http://eisabainyo.net/weblog/2013/04/16/using-wordpress-as-a-cms-customise-admin-login-page-2/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>My favourite HTML5 Features</title>
		<link>http://eisabainyo.net/weblog/2012/09/05/my-favourite-html5-features/</link>
		<comments>http://eisabainyo.net/weblog/2012/09/05/my-favourite-html5-features/#comments</comments>
		<pubDate>Wed, 05 Sep 2012 06:11:03 +0000</pubDate>
		<dc:creator>eisabai</dc:creator>
				<category><![CDATA[Snippets]]></category>
		<category><![CDATA[xHTML]]></category>

		<guid isPermaLink="false">http://eisabainyo.net/weblog/?p=1958</guid>
		<description><![CDATA[1. Geolocation 2. onLine 3. Audio and Video 4. Local Storage 5. History Geolocation Geolocation API is usually used together with Google Maps to show the current location of the device. Where would you use it? Geolocation is an essential feature for applications that needs to know information about the device&#8217;s current location such as [...]]]></description>
			<content:encoded><![CDATA[<p>1. Geolocation<br />
2. onLine<br />
3. Audio and Video<br />
4. Local Storage<br />
5. History</p>
<h3>Geolocation</h3>
<p>Geolocation API is usually used together with Google Maps to show the current location of the device. </p>
<p><strong>Where would you use it?</strong><br />
Geolocation is an essential feature for applications that needs to know information about the device&#8217;s current location such as Store Locator, Cinema Finder and Get Directions. </p>
<p><strong>Example</strong></p>
<pre>
if (navigator.geolocation) {
  navigator.geolocation.getCurrentPosition(successcalllback, errorcallback);
} else {
  errorcallback('This feature is not supported on your device.');
}

function successcalllback(position) {
   console.log(position);
}

function errorcallback(message) {
  console.warn(message);
}
</pre>
<h3>onLine</h3>
<p>This HTML5 feature checks the status of Internet connection for the current device.  </p>
<p><strong>Where would you use it?</strong><br />
It is a good practice to check if a device has an Internet connection before making an AJAX request to a web service. </p>
<p><strong>Example</strong></p>
<pre>var isonline = (navigator.onLine) ? true : false;</pre>
<h3>Audio and Video</h3>
<p>&lt;audio&gt; and &lt;video&gt; are HTML5 elements that enable audios and videos to be displayed on web pages without using a third-party plugin like flash.  </p>
<p><strong>Where would you use it?</strong><br />
When you are developing a website or a web app for smartphones, you will want to use audio and video elements to embed media as it will enable those media to be played using the device&#8217;s default players, resulting in a better performance and user-experience.  </p>
<p><strong>Example</strong></p>
<pre>
&lt;audio controls=&quot;controls&quot; autoplay=&quot;autoplay&quot;&gt;
  &lt;source src=&quot;audio.ogg&quot; type=&quot;audio/ogg&quot; /&gt;
  &lt;source src=&quot;audio.mp3&quot; type=&quot;audio/mp3&quot; /&gt;
  This feature is not supported on your device.
&lt;/audio&gt;

&lt;video width=&quot;300&quot; height=&quot;200&quot; controls=&quot;controls&quot;&gt;
  &lt;source src=&quot;video.mp4&quot; type=&quot;video/mp4&quot; /&gt;
  &lt;source src=&quot;video.ogg&quot; type=&quot;video/ogg&quot; /&gt;
  This feature is not supported on your device.
&lt;/video&gt;
</pre>
<h3>Local Storage</h3>
<p>Local Storage acts like a client-side database which your application can use to store information.  Unlike cookies, there is a lot of storage space available (5MB) and it is relatively easy to store information into and retrieve information from Local Storage. </p>
<p><strong>Where would you use it?</strong><br />
As the name suggests, Local Storage resides on the user&#8217;s local browser and is useful if you wish to remember user&#8217;s perferences and usage history.  </p>
<p><strong>Example</strong></p>
<pre>
if(typeof(Storage)!== &quot;undefined&quot;)  {
     localStorage.setItem(&quot;name&quot;, &quot;John Smith&quot;);   //save
     console.log(localStorage.getItem(&quot;name&quot;));  //retrieve
     localStorage.removeItem(&quot;name&quot;); //delete
} else {
     console.warn('This feature is not supported on your device.');
}
</pre>
<h3>History</h3>
<p>History API enables deep linking of ajax-powered pages without having to manipulate the current page&#8217;s URL.  </p>
<p><strong>Where would you use it?</strong><br />
If you have a page where content changes on user&#8217;s action without a page refresh, then History API can be used to  manipulate browser history so user can move backward and forward between actions. </p>
<p><strong>Example</strong></p>
<pre>
var pages = [
        {
            "content": "Contentforpageone",
            "photo": "image1.jpg"
        },
        {
            "content": "Contentforpagetwo",
            "photo": "image2.jpg"
        },
        {
            "content": "Contentforpagethree",
            "photo": "image3.jpg"
        }
];

function update(data) {
        $('#content').html(data.content);
        $('#image').attr('src', data.photo);
}

$(function() {
    $('.next, .prev').live('click', function(e) {
        
        var pageno = e.target.getAttribute('href').split('/').pop(),
        data = pages[pageno] || null; 
        
        update(data);
        
        // add to history
        history.pushState(data, e.target.textContent, e.target.href);
        
        e.preventDefault();

    });

    window.addEventListener('popstate', function(e) {
      update(e.state);
    });

	history.replaceState({
	  content: pages[0].content,
	  photo:  pages[0].photo
	}, document.title, document.location.href);

});
</pre>
<pre>

&lt;ul&gt;
    &lt;li&gt;&lt;a href=&quot;/0&quot; class=&quot;prev&quot;&gt;Previous&lt;/a&gt;&lt;/li&gt;
    &lt;li class=&quot;current&quot;&gt;1&lt;/li&gt;
    &lt;li&gt;&lt;a href=&quot;/2&quot; class=&quot;next&quot;&gt;Next&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div id=&quot;content&quot;&gt;&lt;/div&gt;
&lt;img src=&quot;noimage.jpg&quot; alt=&quot;&quot; id=&quot;image&quot; /&gt;
</pre>
]]></content:encoded>
			<wfw:commentRss>http://eisabainyo.net/weblog/2012/09/05/my-favourite-html5-features/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Disable wpadminbar in WordPress (no plugin)</title>
		<link>http://eisabainyo.net/weblog/2012/08/12/disable-wpadminbar-in-wordpress-no-plugin/</link>
		<comments>http://eisabainyo.net/weblog/2012/08/12/disable-wpadminbar-in-wordpress-no-plugin/#comments</comments>
		<pubDate>Sun, 12 Aug 2012 01:37:01 +0000</pubDate>
		<dc:creator>eisabai</dc:creator>
				<category><![CDATA[Snippets]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://eisabainyo.net/weblog/?p=1950</guid>
		<description><![CDATA[If you wish to disable wpadminbar in WordPress 3.1+ for a specific theme, just add the following line of code into functions.php file of your theme. No plugin installation required. add_action( 'show_admin_bar', '__return_false' );]]></description>
			<content:encoded><![CDATA[<p>If you wish to disable wpadminbar in WordPress 3.1+ for a specific theme, just add the following line of code into <code>functions.php</code> file of your theme.  No plugin installation required.  </p>
<p><code><br />
add_action( 'show_admin_bar', '__return_false' );<br />
</code></p>
]]></content:encoded>
			<wfw:commentRss>http://eisabainyo.net/weblog/2012/08/12/disable-wpadminbar-in-wordpress-no-plugin/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>A sample PhoneGap App using jQuery Mobile</title>
		<link>http://eisabainyo.net/weblog/2012/08/05/phonegap-app-using-jquery-mobile/</link>
		<comments>http://eisabainyo.net/weblog/2012/08/05/phonegap-app-using-jquery-mobile/#comments</comments>
		<pubDate>Sun, 05 Aug 2012 02:27:05 +0000</pubDate>
		<dc:creator>eisabai</dc:creator>
				<category><![CDATA[Web Development Blog]]></category>

		<guid isPermaLink="false">http://eisabainyo.net/weblog/?p=1933</guid>
		<description><![CDATA[Since I have been getting many requests, I have decided to make a simple app in PhoneGap using jQuery Mobile available for download. This sample project is for those who are fluent in HTML, Javascript and CSS and wish to get started on PhoneGap app development using web technologies. Enjoy! Download Features: - Ready-to-deploy - [...]]]></description>
			<content:encoded><![CDATA[<p>Since I have been getting many requests, I have decided to make a simple app in PhoneGap using jQuery Mobile available for download. This sample project is for those who are fluent in HTML, Javascript and CSS and wish to get started on PhoneGap app development using web technologies. Enjoy!  </p>
<div class="download">
<h3>Download</h3>
<form id="edd_purchase_1930" action="" method="POST"><div class="edd_purchase_submit_wrapper"><span class="edd_button edd_add_to_cart_wrap edd_gray"><span class="edd_button_outer"><span class="edd_button_inner"><input type="submit" class="edd_button_text edd-submit edd-add-to-cart" name="edd_purchase_download" value="PhoneGap App using jQuery Mobile $15.00" data-action="edd_add_to_cart" data-download-id="1930"/></span></span></span><a href="http://eisabainyo.net/weblog/checkout/" class="edd_go_to_checkout edd_button edd_gray" style="display:none;"><span class="edd_button_outer"><span class="edd_button_inner"><span class="edd_button_text"><span>Checkout</span></span></span></span></a><img src="http://eisabainyo.net/weblog/wp-content/plugins/easy-digital-downloads/includes/images/loading.gif" class="edd-cart-ajax" style="display: none;"/>&nbsp;<span style="display:none;" class="edd-cart-added-alert">added to your cart</span></div><!--end .edd_purchase_submit_wrapper--><input type="hidden" name="download_id" value="1930"><input type="hidden" name="edd_action" value="add_to_cart"></form><!--end #edd_purchase_1930--></div>
<p><strong>Features:</strong><br />
- Ready-to-deploy<br />
- Built on phonegap-1.4.1 and JQuery Mobile 1.0.1<br />
- Easy to customise code base<br />
- Custom theming for jQuery Mobile<br />
- Google Fonts API for custom fonts<br />
- 180+ lines of CSS which can be customised to your desired look and feel<br />
- Minimal use of images by utilising CSS3<br />
- Internet connection check before displaying every screen.  Handy if you plan to use a REST API that connects to a web server<br />
- 4 pages, ready to add your own content</p>
<p><img src="http://eisabainyo.net/weblog/wp-content/uploads/2012/08/screenshot.jpg" alt="" title="Screenshot" width="480" height="872" class="alignnone size-full wp-image-1941" /><br />
Screenshot</p>
<p><img src="http://eisabainyo.net/weblog/wp-content/uploads/2012/08/code.jpg" alt="" title="Code snippets" width="480" height="1000" class="alignnone size-full wp-image-1940" /><br />
Code snippets</p>
<div class="download">
<h3>Download</h3>
<form id="edd_purchase_1930" action="" method="POST"><div class="edd_purchase_submit_wrapper"><span class="edd_button edd_add_to_cart_wrap edd_gray"><span class="edd_button_outer"><span class="edd_button_inner"><input type="submit" class="edd_button_text edd-submit edd-add-to-cart" name="edd_purchase_download" value="PhoneGap App using jQuery Mobile $15.00" data-action="edd_add_to_cart" data-download-id="1930"/></span></span></span><a href="http://eisabainyo.net/weblog/checkout/" class="edd_go_to_checkout edd_button edd_gray" style="display:none;"><span class="edd_button_outer"><span class="edd_button_inner"><span class="edd_button_text"><span>Checkout</span></span></span></span></a><img src="http://eisabainyo.net/weblog/wp-content/plugins/easy-digital-downloads/includes/images/loading.gif" class="edd-cart-ajax" style="display: none;"/>&nbsp;<span style="display:none;" class="edd-cart-added-alert">added to your cart</span></div><!--end .edd_purchase_submit_wrapper--><input type="hidden" name="download_id" value="1930"><input type="hidden" name="edd_action" value="add_to_cart"></form><!--end #edd_purchase_1930--></div>
<h3>Useful Links</h3>
<ul>
<li><a href="https://github.com/phonegap/phonegap/wiki/">PhoneGap Wiki</a></li>
<li><a href="http://docs.phonegap.com/en/2.0.0/guide_getting-started_index.md.html#Getting%20Started%20Guides">Getting Started Guides for PhoneGap</a></li>
<li><a href="http://phonegap.com/developer">PhoneGap Developer Portal</a></li>
<li><a href="http://jquerymobile.com/">jQuery Mobile</a></li>
<li><a href="http://jquerymobile.com/demos/1.1.1/">jQuery Mobile Documentation</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://eisabainyo.net/weblog/2012/08/05/phonegap-app-using-jquery-mobile/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Developing an HTML5 iPhone app using jQuery mobile &amp; PhoneGap – Part II</title>
		<link>http://eisabainyo.net/weblog/2012/03/24/developing-an-html5-iphone-app-using-jquery-mobile-phonegap-%e2%80%93-part-ii/</link>
		<comments>http://eisabainyo.net/weblog/2012/03/24/developing-an-html5-iphone-app-using-jquery-mobile-phonegap-%e2%80%93-part-ii/#comments</comments>
		<pubDate>Sat, 24 Mar 2012 10:01:49 +0000</pubDate>
		<dc:creator>eisabai</dc:creator>
				<category><![CDATA[Web Development Blog]]></category>

		<guid isPermaLink="false">http://eisabainyo.net/weblog/?p=1888</guid>
		<description><![CDATA[Continuing from Developing an HTML5 iPhone app using jQuery mobile &#038; PhoneGap – Part I The App Structure The following is the app folder structure. As mentioned in Part I, we used jQuery and jQuery mobile as the mobile javascript frameworks for the colour match app. - www -- js --- jquerymobile.js --- colourpicker --- [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://eisabainyo.net/weblog/2012/03/15/developing-an-html5-iphone-app-using-jquery-mobile-phonegap-part-i/">Continuing from Developing an HTML5 iPhone app using jQuery mobile &#038; PhoneGap – Part I</a> </p>
<h3>The App Structure</h3>
<p>The following is the app folder structure.  As mentioned in <a href="http://eisabainyo.net/weblog/2012/03/15/developing-an-html5-iphone-app-using-jquery-mobile-phonegap-part-i/">Part I</a>, we used jQuery and jQuery mobile as the mobile javascript frameworks for the <a href="http://itunes.apple.com/us/app/colour-match/id507090391?ls=1&#038;mt=8">colour match app</a>. </p>
<pre>
- www
-- js
--- jquerymobile.js
--- colourpicker
--- jquery.js
--- script.js
-- css
--- images
- phonegap.js
- index.html
- results.html
- details.html
- favourites.html
- picker.html
- popular.tml
- about.html
- plugins
....
</pre>
<p>The app structure for www folder is very similar to a website folder structure.  In fact, you can basically take www folder and upload it onto a web server to run the app as a web app.  The structure is very straight forward; javascript files in JS folder, CSS and presentation images in CSS folder and all the templates in the root folder.  phonegap.js is the Javascript file that comes with PhoneGap and is necessary in order to use PhoneGap APIs and plugins.  </p>
<p>The components from jQuery mobile used within the app are Single page template, Header bars,  Buttons, Layout grids, Select menus, and List views.  We created a custom theme in CSS so the look and feel of those components are customised for the app.  </p>
<h3>Troubleshooting XCode/PhoneGap Issues</h3>
<p>We encountered a few issues with XCode and PhoneGap during development. </p>
<p><strong>1. Unable to talk to web service APIs</strong></p>
<p>When the app was running as a web app, everything was working well, but as soon as we put it onto XCode, the colour picker no longer worked &#8211; it didn&#8217;t return any result. This was caused by PhoneGap file download restriction and to resolve the issue, the following values in PhoneGap.plist file were updated: </p>
<pre>
OpenAllWhitelistURLsInWebView: YES
ExternalHosts
 - thedomainforapi.com
</pre>
<p><strong>2. PhoneGap APIs and Plugins were not working</strong></p>
<p>We were using a few PhoneGap APIs and Plugins but some of them were not working at all.  It took us a while to isolate the issue, but the problem was because we were using Prototype Javascript Framework for Colour Picker and <a href="http://wiki.phonegap.com/w/page/31995581/Using%20PhoneGap%20with%20prototype%20javascript">Prototype and PhoneGap don&#8217;t work together</a>.  Rather than trying to hack Prototype Framework, we removed it altogether and refactored the Colour Picker.  </p>
<p><strong>3. Some PhoneGap plugins were throwing ARC errors when compiling</strong></p>
<p><a href="http://www.leesilver.net/1/post/2011/8/disabling-arc-on-certain-files-in-xcode.html">Disabling ARC</a> for specific files did the trick. </p>
<h3>Installing certificates &#038; provisioning profiles</h3>
<p>Once we have the code ready and tested on Simulator, we wanted to make sure it worked well on the device as well.  In order to deploy the app onto a real device, we had to install a provisioning profile and a certificate.  The process requires a few steps, but if you follow <a href="http://www.techotopia.com/index.php/Testing_Apps_on_the_iPhone_%E2%80%93_Developer_Certificates_and_Provisioning_Profiles">this article</a>, you should not have any problem. For installing certificate and profile for distribution (ie: submitting to the app store), we followed <a href="http://www.adobe.com/devnet/dreamweaver/articles/phonegap-mobile-app-pt7.html">this article</a>. (Thanks, David!)</p>
<h3>iTunes App Store Submission Process</h3>
<p>Surprisingly, the process of submitting the app to iTunes App Store wasn&#8217;t as hard as installing certificates &#038; provision profiles.  Refer to <a href="http://www.slideshare.net/nefairious/ansca-app-store-presentation">slide 32+ of this presentation</a> for screenshots. The slides are a bit dated as we didn&#8217;t have to download Application Loader separately, it already came with XCode 4. </p>
<p><strong>Finally&#8230; how long did it take to get it approved? </strong></p>
<p>We submitted the app on Saturday (midnight Friday) but we had to cancel the first submission and resubmit the app again on Tuesday due to some last minute changes.  The app was approved the following Monday around 4am (Australian Eastern Standard Time Zone (AEST)).  We received an email from the app store around 2am which said the app was under review and at 4am, we received another email saying the app was approved and ready for sale. Reading <a href="https://developer.apple.com/appstore/guidelines.html">the guidelines</a> before submitting the app to ensure the app complies with the App Store Review Guidelines must have helped us. </p>
<p>Feel free to <a href="http://itunes.apple.com/us/app/colour-match/id507090391?ls=1&amp;mt=8">download the app</a> from the app store to see it in action. </p>
<p><a href="http://itunes.apple.com/us/app/colour-match/id507090391?ls=1&amp;mt=8"><img src="http://eisabainyo.net/weblog/wp-content/uploads/2012/03/app1.jpg" alt="" title="Colour Match Screenshot"></a></p>
<p>If you are interested in getting an <a href="http://www.anansi.com.au/work.php">iPhone/iPad application</a> that uses web technologies for your company or organisation,  <a href="http://www.anansi.com.au/contact.php">contact us</a> at <a href="http://www.anansi.com.au/">Anansi Web Development</a> to find out how we may be able to help you.</p>
<h3>Other useful articles</h3>
<p>We have written a few articles in the past on developing for iPhone and iPad and working with PhoneGap which you might find useful:</p>
<ul>
<li><a href="http://eisabainyo.net/weblog/2012/01/24/embed-a-youtube-video-iframe-in-phonegap-app/">Embed a YouTube video iframe in a phonegap app</a></li>
<li><a href="http://eisabainyo.net/weblog/2011/06/25/how-to-post-on-facebook-wall-on-iphone-and-android-using-phonegap-plugins/">How to ‘Post on Facebook Wall’ on iPhone and Android using PhoneGap plugins</a></li>
<li><a href="http://eisabainyo.net/weblog/2011/06/23/10-useful-javascript-snippets-for-your-mobile-site/">10 Useful Javascript Snippets for your mobile websites</a></li>
<li><a href="http://eisabainyo.net/weblog/2011/06/07/how-to-use-hi-res-images-for-web-apps-in-iphone4/">How to use hi-res images in web apps for iPhone4</a></li>
<li><a href="http://eisabainyo.net/weblog/2011/01/31/top-10-jquery-mobile-code-snippets-that-you-need-to-know/">Top 10 jQuery Mobile Code Snippets that you need to know</a></li>
<li><a href="http://eisabainyo.net/weblog/2010/11/08/five-important-steps-into-iphone-app-development-for-beginners/">Five Important Steps into iPhone App Development for Beginners</a></li>
<li><a href="http://eisabainyo.net/weblog/2010/05/30/designing-and-optimising-websites-for-ipad/">Designing and Optimising Websites for iPad</a></li>
<li><a href="http://eisabainyo.net/weblog/2010/03/05/how-to-disable-text-auto-correction-in-iphone-web-app/">How to disable text auto correction in iPhone web app</a></li>
<li><a href="http://eisabainyo.net/weblog/2009/10/27/tips-for-iphone-web-app-development/">Tips for iPhone Web App Development </a>   </li>
</ul>
<h3>Sample PhoneGap Project</h3>
<p>If you would like to get a sample PhoneGap project (uses jQuery mobile), you can download <a href="http://eisabainyo.net/weblog/2012/08/05/phonegap-app-using-jquery-mobile/">PhoneGap App using jQuery Mobile</a> source code. </p>
]]></content:encoded>
			<wfw:commentRss>http://eisabainyo.net/weblog/2012/03/24/developing-an-html5-iphone-app-using-jquery-mobile-phonegap-%e2%80%93-part-ii/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Developing an HTML5 iPhone app using jQuery mobile &amp; PhoneGap &#8211; Part I</title>
		<link>http://eisabainyo.net/weblog/2012/03/15/developing-an-html5-iphone-app-using-jquery-mobile-phonegap-part-i/</link>
		<comments>http://eisabainyo.net/weblog/2012/03/15/developing-an-html5-iphone-app-using-jquery-mobile-phonegap-part-i/#comments</comments>
		<pubDate>Thu, 15 Mar 2012 10:36:53 +0000</pubDate>
		<dc:creator>eisabai</dc:creator>
				<category><![CDATA[Web Development Blog]]></category>

		<guid isPermaLink="false">http://eisabainyo.net/weblog/?p=1868</guid>
		<description><![CDATA[Last week, we submitted an iPhone app to iTunes app store. This week, it was approved by Apple and the app is now available for download from the app store. Since everyone knows that HTML5 and app development is the future of mobile space, we&#8217;d like to share with you our experience of developing an [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://itunes.apple.com/us/app/colour-match/id507090391?ls=1&#038;mt=8"><img src="http://eisabainyo.net/weblog/wp-content/uploads/2012/03/app1.jpg" alt="" title="Colour Match Screenshot"  /></a></p>
<p>Last week, <a href="http://anansi.com.au">we</a> submitted an <a href="http://itunes.apple.com/us/app/colour-match/id507090391?ls=1&#038;mt=8">iPhone app</a> to iTunes app store.  This week, it was approved by Apple and the app is now available for download from the app store.   Since everyone knows that HTML5 and app development is the future of mobile space, we&#8217;d like to share with you our experience of developing an HTML5 iPhone app using jQuery mobile &#038; PhoneGap.  </p>
<p><img src="http://eisabainyo.net/weblog/wp-content/uploads/2012/03/app4.jpg" alt="" title="Colour Match Screenshot" width="200<br />
"  /> <img src="http://eisabainyo.net/weblog/wp-content/uploads/2012/03/app2.jpg" alt="" title="Colour Match Screenshot" width="200<br />
"  /> <img src="http://eisabainyo.net/weblog/wp-content/uploads/2012/03/app3.jpg" alt="" title="Colour Match Screenshot" width="200<br />
" /></p>
<p><strong>About the app<br />
</strong>The app is called &#8220;<a href="http://itunes.apple.com/us/app/colour-match/id507090391?ls=1&#038;mt=8">Colour Match</a>&#8221; and the purpose of the app is to allow users to pick any colour using a colour picker tool and display clothing &#038; accessories that match the colour from <a href="http://onlineshoppingusa.com.au">Online Shopping USA</a> database.   Features of the app include a colour picker, a selection of most popular colours for easy browsing, favourites where users can save their favourite products and email, facebook and twitter sharing.  </p>
<p><strong>Technologies used<br />
</strong>The technologies used for the app are:<br />
- <a href="http://jquery.com">jQuery 1.7.1</a> +<a href="http://jquerymobile.com/"> jQuery Mobile 1.0.1</a> (Javascript framework)<br />
- <a href="http://phonegap.com">PhoneGap 1.4.1</a><br />
- HTML5 (template structure &#038; Web SQL database storage)<br />
- CSS3 (webkit animations and layout)<br />
- PHP for web services (a few custom web services were written to obtain data from a mySQL database that resides on web server)</p>
<p><strong>PhoneGap plugins used<br />
</strong>We used the following <a href="https://github.com/phonegap/phonegap-plugins">PhoneGap plugins</a> to provide native features that are not possible to implement using Javascript/HTML.<br />
- Twitter<br />
- ChildBrowser<br />
- EmailComposer </p>
<p><strong>Development timeline</strong><br />
It look us about a week to come up with the concept and fine-tune requirements before starting the actual development.  The HTML5 + CSS development took less than a week as jQuery mobile made it pretty easy to have a working functional app within a few days.  The design of the app took a few days.  Most of the development time was spent on writing web services in PHP and writing a system that automatically scans images and picks the most appropriate colour.  It took us half a day to set up Xcode, PhoneGap, provisional certificates etc (mind you, this wasn&#8217;t the first time we did this, but it still took us some time because we are not very familiar with a Mac computer). Then one full day was spent integrating and intalling PhoneGap plugins into the app, and finally submitting it to iTunes.  All up, it took about 4 weeks from the start of the project to the day the app became available on iTunes app store.  </p>
<p>&#8212; </p>
<p><a href="http://eisabainyo.net/weblog/2012/03/24/developing-an-html5-iphone-app-using-jquery-mobile-phonegap-%e2%80%93-part-ii/">Part II</a> will cover more technical details such as the app structure, submission process to iTunes, installing certificates and troubleshooting XCode issues.</p>
<h3>Sample PhoneGap Project</h3>
<p>If you would like to get a sample PhoneGap project (uses jQuery mobile), you can download <a href="http://eisabainyo.net/weblog/2012/08/05/phonegap-app-using-jquery-mobile/">PhoneGap App using jQuery Mobile</a> source code. </p>
]]></content:encoded>
			<wfw:commentRss>http://eisabainyo.net/weblog/2012/03/15/developing-an-html5-iphone-app-using-jquery-mobile-phonegap-part-i/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Embed a YouTube video iframe in a phonegap app</title>
		<link>http://eisabainyo.net/weblog/2012/01/24/embed-a-youtube-video-iframe-in-phonegap-app/</link>
		<comments>http://eisabainyo.net/weblog/2012/01/24/embed-a-youtube-video-iframe-in-phonegap-app/#comments</comments>
		<pubDate>Tue, 24 Jan 2012 08:29:05 +0000</pubDate>
		<dc:creator>eisabai</dc:creator>
				<category><![CDATA[Tutorials]]></category>

		<guid isPermaLink="false">http://eisabainyo.net/weblog/?p=1858</guid>
		<description><![CDATA[This tutorial will teach you how to embed a YouTube video iframe in a phonegap app. In this tutorial, I am using phonegap version 1.2.0. Youtube will automatically convert the flash video into HTML5 video tag so you don&#8217;t have to worry about encoding the video. HTML: Go to YouTube and get embed code for [...]]]></description>
			<content:encoded><![CDATA[<p>This tutorial will teach you how to embed a YouTube video iframe in a phonegap app.  In this tutorial, I am using phonegap version 1.2.0.   Youtube will automatically convert the flash video into HTML5 video tag so you don&#8217;t have to worry about encoding the video.  </p>
<p><strong>HTML:</strong></p>
<p>Go to YouTube and get embed code for the video that you wish to include into your phonegap app.   Note that not all YouTube videos can be played from a phonegap app due to restrictions placed in the videos.  </p>
<pre>

&lt;html&gt;
	&lt;head&gt;
		&lt;title&gt;YouTube video&lt;/title&gt;
		&lt;meta name=&quot;viewport&quot; content=&quot;width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;&quot; /&gt;
		&lt;meta name=&quot;apple-mobile-web-app-capable&quot; content=&quot;yes&quot; /&gt;
		&lt;meta name=&quot;apple-mobile-web-app-status-bar-style&quot; content=&quot;black&quot; /&gt;
		&lt;script src=&quot;phonegap-1.2.0.js&quot;&gt;&lt;/script&gt;
	&lt;/head&gt;
	&lt;body&gt;
       
        &lt;iframe width=&quot;560&quot; height=&quot;315&quot; src=&quot;http://www.youtube.com/embed/9HDeEbJyNK8&quot; frameborder=&quot;0&quot; allowfullscreen&gt;&lt;/iframe&gt;
        
    &lt;/body&gt;
&lt;/html&gt;
</pre>
<p><strong>Changes to PhoneGap.plist</strong></p>
<p>Change/add the following values in PhoneGap.plist file of your app.  </p>
<pre>
MediaPlaybackRequiresUserAction: NO
AllowInlineMediaPlayback: YES
OpenAllWhitelistURLsInWebView: YES
ExternalHosts
          *.youtube.com
          *.ytimg.com
</pre>
<p><img src="http://eisabainyo.net/weblog/wp-content/uploads/2012/01/phonegap-plist.jpg" alt="" title="phonegap.plist" width="500" height="313" class="alignnone size-full wp-image-1859" /></p>
<p>And that&#8217;s it!  You should now be able to run the app on Simulator or an iOS device and be able to play the youtube video using the default video player that comes with the device (for example, QuickTime player for iPhone and iPad).</p>
<p>If you would like to get a sample phonegap project (uses jQuery mobile), you can download <a href="http://eisabainyo.net/weblog/2012/08/05/phonegap-app-using-jquery-mobile/">PhoneGap App using jQuery Mobile</a> source code. </p>
]]></content:encoded>
			<wfw:commentRss>http://eisabainyo.net/weblog/2012/01/24/embed-a-youtube-video-iframe-in-phonegap-app/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Display a location-aware google map on page load with jQuery mobile</title>
		<link>http://eisabainyo.net/weblog/2012/01/14/display-location-aware-google-map-on-page-load-with-jquery-mobile/</link>
		<comments>http://eisabainyo.net/weblog/2012/01/14/display-location-aware-google-map-on-page-load-with-jquery-mobile/#comments</comments>
		<pubDate>Sat, 14 Jan 2012 09:07:29 +0000</pubDate>
		<dc:creator>eisabai</dc:creator>
				<category><![CDATA[Javascript]]></category>
		<category><![CDATA[Snippets]]></category>

		<guid isPermaLink="false">http://eisabainyo.net/weblog/?p=1851</guid>
		<description><![CDATA[The following snippet of code will display a google map with user&#8217;s default location on jQuery mobile page if location services is enabled. Otherwise, it will use predefined lat and long values to create the map. The code uses jQuery mobile pagecreate event. A little info on jQuery mobile pagecreate event: pagecreate Triggered when the [...]]]></description>
			<content:encoded><![CDATA[<p>The following snippet of code will display a google map with user&#8217;s default location on jQuery mobile page if location services is enabled.  Otherwise, it will use predefined lat and long values to create the map.   The code uses jQuery mobile <a href="http://jquerymobile.com/demos/1.0/docs/api/events.html">pagecreate event</a>.  </p>
<p>A little info on jQuery mobile pagecreate event: </p>
<blockquote><p><strong>pagecreate</strong><br />
Triggered when the page has been created in the DOM (via ajax or other) but before all widgets have had an opportunity to enhance the contained markup. This event is most useful for user&#8217;s wishing to create their own custom widgets for child markup enhancement as the jquery mobile widgets do.</p>
<p><code>$( '#aboutPage' ).live( 'pagecreate',function(event){<br />
  ( ":jqmData(role='sweet-plugin')" ).sweetPlugin();<br />
});</code>
</p></blockquote>
<p>And the snippets:</p>
<p><strong>Javascript</strong></p>
<pre>
function initialize(lat,lng) {
	var latlng = new google.maps.LatLng(lat, lng);

	var myoptions = {
		zoom: 12,
		center: latlng,
		disableDefaultUI: true,
		mapTypeId: google.maps.MapTypeId.ROADMAP
	};
	
	var map = new google.maps.Map(document.getElementById("googlemap"),myoptions);
	
	var icon = new google.maps.MarkerImage('images/marker.png',
			new google.maps.Size(20, 20), // size
			new google.maps.Point(0, 0), // origin
			new google.maps.Point(20, 20) // anchor
		);
	
	var mymarker = new google.maps.Marker({
		position: latlng,
		map: map,
		icon: icon
	});
}
</pre>
<pre>
$('.page-map').live("pagecreate", function() {
        var lat = -33.887418, lng = 151.17403;
	if(navigator.geolocation) {
		navigator.geolocation.getCurrentPosition(function(position){
			initialize(position.coords.latitude,position.coords.longitude);
		}, function() { console.log('Error with getCurrentPosition'); });
	} else {
                // predefined location
		initialize(lat, lng);
	}
});
</pre>
<p><strong>HTML</strong></p>
<pre>
&lt;div data-role=&quot;page&quot; class=&quot;page-map&quot;&gt;

	&lt;div data-role=&quot;header&quot;&gt;
		&lt;h1&gt;Google Map&lt;/h1&gt;
	&lt;/div&gt;&lt;!-- /header --&gt;

	&lt;div data-role=&quot;content&quot;&gt;	
		 &lt;div id=&quot;googlemap&quot;&gt;&lt;/div&gt;
	&lt;/div&gt;&lt;!-- /content --&gt;
	
	&lt;div data-role=&quot;footer&quot;&gt;
		&lt;h4&gt;Footer content&lt;/h4&gt;
	&lt;/div&gt;&lt;!-- /footer --&gt;
	
&lt;/div&gt;&lt;!-- /page --&gt;
</pre>
]]></content:encoded>
			<wfw:commentRss>http://eisabainyo.net/weblog/2012/01/14/display-location-aware-google-map-on-page-load-with-jquery-mobile/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Holiday Sales for Web Designers and Developers</title>
		<link>http://eisabainyo.net/weblog/2011/12/27/holiday-sale-for-web-designers-and-developers/</link>
		<comments>http://eisabainyo.net/weblog/2011/12/27/holiday-sale-for-web-designers-and-developers/#comments</comments>
		<pubDate>Tue, 27 Dec 2011 12:21:07 +0000</pubDate>
		<dc:creator>eisabai</dc:creator>
				<category><![CDATA[Web Development Blog]]></category>
		<category><![CDATA[WWW]]></category>

		<guid isPermaLink="false">http://eisabainyo.net/weblog/?p=1838</guid>
		<description><![CDATA[We&#8217;ve put together some of the best holiday sales for web designers and developers. Enjoy! BigCommerce BigCommerce is the all-in-one, #1 rated ecommerce service for selling products online with over 10,000 happy clients and growing daily. Special offer: Receive up to $100 in Google AdWords credit when you purchase a BigCommerce plan. No coupon required. [...]]]></description>
			<content:encoded><![CDATA[<div style="text-align: center"><a href="http://eisabainyo.net/weblog/2011/12/27/holiday-sale-for-web-designers-and-developers/"><img src="http://eisabainyo.net/weblog/wp-content/uploads/2011/12/sale.jpg" alt="" title="Sale" width="397" height="256"/></a></div>
<p style="font-style: italic; font-family:Arial, Sans Serif; font-size: 13px;">We&#8217;ve put together some of the best holiday sales for web designers and developers.   Enjoy!</p>
<div style="padding-top: 15px; font-family:Arial, Sans Serif; font-size: 13px;"><a href="http://bit.ly/rs9dDc" style="font-family:Arial, Sans Serif; font-size: 15px; color: #444; font-weight: bold;">BigCommerce</a><br />
BigCommerce is the all-in-one, #1 rated ecommerce service for selling products online with over 10,000 happy clients and growing daily.<br />
<em>Special offer: </em>Receive up to $100 in Google AdWords credit when you purchase a BigCommerce plan.  No coupon required. </div>
<div style="padding-top: 15px; font-family:Arial, Sans Serif; font-size: 13px;"><a href="http://bit.ly/sHAbxO" style="font-family:Arial, Sans Serif; font-size: 15px; color: #444; font-weight: bold;">Blue Host (Linux, Apache, PHP, MySQL Hosting)</a><br />
Web Hosting at $6.95 per month with UNLIMITED Domain Hosting &#038; UNLIMITED GB Hosting Space<br />
<em>Special offer:</em> $75 Free Google Credit and a free domain name</div>
<div style="padding-top: 15px; font-family:Arial, Sans Serif; font-size: 13px;"><a href="http://bit.ly/snxm5m" style="font-family:Arial, Sans Serif; font-size: 15px; color: #444; font-weight: bold;">Easy CGI (ASP.NET &#038; VPS Hosting)</a><br />
Shared ASP.NET hosting at $7.96.  VPS hosting is also available. </div>
<div style="padding-top: 15px; font-family:Arial, Sans Serif; font-size: 13px;"><a href="http://bit.ly/tXXbBl" style="font-family:Arial, Sans Serif; font-size: 15px; color: #444; font-weight: bold;">Godaddy</a><br />
Domain Names and SSL Certificates<br />
<em>Special offer: </em><a href="http://eisabainyo.net/weblog/2011/07/04/godaddy-coupons-2011/">Godaddy Coupon codes</a></div>
<div style="padding-top: 15px; font-family:Arial, Sans Serif; font-size: 13px;"><a href="http://bit.ly/rpvaMm" style="font-family:Arial, Sans Serif; font-size: 15px; color: #444; font-weight: bold;">Zend Studio &#8211; Professional IDE for PHP Developers</a><br />
Zend Studio is the leading professional-grade PHP development environment, designed to maximize developer productivity by enabling you to develop and maintain code faster, solve application problems quickly and improve team collaboration.<br />
<em>Special offer:</em> <a href="http://bit.ly/rpvaMm">Free trial</a></div>
<div style="padding-top: 15px; font-family:Arial, Sans Serif; font-size: 13px;"><a href="http://bit.ly/rPolFU" style="font-family:Arial, Sans Serif; font-size: 15px; color: #444; font-weight: bold;">99 Designs</a><br />
Start a Design Contest now for your choice of wonderful and unique designs. Preview before you buy. </div>
<div style="padding-top: 15px; font-family:Arial, Sans Serif; font-size: 13px;"><a href="http://eisabainyo.net/view/themeforest" style="font-family:Arial, Sans Serif; font-size: 15px; color: #444; font-weight: bold;">Website templates</a><br />
A one-stop shop for premium WordPress themes, web templates and mobile themes<br />
<a href="http://themeforest.net/category/wordpress?sort_by=average_rating&#038;ref=eisabai&#038;categories=wordpress&#038;page=1">WordPress</a>, <a href="http://themeforest.net/category/cms-themes/drupal?sort_by=average_rating&#038;ref=eisabai&#038;categories=cms-themes%2Fdrupal&#038;page=1">Drupal</a>, <a href="http://themeforest.net/category/cms-themes/expressionengine?sort_by=average_rating&#038;ref=eisabai&#038;categories=cms-themes%2Fexpressionengine&#038;page=1">Expression Engine</a>, <a href="http://themeforest.net/category/ecommerce/opencart?sort_by=average_rating&#038;ref=eisabai&#038;categories=ecommerce%2Fopencart&#038;page=1">Open Cart</a> and many more.</div>
]]></content:encoded>
			<wfw:commentRss>http://eisabainyo.net/weblog/2011/12/27/holiday-sale-for-web-designers-and-developers/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Book Review: Master Mobile Web Apps with jQuery Mobile</title>
		<link>http://eisabainyo.net/weblog/2011/09/03/book-review-master-mobile-web-apps-with-jquery-mobile/</link>
		<comments>http://eisabainyo.net/weblog/2011/09/03/book-review-master-mobile-web-apps-with-jquery-mobile/#comments</comments>
		<pubDate>Sat, 03 Sep 2011 09:04:57 +0000</pubDate>
		<dc:creator>eisabai</dc:creator>
				<category><![CDATA[Web Development Blog]]></category>

		<guid isPermaLink="false">http://eisabainyo.net/weblog/?p=1824</guid>
		<description><![CDATA[&#8220;Master Mobile Web Apps with jQuery Mobile&#8221; is an e-book on jQuery Mobile written by Matt Doyle, an experienced technical author and coder. According to the author, the book is intended for web development and design professionals who want to start building apps and therefore a basic knowledge of web technologies including HTML, CSS, JavaScript [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://store.elated.com/"><img src="http://eisabainyo.net/weblog/wp-content/uploads/2011/09/master-mobile-web-apps-with-jqm.png" alt="" title="Master Mobile Web Apps with jQuery Mobile" width="200" class="alignnone size-full wp-image-1825" style="float: left; margin-right: 5px; " /></a>&#8220;<a href="http://store.elated.com/">Master Mobile Web Apps with jQuery Mobile</a>&#8221; is an e-book on jQuery Mobile written by Matt Doyle, an experienced technical author and coder.  According to the author, the book is intended for web development and design professionals who want to start building apps and therefore a basic knowledge of web technologies including HTML, CSS, JavaScript and web servers is required.   </p>
<p>The book is written for jQuery Mobile Beta 2 which is the current version of <a href="http://jquerymobile.com/">jQuery Mobile</a> and there are 3 parts to the book. </p>
<p><strong>Part I</strong> covers the basics you need to know about jQuery Mobile.  The thing I like about it is that it contains a lot of sample code, so if you like to create a website while reading the book, you can do so easily with the help of sample code.  The tutorials in Part I is great for someone who wants to just get a simple mobile site up and running without wanting to worry too much about the UI and the nitty gritty details.</p>
<p><strong>Part II</strong> focuses on the fundamentals of building user interfaces with jQuery Mobile. It covers dialogs, forms, navigations, lists, header, footer and other essential elements of a website. I particularly liked the &#8220;Creating Forms&#8221; chapter because it contains a lot of information about different input elements and attributes that you can use in jQuery Mobile. Forms are one of the most trickest elements in web designs and it is very helpful to have the whole chapter dedicated to this subject.  If you are looking to create a mobile web application that uses forms, this chapter is a must-read.  </p>
<p><strong>Part III</strong> is titled Beyond the Basics and it contains 3 chapters; themeing jQuery Mobile, the jQuery Mobile API and a complete web app example.  As you probably already knew, jQuery Mobile comes with 5 default themes that you can choose from, but more often than not, you need to create a custom theme that suits your website or web app.  Themeing jQuery Mobile chapter explains just how you can do that with an example red theme.  The jQuery Mobile API is another favourite chapter of mine because when I was developing in jQuery Mobile a few months ago, there weren&#8217;t a lot of resources available on how the API works, in particular, the methods and events available.  It could have saved me a lot of time if only I had this book back then.  The last chapter in Part III is a complete web app example.  The web app example uses PHP5 for the back end and as the title suggest, it is a complete app, meaning you can take the example code, upload it to your web server and have a fully functional web app in jQuery Mobile.  </p>
<p>Overall, the book is an excellent book for developers who want to dive into mobile app development with jQuery Mobile.  There are a lot of screenshots, code examples and references to help you get started.  What I like most about the book is that it&#8217;s written by a developer for developers which means the tutorials are easy to follow and will get you up to speed on the basics of app development in no time.</p>
<p>&#8212;&#8212;&#8212;&#8211;</p>
<p><strong>Update (October 2012)</strong>:   The 3rd edition of the book is now available for purchase.  It&#8217;s fully updated for jQuery Mobile 1.1 and 1.2, and covers everything from the new transitions through to the new popup widget, data attributes, and the latest versions of PhoneGap and XCode. </p>
<h3>What&#8217;s new in the latest edition?</h3>
<p>- Chapter 3: Covers the 2 new transitions, turn and flow, as well as the new transition system</p>
<p>- Chapter 6: The new main section on popups (about 2/3 of the chapter)</p>
<p>- Chapter 7: Covers the new data-mini attribute for mini form elements, as well as improvements to sliders</p>
<p>- Chapter 8: The section on the listviewbeforefilter event</p>
<p>- Chapter 9: The data-collapsed-icon and data-expanded-icon attributes, and collapsible listviews</p>
<p>- Chapter 11: Includes a lot of the new jQuery Mobile settings, as well as the new loading spinner and loading() method</p>
<p>- Chapter 13: Revamped &#8220;CityChums&#8221; app so it runs more smoothly, plus it&#8217;s updated for the latest versions of PhoneGap and Xcode, and the iPhone 5 display</p>
<p>&#8212;&#8212;&#8212;&#8211;</p>
<h3>Sample PhoneGap Project</h3>
<p>If you would like to get a sample PhoneGap project (uses jQuery mobile), you can download <a href="http://eisabainyo.net/weblog/2012/08/05/phonegap-app-using-jquery-mobile/">PhoneGap App using jQuery Mobile</a> source code. </p>
]]></content:encoded>
			<wfw:commentRss>http://eisabainyo.net/weblog/2011/09/03/book-review-master-mobile-web-apps-with-jquery-mobile/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
