Key Information

Register
Submit
The challenge is finished.

Challenge Overview

Challenge Overview

Previously, we have added Work manager page into Project Dashboard to allow copilot / PM to push challenge submissions related data to a new app called “Topcoder Connect” via API.

When using it, we found two problems related to the usage.

1. There are no confirmation for clicking the Push button to trigger the push process, which makes it easy to trigger the push action twice or more.
2. When there are a lot of submissions to push, the front end is often timing out while the back end continues to process.

Scope

For this challenge, we'd like to improve and fix the problems above.

Followings are the general requirements.

1. When clicking the Push button, a confirmation dialog will be shown to double check if user did want to publish, when confirmed (not cancelled), a loading image by greying out the whole page for action disabling will be shown in order to wait response from backend.  Once the response returned, it will be proper dialog about if the Push operation triggered, or there is any problem to do the Push operation.  User have to click the OK button to dismiss the response dialog.
2. We'd like to have a separate thread to do the calling of asp-client, which do the actually operation for push challenge submission to the new app. 
3. The separate thread will update status of the Push operation, 
3.1 Before it starts calling the aspClient.publishSubmissionsToWorkStep(workStep, submissionsToPush), it will add a recond in informix database (please properly create the table for this tracking), and set the status to RUNNING
3.2 If the call to aspClient.publishSubmissionsToWorkStep(workStep, submissionsToPush) succeed, it will update the corresponding record and set the status to SUCCESS
3.3 If there are any problem to call aspClient.publishSubmissionsToWorkStep(workStep, submissionsToPush), it will update the corresponding record and set the status to FAIL.
4. Add a new AJAX Call, which will return the Push status.
5. After triggering the Push operation, the Work Manager page will call the new AJAX call, which will shown the Push status on page properly, this can be manually check. The Push status will be shown besides the Push button. 

Input Documents

API doc and source code for ASP client
Deployment Guide and Verifcation Documents from the related challenges, which makes it easier for you to work on this.
Please use commit - https://github.com/appirio-tech/direct-app/tree/a7125b8e8f40f5b2a042708dd713f01e9ad28903 as your working base.

Deployment

Follow http://apps.topcoder.com/wiki/display/docs/TC+Direct+Setup+Guide to do the local deployment of direct app and topcoder database.

Test

Currently, we didn't have a working instance for Topcoder connect to test, so we are expecting  you to follow the API doc and update the ASP client to mock the API call.

VM Environment

If you need a TopCoder VM to work on this challenge, Please request the VM in the challenge forum.

Information about VM can be found below:

VM specific information is found here: http://www.topcoder.com/wiki/display/docs/VM+Image+2.5 and https://github.com/cloudspokes/direct-app/blob/dev/README.md

Upon registration as a submitter or reviewer you will need to request a VM based on the new TopCoder Cockpit/Direct image. To request your image, please use the forum. Before requesting your VM, you need to ensure that you have an SSH key created and in your member profile. Instructions to do so are here: http://www.topcoder.com/wiki/display/projects/Generate+SSH+Key, and instructions to connect afterwards are here:http://www.topcoder.com/wiki/display/projects/Connect+Using+SSH+Key.



Final Submission Guidelines

  • The updated files.
  • The updated deployment guide with verification details.
  • Working VM for testing and demonstration

ELIGIBLE EVENTS:

2016 TopCoder(R) Open

REVIEW STYLE:

Final Review:

Community Review Board

Approval:

User Sign-Off

SHARE:

ID: 30053687