Chamilo is a learning management system focused on ease of use and accessibility
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
chamilo-lms/src/CoreBundle/Repository/PersonalFileRepository.php

56 lines
1.6 KiB

<?php
/* For licensing terms, see /license.txt */
namespace Chamilo\CoreBundle\Repository;
use Chamilo\CoreBundle\Component\Resource\Settings;
use Chamilo\CoreBundle\Entity\Course;
use Chamilo\CoreBundle\Entity\ResourceNode;
use Chamilo\CoreBundle\Entity\Session;
use Chamilo\CoreBundle\Entity\User;
use Chamilo\CoreBundle\Form\Resource\PersonalFileType;
use Chamilo\CourseBundle\Entity\CGroup;
use Doctrine\ORM\QueryBuilder;
use Symfony\Component\Form\FormInterface;
final class PersonalFileRepository extends ResourceRepository implements GridInterface
{
public function getResources(User $user, ResourceNode $parentNode, Course $course = null, Session $session = null, CGroup $group = null): QueryBuilder
{
return $this->getResourcesByCreator($user, $parentNode);
}
public function getResourceSettings(): Settings
{
$settings = parent::getResourceSettings();
$settings
->setAllowNodeCreation(true)
//->setAllowResourceCreation(true)
->setAllowResourceUpload(true)
->setAllowResourceEdit(false)
;
return $settings;
}
public function setResourceProperties(FormInterface $form, $course, $session, $fileType)
{
$newResource = $form->getData();
$newResource
//->setCourse($course)
//->setSession($session)
//->setFiletype($fileType)
//->setTitle($title) // already added in $form->getData()
;
return $newResource;
}
public function getResourceFormType(): string
{
return PersonalFileType::class;
}
}