Challenge Overview
Welcome to FAST - Module Assembly - topcoder merging and finishing refactor - angularJS challenge. This challenge is serial of recent Assembly Challenges to refactor member profile page using angular.
The main goal of this challenge is to ensure whole member profile page works fine and smootly. This challenge require effort to merge angular codes (design, develop, data-science, badges section) which had been refactored by paralel challenges.We can say we want to merge attached dataScience.patch + badge.patch + design.patch.
Scope:
- Design , Develop, and Data science profile tab and bages section
- Replace orange loading mask/bar with white and simple bar for all inner orange loading bar. lets do your best for this
- Smooth Transition to another tabs (UI Routing), so whole page will not be reloaded, just reloaded main content
- Fix any minor bugs
Refactor Requirements:
Modify the submitted code to the following structure and coding guidelines.
1. Please ensure to pull latest master branch as starting point, and please resolve any conflicts when merging patch
2. Use attached individual patch files. they are for design tab, develop+data tabs, and badges tab. that patch also has been applied to https://gitlab.com/topcoderinc/tc-site/tree/S-216713-Member-Profile-Refactor-data-science-tab.
3. Update all js code related to angular refactoring under js/app/member-profile
Additional Notes:
-
We're moving repo from gitHub to gitlab. so please pull latest master branch from https://gitlab.com/groups/topcoderinc. More guidance can be found on https://gitlab.com/topcoderinc/tc-site/blob/master/README.md#recommend-workflow-for-working-on-a-challenge
-
finalFix-1-FF-data-science-tab.zip has included develop tab too, so you only need to merge design tab and badges section
- If you get 404 eror, maybe you need to set "Member profile using AngularJS" as template of "Member profile page"
Test Cases :
- Graph View for develop and data-science tab
- Recent Winning Carousel for Design tab
- Tooltips for each bages
- HP badges, URL : http://local.topcoder.com/member-profile/peakpado/develop/, http://local.topcoder.com/member-profile/rominirani/develop/
- Please ensure three tabs work fine, the following URL can be used for testing
-
Please navigate to another tabs to ensure transition work smoothly (without reloading page)
Final Submission Guidelines
Submission Deliverables?, Environment Setup Instructions?, Final Submission Guidelines?
Please follow this https://gitlab.com/topcoderinc/tc-site/blob/master/README.md
Check out latest code from git hub from branch https://gitlab.com/topcoderinc/tc-site/tree/master and submit your code as zip files or as a merge request.
Look at the page template page_angular_example (https://gitlab.com/topcoderinc/tc-site/blob/master/wp-content/themes/tcs-responsive/page-angular-example.php) for integration into Wordpress page template. To try out this page in your dev instance of wpengine, you will want to create a new page using the template “angular example” and navigate to that page. If you are having issues, purge caches and reset JS/CSS registry under “Appearance->Theme Options”
Read Me: https://gitlab.com/topcoderinc/tc-site/blob/master/README.md#angularjs
Here are some general rules to follow
-
root angular directory at tcs-responsive/js/app (https://gitlab.com/topcoderinc/tc-site/tree/master/wp-content/themes/tcs-responsive/js/app)
-
Main application file: app.js (https://gitlab.com/topcoderinc/tc-site/blob/dev/wp-content/themes/tcs-responsive/js/app/app.js)
-
Global level configuration
-
setup main tc application
-
-
Organize code into logical directories
-
All challenge related code should be under the challenges folder
-
Create new folders as needed (i.e members)
-
Separate code into correct folders by type (controllers, services, filters, directives)
-
-
Use directives or templates to hold all html, preferable templates.
-
Controllers should be implemented by using the controller function on the main app object (the tc variable). example : https://github.com/topcoderinc/tc-site/blob/dev/wp-content/themes/tcs-responsive/js/app/challenges/controllers/challengeListingCtrl.js#L3)
-
Services, filters and directives should all be their own modules https://gitlab.com/topcoderinc/tc-site/blob/master/wp-content/themes/tcs-responsive/js/app/challenges/services/challengeService.js#L3
-
Services should use Restangular (https://github.com/mgonto/restangular)
-
Tables should use ngGrid: http://angular-ui.github.io/ng-grid/