Commit graph

121 commits

Author SHA1 Message Date
Vincent Petry
c02ef69521 Simple Plugin system for Javascript 2014-12-01 16:20:44 +01:00
Vincent Petry
5ca869c324 Merge pull request #9177 from owncloud/jsdocexperiment
Improved JS Docs + added build script for JS Docs
2014-11-13 11:16:08 +01:00
Robin Appelman
307071cfec Keep the share permissions from mountpoints 2014-10-31 14:43:32 +01:00
Robin Appelman
2705588073 Dont' use mountpoint permissions as share permissions for external storages 2014-10-31 14:43:32 +01:00
Vincent Petry
0f3e6cb50a Improved Javascript docs for JSDoc
Added namespaces so that JSDoc can find them.
Fixed a few warnings.
Improved some comments.
2014-10-31 13:43:30 +01:00
Thomas Müller
7159d6118e reduce share action text to the user name only 2014-07-14 21:11:50 +02:00
Vincent Petry
025b71d068 Use fileActionsReady to re-render sharing icons
Whenever file actions are modified, either by registering new actions or
when appending a new page of entries, the sharing app is now notified so
it can correctly refresh the sharing icon status.

Additionally, the core's loadIcons() method is also used to load the
existing shares and also refresh the sharing icons afterwards.
2014-07-01 21:32:04 +02:00
Joas Schilling
5e4ac548bb Use attr() instead of data() so the item ids work as intended
Fix #8841
2014-06-30 14:21:27 +02:00
Lukas Reschke
1066f4ec9a Sanitize name of sharee
Fixes a XSS introduced with 271684dcfe
2014-06-14 20:45:10 +02:00
Bjoern Schiessle
bf5e9357fc don't allow to share single files with delete permissions, user should only be possible to unshare a single file but never to delete it 2014-06-06 09:55:59 +02:00
Vincent Petry
af6a65cbf3 Do not update action icon recipients for file list
Since the files app doesn't have the recipient information on load it
cannot initially render the recipients in the action icons.

For this reason the action icon will not be updated with the recipients
after changing the shares, for consistency.
2014-06-04 10:48:01 +02:00
Vincent Petry
07f1b263c9 Use recipient display names when updating shares in the UI
Since OC.Share didn't have any array containing the list of shares for
the current file, OC.Share.currentShares has been introduced to contain
the full share item structure instead of the reduced one
OC.Share.itemShares.

The event "sharesChanged" is now passing OC.Share.currentShares, which
itself includes the display name to be displayed for the recipients in
the action icon.
2014-06-04 10:37:04 +02:00
Vincent Petry
1297b2b883 Multiple fixes to sharing overview
- scrolling to next page now correctly renders share icons
- reshareing/unsharing a reshare will now still keep "Shared by" label
2014-06-03 11:04:57 +02:00
Vincent Petry
0944565f60 More unit tests and fixes for share 2014-06-02 18:08:56 +02:00
Vincent Petry
d677e3860d Added unit tests for share.js and share icon 2014-06-02 15:59:06 +02:00
Vincent Petry
7961d4a87e Update share action text to display owner/recipients
- when a share was changed, update the share action text
- added file data attribute "data-share-recipients"
2014-06-02 12:12:57 +02:00
Vincent Petry
1d9129eac3 Sharing overview fixes and unit tests
- Fixed renaming and fileActionsReady event
- Added unit tests for shares list
- Fixed public page with defer
- Fixed file actions in sharing overview
- Fixed sharing counterpart list (10 entries max)
- Fixed file path attribute to be used in download action
- Fix sharing list headers
- OC.Share icons now operate on fileList instance
- Fix OC.Share.updateIcon when more than one list in DOM
2014-05-30 10:06:29 +02:00
Vincent Petry
ef59c69dc8 Distinguish legacy file actions from regular file actions
Legacy file actions are registered by legacy apps through
window.FileActions.register(). These actions can only be used by the
main file list ("all files") because legacy apps can only deal with a
single list / container.

