Newer
Older
Angie Byron
committed
<?php
/**
* @file
* Contains \Drupal\edit\Plugin\InPlaceEditor\PlainTextEditor.
Angie Byron
committed
*/
Alex Pott
committed
namespace Drupal\edit\Plugin\InPlaceEditor;
Angie Byron
committed
use Drupal\edit\EditorBase;
Alex Pott
committed
use Drupal\Core\Field\FieldDefinitionInterface;
Angie Byron
committed
/**
* Defines the plain text in-place editor.
Angie Byron
committed
*
Alex Pott
committed
* @InPlaceEditor(
* id = "plain_text"
Angie Byron
committed
* )
*/
class PlainTextEditor extends EditorBase {
Angie Byron
committed
/**
* {@inheritdoc}
Angie Byron
committed
*
* @todo The processed text logic is too coupled to text fields. Figure out
* how to generalize to other textual field types.
*/
function isCompatible(FieldDefinitionInterface $field_definition, array $items) {
Angie Byron
committed
// This editor is incompatible with multivalued fields.
Alex Pott
committed
if ($field_definition->getCardinality() != 1) {
Angie Byron
committed
return FALSE;
}
// This editor is incompatible with processed ("rich") text fields.
Alex Pott
committed
elseif ($field_definition->getSetting('text_processing')) {
Angie Byron
committed
return FALSE;
}
else {
return TRUE;
}
}
/**
* {@inheritdoc}
Angie Byron
committed
*/
public function getAttachments() {
return array(
'library' => array(
array('edit', 'edit.inPlaceEditor.plainText'),
Angie Byron
committed
),
);
}