Cloud personnel
Find a file
Daniel Calviño Sánchez 036bfa08dd 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 14:49:26 +00:00
.github Move mention-bot notifications to code owners 2017-07-07 08:44:01 +02:00
.idea Add newline that was removed by 15be763d46 2014-12-10 09:38:32 +01:00
.tx Remove old perl script to update l10n files 2018-02-08 18:22:04 +01:00
3rdparty@5486fdcff8 [3rdparty] Bump pear/archive_tar to 1.4.5 2019-01-15 14:24:09 +01:00
apps Fix dropping a folder on a folder row 2019-01-29 14:49:26 +00:00
build Fix transfering ownership of a share to user with same id as receiver 2018-08-07 09:09:01 +02:00
config Fix comment style in config sample 2018-08-20 14:08:00 +02:00
contribute Add Developer Certificate of Origin (DCO) 2016-09-22 09:08:21 +02:00
core [tx-robot] updated from transifex 2019-01-26 01:12:43 +00:00
lib [tx-robot] updated from transifex 2019-01-26 01:12:43 +00:00
ocs Remove "DEBUG OUTPUT:" from failing OCS API requests 2018-01-09 18:34:25 +01:00
ocs-provider Allow to call the files even when you are in another instance atm 2016-10-06 12:15:13 +02:00
resources Update the CRL 2019-01-04 17:26:30 +01:00
settings [tx-robot] updated from transifex 2019-01-26 01:12:43 +00:00
tests cleanup shared lock if changing to exclusive lock failed 2019-01-22 15:14:34 +00:00
themes Logo claim is not used anymore 2017-08-02 23:08:45 +02:00
.bowerrc ability to add bower resources 2014-11-03 20:54:40 +01:00
.codecov.yml Disable codecov status and comment 2018-07-09 15:30:53 +02:00
.drone.yml use a dummy database name for the default postgres database name 2018-10-04 16:37:48 +02:00
.gitignore Remove old perl script to update l10n files 2018-02-08 18:22:04 +01:00
.gitmodules targets 3rdparty submodule from Nc instead of oC 2016-06-28 18:39:51 +02:00
.htaccess Handle SSL certificate verifications for others than Let's Encrypt 2018-02-05 15:37:23 +01:00
.jshintrc Reduce JSHint errors/warnings 2017-11-06 09:57:59 +01:00
.lgtm Get rid of LGTM self approvals 2016-06-27 23:18:01 +02:00
.mailmap Run updated license header updater 2017-11-07 13:47:42 +01:00
.scrutinizer.yml Exclude phan from scrutinizer 2017-07-19 10:28:11 +02:00
.tag Add .tag file to make tar balls tracable 2014-06-14 17:40:32 +02:00
.user.ini Make sure memory limit is > post size and upload filesize 2016-09-13 16:50:36 +02:00
AUTHORS Run updated license header updater 2017-11-07 13:47:42 +01:00
autotest-checkers.sh Add test to check if new files are added to the root of the repository 2017-07-12 11:52:42 +02:00
autotest-external.sh Set exit code to 1 if integration test is failing 2016-12-20 23:40:49 +01:00
autotest-hhvm.sh Combine autotest-hhvm.sh with autotest.sh 2015-05-04 16:37:23 +02:00
autotest-js.sh Fix sass compile tests 2017-03-20 14:12:45 +01:00
autotest.sh run postgresql 10 tests in drone 2017-11-22 17:57:17 +01:00
bower.json Bump strengthify to 0.5.3 2018-01-10 21:48:24 +01:00
buildjsdocs.sh Added OC.Files.Client Webdav-based files client 2015-11-22 16:05:49 +01:00
CHANGELOG.md Add link to real changelog 2017-07-19 10:39:55 +02:00
CODE_OF_CONDUCT.md Create CODE_OF_CONDUCT.md 2018-01-10 09:32:58 +01:00
composer.json Install phan manually 2017-07-19 10:28:12 +02:00
console.php Nextcloud 13 is not compatible with newer than php 7.2 2017-12-12 10:55:09 +01:00
CONTRIBUTING.md fix dev manual link 2017-01-10 11:02:05 +01:00
COPYING Rename COPYING-AGPL to COPYING 2016-09-13 22:51:02 +02:00
COPYING-README Rename COPYING-AGPL to COPYING 2016-09-13 22:51:02 +02:00
cron.php Log full exception in cron instead of only the message 2018-06-21 23:17:45 +02:00
index.html
index.php Add PHP missing message to index.php 2018-05-26 13:29:42 +02:00
issue_template.md Note about enterprise users 2018-01-02 14:44:19 +01:00
occ Use a more universal shebang 2014-11-19 17:34:03 +01:00
public.php Nextcloud 13 is not compatible with newer than php 7.2 2017-12-12 10:55:09 +01:00
README.md Update README.md 2017-11-29 09:09:11 +01:00
remote.php Nextcloud 13 is not compatible with newer than php 7.2 2017-12-12 10:55:09 +01:00
robots.txt
status.php Nextcloud 13 is not compatible with newer than php 7.2 2017-12-12 10:55:09 +01:00
version.php 13.0.10 2019-01-11 14:30:55 +01:00

Nextcloud Server

Scrutinizer Code Quality codecov CII Best Practices irc irc

A safe home for all your data.

Why is this so awesome?

  • 📁 Access your Data You can store your files, contacts, calendars and more on a server of your choosing.
  • 📦 Sync your Data You keep your files, contacts, calendars and more synchronized amongst your devices.
  • 🔄 Share your Data …by giving others access to the stuff you want them to see or to collaborate with.
  • 🚀 Expandable with dozens of Apps ...like Calendar, Contacts, Mail and all those you can discover in our App Store
  • 🔒 Security with our encryption mechanisms, HackerOne bounty program and two-factor authentication.

You want to learn more about how you can use Nextcloud to access, share and protect your files, calendars, contacts, communication & more at home and at your Enterprise? Learn about all our Features.

Get your Nextcloud

Enterprise? Public Sector or Education user? You may want to have a look into the Enterprise Support Subscription provided by the Nextcloud GmbH

Get in touch

…learn more about how to get support for Nextcloud here!

Contribution Guidelines

All contributions to this repository from June, 16 2016 on are considered to be licensed under the AGPLv3 or any later version.

Nextcloud doesn't require a CLA (Contributor License Agreement). The copyright belongs to all the individual contributors. Therefore we recommend that every contributor adds following line to the header of a file, if they changed it substantially:

@copyright Copyright (c) <year>, <your name> (<your email address>)

Please read the Code of Conduct. This document offers some guidance to ensure Nextcloud participants can cooperate effectively in a positive and inspiring atmosphere, and to explain how together we can strengthen and support each other.

Please review the guidelines for contributing to this repository.

More information how to contribute: https://nextcloud.com/contribute/

Running master checkouts

Third-party components are handled as git submodules which have to be initialized first. So aside from the regular git checkout invoking git submodule update --init or a similar command is needed, for details see Git documentation.

Several apps that are included by default in regular releases such as firstrunwizard or gallery are missing in master and have to be installed manually.

That aside Git checkouts can be handled the same as release archives.

Note they should never be used on production systems.