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