You are here

class CustomerInfo in Ubercart 8.4

Manage the information for the customer's user account.

Plugin annotation


@UbercartOrderPane(
  id = "customer",
  title = @Translation("Customer info"),
  weight = 3,
)

Hierarchy

Expanded class hierarchy of CustomerInfo

File

uc_order/src/Plugin/Ubercart/OrderPane/CustomerInfo.php, line 19

Namespace

Drupal\uc_order\Plugin\Ubercart\OrderPane
View source
class CustomerInfo extends EditableOrderPanePluginBase {

  /**
   * {@inheritdoc}
   */
  public function getClasses() {
    return [
      'pos-left',
    ];
  }

  /**
   * {@inheritdoc}
   */
  public function view(OrderInterface $order, $view_mode) {
    if ($view_mode != 'customer') {
      if ($order
        ->getOwnerId()) {
        $build['uid'] = [
          '#type' => 'link',
          '#prefix' => $this
            ->t('Customer number') . ': ',
          '#suffix' => '<br />',
          '#title' => $order
            ->getOwnerId(),
          '#url' => $order
            ->getOwner()
            ->toUrl(),
        ];
      }
      $build['primary_email'] = [
        '#type' => 'link',
        '#prefix' => $this
          ->t('E-mail address') . ': ',
        '#title' => $order
          ->getEmail(),
        '#url' => Url::fromUri('mailto:' . $order
          ->getEmail()),
      ];
      return $build;
    }
  }

  /**
   * {@inheritdoc}
   */
  public function buildForm(OrderInterface $order, array $form, FormStateInterface $form_state) {
    $form['order-view-image'] = [
      '#theme' => 'image',
      '#uri' => base_path() . drupal_get_path('module', 'uc_store') . '/images/order_view.gif',
      '#title' => $this
        ->t('Search for an existing customer.'),
      '#alt' => $this
        ->t('Search for an existing customer.'),
      '#attributes' => [
        'id' => 'load-customer-search',
      ],
      '#prefix' => '<div class="order-pane-icons">',
    ];
    $form['menu-customers-image'] = [
      '#theme' => 'image',
      '#uri' => base_path() . drupal_get_path('module', 'uc_store') . '/images/menu_customers_small.gif',
      '#title' => $this
        ->t('Create a new customer.'),
      '#alt' => $this
        ->t('Create a new customer.'),
      '#attributes' => [
        'id' => 'load-new-customer-form',
      ],
      '#suffix' => '</div>',
    ];
    $form['icons'] = [
      '#type' => 'markup',
      '#markup' => '<div id="customer-select"></div>',
    ];
    $form['uid'] = [
      '#type' => 'hidden',
      '#default_value' => $order
        ->getOwnerId(),
    ];
    $form['uid_text'] = [
      '#type' => 'textfield',
      '#title' => $this
        ->t('Customer number'),
      '#default_value' => $order
        ->getOwnerId(),
      '#maxlength' => 10,
      '#size' => 10,
      '#disabled' => TRUE,
    ];
    $form['primary_email'] = [
      '#type' => 'email',
      '#title' => $this
        ->t('E-mail address'),
      '#default_value' => $order
        ->getEmail(),
      '#maxlength' => 64,
      '#size' => 32,
    ];
    return $form;
  }

  /**
   * {@inheritdoc}
   */
  public function submitForm(OrderInterface $order, array &$form, FormStateInterface $form_state) {
    $order
      ->setOwnerId($form_state
      ->getValue('uid'));
    $order
      ->setEmail($form_state
      ->getValue('primary_email'));
  }

}

Members

Namesort descending Modifiers Type Description Overrides
CustomerInfo::buildForm public function Form constructor. Overrides EditableOrderPanePluginInterface::buildForm
CustomerInfo::getClasses public function Returns the classes used to wrap an order pane. Overrides OrderPanePluginBase::getClasses
CustomerInfo::submitForm public function Form submission handler. Overrides EditableOrderPanePluginInterface::submitForm
CustomerInfo::view public function Returns the contents of an order pane as a store administrator. Overrides OrderPanePluginInterface::view
DependencySerializationTrait::$_entityStorages protected property An array of entity type IDs keyed by the property name of their storages.
DependencySerializationTrait::$_serviceIds protected property An array of service IDs keyed by property name used for serialization.
DependencySerializationTrait::__sleep public function 1
DependencySerializationTrait::__wakeup public function 2
MessengerTrait::$messenger protected property The messenger. 29
MessengerTrait::messenger public function Gets the messenger. 29
MessengerTrait::setMessenger public function Sets the messenger.
OrderPanePluginBase::calculateDependencies public function
OrderPanePluginBase::getTitle public function Returns the title of an order pane. Overrides OrderPanePluginInterface::getTitle 2
PluginBase::$configuration protected property Configuration information passed into the plugin. 1
PluginBase::$pluginDefinition protected property The plugin implementation definition. 1
PluginBase::$pluginId protected property The plugin_id.
PluginBase::DERIVATIVE_SEPARATOR constant A string which is used to separate base plugin IDs from the derivative ID.
PluginBase::getBaseId public function Gets the base_plugin_id of the plugin instance. Overrides DerivativeInspectionInterface::getBaseId
PluginBase::getDerivativeId public function Gets the derivative_id of the plugin instance. Overrides DerivativeInspectionInterface::getDerivativeId
PluginBase::getPluginDefinition public function Gets the definition of the plugin implementation. Overrides PluginInspectionInterface::getPluginDefinition 3
PluginBase::getPluginId public function Gets the plugin_id of the plugin instance. Overrides PluginInspectionInterface::getPluginId
PluginBase::isConfigurable public function Determines if the plugin is configurable.
PluginBase::__construct public function Constructs a \Drupal\Component\Plugin\PluginBase object. 92
StringTranslationTrait::$stringTranslation protected property The string translation service. 1
StringTranslationTrait::formatPlural protected function Formats a string containing a count of items.
StringTranslationTrait::getNumberOfPlurals protected function Returns the number of plurals supported by a given language.
StringTranslationTrait::getStringTranslation protected function Gets the string translation service.
StringTranslationTrait::setStringTranslation public function Sets the string translation service to use. 2
StringTranslationTrait::t protected function Translates a string to the current language or to a given language.