[72hr]GSAR - Phase 1(Campaign) - Implement Do not track(DNT) challenge

Key Information

Register
Submit
The challenge is finished.

Challenge Overview

Challenge Overview

Welcome to the first challenge of the new project, in this challenge we will disable user tracking if DNT is enabled by user.

NOTE: Please be careful of timelines, every phases are shorter than normal challenge.

Project Overview

Our client has three .NET websites and two PHP blogs in which Google Analytics(GA) and Google tag manager(GTM) has been used for user tracking. With all modern browsers, there is an option for a user to set DO NOT TRACK(DNT). But GA and GTM don't respect the DNT so we need to handle this at code.

So in this challenge, we will like to update the existing code to respect the user's DNT setting. 

Technology Stack

Javascript, .Net 4, SQL Server

Browser Support

All mobile and desktop browsers which support DNT.

Code Access

Code is shared on the forum.

Individual Requirement

1) Update the existing codebase to disable user tracking if DNT is enabled by the user.
2) Create a Google Analytics plugin that can be used on each call of GA.
3) Handle both GA and GTM
4) Update in the codebase where it is tracking a user through GA/GTM

NOTE: we have other sites in which GA/GTM is used for tracking users, we would be using the outcome of this challenge to those sites as well, so please make it reusable as much as possible.

Non-functional requirements:

  • Follow the existing code style of the codebase
  • Update the Readme on how to set this feature
  • Provide a easy and robust way to implement this


Final Submission Guidelines

Please submit a zip file containing:

1) Git patch against the latest develop branch.
2) Implementation guide with detail how your solution can be implemented in other similar project using GA/GTM
3) Verification Guide with detail on how to verify your solution

ELIGIBLE EVENTS:

2020 Topcoder(R) Open

REVIEW STYLE:

Final Review:

Community Review Board

Approval:

User Sign-Off

SHARE:

ID: 30118538