You are here

class StateToAbbrev in Tamper 8

Plugin implementation for converting state to abbreviation.

Plugin annotation


@Tamper(
  id = "state_to_abbrev",
  label = @Translation("State to abbrev"),
  description = @Translation("Converts this field from a full state name string to the two character abbreviation."),
  category = "Text"
)

Hierarchy

Expanded class hierarchy of StateToAbbrev

1 file declares its use of StateToAbbrev
StateToAbbrevTest.php in tests/src/Unit/Plugin/Tamper/StateToAbbrevTest.php

File

src/Plugin/Tamper/StateToAbbrev.php, line 18

Namespace

Drupal\tamper\Plugin\Tamper
View source
class StateToAbbrev extends TamperBase {

  /**
   * Get the state and abbreviation list.
   *
   * @return array
   *   List of state abbreviations, keyed by lower case state name.
   */
  protected static function getStateList() {
    $states = [
      'alabama' => 'AL',
      'alaska' => 'AK',
      'arizona' => 'AZ',
      'american samoa' => 'AS',
      'arkansas' => 'AR',
      'california' => 'CA',
      'colorado' => 'CO',
      'connecticut' => 'CT',
      'delaware' => 'DE',
      'district of columbia' => 'DC',
      'federated states of micronesia' => 'FM',
      'florida' => 'FL',
      'georgia' => 'GA',
      'guam' => 'GU',
      'hawaii' => 'HI',
      'idaho' => 'ID',
      'illinois' => 'IL',
      'indiana' => 'IN',
      'iowa' => 'IA',
      'kansas' => 'KS',
      'kentucky' => 'KY',
      'louisiana' => 'LA',
      'maine' => 'ME',
      'maryland' => 'MD',
      'massachusetts' => 'MA',
      'marshall islands' => 'MH',
      'michigan' => 'MI',
      'minnesota' => 'MN',
      'mississippi' => 'MS',
      'missouri' => 'MO',
      'montana' => 'MT',
      'nebraska' => 'NE',
      'nevada' => 'NV',
      'new hampshire' => 'NH',
      'new jersey' => 'NJ',
      'new mexico' => 'NM',
      'new york' => 'NY',
      'north carolina' => 'NC',
      'north dakota' => 'ND',
      'northern mariana islands' => 'MP',
      'ohio' => 'OH',
      'oklahoma' => 'OK',
      'oregon' => 'OR',
      'pennsylvania' => 'PA',
      'palau' => 'PW',
      'puerto rico' => 'PR',
      'rhode island' => 'RI',
      'south carolina' => 'SC',
      'south dakota' => 'SD',
      'tennessee' => 'TN',
      'texas' => 'TX',
      'utah' => 'UT',
      'vermont' => 'VT',
      'virginia' => 'VA',
      'virgin islands' => 'VI',
      'washington' => 'WA',
      'west virginia' => 'WV',
      'wisconsin' => 'WI',
      'wyoming' => 'WY',
    ];
    return $states;
  }

  /**
   * {@inheritdoc}
   */
  public function tamper($data, TamperableItemInterface $item = NULL) {
    $states = self::getStateList();

    // If it's already a valid state abbreviation, leave it alone.
    if (in_array($data, $states)) {
      return;
    }

    // Trim whitespace, set to lowercase.
    $state = mb_strtolower(trim($data));
    return isset($states[$state]) ? $states[$state] : '';
  }

}

Members

Namesort descending Modifiers Type Description Overrides
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.
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.
StateToAbbrev::getStateList protected static function Get the state and abbreviation list.
StateToAbbrev::tamper public function Tamper data. Overrides TamperInterface::tamper
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.
TamperBase::$sourceDefinition protected property The source definition.
TamperBase::buildConfigurationForm public function Form constructor. Overrides PluginFormInterface::buildConfigurationForm 23
TamperBase::defaultConfiguration public function Gets default configuration for this plugin. Overrides ConfigurableInterface::defaultConfiguration 23
TamperBase::getConfiguration public function Gets this plugin's configuration. Overrides ConfigurableInterface::getConfiguration
TamperBase::getSetting public function Get a particular configuration value. Overrides TamperInterface::getSetting
TamperBase::multiple public function Indicates whether the returned value requires multiple handling. Overrides TamperInterface::multiple 5
TamperBase::setConfiguration public function Sets the configuration for this plugin instance. Overrides ConfigurableInterface::setConfiguration
TamperBase::submitConfigurationForm public function Form submission handler. Overrides PluginFormInterface::submitConfigurationForm 22
TamperBase::validateConfigurationForm public function Form validation handler. Overrides PluginFormInterface::validateConfigurationForm 3
TamperBase::__construct public function Constructs a TamperBase object. Overrides PluginBase::__construct 1