public function shippingMultipleChange(Application $app, Request $request)
{
$Order = $app['eccube.service.shopping']->getOrder($app['config']['order_processing']);
if (!$Order) {
$app->addError('front.shopping.order.error');
return $app->redirect($app->url('shopping_error'));
}
if ('POST' !== $request->getMethod()) {
return $app->redirect($app->url('shopping'));
}
$builder = $app['eccube.service.shopping']->getShippingFormBuilder($Order);
$event = new EventArgs(array('builder' => $builder, 'Order' => $Order), $request);
$app['eccube.event.dispatcher']->dispatch(EccubeEvents::FRONT_SHOPPING_SHIPPING_MULTIPLE_CHANGE_INITIALIZE, $event);
$form = $builder->getForm();
$form->handleRequest($request);
if ($form->isSubmitted() && $form->isValid()) {
$data = $form->getData();
$message = $data['message'];
$Order->setMessage($message);
// 受注情報を更新
$app['orm.em']->flush();
// 複数配送設定へリダイレクト
return $app->redirect($app->url('shopping_shipping_multiple'));
}
return $app->render('Shopping/index.twig', array('form' => $form->createView(), 'Order' => $Order));
}