Lenovo Brand Expression Portal Social Integration Module Architecture

Register
Submit a solution
The challenge is finished.

Challenge Overview

1. Project Overview

Lenovo is building an intriguing “Lenovo Engagement Platform" for creative thinkers, technology enthusiasts and collaborative creators to participate in different technology contests. This allows Lenovo to build and foster our own community of like minded individuals of DO-ers. The platform is meant for a global audience with multiple languages but 1 single site. This project provides such platform implemented with an Expression Engine CMS technology. It contains necessary facilities to create and compete in Lenovo competitions and allowing social integration with social network.

2. Competition Overview

This module should implement an integration with social networks Facebook, Twitter and Weibo .

This module should handle the implementation of necessary actions within the social network and modifications to the web site to use them.

2.1    Facebook, Twitter, Weibo Client

This module should provide ability to login within social network, pull profile data, like/follow a page and perform status update. For more information refer to SDS 5.5. The scope of the architecture contains FacebookClient, TwitterClient and WeiboClient.

2.2    Modifications to the web site

The module architect should provide following modifications to the portal web pages with the usage of client:

  • On the home page login section there should be additional three buttons that allow login with the social network. A connect() method of respective network should be called. This should prompt a dialog to login to social network and access data with necessary permission. A profile data should be pulled and new member should be registered.
  • On contest submission page, whenever a submission is uploaded user will be prompted to like/follow one of the social network Lenovo pages. If there is no like, a dialog should be prompted to perform this action. Use checkPageLike()/checkPageFollow() for this purpose.
  • On each page whenever there’s a share button three new buttons should be created for sharing the data in the social network. Call postStatus() for this purpose.

For more details refer to the wireframe.

3. Technology Overview

  • Expression Engine 2.6.1
  • Apache 2.4.6
  • PHP 5.4.15
  • MySQL 5.1
  • Linux
  • jQuery 1.8.0 
  • Facebook API
  • Twitter API
  • Weibo API

 



Final Submission Guidelines

Your deliverable will consist of a single zip containing:

  • Application Design Specification
  • Sequence Diagrams
  • Interface Diagrams
  • Assembly Specifications

ELIGIBLE EVENTS:

2014 TopCoder(R) Open

Review style

Final Review

Community Review Board

Approval

User Sign-Off

ID: 30035340