This module adds the ability to group l10n_server projects into sets.
Hello, I'd like to request full project status for the following module: Localization server project sets (l10n_projectsets).

This module allows any project to be marked as part of a set of projects and it adds the ability to download a single .tar.gz file containing all related files in all projects within a given set.

It adds an administration interface for defining sets at admin/l10n_server/project_sets and a user interface for translators at translate/project_sets.

Project page: http://drupal.org/sandbox/lucascaro/1568220
Cloning:
git clone --recursive --branch 7.x-1.x git.drupal.org:sandbox/lucascaro/1568220.git l10n_projectsets
This module is currently implemented for drupal 7.x and works with l10n_server-7.x-1.x.

Thanks for the reviews!

--
Reviews to other projects:
#1429208: snapengage - http://drupal.org/node/1429208#comment-6004610
#1405204: Relation clone - http://drupal.org/node/1405204#comment-6005072
#1203208: [D6] Featurelist - http://drupal.org/node/1203208#comment-6005250

2nd Review:
#1395478: Speed Form Blocks - http://drupal.org/node/1395478#comment-6022386
#1395478: Speed Form Blocks - http://drupal.org/node/1395478#comment-6025446
#1395478: Speed Form Blocks - http://drupal.org/node/1395478#comment-6026312

3rd Review:
#1395478: Speed Form Blocks - http://drupal.org/node/1395478#comment-6027236
#1395478: Speed Form Blocks - http://drupal.org/node/1395478#comment-6030574
#1315356: [D6] SocialMediaFeed - http://drupal.org/node/1315356#comment-6030726

Comments

lucascaro’s picture

Issue summary: View changes

Added first review to other projects.

pgogy’s picture

Hello,

I can't find L10n_community to install - http://drupal.org/search/apachesolr_multisitesearch/L10n_community ?

Is it http://drupal.org/project/l10n_server ? Or - http://drupal.org/project/l10n_install?

Maybe add these to the readme.txt

Thanks

pgogy’s picture

Issue summary: View changes

Added second project review.

lucascaro’s picture

Hey @pgogy thanks for taking the time to review! yes, l10n_community is part of l10n_server, I'll add that to the readme and explicitly as a dependency on the info file!

thanks!

pgogy’s picture

I thought it might be something too technical for me, but I always try to offer as much help as possible so people don't get stuck :)

lucascaro’s picture

thanks, it's all committed.

klausi’s picture

@lucascaro: don't forget to add the review bonus tag if you did reviews of other projects as outlined in #1410826: [META] Review bonus.

lucascaro’s picture

Issue tags: +PAreview: review bonus

presto! thanks klausi!

KhaledBlah’s picture

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

This automated report was generated with PAReview.sh, your friendly project application review script. You can also use the online version to check your project. Get a review bonus and we will come back to your application sooner.

Severity minor, Drupal Commenting Standards, Internationalization, Drupal Security Checks, Drupal SQL Standards, Drupal Coding Standards

sites/all/modules/pareview_temp/./test_candidate/tests/l10n_projectsets.test:
 +143: [minor] in most cases, replace the string function with the drupal_ equivalent string functions
 +193: [minor] in most cases, replace the string function with the drupal_ equivalent string functions

Status Messages:
 Coder found 5 projects, 5 files, 2 minor warnings, 0 warnings were flagged to be ignored

FILE: ...tes/all/modules/pareview_temp/test_candidate/l10n_projectsets.admin.inc
--------------------------------------------------------------------------------
FOUND 3 ERROR(S) AFFECTING 2 LINE(S)
--------------------------------------------------------------------------------
 16 | ERROR | Line indented incorrectly; expected 4 spaces, found 6
 16 | ERROR | Expected "if (...) {\n"; found "if(...) {\n"
 23 | ERROR | Closing brace indented incorrectly; expected 6 spaces, found 4
--------------------------------------------------------------------------------


FILE: ...es/all/modules/pareview_temp/test_candidate/tests/l10n_projectsets.test
--------------------------------------------------------------------------------
FOUND 1 ERROR(S) AFFECTING 1 LINE(S)
--------------------------------------------------------------------------------
 143 | ERROR | Line indented incorrectly; expected 6 spaces, found 7
--------------------------------------------------------------------------------

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

manual review of the 7.x-1.x branch:

l10n_projectsets.module
Not really important but this

function l10n_projectsets_set_load($uri) {
  $set = l10n_projectsets_get_set($uri);
  return $set;
}

can be shortened to

function l10n_projectsets_set_load($uri) {
  return l10n_projectsets_get_set($uri);
}

since $set is never used except for the return.

l10n_projectsets.admin.inc
The config page for this module is empty when nothing has been configured so far. I think it's a good idea to add some descriptive text so that find their way around (yes, I know there is a README but still).

export.inc
This is pedantic I know but there is a newline missing at line 26 (the docstring of the new function comes immediately afterwards with no newline).

KhaledBlah’s picture

Status: Needs review » Needs work

forgot to change status, left review bonus tag for klausi to remove.

lucascaro’s picture

Status: Needs work » Needs review
StatusFileSize
new3.41 KB

Thanks @KhaledBlah! I've commited the changes you suggested, and I'm attaching a patch just to confirm the changes.

Thanks for the review!

klausi’s picture

Status: Needs review » Needs work
Issue tags: -PAreview: review bonus
StatusFileSize
new1.28 KB

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

This automated report was generated with PAReview.sh, your friendly project application review script. You can also use the online version to check your project. Get a review bonus and we will come back to your application sooner.

