KeyInputBase.php in Key 8
File
src/Plugin/KeyInputBase.php
View source
<?php
namespace Drupal\key\Plugin;
use Drupal\Core\Form\FormStateInterface;
abstract class KeyInputBase extends KeyPluginBase implements KeyInputInterface, KeyPluginFormInterface {
public function validateConfigurationForm(array &$form, FormStateInterface $form_state) {
}
public function submitConfigurationForm(array &$form, FormStateInterface $form_state) {
$this
->setConfiguration($form_state
->getValues());
}
public function processSubmittedKeyValue(FormStateInterface $form_state) {
$processed_values = [
'submitted' => NULL,
'processed_submitted' => NULL,
];
$key_input_settings = $form_state
->getValues();
$key_value_data = $form_state
->get('key_value');
if (isset($key_input_settings['key_value'])) {
if (!empty($key_input_settings['key_value']) && $key_input_settings['key_value'] == $key_value_data['obscured']) {
$processed_values['submitted'] = $key_value_data['processed_original'];
}
else {
$processed_values['submitted'] = $key_input_settings['key_value'];
}
if (isset($key_input_settings['base64_encoded']) && $key_input_settings['base64_encoded'] == TRUE) {
$processed_values['processed_submitted'] = base64_decode($processed_values['submitted']);
}
else {
$processed_values['processed_submitted'] = $processed_values['submitted'];
}
unset($key_input_settings['key_value']);
$form_state
->setValues($key_input_settings);
}
return $processed_values;
}
public function processExistingKeyValue($key_value) {
if (isset($this->configuration['base64_encoded']) && $this->configuration['base64_encoded'] == TRUE) {
$processed_value = base64_encode($key_value);
}
else {
$processed_value = $key_value;
}
return $processed_value;
}
}