Index: uc_addresses.module =================================================================== RCS file: /cvs/drupal/contributions/modules/uc_addresses/uc_addresses.module,v retrieving revision 1.28 diff -u -r1.28 uc_addresses.module --- uc_addresses.module 20 Apr 2009 20:54:10 -0000 1.28 +++ uc_addresses.module 11 Dec 2009 09:58:41 -0000 @@ -852,9 +852,9 @@ $uid = $address_user->uid; $aid = $address ? $address->aid : 0; - $form_state['storage']['user'] = $address_user; - $form_state['storage']['address'] = $address; - $form_state['storage']['view'] = $view; + $form['#user'] = $address_user; + $form['#address'] = $address; + $form['#view'] = $view; // Get the panes to display @@ -963,37 +963,38 @@ function uc_addresses_get_address_form_submit($form, &$form_state) { global $user; - $address_user = $form_state['storage']['user']; - $address = $form_state['storage']['address']; - $view = $form_state['storage']['view']; + $address_user = $form['#user']; + $address = $form['#address']; + $view = $form['#view']; if ($form_state['clicked_button']['#value'] == t('Delete address')) { cache_clear_all(); - drupal_goto('user/'. $address_user->uid .'/addresses/' . $address->aid . '/delete'); - } - - if (!$address) { - $address = new stdClass(); - $address->uid = $address_user->uid; + $form_state['redirect'] = array('user/'. $address_user->uid .'/addresses/' . $address->aid . '/delete'); } + else { + if (!$address) { + $address = new stdClass(); + $address->uid = $address_user->uid; + } - $valid = TRUE; - foreach (element_children($form_state['values']['panes']) as $pane_id) { - $func = _address_pane_data($pane_id, 'callback'); - $isvalid = $func('process', $address, $form_state['values']['panes'][$pane_id]); - if ($isvalid === FALSE) { - $_SESSION['expanded_panes'][] = $key; - $valid = FALSE; + $valid = TRUE; + foreach (element_children($form_state['values']['panes']) as $pane_id) { + $func = _address_pane_data($pane_id, 'callback'); + $isvalid = $func('process', $address, $form_state['values']['panes'][$pane_id]); + if ($isvalid === FALSE) { + $_SESSION['expanded_panes'][] = $key; + $valid = FALSE; + } + } + if ($view == 'edit') { // Update database + _uc_addresses_db_update_address($address); + } + elseif ($view == 'new' || $view == 'add') { // Insert into datebase + _uc_addresses_db_add_address($address); } - } - if ($view == 'edit') { // Update database - _uc_addresses_db_update_address($address); - } - elseif ($view == 'new' || $view == 'add') { // Insert into datebase - _uc_addresses_db_add_address($address); - } - drupal_goto('user/'. $address_user->uid .'/addresses'); + $form_state['redirect'] = array('user/'. $address_user->uid .'/addresses'); + } } /** @@ -1117,8 +1118,8 @@ */ function uc_addresses_delete_address_confirm_form(&$form_state, $address_user, $address) { - $form_state['storage']['user'] = $address_user; - $form_state['storage']['address'] = $address; + $form['#user'] = $address_user; + $form['#address'] = $address; // The buttons @@ -1136,13 +1137,13 @@ */ function uc_addresses_delete_address_confirm_form_submit($form, &$form_state) { - $address_user = $form_state['storage']['user']; - $address = $form_state['storage']['address']; + $address_user = $form['#user']; + $address = $form['#address']; _uc_addresses_db_delete_address($address->aid); drupal_set_message(t('The address has been deleted.')); - drupal_goto('user/'. $address_user->uid .'/addresses'); + $form_state['redirect'] = array('user/'. $address_user->uid .'/addresses'); } /**