Key Information

Register
Submit
The challenge is finished.

Challenge Overview

This challenge is the first in a series of Drupal challenges that we’ll be launching over the next few weeks. The first challenge focuses on extending the existing Entity Form Drupal module with the following features mentioned below.

If you’re a Drupal developer, you’ve probably frequently used Entity Form to build things like Contact Us pages, survey forms, etc. The Entity Form module is popular as it allows using standard Drupal node fields on a form. A simple example as shown below is available here

 

Screen Shot 2015-12-15 at 2.18.17 PM.png

 

However, it does have the following limitation which we’d like to address

Custom Export & Import

Though EntityForm provides basic export capabilities using the View Data Export feature, it is fairly limited. We would like to enhance this as per the following

- Allow users to export a set of modified reports made using the Entity forms admin interface to an Excel spreadsheet for management purposes, potentially modifying this, and re-importing the modified form definition to a Drupal website.

- The client uses about 800 of these forms, therefore, the export/ import feature should be easy to use - allowing forms to be modified easily, exported and reimported into the system.

- The preferred export/ import format is CSV. However, if there are any compelling issues (should be discussed in forums with co-pilot), we can allow using JSON/ XML as the metadata format as well.

A crude visualisation for export is as follows

Screen Shot 2015-12-15 at 2.29.38 PM.png

- If the export is successful, it should generate the CSV (or XML/JSON) output file
- If the export fails, it should show an appropriate error message

Similarly, for import, the user can click a button, choose a file and then be able to view the imported form contents.

Screen Shot 2015-12-15 at 2.33.05 PM.png

- If the import is successful, the user should be able to preview the imported form
If the import fails, it should show an appropriate error message

Important!
The extension needs to be developed for Drupal 7
The implementation must follow Drupal best practices
All code must be well commented and must follow Drupal coding standards
Ensure that admin privileges are respected and the implementation does not have any security loopholes.
- The extension should be scalable, so it works with a large number of form fields

Useful References
Views Data Export and Feed Import modules

Hosting
Please use the Acquia Cloud Free Tier for hosting/ testing

Note for Submitters & Participants

Please note that all submissions should be judged based on the following criterias provided by the client

-        Adherence to Drupal coding standards
-        Adherence to PHP coding standards
-        Use of unit testing
-        Use of Drupal’s standard administration functionality for configuration
-        Innovative use of functionality including functionality beyond what is asked for.
-        Ease of installation using Drupal standards for module installation.

 

 



Final Submission Guidelines

- Submit the Drupal extension zip
- Submit a detailed Deployment and Verification Guide with screenshots explaining how to deploy your extension and how to verify the export, import features
- Submit a demo video (hosted on YouTube as unlisted video)
- Provide access to your demo Acquia Cloud account for verification

ELIGIBLE EVENTS:

2016 TopCoder(R) Open

REVIEW STYLE:

Final Review:

Community Review Board

Approval:

User Sign-Off

SHARE:

ID: 30052458