src/Sulu/Bundle/ContactBundle/Controller/AccountController.php
public function deleteAction($id, Request $request)
    {
        $delete = function($id) use ($request) {
            $account = $this->getRepository()->findAccountByIdAndDelete($id);

            if (!$account) {
                throw new EntityNotFoundException($this->getAccountEntityName(), $id);
            }

            $em = $this->getDoctrine()->getManager();

            $addresses = $account->getAddresses();
            /** @var AddressEntity $address */
            foreach ($addresses as $address) {
                if (!$address->hasRelations()) {
                    $em->remove($address);
                }
            }

            // Remove related contacts if removeContacts is true.
            if (null !== $request->get('removeContacts') &&
                'true' == $request->get('removeContacts')
            ) {
                foreach ($account->getAccountContacts() as $accountContact) {
                    $em->remove($accountContact->getContact());
                }
            }

            $em->remove($account);
            $em->flush();
        };

        $view = $this->responseDelete($id, $delete);

        return $this->handleView($view);
    }
public function deleteAction($id, Request $request)
    {
        $delete = function($id) use ($request) {
            $account = $this->getRepository()->findAccountByIdAndDelete($id);

            if (!$account) {
                throw new EntityNotFoundException($this->getAccountEntityName(), $id);
            }

            $em = $this->getDoctrine()->getManager();

            $addresses = $account->getAddresses();
            /** @var AddressEntity $address */
            foreach ($addresses as $address) {
                if (!$address->hasRelations()) {
                    $em->remove($address);
                }
            }

            // Remove related contacts if removeContacts is true.
            if (null !== $request->get('removeContacts') &&
                'true' == $request->get('removeContacts')
            ) {
                foreach ($account->getAccountContacts() as $accountContact) {
                    $em->remove($accountContact->getContact());
                }
            }

            $em->remove($account);
            $em->flush();
        };

        $view = $this->responseDelete($id, $delete);

        return $this->handleView($view);
    }
public function deleteAction ( $ id , Request $ request ) { $ delete = function ( $ id ) use ( $ request ) { $ account = $ this -> getRepository ( ) -> findAccountByIdAndDelete ( $ id ) ; if ( ! $ account ) { throw new EntityNotFoundException ( $ this -> getAccountEntityName ( ) , $ id ) ; } $ em = $ this -> getDoctrine ( ) -> getManager ( ) ; $ addresses = $ account -> getAddresses ( ) ; /** @var AddressEntity $address */ foreach ( $ addresses as $ address ) { if ( ! $ address -> hasRelations ( ) ) { $ em -> remove ( $ address ) ; } } // Remove related contacts if removeContacts is true. if ( null !== $ request -> get ( 'removeContacts' ) && 'true' == $ request -> get ( 'removeContacts' ) ) { foreach ( $ account -> getAccountContacts ( ) as $ accountContact ) { $ em -> remove ( $ accountContact -> getContact ( ) ) ; } } $ em -> remove ( $ account ) ; $ em -> flush ( ) ; } ; $ view = $ this -> responseDelete ( $ id , $ delete ) ; return $ this -> handleView ( $ view ) ; }
Delete an account with the given id.

@param $id
@param Request $request

@return Response
Delete an account with the given id .