Index: commitlog.module
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/versioncontrol/commitlog/commitlog.module,v
retrieving revision 1.77
diff -u -p -r1.77 commitlog.module
--- commitlog.module	17 Jan 2011 02:28:47 -0000	1.77
+++ commitlog.module	17 Jan 2011 03:13:02 -0000
@@ -37,6 +37,13 @@ function commitlog_menu() {
     'access arguments' => array($view_access),
     'type' => MENU_SUGGESTED_ITEM,
   );
+  $items['commitlog/commit/%'] = array(
+    'title' => 'Commit messages',
+    'page callback' => 'commitlog_operations_page',
+    'page arguments' => array('commit', 2),
+    'access arguments' => array($view_access),
+    'type' => MENU_SUGGESTED_ITEM,
+  );
   $items['user/%user/track/code'] = array(
     'title' => 'Commits',
     'page callback' => 'commitlog_operations_page',
@@ -113,6 +120,10 @@ function commitlog_operations_page($type
     $set = versioncontrol_get_views_set('repository_commit_view');
     $view = $set->getViewNameByEntity(versioncontrol_repository_load($argument));
   }
+  else if ($type == 'commit' && !is_null($argument)) {
+    $set = versioncontrol_get_views_set('individual_commit_view');
+    $view = $view = $set->getViewName();
+  }
   else {
     $set = versioncontrol_get_views_set('global_commit_view');
     $view = $set->getViewName();
Index: includes/plugins/views_sets/VersioncontrolViewsSetIndividualCommitView.class.php
===================================================================
RCS file: includes/plugins/views_sets/VersioncontrolViewsSetIndividualCommitView.class.php
diff -N includes/plugins/views_sets/VersioncontrolViewsSetIndividualCommitView.class.php
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ includes/plugins/views_sets/VersioncontrolViewsSetIndividualCommitView.class.php	17 Jan 2011 03:13:02 -0000
@@ -0,0 +1,8 @@
+<?php
+
+class VersioncontrolViewsSetIndividualCommitView extends VersioncontrolViewsSetGlobalBase {
+
+  protected $setName = 'individual_commit_view';
+
+  protected $baseView = 'commitlog_individual_commit';
+}
Index: includes/plugins/views_sets/individual_commit_view.inc
===================================================================
RCS file: includes/plugins/views_sets/individual_commit_view.inc
diff -N includes/plugins/views_sets/individual_commit_view.inc
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ includes/plugins/views_sets/individual_commit_view.inc	17 Jan 2011 03:13:02 -0000
@@ -0,0 +1,9 @@
+<?php
+
+$plugin = array (
+  'title' => t('Individual commit view'),
+  'description' => t('A view of an individual commit.'),
+  'handler' => array(
+    'class' => 'VersioncontrolViewsSetIndividualCommitView',
+  ),
+);
Index: includes/views/default_views/commitlog_individual_commit.view.php
===================================================================
RCS file: includes/views/default_views/commitlog_individual_commit.view.php
diff -N includes/views/default_views/commitlog_individual_commit.view.php
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ includes/views/default_views/commitlog_individual_commit.view.php	17 Jan 2011 03:13:02 -0000
@@ -0,0 +1,377 @@
+<?php
+// $Id: commitlog_global_commits.view.php,v 1.3 2011/01/17 01:58:40 mikeyp Exp $
+
+$view = new view;
+$view->name = 'commitlog_individual_commit';
+$view->description = 'Commitlog Global Commit Log';
+$view->tag = 'VersionControl Core';
+$view->view_php = '';
+$view->base_table = 'versioncontrol_operations';
+$view->is_cacheable = FALSE;
+$view->api_version = 2;
+$view->disabled = FALSE; /* Edit this to true to make a default view disabled initially */
+$handler = $view->new_display('default', 'Defaults', 'default');
+$handler->override_option('fields', array(
+  'attribution' => array(
+    'label' => '',
+    'alter' => array(
+      'alter_text' => 0,
+      'text' => '',
+      'make_link' => 0,
+      'path' => '',
+      'link_class' => '',
+      'alt' => '',
+      'prefix' => '',
+      'suffix' => '',
+      'target' => '',
+      'help' => '',
+      'trim' => 0,
+      'max_length' => '',
+      'word_boundary' => 1,
+      'ellipsis' => 1,
+      'html' => 0,
+      'strip_tags' => 0,
+    ),
+    'empty' => '',
+    'hide_empty' => 0,
+    'empty_zero' => 0,
+    'exclude' => 1,
+    'id' => 'attribution',
+    'table' => 'versioncontrol_operations',
+    'field' => 'attribution',
+    'relationship' => 'none',
+  ),
+  'vc_op_id' => array(
+    'label' => 'Operation ID',
+    'alter' => array(
+      'alter_text' => 0,
+      'text' => '',
+      'make_link' => 0,
+      'path' => '',
+      'link_class' => '',
+      'alt' => '',
+      'prefix' => '',
+      'suffix' => '',
+      'target' => '',
+      'help' => '',
+      'trim' => 0,
+      'max_length' => '',
+      'word_boundary' => 1,
+      'ellipsis' => 1,
+      'strip_tags' => 0,
+      'html' => 0,
+    ),
+    'empty' => '',
+    'hide_empty' => 0,
+    'empty_zero' => 0,
+    'set_precision' => FALSE,
+    'precision' => 0,
+    'decimal' => '.',
+    'separator' => ',',
+    'prefix' => '',
+    'suffix' => '',
+    'exclude' => 1,
+    'id' => 'vc_op_id',
+    'table' => 'versioncontrol_operations',
+    'field' => 'vc_op_id',
+    'relationship' => 'none',
+  ),
+  'date' => array(
+    'label' => 'Date',
+    'alter' => array(
+      'alter_text' => 0,
+      'text' => '',
+      'make_link' => 0,
+      'path' => '',
+      'link_class' => '',
+      'alt' => '',
+      'prefix' => '',
+      'suffix' => '',
+      'target' => '',
+      'help' => '',
+      'trim' => 0,
+      'max_length' => '',
+      'word_boundary' => 1,
+      'ellipsis' => 1,
+      'html' => 0,
+      'strip_tags' => 0,
+    ),
+    'empty' => '',
+    'hide_empty' => 0,
+    'empty_zero' => 0,
+    'date_format' => 'custom',
+    'custom_date_format' => 'F j, Y G:i',
+    'exclude' => 1,
+    'id' => 'date',
+    'table' => 'versioncontrol_operations',
+    'field' => 'date',
+    'relationship' => 'none',
+  ),
+  'name' => array(
+    'label' => '',
+    'alter' => array(
+      'alter_text' => 0,
+      'text' => '',
+      'make_link' => 0,
+      'path' => '',
+      'link_class' => '',
+      'alt' => '',
+      'prefix' => '',
+      'suffix' => '',
+      'target' => '',
+      'help' => '',
+      'trim' => 0,
+      'max_length' => '',
+      'word_boundary' => 1,
+      'ellipsis' => 1,
+      'html' => 0,
+      'strip_tags' => 0,
+    ),
+    'empty' => '',
+    'hide_empty' => 0,
+    'empty_zero' => 0,
+    'exclude' => 1,
+    'id' => 'name',
+    'table' => 'versioncontrol_labels',
+    'field' => 'name',
+    'relationship' => 'none',
+  ),
+  'revision' => array(
+    'label' => 'Revision',
+    'alter' => array(
+      'alter_text' => 0,
+      'text' => '',
+      'make_link' => 0,
+      'path' => '',
+      'link_class' => '',
+      'alt' => '',
+      'prefix' => '',
+      'suffix' => '',
+      'target' => '',
+      'help' => '',
+      'trim' => 0,
+      'max_length' => '',
+      'word_boundary' => 0,
+      'ellipsis' => 0,
+      'html' => 0,
+      'strip_tags' => 0,
+    ),
+    'empty' => '',
+    'hide_empty' => 0,
+    'empty_zero' => 0,
+    'exclude' => 1,
+    'id' => 'revision',
+    'table' => 'versioncontrol_operations',
+    'field' => 'revision',
+    'relationship' => 'none',
+  ),
+  'nothing' => array(
+    'label' => '',
+    'alter' => array(
+      'text' => '<div class="commit-global">
+  <h3>[date]</h3>
+  <div class="commit-info">Commit <strong>[revision]</strong> on <strong>[name]</strong></div>
+  <div class="attribtution">[attribution]</div>
+</div>',
+      'make_link' => 0,
+      'path' => '#',
+      'link_class' => 'global-author',
+      'alt' => '',
+      'prefix' => '',
+      'suffix' => '',
+      'target' => '',
+      'help' => '',
+      'trim' => 0,
+      'max_length' => '',
+      'word_boundary' => 1,
+      'ellipsis' => 1,
+      'html' => 0,
+      'strip_tags' => 0,
+    ),
+    'empty' => '',
+    'hide_empty' => 0,
+    'empty_zero' => 0,
+    'exclude' => 0,
+    'id' => 'nothing',
+    'table' => 'views',
+    'field' => 'nothing',
+    'relationship' => 'none',
+  ),
+  'view' => array(
+    'label' => '',
+    'alter' => array(
+      'alter_text' => FALSE,
+      'text' => '',
+      'make_link' => FALSE,
+      'path' => '',
+      'link_class' => '',
+      'alt' => '',
+      'prefix' => '',
+      'suffix' => '',
+      'target' => '',
+      'help' => '',
+      'trim' => FALSE,
+      'max_length' => '',
+      'word_boundary' => TRUE,
+      'ellipsis' => TRUE,
+      'html' => FALSE,
+      'strip_tags' => FALSE,
+    ),
+    'empty' => '',
+    'hide_empty' => 0,
+    'empty_zero' => 0,
+    'view' => 'commitlog_commit_items',
+    'display' => 'block_2',
+    'arguments' => '[vc_op_id]',
+    'query_aggregation' => 1,
+    'exclude' => 0,
+    'id' => 'view',
+    'table' => 'views',
+    'field' => 'view',
+    'relationship' => 'none',
+  ),
+  'message' => array(
+    'label' => '',
+    'alter' => array(
+      'alter_text' => 0,
+      'text' => '',
+      'make_link' => 0,
+      'path' => '',
+      'link_class' => '',
+      'alt' => '',
+      'prefix' => '',
+      'suffix' => '',
+      'target' => '',
+      'help' => '',
+      'trim' => 0,
+      'max_length' => '',
+      'word_boundary' => 1,
+      'ellipsis' => 1,
+      'html' => 0,
+      'strip_tags' => 0,
+    ),
+    'empty' => '',
+    'hide_empty' => 0,
+    'empty_zero' => 0,
+    'issue_tracker_url' => '',
+    'exclude' => 1,
+    'id' => 'message',
+    'table' => 'versioncontrol_operations',
+    'field' => 'message',
+    'relationship' => 'none',
+  ),
+  'nothing_1' => array(
+    'label' => '',
+    'alter' => array(
+      'text' => '<pre>[message]</pre>',
+      'make_link' => 0,
+      'path' => '',
+      'link_class' => '',
+      'alt' => '',
+      'prefix' => '',
+      'suffix' => '',
+      'target' => '',
+      'help' => '',
+      'trim' => 0,
+      'max_length' => '',
+      'word_boundary' => 1,
+      'ellipsis' => 1,
+      'html' => 0,
+      'strip_tags' => 0,
+    ),
+    'empty' => '',
+    'hide_empty' => 0,
+    'empty_zero' => 0,
+    'exclude' => 0,
+    'id' => 'nothing_1',
+    'table' => 'views',
+    'field' => 'nothing',
+    'relationship' => 'none',
+  ),
+));
+$handler->override_option('sorts', array(
+  'date' => array(
+    'order' => 'DESC',
+    'granularity' => 'second',
+    'id' => 'date',
+    'table' => 'versioncontrol_operations',
+    'field' => 'date',
+    'relationship' => 'none',
+  ),
+));
+$handler->override_option('arguments', array(
+  'revision' => array(
+    'default_action' => 'not found',
+    'style_plugin' => 'default_summary',
+    'style_options' => array(),
+    'wildcard' => 'all',
+    'wildcard_substitution' => 'All',
+    'title' => '',
+    'breadcrumb' => '',
+    'default_argument_type' => 'fixed',
+    'default_argument' => '',
+    'validate_type' => 'none',
+    'validate_fail' => 'not found',
+    'glossary' => 0,
+    'limit' => '0',
+    'case' => 'none',
+    'path_case' => 'none',
+    'transform_dash' => 0,
+    'id' => 'revision',
+    'table' => 'versioncontrol_operations',
+    'field' => 'revision',
+    'validate_user_argument_type' => 'uid',
+    'validate_user_roles' => array(
+      '2' => 0,
+      '3' => 0,
+      '4' => 0,
+      '5' => 0,
+      '6' => 0,
+      '7' => 0,
+      '8' => 0,
+    ),
+    'relationship' => 'none',
+    'default_options_div_prefix' => '',
+    'default_argument_fixed' => '',
+    'default_argument_user' => 0,
+    'default_argument_php' => '',
+    'validate_argument_node_type' => array(
+      'forum' => 0,
+      'project_project' => 0,
+      'project_release' => 0,
+      'project_issue' => 0,
+      'book' => 0,
+      'page' => 0,
+      'story' => 0,
+    ),
+    'validate_argument_node_access' => 0,
+    'validate_argument_nid_type' => 'nid',
+    'validate_argument_vocabulary' => array(
+      '1' => 0,
+      '5' => 0,
+      '3' => 0,
+      '2' => 0,
+      '4' => 0,
+    ),
+    'validate_argument_type' => 'tid',
+    'validate_argument_transform' => 0,
+    'validate_user_restrict_roles' => 0,
+    'validate_argument_project_term_argument_type' => 'tid',
+    'validate_argument_project_term_argument_action_top_without' => 'pass',
+    'validate_argument_project_term_argument_action_top_with' => 'pass',
+    'validate_argument_project_term_argument_action_child' => 'pass',
+    'validate_argument_php' => '',
+  ),
+));
+$handler->override_option('access', array(
+  'type' => 'none',
+));
+$handler->override_option('cache', array(
+  'type' => 'none',
+));
+$handler->override_option('use_pager', '1');
+$handler->override_option('style_plugin', 'list');
+$handler->override_option('style_options', array(
+  'grouping' => '',
+  'type' => 'ul',
+));
