diff --git a/data/interfaces/default/js/tables/collections_table.js b/data/interfaces/default/js/tables/collections_table.js
new file mode 100644
index 00000000..3f0aaae2
--- /dev/null
+++ b/data/interfaces/default/js/tables/collections_table.js
@@ -0,0 +1,78 @@
+collections_table_options = {
+ "destroy": true,
+ "language": {
+ "search": "Search: ",
+ "lengthMenu": "Show _MENU_ entries per page",
+ "info": "Showing _START_ to _END_ of _TOTAL_ export items",
+ "infoEmpty": "Showing 0 to 0 of 0 entries",
+ "infoFiltered": "(filtered from _MAX_ total entries)",
+ "emptyTable": "No data in table",
+ "loadingRecords": ' Loading items...'
+ },
+ "pagingType": "full_numbers",
+ "stateSave": true,
+ "stateDuration": 0,
+ "processing": false,
+ "serverSide": true,
+ "pageLength": 25,
+ "order": [0, 'asc'],
+ "autoWidth": false,
+ "scrollX": true,
+ "columnDefs": [
+ {
+ "targets": [0],
+ "data": "title",
+ "createdCell": function (td, cellData, rowData, row, col) {
+ if (cellData !== '') {
+ $(td).html('' + cellData + '');
+ }
+ },
+ "width": "50%",
+ "className": "no-wrap"
+ },
+ {
+ "targets": [1],
+ "data": "collectionMode",
+ "createdCell": function (td, cellData, rowData, row, col) {
+ if (cellData !== '') {
+ $(td).html(cellData);
+ }
+ },
+ "width": "20%",
+ "className": "no-wrap"
+ },
+ {
+ "targets": [2],
+ "data": "collectionSort",
+ "createdCell": function (td, cellData, rowData, row, col) {
+ if (cellData !== '') {
+ $(td).html(cellData);
+ }
+ },
+ "width": "20%",
+ "className": "no-wrap"
+ },
+ {
+ "targets": [3],
+ "data": "childCount",
+ "createdCell": function (td, cellData, rowData, row, col) {
+ if (cellData !== '') {
+ $(td).html(cellData);
+ }
+ },
+ "width": "10%",
+ "className": "no-wrap"
+ }
+ ],
+ "drawCallback": function (settings) {
+ // Jump to top of page
+ //$('html,body').scrollTop(0);
+ $('#ajaxMsg').fadeOut();
+ },
+ "preDrawCallback": function(settings) {
+ var msg = " Fetching rows...";
+ showMsg(msg, false, false, 0);
+ },
+ "rowCallback": function (row, rowData, rowIndex) {
+ }
+};
\ No newline at end of file
diff --git a/data/interfaces/default/js/tables/playlists_table.js b/data/interfaces/default/js/tables/playlists_table.js
new file mode 100644
index 00000000..a11f1452
--- /dev/null
+++ b/data/interfaces/default/js/tables/playlists_table.js
@@ -0,0 +1,78 @@
+playlists_table_options = {
+ "destroy": true,
+ "language": {
+ "search": "Search: ",
+ "lengthMenu": "Show _MENU_ entries per page",
+ "info": "Showing _START_ to _END_ of _TOTAL_ export items",
+ "infoEmpty": "Showing 0 to 0 of 0 entries",
+ "infoFiltered": "(filtered from _MAX_ total entries)",
+ "emptyTable": "No data in table",
+ "loadingRecords": ' Loading items...'
+ },
+ "pagingType": "full_numbers",
+ "stateSave": true,
+ "stateDuration": 0,
+ "processing": false,
+ "serverSide": true,
+ "pageLength": 25,
+ "order": [0, 'asc'],
+ "autoWidth": false,
+ "scrollX": true,
+ "columnDefs": [
+ {
+ "targets": [0],
+ "data": "title",
+ "createdCell": function (td, cellData, rowData, row, col) {
+ if (cellData !== '') {
+ $(td).html('' + cellData + '');
+ }
+ },
+ "width": "50%",
+ "className": "no-wrap"
+ },
+ {
+ "targets": [1],
+ "data": "leafCount",
+ "createdCell": function (td, cellData, rowData, row, col) {
+ if (cellData !== '') {
+ $(td).html(cellData);
+ }
+ },
+ "width": "20%",
+ "className": "no-wrap"
+ },
+ {
+ "targets": [2],
+ "data": "duration",
+ "createdCell": function (td, cellData, rowData, row, col) {
+ if (cellData !== '') {
+ $(td).html(humanDuration(cellData, 'dhm'));
+ }
+ },
+ "width": "20%",
+ "className": "no-wrap"
+ },
+ {
+ "targets": [3],
+ "data": "smart",
+ "createdCell": function (td, cellData, rowData, row, col) {
+ if (cellData !== '') {
+ $(td).html(cellData);
+ }
+ },
+ "width": "10%",
+ "className": "no-wrap"
+ }
+ ],
+ "drawCallback": function (settings) {
+ // Jump to top of page
+ //$('html,body').scrollTop(0);
+ $('#ajaxMsg').fadeOut();
+ },
+ "preDrawCallback": function(settings) {
+ var msg = " Fetching rows...";
+ showMsg(msg, false, false, 0);
+ },
+ "rowCallback": function (row, rowData, rowIndex) {
+ }
+};
\ No newline at end of file
diff --git a/data/interfaces/default/library.html b/data/interfaces/default/library.html
index 3391946d..0870acf0 100644
--- a/data/interfaces/default/library.html
+++ b/data/interfaces/default/library.html
@@ -93,6 +93,8 @@ DOCUMENTATION :: END
% if _session['user_group'] == 'admin':
% if data['section_id'] != LIVE_TV_SECTION_ID:
Media Info
+ Collections
+ Playlists
Export
% endif
% endif
@@ -259,7 +261,7 @@ DOCUMENTATION :: END
+
+
+
+
+
+
+
+
+
+ Title |
+ Collection Mode |
+ Collection Sort |
+ Items |
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Title |
+ Items |
+ Duration |
+ Smart |
+
+
+
+
+
+
+
+
+
@@ -442,6 +524,8 @@ DOCUMENTATION :: END
+
+