Commit Graph

295 Commits

Author SHA1 Message Date
Lukas Reschke 5b65591d84 Do not allow directory traversal using "../"
We should not allow directory traversals using "../" here.

To test access the following URL once with and then without this patch:

http://localhost/server/index.php/apps/files/?dir=../../This+Should+Not+Be+Here
2016-07-01 13:36:05 +02:00
Vincent Petry 4acb06923d Filelist change dir auto-prepend slash
Prepend a slash to directories in case it was missing since many places
assume that it's there.
2016-07-01 11:10:37 +02:00
Lukas Reschke 6670d37658 Merge remote-tracking branch 'upstream/master' into master-sync-upstream 2016-06-27 18:23:00 +02:00
Vincent Petry b4cf297758 Prerender file list pages to include search results
When filtering the file list, if a result is on an unrendered page,
make sure to call _nextPage() to prerender the pages in order to
display all matching results.
2016-06-24 13:55:14 +02:00
Morris Jobke 51b067d603
Fix failing JS unit tests
* fixes #124
2016-06-16 11:00:58 +02:00
Joas Schilling 68a7aed27b
Adjust test to work with phpunit < 5.2 2016-06-08 09:24:00 +02:00
Joas Schilling 77db6d3dbd
Improve the UX for "not found" perma links 2016-06-07 13:53:16 +02:00
Vincent Chan 3538e90ba1
fixes size of the download spinner 2016-05-30 11:23:54 +02:00
Lukas Reschke aba539703c
Update license headers 2016-05-26 19:57:24 +02:00
Joas Schilling b34bacd071 Move Files app to PSR-4 (#24569)
* Move lib/ of Files app to PSR-4

* Move tests to PSR-4
2016-05-12 12:07:06 +02:00
Vincent Petry ceaac03bb5 Make permalinks work for trashed files (#24537)
Opening a permalink that points to a trashed file will now display the
file within the "Deleted Files" section in the files web UI.
2016-05-11 19:41:36 +02:00
Vincent Petry 254576e1f7
Do not encode slashes in "dir" URL param in files JS 2016-05-06 17:00:22 +02:00
Vincent Petry 112b703df0
Add anchor icon in sidebar to copy permalink 2016-05-06 16:46:59 +02:00
Vincent Petry fdeafef6a0
Auto-add fileid in URL for currently displayed folder 2016-05-06 16:46:59 +02:00
Vincent Petry 093e9dd422
Add route to resolve fileid to files app URL
The following routes will redirect to the files app and display the
matching folder. If the fileid is a file, it will scroll to it.
- http://localhost/owncloud/index.php/f/$fileid
- http://localhost/owncloud/index.php/files/?dir=somedir&fileid=$fileid
2016-05-06 16:46:59 +02:00
Joas Schilling 7bfc617b03
Move activity manager to the namespace 2016-05-02 11:57:24 +02:00
Christoph Wurst 6c5696d3a8
filter hidden files on the web interface
add checkbox to toggle show/hide hidden files

persist show hidden setting

fix settings menu layout

test ApiController::showHiddenFiles

don't show hidden files by default

Store config in Backbone model and inject it into FileList

Filter files only temporarily when rending the file list

Fix file rename validation
2016-04-19 16:08:56 +02:00
Christoph Wurst 576f7244e6 fix default value, update js/php tests 2016-04-13 14:25:23 +02:00
Vincent Petry 950530b162 Display share status info in favorite list
Returns the shareTypes share status info to the favorites file list.
2016-03-17 15:35:21 +01:00
Vincent Petry 3a36163e91 Fix download spinner to work with CSS styles
A recent change replaced img elements with CSS icons for file actions.
This fix adjusts the logic to work properly with CSS icons instead of
images.
2016-03-04 10:48:08 +01:00
Lukas Reschke 933f60e314 Update author information
Probably nice for the people that contributed to 9.0 to see themselves in the AUTHORS file :)
2016-03-01 17:25:15 +01:00
Thomas Müller e9237dd83c Merge pull request #22671 from owncloud/issue-22670
Move the tag filter at the end for now
2016-02-26 10:48:55 +01:00
Joas Schilling 4549b82553 Move the tag filter at the end for now 2016-02-26 10:15:07 +01:00
Vincent Petry 867a8aca12 Fix favorite icon unit test for icon image 2016-02-25 23:01:09 +01:00
Roeland Jago Douma 92cff0984d Make file actions use icon CSS classes
This makes theming of file actions possible
2016-02-25 22:49:52 +01:00
Vincent Petry 27544144ce Fix unit tests affected by side effects
The notification tests were not restoring the clock properly, but
indirectly helped other tests pass.

Since now we're restoring the clock properly, the other tests were fixed
to still work.
2016-02-22 17:25:32 +01:00
Thomas Müller 7af7d18cfa Merge pull request #16783 from owncloud/handle-redirects-global
Adding global error handler for ajax calls which run into redirection…
2016-02-17 14:49:04 +01:00
Vincent Petry d565290d16 Close file detail sidebar when selecting/unselecting files
Interacting with the checkboxes, also "Select all" will automatically
close the sidebar now.
2016-02-15 14:58:44 +01:00
Vincent Petry b8b77709c0 Add handler for global ajax errors 2016-02-15 12:48:47 +01:00
Vincent Petry 847a2426b8 Fix unit tests for system tag filter section 2016-02-09 11:22:05 +01:00
Vincent Petry ae367c7e97 Fix elementToFile to also return path when defined
Fixes issue when opening the share dialog for a file inside the favorite
list, and the file is from a subfolder
2016-02-08 22:33:39 +01:00
Arthur Schiwon d537cae063 cleanup jobs for comments and comment read marks 2016-02-05 15:36:21 +01:00
Vincent Petry f0caf41232 Cleanup job for system and user tag orphaned when file was deleted
Whenever a file was deleted (also from trash), the tag mapping is
pointing at a fileid that doesn't exist any more.

This cleanup job will delete such orphaned mapping entries.
2016-01-29 11:51:47 +01:00
Thomas Müller 22010517f5 Merge pull request #21752 from owncloud/files-delete-fix
Only check selection for delete permissions, not parent folder
2016-01-26 16:13:10 +01:00
Morris Jobke 6e096936e5 update JS humanFileSize to use KB instead of kB 2016-01-19 10:51:57 +01:00
Robin McCorkell df7db3685e Remove faulty directory permissions test 2016-01-15 20:46:39 +00:00
Thomas Müller 682821c71e Happy new year! 2016-01-12 15:02:18 +01:00
Roeland Jago Douma 665d7b25b0 Add unit test for file update 2016-01-09 22:47:26 +01:00
Vincent Petry d27826bac0 Correctly render uploadtext indicator only on folders 2015-12-18 18:09:46 +01:00
Roeland Jago Douma 1f715289bf Removed deprecated function OC_User::deleteUser
Replaced with proper OCP calls
2015-12-17 16:18:40 +01:00
Roeland Jago Douma 835911bce5 Removed deprecated private OC_User::createUser
All function calls are replaced with the recommended (which was already
the body of the function).
2015-12-17 16:18:40 +01:00
Vincent Petry 4d9e12b8bc Fix mount type root detection
Since Webdav doesn't contain that information, we need to rely on the
parent folder's mount type to find out whether a child item is a
shared/external root or not.

Fixed the mount type detection logic and added unit test.

Also added a fix that ignores detection if no parent folder exists (ex:
shared file list, favorites, etc)
2015-12-14 10:44:47 +01:00
Vincent Petry baa5a69c55 Bring back file delete action text to be based on context
For received shares, the delete action becomes "Unshare" and for
personal mounts it becomes "Disconnect storage".

This also makes it possible from now on to pass a function to a file
action's "displayName" attribute.
2015-12-11 15:14:30 +01:00
Scrutinizer Auto-Fixer ffc49a24f0 Scrutinizer Auto-Fixes
This commit consists of patches automatically generated for this project on https://scrutinizer-ci.com
2015-12-10 16:43:37 +01:00
Vincent Petry e241d26316 Compute share permissions in the view
The share permissions are now computed in the View/FileInfo instead of
storing them directly/permanently on the storage
2015-12-08 13:04:22 +01:00
Thomas Müller 2ceae43989 Merge pull request #20545 from owncloud/scan-storage-in-background-job
Move files/ajax/scan.php to background job
2015-12-03 16:53:46 +01:00
Lukas Reschke 8aaab0dbad Allow framing 'self'
This is required by the pdf viewer, since the files app on master uses the AppFramework it had applied the more strict defaults which made it not work on master.
2015-12-02 17:30:40 +01:00
Joas Schilling 23046ca5b7 Inject the database connection 2015-11-30 17:14:47 +01:00
Joas Schilling e9094b8a41 Only require the interface 2015-11-30 17:14:47 +01:00
Joas Schilling 6e0596432c Add a unit test that executes the query 2015-11-30 17:14:47 +01:00
Joas Schilling 623d34972d Oracle can not return statements but only values
So evaluate the condition directly and return 1 or 0
2015-11-30 17:12:48 +01:00
Thomas Müller 1480964768 Adding more test suites to group DB 2015-11-30 10:55:05 +01:00
Thomas Müller 3bb6dcea64 Apply DB group annotation ... 2015-11-30 10:55:05 +01:00
Lukas Reschke 391bc49dab Move files/ajax/scan.php to background job
The background job will now be executed in chunks of 500 users all 10 minutes.
2015-11-28 13:06:53 +01:00
Vincent Petry fa2be0750c Make files app use Webdav for most operations 2015-11-22 16:05:50 +01:00
Vincent Petry 8fc0e05564 Remove "Text file" entry in the "+" menu
The text editor app will register this instead.

Also made "fileList" a non-private attribute to make it possible for
plugins to access the attached file list object.
2015-11-19 15:36:21 +01:00
Lukas Reschke daa388ce8d Move index.php from files to AppFramework
1. Allows it to use the more secure CSP rules of the AppFramework.
2. Adds some unit tests.
2015-11-16 21:10:11 +01:00
Vincent Petry 80cf4e84e3 Fix file action download spinner 2015-10-30 14:58:53 +01:00
Vincent Petry 9c9158e6b7 Fix icon update to be more consistent
Makes the details bar show the same icon as in the list.
2015-10-29 12:59:51 +01:00
Lukas Reschke 8f09d5b67c Update license headers 2015-10-26 14:04:01 +01:00
Vincent Petry abd0ba1f25 Fix file upload, conflict dialog, also in public link
- Use "FileList" instead of "OCA.Files.App.fileList" that doesn't exist in public
link page.
- Fix public link upload by properly adding the form data using a new
  utility function "addFormData". That one is needed because IE8 upload
  and regular upload use a different format...
2015-10-21 12:18:06 +02:00
Thomas Müller 899165113c Merge pull request #19742 from owncloud/shareinfo_performance
Do not calculate non essential info
2015-10-20 14:25:36 +02:00
Robin Appelman 416da0dfe9 fix delete orphan shares test with object home storage 2015-10-16 21:41:51 +02:00
Vincent Petry 204b3ca189 Do not register sidebar panels when no sidebar 2015-10-15 16:30:50 +02:00
Roeland Jago Douma 5e9ca79788 Do not calculate non essential info
There is no need to calculate a human readable date on the server side.
We supply the mtime and a client can easily convert that himself if
needed. This is already done most of the time since the date is often
not in the exact right format.

There is also no need to attach icon info. We have that available in
javascript. And else the client should get the right icon based on the
mimetype for its platform.

* Updated tests
2015-10-13 14:56:55 +02:00
Morris Jobke b945d71384 update licence headers via script 2015-10-05 21:15:52 +02:00
Roeland Jago Douma 6bf6ff9564 If an inline files action provides an alt text show it
* Added unit tests for icon display
* Added unit tests for icon alt text display
2015-10-03 15:47:20 +02:00
Morris Jobke 4b3a5a257f Fix moment.js "a few seconds ago" with "seconds ago"
* fixes #18627
2015-10-02 10:51:51 +02:00
Thomas Müller 750f19340f Merge pull request #19310 from owncloud/hide-sort-indicator
hide sort indicator when in multiselect mode, ref #19056
2015-09-30 11:07:45 +02:00
Thomas Müller 733673b39d Merge pull request #19365 from owncloud/files-detailsbar-interaction
Fix sidebar interaction
2015-09-29 14:44:28 +02:00
Vincent Petry d52361b09b Disable sorting when multiselect is enabled in file list 2015-09-29 13:24:33 +02:00
Vincent Petry f9acf4627e Fix sidebar interaction
- Clicking a file row or selecting it will open the sidebar.
- When sidebar is open, its contents update with the last selection.
- Dragging doesn't open the sidebar but does update its contents if it was
open already.
- Switching folders closes the sidebar.
- Close sidebar when highlighted file got deleted/removed from list
2015-09-28 15:23:37 +02:00
Vincent Petry a8fb0038e9 Hide sidebar tab headers conditionally
Added canDisplay() in DetailsTabView that should return false if the tab
header of this tab must be hidden
2015-09-28 14:57:44 +02:00
Thomas Müller 72024ad201 Merge pull request #19404 from owncloud/files-sidebar-sorttabs
Fix tabs order in files sidebar
2015-09-28 12:55:38 +02:00
Vincent Petry 5e4a52d3c2 Fix tabs order in files sidebar 2015-09-28 12:30:12 +02:00
Vincent Petry f35b6833ff Fix order of actions in the files actions menu 2015-09-28 11:19:49 +02:00
Jan-Christoph Borchardt 004de1425e Merge pull request #18630 from owncloud/files-combineuploadbutton
Combine upload action into the "New" menu
2015-09-07 14:03:57 +02:00
Vincent Petry 310d797284 Add versions tab to files sidebar
- move versions to a tab in the files sidebar
- added mechanism to auto-update the row in the FileList whenever values
  are set to the FileInfoModel given to the sidebar
- updated tags/favorite action to make use of that new mechanism
2015-09-03 16:47:24 +02:00
Vincent Petry 73c61941e2 Tags in FileInfo map must be an array
Fixes FileList.elementToFile to make an array for the tags instead of
keeping the original joined string
2015-09-03 13:01:14 +02:00
Vincent Petry 4ba2333507 Added unit tests for "new" file menu and small fixes
- added unit tests for NewFileMenu
- use generateUrl for FileList.createFile and FileList.createDirectory
- added unit tests for FileList.createFile and FileList.createDirectory
2015-09-03 12:17:35 +02:00
Vincent Petry 3ea9f97c36 Fix sidebar thumbnail loading JS unit tests 2015-09-03 08:24:50 +02:00
Raghu Nayyar c6053daf43 Fixes failing tests 2015-08-31 00:14:07 +02:00
Vincent Petry 5e6fa3c938 Fix trashbin sidebar
Do not display size as it is not available.
Use display name instead of name to remove the ".d123456" suffix.
2015-08-25 11:29:35 +02:00
Vincent Petry 37939fb0e8 Parse mtime from the data attributes 2015-08-24 17:16:20 +02:00
Vincent Petry 31d62c10bf Merge pull request #17501 from tbartenstein/patch-1
Update fileinfo.php
2015-08-24 09:57:27 +02:00
tbartenstein 5e1c2aecc7 fix unit test for folder renaming (icon)
fix unit test to go with #17501 and check for the new icon
2015-08-21 18:54:09 +02:00
Vincent Petry ffff156965 Merge pull request #18310 from hasso/selection-string-fix
Fix the string counting a selected files/dirs
2015-08-18 10:43:17 +02:00
Hasso Tepper 97bc73ad49 Update unit test to reflect the string change 2015-08-17 15:31:44 +03:00
Vincent Petry e2549fa660 Improve right sidebar tabs behavior
Tab heads are not rendered if only one tab.

The tab contents is updated on-demand. This means that if a tab is not
visible it is not rendered at first. If the tab was already rendered
through switching, its model will not get updated until the next time it
becomes visible. This will prevent needless rerendering of invisible tab
contents, especially considering that some tabs might need extra ajax
requests.
2015-08-14 16:51:04 +02:00
Vincent Petry c964eff17b Make file actions work from sidebar
The favorite icon in the sidebar now triggers the file action and also
updates itself according to the model's state when triggered from the
file row.

The thumbnail triggers the default action.

Currently only one FileInfoModel is used for the selection and state
synchronization between views.

FileList reload now auto-closes the sidebar.
2015-08-12 17:30:20 +02:00
Jan-Christoph Borchardt d04a6bce6f Merge pull request #17709 from owncloud/fileactions-dropdown
Move file actions to dropdown
2015-08-11 15:13:59 +02:00
Morris Jobke 0abc637782 Merge pull request #18171 from owncloud/fix-language-of-files-activities-in-emails
Correctly make use of the languageCode argument in the files activity extension
2015-08-11 12:34:58 +02:00
Vincent Petry 984ae8140d Fixed file actions menu to close when reclicking trigger
FileActionsMenu is now a backbone view.
The trigger and highlight handling is now done in the
FileActions.showMenu() method using events.
2015-08-11 11:35:46 +02:00
Joas Schilling 81c3bbad57 Correctly make use of the languageCode argument in the files activity extension 2015-08-10 14:40:33 +02:00
Vincent Petry 9454e9043a Updated unit tests for file actions and actions menu 2015-08-10 14:12:34 +02:00
Vincent Petry 038d29b8de Fix unit test for tipsy->tooltip change 2015-08-10 11:23:39 +02:00
Arthur Schiwon 9c402c761f fix timezone issue with unittest 2015-08-07 01:22:45 +02:00
Vincent Petry bdfab8108e Fix sidebar mtime display unit test 2015-08-07 01:22:45 +02:00
Vincent Petry 781ba420c9 Use own tabs impl in files sidebar
Also change style.
2015-08-07 01:22:44 +02:00
Arthur Schiwon 734c6b0b6f extend MainFileInfoDetailView JS tests 2015-08-07 01:22:43 +02:00