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
Comment #2
avpadernoThank 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.
Comment #3
avpadernoThe 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.
Comment #4
ansonwhan commentedModule updated per initial review feedback; ready for follow-up review.
Comment #5
vuilThank 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.Comment #6
avpadernoThe 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===.Comment #7
vuil@kiamlaluno It is better as a suggestion and when it is really need. Thank you!
Comment #8
avpadernoThe 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.Comment #9
vuilThank 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') ?? 1instead 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!
Comment #10
avpadernoAlso, 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.
Comment #11
avpadernoThank 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.