request->get('lst'); $ssttid = $request->request->get('ssttid', ''); $subdefs = $request->request->get('obj', []); $download = new \set_export($this->app, $lst, $ssttid); if (0 === $download->get_total_download()) { $this->app->abort(403); } $list = $download->prepare_export( $this->getAuthenticatedUser(), $this->app['filesystem'], $subdefs, $request->request->get('type') === 'title' ? true : false, $request->request->get('businessfields') ); $list['export_name'] = sprintf('%s.zip', $download->getExportName()); $token = $this->getTokenManipulator()->createDownloadToken($this->getAuthenticatedUser(), serialize($list)); $this->getDispatcher()->dispatch(PhraseaEvents::EXPORT_CREATE, new ExportEvent( $this->getAuthenticatedUser(), $ssttid, $lst, $subdefs, $download->getExportName()) ); return $this->app->redirectPath('prepare_download', ['token' => $token->getValue()]); } /** * @return TokenManipulator */ private function getTokenManipulator() { return $this->app['manipulator.token']; } }