blob: 6a1b9c6c736a0f97c847362e124a186ea508bc69 [file] [log] [blame]
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<!-- saved from url=(0014)about:internet -->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title>GetMyDocListSample.mxml</title>
<link rel="stylesheet" type="text/css" href="../SourceStyles.css"/>
</head>
<body><pre><span class="MXMLProcessing_Instruction">&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&gt;</span>
<span class="MXMLComponent_Tag">&lt;mx:WindowedApplication</span><span class="MXMLDefault_Text"> xmlns:mx=&quot;</span><span class="MXMLString">http://www.adobe.com/2006/mxml</span><span class="MXMLDefault_Text">&quot; layout=&quot;</span><span class="MXMLString">absolute</span><span class="MXMLDefault_Text">&quot;
backgroundColor=&quot;</span><span class="MXMLString">#323232</span><span class="MXMLDefault_Text">&quot; creationComplete=&quot;</span><span class="ActionScriptDefault_Text">init</span><span class="ActionScriptBracket/Brace">()</span><span class="MXMLDefault_Text">&quot;</span><span class="MXMLComponent_Tag">&gt;</span>
<span class="MXMLSpecial_Tag">&lt;mx:Script&gt;</span>
<span class="ActionScriptOperator">&lt;!</span><span class="ActionScriptBracket/Brace">[</span><span class="ActionScriptDefault_Text">CDATA</span><span class="ActionScriptBracket/Brace">[</span>
<span class="ActionScriptReserved">import</span> <span class="ActionScriptDefault_Text">com</span>.<span class="ActionScriptDefault_Text">digitalflipbook</span>.<span class="ActionScriptDefault_Text">webapis</span>.<span class="ActionScriptDefault_Text">scribd</span>.<span class="ActionScriptOperator">*</span>;
<span class="ActionScriptReserved">import</span> <span class="ActionScriptDefault_Text">com</span>.<span class="ActionScriptDefault_Text">digitalflipbook</span>.<span class="ActionScriptDefault_Text">webapis</span>.<span class="ActionScriptDefault_Text">scribd</span>.<span class="ActionScriptDefault_Text">events</span>.<span class="ActionScriptDefault_Text">ScribdResultEvent</span>;
<span class="ActionScriptReserved">import</span> <span class="ActionScriptDefault_Text">mx</span>.<span class="ActionScriptDefault_Text">controls</span>.<span class="ActionScriptDefault_Text">Alert</span>;
<span class="ActionScriptBracket/Brace">[</span><span class="ActionScriptMetadata">Bindable</span><span class="ActionScriptBracket/Brace">]</span>
<span class="ActionScriptReserved">private</span> <span class="ActionScriptvar">var</span> <span class="ActionScriptDefault_Text">service</span><span class="ActionScriptOperator">:</span><span class="ActionScriptDefault_Text">ScribdService</span>;
<span class="ActionScriptBracket/Brace">[</span><span class="ActionScriptMetadata">Bindable</span><span class="ActionScriptBracket/Brace">]</span>
<span class="ActionScriptReserved">private</span> <span class="ActionScriptvar">var</span> <span class="ActionScriptDefault_Text">dgDocs</span><span class="ActionScriptOperator">:</span><span class="ActionScriptDefault_Text">Array</span>; <span class="ActionScriptComment">// source for datagrid
</span>
<span class="ActionScriptReserved">private</span> <span class="ActionScriptfunction">function</span> <span class="ActionScriptDefault_Text">init</span><span class="ActionScriptBracket/Brace">()</span><span class="ActionScriptOperator">:</span><span class="ActionScriptReserved">void</span>
<span class="ActionScriptBracket/Brace">{</span>
<span class="ActionScriptDefault_Text">service</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptReserved">new</span> <span class="ActionScriptDefault_Text">ScribdService</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptString">&quot;PUT-YOUR-API-KEY-HERE&quot;</span><span class="ActionScriptBracket/Brace">)</span>;
<span class="ActionScriptDefault_Text">service</span>.<span class="ActionScriptDefault_Text">secret</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptString">&quot;PUT-YOUR-SECRET-CODE-HERE&quot;</span>;
<span class="ActionScriptBracket/Brace">}</span>
<span class="ActionScriptReserved">public</span> <span class="ActionScriptfunction">function</span> <span class="ActionScriptDefault_Text">onLogin</span><span class="ActionScriptBracket/Brace">()</span><span class="ActionScriptOperator">:</span><span class="ActionScriptReserved">void</span>
<span class="ActionScriptBracket/Brace">{</span>
<span class="ActionScriptDefault_Text">service</span>.<span class="ActionScriptDefault_Text">addEventListener</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">ScribdResultEvent</span>.<span class="ActionScriptDefault_Text">USER_LOGIN</span>, <span class="ActionScriptDefault_Text">userLoginResponse</span><span class="ActionScriptBracket/Brace">)</span>;
<span class="ActionScriptDefault_Text">service</span>.<span class="ActionScriptDefault_Text">user</span>.<span class="ActionScriptDefault_Text">login</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">userid</span>.<span class="ActionScriptDefault_Text">text</span>, <span class="ActionScriptDefault_Text">pw</span>.<span class="ActionScriptDefault_Text">text</span><span class="ActionScriptBracket/Brace">)</span>;
<span class="ActionScriptBracket/Brace">}</span>
<span class="ActionScriptASDoc">/**
* This completes the login process. When the user is successfully
* authenticated and the application has permission to use their
* data, there will be a token that scribd assigns to us.
*/</span>
<span class="ActionScriptReserved">private</span> <span class="ActionScriptfunction">function</span> <span class="ActionScriptDefault_Text">userLoginResponse</span><span class="ActionScriptBracket/Brace">(</span> <span class="ActionScriptDefault_Text">event</span><span class="ActionScriptOperator">:</span><span class="ActionScriptDefault_Text">ScribdResultEvent</span> <span class="ActionScriptBracket/Brace">)</span><span class="ActionScriptOperator">:</span><span class="ActionScriptReserved">void</span>
<span class="ActionScriptBracket/Brace">{</span>
<span class="ActionScriptReserved">if</span> <span class="ActionScriptBracket/Brace">(</span> <span class="ActionScriptDefault_Text">event</span>.<span class="ActionScriptDefault_Text">success</span> <span class="ActionScriptBracket/Brace">)</span>
<span class="ActionScriptBracket/Brace">{</span>
<span class="ActionScriptvar">var</span> <span class="ActionScriptDefault_Text">session</span><span class="ActionScriptOperator">:</span><span class="ActionScriptDefault_Text">Session</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptDefault_Text">Session</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">event</span>.<span class="ActionScriptDefault_Text">data</span><span class="ActionScriptBracket/Brace">)</span>;
<span class="ActionScriptComment">// Assign the token and permission to the service so that
</span> <span class="ActionScriptComment">// all calls that require authentication have their values
</span> <span class="ActionScriptComment">// populated
</span> <span class="ActionScriptDefault_Text">service</span>.<span class="ActionScriptDefault_Text">session_key</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptDefault_Text">session</span>.<span class="ActionScriptDefault_Text">session_key</span>;
<span class="ActionScriptReserved">this</span>.<span class="ActionScriptDefault_Text">userLoggedIn</span>.<span class="ActionScriptDefault_Text">text</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptDefault_Text">userid</span>.<span class="ActionScriptDefault_Text">text</span><span class="ActionScriptOperator">+</span><span class="ActionScriptString">&quot; logged in&quot;</span>;
<span class="ActionScriptComment">// Now call to get my list of docs
</span> <span class="ActionScriptDefault_Text">service</span>.<span class="ActionScriptDefault_Text">addEventListener</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">ScribdResultEvent</span>.<span class="ActionScriptDefault_Text">DOCS_GET_LIST</span>, <span class="ActionScriptDefault_Text">onGetDocList</span><span class="ActionScriptBracket/Brace">)</span>;
<span class="ActionScriptDefault_Text">service</span>.<span class="ActionScriptDefault_Text">docs</span>.<span class="ActionScriptDefault_Text">getList</span><span class="ActionScriptBracket/Brace">()</span>;
<span class="ActionScriptBracket/Brace">}</span>
<span class="ActionScriptReserved">else</span> <span class="ActionScriptBracket/Brace">{</span>
<span class="ActionScripttrace">trace</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptString">&quot;Error &quot;</span> <span class="ActionScriptOperator">+</span> <span class="ActionScriptDefault_Text">event</span>.<span class="ActionScriptDefault_Text">data</span>.<span class="ActionScriptDefault_Text">errorCode</span> <span class="ActionScriptOperator">+</span> <span class="ActionScriptString">&quot; msg &quot;</span> <span class="ActionScriptOperator">+</span> <span class="ActionScriptDefault_Text">event</span>.<span class="ActionScriptDefault_Text">data</span>.<span class="ActionScriptDefault_Text">errorMessage</span><span class="ActionScriptBracket/Brace">)</span>;
<span class="ActionScriptDefault_Text">Alert</span>.<span class="ActionScriptDefault_Text">show</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">event</span>.<span class="ActionScriptDefault_Text">data</span>.<span class="ActionScriptDefault_Text">errorMessage</span> <span class="ActionScriptOperator">+</span> <span class="ActionScriptString">&quot; code: &quot;</span> <span class="ActionScriptOperator">+</span> <span class="ActionScriptDefault_Text">event</span>.<span class="ActionScriptDefault_Text">data</span>.<span class="ActionScriptDefault_Text">errorCode</span><span class="ActionScriptBracket/Brace">)</span>;
<span class="ActionScriptBracket/Brace">}</span>
<span class="ActionScriptBracket/Brace">}</span>
<span class="ActionScriptReserved">private</span> <span class="ActionScriptfunction">function</span> <span class="ActionScriptDefault_Text">onGetDocList</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">event</span><span class="ActionScriptOperator">:</span><span class="ActionScriptDefault_Text">ScribdResultEvent</span><span class="ActionScriptBracket/Brace">)</span><span class="ActionScriptOperator">:</span><span class="ActionScriptReserved">void</span>
<span class="ActionScriptBracket/Brace">{</span>
<span class="ActionScriptReserved">if</span> <span class="ActionScriptBracket/Brace">(</span> <span class="ActionScriptDefault_Text">event</span>.<span class="ActionScriptDefault_Text">success</span> <span class="ActionScriptBracket/Brace">)</span> <span class="ActionScriptBracket/Brace">{</span>
<span class="ActionScriptReserved">if</span> <span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">event</span>.<span class="ActionScriptDefault_Text">data</span> <span class="ActionScriptReserved">is</span> <span class="ActionScriptDefault_Text">Array</span><span class="ActionScriptBracket/Brace">)</span> <span class="ActionScriptBracket/Brace">{</span>
<span class="ActionScriptDefault_Text">dgDocs</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptDefault_Text">event</span>.<span class="ActionScriptDefault_Text">data</span> <span class="ActionScriptReserved">as</span> <span class="ActionScriptDefault_Text">Array</span>;
<span class="ActionScriptBracket/Brace">}</span>
<span class="ActionScriptBracket/Brace">}</span> <span class="ActionScriptReserved">else</span> <span class="ActionScriptBracket/Brace">{</span>
<span class="ActionScriptComment">// Encountered some kind of error on Scribd...
</span> <span class="ActionScriptvar">var</span> <span class="ActionScriptDefault_Text">e</span><span class="ActionScriptOperator">:</span><span class="ActionScriptDefault_Text">ScribdError</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptDefault_Text">ScribdError</span><span class="ActionScriptBracket/Brace">(</span> <span class="ActionScriptDefault_Text">event</span>.<span class="ActionScriptDefault_Text">data</span> <span class="ActionScriptBracket/Brace">)</span>;
<span class="ActionScriptDefault_Text">Alert</span>.<span class="ActionScriptDefault_Text">show</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptString">&quot;An error occurred when retrieving user document list from Scribd: &quot;</span> <span class="ActionScriptOperator">+</span> <span class="ActionScriptDefault_Text">e</span>.<span class="ActionScriptDefault_Text">errorMessage</span> <span class="ActionScriptOperator">+</span> <span class="ActionScriptString">&quot; code: &quot;</span> <span class="ActionScriptOperator">+</span> <span class="ActionScriptDefault_Text">e</span>.<span class="ActionScriptDefault_Text">errorCode</span><span class="ActionScriptBracket/Brace">)</span>;
<span class="ActionScriptBracket/Brace">}</span>
<span class="ActionScriptBracket/Brace">}</span>
<span class="ActionScriptBracket/Brace">]]</span><span class="ActionScriptOperator">&gt;</span>
<span class="MXMLSpecial_Tag">&lt;/mx:Script&gt;</span>
<span class="MXMLComponent_Tag">&lt;mx:VBox</span><span class="MXMLDefault_Text"> width=&quot;</span><span class="MXMLString">100%</span><span class="MXMLDefault_Text">&quot; height=&quot;</span><span class="MXMLString">100%</span><span class="MXMLDefault_Text">&quot;</span><span class="MXMLComponent_Tag">&gt;</span>
<span class="MXMLComponent_Tag">&lt;mx:Form</span><span class="MXMLDefault_Text"> defaultButton=&quot;</span><span class="MXMLString">{</span><span class="ActionScriptDefault_Text">btnLogin</span><span class="MXMLString">}</span><span class="MXMLDefault_Text">&quot; color=&quot;</span><span class="MXMLString">#FFFFFF</span><span class="MXMLDefault_Text">&quot;</span><span class="MXMLComponent_Tag">&gt;</span>
<span class="MXMLComponent_Tag">&lt;mx:FormHeading</span><span class="MXMLDefault_Text"> label=&quot;</span><span class="MXMLString">Scribd Login:</span><span class="MXMLDefault_Text">&quot;</span><span class="MXMLComponent_Tag">/&gt;</span>
<span class="MXMLComponent_Tag">&lt;mx:FormItem</span><span class="MXMLDefault_Text"> label=&quot;</span><span class="MXMLString">Userid:</span><span class="MXMLDefault_Text">&quot;</span><span class="MXMLComponent_Tag">&gt;</span>
<span class="MXMLComponent_Tag">&lt;mx:TextInput</span><span class="MXMLDefault_Text"> id=&quot;</span><span class="MXMLString">userid</span><span class="MXMLDefault_Text">&quot; width=&quot;</span><span class="MXMLString">200</span><span class="MXMLDefault_Text">&quot; color=&quot;</span><span class="MXMLString">#000000</span><span class="MXMLDefault_Text">&quot;</span><span class="MXMLComponent_Tag">/&gt;</span>
<span class="MXMLComponent_Tag">&lt;/mx:FormItem&gt;</span>
<span class="MXMLComponent_Tag">&lt;mx:FormItem</span><span class="MXMLDefault_Text"> label=&quot;</span><span class="MXMLString">Password:</span><span class="MXMLDefault_Text">&quot; </span><span class="MXMLComponent_Tag">&gt;</span>
<span class="MXMLComponent_Tag">&lt;mx:TextInput</span><span class="MXMLDefault_Text"> id=&quot;</span><span class="MXMLString">pw</span><span class="MXMLDefault_Text">&quot; width=&quot;</span><span class="MXMLString">200</span><span class="MXMLDefault_Text">&quot; displayAsPassword=&quot;</span><span class="MXMLString">true</span><span class="MXMLDefault_Text">&quot; color=&quot;</span><span class="MXMLString">#000000</span><span class="MXMLDefault_Text">&quot;</span><span class="MXMLComponent_Tag">/&gt;</span>
<span class="MXMLComponent_Tag">&lt;/mx:FormItem&gt;</span>
<span class="MXMLComponent_Tag">&lt;mx:FormItem&gt;</span>
<span class="MXMLComponent_Tag">&lt;mx:Button</span><span class="MXMLDefault_Text"> id=&quot;</span><span class="MXMLString">btnLogin</span><span class="MXMLDefault_Text">&quot; label=&quot;</span><span class="MXMLString">Login</span><span class="MXMLDefault_Text">&quot; click=&quot;</span><span class="ActionScriptDefault_Text">onLogin</span><span class="ActionScriptBracket/Brace">()</span><span class="MXMLDefault_Text">&quot;</span><span class="MXMLComponent_Tag">/&gt;</span>
<span class="MXMLComponent_Tag">&lt;/mx:FormItem&gt;</span>
<span class="MXMLComponent_Tag">&lt;mx:FormItem&gt;</span>
<span class="MXMLComponent_Tag">&lt;mx:Text</span><span class="MXMLDefault_Text"> id=&quot;</span><span class="MXMLString">userLoggedIn</span><span class="MXMLDefault_Text">&quot; text=&quot;</span><span class="MXMLString">Not logged in</span><span class="MXMLDefault_Text">&quot;</span><span class="MXMLComponent_Tag">/&gt;</span>
<span class="MXMLComponent_Tag">&lt;/mx:FormItem&gt;</span>
<span class="MXMLComponent_Tag">&lt;/mx:Form&gt;</span>
<span class="MXMLComponent_Tag">&lt;mx:DataGrid</span><span class="MXMLDefault_Text"> id=&quot;</span><span class="MXMLString">dgData</span><span class="MXMLDefault_Text">&quot; dataProvider=&quot;</span><span class="MXMLString">{</span><span class="ActionScriptDefault_Text">dgDocs</span><span class="MXMLString">}</span><span class="MXMLDefault_Text">&quot; width=&quot;</span><span class="MXMLString">100%</span><span class="MXMLDefault_Text">&quot; height=&quot;</span><span class="MXMLString">100%</span><span class="MXMLDefault_Text">&quot; minColumnWidth=&quot;</span><span class="MXMLString">80</span><span class="MXMLDefault_Text">&quot;
variableRowHeight=&quot;</span><span class="MXMLString">true</span><span class="MXMLDefault_Text">&quot; x=&quot;</span><span class="MXMLString">100</span><span class="MXMLDefault_Text">&quot; doubleClickEnabled=&quot;</span><span class="MXMLString">true</span><span class="MXMLDefault_Text">&quot; alternatingItemColors=&quot;</span><span class="MXMLString">[0xffffff,0xeeeeee]</span><span class="MXMLDefault_Text">&quot;
doubleClick=&quot;</span><span class="ActionScriptDefault_Text">navigateToURL</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptReserved">new</span> <span class="ActionScriptDefault_Text">URLRequest</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">dgData</span>.<span class="ActionScriptDefault_Text">selectedItem</span>.<span class="ActionScriptDefault_Text">thumbnail_url</span><span class="ActionScriptBracket/Brace">))</span><span class="MXMLDefault_Text">&quot; </span><span class="MXMLComponent_Tag">&gt;</span>
<span class="MXMLComponent_Tag">&lt;mx:columns&gt;</span>
<span class="MXMLComponent_Tag">&lt;mx:DataGridColumn</span><span class="MXMLDefault_Text"> headerText=&quot;</span><span class="MXMLString">Image</span><span class="MXMLDefault_Text">&quot; width=&quot;</span><span class="MXMLString">120</span><span class="MXMLDefault_Text">&quot;</span><span class="MXMLComponent_Tag">&gt;</span>
<span class="MXMLComponent_Tag">&lt;mx:itemRenderer&gt;</span>
<span class="MXMLSpecial_Tag">&lt;mx:Component&gt;</span>
<span class="MXMLComponent_Tag">&lt;mx:Image</span><span class="MXMLDefault_Text"> source=&quot;</span><span class="MXMLString">{</span><span class="ActionScriptDefault_Text">data</span>.<span class="ActionScriptDefault_Text">thumbnail_url</span><span class="MXMLString">}</span><span class="MXMLDefault_Text">&quot; horizontalAlign=&quot;</span><span class="MXMLString">center</span><span class="MXMLDefault_Text">&quot; verticalAlign=&quot;</span><span class="MXMLString">middle</span><span class="MXMLDefault_Text">&quot;</span><span class="MXMLComponent_Tag">/&gt;</span>
<span class="MXMLSpecial_Tag">&lt;/mx:Component&gt;</span>
<span class="MXMLComponent_Tag">&lt;/mx:itemRenderer&gt;</span>
<span class="MXMLComponent_Tag">&lt;/mx:DataGridColumn&gt;</span>
<span class="MXMLComponent_Tag">&lt;mx:DataGridColumn</span><span class="MXMLDefault_Text"> dataField=&quot;</span><span class="MXMLString">title</span><span class="MXMLDefault_Text">&quot; headerText=&quot;</span><span class="MXMLString">Title</span><span class="MXMLDefault_Text">&quot; width=&quot;</span><span class="MXMLString">200</span><span class="MXMLDefault_Text">&quot;</span><span class="MXMLComponent_Tag">/&gt;</span>
<span class="MXMLComponent_Tag">&lt;mx:DataGridColumn</span><span class="MXMLDefault_Text"> dataField=&quot;</span><span class="MXMLString">description</span><span class="MXMLDefault_Text">&quot; headerText=&quot;</span><span class="MXMLString">Description</span><span class="MXMLDefault_Text">&quot; width=&quot;</span><span class="MXMLString">200</span><span class="MXMLDefault_Text">&quot;</span><span class="MXMLComponent_Tag">/&gt;</span>
<span class="MXMLComponent_Tag">&lt;mx:DataGridColumn</span><span class="MXMLDefault_Text"> dataField=&quot;</span><span class="MXMLString">tags</span><span class="MXMLDefault_Text">&quot; headerText=&quot;</span><span class="MXMLString">Tags</span><span class="MXMLDefault_Text">&quot; width=&quot;</span><span class="MXMLString">100</span><span class="MXMLDefault_Text">&quot;</span><span class="MXMLComponent_Tag">/&gt;</span>
<span class="MXMLComponent_Tag">&lt;/mx:columns&gt;</span>
<span class="MXMLComponent_Tag">&lt;/mx:DataGrid&gt;</span>
<span class="MXMLComponent_Tag">&lt;/mx:VBox&gt;</span>
<span class="MXMLComponent_Tag">&lt;/mx:WindowedApplication&gt;</span></pre></body>
</html>