getCode(), $sessionId); if (!$documentData) { error_log('Skipped'); continue 2; } $file = new ResourceFile(); $file ->setName($documentData['title']) ->setOriginalFilename(basename($documentData['path'])) ->setSize($documentData['size']) ; $resourceType = $em->getRepository('ChamiloCoreBundle:ResourceType')->findOneBy(['name' => 'document']); $node = new ResourceNode(); $node ->setName($documentData['title']) ->setDescription($documentData['comment']) ->setResourceFile($file) ->setCreator($author) ->setResourceFile($file) ->setResourceType($resourceType) ->setCreatedAt($createdAt) ->setUpdatedAt($lastUpdatedAt) ; $em->persist($node); $em->flush(); $rights = []; switch ($row['visibility']) { case '0': $newVisibility = ResourceLink::VISIBILITY_DRAFT; $readerMask = ResourceNodeVoter::getReaderMask(); $editorMask = ResourceNodeVoter::getEditorMask(); $resourceRight = new ResourceRight(); $resourceRight ->setMask($editorMask) ->setRole(ResourceNodeVoter::ROLE_CURRENT_COURSE_TEACHER) ; $rights[] = $resourceRight; break; case '1': $newVisibility = ResourceLink::VISIBILITY_PUBLISHED; break; case '2': $newVisibility = ResourceLink::VISIBILITY_DELETED; break; } $link = new ResourceLink(); $link ->setCourse($course) ->setSession($session) ->setGroup($group) ->setUser($toUser) ->setResourceNode($node) ->setVisibility($newVisibility) ; if (!empty($rights)) { foreach ($rights as $right) { $link->addResourceRight($right); } } $em->persist($link); $em->flush(); break; } } /** default resource type list | announcement | | attendance | | blog_management | | calendar_event | | calendar_event_attachment | | course_description | | document | | dropbox | | forum | | forum_attachment | | forum_category | | forum_post | | forum_thread | | glossary | | learnpath | | learnpath_category | | link | | link_category | | notebook | | quiz | | survey | | test_category | | thematic | | thematic_advance | | thematic_plan | | wiki | | work | */