--- /Users/JuliaKM/Desktop/revision_moderation/revision_moderation.module
+++ revision_moderationMOD.module
@@ -17,7 +17,7 @@
 
   // Admin menu
   $items['admin/content/node/revisions'] = array(
-    'title' => t('Pending revisions'),
+    'title' => 'Pending revisions',
     'page callback' => 'revision_moderation_pending_revisions_admin',
     'access arguments' => array('administer nodes'),
     'type' => MENU_LOCAL_TASK,
@@ -25,16 +25,16 @@
 
   // Admin menu
   $items['admin/settings/revision_moderation'] = array(
-    'title' => t('Revision moderation'),
+    'title' => 'Revision moderation',
     'page callback' => 'drupal_get_form',
     'page arguments' => array('revision_moderation_settings'),
-    'description' => t('Configure revision publishing options.'),
+    'description' => 'Configure revision publishing options.',
     'access arguments' => array('administer nodes'),
   );
 
   // Callback to allow users to edit revisions.
   $items['node/%node/revisions/%/edit'] = array(
-    'title' => t('Edit revision'),
+    'title' => 'Edit revision',
     'load arguments' => array(3),
     'page callback' => 'revision_moderation_edit',
     'page arguments' => array(1),
@@ -47,7 +47,7 @@
 
   // Callback to allow users to publish revisions directly.
   $items['node/%node/revisions/%/publish'] = array(
-    'title' => t('Publish revision'),
+    'title' => 'Publish revision',
     'load arguments' => array(3),
     'page callback' => 'drupal_get_form',
     'page arguments' => array('revision_moderation_publish_confirm', 1),
@@ -189,7 +189,7 @@
 
   // Only do this logic for non-admin users on nodes with revision moderation
   // turned on.
-  // And not editing a chose revision
+  // And not editing a chosen revision
   if ($node->nid && $node->revision_moderation == 1 && arg(2) != 'revisions'
     && (!user_access('administer nodes') || !variable_get('revision_moderation_exempt', 1))) {
     switch ($op) {
@@ -219,6 +219,10 @@
 
           db_query("UPDATE {node} SET vid = %d, title = '%s', status = %d, moderate = %d WHERE nid = %d", $node->original_node->vid, $node->original_node->title, $node->original_node->status, $node->original_node->moderate, $node->nid);
           drupal_set_message(t('Your changes have been submitted for moderation.'));
+	
+		if (module_exists('rules')):
+		  rules_invoke_event('revision_create', $node); 
+		endif;
         }
         break;
     }
@@ -385,3 +389,46 @@
   watchdog('content', '@type: published %title revision %revision', array('@type' => t($type), '%title' => $title, '%revision' => $vid), WATCHDOG_NOTICE, l(t('view'), "node/$nid/revisions/$vid/view"));
   $form_state['redirect'] = 'node/'. $nid;
 }
+
+/**
+ * Implementation of hook_token_values().
+ */
+function revision_moderation_token_values($type, $object = NULL, $options = array()) {
+  $values = array();
+  if ($type == 'node') {
+    $values['vid'] = $object->vid;
+    $current_vid = db_result(db_query('SELECT vid FROM {node} WHERE nid = %d', $object->nid));
+	$current_revision_author = db_result(db_query('SELECT uid FROM {node_revisions} WHERE vid = %d', $object->vid));
+	 if (module_exists('diff')) {
+         if ($object->vid > $current_vid) {
+             $difflink = "node/$object->nid/revisions/view/$current_vid/$object->vid";
+         }
+          else {
+             $difflink = "node/$object->nid/revisions/view/$object->vid/$current_vid";
+         }
+         $values['revision-diff-link'] = url($difflink, array('absolute' => TRUE));
+         }
+    $values['revision-moderation'] = $object->revision_moderation ? t('on') : t('off');
+    $values['revision'] = $object->revision ? t('on') : t('off');
+
+	//find the author of a revision
+    $revision_author = user_load(array('uid' => $current_revision_author));
+	$values['revision-author-name'] = $revision_author->name;
+  }
+  return $values;
+}
+
+/**
+ * Implementation of hook_token_list().
+ */
+function revision_moderation_token_list($type = 'all') {
+  if ($type == 'node') {
+    $tokens = array();
+    $tokens['node']['revision-author-name'] = t('The name of the revision author'); 
+    $tokens['node']['revision-diff-link'] = t('A link to compare two revisions (requires diff)');
+    $tokens['node']['revision-moderation'] = t('Whether revision moderation is on. (@on/@off)', array('@on' => t('on'), '@off' => t('off')));
+    $tokens['node']['revision'] = t('Whether a new revision is to be created. (@on/@off)', array('@on' => t('on'), '@off' => t('off')));
+    $tokens['node']['vid'] = t('Node revision ID');
+    return $tokens;
+  }
+}
\ No newline at end of file
