Definition

address_invoiceapi(&$invoice, $op)
ecommerce-5--3/address/address.module, line 201

Description

Implementation of hook_invoiceapi()

Code

<?php
function address_invoiceapi(&$invoice, $op) {
  if (is_string($invoice) && $op == 'form') { 
    return t('Address');
  }

  switch ($op) {
    case 'create':
      $invoice->uid = $invoice->invoice_id;
      $account = user_load(array('uid' => $invoice->uid));
      $invoice->address['billing']->firstname = $account->name;
      break;

    case 'form':
      return address_checkoutapi($invoice, 'form');
      break;

    case 'validate':
      return address_checkoutapi($invoice, 'validate');
      break;

    case 'submit':
      return address_checkoutapi($invoice, 'save');
      break;

    case 'post_update':
      break;

    case 'review':
      if (!$invoice->address['billing']->street1 || ($invoice->shippable && !$invoice->address['shipping'])) {
        drupal_goto('admin/store/invoice/'. arg(3) .'/edit/address');
      }

      $form = address_checkoutapi($invoice, 'review');
      $form['#theme'] = 'address_review_form';
      return $form;
      break;
  }
}
?>