Discover how a bimodal integration strategy can address the major data management challenges facing your organization today.
Get the Report →DataBind Wijmo Grid to Trello Data
Provide real-time Trello data to interactive controls.
The Connect Server enables you to use Web services to connect to and query Trello data. This article details how to import an OData feed of Trello data into Wijmo Grid.
Configuring Connect Server
To work with live Trello data in Wijmo Grid, we need to connect to Trello from Connect Server, provide user access to the new virtual database, and create OData endpoints for the Trello data.
Add a Connect Server User
Create a User to connect to Trello from Wijmo Grid through Connect Server.
- Click Users -> Add
- Configure a User
- Click Save Changes and make note of the Authtoken for the new user
Connect to Trello from Connect Server
CData Connect Server uses a straightforward, point-and-click interface to connect to data sources and generate APIs.
- Open Connect Server and click Connections
- Select "Trello" from Available Data Sources
-
Enter the necessary authentication properties to connect to Trello.
Trello uses token-based authentication to grant third-party applications access to their API. When a user has granted an application access to their data, the application is given a token that can be used to make requests to Trello's API.
Trello's API can be accessed in 2 different ways. The first is using Trello's own Authorization Route, and the second is using OAuth1.0.
- Authorization Route: At the moment of registration, Trello assigns an API key and Token to the account. See the Help documentation for information on how to connect via the Authorization route.
- OAuth Route: Similar to using Authorization, OAuth creates an Application Id and Secret when you create your account. See the Help documentation for information on how to to connect.
- Click Save Changes
- Click Privileges -> Add and add the new user (or an existing user) with the appropriate permissions (SELECT is all that is required for Reveal).
Add Trello OData Endpoints in Connect Server
After connecting to Trello, create OData Endpoints for the desired table(s).
- Click OData -> Tables -> Add Tables
- Select the Trello database
- Select the table(s) you wish to work with and click Next
- (Optional) Edit the resource to select specific fields and more
- Save the settings
(Optional) Configure Cross-Origin Resource Sharing (CORS)
When accessing and connecting to multiple domains from an application such as Ajax, there is a possibility of violating the limitations of cross-site scripting. In that case, configure the CORS settings in OData -> Settings.
- Enable cross-origin resource sharing (CORS): ON
- Allow all domains without '*': ON
- Access-Control-Allow-Methods: GET, PUT, POST, OPTIONS
- Access-Control-Allow-Headers: Authorization
Save the changes to the settings.
Connect to Trello Data using Wijmo Grid
Create a Real-Time Grid
Follow the steps below to consume Trello data from the Wijmo JavaScript controls:
-
Load the required Wijmo, jQuery, and Knockout libraries:
<script src="http://code.jquery.com/jquery-1.11.1.min.js"></script> <script src="http://code.jquery.com/ui/1.11.0/jquery-ui.min.js"></script> <!--Theme--> <link href="http://cdn.wijmo.com/themes/aristo/jquery-wijmo.css" rel="stylesheet" type="text/css"> <!--Wijmo Widgets CSS--> <link href="http://cdn.wijmo.com/jquery.wijmo-pro.all.3.20161.90.min.css" rel="stylesheet" type="text/css"> <!--Wijmo Widgets JavaScript--> <script src="http://cdn.wijmo.com/jquery.wijmo-open.all.3.20161.90.min.js"></script> <script src="http://cdn.wijmo.com/jquery.wijmo-pro.all.3.20161.90.min.js"></script> <script src="http://cdn.wijmo.com/interop/wijmo.data.ajax.3.20161.90.js"></script> <!--Knockout JS Library--> <!-- Both of the links below can work --> <script src="http://cdn.wijmo.com/wijmo/external/knockout-2.2.0.js"></script> <!--<script src="http://cdn.wijmo.com/amd-js/3.20161.90/knockout-3.1.0.js"></script>--> <!--Wijmo Knockout Integration Library--> <script src="http://cdn.wijmo.com/interop/knockout.wijmo.3.20161.90.js"></script>
-
Create a ViewModel and connect to it using the ODataView. You will need to replace the placeholder values for
the URL of the API Server, an API Server user, and the authtoken for that user.
<script id="scriptInit"> $.support.cors = true; var viewModel; function ViewModel() { var boardsView = new wijmo.data.ODataView("http://MyServer:MyPort/api.rsc/Boards", { ajax: { dataType: "jsonp", username: "MyUser", password: "MyAuthtoken", data: { "$inlinecount": null } }, pageSize: 10 }); boardsView.refresh(); boardsView.nextPage(); this.boards = boardsView; this.prevPage = function () {boardsView.prevPage();}; this.nextPage = function () {boardsView.nextPage();}; } $(document).ready(function () { viewModel = new ViewModel(); ko.applyBindings(viewModel, $(".container").get(0)); }); </script>
-
DataBind: Below is a simple table with some paging buttons, which you can paste into the body section of your markup.
<h2>Connect to Live Trello Data in Real Time</h2> <h3>Boards</h3> <div> <button title="previous page" class="pagebuttons" data-bind="click: prevPage, button: {}"> <span class="ui-icon ui-icon-seek-prev" /> </button> <button title="next page" class="pagebuttons" data-bind="click: nextPage, button: {}"> <span class="ui-icon ui-icon-seek-next" /> </button> </div> <table id="demo-grid" data-bind="wijgrid: { data: boards, showFilter: true, allowPaging: true, pagerSettings: { position: 'none'}, columnsAutogenerationMode: 'append', }" > </table>
At this point, you may be prompted to re-enter the username and authtoken. After doing so, a resulting table or grid should appear, as seen below. You can filter and sort through pages of Trello data.
Free Trial & More Information
If you are interested in connecting to your Trello data (or data from any of our other supported data sources) from Wijmo Grid, sign up for a free trial of CData Connect Server today! For more information on Connect Server and to see what other data sources we support, refer to our CData Connect page.