From 39ee7f4cc687f04671c3c0291ed2b029723e358c Mon Sep 17 00:00:00 2001 From: Marco Villegas Date: Wed, 22 Oct 2014 23:19:48 -0500 Subject: [PATCH] Do add comments on issues if branch pattern is not a release-like name. --- .../drupalorg_versioncontrol.module | 28 ++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/drupalorg_versioncontrol/drupalorg_versioncontrol.module b/drupalorg_versioncontrol/drupalorg_versioncontrol.module index a65933f..e648663 100644 --- a/drupalorg_versioncontrol/drupalorg_versioncontrol.module +++ b/drupalorg_versioncontrol/drupalorg_versioncontrol.module @@ -228,3 +228,31 @@ function drupalorg_versioncontrol_form_alter(&$form, &$form_state, $form_id) { unset($form['retry']); } } + +/** + * Implements hook_versioncontrol_project_issue_git_git_commits_as_comment_project_issue_nids_alter(). + */ +function drupalorg_versioncontrol_versioncontrol_project_issue_git_git_commits_as_comment_project_issue_nids_alter(&$valid_issue_nids, $ref) { + $repository = $ref->getRepository(); + if (!$repository instanceof VersioncontrolGitRepository) { + // Nothing to do. + return; + } + if (!versioncontrol_project_repository_has_project($repository)) { + // Nothing to do. + return; + } + $project_node = versioncontrol_project_project_load($repository->project_nid); + if ($project_node->type == 'project_core') { + // Core. + $valid_branch_name_regex = '/^(\d+)(\.(\d+))?\.x$/'; + } + else { + // Contrib. + $valid_branch_name_regex = '/^((\d+)(\.(\d+))?\.x)-(\d+)\.x$/'; + } + if (!preg_match($valid_branch_name_regex, $ref->refname)) { + // No comments on any issue if branch pattern is not a release-like name. + $valid_issue_nids = array(); + } +} -- 1.7.10.4