Register
Submit a solution
The challenge is finished.

Challenge Overview

Overview

  • In this challenge you will build out an ASP.NET  website, containing just one form, using Web Api ,Bootstrap and HTML5
  • The purpose of the web form is to allow the user to enter his registration details.
  • Your goal is to create a  production quality website by  following the provided coding conventions.

Detailed Requirements

Front End

  • The form should be build using HTML5 and Bootstrap in an Aspx page
  • The UI of the form should look exactly like the Design shown in the design files. (attached to forums)
  • You can use CSS from the existing site :  http://www.aftermarketserviceproducts.com
  • Refer to 150610_Web_Form_Content.xlsx (Attached in forums) for detailed list of controls, UI logic , validations and messages to be implemented on the form.
  • Refer to muni form requirements version2.pdf(Attached in forums) for any UI  constraints, descriptions and Labels not present in the UI design. 
  • Do not include the Header and Side bar in the form. 
  • Some of the fields are dependent on selections made on prior fields
  • Use Jquery to implement the dynamic controls logic and UI Validations.
  • The user should be able to upload a file. The File input should be filtered to accept PDF , .txt and Word (.doc .docx)  only and Size should be <10M
  • If file size exceeds maximum limit (10MB), Show an error message:  "File Exceeds Maximum Limit (10MB). Please contact ASPHelp@daimler.com for assistance." This message should be Configurable

  • Integrate Google’s reCaptcha into the form
  • All user inputs , including Captcha should be validated before the form is submitted
  • The form should be work in IE(8,9,10,11), Chrome, Firefox, Safari
  • The form should be work on PC and Tablets 

Server Side

  • The user should be able to submit the form after all the inputs are validated.
  • When the user clicks the Submit button, 2 emails  should be created and sent
    • Email  1: Request for Quote Email to Configured Internal User
    • Email 2: Confirmation Email to the user
  • Details for Email 1:
    • Subject: should be picked up from the Web config .  Set it to “Request for Coverage”
    • Recipient: Should be picked from the configurations
    • From:  Should be picked from the configurations
    • Reply to: Should be picked from the configurations
    • Attachment: File Uploaded by the User
    • Body: The email body should be a bulleted list of the user’s selections and inculde a configurable message
      • For example :
      • Hi,
      • A new Request for quote has been generated:
        • Government / Municipality: XYX
        • Coverage Type: Engine
        • ect.
  • Details for Email 2:
    • Subject: should be picked up from the Web config .  
    • Set it to “Confirmation of Request for coverage”
    • Recipient: This is the email entered by the user in the form
    • From:  Should be picked from the configurations
    • Reply to: Should be picked from the configurations
    • Attachment: No attachment
    • Body: The email body should be a bulleted list of the user’s selections  (Same as Email 1) and inculde a message. The message template should be configurable
      • For example :
      • Hi, 
      • This is a reciept for your request for quote. This is an auto generated email. If you have any questions , please forward them to email@email.com 
      • Your selections are:
        • ���Government / Municipality: XYX
        • Coverage Type: Engine
        • ect.
  • On success redirect to Confirmation page
  • In case of an Error, show the error message on the top of the form.
  • Error messages are described in the  150610_Web_Form_Content.xlsx (Attached in forums)
  • The outgoing Email server should be configurable
  • The URI Template should be configurable
  • All messages should be configurable
  • All configurations should be in web.config

Error Handling

  • All the exceptions should be logged in a file using log4net.
  • Exception handling conventions, as detailed in "Coding Conventions 1.3.pdf" , should be followed.

Code Quality:

  • You need to strictly follow the coding conventions.
  • Follow the coding conventions described in the "Coding Conventions 1.3.pdf"  provided in forums
  • There should be no hard coded configurations. Email Configurations and messages should be configurable.

Architecture

  • Build the Website with WebApi
  • Code should be Modularized with separate controllers for UI logic, Email messaging and  logging

Development Environment:

  • Visual Studio 2013
  • Dot.Net 4.0
  • Web Api
  • IIS 8.0
  • Bootstrap v 3.3
  • jQuery v1.11
  • HTML5


Final Submission Guidelines

 Submission Deliverable

  • Upload entire Source Code (Entire VS 2013 project workspace) as your submission.  
  • Include Deployment Guide with detailed steps to deploy on IIS and verify the deployment
  • Provide detailed guide to configure the Website
  • Video Demo of your solution and Code walk through
  • Host your solution so that it can be functionally verified (good to have)

ELIGIBLE EVENTS:

2015 topcoder Open

Review style

Final Review

Community Review Board

Approval

User Sign-Off

ID: 30050447