SalesforceLinkItem.php in Salesforce Suite 8.3
File
modules/salesforce_mapping/src/Plugin/Field/FieldType/SalesforceLinkItem.php
View source
<?php
namespace Drupal\salesforce_mapping\Plugin\Field\FieldType;
use Drupal\Core\Field\FieldStorageDefinitionInterface;
use Drupal\Core\TypedData\DataDefinition;
use Drupal\link\Plugin\Field\FieldType\LinkItem;
class SalesforceLinkItem extends LinkItem {
public static function propertyDefinitions(FieldStorageDefinitionInterface $field_definition) {
$properties['uri'] = DataDefinition::create('uri')
->setLabel(t('Salesforce URL'));
$properties['title'] = DataDefinition::create('string')
->setLabel(t('Salesforce ID'));
return $properties;
}
public function isEmpty() {
return $this
->getEntity()
->isNew() || !method_exists($this
->getEntity(), 'sfid') || !$this
->getEntity()
->sfid();
}
public static function schema(FieldStorageDefinitionInterface $field_definition) {
return [];
}
}
Classes
Name |
Description |
SalesforceLinkItem |
Plugin annotation
@FieldType(
id = "salesforce_link",
label = @Translation("Salesforce Record"),
description = @Translation("A link to the salesforce record."),
default_widget = "link_default",
default_formatter = "link",
list_class =… |