コード例 #1
0
 private function getDropZoneHiddenDirectory(Dropzone $dropzone)
 {
     $em = $this->getDoctrine()->getManager();
     $hiddenDirectory = $dropzone->getHiddenDirectory();
     if ($hiddenDirectory === null) {
         $hiddenDirectory = new Directory();
         $name = $this->get('translator')->trans('Hidden folder for "%dropzoneName%"', array('%dropzoneName%' => $dropzone->getResourceNode()->getName()), 'innova_collecticiel');
         $hiddenDirectory->setName($name);
         $role = $this->getDoctrine()->getRepository('ClarolineCoreBundle:Role')->findManagerRole($dropzone->getResourceNode()->getWorkspace());
         $resourceManager = $this->get('claroline.manager.resource_manager');
         $resourceManager->create($hiddenDirectory, $resourceManager->getResourceTypeByName('directory'), $dropzone->getResourceNode()->getCreator(), $dropzone->getResourceNode()->getWorkspace(), $dropzone->getResourceNode()->getParent(), null, array('ROLE_WS_MANAGER' => array('open' => true, 'export' => true, 'create' => array(), 'role' => $role)));
         $dropzone->setHiddenDirectory($hiddenDirectory->getResourceNode());
         $em->persist($dropzone);
         $em->flush();
     }
     return $dropzone->getHiddenDirectory();
 }