Commit Graph

992 Commits

Author SHA1 Message Date
Morris Jobke 1362c0b67a Merge pull request #12452 from owncloud/server2server-ng-ocs
OCS API for server-to-server sharing
2014-12-08 14:12:03 +01:00
Robin Appelman f4701d7721 Add public api for mount configurations 2014-12-04 16:47:27 +01:00
Lukas Reschke db9765b4d5 Merge headers
Otherwise the headers from `JSONResponse` are gone and the Content-Type of the response would be `text/html` instead of `application/json; charset=utf-8`. This leads to broken scripts since we set the `nosniff` tag, furthermore this is very bad from a security PoV.
2014-12-04 14:45:15 +01:00
Bjoern Schiessle 698ecbf308 OCS API for server-to-server sharing 2014-12-04 13:18:13 +01:00
Morris Jobke 5b3dbb4ef8 add missing public interface for iOS client app id 2014-12-02 16:10:07 +01:00
Lukas Reschke ffd1fc42e7 Merge pull request #12427 from owncloud/issue/6101-deprecate-namespaced-functions
Depcrate namespaced functions, since they can not be autoloaded
2014-12-01 09:38:15 +01:00
Bjoern Schiessle 00ad7d48c7 add activity priorities to core so that other apps can reuse it 2014-11-28 10:37:16 +01:00
Morris Jobke b188710af3 Merge pull request #12472 from owncloud/modifyCookies
Add functions to modify cookies to response class
2014-11-28 10:16:22 +01:00
Joas Schilling 7b8824a4e3 Move iHomeStorage to own file 2014-11-27 17:47:20 +01:00
Joas Schilling dfde04291e Move share interfaces to own files so they can be autoloaded 2014-11-27 17:47:19 +01:00
Lukas Reschke d197f43475 Use server container 2014-11-27 14:36:11 +01:00
Lukas Reschke 048139074d Add functions to modify cookies to response class
Currently there is no AppFramework way to modify cookies, which makes it unusable for quite some use-cases or results in untestable code.

This PR adds some basic functionalities to add and invalidate cookies.

Usage:
```php
$response = new TemplateResponse(...);
$response->addCookie('foo', 'bar');
$response->invalidateCookie('foo');
$response->addCookie('bar', 'foo', new \DateTime('2015-01-01 00:00'));
```

Existing cookies can be accessed with the AppFramework using `$this->request->getCookie($name)`.
2014-11-27 14:19:00 +01:00
Joas Schilling a109f94fee Depcrate namespaced functions, since they can not be autoloaded 2014-11-26 11:01:24 +01:00
Morris Jobke c5fa8f1bdc Merge pull request #12421 from owncloud/issue/6101-remove-namespace-permission-constants
Issue/6101 remove namespace permission constants
2014-11-26 08:31:23 +01:00
Joas Schilling 2c39aec8cb Replace deprecated constant with new class constant 2014-11-25 16:30:21 +01:00
Joas Schilling 711912a7b3 Move namespaced constants to namespaced class 2014-11-25 16:27:27 +01:00
Thomas Müller c503ecd544 Introduce app info xml parser including basic unit test - necessary for #10777 2014-11-25 11:53:28 +01:00
Morris Jobke 1b17429c1d Merge pull request #12142 from owncloud/DeprecateOldIAPICalls
Deprecate older API wrappers and calls
2014-11-24 14:01:49 +01:00
Bjoern Schiessle a7ebfe87c9 also check for the correct owner if it was submitted 2014-11-21 16:17:37 +01:00
Lukas Reschke 4302a78b27 Deprecate older API wrappers and calls
Those old classes have now non-static pendants and can be deprecated IMHO.
2014-11-12 17:39:25 +01:00
Robin Appelman 43eb375ace Add \OC\App\Manager to handle enabling/disabling apps 2014-11-10 13:52:52 +01:00
Lukas Reschke 8f1fa32e1f Merge pull request #11998 from owncloud/add-get-logger-to-interface
Add getLogger() to IServerContainer
2014-11-06 16:04:54 +01:00
Lukas Reschke 24ca2d858f Add OCP\Security\IHasher
Public interface for hashing which also works with legacy ownCloud hashes and supports updating the legacy hash via a passed reference.

