ReachEdge is a simple module to install the ReachEdge tracking snippet to appropriate pages on the website. I am unaware of any other projects that add the ReachEdge Tracking code.
Here is a site id: 0609400b-668f-4f63-a09f-bd23b568f1ff
With this installed, you will be able to see network traffic going to ReachLocal related to visit information in the browser inspector while visiting the front end pages.
Project Page: https://www.drupal.org/sandbox/redrupalplugin/2675668
To Clone:
git clone --branch 7.x-1.x https://git.drupal.org/sandbox/REDrupalPlugin/2675668.git reachedge
Manual reviews of other projects
Comments
Comment #2
PA robot commentedThere are some errors reported by automated review tools, did you already check them? See http://pareview.sh/pareview/httpgitdrupalorgsandboxREDrupalPlugin2675668git
We are currently quite busy with all the project applications and we prefer projects with a review bonus. Please help reviewing and put yourself on the high priority list, then we will take a look at your project right away :-)
Also, you should get your friends, colleagues or other community members involved to review this application. Let them go through the review checklist and post a comment that sets this issue to "needs work" (they found some problems with the project) or "reviewed & tested by the community" (they found no major flaws).
I'm a robot and this is an automated message from Project Applications Scraper.
Comment #3
abhishek.pareek commentedHey, there are some feedback from my end..
First of all please change your module folder name to match your rest of the module file's name.
Another thing is that you have used two variables here at
line 104: reachedge_pages
and at
line 103: reachedge_visibility_pages
but i don't see you have set them anywhere, then what is the need to store that fixed value in database.
Although this one is minor but still, at line 24: Title is not wrapped up in t()
Comment #4
REDrupalPlugin commentedI'm not positive what you mean by "change your module folder name to match the module's file name" can you explain?
I have removed the references to the variables: reachedge_pages and reachedge_visibility_pages
Also, If I try to use t on line 24, I get phpcs tells me not to use t() in hook_menu()
Comment #5
abhishek.pareek commentedWell by that I only meant that your project application git clone command should be like this:
git clone --branch 7.x-1.x https://git.drupal.org/sandbox/REDrupalPlugin/2675668.git reachedgeinstead ofgit clone --branch 7.x-1.x https://git.drupal.org/sandbox/REDrupalPlugin/2675668.gitYes its not required in hook_menu(), translation of title and decription in hook_menu are handled internally.
Comment #6
REDrupalPlugin commentedComment #7
REDrupalPlugin commentedComment #8
laboratory.mikeWell hello REDP! I used to work with Loni at ReachLocal. I will go ahead and review :D
Comment #9
laboratory.mikeOK, here's my review:
Code
The structure is very good overall. While the individual files are small enough to all fit into one .module file without being overly cluttered, I like how it's broken out with the admin.inc and variable.inc files. The functions also follow namespace conventions, and all functions have some Doxygen documentation. Great stuff!
Security
In reachedge.module I saw $_GET['q'] a few times; these should probably be wrapped in a check_plain() function or similar.EDIT: check_plain() is only necessary when data is printed to HTML, which is not the case here.Also, I saw a call to php_eval(). Is it really needed? That said, I see that it evaluates a constant that is defined on an admin page.
Other Comments
Having worked for ReachLocal, I know that 'http://go.reachlocal.com/contact-us-edge.html' in README.txt is one of RL's marketing pages. Of course, I know that going through that page is the only way to get ReachEdge, but it would be nice to explain first what ReachEdge is, followed by explaining how the module is a bridge to install ReachEdge on Drupal sites. In other words, the wording in the first paragraph could be a little clearer, but otherwise the README file is well written.
Comment #10
laboratory.mikeChanging to 'needs work' until we can get an explanation or fix for the security items.
Comment #11
laboratory.mikeAh, just caught this; In your hook_menu, the title and description should be wrapped in the t() function.
Comment #12
kattekrab commentedHi @REDrupalPlugin!
Thanks for contributing your module.
I've just confirmed you as a new user - Welcome to the Drupal.org community :-)
Glad to see you've had a couple of reviews now - would you be willing to help some others get off the starting line too and review some other modules? Once you've reviewed three other projects you're eligible for the Project Application Review Bonus, which will put you in the fast track lane to approval.
Thanks again - and good luck!
cheers
Donna
Comment #13
REDrupalPlugin commentedI have wrapped all the $_GET['q'] with check_plain, per your recommendation.
No it is not needed, I completely removed the elseif and the php_eval that was in it.
Actually, phpcs tells me not to use t() in hook_menu()
Thank You for taking the time to review my module in detail. I have implemented all of your recommendations. I will look into rewording the first paragraph of the description, but I don't think that should hold up my review.
Comment #14
REDrupalPlugin commentedComment #15
kattekrab commented@REDrupalPlugin - Have you done any other module reviews yet?
Make sure you link to them in the summary here and add the PARreview bonus tag when you have to get more eyeballs on your module.
More info on the review bonus system is here: https://www.drupal.org/node/1975228
Comment #16
kari.kaariainen commentedPareview reports that there are two README files and @author unnecessarily used in documentation.
Comment #17
REDrupalPlugin commentedRemoved README.md and @author tag
Comment #18
kari.kaariainen commentedApparently one extra line (line 9 actually) was left behind in reachedge.module.
10 | ERROR | [x] Additional blank lines found at end of doc commentComment #19
kari.kaariainen commentedWhat site id should I use for testing? I can get a free trial at http://go.reachlocal.com/naus-offer-edge-free-trial.html but they require my contact info including email. Is there a way to test this without giving my email address?
Comment #20
REDrupalPlugin commentedI have fixed the Extra Line.
And I am trying to get you an account setup for testing.
Thanks,
Mark
Comment #21
REDrupalPlugin commentedYou can use this site id: 95bf76b7-518d-46b0-aa2a-1255f174bc87
I was not able to get you a login into our system to view the reporting, and lead management, etc....
However, you can see it working on the client side if you open your developer tools. You will be able to see the network traffic posting inisghts information and visit tracking. If your site has a form on it, you should see the network traffic for capturing form posts, when you submit your form.
If you add this phone number to your site "089242925016", you will see that it gets replaced with "08994396940". Or if you the text "STRING REPLACEMENT", you will see that it gets replaced with "THIS WORKS".
Looking at the sources section of developer tools, you should see that it loads the remote file: https://cdn.rlets.com/capture_configs/95b/f76/b75/18d46b0aa2a1255f174bc8... Which is the config file for that site id. Config files contain which phone numbers to use when visiting from different campaigns or referral sources.
I hope this gives you the information you would like to know.
Thanks,
Mark
Comment #22
kari.kaariainen commentedA couple of suggestions: on admin/config/system/reachedge you could use placeholder instead of default value, like so:
'#attributes' => array('placeholder' => 'XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX'),Also increase the size slightly so the user can see the end of the placeholder. (The end doesn't really need to be seen, but it's nicer that way.)
'#size' => 38,After entering the site id and going to some other page, I get a long pop-up in German!: "Wir erheben, verarbeiten und nutzen bestimmte personenbezogene Daten von Ihnen...". Finnish could've been expected (I live in Finland) but German is highly unexpected ;)
089242925016 gets changed to 08994396959 (not the one you said) with a delay varying from a fraction of a second to a couple of seconds, which could be confusing to a visitor.
STRING REPLACEMENT was not changed.
I see stuff happening at developer tools, so I guess that part is working, and it doesn't depend on Drupal anyway.
Comment #23
REDrupalPlugin commentedUpdated the Size, per your recommendation.
It is a test account so the configuration can be changed by several different people at any time.
But overall it is loading the config file related to the site id supplied and the javascript is running as expected.
So this should be approved now, correct?
Thanks,
Mark
Comment #24
kattekrab commented@REDrupalPlugin - To speed up approval, you'll need to post your reviews of other projects to the issue summary.
The Git admins are only approving applications that have the review bonus.
For info on the review bonus please see: #1975228: Review bonus
Here's some new applications that need review:
* #2702713: [D7] Duplicate Images
* #2700917: [D7] Views Results Inject
* #2624458: [D8] Simple Analytics
Comment #25
kari.kaariainen commented@REDrupalPlugin, would you mind sharing why you chose not to use the placeholder?
I think you should revise the Description section of the README.txt file. You have now seven links to the same contact address. Also I'd prefer reading about how this Drupal module works, instead of what looks like a sales pitch for the service. A brief explanation about the service and a link to it would suffice in my opinion. Following that, a description of what this Drupal module does.
At the Requirements section of the README.txt you could mention how to get the ID.
Also at reachedge_menu and reachedge_variable_group_info I'd prefer having a description about those particular menu items instead of the boilerplate description about the service "ReachEdge offers lead & call tracking...".
Comment #26
kattekrab commented@kari.kaariainen - that sounds like back to needs work?
Comment #27
REDrupalPlugin commentedCommented on issue https://www.drupal.org/node/2702713 for ParReview Bonus:
https://www.drupal.org/node/2702713#comment-11087913
Comment #28
REDrupalPlugin commentedComment #29
REDrupalPlugin commentedComment #30
REDrupalPlugin commentedUpdated Readme file
Comment #31
REDrupalPlugin commentedComment #32
REDrupalPlugin commentedWordpress Approved: https://wordpress.org/plugins/reachedge/
Joomla Approved: http://extensions.joomla.org/extensions/extension/marketing/reachedge
Comment #33
REDrupalPlugin commentedComment #34
REDrupalPlugin commentedComment #35
REDrupalPlugin commentedComment #36
REDrupalPlugin commentedComment #37
REDrupalPlugin commentedComment #38
REDrupalPlugin commentedUpdated Descriptions
Comment #39
REDrupalPlugin commentedWaiting another week before changing to critical
Comment #40
kari.kaariainen commentedWhat's the story with the placeholder? Do you really prefer a default value that the user has to delete?
Comment #41
REDrupalPlugin commentedUpdated to use placeholder instead of default value
Thanks,
Mark
Comment #42
kari.kaariainen commentedTested. Works as advertised. Found no problems. No errors from pareview.sh.
Comment #43
klausiRemoved 2 automated review links from the issue summary.
Comment #44
klausimanual review:
But otherwise looks good to me.
Thanks for your contribution, Mark!
I updated your account so you can promote this to a full project and also create new projects as either a sandbox or a "full" project.
Here are some recommended readings to help with excellent maintainership:
You can find lots more contributors chatting on IRC in #drupal-contribute. So, come hang out and stay involved!
Thanks, 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.
Thanks to the dedicated reviewer(s) as well.