Hijri
Description
This is a smart module that basically extends Drupal's display date to provide Hijri Date integration with Drupal core date field and with other Drupal contributions.

This module is integrated very well with Views module. You can use it to display Hijri date instead of Gregorian date or you can have them both by mention "الموافق".
Also this module coming with Hijri block that will showing Hijri today date on your website wherever you want to show today date in your header for example.

For some Hijri issues, sometime the day by the algorithm be not exact the same day in the current period because of the moon cycle, so we resolve this issue by adding custom Hijri increment field so you can increment or decrement the Hijri date to meet the real day.

You can reach Hijri settings by going to this path: Administration » Configuration » Regional and language » Date and time » Hijri Settings.
Also you can change the Hijri format by editing the Drupal date format for (long, medium and short) types in this path: Administration » Configuration » Regional and language » Date and time » Types.

Project page
https://www.drupal.org/sandbox/drpl/2389037

Git
git clone --branch 7.x-1.0 drpl@git.drupal.org:sandbox/drpl/2389037.git hijri

Automatic Pareview
http://pareview.sh/pareview/httpgitdrupalorgsandboxdrpl2389037git

The intended Drupal core version
7.x

Reviews of other projects
https://www.drupal.org/node/2307995#comment-9546551
https://www.drupal.org/node/2398263#comment-9565869
https://www.drupal.org/node/2397237#comment-9565973

CommentFileSizeAuthor
#18 coder-results.txt12.49 KBklausi
Support from Acquia helps fund testing for Drupal Acquia logo

Comments

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 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.

mayurjadhav’s picture

Hey drpl,

You might want to update the git command as it is using your maintainer command.

Just edit your project, untick maintainer, click show and copy the command.

I will review as soon as I can.

Cheers.

drpl’s picture

Hello mayurjadhav,

Thank you for your replay

git clone --branch 7.x-1.0 http://git.drupal.org/sandbox/drpl/2389037.git hijri
cd hijri
mayurjadhav’s picture

Status: Needs review » Needs work

Hi drpl,

Thank you for your efforts, I did some manual review of the code however didn't install it yet. Please find my comments:

Automated Review

