--- uc_node_access.module	2010-07-26 20:07:03.000000000 +0000
+++ uc_node_access.module.new	2010-07-26 21:54:21.000000000 +0000
@@ -504,46 +504,48 @@ function uc_node_access_ca_trigger() {
 function uc_node_access_ca_predicate() {
   $predicates = array();
 
-  $predicates['uc_node_access_grant_on_payment'] = array(
-    '#title' => t('Grant appropriate node access on full payment'),
+  $predicates['uc_node_access_grant_on_completed_status'] = array(
+    '#title' => 'Grant appropriate node access on ORDER UPDATE',
+    '#description' =>  t('Renew purchased nodes if the order status matches.'),
     '#class' => 'uc_node_access',
-    '#status' => 1,
-    '#weight' => -1,
-    '#trigger' => 'uc_payment_entered',
-    '#conditions' => array(
+    '#status' => '1',
+    '#weight' => '0',
+    '#trigger' => 'uc_order_status_update',
+    '#conditions' =>  array(
       '#operator' => 'AND',
-      '#conditions' => array(
-        array(
-          '#name' => 'uc_payment_condition_order_balance',
-          '#title' => t('If the balance is less than or equal to $0.00.'),
+      '#conditions' =>  array(
+        array (
+          '#name' => 'uc_order_status_condition',
+          '#title' => 'Check the order status',
           '#argument_map' => array(
             'order' => 'order',
           ),
           '#settings' => array(
-            'negate' => FALSE,
-            'balance_comparison' => 'less_equal',
+            'negate' => 1,
+            'order_status' => 'completed',
           ),
         ),
-        array(
+        array (
           '#name' => 'uc_order_status_condition',
-          '#title' => t('If the order status is not already Payment Received.'),
+          '#title' => 'Check the order status',
           '#argument_map' => array(
-            'order' => 'order',
+            'order' => 'updated_order',
           ),
           '#settings' => array(
-            'negate' => TRUE,
-            'order_status' => 'payment_received',
+            'negate' => 0,
+            'order_status' => 'completed',
           ),
         ),
       ),
     ),
-    '#actions' => array(
-      array(
-        '#name' => 'uc_node_access_delay_access',
-        '#title' => t('Grant access to any nodes based on the products on the order'),
-        '#argument_map' => array(
+    '#actions' => array (
+      array (
+        '#name' => 'uc_node_access_grant_access',
+        '#title' => 'Grant node access to customer',
+        '#argument_map' => array (
           'order' => 'order',
         ),
+        '#settings' => array (),
       ),
     ),
   );
