Example #1
0
 function assertNameFormats($name_components, $type, $object, array $names, array $options = array())
 {
     foreach ($names as $format => $expected) {
         $value = NameFormatParser::parse($name_components, $format, array('object' => $object, 'type' => $type));
         $this->assertIdentical($value, $expected, t("Name value for '@name' was '@actual', expected value '@expected'. Components were: %components", array('@name' => $format, '@actual' => $value, '@expected' => $expected, '%components' => implode(' ', $name_components))));
     }
 }
 /**
  * {@inheritdoc}
  */
 public function examples(EntityInterface $entity)
 {
     $examples = array();
     foreach ($this->nameExamples() as $index => $example_name) {
         $formatted = SafeMarkup::checkPlain(NameFormatParser::parse($example_name, $entity->get('pattern')));
         if (empty($formatted)) {
             $formatted = '<em>&lt;&lt;empty&gt;&gt;</em>';
         }
         $examples[] = $formatted . " <sup>{$index}</sup>";
     }
     return $examples;
 }
 /**
  * Test NameFormatParser::parse
  *
  * @dataProvider patternDataProvider
  */
 public function testParser($components, $pattern, $expected)
 {
     $settings = array('sep1' => ' ', 'sep2' => ', ', 'sep3' => '');
     $formatted = NameFormatParser::parse($components, $pattern, $settings);
     $this->assertEquals($expected, $formatted);
 }
Example #4
0
 /**
  * {@inheritdoc}
  */
 public function viewElements(FieldItemListInterface $items, $langcode)
 {
     $elements = array();
     $entity = $items->getEntity();
     $settings = $this->settings;
     $type = empty($settings['output']) ? 'default' : $settings['output'];
     $format = isset($settings['format']) ? $settings['format'] : 'default';
     $format = name_get_format_by_machine_name($format);
     if (empty($format)) {
         $format = name_get_format_by_machine_name('default');
     }
     foreach ($items as $delta => $item) {
         // We still have raw user input here unless the markup flag has been used.
         $value = NameFormatParser::parse($item->toArray(), $format, array('object' => $entity, 'type' => $entity->getEntityTypeId(), 'markup' => !empty($display['settings']['markup'])));
         if (empty($display['settings']['markup'])) {
             $elements[$delta] = array('#markup' => _name_value_sanitize($value, NULL, $type));
         } else {
             $elements[$delta] = array('#markup' => $value);
         }
     }
     if (isset($settings['multiple']) && $settings['multiple'] == 'inline_list') {
         $items = array();
         foreach (Element::children($elements) as $delta) {
             if (!empty($elements[$delta]['#markup'])) {
                 $items[] = $elements[$delta]['#markup'];
                 unset($elements[$delta]);
             }
         }
         if (!empty($items)) {
             $elements[0] = ['#theme' => 'name_item_list', '#items' => $items, '#settings' => $settings];
         }
     }
     return $elements;
 }