public function isRegisteredInput(FormElement $input) { /** @var FormElement $registeredInput */ foreach ($this->registeredInputs as $registeredInput) { if ($input->getId()) { /** @var Input $registeredInput */ if ($registeredInput->getId() === $input->getId()) { return true; } } //$x1 = $registeredInput->getXpath(); //$x2 = $input->getXpath(); if ($registeredInput->getXpath() === $input->getXpath()) { return true; } if ($registeredInput->getNode()->getOuterHtml() === $input->getNode()->getOuterHtml()) { return true; } } return false; }
private static function findLabelByStdForm(FormElement $input) { if ($input->getType() === 'radio') { $content = $input->getNode()->getParent()->getParent()->getParent()->find('css', 'label'); $lLabel = $content->getText(); $content = $input->getNode()->getParent()->getParent()->getParent()->getParent()->getParent()->find('css', 'label'); if ($content && $input->getName() === $content->getAttribute('for')) { return $content->getText() . ' ' . $lLabel; } } elseif ($input->getType() === 'checkbox') { $x = 1; $content = $input->getNode()->getParent()->getParent()->getParent()->getParent()->find('css', 'label'); if ($content && $input->getName() === $content->getAttribute('for')) { return $content->getText(); } } else { $content = $input->getNode()->getParent()->getParent()->find('css', 'label'); if ($content && $input->getId() === $content->getAttribute('for')) { return $content->getText(); } } /*$outer = $content->getOuterHtml(); $inner = $content->getHtml(); $txt = $content->getText(); $parents = $input->getParents();*/ return false; }