New file actions of compatible apps must be registered through
OCA.Files.fileActions. These will be used for other lists like the
sharing overview.

Fixed versions and sharing actions to use OCA.Files.fileActions, which
makes them available in the sharing overview list.
2014-05-30 10:06:29 +02:00
Vincent Petry
60bcdc550e Fixed file actions for sharing views
FileActions can now be clone to be use for separate file list views
without having the side-effect of affecting the main file list view.

Added "Open" action in sharing overview file lists to redirect to the
regular file list when clicking on a folder.
2014-05-30 10:06:29 +02:00
Bjoern Schiessle
36f63ea990 allow resharing of files with only share permissions 2014-05-26 20:32:24 +02:00
Bjoern Schiessle
ff4bb3a9e6 fix share label creation 2014-05-23 16:21:15 +02:00
Bjoern Schiessle
3b279c9056 prevent default action when clicking on the share notification 2014-05-23 11:17:13 +02:00
Bjoern Schiessle
1166d62d9b fileList needs be be declared before the if-statement 2014-05-22 14:31:16 +02:00
Bjoern Schiessle
12338e0ef0 allow admin to disable sharing for specific groups of users 2014-05-22 10:43:44 +02:00
Vincent Petry
7d98bcf9a2 Fixed JS issues in public page
- fixed subdir detection when uploading into subdir
- add class detection before overriding to avoid JS errors
2014-05-20 13:37:58 +02:00
Vincent Petry
6fd084243b Fixed many issues, clean up
- fixed upload and storage statistics
- fixed infinite scroll to use the correct contain for scroll detection
- fixed unit test that sometimes fail for rename case
- controls are now sticky again
- fixed selection overlay to be aligned with the table
- fixed "select all" checkbox that had id conflicts
- fixed public page
- fixed global actions permissions detection
- fix when URL contains an invalid view id
- viewer mode now hides the sidebar (ex: text editor)
- added unit tests for trashbin
- clean up storage info in template (most is retrieved via ajax call now)
2014-05-15 17:51:04 +02:00
Vincent Petry
9d38e3602b Namespacing for FileList, FileActions and trashbin app
- FileList is now an instantiable class
- FileActions is now in namespace
- added App class for trashbin app
- moved trashbin overrides into classes extending FileList
- replaced many static calls with "this." or "self." to make the classes
  reusable/extendable
- new URL parameter "view" to specify which view is shown, for example
  "files" or "trashbin"
- added OC.Util.History utility class in core for handling history
- moved URL handling/routing to OCA.Files.App
- popstate will correctly update the current view and notify the view of
  the URL change so it can update the current dir
- added JS unitt tests for the trashbin app
- fixed public app to work with the new namespaces
2014-05-15 17:51:04 +02:00
Jörn Friedrich Dreyer
9b0f289143 remove obsolete code 2014-04-09 12:09:28 +02:00
Vincent Petry
0be9de5df5 Files, trashbin, public apps use ajax/JSON for the file list
Files app:

- removed file list template, now rendering list from JSON response
- FileList.addFile/addDir is now FileList.add() and takes a JS map with all required
  arguments instead of having a long number of function arguments
- added unit tests for many FileList operations
- fixed newfile.php, newfolder.php and rename.php to return the file's
  full JSON on success
- removed obsolete/unused undo code
- removed download_url / loading options, now using
  Files.getDownloadUrl() for that
- server side now uses Helper::getFileInfo() to prepare file JSON response
- previews are now client-side only

Breadcrumbs are now JS only:

- Added BreadCrumb class to handle breadcrumb rendering and events
- Added unit test for BreadCrumb class
- Moved all relevant JS functions to the BreadCrumb class

Public page now uses ajax to load the file list:

- Added Helper class in sharing app to make it easier to authenticate
  and retrieve the file's real path
