Complete Blog provides additional functionality to the core blog module.

1.)This module intends to enable blog feature only after a user fills out a blog registration form.

2.)This module also provides views support to assist the administrator to use the blog details at various places in his website. ( To do: integration into current module yet to be finished. patch submitted in the advanced_blog module issue queue).

3.)User controlled features such as enabling comments (on entire blog, individual entries) and enabling of five star ratings(on entire blog, individual entries)

4.) Provide centralized blog administration section for the end user.

Sandbox url: http://drupalcode.org/sandbox/f4k1r/1289546.git
Views Integration patch: http://drupal.org/node/1287586 (to be ported into complete_blog module)
git clone http://git.drupal.org/sandbox/f4k1r/1289546.git complete_blog
Project Page: http://drupal.org/sandbox/f4k1r/1289546
Screenshot: http://drupalcode.org/sandbox/f4k1r/1289546.git/blob/2bf046a957095f538b8...
Core: Drupal 6.x
Similar Projects: http://drupal.org/project/advanced_blog

Review of Other Projects:
http://drupal.org/node/1297656
http://drupal.org/node/1389042
http://drupal.org/node/1352766
http://drupal.org/node/1421888
http://drupal.org/node/1422160
http://drupal.org/node/1423138

Comments

drupaledmonk’s picture

Issue summary: View changes

added screenshot of the module in action.

drupaledmonk’s picture

Issue summary: View changes

Added git clone link

klausi’s picture

Status: Needs review » Needs work
  • please extend your project page with the details mentioned above
  • git release branch missing, see http://drupal.org/node/1015226
  • "Readme" should be "README.txt"
  • hook_install needs a proper doc block, please run the coder module to fix code style issues http://drupal.org/project/coder
  • hook_user: the return value of the insert operation will be ignored anyway, so don't return anything there.
  • complete_blog_form_alter(): doc block missing, indentation errors, style errors
drupaledmonk’s picture

Status: Needs work » Needs review

Made the corrections and changes as required. Created a 6.x-1.x-dev branch with all the changes.
Kindly do a review.

klausi’s picture

Status: Needs review » Needs work

wrong git tag name "6.x-1.x-dev", tags are used for specific releases. Please remove it.
wrong git branch name "6.x-1.x-dev", which should be "6.x-1.x"

drupaledmonk’s picture

Status: Needs work » Needs review

changed the branch name.

klausi’s picture

