About the module

Sandbox page: https://www.drupal.org/sandbox/jmokay/2513066

Demonstration Block/View: When turning on this module an Entity Pager demonstration View block is created called: Entity Pager Example. Enable this block in a region of your theme on a page with a node on and this will display an Entity Pager block for nodes.

YouTube demonstration: Entity Pager module on YouTube

Screenshot instructions: http://www.jmokay.com/drupal/entity-pager-module

Description

The Entity Pager modules provides next and previous navigation on any Entity (e.g. Nodes, Users etc..). The items and the order they appear are completely customizable via Views.

Using the modules you can add multiple different navigation blocks on the same entity. This module combines Views, Blocks, Tokens and has its own internal intelligent advice system with tips that are (optionally) published to Watchdog. It is designed to run fast with the minimum of processing and will happily provided navigation on 10,000's of nodes in a fraction of a second (as demonstrated in the YouTube video).

It is simple to use, allowing you can create new Navigation blocks in a few seconds.

git clone --branch 7.x-1.x http://git.drupal.org/sandbox/JmOkay/2513066.git entity_pager

Comparison with other modules

Before writing the Entity Pager module I carefully reviewed the modules that attempt to solve a similar problem. None of them where as fast, customizable and would work off any Entity (as oppose to just Nodes). For more complex pagers, my module can combine with the Entity Reference module to create generic sub-navigationon related entities. e.g. navigate through a Brands products or go back to the Brand page itself (as demonstrated in the YouTube video above).

A comparison page of alternative modules: https://www.drupal.org/node/1276920

Each of these modules has taken a fundamentally different approach to solving (coding) the problem.

- Views Navigation: it only works once an alternative url is loaded, it is node (not entity based) and changing the url will effect SEO, it is not fast as pointed out by the module.

- Treewalk Previous / Next: It does not give the user an opportunity to decide on their own sequence.

- Previous/Next API: it is an API and does not provide any UI

- Free pager: as pointed out by the module itself, it seriously effects the speed of your site with only 100+ results. (The Entity Pager module I’ve created takes a completely different approach and will happily create a pager on 10,000's of nodes in a fraction of a second).

- Flippy: no flexiblity, it only allows you to navigation through a whole content type.

- Custom Pagers: it is node based (not entity based) and uses PHP snippets.

CommentFileSizeAuthor
#8 Automated Review.txt15.23 KBjungle

Comments

JmOkay’s picture

Issue summary: View changes
PA robot’s picture

Status: Needs review » Needs work

Git clone failed for http://git.drupal.org/sandbox/jmokay/2513066.git while invoking http://pareview.sh/pareview/httpgitdrupalorgsandboxjmokay2513066git

Git clone failed. Aborting.

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.

Farreres’s picture

Please, you forgot adding you git clone command. Please, review the info needed for sending an application. You should copy the git clone command for non-administrators, read carefully the instructions!

JmOkay’s picture

Issue summary: View changes
JmOkay’s picture

Issue summary: View changes
Status: Needs work » Needs review
JmOkay’s picture

Status: Needs review » Needs work
JmOkay’s picture

Status: Needs work » Needs review
jungle’s picture

Status: Needs review » Needs work
StatusFileSize
new15.23 KB

First, in the Description section, the git clone command is wrong.

change this

git clone --branch http://git.drupal.org/sandbox/JmOkay/2513066.git entity_pager

into

git clone --branch 7.x-1.x http://git.drupal.org/sandbox/JmOkay/2513066.git entity_pager

Automated Review

Please see the attachment or visit http://pareview.sh/pareview/httpgitdrupalorgsandboxjmokay2513066git

Manual Review

Individual user account
Yes: Follows the guidelines for individual user accounts.
No duplication
Yes: Does not cause module duplication and/or fragmentation.
Master Branch
No: Does not follow the guidelines for master branch.
Licensing
I thought you should remove the LICENSE.txt file form you module. please see licensing requirements.
3rd party assets/code
Yes: Follows the guidelines for 3rd party assets/code.
README.txt/README.md
Yes: Follows the guidelines for in-project documentation and/or the README Template.
Code long/complex enough for review
Yes: Follows the guidelines for project length and complexity.
Secure code
Yes: Meets the security requirements.
Coding style & Drupal API usage
Please see the attachment and fix them all.
JmOkay’s picture

Issue summary: View changes
JmOkay’s picture

Status: Needs work » Needs review

I believe the project is all okay and good to go.

I have dealt with all issues from the manual review. The pareview is clean (with the exception of 1 line, a call to a Views class method, this is a call to existing Views code and this module has no control over that code).

http://pareview.sh/pareview/httpgitdrupalorgsandboxjmokay2513066git

darol100’s picture

Status: Needs review » Reviewed & tested by the community

So there different between Entity Pager and the rest of the modules with this funcionality is the speed and that it use other contrib modules?

Automated Review

Pareview.sh show some warnings - http://pareview.sh/pareview/httpgitdrupalorgsandboxjmokay2513066git

Coder modules does not show any errors.

Manual Review

Individual user account
Yes: Follows the guidelines for individual user accounts.
No duplication
Yes: Does not cause module duplication and/or fragmentation.
Master Branch
Yes: Follows guidelines for master branch.
Licensing
Yes: Follows the licensing requirements.
3rd party assets/code
Yes: Follows the guidelines for 3rd party assets/code.
README.txt/README.md
Yes : Follows guidelines for in-project documentation and/or the README Template.
Code long/complex enough for review
Yes: Follows the guidelines for project length and complexity.
Secure code
Yes: Meets the security requirements.
Coding style & Drupal API usage
List of identified issues in no particular order. Use (*) and (+) to indicate an issue importance. Replace the text below by the issues themselves:
  1. This project name does not match with the modules name. I think you should rename your project to entity_pager instead of entitypager to have consistency between the project name and the module.
  2. You hook_help last sentence, "see demonstration video at: ??????". Why you just add the youtube video link instead of the "??????" ?.
  3. I think nice to have if there is an exiting demo block view.

The starred items (*) are fairly big issues and warrant going back to Needs Work. Items marked with a plus sign (+) are important and should be addressed before a stable project release. The rest of the comments in the code walkthrough are recommendations.

If added, please don't remove the security tag, we keep that for statistics and to show examples of security problems.

This review uses the Project Application Review Template.

This project works like charm, I do not see any blocker.

JmOkay’s picture

Issue summary: View changes
JmOkay’s picture

Thanks for the last review:

> This project works like charm, I do not see any blocker.

I’ve also looked at the suggestions:

  1. As recommended, I have renamed the project back to entity_pager instead of entitypager to have consistency between the project name and the module.
  2. In the link to the YouTube video you mentioned changing the hyperlink text, I feel that 'Entity Pager module on YouTube' seems more descriptive text than the obscure YouTube link address. So I left it as ''Entity Pager module on YouTube'
  3. I have added a demonstration Block/View as requested, it is called: Entity Pager Example. This should mean people can use/review the module in a few seconds.
damienmckenna’s picture

Status: Reviewed & tested by the community » Fixed

Thanks for your contribution, James!

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.

Status: Fixed » Closed (fixed)

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