From e9765e298b4972ae1066348bdb4b4299e081d026 Mon Sep 17 00:00:00 2001 From: Jan-Hendrik Willms Date: Tue, 11 Jun 2024 22:31:40 +0200 Subject: files wip --- app/views/files/_overview.php | 92 +++++++++++++++---------------- app/views/files/flat.php | 26 ++++----- app/views/files/index.php | 25 ++++----- resources/assets/javascripts/lib/files.js | 24 +------- 4 files changed, 67 insertions(+), 100 deletions(-) diff --git a/app/views/files/_overview.php b/app/views/files/_overview.php index 50fc6a3..44cb213 100644 --- a/app/views/files/_overview.php +++ b/app/views/files/_overview.php @@ -28,19 +28,18 @@ 'href' => $controller->link_for('files/overview', ['view' => 'all_files']) ]; ?> -
+ - " - :files="files" - :topfolder="topfolder" - enable_table_filter="false" - table_title="" - :show_bulk_actions="false" - :tfoot_link="" - > + withProps([ + 'enable_table_filter' => false, + 'files' => $all_files, + 'show_bulk_actions' => false, + 'showdownloads' => $show_download_column, + 'table_title' => _('Alle Dateien'), + 'tfoot_link' => $tfoot_link, + 'topfolder' => $vue_topfolder, + ]) ?>
@@ -54,19 +53,18 @@ 'href' => $controller->link_for('files/overview', ['view' => 'my_uploaded_files']) ]; ?> -
+ - " - :files="files" - :topfolder="topfolder" - enable_table_filter="false" - table_title="" - :show_bulk_actions="false" - :tfoot_link="" - > + withProps([ + 'enable_table_filter' => false, + 'files' => $uploaded_files, + 'show_bulk_actions' => false, + 'showdownloads' => $show_download_column, + 'table_title' => _('Persönlicher Dateibereich'), + 'tfoot_link' => $tfoot_link, + 'topfolder' => $vue_topfolder, + ]) ?>
@@ -80,19 +78,18 @@ 'href' => $controller->link_for('files/overview', ['view' => 'my_public_files']) ]; ?> -
+ - " - :files="files" - :topfolder="topfolder" - enable_table_filter="false" - table_title="" - :show_bulk_actions="false" - :tfoot_link="" - > + withProps([ + 'enable_table_filter' => false, + 'files' => $public_files, + 'show_bulk_actions' => false, + 'showdownloads' => $show_download_column, + 'table_title' => _('Meine öffentlichen Dateien'), + 'tfoot_link' => $tfoot_link, + 'topfolder' => $vue_topfolder, + ]) ?>
@@ -106,19 +103,18 @@ 'href' => $controller->link_for('files/overview', ['view' => 'my_uploaded_files_unknown_license']) ]; ?> -
+ - " - :files="files" - :topfolder="topfolder" - enable_table_filter="false" - table_title="" - :show_bulk_actions="false" - :tfoot_link="" - > + withProps([ + 'enable_table_filter' => false, + 'files' => $uploaded_unlic_files, + 'show_bulk_actions' => false, + 'showdownloads' => $show_download_column, + 'table_title' => _('Meine Dateien mit ungeklärter Lizenz'), + 'tfoot_link' => $tfoot_link, + 'topfolder' => $vue_topfolder, + ]) ?>
diff --git a/app/views/files/flat.php b/app/views/files/flat.php index 1440117..6033822 100644 --- a/app/views/files/flat.php +++ b/app/views/files/flat.php @@ -43,22 +43,18 @@ foreach ($topFolder->getAdditionalActionButtons() as $button) { $vue_topFolder['buttons'] .= $button; } ?> -
+ - " - :breadcrumbs="breadcrumbs" - :files="files" - :folders="folders" - :topfolder="topfolder" - :allow_filter="" - table_title="" - pagination="" - :initial_sort="{sortedBy:'chdate',sortDirection:'desc'}" - > + withProps([ + 'allow_filter' => !empty($enable_table_filter), + 'files' => $vue_files, + 'initial_sort' => ['sortedBy' => 'chdate', 'sortDirection' => 'desc'], + 'pagination' => $pagination_html ?? '', + 'showdownloads' => $show_downloads, + 'table_title' => $table_title ?? '', + 'topfolder' => $vue_topFolder, + ]) ?>
-
+ - " - :breadcrumbs="breadcrumbs" - :files="files" - :folders="folders" - :topfolder="topfolder" - > + + withProps([ + 'breadcrumbs' => $vue_breadcrumbs, + 'files' => $vue_files, + 'folders' => $vue_folders, + 'showdownloads' => $show_downloads, + 'topfolder' => $vue_topFolder, + ]) ?>
- id !== 'nobody') : ?> + render_partial('file/upload_window.php') ?> render_partial('file/add_files_window.php', [ diff --git a/resources/assets/javascripts/lib/files.js b/resources/assets/javascripts/lib/files.js index d05112d..5b0ab29 100644 --- a/resources/assets/javascripts/lib/files.js +++ b/resources/assets/javascripts/lib/files.js @@ -4,7 +4,7 @@ import FilesTable from '../../../vue/components/FilesTable.vue'; const Files = { init () { - if ($('#files-index, #files-system, #course-files-index, #institute-files-index, #files-flat, #course-files-flat, #institute-files-flat, #files-overview').length + if ($('#files-system, #course-files-index, #institute-files-index, #course-files-flat, #institute-files-flat, #files-overview').length && jQuery("#files_table_form").length) { STUDIP.Vue.load().then(({createApp}) => { @@ -46,28 +46,6 @@ const Files = { }); }); } - - //The following is only for (read only) vue file tables where multiple - //tables are displayed in one page. - var tables = jQuery('.vue-file-table'); - if (tables.length) { - for (let table of tables) { - STUDIP.Vue.load().then(({createApp}) => { - createApp({ - el: table, - data() { - return { - files: jQuery(table).data("files") || [], - folders: jQuery(table).data("folders") || [], - topfolder: jQuery(table).data("topfolder"), - breadcrumbs: jQuery(table).data("breadcrumbs") || [] - }; - }, - components: { FilesTable, }, - }); - }); - } - } }, openAddFilesWindow: function(folder_id) { -- cgit v1.0