Status: Needs review » Needs work

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

  • Run coder to check your style, some issues were found (please check the Drupal coding standards):
    Severity minor, Drupal Commenting Standards, Internationalization, Drupal Security Checks, Drupal SQL Standards, Drupal Coding Standards
    
    sites/all/modules/pareview_temp/test_candidate/complete_blog.module:
     +4: [minor] Comment should be read "Implements hook_foo()."
     +9: [normal] String concatenation should be formatted with a space separating the operators (dot .) and the surrounding terms
     +17: [minor] Comment should be read "Implements hook_foo()."
     +54: [minor] Comment should be read "Implements hook_foo()."
     +62: [minor] Use an indent of 2 spaces, with no tabs
     +121: [minor] Comment should be read "Implements hook_foo()."
     +148: [minor] Comment should be read "Implements hook_foo()."
     +161: [minor] Comment should be read "Implements hook_foo()."
     +168: [minor] There should be no trailing spaces
    
    sites/all/modules/pareview_temp/test_candidate/complete_blog.install:
     +9: [minor] Comment should be read "Implements hook_foo()."
     +23: [minor] Comment should be read "Implements hook_foo()."
     +58: [minor] Comment should be read "Implements hook_foo()."
     +66: [minor] Missing period
    
    Status Messages:
     Coder found 1 projects, 2 files, 1 normal warnings, 12 minor warnings, 0 warnings were flagged to be ignored
    
  • @file doc block is missing in the module file, see http://drupal.org/node/1354#files .
  • There should be a space before and after operators like ==, ===, && and ||. See http://drupal.org/node/318#controlstruct
    complete_blog.module:168:    if ($details->enabled==0) { 
    

This automated report was generated with PAReview.sh, your friendly project application review script. Please report any bugs to klausi.

manual review:

  • wrong git tags and branches stil present. Remove the tags 6.x-1.x and 6.x-1.x-dev, remove the branch 6.x-1.x-dev
  • Duplicate "Readme" still present, remove it
  • "$tokens['user']['user-blog-title'] = 'Blog Title from complete_blog module, or username if no blog title is provided.';": All user facing text must run through t() for translation
  • complete_blog_form_alter(): empty else statement, remove it
  • "drupal_goto('user/' . $uid . '/edit');": indentation error, should be 4 spaces further to the left
  • complete_blog_save_complete_blog(): so this function is never called, because you commented out the invocation. So your module never saves anything, please fix that.
  • complete_blog_get_blog_details(): why do you use check_markup() here? you should only do filtering when you are actually outputting data, not before.
drupaledmonk’s picture

Status: Needs work » Needs review

I have done the required changes. But when I run my coder module I don't get the conflicts of coding standards.

jthorson’s picture

The ""Implements hook_foo()." messages are a coding standards change which occurred between Drupal 6 and Drupal 7. If you are using the D6 version of coder, it will likely suggest the wording "Implementation of hook_foo()." D7 versions of coder, which the PAReview script uses, prefers the "Implements hook_foo()" version; which is the new coding standard going forward.

doitDave’s picture

Status: Needs review » Needs work

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

  • Run coder to check your style, some issues were found (please check the Drupal coding standards):
    Severity minor, Drupal Commenting Standards, Internationalization, Drupal Security Checks, Drupal SQL Standards, Drupal Coding Standards
    
    sites/all/modules/pareview_temp/test_candidate/complete_blog.module:
     +4: [minor] Comment should be read "Implements hook_foo()."
     +9: [normal] String concatenation should be formatted with a space separating the operators (dot .) and the surrounding terms
     +17: [minor] Comment should be read "Implements hook_foo()."
     +54: [minor] Comment should be read "Implements hook_foo()."
     +62: [minor] Use an indent of 2 spaces, with no tabs
     +121: [minor] Comment should be read "Implements hook_foo()."
     +148: [minor] Comment should be read "Implements hook_foo()."
     +161: [minor] Comment should be read "Implements hook_foo()."
     +168: [minor] There should be no trailing spaces
    
    Status Messages:
     Coder found 1 projects, 1 files, 1 normal warnings, 8 minor warnings, 0 warnings were flagged to be ignored
    
  • @file doc block is missing in the module file, see http://drupal.org/node/1354#files .
  • ./complete_blog.module: comment lines should break at 80 characters, see http://drupal.org/node/1354#general
    //    $fields['advanced_blog_settings']['desc_format'] = filter_form($details->format);
      // @TODO: add -raw variants of tokens, by calling complete_blog_db_get_blog_details() directly
    
  • Comments should be on a separate line before the code line, see http://drupal.org/node/1354#inline
    ./complete_blog.install:74:    $views_status[$default_view] = TRUE; // TRUE means disable
    
  • There should be a space before and after operators like ==, ===, && and ||. See http://drupal.org/node/318#controlstruct
    complete_blog.module:168:    if ($details->enabled==0) { 
    
  • Do not use t() in hook_schema(), this will only generate overhead for translators.
        'description' => t('This holds the complete_blog data.'),
    
  • All text files should end in a single newline (\n). See http://drupal.org/node/318#indenting
    ./complete_blog.install ./README.txt ./complete_blog.module
    

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.

Are you sure you have committed all your changes? Also you should really remove the unnecessary branches from your repo and clean up the master branch as suggested. Please have a look again.

drupaledmonk’s picture

Status: Needs work » Needs review

I have used the D6 version of coder module to review the code.

drupaledmonk’s picture

A gentle bump!!

klausi’s picture

Get a review bonus and we will come back to your application sooner.

asifnoor’s picture

Status: Needs review » Needs work

Did manual review of the module and here are the notes

1. I think there is an logical error below. should have == instead of single =

if ($entry = complete_blog_db_get_blog_details($uid, $reset))

2. use translate functions t() wherever possible

3. clean up the module and remove unwanted comments

4. your README says that the module enables 5 star ratings for individual blog, but i do not see that functionality anywhere nor its related code. Also if your module is dependent on 5star module, then please mention that in your .info file

5. Please provide more instructions in the README on how to use the module. I have enabled your module but not sure how to use this.

asifnoor’s picture

1 more point missed.

in your complete_blog_install hook, there is an error in drupal_set_message.

drupal_set_message(st('Complete Blog module has installed succesfully.'));

drupaledmonk’s picture

Status: Needs work » Needs review

Asif,
Thanks for the review. This module was written for some very specific usecases similar to how Blogs work in Wordpress. I have been working on another branch with tons of bugs, which are yet to be fixed. Currently this is a clean lean version, the Fivestar Ratings are still "ToDo"

I have fixed the remaining issues that you have pointed out.

drupaledmonk’s picture

Issue tags: +PAreview: review bonus

PAReview: review bonus ;)

drupaledmonk’s picture

Issue summary: View changes

zzz! fixed the git clone link

klausi’s picture

Status: Needs review » Needs work
Issue tags: -PAreview: review bonus

There are still files other than README.txt in the master branch, make sure to remove them. See also step 5 in http://drupal.org/node/1127732
There is a git tag that has the same name as the branch 6.x-1.x. Make sure to remove this tag to avoid confusion.

  • Please also remove the other unnecessary git branches: origin, 6.x-1.x-dev. And remove the current git tags, they do not follow the conventions: http://drupal.org/node/1015226
  • "Implements of hook_install()." should be "Implements hook_install().". Please check all your hook doc blocks.
  • When you have fixed your git branch/tag confusion please run your code through pareview.sh and fix all the coding standard problems. http://drupal.org/sandbox/klausi/1320008 http://ventral.org/pareview

I'm removing the review bonus tag, you can add it again if you have done another 3 reviews of other projects.

drupaledmonk’s picture

Status: Needs work » Needs review

Fixed all the mentioned points and PAreviewed the code.

drupaledmonk’s picture

Issue summary: View changes

Added Review of other projects

drupaledmonk’s picture

Issue tags: +PAreview: review bonus

PAReview: review bonus

patrickd’s picture

I think it's not necessary to put screenshots into your module, you can use drupal.org instead: http://drupal.org/node/add/image

Please read in the documentation about creating great project pages and good readme's
http://drupal.org/node/997024, http://drupal.org/node/447604

drupaledmonk’s picture

Thanks for the image link and the info regarding project page.

syam kumar’s picture

Status: Needs review » Reviewed & tested by the community
patrickd’s picture

@Syam Kumar it's okay if you think this is ready, but it would be good to know why you think that
just switching the status looks a little arbitrary.

syam kumar’s picture

did a manual review.tested the code.

pflame’s picture

Status: Reviewed & tested by the community » Needs work

Functional Bugs I noticed
1. I can not create a blog post, below are the steps I did

  • Installed this module,
  • Gave permission for the authenticated user to 'assign blog info to account', 'access complete blog' permissions.
  • Logged in as authenticated user, then when I click add blog entry, it went to my profile edit form.
  • I provided blog title, description and saved my profile.
  • Accessed Create blog link again, again it went back to my profile edit page.

2. I provided my blog title, description in the above step. When I access url blog/, I expect the blog title to be appear there, but it did not appear. When does the blog description will be displayed.

3. From the README, it is mentioned that it will add registration to blog, I did not see that workflow, please give clear documentation about how do I used registration for blog.

4. I did not understand what additional features does this module provides to core blog module. Provide how to use this module in the README.txt

Code Review Points

1. Module implemented token hooks, but did not mention token module dependency in the .info file.

2. In the module file at line no. 32 there is an error because of this, I could not add the blog entry. It is always redirecting to my profile edit page. The line is

 if ($entry == complete_blog_db_get_blog_details($uid, $reset))

It should be

 if ($entry = complete_blog_db_get_blog_details($uid, $reset))

Here in the if condition, you are checking whether the $entry object has value or not.

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.

klausi’s picture

Issue summary: View changes

Added reviewed projects

avpaderno’s picture

Title: Complete Blog » [D6] Complete Blog
Issue summary: View changes