Index: uc_donation.module
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/uc_donation/uc_donation.module,v
retrieving revision 1.2.4.1
diff -u -p -r1.2.4.1 uc_donation.module
--- uc_donation.module	13 Nov 2008 22:23:41 -0000	1.2.4.1
+++ uc_donation.module	21 Nov 2008 21:25:18 -0000
@@ -96,8 +96,8 @@ function uc_donation_node_info($reset = 
  */
 function uc_donation_form_alter(&$form, &$form_state, $form_id) {
   if ($form_id == 'uc_cart_view_form') {
-    $form['#validate']['uc_donation_cart_view_validate'] = array();
-    $form['#submit']['uc_donation_cart_view_submit'] = array();
+    $form['#submit'][] = 'uc_donation_cart_view_validate';
+    $form['#validate'][] = 'uc_donation_cart_view_submit';
   }
   if ($form_id == 'node_type_form') {
     if ($form['#node_type']->type == 'donation') {
@@ -463,10 +463,10 @@ function theme_uc_donation_add_to_cart($
   return $output;
 }
 
-function uc_donation_add_to_cart_form($node){
+function uc_donation_add_to_cart_form($form_state, $node){
   $form = array();
   $form['#base'] = 'uc_donation_add_to_cart_form';
-  $form['nid'] = array('#type' => 'value', '#value' => $node->nid);
+  $form['nid'] = array('#type' => 'hidden', '#value' => $node->nid);
   $form['donate_price'] = array(
     '#type' => 'textfield',
     '#title' => t('Amount'),
@@ -475,24 +475,25 @@ function uc_donation_add_to_cart_form($n
     '#maxlength' => 10,
     '#required' => TRUE
   );
+  $form['#submit'][] = 'uc_donation_add_to_cart_form_submit';
+  $form['#validate'][] = 'uc_donation_add_to_cart_form_validate';
   $form['submit'] = array('#type' => 'submit', '#value' =>  variable_get('add_to_cart_text_donation', t('Add to cart')), );
   return $form;
 }
 
-function uc_donation_add_to_cart_form_validate($form_id, $form_values){
-  $form_values['donate_price'] = str_replace('$','',$form_values['donate_price']);
-  if (!is_numeric($form_values['donate_price']) || intval($form_values['donate_price']) <= 0){
+function uc_donation_add_to_cart_form_validate($form, &$form_state){
+  $form_state['values']['donate_price'] = str_replace('$','',$form_state['values']['donate_price']);
+  if (!is_numeric($form_state['values']['donate_price']) || intval($form_state['values']['donate_price']) <= 0){
     form_set_error('price', t('You have entered an invalid amount.'));
   }
 }
 
-function uc_donation_add_to_cart_form_submit($form_id, $form_values){
-  $form_values['donate_price'] = str_replace('$','',$form_values['donate_price']);
-  return uc_cart_add_item($form_values['nid'], 1,  module_invoke_all('add_to_cart_data', $form_values));
+function uc_donation_add_to_cart_form_submit($form, &$form_state){
+  $form_state['redirect'] = uc_cart_add_item($form_state['values']['nid'], 1,  module_invoke_all('add_to_cart_data', $form_state['values']));
 }
 
-function uc_donation_cart_view_validate($form_id, $form_values) {
-  foreach ($form_values['items'] as $item) {
+function uc_donation_cart_view_validate($form, &$form_state) {
+  foreach ($form_state['values']['items'] as $item) {
     if (isset($item['donate_price'])) {
       $item['donate_price'] = str_replace('$','',$item['donate_price']);
       if (!is_numeric($item['donate_price']) || intval($item['donate_price']) <= 0){
@@ -502,10 +503,10 @@ function uc_donation_cart_view_validate(
   }
 }
 
-function uc_donation_cart_view_submit($form_id, $form_values) {
-  switch ($form_values['op']) {
+function uc_donation_cart_view_submit($form, &$form_state) {
+  switch ($form_state['op']) {
     case t('Update cart'):
-      foreach ($form_values['items'] as $item) {
+      foreach ($form_state['values']['items'] as $item) {
         if (isset($item['donate_price'])) {
           $data = unserialize($item['data']);
           $data['amount'] = str_replace('$','',$item['donate_price']);
@@ -602,12 +603,12 @@ function uc_donation_cart_display($item)
     '#type' => 'hidden',
     '#value' => $item->qty
   );
-  $element['donate_price'] = array(
+  /*$element['donate_price'] = array(
     '#type' => 'textfield',
     '#default_value' => $item->price,
     '#size' => 6,
     '#maxlength' => 10
-  );
+  );*/
 
   return $element;
 }
