12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364 |
- <?php
- /**
- * @class
- * Purpose:
- *
- * Display:
- * Configuration:
- */
- class sep__protocol_formatter extends ChadoFieldFormatter {
- // The default label for this field.
- public static $default_label = 'Protocol';
- // The list of field types for which this formatter is appropriate.
- public static $field_types = ['sep__protocol'];
- // The list of default settings for this formatter.
- public static $default_settings = [
- 'setting1' => 'default_value',
- ];
- /**
- * @see TripalFieldFormatter::settingsForm()
- */
- public function settingsForm($view_mode, $form, &$form_state) {
- }
- /**
- * @see TripalFieldFormatter::view()
- */
- public function view(&$element, $entity_type, $entity, $langcode, $items, $display) {
- if ($items[0]['value']) {
- $protocol_name_term = chado_get_semweb_term('protocol', 'name');
- $protocol_type_term = chado_get_semweb_term('protocol', 'type_id');
- $protocol_name = $items[0]['value'][$protocol_name_term];
- $content = $protocol_name;
- if (array_key_exists('entity_id', $items[0]['value'])) {
- list($entity_type, $entity_id) = explode(':', $items[0]['value']['entity_id']);
- if ($entity_id) {
- $content = l($protocol_name, 'bio_data/' . $entity_id);
- }
- }
- //cardinality for this field is 1
- $element[0] = [
- '#type' => 'markup',
- '#markup' => $content,
- ];
- }
- }
- /**
- * @see TripalFieldFormatter::settingsSummary()
- */
- public function settingsSummary($view_mode) {
- return '';
- }
- }
|