diff --git a/composer.json b/composer.json
index a4541ff7b2..d694c8e5db 100755
--- a/composer.json
+++ b/composer.json
@@ -155,7 +155,8 @@
"symfony/requirements-checker": "^1.1",
"liip/theme-bundle": "^1.5",
"a2lix/translation-form-bundle": "^3.0",
- "lunetics/locale-bundle": "^2.6"
+ "lunetics/locale-bundle": "^2.6",
+ "oneup/uploader-bundle": "^2.0"
},
"require-dev": {
"friendsofphp/php-cs-fixer": "^2.7",
diff --git a/config/bundles.php b/config/bundles.php
index 2e2d3c311f..f8165643ea 100644
--- a/config/bundles.php
+++ b/config/bundles.php
@@ -69,4 +69,5 @@ return [
A2lix\TranslationFormBundle\A2lixTranslationFormBundle::class => ['all' => true],
Lunetics\LocaleBundle\LuneticsLocaleBundle::class => ['all' => true],
Ivory\CKEditorBundle\IvoryCKEditorBundle::class => ['all' => true],
+ Oneup\UploaderBundle\OneupUploaderBundle::class => ['all' => true],
];
diff --git a/config/packages/oneup_uploader.yaml b/config/packages/oneup_uploader.yaml
new file mode 100644
index 0000000000..fec8f7d9f0
--- /dev/null
+++ b/config/packages/oneup_uploader.yaml
@@ -0,0 +1,11 @@
+# Read the documentation: https://github.com/1up-lab/OneupUploaderBundle/blob/master/Resources/doc/index.md
+oneup_uploader:
+ mappings:
+ courses:
+ #frontend: dropzone # or any uploader you use in the frontend
+ frontend: blueimp
+ storage:
+ type: flysystem
+ filesystem: oneup_flysystem.courses_filesystem
+ root_folder: true
+# namer: oneup_uploader.namer.urlsafe
diff --git a/config/packages/sonata_page.yaml b/config/packages/sonata_page.yaml
index 2a8a22f6f2..64022dc8ca 100644
--- a/config/packages/sonata_page.yaml
+++ b/config/packages/sonata_page.yaml
@@ -38,6 +38,7 @@ sonata_page:
- ^/faq/(.*)
- ^/faq
- ^/courses/(.*)
+ - ^/resource/(.*)
- ^/front/editor
- ^/contact(.*) # sonata admin
- ^/cms/pages/latest
diff --git a/config/packages/twig.yaml b/config/packages/twig.yaml
index 87a8f0183f..cc3bd416dc 100644
--- a/config/packages/twig.yaml
+++ b/config/packages/twig.yaml
@@ -2,6 +2,7 @@ twig:
debug: '%kernel.debug%'
paths: ['%kernel.project_dir%/templates', '%kernel.project_dir%/main/template/']
form_themes:
+ - 'bootstrap_4_layout.html.twig'
- '@SonataFormatter/Form/formatter.html.twig'
exception_controller: 'Chamilo\ThemeBundle\Controller\ExceptionController::showAction'
globals:
diff --git a/config/routes/oneup_uploader.yaml b/config/routes/oneup_uploader.yaml
new file mode 100644
index 0000000000..ad9f64f2d3
--- /dev/null
+++ b/config/routes/oneup_uploader.yaml
@@ -0,0 +1,3 @@
+oneup_uploader:
+ resource: .
+ type: uploader
diff --git a/src/CoreBundle/Controller/ResourceController.php b/src/CoreBundle/Controller/ResourceController.php
index a5558e3a62..274cdf8445 100644
--- a/src/CoreBundle/Controller/ResourceController.php
+++ b/src/CoreBundle/Controller/ResourceController.php
@@ -27,9 +27,8 @@ class ResourceController extends BaseController
*/
public function uploadFile(): Response
{
- $helper = $this->container->get('oneup_uploader.templating.uploader_helper');
- $endpoint = $helper->endpoint('courses');
-
+ //$helper = $this->container->get('oneup_uploader.templating.uploader_helper');
+ //$endpoint = $helper->endpoint('courses');
return $this->render(
'@ChamiloCore/Resource/upload.html.twig',
[
diff --git a/src/CoreBundle/EventListener/CourseUploadListener.php b/src/CoreBundle/EventListener/CourseUploadListener.php
new file mode 100644
index 0000000000..6edcfd3ed6
--- /dev/null
+++ b/src/CoreBundle/EventListener/CourseUploadListener.php
@@ -0,0 +1,49 @@
+om = $om;
+ }
+
+ /**
+ * @param PostPersistEvent $event
+ *
+ * @return \Oneup\UploaderBundle\Uploader\Response\ResponseInterface
+ */
+ public function onUpload(PostPersistEvent $event)
+ {
+ /** @var FlysystemFile $file */
+ $file = $event->getFile();
+ $file->
+ error_log($file->getPathname());
+
+ // If everything went fine
+ $response = $event->getResponse();
+ $response['success'] = true;
+
+ return $response;
+ }
+}
\ No newline at end of file
diff --git a/src/CoreBundle/Resources/config/services.yml b/src/CoreBundle/Resources/config/services.yml
index ffbe6e95da..97d54fc433 100644
--- a/src/CoreBundle/Resources/config/services.yml
+++ b/src/CoreBundle/Resources/config/services.yml
@@ -196,6 +196,13 @@ services:
tags:
- {name: kernel.event_listener, event: theme.messages, method: onListMessages}
+ # Course upload listener
+ chamilo_core.listener.course_upload_listener:
+ class: Chamilo\CoreBundle\EventListener\CourseUploadListener
+ arguments: ['@doctrine.orm.entity_manager']
+ tags:
+ - {name: kernel.event_listener, event: oneup_uploader.post_persist, method: onUpload }
+
# chamilo_core.menu.simple_menu:
# class: Chamilo\CoreBundle\Menu\SimpleMenuBuilder
# arguments: ['@service_container']
diff --git a/src/CoreBundle/Resources/views/Resource/upload.html.twig b/src/CoreBundle/Resources/views/Resource/upload.html.twig
new file mode 100644
index 0000000000..da686216b9
--- /dev/null
+++ b/src/CoreBundle/Resources/views/Resource/upload.html.twig
@@ -0,0 +1,11 @@
+{% extends "@ChamiloTheme/Layout/layout_one_col.html.twig" %}
+
+{% block content %}
+
+
+
+{% endblock %}