This module give the ability to manually invoke resource operations callbacks defined by Services 3.x compatible modules as Services 2.x provided out-of-the-box for defined services callbacks.

No implementation was found in current Services 3.x release so this module provide a optional UI to achieve this goal. This is a d7 implementation only for now.

Sandbox : http://drupal.org/sandbox/garphy/1358780
Git : http://drupalcode.org/sandbox/garphy/1358780.git (please use 7.x-1.x branch)

Reviewed projects :

Comments

patrickd’s picture

Status: Needs review » Needs work

Review of the 7.x-1.x branch:

  • Drupal Code Sniffer has found some code style issues (please check the Drupal coding standards):
    
    FILE: .../sites/all/modules/pareview_temp/test_candidate/services_browser.module
    --------------------------------------------------------------------------------
    FOUND 8 ERROR(S) AND 1 WARNING(S) AFFECTING 9 LINE(S)
    --------------------------------------------------------------------------------
       8 | ERROR   | Missing function doc comment
      13 | WARNING | A comma should follow the last multiline array item. Found: )
      18 | ERROR   | Missing function doc comment
      43 | ERROR   | Missing function doc comment
      74 | ERROR   | Missing function doc comment
      94 | ERROR   | Missing function doc comment
     162 | ERROR   | Missing function doc comment
     230 | ERROR   | Missing function doc comment
     272 | ERROR   | Missing function doc comment
    --------------------------------------------------------------------------------
    

This automated report was generated with PAReview.sh, your friendly project application review script. Go and review some other project applications, so we can get back to yours sooner.

Source: http://ventral.org/pareview - PAReview.sh online service

garphy’s picture

Status: Needs work » Needs review

Updated the code to add missing docs.

garphy’s picture

Title: Resources Browser » Services Browser

Cleaned up remaining coding convention needs.
Renamed the issue to match the real name of the module.
PAreview now yield nothing.

patrickd’s picture

Status: Needs review » Needs work

Your README.txt is a little too simple ;-)
Please have a look at other readmes and have a look at http://drupal.org/node/447604 (readme styles)

FILE: ...ew/sites/all/modules/pareview_temp/test_candidate/services_browser.info
 9 | ERROR | Files must end in a single new line character

There's a lack of inline comments, please tell other developers what you're doing and why your doing it. So we don't have to re-think your thoughts

Line 84. First, why your doing this twice? Second, why your doing this anyway? As services is a dependency of your module this is not necessary (or ? - good example for missing code documentation)

  drupal_load('module', 'services');
  drupal_load('module', 'services');

You also got a security issue in your module (XSS Cross Site Scripting, by printing out unescaped code)
drupal_set_title(t('Resource !resource_name, operation !operation_name', array('!resource_name' => $resource_name, '!operation_name' => $operation_name)));
Your printing out !operation_name (you probably know that the ! returns unescaped output and @ is check_plained). But the values you get from your path (admin/structure/servicesbrowser/operation/%/%) are not filtered yet!

Your also not checking whether the keys your getting exists ($resources[$resource_name][$operation_name]). If I manipulate the values in the URL an error will be thrown: Notice: Undefined index: create in services_browser_operation_page() (line 130 of /srv/www/htdocs/drupal-7-test/sites/all/modules/services_browser/services_browser.module).
So you have to check for they keys first, react with a fitting error message and abort further building of the page.

There's probably more, but it makes no sense for me reviewing nearly non-commented code, sorry.

regards

garphy’s picture

Many thanks for your review. That's precious code quality advices !

misc’s picture

Status: Needs work » Closed (won't fix)

This project application has been marked as needs work for 17 weeks, and there is no possibility to contact the user. I am closing this.

@garphy, if this is wrong, please reopen.

garphy’s picture

Status: Closed (won't fix) » Needs work

Well I'm working on polishing that amongst other tasks. That take time, but I hope I'll be able to commit something to review in the following weeks.

klausi’s picture

Status: Needs work » Closed (won't fix)

Closing due to lack of activity. Feel free to reopen if you are still working on this application.

garphy’s picture

Status: Closed (won't fix) » Needs review

I finally found some time to incorporate fixes from previous remarks.
PAreview is now cleared from issues.

I also revamped some parts as Services provides a more robust API to access defined resources.
(I know, I need a bonus...)

PA robot’s picture

We are currently quite busy with all the project applications and we prefer projects with a review bonus. Please help reviewing and 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.

davidam’s picture

I've found some warnings in your code:

Coder Sniffer has found some issues with your code (please check the Drupal coding standards).

FILE: /var/www/drupal-7-pareview/pareview_temp/README.txt
--------------------------------------------------------------------------------
FOUND 0 ERROR(S) AND 3 WARNING(S) AFFECTING 3 LINE(S)
--------------------------------------------------------------------------------
5 | WARNING | Line exceeds 80 characters; contains 85 characters
12 | WARNING | Line exceeds 80 characters; contains 111 characters
13 | WARNING | Line exceeds 80 characters; contains 121 characters
--------------------------------------------------------------------------------
kscheirer’s picture

Status: Needs review » Reviewed & tested by the community

Your installation instructions are not very good - "Place the module in the sites/SITENAME/module and enable it." may confuse people, since I think most folks install modules into sites/all/modules or sites/all/modules/contrib.

You can simplify your code in services_browser_unserialize_argument() - if $value is empty() you are returning NULL in all 3 cases. Just check for that first, before the switch statement. In your theme function, you should pass the $header values through t() so they can be translated as well.

These are pretty minor issues though, marking RTBC.

kscheirer’s picture

Title: Services Browser » [D7] Services Browser
Status: Reviewed & tested by the community » Fixed

No additional problems found, you've been waiting long enough - thanks for sticking with the process! The module is clean and simple.

Thanks for your contribution, garphy!

I updated your account to let you 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 get 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.

----
Top Shelf Modules - Enterprise modules from the community for the community.

Status: Fixed » Closed (fixed)

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

Anonymous’s picture

Issue summary: View changes

keep track of a review comment url