1. Go to this page and download the library: Download dyg81/modal-bundle library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
dyg81 / modal-bundle example snippets
$bundles = [
...,
new Dyg81\ModalBundle\Dyg81ModalBundle(),
];
/**
* Helper function to display a simple translatable message in a modal.
* The link to this route should have the attributes:
* class: modal-open
*
* @Route("/modal/open/{message}", name="dyg81_modal_open_message")
*/
public function openMessageModalAction($message)
{
return $this->render('@Dyg81Modal/messageModal.html.twig', [
'message' => $this->get('translator')->trans($message),
]);
}
/**
* Finds and displays a ContactMessage entity.
*
* @Route("/modal/{id}", name="contact_show_modal")
* @Method("GET")
*/
public function showModalAction(ContactMessage $contactMessage)
{
$deleteForm = $this->createDeleteForm($contactMessage);
return $this->render('contact/showModal.html.twig', array(
'contactMessage' => $contactMessage,
'delete_form' => $deleteForm->createView(),
));
}
/**
* Displays a form in a modal to edit an existing ContactMessage entity.
*
* Every form displayed inside a modal should have the action url explicitly
* set.Also, if the form is valid, redirecting should be done by return a
* ModalRedirectResponse object.
*
* @Route("/modal/{id}/edit", name="contact_edit_modal")
* @Method({"GET", "POST"})
*/
public function editModalAction(Request $request, ContactMessage $contactMessage)
{
$deleteForm = $this->createDeleteForm($contactMessage);
$editForm = $this->createForm(ContactMessageType::class, $contactMessage, [
// Make sure to explicitly set the action.
'action' => $this->generateUrl('contact_edit_modal', ['id' => $contactMessage->getId()])
]);
$editForm->add('save', SubmitType::class, ['label' => 'Edit']);
$editForm->handleRequest($request);
if ($editForm->isValid()) {
$em = $this->getDoctrine()->getManager();
$em->persist($contactMessage);
$em->flush();
$this->addFlash('notice', 'Entity edited.');
// On success, redirection should be done by returning a new ModalRedirectResponse object.
return new ModalRedirectResponse($this->generateUrl('contact_index'));
}
return $this->render('contact/editModal.html.twig', array(
'contactMessage' => $contactMessage,
'edit_form' => $editForm->createView(),
'delete_form' => $deleteForm->createView(),
));
}
/**
* Helper function to open a simple confirm modal.
* The link to this route should have the attributes:
* class: modal-open-confirm
* data-modal-href: {{ path('dyg81_modal_open_confirm') }}
*
* @Route("/modal/confirm", name="dyg81_modal_open_confirm")
*/
public function openConfirmModalAction()
{
return $this->render('@Dyg81Modal/baseConfirmModal.html.twig');
}
if ($form->isValid()) {
// Process your data...
return new ModalOpenResponse(
$this->generateUrl('contact_edit_modal', ['id' => $contactMessage->getId()]),
'your_custom_modal_id_or_null'
);
}
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.