Commit Graph

1462 Commits

Author SHA1 Message Date
Evilham de648f6a3e [app:files] Use current directory for hashing.
This fixes collisions that were causing uploads to break in a very
terrible way.

Kudos to @kesselb for finding the problematic place and to
@hottwister for the proposed solution.

Fixes #10527.
2019-03-13 22:21:32 +01:00
Joas Schilling c6a69ba925
Remove the upload and memory setting
* Remove unneeded private method phpFileSize()
* Bump autoloader
* Remove setUploadLimit tests
* Remove integrity check hacks for upload limit

Signed-off-by: Joas Schilling <coding@schilljs.com>
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2019-03-04 12:14:22 +01:00
Roeland Jago Douma 0b7b32e808
Merge pull request #14251 from tomasz-grobelny/upload_reliability_improvements
Limit number of simultaneous MKCOL requests to server to increase upload reliability
2019-02-26 11:33:44 +01:00
Julius Härtl c8ce7ebae2
Use proper scroll container when dragging files
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2019-02-20 10:22:07 +01:00
Tomasz Grobelny 7c4c5fe6ae Limit number of simultaneous MKCOL requests to server to increase upload reliability
Signed-off-by: Tomasz Grobelny <tomasz@grobelny.net>
2019-02-16 23:27:50 +01:00
John Molakvoæ 6a3f4e4957
Merge pull request #12652 from tomasz-grobelny/operation_progress_improvements3
Operation progress improvements
2019-02-14 14:24:20 +01:00
Joas Schilling 3580a1a240
Use the new method instead of the deprecated wrapper
Signed-off-by: Joas Schilling <coding@schilljs.com>
2019-02-06 13:34:12 +01:00
Christian Aigner ce37930910 HBOX-297 trim in webfrontend for new files to stay compatible with windows 2019-02-01 09:47:07 +00:00
fnuesse f13b3ab4ae Add drop zone for favorites quick access in navigation
Signed-off-by: fnuesse <felix.nuesse@t-online.de>
2019-02-01 01:45:03 +01:00
fnuesse ad407f64bd Fix drop zone shadow
Signed-off-by: fnuesse <felix.nuesse@t-online.de>
2019-02-01 00:59:05 +01:00
Daniel Calviño Sánchez 8680ced1ae Unify handling of dropping one file or several files on the trash bin
When a single file was dropped on the trash bin the file information was
gotten from the original element in the file list. When several files
were dropped on the trash bin the file information was gotten from the
helper elements being dragged around. The helper element also contain
the needed file information when a single file is being dragged, so the
handling was unified to always get the file information from the helper
elements.

As the handling of several files is the same as before there is still
the issue of only deleting those files shown in the drag helper instead
of all the selected files.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2019-02-01 00:56:50 +01:00
Daniel Calviño Sánchez e46a67ef4c Use full names instead of abbreviations in variable names
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2019-01-31 19:55:51 +01:00
Daniel Calviño Sánchez 3baa078f70 Make code format more consistent with the rest of the file
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2019-01-31 19:55:51 +01:00
Daniel Calviño Sánchez 75edcad549 Replace double quotes with single quotes
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2019-01-31 19:55:51 +01:00
Daniel Calviño Sánchez 96bc1397b1 Add missing trailing ";"
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2019-01-31 19:55:33 +01:00
Daniel Calviño Sánchez 72a424d4c8 Remove unneeded triggering of event
The "droppedOnTrash" event was being triggered when the file list was
initialized, but it should be triggered only when the user actually
drops a file on the trash bin.

Besides that, the event had no effect; only the file list handles it,
but as it was not triggered on any element it ended being triggered on
the document, and thus not handled. Moreover, even if it had been
triggered on the file list it would have been done before the handler
was set, so it would not have been handled anyway. And even if it had
been handled no data was provided, so the handler would have failed.

