コード例 #1
0
 /**
  * Create a job instance
  *
  * @param Request $request
  *
  * @return \Symfony\Component\HttpFoundation\Response
  */
 public function createAction(Request $request)
 {
     $jobInstance = $this->jobInstanceFactory->createJobInstance($this->getJobType());
     $form = $this->createForm($this->jobInstanceType, $jobInstance);
     if ($request->isMethod('POST')) {
         $form->handleRequest($request);
         if ($form->isValid()) {
             $this->persist($jobInstance);
             $this->addFlash('success', sprintf('flash.%s.created', $this->getJobType()));
             $url = $this->generateUrl(sprintf('pim_importexport_%s_profile_edit', $this->getJobType()), ['id' => $jobInstance->getId()]);
             $response = ['status' => 1, 'url' => $url];
             return new Response(json_encode($response));
         }
     }
     return $this->render(sprintf('PimImportExportBundle:%sProfile:create.html.twig', ucfirst($this->getJobType())), ['form' => $form->createView()]);
 }
コード例 #2
0
 /**
  * Create a job instance
  *
  * @param Request $request
  *
  * @return Response
  */
 public function createAction(Request $request)
 {
     $jobInstance = $this->jobInstanceFactory->createJobInstance($this->getJobType());
     $form = $this->formFactory->create($this->jobInstanceFormType, $jobInstance);
     if ($request->isMethod('POST')) {
         $form->handleRequest($request);
         if ($form->isValid()) {
             $job = $this->jobRegistry->get($jobInstance->getJobName());
             $jobParameters = $this->jobParametersFactory->create($job);
             $jobInstance->setRawParameters($jobParameters->all());
             $this->entityManager->persist($jobInstance);
             $this->entityManager->flush();
             $this->request->getSession()->getFlashBag()->add('success', new Message(sprintf('flash.%s.created', $this->getJobType())));
             $url = $this->router->generate(sprintf('pim_importexport_%s_profile_edit', $this->getJobType()), ['id' => $jobInstance->getId()]);
             $response = ['status' => 1, 'url' => $url];
             return new Response(json_encode($response));
         }
     }
     return $this->templating->renderResponse($this->jobTemplateProvider->getCreateTemplate($jobInstance), ['form' => $form->createView()]);
 }