<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xml:base="http://developers.pando.com" xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
 <title>Pando Developer Tools - Is Pando Installed? - Comments</title>
 <link>http://developers.pando.com/pando-installed</link>
 <description>Comments for &quot;Is Pando Installed?&quot;</description>
 <language>en</language>
<item>
 <title>Soon I&#039;ll write up an</title>
 <link>http://developers.pando.com/pando-installed#comment-79</link>
 <description>&lt;p&gt;Soon I&#039;ll write up an example implementation that uses this service within Drupal, to create  a customized download process.&lt;/p&gt;
</description>
 <pubDate>Tue, 24 Apr 2007 10:43:28 -0400</pubDate>
 <dc:creator>scott</dc:creator>
 <guid isPermaLink="false">comment 79 at http://developers.pando.com</guid>
</item>
<item>
 <title>Is Pando Installed?</title>
 <link>http://developers.pando.com/pando-installed</link>
 <description>&lt;p&gt;&lt;strong&gt;Update:&lt;/strong&gt; In most cases, the PandoAPI javascript method for detecting Pando&#039;s installed status would be preferable to this approach.  Here is a &lt;a href=&quot;/using-pandoapi-js-installed-cookie-check&quot;&gt;detailed example using javascript&lt;/a&gt;.
&lt;/p&gt;
&lt;p&gt;In many cases, it&#039;s helpful to know whether a user has Pando installed or not, to determine what to display on a particular web page containing Pando downloads or channel subscriptions, for example; and to better explain to your sites visitors how to acquire Pando if they don&#039;t already have it.  
&lt;/p&gt;

&lt;h3&gt;The Pando &quot;Installed&quot; Cookie&lt;/h3&gt;
&lt;p&gt;
For our own web sites, we use a browser cookie to track whether a user has Pando installed or not.  This cookie gets set in a user&#039;s default browser when they install Pando, and is set to never expire.  The cookie&#039;s key/name is &quot;installed&quot; and value is set to &quot;yes&quot;).  Because this cookie is accessible to any &lt;a href=&quot;http://www.pando.com&quot;&gt;pando.com&lt;/a&gt; URL, we can make use of it in many places.  For example, when a user clicks a package URL, we look for the cookie and, if it&#039;s set, we send the user the Pando file.  If it&#039;s not set, we redirect them to a page explaining how to installed Pando (&lt;a href=&quot;http://www.pando.com/link/preinstall?package=7555F7279261EC0E32F0E7DCEE19AD704118CC6F&amp;key=996D21C1A1185404904DE9601F9F63B87F83890FA9FB69D604837009299BE3DB&amp;referer=http%3A%2F%2Fpandoblog.com%2F&quot;&gt;example&lt;/a&gt;).
&lt;/p&gt;
&lt;p&gt;
Unfortunately, because cookies can only be read by the domain that sets them (a good thing for security purposes), other web sites cannot tell if a user has Pando installed.
&lt;/p&gt;

&lt;h3&gt;&quot;Installed&quot; Cookie Check Service&lt;/h3&gt;
&lt;p&gt;
To get around this limitation, we&#039;ve implemented a simple &quot;installed&quot; cookie checking service you may use to discover if your users have Pando installed.  To use this service, you must redirect your users (using javascript or, preferably, a server side script) to the following URL: &lt;code&gt;http://www.pando.com/installcheck/?returnURL=&lt;em&gt;http://example.com/&lt;/em&gt;&lt;/code&gt; where &lt;code&gt;&lt;em&gt;http://example.com&lt;/em&gt;&lt;/code&gt; is an URL on your server that can handle the resultant response.
&lt;/p&gt;
&lt;p&gt;
When a user visits the above URL, the pando web server looks for the Pando &quot;installed&quot; cookie and redirects the user &lt;em&gt;back&lt;/em&gt; to the specified &lt;code&gt;returnURL&lt;/code&gt; with &lt;code&gt;hasPando=yes&lt;/code&gt; or &lt;code&gt;hasPando=no&lt;/code&gt; appended to the URL parameters.  It is up to you to receive this response and handle it in a useful way.  We recommend setting your own cookie to remember the result of this check, to minimize these redirect-heavy requests.
&lt;/p&gt;

&lt;h3&gt;Caveat&lt;/h3&gt;
&lt;p&gt;
It&#039;s important to note that this is an imperfect solution.  If a privacy-minded user frequently clears her cookies or uses a browser other than her default, the &quot;installed&quot; cookie might not be set even when she has Pando installed.  It is important to allow users a way around a cookie check and force the cookie to be set to cover these cases.
&lt;/p&gt;</description>
 <comments>http://developers.pando.com/pando-installed#comments</comments>
 <category domain="http://developers.pando.com/app-developers">Application Developers</category>
 <category domain="http://developers.pando.com/web-developers">Web Developers</category>
 <pubDate>Mon, 23 Apr 2007 16:06:40 -0400</pubDate>
 <dc:creator>scott</dc:creator>
 <guid isPermaLink="false">112 at http://developers.pando.com</guid>
</item>
</channel>
</rss>
