Commit graph

43036 commits

Author SHA1 Message Date
Daniel Calviño Sánchez
a2c52cd6a5 Extract code to restore the UI after confirming a share
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-03-21 04:35:23 +01:00
Daniel Calviño Sánchez
9a0fbe307d Discard cached suggestions when adding a share
The suggestions depend on the results returned by the server, but also
on the sharees already shared with. Due to that adding a share changes
the suggestions, so now the cached suggestions are discarded when a
share is added.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-03-21 04:34:14 +01:00
Daniel Calviño Sánchez
6eb5cc5412 Reuse last suggestions if the same parameters are used
When a share is confirmed the suggestions are got to check if there is
an exact match. Usually the suggestions were already got with the same
parameters in order to fill the autocomplete dropdown, so to avoid a
superfluous request now the last suggestions are reused when got again,
although only if the same parameters as the last time are used.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-03-21 04:31:08 +01:00
Daniel Calviño Sánchez
10a4f8e45e Confirm a share also by pressing enter on the input field
Besides confirming a share by clicking on the confirm button now it is
possible to do it by pressing enter on the input field.

Clicking on the confirm button implicitly hides the autocomplete
dropdown. On the other hand, pressing enter on the input field does not,
so the autocompletion must be disabled and closed when the confirmation
begins and then enabled again once it finishes. Otherwise the
autocomplete dropdown would be visible and it would be possible to
interact with it while the share is being confirmed.

The order in which the input field and the autompletion are disabled is
important. Internally, the autocompletion sets a timeout when the input
field is modified that requests the suggestions to the server and then
shows them in the dropdown. That timeout is not cancelled when the
autocompletion is disabled, but when the input field loses its focus and
the autocompletion is not disabled. Therefore, the input field has to be
disabled (which causes it to lose the focus) before the autocompletion
is disabled. Otherwise it could happen that while a share is being
confirmed the timeout ends, so an autocompletion request is sent and
then, once the share is successfully confirmed and thus the
autocompletion is enabled again, the request is received and the
autocomplete dropdown is shown with the old suggestions. Strange, but
possible nevertheless ;-)

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-03-20 19:09:05 +01:00
Daniel Calviño Sánchez
9371b61c4d Add a share when clicking on the confirm button
Clicking on the confirm button now adds a share, but only if there is
just a single exact match. If there are no exact matches or there is
more than one exact match no share is added, and the autocomplete
dropdown is shown again with all the suggestions.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-03-20 19:09:05 +01:00
Daniel Calviño Sánchez
5e2a8cca1b Return also exact matches besides all suggestions
"_getSuggestions" returned all the suggestions from the server, which
are composed by exact matches and partial matches. Now the exact matches
are also returned on their own parameter. This will be used by the
button to confirm a share.

Note that until now the order of the suggestions was "exact users,
partial users, exact groups, partial groups, exact..."; this commit also
changes that order to become "exact users, exact groups, exact...,
partial users, partial groups, partial...". This is not a problem, as
the suggestions were used in the autocomplete dropdown, and this new
order is arguably better than the old one, as all exact matches appear
now at the beginning.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-03-20 19:09:04 +01:00
Daniel Calviño Sánchez
89b0e34d9b Extract code to filter suggestions to its own function
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-03-20 19:09:04 +01:00
Daniel Calviño Sánchez
1c440519c2 Show an error when getting the suggestions succeeds with failure content
Instead of silently failing now an error is shown to the user when the
ajax call to get the suggestions succeeds yet it returns failure content
(for example, if an "OCSBadRequestException" was thrown in the server).

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-03-20 19:09:04 +01:00
Daniel Calviño Sánchez
ed1452d7a0 Use "showTemporary" instead of explicitly hiding the notification
"OC.Notification.hide" expects the notification to be hidden to be
passed as an argument. As it was being used to show a temporary
notification the combination of "OC.Notification.show" and
"OC.Notification.hide" was replaced by a single call to
"OC.Notification.showTemporary".