Follow-up of https://github.com/owncloud/core/pull/10219#issuecomment-61624662
Requires https://github.com/owncloud/3rdparty/pull/136
2014-11-06 15:16:14 +01:00
Lukas Reschke 0e3e1e3563 Add getLogger() to IServerContainer
Makes my IDE complaining less ;-)
2014-11-06 13:36:36 +01:00
Thomas Müller e624e9064c Merge pull request #11965 from owncloud/fix-jsonresponse
fix typo in content type for JSONResponse
2014-11-05 14:03:12 +01:00
Bernhard Posselt 91a23bfa9c fix typo in content type 2014-11-05 12:04:56 +01:00
Lukas Reschke be5ae6c44f Support HTML in logo claim 2014-11-03 21:14:27 +01:00
Vincent Petry bed81ea854 Merge pull request #11080 from owncloud/addheader-text-2
Fix the addHeader tag attributes text methods to not ignore the text parameter
2014-10-30 18:13:46 +01:00
Morris Jobke e2001c6d31 Merge pull request #11821 from owncloud/generic-response
Add a generic data response
2014-10-30 14:05:25 +01:00
Vincent Petry ec1a73fab9 Added OC.L10N namespace with translation functions
Added addTranslations and fixed de.js file

Fixed de.js to use OC.L10N.register() and use to correct expected
format.

Added JS unit tests for OC.L10N class

Include translations JS script for all apps
2014-10-29 10:09:12 +01:00
Bernhard Posselt 0696099bad add dataresponse
fix docstrings

adjust copyright date

another copyright date update

another header update

implement third headers argument, fix indention, fix docstrings

fix docstrings
2014-10-29 09:43:47 +01:00
Lukas Reschke 510d0b2cf3 Fix the "addHeader($tag, $attributes, $text)" methods to not ignore the $text parameter
Also support closing tags with no text content given

Conflicts:
	lib/private/template.php
