/**
  * @param \Zend\Form\Form $form
  */
 public function it_should_have_a_form($form)
 {
     $entity = new \StdClass();
     $form->hasValidated()->shouldBeCalled()->willreturn(false);
     $form->bind($entity)->shouldBeCalled()->willreturn($form);
     $form->bindOnValidate()->shouldBeCalled()->willreturn($form);
     $this->setForm($form)->getForm($entity)->shouldReturn($form);
 }
Exemplo n.º 2
0
 /**
  * @return \Zend\Form\Form
  */
 public function getForm($entity)
 {
     if ($this->form->hasValidated()) {
         return $this->form;
     }
     $this->form->bind($entity);
     $this->form->bindOnValidate();
     $this->getEventManager()->trigger($this->createEvent(CrudEvent::FORM_READY, $this->form));
     return $this->form;
 }
Exemplo n.º 3
0
 public function __invoke(Form $form)
 {
     $out = "";
     if ($form->hasValidated() && !$form->isValid()) {
         $out .= '<div class="alert alert-error">';
         $out .= '<strong>Validation problems:</strong> Please check your form input';
         $out .= '</div>';
     }
     return $out;
 }
Exemplo n.º 4
0
 /**
  * @param \Phpro\SmartCrud\Gateway\CrudGatewayInterface $gateway
  * @param \Zend\EventManager\EventManager               $eventManager
  * @param \Zend\Form\Form                               $form
  * @param \Phpro\SmartCrud\Service\SmartServiceResult   $result
  */
 public function it_should_handle_valid_data($gateway, $eventManager, $form, $result)
 {
     $entity = new \StdClass();
     $entity->id = 1;
     $postData = $this->getMockPostData();
     $gateway->loadEntity('entityKey', $entity->id)->shouldBecalled()->willReturn($entity);
     $gateway->update($entity, $postData)->shouldBecalled()->willReturn(true);
     $form->hasValidated()->shouldBeCalled()->willreturn(false);
     $form->bind(Argument::any())->shouldBeCalled();
     $form->bindOnValidate()->shouldBeCalled();
     $form->setData(Argument::exact($this->getMockPostData()))->shouldBeCalled()->willReturn($form);
     $form->isValid()->shouldBeCalled()->willreturn(true);
     $result->setSuccess(true)->shouldBeCalled();
     $result->setForm($form)->shouldBeCalled();
     $result->setEntity($entity)->shouldBeCalled();
     $this->setEntityKey('entityKey');
     $this->setGateway($gateway);
     $this->setForm($form);
     $this->setResult($result);
     $this->run($entity->id, $this->getMockPostData())->shouldReturn($result);
     $eventManager->trigger(Argument::which('getName', CrudEvent::BEFORE_DATA_HYDRATION))->shouldBeCalled();
     $eventManager->trigger(Argument::which('getName', CrudEvent::BEFORE_DATA_VALIDATION))->shouldBeCalled();
     $eventManager->trigger(Argument::which('getName', CrudEvent::INVALID_UPDATE))->shouldNotBeCalled();
     $eventManager->trigger(Argument::which('getName', CrudEvent::BEFORE_UPDATE))->shouldBeCalled();
     $eventManager->trigger(Argument::which('getName', CrudEvent::AFTER_UPDATE))->shouldBeCalled();
 }