Register
Submit a solution
The challenge is finished.

Challenge Overview

TRODUCTION

 

We leveraged the Topcoder community to build this iPad application for a well known client, John Hancock!

 

The application will be used at a prestigious event like the Boston Marathon, where there will be an ambassador with an iPad (or iPhone) and a professional photographer. As the photographer takes pictures, the ambassador then photographs the image from the back of the pro camera when there is a photo they would like to use in marketing and/or social media. The ambassador then attaches this photo to the release through the app and asks the people that getting photographed to sign a release. The person fills in name and statement that they are over 18, reads the legal copy and signs with their finger.

 

The business has decided to add functionality to the application so that users can walk up to the iPad and go through the process without the ambassador or photographer present.

 

We’ve modified the existing design of the app as per the above requirement. Now, we would like to implement the design changes into our existing app

 

RESOURCES

 
  • The Docs folder in the repository contains the reference documentation on how to run this app

  • Linked to updated designs & assets are provided in the forums

 

REQUIREMENTS

 

You’ll be modifying the following screens in the existing app as per the updated design, both portrait and landscape mode must be supported and implemented as per the provided updates:

 

0 Self Service Registration.png (Welcome Screen)

 

Note - we are only checking email for Adults. We do not require emails for Minors.

 
  1. Only one checkbox can be “checked” at a time. For example, if the user taps “Adult”, the checkbox becomes filled. Once filled, if the user taps “Minor”, that checkbox becomes filled and the “Adult” fill is removed. (They cannot both be checked at the same time)

  2. Once the “Adult” checkbox is tapped, display “Email” field in 0.1 Self Service Registration Over 18.png

  3. If the user taps “Proceed” without “First Name”, “Last Name”, one of the check boxes filled, or “Email” (if adult) completed, display the Error popup on 0.4 Self service registration Incomplete Info.png

  4. If the user is an Adult, has completed all details, and clicks “Proceed”, the message on 1 Already signed a release.png will appear if their email has already been attained at a prior event and is saved in the back end.

    1. If at this point the user clicks “confirm”, the app will transition back to 0 Self Service Registration.png (Welcome Screen)

    2. If at this point the user clicks “cancel”, the app transitions back to the previous screen with their information still filled out

  5. If the user is an Adult, has completed all details, and clicks “Proceed”, the app will transition to 2 Confirm details.png if the app does not have that user’s email from a previous release saved in the back end.

    1. If at this point the user clicks “Launch Camera”, the app transitions to 3 Capture Selfie and the iPad camera is opened in Selfie mode.

      1. If the user taps the circle button at the bottom of the screen, it takes the photo and transitions to 4 Confirm Selfie

    2. If at this point the user clicks “Back”, the app transitions back to the previous screen with their information still filled out.

 

4 Confirm Selfie

 
  1. If the user taps on the “redo” button in the bottom left corner, the app transitions back to 3 Capture Selfie

  2. If the the user taps on the arrow button in the bottom right corner, the app transitions to 5 Release with the captured selfie attached to the top of the release.

 

5 Release

 

Note: This release form is used for Adults

 
  1. Top line “Release for IMG 253…” can be removed

  2. Event, Date, and Name of subject in photo should be auto-populated

  3. Print Name and Signature must be completed

  4. Date is to be auto populated

 

7 Release Minor

 

Note: This release form is used for Minors, functionality is same as above, the only difference on the form is the “Minor” checkbox which is already checked off when the user arrives at this page (autochecked)

 

Note: Ignore the following designs (not needed)

  • 8 Releases_events

  • 9 Releases_events Options

  • 10 Releases

  • 11 Releases_gender

 

12 Settings

 

12. Keep functionality same as existing app

 

13 Enter Admin Password

 

13. If user clicks on “Self-Service” slider in the top right corner or on the “Self-Service” button of the sub menu/sidebar, display this message.

14. Correct password must be entered to change the view of the app.

 

Existing Functionality

-- All existing functionality must work as is. All screens & UI elements must be fully functional

-- There should be no crashes in the app, no overlapping or misaligned UI elements

-- No build warnings or errors when running the project with latest XCode

 

SETUP

-- See the challenge forums for how to request access to the Gitlab repo

 


Final Submission Guidelines

-- Xcode 9.2 project with all screens and functionality as outlined above

-- Code must compile against iOS SDK 11.x with a deployment target of iOS 11

-- All code must be written in Swift 4 and be well commented

-- Upload your source project as a zip

-- Winner will be asked to raise a merge request to the repo

ELIGIBLE EVENTS:

2018 Topcoder(R) Open

Review style

Final Review

Community Review Board

Approval

User Sign-Off

ID: 30063377