address_page($action = null, $aid = null)
ecommerce-5--3/address/address.module, line 300
The controller for managing addresses. Callback happens via menu().
<?php
function address_page($action = null, $aid = null) {
global $user;
$uid = $user->uid;
$access = user_access('administer users');
if ($access) {
$uid = arg(1);
}
$name = db_result(db_query('SELECT name FROM {users} WHERE uid = %d', $uid));
drupal_set_title(t('%username\'s - address book', array('%username' => check_plain($name))));
$output = t('<p>Your address book is used to save addresses for billing and shipping of items from our store.</p>');
switch ($action) {
case 'add':
case 'edit':
$edit = $aid && !$edit ? address_load($aid) : array();
if (!$edit) {
$edit['uid'] = $uid;
}
elseif (!$access && $edit['uid'] != $uid) {
return drupal_access_denied();
}
$output .= drupal_get_form('address_form', $edit);
break;
case 'delete':
address_delete($aid);
drupal_goto("user/$uid/address");
break;
default:
$output .= theme('address_overview');
}
return $output;
}
?>