The Adobe Launch module for Drupal provides the functionality to inject the Adobe Launch javascript snippet in the head section of your rendered site through custom path rules managed in the backend configuration/administration page. It eliminates the need to manually edit and push theme code or other modules to support AdobeLaunch.

Note about similar projects

Adobe has earmarked their Adobe DTM service for sunset in 2020, the Adobe DTM module for Drupal does not support Adobe Launch without a patch, but the patch does not provide the functionality this module provides.

Documentation

https://www.drupal.org/docs/8/modules/adobe-launch

Project link

https://www.drupal.org/project/adobe_launch

Git instructions

git clone --branch 8.x-1.x https://git.drupalcode.org/project/adobe_launch.git

PAReview checklist

https://pareview.sh/pareview/https-git.drupal.org-project-adobe_launch.git

Comments

ansonwhan created an issue. See original summary.

avpaderno’s picture

Issue summary: View changes

Thank you for applying! I added the Git instructions for non-maintainer users and the PAReview checklist link. Reviewers will check the project and post comments to list what should be changed.

If you haven't done it, yet, please check the PAReview report and fix what needs to be fixed. There could be some false positives; verify that what reported is correct, before making any change.

avpaderno’s picture

Status: Needs review » Needs work

The License file must be removed.
Modules, theme, installation profiles and distributions hosted on drupal.org have the same license used from Drupal core: GPLv2+, not GPLv3. Agreeing on the Git access terms, you agreed to only commit code licensed as GPL-2.0+ and non-code assets licensed with GPL friendly licenses. GPL-2.0+ doesn't mean choose between GPLv2 or GPLv3.

ansonwhan’s picture

Status: Needs work » Needs review

Module updated per initial review feedback; ready for follow-up review.

vuil’s picture

Status: Needs review » Needs work

Thank you for the contribution!

I mention some issues that need to be fixed:

(1.) Proposed resolution:
The directory assets would be regarded as a container of static files by default, as an easy, convention over configuration way for modules to ship images and other files.

(2.)
It is always better to use strict type === instead of == especially in adobe_launch.module.

avpaderno’s picture

The first point doesn't make clear what the issue is.
For the second point, Drupal core uses ==. I am not sure we can request modules to always use ===.

vuil’s picture

@kiamlaluno It is better as a suggestion and when it is really need. Thank you!

avpaderno’s picture

Status: Needs work » Needs review

The purpose of these applications is verifying the users understand how to write secure Drupal code that following the Drupal coding standards and correctly uses the Drupal API.
We don't require the code uses the === operator instead of ==, which is not a reason to change status to Needs work.

vuil’s picture

Status: Needs review » Reviewed & tested by the community

Thank you for the contribution!

After a manual review I have some recommendations as the following two points:

(1.)
Please replace:
$config->get('paths') !== NULL ? $config->get('paths') : implode("\n", $default_admin_paths)
with
$config->get('paths') ?? implode("\n", $default_admin_paths)

(2.)
Also use the more sense:
$config->get('paths_negate') ?? 1
instead of
$config->get('paths_negate') !== NULL ? $config->get('paths_negate') : 1

* Both of them are in Drupal\adobe_launch\Form\AdobeLaunchConfigForm.

I have not found any security related issues into the code and I set the issue status to Reviewed & tested by the community.

Thank you again!

avpaderno’s picture

Also, preprocess functions don't return any value, but change the values contained in the array passed by reference. The following code in a preprocess function is wrong.

  // If Adobe Launch is disabled or the path check returns FALSE, return.
  if (!$enabled || !_adobe_launch_path_check()) {
    return FALSE;
  }
avpaderno’s picture

Assigned: Unassigned » avpaderno
Status: Reviewed & tested by the community » Fixed

Thank you for your contribution! I am going to update the project to opt it into security coverage.

These are some recommended readings to help with excellent maintainership:

You can find more contributors chatting on the IRC #drupal-contribute channel. So, come hang out and stay involved.
Thank you, also, for your patience with the review process.
Anyone is welcome to participate in the review process. Please consider reviewing other projects that are pending review. I encourage you to learn more about that process and join the group of reviewers.

I thank all the dedicated reviewers as well.

Status: Fixed » Closed (fixed)

Automatically closed - issue fixed for 2 weeks with no activity.