Project page: https://www.drupal.org/sandbox/vgardner/2676800

Repository: git clone --branch 7.x-1.x http://git.drupal.org/sandbox/vgardner/2676800.git

The Facebook Instant Articles module allows administrators to create an RSS feed compatible
with the Facebook Instant Articles specification. The module provides a new View Mode for
content type where administrators can map Drupal fields with FB Instant Article formats.

* FB Instant Articles specification: https://developers.facebook.com/docs/instant-articles

Configuration

* Enable a Content type to appear in the feed by editing your content type and
enabling it on the Facebook Instant Articles vertical tab. Select the option:
"Include Content Type in Facebook Instant Articles feed".

* Once enabled go to Manage Display on your Content Type and on the view mode Facebook
Instant Articles. There you can map your fields to FB Instant Article compatible
formats and place them in the correct regions.

* Access /fbinstant.rss of your site to view the feed.

Requirements

This module requires the following modules:
* CTools (https://drupal.org/project/ctools)

Manual reviews of other projects

- https://www.drupal.org/node/2581485#comment-10904482
- https://www.drupal.org/node/2279865#comment-10904500
- https://www.drupal.org/node/2578023#comment-10904520

Comments

vgardner created an issue. See original summary.

vgardner’s picture

Title: Facebook Instant Articles » [D7] Facebook Instant Articles
PA robot’s picture

Issue summary: View changes
Status: Needs review » Needs work

There are some errors reported by automated review tools, did you already check them? See http://pareview.sh/pareview/httpgitdrupalorgsandboxvgardner2676800git

Fixed the git clone URL in the issue summary for non-maintainer users.

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.

vgardner’s picture

Status: Needs work » Needs review

All issues reported by pareview.sh have been fixed.

vgardner’s picture

Issue summary: View changes
vgardner’s picture

Issue summary: View changes
vgardner’s picture

Issue tags: +PAreview: review bonus
pankajsachdeva’s picture

Automated Review

Some issues found, you can check on this link:http://pareview.sh/pareview/httpgitdrupalorgsandboxvgardner2676800git

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] the 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] 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
List of identified issues:
  1. Warning: Invalid argument supplied for foreach() in facebook_instant_articles_get_article_nodes() (line 234 of /Applications/MAMP/htdocs/fresh-drupal/sites/all/modules/2676800/facebook_instant_articles.module).

This review uses the Project Application Review Template.

pankajsachdeva’s picture

Status: Needs review » Needs work
vgardner’s picture

Thank you for the review @pankajsachdeva,

- I've addressed all issues reported by pareview.sh - http://pareview.sh/pareview/httpgitdrupalorgsandboxvgardner2676800git
- I've addressed the issue Warning: Invalid argument supplied for foreach() in facebook_instant_articles_get_article_nodes() (line 234

vgardner’s picture

Status: Needs work » Needs review
caiovlp’s picture

I took some time to install the module and go through its code. Overall everything looks great, just found one small thing:

/**
* Implements hook_help().
*/
function facebook_instant_articles_menu() {

The comment should say hook_menu not hook_help.

vgardner’s picture

Thanks for the review @caiovlp,

Issues addressed!

caiovlp’s picture

Status: Needs review » Reviewed & tested by the community

Looks good to me... changing it to RTBC.

@vgardner - great work!

sokrplare’s picture

Second RTBC here and hoping this gets promoted soon as we're going to be implementing shortly for an early access whitelisted site for us.

anbarasan.r’s picture

I had a chance to look at the code and there is a $nodes += node_load_multiple(array(), array('type' => $content_type, 'status' => 1)); on line 236, which may break the large sites. Since its trying to load all the content on some particular content type without any limit. But this won't be an issue on smaller sites which has less nodes.

So my suggestion here is like instead of loading all the content load only top 25 or 50 like that. so this will avoid the performance hit or page timeout.

rromore’s picture

I ran into the issue described by anbarasan.r in #16 and created a patch to address the issue: https://www.drupal.org/node/2684395.

sokrplare’s picture

@anbarasan.r - nice catch, I just saw this patch earlier addressing this issue #2684395: Use EntityFieldQuery instead of node_load_multiple. While this is an important patch, I don't think it should prevent getting this module promoted and live as it's a very timely module that we need efforts aligned behind in the community (in my opinion - kudos to vgardner on the work here.

vgardner’s picture

@rromore, @sokrplare, @anbarasan.r,
Thanks for the reviews and great catches. I have a list of features I'm still yet to implement (mostly related to covering all the fields and attributes in the Facebook Instant Articles spec). Limiting the number articles was in the pipeline but you're absolutely right it could break the feed for larger sites. I'll test the patch today and address the issue.

avpaderno’s picture

Status: Reviewed & tested by the community » Fixed

Thank you for your contribution!

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!

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.

Thanks go also to the dedicated reviewer(s) as well.

vgardner’s picture

Thank you @kiamlaluno and thanks to all reviewers!

Status: Fixed » Closed (fixed)

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

avpaderno’s picture

avpaderno’s picture

Assigned: Unassigned » avpaderno
Status: Closed (fixed) » Fixed

I am giving credits to the users who participated in this issue.

Status: Fixed » Closed (fixed)

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