private function persistDocument(Request $request, $type, $document, $language)
{
$data = $request->request->all();
if ($request->query->has('parent')) {
$data['parent'] = $request->query->get('parent');
}
$form = $this->createForm($type, $document, ['csrf_protection' => false, 'webspace_key' => $this->getWebspace($request)]);
$form->submit($data, false);
if (!$form->isValid()) {
throw new InvalidFormException($form);
}
$this->getDocumentManager()->persist($document, $language, ['user' => $this->getUser()->getId(), 'clear_missing_content' => false]);
}