The timeout could have been specified in the options of the call, but it
was left to the default value (7 seconds) for consistency with other
notifications.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-03-20 19:09:04 +01:00
Daniel Calviño Sánchez
fcef15af80 Move stub setup outside the test method
Stubs should be restored outside the test method in which they are used
to ensure that they are properly restored no matter the result of the
test (for example, if an exception is thrown).

Besides that, this will make possible to reuse the stub in other sibling
tests without having to explicitly setup it in them.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-03-20 19:09:04 +01:00
Daniel Calviño Sánchez
d606219576 Extract code to get suggestions to its own method
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-03-20 19:09:04 +01:00
Daniel Calviño Sánchez
3980364b6d Add autocompletion tests for each type of share
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-03-20 19:09:04 +01:00
Daniel Calviño Sánchez
8af9c553e6 Add tests for exact search results already shared with
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-03-20 19:09:04 +01:00
Daniel Calviño Sánchez
375eab9df3 Add tests for emails and circles already shared with
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-03-20 19:09:04 +01:00
Daniel Calviño Sánchez
6fef01c481 Adjust search term to test
As the server response is faked the search term is ignored in the tests.
However, it is clearer to use a search term that would make the server
return what the faked response contains.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-03-20 19:09:03 +01:00
Jan-Christoph Borchardt
ce7775acd0 Replace information icon with confirmation button in share input
The confirmation button right now is just an icon; its behaviour will be
added in the following commits.

Signed-off-by: Jan-Christoph Borchardt <hey@jancborchardt.net>
2018-03-20 19:09:03 +01:00
Morris Jobke
29c551c88f
Merge pull request #8847 from nextcloud/ocs-api-userdetails
Add userdetails to ocs api
2018-03-20 18:12:25 +01:00
Joas Schilling
64feb3f391
Merge pull request #8861 from nextcloud/rakekniven-patch-1
Update ThemingController.php
2018-03-20 13:45:20 +01:00
Roeland Jago Douma
99abe3bc8e
Merge pull request #8864 from nextcloud/ocs-allow-empty-email-displayname
Allow empty emails provisioning api
2018-03-20 09:44:38 +01:00
Roeland Jago Douma
16ae91330c
Merge pull request #8887 from nextcloud/fix-appmenu-min-width
Add min width of two icons to the app menu
2018-03-20 08:03:52 +01:00
Nextcloud bot
615258ba26
[tx-robot] updated from transifex 2018-03-20 01:11:33 +00:00
blizzz
7ae42f1f5d
Merge pull request #8822 from nextcloud/fix/8641/undefined-index
the FN is optional, carrying the displayname if present
2018-03-19 17:57:12 +01:00
Julius Härtl
1699b119dd
Add min width of two icons to the app menu
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2018-03-19 17:12:59 +01:00
John Molakvoæ (skjnldsv)
24659342f5
fixup! Check if groups is array, return empty do not throw
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2018-03-19 15:12:32 +01:00
rakekniven
789221a0fc
Update ThemingControllerTest.php
Adjusted test
2018-03-19 15:07:49 +01:00
rakekniven
d88db9b496
Update ThemingController.php
Changed file according to discussion on PR.
2018-03-19 15:00:27 +01:00
Roeland Jago Douma
734cddfa97
Merge pull request #8880 from nextcloud/delete_unused_download
Remove unused download.php
2018-03-19 14:18:51 +01:00
Roeland Jago Douma
1c1608cddb
Merge pull request #8871 from nextcloud/3rdparty-bump-openstack-3-0-5
[3rdparty] Bump php-opencloud/openstack to 3.0.5
2018-03-19 14:18:27 +01:00
Roeland Jago Douma
ce0c896d8f
Merge pull request #8881 from nextcloud/setUserValue_opt
Store setUserValue as string in cache
2018-03-19 14:17:59 +01:00
Roeland Jago Douma
431750828e
Store setUserValue as string in cache
We cache the values we set in the setUserValue function.
However since the values are strings in the database we check if a value
is equal with string comparison

