Skip to content
Khan Tabish edited this page Mar 15, 2016 · 4 revisions

Import Events from feed

**1. Control Panel(CP) : ** All the changes in control panel will reflect dynamically on widget section. Its further divide into two sections :-

  • Content: In this section, user enters .ics url and validate it. Message is show accordingly. API to validate the link will be provided by NODE proxy server that we will be creating. If url is valid , we fetch and show the events list on widget section.

  • Design: This section lets user to choose the appearance of the data in widget section. How the list of events will appear, how single event will be displayed. There are 2 options which user can modify for look and feel of the widget(Event list layout will be common for all):

  • Event Details Layout

  • Event Details Background

2. Widget(App) : All the data added in the control panel reflects on the widget section. The top section of the widget displays a calendar. In case user has entered ical url , this section shows paginated list of events. Events are listed in the increasing order of date from current date to future dates.

User can slide left and add event to their phone’s native calendar. Blue dots in above calendar shows dates in which user have events. Clicking on each event will open event detail view.

For sliding effect we are using ngTouch. For adding event to phone’s native calendar we need to detect the platform of the device like IOS or android. We can do so by using Buildfire API.

Database Schema : There will be a tag named “eventsFeedInfo” with following schema-

{ "content" : { “feedUrl” : “” }, "design" : { "itemDetailsLayout" : "", "itemDetailsBgImage" : "" } }

Node Proxy server : We will create a light weighted node js server for validating and parsing a .ics url to fetch events corresponding to that url. Modules used:

Miscellaneous references:

  1. https://github.com/BuildFire/sdk/wiki/How-to-use-Datastore
  2. https://github.com/BuildFire/sdk/wiki/BuildFire-Thumbnail-Component
  3. https://github.com/BuildFire/sdk/wiki/Deep-Links
  4. https://github.com/BuildFire/sdk/wiki/Spinners
  5. https://github.com/BuildFire/sdk/wiki/How-to-use-Messaging-to-sync-your-Control-to-Widget
  6. https://github.com/BuildFire/sdk/wiki/How-to-use-Navigation
  7. https://github.com/BuildFire/sdk/wiki/Search-Operators
Clone this wiki locally