2014-10-28 11:15:58 +01:00
Morris Jobke 290e9cd5b2 Merge pull request #11787 from owncloud/fix-php-docs
Fix PHPDoc
2014-10-27 14:46:41 +01:00
Lukas Reschke f7c393fa9f Fix PHPDoc
Stop my IDE and Scrutinizer from complaining.
2014-10-27 13:38:40 +01:00
Morris Jobke 63f2b1f460 Merge pull request #11767 from danbartram/add_db_rollback
Add missing DB rollback functionality
2014-10-24 19:52:56 +02:00
Dan Bartram 9c1015b790 Add missing DB rollback functionality 2014-10-24 17:44:06 +01:00
Robin Appelman 83c74b80ad Add \OC\TempManager to handle creating and cleaning temporary files 2014-10-24 12:18:46 +02:00
Robin Appelman e6f6cdd19f Bit more cleanup 2014-10-22 12:29:53 +02:00
Robin Appelman 97a6f5c46b Extend \OCP\IDBConnection to cover more use cases 2014-10-22 12:26:43 +02:00
Robin Appelman beb1c6ad74 Allow adding events that hapend before the event logger was loaded 2014-10-20 13:38:38 +02:00
Robin Appelman 6e08014781 Rename namespace to Diagnostics 2014-10-20 13:38:38 +02:00
Robin Appelman b71d1d3616 Add QueryLogger interface to allow apps to get a list of used queries 2014-10-20 13:38:37 +02:00
Robin Appelman d38050cf52 Add an EventLogger interface to allow apps to get a log of the request timeline 2014-10-20 13:38:37 +02:00
Bernhard Reiter b416f7d8ac PHPDoc fixes as suggested by @MorrisJobke. 2014-10-14 00:06:33 +02:00
Bernhard Reiter 1770179648 Add getTag() function for accessing of a single tag. 2014-10-14 00:06:33 +02:00
Bernhard Reiter 7e9baafc53 Add option to include tags for shared items. 2014-10-14 00:06:07 +02:00
Bernhard Reiter b33cb0e342 Fix a comment. 2014-10-14 00:06:07 +02:00
Robin Appelman 12ac3a800d Expose getAppKeys trough \OCP\IConfig 2014-10-08 14:22:17 +02:00
Lukas Reschke 8c8e5c168e Merge pull request #10107 from owncloud/sharing_group_shares
[sharing] group shares
2014-09-29 20:26:41 +02:00
Thomas Müller e5a111b80e Merge pull request #11285 from owncloud/dav-permissions-create
Fix dav permissions for folders
2014-09-26 09:21:32 +02:00
Vincent Petry 9fc23e1967 Merge pull request #10934 from owncloud/datadir-write-setup
Don't complain about non-writable datadirs before we're installed
2014-09-25 14:32:32 +02:00
Robin Appelman ccb4475a8d Expose creatable permissions trough fileinfo 2014-09-25 14:00:13 +02:00
Bjoern Schiessle d5fc011c90 some small fixes 2014-09-25 11:29:57 +02:00
Bjoern Schiessle a6cc810349 mark exclude list as deprecated. It neither used by the files app nor by the
calendar or contacts app. It doesn't make sense to build a exclude list by the
share API, the apps knows best which are valid targets.
2014-09-24 14:02:02 +02:00
Lukas Reschke 75e45ac786 Merge pull request #11019 from owncloud/do-not-show-exception-to-enduser
Do not show exception to the end-user - use a proper error page instead
2014-09-23 18:36:40 +02:00
Thomas Müller c587a4aaa2 Merge pull request #11222 from owncloud/store-users-timezone-master
send browsers timezone back tp the server on login
2014-09-23 13:45:21 +02:00
Lukas Reschke 6eeb905871 Do only follow HTTP and HTTPS redirects
We do not want to follow redirects to other protocols since they might allow an adversary to bypass network restrictions. (i.e. a redirect to ftp:// might be used to access files of a FTP server which might be in a secure zone and not be reachable from the net but from the ownCloud server)

Get final redirect manually using get_headers()

Migrate to HTTPHelper class and add unit tests
2014-09-22 20:02:32 +02:00
Thomas Müller 814114ab8e enhance formatDate function to accept an optional argument containing the time zone 2014-09-22 15:03:28 +02:00
Robin Appelman 6fa3280c2a Inject config into checkserver and cleanup tests 2014-09-18 13:33:13 +02:00
Lukas Reschke d07d5915c9 Remove unused and overflowing function
Resolves https://github.com/owncloud/core/issues/10991 failure 4
2014-09-18 10:21:28 +02:00
Lukas Reschke 6d3757f864 Do not show exception to the end-user
Log the error instead of potentially leaking sensitive information
2014-09-17 13:17:52 +02:00
Morris Jobke b644e8a5e7 Merge pull request #10932 from owncloud/issue/10926
Add a method to get the absolute url for a route
2014-09-17 13:05:26 +02:00
Lukas Reschke d2743e6ad6 Merge pull request #7254 from owncloud/core-sortalgo
Fixed JS sort comparator to be consistent between JS and PHP
2014-09-16 17:29:03 +02:00
Lukas Reschke 70abce0482 Merge pull request #10739 from owncloud/eventsource-public
Add EventSource to the public API
2014-09-08 18:46:27 +02:00
Joas Schilling c5b5378558 Add a method to get the absolute url for a route
Fix #10926
2014-09-08 14:43:14 +02:00
Robin Appelman fa3393674c Better phpdoc and method naming 2014-09-04 13:26:51 +02:00
Lukas Reschke 373d1c5e9f Merge pull request #10642 from owncloud/securityutils
Add some security utilities
2014-09-03 15:28:42 +02:00
Lukas Reschke dcea6de26a Fix quoting 2014-09-03 14:16:55 +02:00
Lukas Reschke a54af89d8a Add test for the second argument 2014-09-03 14:13:12 +02:00
Robin Appelman dad53180bc Add event source to the public api 2014-09-03 13:36:15 +02:00
Lukas Reschke 20a7fb0334 Fix CHAR_SYMBOLS 2014-09-03 12:22:21 +02:00
Lukas Reschke 77c0adb520 Merge branch 'securityutils' of https://github.com/owncloud/core into securityutils 2014-09-03 11:04:49 +02:00
Lukas Reschke 50b430ee7c Add char consts, hash the specified password for the HMAC 2014-09-03 11:03:27 +02:00
Morris Jobke 4024960a0e Merge pull request #10780 from owncloud/config-public
Extend public config interface
2014-08-31 15:54:35 +02:00
Lukas Reschke 8009df0b60 Merge pull request #10420 from owncloud/external-share-self-signed
Make external shares work with imported self signed certificates
2014-08-31 15:50:30 +02:00
Robin Appelman 0a1e5aebf1 Extend public config interface 2014-08-31 15:27:36 +02:00
Lukas Reschke ae3425d2da Merge branch 'master' into securityutils
Conflicts:
	lib/private/util.php
2014-08-31 15:21:09 +02:00
Morris Jobke 73685892ed Merge pull request #10770 from owncloud/getUserFolder
update public interface for getUserFolder
2014-08-31 13:26:32 +02:00
Morris Jobke ac6324a5d0 update public interface for getUserFolder 2014-08-31 11:16:40 +02:00
Robin Appelman c158db7200 Add certificate class 2014-08-31 10:47:50 +02:00
Robin Appelman c1b11571ea Move certificate management interface from files_external to core 2014-08-31 10:47:50 +02:00
Robin Appelman ecdbf00628 Move certificate management code to core 2014-08-31 10:45:10 +02:00
Robin Appelman a58e670ae5 Also extend public server interface 2014-08-31 10:20:00 +02:00
Robin Appelman d0266c0bf8 Use public api for getting l10n 2014-08-31 10:08:22 +02:00
Clark Tomlinson cb0da1178b Merge pull request #10653 from owncloud/x-forwarded-for
Add support for getting the real client IP behind proxies
2014-08-27 10:32:34 -04:00
Björn Schießle c35d60f6d8 Merge pull request #9915 from suraia/unsharefromself-source
Allow specifying the item source in unshareFromSelf().
2014-08-27 10:31:35 +02:00
Lukas Reschke d26a9c3c58 Add some security utilities
This adds some security utilities to core including:
- A library for basic crypto operations (e.g. to encrypt passwords)
- A better library for cryptographic actions which allows you to specify the charset
- A library for secure string comparisions

Remove .htaccess

Remove .htaccess

Fix typo

Add public API

Use timing constant comparision

Remove CBC constant

Adjust code

Remove confusing $this
2014-08-27 00:18:04 +02:00
Lukas Reschke 7acdd018a1 Add support for getting the real client IP behind proxies
Fixes https://github.com/owncloud/core/issues/10624

Fix copy paste fail

Add unittest for comma separated headers

Revert 3rdparty
2014-08-27 00:05:04 +02:00
Lukas Reschke 88c3a4a31a Expose setSystemValue 2014-08-22 15:53:23 +02:00
Morris Jobke ab6ee6a600 Add doc for \OCP\Files\FileInfo space constants 2014-08-19 16:49:51 +02:00
Morris Jobke b3b3354809 move to public namespace 2014-08-19 14:05:08 +02:00
Thomas Müller c08a1e6455 according to PHPDoc this function shall return the entity 2014-08-17 22:27:55 +02:00
Thomas Müller c1102b1671 Merge pull request #10417 from owncloud/update_deprecation_doc
update deprecation docs
2014-08-14 17:54:23 +02:00
Jörn Friedrich Dreyer fd798fd982 update deprecation docs 2014-08-14 12:22:34 +02:00
Bjoern Schiessle d9f35d8c15 we need the recipient as a additional parameter to know for which share the notification was send 2014-08-13 17:02:51 +02:00
Vincent Petry 173059f6d0 Fixed file list sorting
Now using a natural sort algorithm that is more consistent between JS
and PHP (although not perfect in some corner cases)

- added OC.Util.naturalSortComparator that uses the same algo that was
  used for the user list
- changed user list and files list to use OC.Util.naturalSortComparator
- removed toLowerCase() and changed the comparator to use
  String.localeCompare()
- added unit tests
- added OC_NaturalSort that is used by OCP\Util::naturalSortCompare()
2014-08-11 13:28:53 +02:00
Björn Schießle d35bfc9a4c Merge pull request #9520 from owncloud/theme_urls
Add ability to theme iOS and Android client URLs just like desktop URLs.
2014-08-05 17:53:18 +02:00
scolebrook 2e127d2c5e Add ability to theme iOS and Android client URLs just like desktop URLs. 2014-08-05 13:16:51 +02:00
Bjoern Schiessle 41cca70a63 don't display share permission if resharing was disabled by the admin 2014-08-05 10:57:51 +02:00
Thomas Müller 4eb2b4e1b0 Merge pull request #10051 from owncloud/preview-empty-text
Use svg mimeicons for empty text files
2014-07-31 11:38:29 +02:00
Robin Appelman 4a9b0d5465 Use svg mimeicons for empty text files 2014-07-30 16:31:37 +02:00
Morris Jobke 889088f72d Fix template rendering for 'blank' templates 2014-07-29 16:49:50 +02:00
Björn Schießle c53b56e313 Merge pull request #9798 from owncloud/ocs_share_api_add_expire_date
[share api] add OCS api call to set expire date for link shares
2014-07-28 17:28:32 +02:00
Michael Kuhn ecdd04374a Allow specifying the item source in unshareFromSelf(). 2014-07-26 02:00:49 +02:00
Robin Appelman acafb4a426 Merge pull request #9669 from owncloud/group-public
Add group management to the public api
2014-07-25 17:55:12 +02:00
Bjoern Schiessle ecc1f92bb6 add OCS api call to set expire date for link shares 2014-07-25 13:38:18 +02:00
Thomas Müller a8b6cc6a07 - adding default value for $recoveryPassword
- set password correctly in lost password
2014-07-24 12:50:39 +02:00
Joas Schilling 01878153e0 Add language parameter to public API for getL10N()
Fix #9756
2014-07-21 14:50:34 +02:00
Robin Appelman 94fa21d146 Add group management to the public api 2014-07-16 14:25:31 +02:00
Jörn Friedrich Dreyer b3106c321c use correct IUser in interface 2014-07-15 17:41:44 +02:00
Robin Appelman 51d0bdc90c Expose the user manager in the public server container 2014-07-14 15:10:56 +02:00
Robin Appelman 20c1ce7f47 Add public interfaces for User, UserManager and UserSession 2014-07-14 15:10:51 +02:00
Thomas Müller 8363f3c635 Adding new interface \OCP\Activity\IExtentsion
Adding method getNotificationTypes()
Adding method filterNotificationTypes()
Adding method getDefaultTypes()
Adding method translate() and getTypeIcon()
Adding method getGroupParameter()
Adding method getNavigation()
Adding method getNavigation()
Adding method isFilterValid() and getQueryForFilter()
Adding unit tests for \OC\ActivityManager
2014-07-08 09:04:37 +02:00
Thomas Müller 2327d41b11 Merge pull request #9269 from owncloud/fix_versions_preview
change order of registering api and capabilities to fix file version previews
2014-07-04 15:25:24 +02:00
Vincent Petry ed29e7d160 Merge pull request #9329 from owncloud/sharing_check_target
don't move a share mount point into a different mount point
2014-07-02 21:01:03 +02:00
Bjoern Schiessle 735eac6c9d add a explicit interface for the home storage 2014-07-01 17:31:33 +02:00
Jörn Friedrich Dreyer 5a588333b2 introduce and use getCurrentConnection() 2014-07-01 16:45:00 +02:00
Robin Appelman 1c43081d38 Detect removed public shares 2014-07-01 14:36:06 +02:00
Robin Appelman d78a2a9f78 Add StorageNotAvailableException 2014-06-30 15:46:37 +02:00
Vincent Petry fd8b5680dd Merge pull request #8383 from owncloud/object_storage
Object storage
2014-06-27 16:53:03 +02:00
Jörn Friedrich Dreyer c112a1d323 move to stream based IObjectStore interface, rearrange & reformat code 2014-06-20 12:27:47 +02:00
Jörn Friedrich Dreyer f2fe00e972 fix rebase, use 'object::user:<username>' or 'object::store:<storageid> as storage id, by default use container/bucket name for storageid, make storageid configurable, store user only for HomeObjectStoreStorage, change updateObject() to writeObject() 2014-06-18 15:20:26 +02:00
Jörn Friedrich Dreyer 5cae863408 change architecture from inheritance to composition 2014-06-18 12:53:20 +02:00
Vincent Petry 799205488c Prevent loadApps on upgrade
Moved OC::needUpgrade() to OCP\Util::needUpgrade() to make it accessible
form the router.
Moved maintenance + upgrade check to the router.
2014-06-18 11:10:07 +02:00
Bernhard Posselt 93169eca1e also handle lowercase headers 2014-06-11 01:20:09 +02:00
Bernhard Posselt 1002281dae handle http accept headers more gracefully 2014-06-11 00:54:25 +02:00
Vincent Petry 5cebb6fb9b Merge pull request #4553 from owncloud/update_search_classes
Update search classes
2014-06-06 13:24:16 +02:00
Jörn Friedrich Dreyer aaf0d13171 make search non-static, add ISearch to server container, make legacy a static wrapper for it, move provider and result to public api 2014-06-06 01:17:02 +02:00
Bernhard Posselt 587a8df566 remove controller serializers 2014-06-05 18:00:36 +02:00
Thomas Müller ec7225da66 remove file locking - code will continue to live in it's own app 2014-06-04 20:11:54 +02:00
ringmaster 54865815f5 Move Lock to private namespace, add interface. Update PHPDoc. 2014-06-04 07:55:45 +02:00
ringmaster 392a1b6662 Removed unused vars/declarations, update PHPDoc. 2014-06-04 07:55:45 +02:00
ringmaster f9dbdb7c5c Add actual locking and log changes necessary for debugging. 2014-06-04 07:55:44 +02:00
ringmaster dc1e3620d2 Continued flock work. 2014-06-04 07:55:44 +02:00
ringmaster 5365ae416e flock changes. Work in progress. 2014-06-04 07:55:44 +02:00
Morris Jobke 9a67986473 add OCP\Config:deleteSystemValue 2014-06-02 18:31:43 +02:00
Lukas Reschke c8b5ae675c Fix PHPDoc
- Remove not anymore existing parameters
- Fix typo
2014-06-01 21:46:05 +02:00
Robin Appelman 8c5521fdfc Add $storage->instanceOfStorage to handle instanceof for storage wrappers 2014-05-29 13:45:50 +02:00
Bart Visscher a51e9a5cfe Merge pull request #8136 from owncloud/contactsmanager-register
Implement the register function of OC\ContactsManager
2014-05-27 22:35:50 +02:00
Bjoern Schiessle 12338e0ef0 allow admin to disable sharing for specific groups of users 2014-05-22 10:43:44 +02:00
Thomas Müller 8749442fec no return on register and unregister 2014-05-19 21:39:19 +02:00
Thomas Müller bb6fac1102 Merge branch 'master' into contactsmanager-register
Conflicts:
	lib/private/contactsmanager.php
2014-05-19 21:35:13 +02:00
Morris Jobke dc36d30953 Remove all occurences of @brief and @returns from PHPDoc
* test case added to avoid adding them later
2014-05-19 17:50:53 +02:00
Thomas Müller 95741f3936 Merge pull request #8435 from owncloud/fix-8322-master
Expose permission via WebDAV
2014-05-19 16:52:03 +02:00
Joas Schilling ab7ae004f7 Automatically copy the share expiration date when new shares are created
Fix #4823
2014-05-19 01:38:47 +02:00
Björn Schießle b52cb8f557 Merge pull request #8604 from owncloud/sharing_encforce_password
allow admin to enforce passwords for public link shares
2014-05-16 12:23:01 -04:00
Bjoern Schiessle b6e14af861 allow admin to enforce passwords for public link shares 2014-05-16 17:41:09 +02:00
Bernhard Posselt 9e36c33104 use fetch method instead of fetchRow because fetchRow is only an owncloud internal alias that exists purely for compability 2014-05-14 01:09:48 +02:00
Bernhard Posselt 512373fadf provide a way to detect the language that is being used (e.g. for clientside javascript language selection 2014-05-14 01:09:48 +02:00
Robin McCorkell f7e777f7d2 Fix various code errors detected by Scrutinizer
Fixed:
- An error with a misplaced bracket in lib/private/util.php
- An error with an incorrect function being called in lib/public/contacts.php
2014-05-13 19:09:14 +01:00