Now if the function was called with a $value of int or float. It would
be stored in the DB (and thus converted to string) and in the cache (not
converted thus as int/float).

Now if another call comes in that sets it to the same value (I'm looking
at you LDAP!). The check would fail since we would be comparing
int/float to string which fails by definition.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-03-19 12:57:48 +01:00
Roeland Jago Douma
9834f33d56
Merge pull request #8878 from nextcloud/remove_tmpfile
Remove deprecated tmpFile/tmpFolder
2018-03-19 12:29:08 +01:00
Roeland Jago Douma
0929e048f8
Merge pull request #8879 from nextcloud/dep_json
Remove unused deprecated functions from OCP\JSON
2018-03-19 12:28:23 +01:00
Roeland Jago Douma
1d6a2a7019
Remove unused download.php
There were two routes apps/files/ajax/download.php but apparently also
apps/files/download.php I could not find any use of it.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-03-19 11:45:48 +01:00
Roeland Jago Douma
68871caf3c
Remove unused private function
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-03-19 11:32:10 +01:00
Roeland Jago Douma
d984c8d633
Remove unused deprecated functions from OCP\JSON
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-03-19 11:30:35 +01:00
Roeland Jago Douma
05203e3fc0
Merge pull request #8877 from nextcloud/deprecated_bgj_delete
Remove old deprecated function from the BackgroundJob
2018-03-19 11:25:45 +01:00
Roeland Jago Douma
17bfa1c74e
Merge pull request #8815 from nextcloud/channel-description
Provide a description of the update channels inline
2018-03-19 11:25:15 +01:00
Roeland Jago Douma
1088068c60
Remove \OCP\Files::tmpFolder
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-03-19 10:54:39 +01:00
Roeland Jago Douma
47a3008141
Remove \OCP\Files::tmpFile
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-03-19 10:52:35 +01:00
Roeland Jago Douma
d304f4bebb
Remove old deprecated function from the BackgroundJob
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-03-19 10:47:31 +01:00
Roeland Jago Douma
ba611594b7
[3rdparty] Bump php-opencloud/openstack to 3.0.5
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-03-19 10:28:33 +01:00
Morris Jobke
63bc633d89
Merge pull request #8857 from nextcloud/swift-verify-cached-token
verify cached swift token
2018-03-19 10:10:04 +01:00
Nextcloud bot
2fab6b2620
[tx-robot] updated from transifex 2018-03-19 01:11:34 +00:00
Nextcloud bot
d6bfc98df1
[tx-robot] updated from transifex 2018-03-18 01:11:46 +00:00
John Molakvoæ (skjnldsv)
ccd57ce1b1
Allow empty emails provisionning api
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2018-03-17 12:18:22 +01:00
Nextcloud bot
3cac7911d5
[tx-robot] updated from transifex 2018-03-17 01:11:30 +00:00
Morris Jobke
9aced256c2
Merge pull request #8853 from nextcloud/remove-resolve-reshare
Remove unused resolveReshare of old sharing code
2018-03-16 20:23:01 +01:00
rakekniven
b2ceb29484
Update ThemingController.php
Changed wording according to discussion at Transifex. See https://www.transifex.com/nextcloud/nextcloud/translate/#de/$/121491259?issue=yes
Aligned ending of error messages
2018-03-16 18:45:20 +01:00
blizzz
e56759917b
Merge pull request #8843 from nextcloud/set-share-with-field-to-the-id-of-the-circle
Set "share with" field to the ID of the circle
2018-03-16 16:42:31 +01:00
John Molakvoæ (skjnldsv)
2493e9426d
Check if groups is array, return empty do not throw
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2018-03-16 15:32:36 +01:00