In conclusion, triggering the event there was not needed, and thus it
was removed.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2019-01-31 19:14:58 +01:00
Daniel Calviño Sánchez dd91c4e500 Remove duplicated variable declaration
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2019-01-31 17:59:50 +01:00
Daniel Calviño Sánchez 47937a5062 Remove leftover from a WIP
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2019-01-31 17:49:25 +01:00
Daniel Calviño Sánchez 2aee19a4ba Remove hack to prefetch the starred trash icon
Since 6ad7f32938 SVG icons are directly embedded in "icons-vars.css", so
the starred trash icon is now loaded along with the regular trash icon
all at once. Therefore it is not needed to explicitly prefetch it using
a hidden div.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2019-01-31 17:40:14 +01:00
John Molakvoæ 53fd4997cc
Merge pull request #12364 from tomasz-grobelny/file_range_select
Ability to select file ranges with mouse or touchscreen
2019-01-30 10:21:23 +01:00
Tomasz Grobelny 08919eb193 Merge branch 'master' into operation_progress_improvements3
Signed-off-by: Tomasz Grobelny <tomasz@grobelny.net>
2019-01-29 21:26:44 +01:00
Daniel Calviño Sánchez 038e665db9 Fix dropping a folder on a folder row
When the uploaded files have a relative path (that is, when a folder is
uploaded) it is first ensured that all the parent folders exist, which
is done by trying to create them. When a folder is created in the
currently opened folder the file list is updated and a row for the new
folder is added. However, this was done too when the folder already
existed, which caused the previous row to be removed and a new one added
to replace it.

For security reasons, some special headers need to be set in requests;
this is done automatically for jQuery by handling the "ajaxSend" event
in the document. In the case of DAV requests, if the headers are not set
the server rejects the request with "CSRF check not passed".

When a file or folder is dropped on a folder row the jQuery upload
events are chained from the initial drop event, which has the row as its
target. In order to upload the file jQuery performs a request, which
triggers the "ajaxSend" event in the row; this event then bubbles up to
the document, which is then handled by adding the special headers to the
request.

However, when a folder was dropped on a folder row that folder row was
removed when ensuring that the folder exists. The jQuery upload events
were still triggered on the row, but as it had been removed it had no
parent nodes, and thus the events did not bubble up. Due to this the
"ajaxSend" event never reached the document when triggered on the
removed row, the headers were not set, and the upload failed.

All this is simply fixed by not removing the folder row when trying to
create it if it existed already.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2019-01-29 13:04:19 +01:00
Christoph Wurst 8fcb9fcfdc
Merge pull request #13855 from tomasz-grobelny/faster_file_upload
Throttle getstoragestats.php calls and allow simultaneous uploads
2019-01-29 08:51:38 +01:00
Tomasz Grobelny f99ce0d546 Throttle getstoragestats.php calls and allow simultaneous uploads
Signed-off-by: Tomasz Grobelny <tomasz@grobelny.net>
2019-01-27 22:59:14 +01:00
imsolost 5742ec79ab changed case on variable to match initial case
Signed-off-by: imsolost <imsolost@gmail.com>
2019-01-25 11:16:37 -08:00
imsolost 3e37620cc2 fixed replacement functions to catch all instances of parenthesis
Signed-off-by: imsolost <imsolost@gmail.com>
2019-01-25 11:16:37 -08:00
Tomasz Grobelny 907deab278 Add more accessible method of selecting file ranges
Signed-off-by: Tomasz Grobelny <tomasz@grobelny.net>
2019-01-24 22:04:52 +01:00
Tigran Mkrtchyan 0573413134 apps: file-upload: fix typo in comments
Signed-off-by: Tigran Mkrtchyan <tigran.mkrtchyan@desy.de>
2019-01-21 19:11:13 +01:00
Florian Schunk 332b4aee9d fix testing for undefined
Signed-off-by: Florian Schunk <florian.schunk@rwth-aachen.de>
2019-01-16 22:54:16 +01:00
Florian Schunk ecb936495f also remember folder for multiselect actions
Signed-off-by: Florian Schunk <florian.schunk@rwth-aachen.de>
2019-01-16 22:54:16 +01:00
Florian Schunk 37270fc525 remember last copied to directory
Signed-off-by: Florian Schunk <florian.schunk@rwth-aachen.de>
2019-01-16 22:54:16 +01:00
Florian Schunk 528964e0b7 copy Dialog starts in current directory
Signed-off-by: Florian Schunk <florian.schunk@rwth-aachen.de>
2019-01-16 22:54:16 +01:00
Roeland Jago Douma bcea6c3697
Merge pull request #13212 from nextcloud/bugfix/noid/ie11-files-loading
Files list not rendering if user has favorites navigation unfolded
2018-12-21 14:20:41 +01:00
Julius Härtl 6bcc77a7c6
Replace ChildNode.before with custom before helper
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2018-12-21 12:03:34 +01:00
Roeland Jago Douma 00446ffb9e
Only check whatsnew once per hour
Store the last check in the session storage. (Which gets cleared on
logout). And only check once an hour.
Saves a request to the server on most requests when browsing.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-12-20 20:09:05 +01:00
Roeland Jago Douma 9204ce7d3d
Do not show general warning on free space error
Fixes #12588
Probably needs more fixing for the other cases. But this is the quick
fix I could come up with for now.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-12-05 22:40:07 +01:00
Tomasz Grobelny 04d326f95f Fix unit tests
Signed-off-by: Tomasz Grobelny <tomasz@grobelny.net>
2018-11-24 23:57:13 +01:00
Tomasz Grobelny c83c26877b Use reportOperationProgress for removing files
Fix copying files