- Added ajax/list.php to retrieve the file list
- Fixed FileActions and FileList to work with the ajax list

Core:

- Fixed file picker dialog to use the same list format as files app
2014-04-02 15:33:47 +02:00
Morris Jobke
65843e2459 Improve jQuery element selector
see https://github.com/owncloud/core/pull/7012/files#r9337198
http://24ways.org/2011/your-jquery-now-with-less-suck/
2014-02-20 18:24:43 +01:00
Thomas Müller
d0c8b310b9 uppercase text and fix dialog popup 2014-02-20 18:24:42 +01:00
Thomas Müller
2b84f5e0b9 remove duplicate selectors and declaration 2014-02-20 18:24:42 +01:00
Thomas Müller
271684dcfe update share owner 2014-02-20 18:24:42 +01:00
Vincent Petry
1042733634 Fixed various file name escaping issues in core apps
- Refactored file tr lookup into FileList.findFileEl that uses
  filterAttr to avoid escaping issues in jQuery selectors
- Fixed versions and sharing app to properly escape file names in
  attributes
2014-01-10 15:02:26 +01:00
zombiehugs
519f63ee97 Revert "[fix] Center Share Dropdown & Versions Dropdown"
This reverts commit 1dbbfcf3dc.
2013-12-03 08:23:13 -06:00
zombiehugs
1dbbfcf3dc [fix] Center Share Dropdown & Versions Dropdown
Center Share Dropdown & Versions Dropdown
2013-12-03 08:14:06 -06:00
Thomas Müller
1317b7c03d pass the name of the item source from the browser to the server - no need to get the data via complicated db queries 2013-10-23 18:39:37 +02:00
Vincent Petry
467f864db4 Fixed sharing status update for new/uploaded files
Creating new files, folders or uploading files now have their sharing
icon updated accordingly.

For this, the global share status list that is cached in
OC.Share.statuses is reused for new files.

Performance should improve as the sharing list is now only loaded once
per navigation session.

In OC.Share, split loadIcons into loadIcons + updateIcons.

Fixes #4977
2013-10-17 12:55:10 +02:00
Vincent Petry
1304b511e9 Ajax calls for "files" and "files_trashbin" apps
Frontend:
- The files app list now uses ajax calls to refresh the list.
- Added support the browser back button (history API).
- Added mask + spinner while loading file list

Backend:
- Added utility function in core JS for parsing query strings.
- Moved file list + breadcrumb template data code to helper
  functions
- Fixed some file paths in trashbin app to be similar to the files app
2013-09-13 19:59:14 +02:00
kondou
9e8a6b704d Add _many_ newlines at the end of files 2013-08-18 11:06:59 +02:00
Jörn Friedrich Dreyer
ff67f115d4 fix #2711 using a custom event, also use css selectors over filterAttr 2013-08-08 13:50:04 +02:00
Lukas Reschke
2e42c6f54f Use HTML5 data attribute + fix undefined variable 2013-01-26 14:07:35 +01:00
Thomas Mueller
5fadd53088 missing renames of publicListView to disableSharing 2013-01-23 09:18:26 +01:00
Bart Visscher
5bfe4adbaa Whitespace cleanup 2013-01-16 18:09:16 +01:00
Thomas Mueller
162a2c0fba moving sharing email code to core 2012-12-10 23:22:42 +01:00
Thomas Mueller
45074d5023 restoring feature to send sharing link via email 2012-12-10 18:41:08 +01:00
Michael Gapczynski
60e5054ae8 Fix shared status icons 2012-10-28 16:02:05 -04:00
Björn Schießle
41640b4b91 don't show the share action in the file view for publically shared files. 2012-10-10 17:44:21 +02:00
Michael Gapczynski
4e6f720f14 Fix closing the sharing dropdown by clicking on the share button 2012-10-09 19:23:44 +02:00
Michael Gapczynski
749b5b52ca Show preview for public folder links 2012-09-18 23:56:14 -04:00