You are here

function commerce_usps_commerce_shipping_service_info in Commerce USPS 7.2

Same name and namespace in other branches
  1. 7 commerce_usps.module \commerce_usps_commerce_shipping_service_info()

Implements hook_commerce_shipping_service_info().

File

./commerce_usps.module, line 43
Defines the USPS shipping method and services for Drupal Commerce.

Code

function commerce_usps_commerce_shipping_service_info() {
  $registered_services = array();
  $available = array_merge(commerce_usps_service_list('domestic'), commerce_usps_service_list('international'));
  $enabled = array_merge(variable_get('commerce_usps_services', array()), variable_get('commerce_usps_services_int', array()));

  // Add enabled USPS services to the commerce_shipping service info.
  foreach ($enabled as $machine_name => $service) {
    if ($service) {
      $registered_services[$machine_name] = array(
        'title' => $available[$machine_name]['title'],
        'description' => $available[$machine_name]['title'],
        'display_title' => $available[$machine_name]['title'],
        'shipping_method' => 'usps',
        'price_component' => 'shipping',
        'callbacks' => array(
          'rate' => 'commerce_usps_rate',
        ),
      );
    }
  }
  return $registered_services;
}