Exemple #1
0
 /**
  * Process to the default render of the given element. The element must implement Drawable
  * @param Element $element
  * @param array $options
  * @return mixed
  * @throws \UForm\Exception
  */
 public function elementDefaultRender(Element $element, $options = [])
 {
     if ($element instanceof Element\Drawable) {
         $navigator = new Navigator();
         $value = $navigator->arrayGet($this->formContext->getData()->getDataCopy(), $element->getName(true, true), 1);
         return $element->render($value, $options);
     } else {
         throw new \UForm\Exception('Trying to render an invalid element. Element not implementing Drawable cant be rendered');
     }
 }
 /**
  * Get the data for an element in the chained validation
  * @param $element
  * @return null
  */
 public function getDataFor($element)
 {
     $data = $this->data->getDataCopy();
     if (!is_array($data)) {
         return null;
     }
     if ($element instanceof Element) {
         $name = $element->getName(true, true);
     } else {
         $name = $element;
     }
     $navigator = new Navigator();
     return $navigator->arrayGet($data, $name);
 }