Review of the 7.x-1.0 branch (commit efe5340):

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

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
[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 in no particular order. Use (*) and (+) to indicate an issue importance. Replace the text below by the issues themselves:
  1. (*) No need to add empty files. see (hijri.install and hijri.api.php)
  2. (*) "variable_get('hijri_display_block', ','),": all variables defined by your module must be deleted in hook_uninstall().
  3. (*) hijri_preprocess_node() & hijri_preprocess_comment: doc block is wrong. See https://www.drupal.org/coding-standards/docs#forms
  4. (*) More than 2 line space. see line 350-351 of hijri.module.
  5. (*) Do not use module_load_include at the initial of file, Add it wherever requires.
  6. (*) No need to use switch you can directly pass the value using single variable. get the hijri_display_block value in variable and pass it directly to the function. see line 55 of hijri.module.
  7. (*) Unused empty parameter is pass to the function. see line 55, 3rd param of hijri.module.
  8. (*) Unused argument passed to t(). see line 16 of hijri.module.
  9. (*) Again no need to use switch, Instead you can use ternary operator. see line 280 and 326 of hijri.module.
  10. (*) instance witch is created on line 223 need to be deleted in hook_uninstall().

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.

drpl’s picture

Status: Needs work » Needs review

Hello mayurjadhav,

We have reviewed every point you mentioned one by one and fixed them all.

Regards,

mayurjadhav’s picture

Great, you need to get the review bonus for further review of your module by community members,
see https://www.drupal.org/node/1975228

drpl’s picture

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

Issue tags: -PAreview: review bonus

Removing review bonus tag, you have not listed any reviews in the issue summary? Make sure to read https://www.drupal.org/node/1975228 again. Thanks for helping!

alokvermaei’s picture

HI,

Please have a look on these points.

1: On settings page i have found the below mentioned notices .
Notice: Undefined property: stdClass::$field_hijri_correction in hijri_preprocess_node() (line 267 of F:\wamp\www\drupal\sites\all\modules\hijri\hijri.module).
Notice: Undefined index: article in hijri_preprocess_node() (line 280 of F:\wamp\www\drupal\sites\all\modules\hijri\hijri.module).
Notice: Undefined property: stdClass::$field_hijri_correction in hijri_preprocess_node() (line 267 of F:\wamp\www\drupal\sites\all\modules\hijri\hijri.module).
Notice: Undefined index: article in hijri_preprocess_node() (line 280 of F:\wamp\www\drupal\sites\all\modules\hijri\hijri.module).
Notice: Undefined property: stdClass::$field_hijri_correction in hijri_preprocess_node() (line 267 of F:\wamp\www\drupal\sites\all\modules\hijri\hijri.module).
Notice: Undefined index: article in hijri_preprocess_node() (line 280 of F:\wamp\www\drupal\sites\all\modules\hijri\hijri.module).
Notice: Undefined property: stdClass::$field_hijri_correction in hijri_preprocess_node() (line 267 of F:\wamp\www\drupal\sites\all\modules\hijri\hijri.module).
Notice: Undefined index: article in hijri_preprocess_node() (line 280 of F:\wamp\www\drupal\sites\all\modules\hijri\hijri.module).
Notice: Undefined property: stdClass::$field_hijri_correction in hijri_preprocess_node() (line 267 of F:\wamp\www\drupal\sites\all\modules\hijri\hijri.module).
Notice: Undefined index: article in hijri_preprocess_node() (line 280 of F:\wamp\www\drupal\sites\all\modules\hijri\hijri.module).
Notice: Undefined property: stdClass::$field_hijri_correction in hijri_preprocess_node() (line 267 of F:\wamp\www\drupal\sites\all\modules\hijri\hijri.module).
Notice: Undefined index: article in hijri_preprocess_node() (line 280 of F:\wamp\www\drupal\sites\all\modules\hijri\hijri.module).
Notice: Undefined property: stdClass::$field_hijri_correction in hijri_preprocess_node() (line 267 of F:\wamp\www\drupal\sites\all\modules\hijri\hijri.module).
Notice: Undefined index: article in hijri_preprocess_node() (line 280 of F:\wamp\www\drupal\sites\all\modules\hijri\hijri.module).
Warning: Invalid argument supplied for foreach() in form_type_checkboxes_value() (line 2337 of F:\wamp\www\drupal\includes\form.inc).

2 : Still i can see a lot of issues on "http://pareview.sh/pareview/httpgitdrupalorgsandboxdrpl2389037git" .Do resolve all the point before making it in needs review mode.

mayurjadhav’s picture

Status: Needs review » Needs work

Do resolve all the issues mention in #9 as well as do unit testing before making status needs review.
Don't forget to review other module applications and add those links to the your application to add review bonus.

drpl’s picture

All notices error fixed

drpl’s picture

Status: Needs work » Needs review
drpl’s picture

Issue summary: View changes
drpl’s picture

Issue summary: View changes
drpl’s picture

Issue summary: View changes
drpl’s picture

Issue tags: ++PAReview: review bonus
drpl’s picture

Issue tags: -+PAReview: review bonus +PAreview: review bonus
klausi’s picture

Assigned: Unassigned » er.pushpinderrana
Status: Needs review » Reviewed & tested by the community
Issue tags: -PAreview: review bonus
FileSize
12.49 KB

Thank you for your reviews. Make sure to review projects in the "needs review" state next time because projects in "needs work" are already blocked and need a maintainer response anyway.

Review of the 7.x-1.x branch (commit a13885e):

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. You have to get a review bonus to get a review from me.

manual review:

  1. _hijri_date_block(): do not call theme() here, just return a render array. Drupal core will render it later for you. See https://www.drupal.org/node/930760
  2. hijri.test is not really helpful, please fill out this dummy.
  3. There are still lots of minor coding standard errors, please fix them.

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.

Assigning to er.pushpinderrana as he might have time to take a final look at this.

er.pushpinderrana’s picture

Assigned: er.pushpinderrana » Unassigned
Status: Reviewed & tested by the community » Fixed

Automated Review

Best practice issues identified by pareview.sh / drupalcs / coder. Yes, See coder-results.txt uploaded by Klausi.

Review of the 7.x-1.x branch (commit a13885e):

Manual Review

(+) README.md: The file should be formatted to hard-wrap at 80 characters. See https://www.drupal.org/node/161085#readme

(+) hijri_help(): Help link switch case/path is incorrect. See https://api.drupal.org/api/drupal/modules%21system%21system.api.php/func...

_hijri_date_block(): Klausi also pointed the same thing. Don't use theme() directly, use render arrays. The main reason why the render api exists is it allows for altering by other modules before any html is produced. Also it provides one consistent system to produce any output.

But those issues are not critical application blockers, so...

Thanks for your contribution, Abdullah Bamelhes!

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.