diff --git a/workbench_moderation.module b/workbench_moderation.module
index d8fa4b6..0743294 100644
--- a/workbench_moderation.module
+++ b/workbench_moderation.module
@@ -726,7 +726,8 @@ function workbench_moderation_node_presave($node) {
   if (isset($node->workbench_moderation_state_new)) {
     // If the new moderation state is published, set the node status to
     // published.
-    if ($node->workbench_moderation_state_new == workbench_moderation_state_published()) {
+    $publish_statuses = module_invoke_all('workbench_moderation_publish_statuses');
+    if (in_array($node->workbench_moderation_state_new, $publish_statuses)) {
       $node->status = 1;
     }
     else {
@@ -742,6 +743,13 @@ function workbench_moderation_node_presave($node) {
 }
 
 /**
+ * Implements hook_workbench_moderation_publish_statuses().
+ */
+function workbench_moderation_workbench_moderation_publish_statuses() {
+  return array(workbench_moderation_state_published());
+}
+
+/**
  * Implements hook_node_insert().
  *
  * Wrapper call to the update hook.
@@ -1802,6 +1810,8 @@ function workbench_moderation_store($node) {
   // Save the node.
   $live_revision->revision = 0;
   $live_revision->path['pathauto'] = 0;
+
+  // $live_revision->workbench_moderation_state_new = $live_revision->workbench_moderation['current']->state;
   node_save($live_revision);
 }
 
diff --git a/workbench_moderation.node.inc b/workbench_moderation.node.inc
index efe9c4a..383b8eb 100644
--- a/workbench_moderation.node.inc
+++ b/workbench_moderation.node.inc
@@ -277,6 +277,14 @@ function workbench_moderation_node_unpublish_form($form, &$form_state, $node) {
 
   $current_state = $node->workbench_moderation['my_revision']->state;
   if ($next_states = workbench_moderation_states_next($current_state, $user, $node)) {
+    //$publish_states = module_invoke_all('workbench_moderation_publish_statuses');
+
+//    foreach ($publish_states as $state) {
+//      if (isset($next_states[$state])) {
+//        unset($next_states[$state]);
+//      }
+//    }
+
     $form['state'] = array(
       '#title' => t('Set moderation state'),
       '#type' => 'select',
