/** * {@inheritdoc} */ protected function extractLabelElement($field, ElementInterface $element = null) { $subLabelContent = null; $labelContent = $field; if (strstr($field, 'USD') || strstr($field, 'EUR')) { if (false !== strpos($field, ' ')) { list($subLabelContent, $labelContent) = explode(' ', $field); } } if (null !== $element) { $label = $this->spin(function () use($element, $labelContent) { return $element->find('css', sprintf('label:contains("%s")', $labelContent)); }, sprintf('Unable to find label %s in element : %s', $labelContent, $element->getHtml())); } else { $label = $this->spin(function () use($labelContent) { return $this->find('css', sprintf('label:contains("%s")', $labelContent)); }, sprintf('Unable to find label %s', $labelContent)); } $label->labelContent = $labelContent; $label->subLabelContent = $subLabelContent; return $label; }