CVS edit link for sydesy

I have created a module that build a bridge between forum and civicrm. This should stay as a separate module rather than being merged into civicrm, at least for a while, and I plan to promote it soon, so need a place to put it ;)

The module is civicrm_taxonomy_sync

I'm an active contributor to civicrm and have contributed to several FLOSS projects.

CommentFileSizeAuthor
#1 civicrm_taxonomy_sync.tgz4.07 KBsydesy

Comments

sydesy’s picture

Status: Postponed (maintainer needs more info) » Needs review
StatusFileSize
new4.07 KB

This is a first version that focuses on synchronizing the forum taxonomy with civicrm. We are likely to extend it further to cover other types of nodes.

The initial idea:

http://forum.civicrm.org/index.php/topic,15290.0.html

avpaderno’s picture

Issue tags: +Module review

Hello, and thanks for applying for a CVS account. I am adding the review tags, and some volunteers will review the code, pointing out what it needs to be changed.

As per requirements, the motivation message should be expanded to contain more features of the proposed project. For themes, it should include also a screenshot of the theme, and (when possible) a link to a working demo site using the proposed theme; for modules, it should include also a comparison with the existing solutions.

sydesy’s picture

More explanations:

One of the difficulties of a CRM is to keep track of the topics of interests of each contact, and update the record accordingly.

One way of identifying what topics are important for a user is to see what they write or comment about. If you write into my "cooking" forum, that's likely you are interested by... "cooking".

This module automatically create a tag in civicrm for each forum, and everytime someone post a topic or a reply, her corresponding contact is tagged with the name of the forum

For those familiar with the module that sync og and groups, that's quite similar but for taxonomy and tags

avpaderno’s picture

Status: Needs review » Needs work
  • This is a partial review.
  • The points reported in this review are not in order of importance / relevance.
  • Most of the times I report the code that present an issue. In such cases, the same error can be present in other parts of the code; the fact I don't report the same issue more than once doesn't mean the same issue is not present in different places.
  • Not all the reported points are application blockers; some of the points I report are simple suggestions to who applies for a CVS account. For a list of what is considered a blocker for the application approval, see CVS applications review, what to expect. Keep in mind the list is still under construction, and can be changed to adapt it to what has been found out during code review, or to make the list clearer to who applies for a CVS account.
  1. The version line needs to be removed from the .info file.
  2. /**
     * Implementation of hook_install().
     * Adding a new field to quiz_node_relationship table to handle adaptative quiz.
     */
    function civicrm_taxonomy_sync_install() {
      $ret = array();
      drupal_install_schema('civicrm_taxonomy_sync');
       db_add_index($ret, 'civicrm_taxonomy_sync', 'tid', array('tid'));
      return $ret;
    }
    
    

    Hook implementation comments should be like the following one:

    /**
     * Implements hook_menu().
     */
    

    Any index must be declared in the database schema.

  3. PHP files should not end with ?>.
  4.  +--------------------------------------------------------------------+
     | CiviCRM version 3.2                                                |
     +--------------------------------------------------------------------+
     | Copyright Tech To The People (c) 2010                              |
     +--------------------------------------------------------------------+
     |                                                                    |
     | CiviCRM is free software; you can copy, modify, and distribute it  |
     | under the terms of the GNU Affero General Public License           |
     | Version 3, 19 November 2007 and the CiviCRM Licensing Exception.   |
     |                                                                    |
     | CiviCRM is distributed in the hope that it will be useful, but     |
     | WITHOUT ANY WARRANTY; without even the implied warranty of         |
     | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.               |
     | See the GNU Affero General Public License for more details.        |
     |                                                                    |
     | You should have received a copy of the GNU Affero General Public   |
     | License and the CiviCRM Licensing Exception along                  |
     | with this program; if not, contact CiviCRM LLC                     |
     | at info[AT]civicrm[DOT]org. If you have questions about the        |
     | GNU Affero General Public License or the licensing of CiviCRM,     |
     | see the CiviCRM license FAQ at http://civicrm.org/licensing        |
     +--------------------------------------------------------------------+
    
    

    Modules that are committed in Drupal.org are licensed under the same license used by Drupal, which is not GNU Affero GPL.

  5.   require_once 'civicrm.config.php';
      require_once 'CRM/Core/Config.php';
      require_once 'api/v2/Tag.php';
    
    

    There is a Drupal function to load files containing PHP code.

  6.             if (civicrm_error($result)) {
                  drupal_set_message("ERROR creating in civicrm " . $term['name'] . ": " . $result['error_message' ], "error");
                }else {
    
    

    Strings used in the user interface should be translated.
    See http://drupal.org/coding-standards to understand how a module should be written. In particular, see how the code should be formatted.

  7. Menu descriptions and titles, as well as schema descriptions, are not passed to t().
  8.   $form['remove'] = array('#type' => 'submit',
        '#value' => t('Remove old data'),
        '#description' => t("( Remove old data first when reimporting tags)")
      );
    
    

    The description should not be placed between parentheses.

  9. The files INSTALL and README should be renamed INSTALL.txt and README.txt.
avpaderno’s picture

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

I am closing this application due to lack of replies.

avpaderno’s picture

Component: Miscellaneous » new project application
Issue summary: View changes

Please read the following links as this is very important information about CVS applications.