Signed-off-by: Tomasz Grobelny <tomasz@grobelny.net>
2018-11-24 23:56:56 +01:00
Tomasz Grobelny 8e240d1197 Properly handle errors (including 500)
Signed-off-by: Tomasz Grobelny <tomasz@grobelny.net>
2018-11-24 23:55:42 +01:00
Tomasz Grobelny 1f6f276fa0 Add progress reporting to move and copy operations
Signed-off-by: Tomasz Grobelny <tomasz@grobelny.net>
2018-11-24 23:55:33 +01:00
Tomasz Grobelny 7bafa54ae1 Fix progress bar label
Signed-off-by: Tomasz Grobelny <tomasz@grobelny.net>
2018-11-24 23:55:25 +01:00
Tomasz Grobelny e99340dc4d Move progress bar to separate component
Signed-off-by: Tomasz Grobelny <tomasz@grobelny.net>
2018-11-24 23:55:17 +01:00
Tomasz Grobelny 296e69fe04 Restructuring code in file-upload.js
Signed-off-by: Tomasz Grobelny <tomasz@grobelny.net>
2018-11-24 23:55:01 +01:00
Morris Jobke 68ad2ae118
Merge pull request #10825 from greenido/fixing-issue-9931
Copy a file to the same directory
2018-11-22 17:37:04 +01:00
Julius Härtl a90b4bcc32
Do not switch to root folder if filelist is already shown
Navigating to the root folder is already handled by
OCA.Files.Navigation.setActiveItem in case the view doesn't change.

Signed-off-by: Julius Härtl <jus@bitgrid.net>
2018-11-22 14:03:23 +01:00
Daniel Calviño Sánchez e39db808fb Fix rendering of the sidebar in Files app
When a view is rendered it should not be concerned with where it is
going to be placed in the document; in general this should be a
responsibility of the object using the view.

Moreover, when the details view is rendered it should simply prepare a
skeleton that includes the root elements provided by the plugins; those
elements will be updated by the plugins as needed when a file or a tab
is selected.

Finally, the details view should not be explicitly rendered. The
rendering removes the previous elements, but that is needed only when
the details view is in a dirty state, that is, when new plugins were
added since the last time that it was rendered. However, that dirty
state is internally handled, and the view is automatically rendered
again if needed when a file info is set.

Due to all that the details view is no longer explicitly rendered when
updating it with a different file. Also, as each file list has its own
details view, and each details view has its own element, but there can
be only one details view/sidebar element in the document, when the file
list updates the details view it also replaces the current one in the
document with its own details view if needed (that is, if it is not the
current one already).

Besides that, when the element of a details view is replaced with the
element of a different details view the old one should be detached from
the document, but never removed. Otherwise the event handlers would not
work when that element is attached again later (when changing to a
different section in the Files app and then going back to the previous
one).

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-11-22 05:58:25 +01:00
Julius Härtl 78056a3bef
Fix whitespace and file action cleanup
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2018-11-20 19:46:49 +01:00
Julius Härtl fb8aa31dbf
Allow to hide download option for folders shared by link
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2018-11-20 19:46:35 +01:00
Morris Jobke 802e4a79d1
JSUnit tests are not compatible with let/const yet
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2018-11-19 15:22:10 +01:00
Morris Jobke 85a491a6fb
Translate name for "(copy)"
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2018-11-19 13:57:27 +01:00