X-Git-Url: http://www.aleph1.co.uk/gitweb/?p=yaffs-website;a=blobdiff_plain;f=vendor%2Fchi-teck%2Fdrupal-code-generator%2Ftemplates%2Fd8%2F_field%2Fkey-value-formatter.twig;fp=vendor%2Fchi-teck%2Fdrupal-code-generator%2Ftemplates%2Fd8%2F_field%2Fkey-value-formatter.twig;h=2f854ffb5cede8bf83bec8c6d5f985916e16660f;hp=0000000000000000000000000000000000000000;hb=0bf8d09d2542548982e81a441b1f16e75873a04f;hpb=74df008bdbb3a11eeea356744f39b802369bda3c diff --git a/vendor/chi-teck/drupal-code-generator/templates/d8/_field/key-value-formatter.twig b/vendor/chi-teck/drupal-code-generator/templates/d8/_field/key-value-formatter.twig new file mode 100644 index 000000000..2f854ffb5 --- /dev/null +++ b/vendor/chi-teck/drupal-code-generator/templates/d8/_field/key-value-formatter.twig @@ -0,0 +1,105 @@ + $item) { + + $table = [ + '#type' => 'table', + ]; + +{% for subfield in subfields %} + // {{ subfield.name }}. + if ($item->{{ subfield.machine_name }}) { + {% if subfield.type == 'datetime' %} + $date = DrupalDateTime::createFromFormat('{{ subfield.date_storage_format }}', $item->{{ subfield.machine_name }}); + $date_formatter = \Drupal::service('date.formatter'); + $timestamp = $date->getTimestamp(); + {% if subfield.list %} + $allowed_values = {{ type_class }}::{{ subfield.allowed_values_method }}(); + $formatted_date = $allowed_values[$item->{{ subfield.machine_name }}]; + {% else %} + $formatted_date = $date_formatter->format($timestamp, 'long'); + {% endif %} + $iso_date = $date_formatter->format($timestamp, 'custom', 'Y-m-d\TH:i:s') . 'Z'; + + {% elseif subfield.list %} + $allowed_values = {{ type_class }}::{{ subfield.allowed_values_method }}(); + + {% endif %} + $table['#rows'][] = [ + 'data' => [ + [ + 'header' => TRUE, + 'data' => [ + '#markup' => $this->t('{{ subfield.name }}'), + ], + ], + [ + 'data' => [ + {% if subfield.type == 'boolean' %} + '#markup' => $item->{{ subfield.machine_name }} ? $this->t('Yes') : $this->t('No'), + {% elseif subfield.type == 'datetime' %} + '#theme' => 'time', + '#text' => $formatted_date, + '#html' => FALSE, + '#attributes' => [ + 'datetime' => $iso_date, + ], + '#cache' => [ + 'contexts' => [ + 'timezone', + ], + ], + {% else %} + {% if subfield.list %} + '#markup' => $allowed_values[$item->{{ subfield.machine_name }}], + {% else %} + '#markup' => $item->{{ subfield.machine_name }}, + {% endif %} + {% endif %} + ], + ], + ], + 'no_striping' => TRUE, + ]; + } + +{% endfor %} + $element[$delta] = $table; + + } + + return $element; + } + +}