diff options
author | Björn Schießle <bjoern@schiessle.org> | 2013-12-02 13:22:28 -0800 |
---|---|---|
committer | Björn Schießle <bjoern@schiessle.org> | 2013-12-02 13:22:28 -0800 |
commit | 9d100b5f94d15ab1b78bc9d8ab02de0fab33e6d3 (patch) | |
tree | dc9ec7b20ce51f677396041198082a33fd068292 | |
parent | a81d4175ba1d0625a0096c6383f1af4505eb1d4d (diff) | |
parent | ee66db447fc12aed4ef441710a29fab2e03aa47e (diff) | |
download | nextcloud-server-9d100b5f94d15ab1b78bc9d8ab02de0fab33e6d3.tar.gz nextcloud-server-9d100b5f94d15ab1b78bc9d8ab02de0fab33e6d3.zip |
Merge pull request #6151 from owncloud/trash_fix_select
trash, make it possible to select folders
-rw-r--r-- | apps/files_trashbin/css/trash.css | 3 | ||||
-rw-r--r-- | apps/files_trashbin/index.php | 1 | ||||
-rw-r--r-- | apps/files_trashbin/js/trash.js | 41 | ||||
-rw-r--r-- | apps/files_trashbin/lib/helper.php | 2 | ||||
-rw-r--r-- | apps/files_trashbin/templates/part.list.php | 13 |
5 files changed, 20 insertions, 40 deletions
diff --git a/apps/files_trashbin/css/trash.css b/apps/files_trashbin/css/trash.css new file mode 100644 index 00000000000..97819f4e80b --- /dev/null +++ b/apps/files_trashbin/css/trash.css @@ -0,0 +1,3 @@ +#fileList td a.file, #fileList td a.file span { + cursor: default; +} diff --git a/apps/files_trashbin/index.php b/apps/files_trashbin/index.php index d079af3fb6d..93f385dd30b 100644 --- a/apps/files_trashbin/index.php +++ b/apps/files_trashbin/index.php @@ -10,6 +10,7 @@ OCP\Util::addScript('files', 'fileactions'); $tmpl = new OCP\Template('files_trashbin', 'index', 'user'); OCP\Util::addStyle('files', 'files'); +OCP\Util::addStyle('files_trashbin', 'trash'); OCP\Util::addScript('files', 'filelist'); // filelist overrides OCP\Util::addScript('files_trashbin', 'filelist'); diff --git a/apps/files_trashbin/js/trash.js b/apps/files_trashbin/js/trash.js index b157fdf1025..48e9629f7de 100644 --- a/apps/files_trashbin/js/trash.js +++ b/apps/files_trashbin/js/trash.js @@ -66,41 +66,6 @@ $(document).ready(function() { procesSelection(); }); - $('#fileList').on('click', 'td.filename a', function(event) { - if (event.shiftKey) { - event.preventDefault(); - var last = $(lastChecked).parent().parent().prevAll().length; - var first = $(this).parent().parent().prevAll().length; - var start = Math.min(first, last); - var end = Math.max(first, last); - var rows = $(this).parent().parent().parent().children('tr'); - for (var i = start; i < end; i++) { - $(rows).each(function(index) { - if (index == i) { - var checkbox = $(this).children().children('input:checkbox'); - $(checkbox).attr('checked', 'checked'); - $(checkbox).parent().parent().addClass('selected'); - } - }); - } - } - var checkbox = $(this).parent().children('input:checkbox'); - lastChecked = checkbox; - if ($(checkbox).attr('checked')) { - $(checkbox).removeAttr('checked'); - $(checkbox).parent().parent().removeClass('selected'); - $('#select_all').removeAttr('checked'); - } else { - $(checkbox).attr('checked', 'checked'); - $(checkbox).parent().parent().toggleClass('selected'); - var selectedCount = $('td.filename input:checkbox:checked').length; - if (selectedCount == $('td.filename input:checkbox').length) { - $('#select_all').attr('checked', 'checked'); - } - } - procesSelection(); - }); - $('.undelete').click('click', function(event) { event.preventDefault(); var files = getSelectedFiles('file'); @@ -184,6 +149,12 @@ $(document).ready(function() { }); + $('#fileList').on('click', 'td.filename input', function() { + var checkbox = $(this).parent().children('input:checkbox'); + $(checkbox).parent().parent().toggleClass('selected'); + procesSelection(); + }); + $('#fileList').on('click', 'td.filename a', function(event) { var mime = $(this).parent().parent().data('mime'); if (mime !== 'httpd/unix-directory') { diff --git a/apps/files_trashbin/lib/helper.php b/apps/files_trashbin/lib/helper.php index 4f442ee9304..c454b35a5f2 100644 --- a/apps/files_trashbin/lib/helper.php +++ b/apps/files_trashbin/lib/helper.php @@ -44,8 +44,10 @@ class Helper } $files = array(); + $id = 0; foreach ($result as $r) { $i = array(); + $i['id'] = $id++; $i['name'] = $r['id']; $i['date'] = \OCP\Util::formatDate($r['timestamp']); $i['timestamp'] = $r['timestamp']; diff --git a/apps/files_trashbin/templates/part.list.php b/apps/files_trashbin/templates/part.list.php index 78709d986ae..c32d9fd54da 100644 --- a/apps/files_trashbin/templates/part.list.php +++ b/apps/files_trashbin/templates/part.list.php @@ -35,18 +35,21 @@ <?php endif; ?> <?php endif; ?> > - <?php if(!isset($_['readonly']) || !$_['readonly']): ?><input type="checkbox" /><?php endif; ?> + <?php if(!isset($_['readonly']) || !$_['readonly']): ?> + <input id="select-<?php p($file['id']); ?>" type="checkbox" /> + <label for="select-<?php p($file['id']); ?>"></label> + <?php endif; ?> <?php if($file['type'] === 'dir'): ?> <?php if( $_['dirlisting'] ): ?> - <a class="name" href="<?php p($_['baseURL'].'/'.$name); ?>" title=""> + <a class="name dir" href="<?php p($_['baseURL'].'/'.$name); ?>" title=""> <?php else: ?> - <a class="name" href="<?php p($_['baseURL'].'/'.$name.'.d'.$file['timestamp']); ?>" title=""> + <a class="name dir" href="<?php p($_['baseURL'].'/'.$name.'.d'.$file['timestamp']); ?>" title=""> <?php endif; ?> <?php else: ?> <?php if( $_['dirlisting'] ): ?> - <a class="name" href="<?php p($_['downloadURL'].'/'.$name); ?>" title=""> + <a class="name file" href="<?php p($_['downloadURL'].'/'.$name); ?>" title=""> <?php else: ?> - <a class="name" href="<?php p($_['downloadURL'].'/'.$name.'.d'.$file['timestamp']);?>" title=""> + <a class="name file" href="<?php p($_['downloadURL'].'/'.$name.'.d'.$file['timestamp']);?>" title=""> <?php endif; ?> <?php endif; ?> <span class="nametext"> |