manual review:

  1. Please take a moment to make your project page follow tips for a great project page.
  2. l10n_projectsets_get_sets(): The first if() branch is useless where you populate $sets and then you never use it. I thnik you can remove it and just keep the else{} branch.
  3. l10n_projectsets_get_sets(): indentation levels should always be 2 spaces, also for chained DB API calls. Also elsewhere.
  4. l10n_projectsets_get_set() and l10n_projectsets_set_load(): why do you need both? Just keep l10n_projectsets_set_load() and move everything there?
  5. l10n_projectsets_set_new(): why do you need a function for an empty object?
  6. l10n_projectsets-coding_standards-1585740-9.patch: do not commit patch files into your git repository.
  7. l10n_projectsets_explore_set(): don't do this title hacking. Use a title callback in hook_menu() to make the page title right. Same for l10n_projectsets_export_page().
  8. You are using the "@" operator quite often to suppress warnings. In most cases that is a bad idea because it can get very hard to track down errors in your module. See also the warning on http://php.net/manual/en/language.operators.errorcontrol.php
  9. l10n_projectsets_export_form_validate(): why do you need that? Just set the form element as #required => TRUE and the form API will validate that for you.
  10. l10n_projectsets_export_form_submit(): don't use header(), use drupal_add_http_header() instead. Don't use die(), use drupal_exit() instead. Same in l10n_projectsets_export().
  11. "watchdog('l10n_projectsets', "Added $serve_name.");": don't embed variables directly into translatable log messages, use placeholders with watchdog().

Otherwise I think this is nearly ready. Removing review bonus tag, you can add it again if you have done another 3 reviews of other projects.

lucascaro’s picture

Status: Needs work » Needs review

Thanks @klausi for the thorough review! I've updated my drupal code sniffer with the beta version since it was not showing the errors you mentioned (and neither did http://ventral.org/pareview), so that should be fixed.

* Corrected l10n_projectsets_get_sets().
* Removed l10n_projectsets_get_set() and using l10n_projectsets_set_load() instead.
* l10n_projectsets_set_new() is used for future-proofing the creation of new set objects and to avoid warnings on undefined properties (I've added that on the comments).
* removed the patch file (whoops!)
* Using title callbacks for dynamic titles.
* Removed @ operator and using if's explicitly to avoid confusion.
* Removed validate functions that could be replaced by #required.
* changed header to drupal_add_http_header in all instances.
* using drupal_exit instead of die.
* moved variables to placeholders in watchdog call.

I'll add the PAReview bonus tag when I have the 3 reviews.
That should be it. thanks!

lucascaro’s picture

Issue summary: View changes

Added third project review.

lucascaro’s picture

Issue summary: View changes

added another review.

lucascaro’s picture

Issue summary: View changes

added 5th review

lucascaro’s picture

Issue tags: +PAreview: review bonus

done!

klausi’s picture

Status: Needs review » Reviewed & tested by the community
Issue tags: -PAreview: review bonus

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

  • Drupal Code Sniffer has found some issues with your code (please check the Drupal coding standards).
    
    FILE: ...pace/drupal-7/sites/all/modules/pareview_temp/test_candidate/export.inc
    --------------------------------------------------------------------------------
    FOUND 0 ERROR(S) AND 1 WARNING(S) AFFECTING 1 LINE(S)
    --------------------------------------------------------------------------------
     159 | WARNING | A comma should follow the last multiline array item. Found:
         |         | $serve_name
    --------------------------------------------------------------------------------
    

This automated report was generated with PAReview.sh, your friendly project application review script. You can also use the online version to check your project. Get a review bonus and we will come back to your application sooner.

manual review:
l10n_projectsets_export_page_title(): I think the menu title callback should live in the module file: the hook_menu() docs say for the file key "Does not apply to other callbacks (only page callback)." Would be interesting to track the calling code down in Drupal core to check whether the file is included before the title callback or not. I'm a bit lazy and grepping for "title callback" did not yield any good result.

But otherwise looks RTBC to me. Removing review bonus tag, you can add it again if you have done another 3 reviews of other projects.

lucascaro’s picture

Thanks @klausi, the page title callback issue actually does make sense and I've moved them to the .module file. At least in _menu_item_localize it won't load the file and I think that's how it's supposed to work since it would not make much sense to have separate files if we're including them anyways for the title.

This time I've made sure that pareview.sh reports no messages (I don't know how that missing comma passed the review last time :S).

lucascaro’s picture

Issue summary: View changes

added 6th review

lucascaro’s picture

Issue summary: View changes

added 7th review.

lucascaro’s picture

Issue tags: +PAreview: review bonus

added just in case :)

patrickd’s picture

Status: Reviewed & tested by the community » Fixed
Issue tags: -PAreview: review bonus

Thanks for your contribution and welcome to the community of project contributors on drupal.org!! :)

I've granted you the git vetted user role which will let you promote this to a full project and also create new projects as either sandbox or "full" projects depending on which you feel is best.

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.

As you continue to work on your module, keep in mind: Commit messages - providing history and credit and Release naming conventions.

Thanks to the dedicated reviewer(s) as well.

patrickd’s picture

Issue tags: +PAreview: review bonus

(doubleposted by drumming on my mouse x´D)

lucascaro’s picture

Thanks @patrickd, and also @klausi, @KhaledBlah and @pgogy!

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

Anonymous’s picture

Issue summary: View changes

added 2 more reviews.