Baikal\ViewComponentsBundle\Services\FormHandler\CalendarFormHandler::handle PHP Метод

handle() публичный Метод

public handle ( $onSuccess, $onFailure, Request $request, Baikal\SystemBundle\Entity\User $user, Baikal\ModelBundle\Entity\Calendar $calendar = null )
$request Symfony\Component\HttpFoundation\Request
$user Baikal\SystemBundle\Entity\User
$calendar Baikal\ModelBundle\Entity\Calendar
    public function handle($onSuccess, $onFailure, Request $request, User $user, Calendar $calendar = null)
    {
        $new = false;
        if (is_null($calendar)) {
            $calendar = new Calendar();
            $calendar->setPrincipaluri($user->getIdentityPrincipal()->getUri());
            $calendar->setUri(UUIDUtil::getUUID());
            $new = true;
        }
        $form = $this->formfactory->create(new CalendarType(), $calendar);
        $form->handleRequest($request);
        if ($form->isValid()) {
            $this->em->persist($calendar);
            $this->em->flush();
            return $onSuccess($form, $calendar, $new);
        }
        return $onFailure($form, $calendar, $new);
    }
CalendarFormHandler