Commit Graph

8332 Commits

Author SHA1 Message Date
Joas Schilling e25998df0f Json_(en|de)code values on redis to be able to cache arrays 2015-01-20 10:51:27 +01:00
Lukas Reschke 476579b9c6 Fix WebDAV auth for session authentication only
\Sabre\DAV\Auth\Backend\AbstractBasic::authenticate was only calling \OC_Connector_Sabre_Auth::validateUserPass when the response of \Sabre\HTTP\BasicAuth::getUserPass was not null.

However, there is a case where the value can be null and the user could be authenticated anyways: The authentication via ownCloud web-interface and then accessing WebDAV resources. This was not possible anymore with this patch because it never reached the code path in this scenario.

This patchs allows authenticating with a session without isDavAuthenticated value stored (this is for ugly WebDAV clients that send the cookie in any case) and thus the functionality should work again.

To test this go to the admin settings and test if the WebDAV check works fine. Furthermore all the usual stuff (WebDAV / Shibboleth / etc...) needs testing as well.
2015-01-20 10:03:14 +01:00
Jenkins for ownCloud 2ac015256f [tx-robot] updated from transifex 2015-01-20 01:54:37 -05:00
Morris Jobke 870bc429b2 Merge pull request #13416 from owncloud/reauthenticate-if-session-differs-from-basic-auth
Prioritise Basic Auth header over Cookie
2015-01-19 22:23:02 +01:00
Lukas Reschke cbffaff7a0 Merge pull request #13480 from owncloud/mysql-autocommit
set MySQL autocommit on connection setup
2015-01-19 19:39:26 +01:00
Thomas Müller baefefbbc8 set MySQL autocommit on connection setup 2015-01-19 17:20:49 +01:00
Vincent Petry ef8d38ca27 Fix chunked query for tags + unit test 2015-01-19 17:05:44 +01:00
Lukas Reschke 730460c9fa Close session properly 2015-01-19 16:25:44 +01:00
Thomas Müller 65041440de check is mimetype is set - fixed #13452 2015-01-19 15:04:53 +01:00
Morris Jobke a28d3b594b Fix exif orientation for flipped images
fixes #13363

Links:
 * http://www.daveperrett.com/articles/2012/07/28/exif-orientation-handling-is-a-ghetto/
 * Example data: https://github.com/recurser/exif-orientation-examples
2015-01-18 23:15:52 +01:00
Thomas Müller d2d6472e39 Merge pull request #13423 from owncloud/share-fixfindshareforuserwithmultiplegroups
Fix getItemSharedWithUser for groups
2015-01-19 12:34:28 +01:00
Thomas Müller 4fcfedb03c Merge pull request #13438 from owncloud/cache-the-array
Reuse the array key of mimetypes
2015-01-19 08:40:25 +01:00
Lukas Reschke 309cc9a6ca Reuse the array key of mimetypes
This function is called a lot of times and was really slow before due to not reusing the same array.

Previously when it was called 500'000 times it took about 2seconds, now we're down to 0.2 seconds on my local machine.

Ref https://github.com/owncloud/core/issues/13434
2015-01-18 14:50:34 +01:00
Lukas Reschke dfbc405a45 Prioritise Basic Auth header over Cookie
There are a lot of clients that support multiple WebDAV accounts in the same application. However, they resent all the cookies they received from one of the accounts also to the other one. In the case of ownCloud this means that we will always show the user from the session and not the user that is specified in the basic authentication header.

This patch adds a workaround the following way:

1. If the user authenticates via the Sabre Auth Connector add a hint to the session that this was authorized via Basic Auth (this is to prevent logout CSRF)
2. If the request contains this hint and the username specified in the basic auth header differs from the one in the session relogin the user using basic auth

Fixes https://github.com/owncloud/core/issues/11400 and https://github.com/owncloud/core/issues/13245 and probably some other issues as well.

This requires proper testing also considering LDAP / Shibboleth and whatever instances.
2015-01-17 13:29:07 +01:00
Jenkins for ownCloud 60c4cb1dd6 [tx-robot] updated from transifex 2015-01-17 01:54:40 -05:00
Lukas Reschke 744cf713f7 Merge pull request #13319 from owncloud/replace-line-breaks-in-app-description
replace line breaks in the app description by spaces - fixes #13315
2015-01-17 01:03:41 +01:00
Robin McCorkell 2b99fc76ec Cleanup of PHPDoc return types 2015-01-16 20:30:43 +00:00
Vincent Petry 40931a8b0d Fix getItemSharedWithUser for groups
Fixed SQL query for whenever a user has more than one group.
Added missing $owner where clause for group lookup.
Added unit tests for the group cases.
2015-01-16 18:11:13 +01:00
Morris Jobke 0f0204ee35 Merge pull request #13160 from owncloud/extstorage-ocbackendnopartfile
Disable part files for OC ext storage backend + s2s backend
2015-01-16 13:38:59 +01:00
Frank Karlitschek 696d9dc98e Merge pull request #13406 from owncloud/fix-php-doc
Fix PHPDoc
2015-01-15 20:35:30 -05:00
Lukas Reschke a1e92d61b3 Fix PHPDoc 2015-01-15 22:50:42 +01:00
Thomas Müller 051f626617 Merge pull request #13389 from owncloud/issue/13372-failing-oracle-tests-jenkins
Mask table and column names with backticks and add lastInsertID() workar...
2015-01-15 22:41:57 +01:00
Robin Appelman 2248e465af Remove children from the cache in one query 2015-01-15 17:26:12 +01:00
Morris Jobke 36ced1f002 Merge pull request #13388 from owncloud/type-hint-url-params
Add PHPDoc for `urlParams`
2015-01-15 16:00:48 +01:00
Bernhard Posselt bb0c88a577 always set url parameters when they are available in the app dispatch
prefer url parameters passed into the main method. If they are not present, use the containers urlParameters

add space
2015-01-15 15:22:52 +01:00
Joas Schilling 6769adcd0d Mask table and column names with backticks and add lastInsertID() workaround 2015-01-15 14:43:06 +01:00
Lukas Reschke 0da08bdb2c Add PHPDoc for `urlParams` 2015-01-15 14:42:44 +01:00
Thomas Müller 337c43ce92 Merge pull request #13317 from owncloud/partfile-fileinfo
Return valid fileinfo objects for part files
2015-01-14 22:39:19 +01:00
Morris Jobke 64d7463ca3 Merge pull request #13344 from owncloud/issue/13334-cleanup-tags-repairstep
Add a repair step to clean up orphan tags and tag entries
2015-01-14 20:43:23 +01:00
Morris Jobke 34d6a1596c Merge pull request #13367 from owncloud/type-hint-server-method-from-request
Add PHPDoc for magic property 'server'
2015-01-14 20:23:52 +01:00
Lukas Reschke 04ae8d2ea0 Add PHPDoc for magic property 'server' 2015-01-14 19:36:22 +01:00
Morris Jobke 455ad005a0 Merge pull request #13350 from owncloud/autoload-translations
Autoload app's js translations
2015-01-14 18:12:05 +01:00
Joas Schilling a22068cce3 Add a repair step to clean up orphan tags and tag entries 2015-01-14 16:49:25 +01:00
Bernhard Posselt 6737dd111d ignore core 2015-01-14 15:27:37 +01:00
Bernhard Posselt 4ec4914bb4 move check into addTranslation method 2015-01-14 14:57:56 +01:00
Bernhard Posselt 1cce1f0e6b dont load core scritps 2015-01-14 14:43:11 +01:00
Morris Jobke 520d8ec53b OC_App::parseAppInfo
* replace line breaks (on non empty lines) in the app description by spaces
* fixes #13315
* includes unit tests
2015-01-14 13:58:31 +01:00
Bernhard Posselt d6f1ff7993 only load translsations for apps 2015-01-14 13:48:21 +01:00
Bernhard Posselt 8cb60b2366 make translation lookup faster (O(n) -> O(1)) 2015-01-14 13:39:29 +01:00
Bernhard Posselt 717e3acd9b autoload app's js translations 2015-01-14 13:34:52 +01:00
Joas Schilling 4b3a3dc0bb Check new and old ways of required oC version for app compatibility 2015-01-14 13:02:02 +01:00
Björn Schießle 5745b68fa9 Merge pull request #13311 from owncloud/fix_restore_keys
adapt decrypt all to the new folder structure
2015-01-14 11:40:22 +01:00
Jenkins for ownCloud f367bbb49d [tx-robot] updated from transifex 2015-01-14 01:55:16 -05:00
Morris Jobke c8fa85451c Merge pull request #13320 from owncloud/fix-php-doc-for-files-view
Fix annotations in file view
2015-01-13 18:05:00 +01:00
Morris Jobke 0a400b4577 drop unused parameter 2015-01-13 18:04:20 +01:00
Lukas Reschke d66facc762 Fix annotations in file view 2015-01-13 14:53:00 +01:00
Robin Appelman 96dff341e2 Return valid fileinfo objects for part files 2015-01-13 13:59:28 +01:00
Morris Jobke 7746ac519f drop dead code - ref #13301 2015-01-13 13:52:25 +01:00
Bernhard Posselt ba8c050d2b Merge pull request #13217 from owncloud/make-basic-auth-work-again
Fix Basic Auth in master for applications
2015-01-13 13:35:54 +01:00
Thomas Müller 543fa0d45b Merge pull request #13291 from owncloud/node-searchcommonbasepathfix
Fix searchCommon to properly match path name
2015-01-13 13:25:51 +01:00
Robin Appelman 857695ec87 Return false if the login is canceled in a hook 2015-01-13 13:25:20 +01:00
Bjoern Schiessle 89f17ef6fe adapt decrypt all and restore/delete key backups to the new folder structure for encryption key introduced with OC8 2015-01-13 12:45:33 +01:00
Vincent Petry a2a7a60293 Merge pull request #13301 from owncloud/drop-etag-message
drop useless "!!! No reuse of etag" - fixes #13187
2015-01-13 12:24:24 +01:00
Robin McCorkell 79804166f1 Merge pull request #13305 from owncloud/remove-stray-minus-and-use-json-encode
Use json_encode on string
2015-01-13 10:39:14 +00:00
Lukas Reschke f0ac8a278a Use json_encode on string
It's better to encode the string to prevent possible (yet unknown) bugs in combination with PHP's type juggling.

Previously the boolean statements evaluated to either an empty string (false) or a not empty one (true, then it was 1). Not it always evaluates to false or true.

This also removes a stray - that was not intended there but shouldn't have produced any bugs. Just to increase readability.

Thanks @nickvergessen for spotting.

Addresses https://github.com/owncloud/core/pull/13235/files#r22852319
2015-01-13 11:08:18 +01:00
Morris Jobke dc86cbd1e2 Merge pull request #13271 from owncloud/fix-table-prefix-oracle-master
Use a special filter expression for Oracle to filter the prefix - fixes ...
2015-01-13 10:31:04 +01:00
Morris Jobke 9b49b52fc6 drop useless "!!! No reuse of etag" - fixes #13187 2015-01-13 09:54:48 +01:00
Thomas Müller 7966eee007 Adding repair step to fix missing etags - fixes #12172 2015-01-12 20:20:19 +01:00
Vincent Petry fcc3b3d5f7 Fix searchCommon to properly match path name
The internal path was matched without the last "/" which caused
"files_trashbin" to also match when the internal path was "files".

This adds the missing slash for the comparison.
2015-01-12 19:33:00 +01:00
Thomas Müller 1d2bef0a01 Use a special filter expression for Oracle to filter the prefix - fixes #13220 2015-01-12 16:28:11 +01:00
Jenkins for ownCloud 9e550ab844 [tx-robot] updated from transifex 2015-01-12 01:55:52 -05:00
Jenkins for ownCloud 3425c73815 [tx-robot] updated from transifex 2015-01-11 01:54:32 -05:00
Morris Jobke c91d47e5b3 Merge pull request #13224 from owncloud/simplify-is-valid-path-and-add-unit-tests
Simplify isValidPath and add unit tests
2015-01-10 17:35:40 +01:00
Morris Jobke c259733b88 Merge pull request #13223 from owncloud/optimize-normalize-unicode
Verify whether value is already normalized
2015-01-10 16:33:54 +01:00
Morris Jobke 8057bc6646 Merge pull request #13236 from owncloud/use-isset-for-performance
Use isset() instead of strlen()
2015-01-10 16:32:50 +01:00
Lukas Reschke e80ece9a2b Verify whether value is already normalized
Apparently `normalizer_normalize` is not verifying itself whether the string needs to be converted or not. Or does it at least not very performantly.

This simple change leads to a 4% performance gain on the processing of normalizeUnicode. Since this method is called quite often (i.e. for every file path) this has actually a measurable impact. For examples searches are now 200ms faster on my machine. Still not perfect but way to go.

Part of https://github.com/owncloud/core/issues/13221
2015-01-10 12:12:40 +01:00
Lukas Reschke 310424db5d Use isset() instead of strlen()
Isset is a native language construct and thus A LOT faster than using strlen()

On my local machine this leads to a 1s performance gain for about 1 million paths. Considering that this function will be called a lot for every file operation this makes a noticable difference.
2015-01-10 12:06:51 +01:00
Lukas Reschke 7e11ca06f6 Cache results of `normalizePath`
`normalizePath` is a rather expensive operation and called multiple times for a single path for every file related operation.

In my development installation with about 9GB of data and 60k files this leads to a performance boost of 24% - in seconds that are 1.86s (!) - for simple searches. With more files the impact will be even more noticeable. Obviously this affects every operation that has in any regard something to do with using OC\Files\Filesystem.

Part of https://github.com/owncloud/core/issues/13221
2015-01-10 11:10:38 +01:00
Morris Jobke ae3483299c Merge pull request #13212 from owncloud/cache-appstore-response
Cache responses from the AppStore server
2015-01-10 09:56:00 +01:00
Jenkins for ownCloud 22e5220c1f [tx-robot] updated from transifex 2015-01-10 01:54:35 -05:00
Lukas Reschke 05615bfd47 Simplify isValidPath and add unit tests
The check for invalid paths is actually over-complicated and performed twice resulting in a performance penalty. Additionally, I decided to add unit-tests to that function.

Part of https://github.com/owncloud/core/issues/13221
2015-01-10 00:40:21 +01:00
Lukas Reschke 5f31207e84 Add some more sanity checks for maintenance mode 2015-01-09 21:52:16 +01:00
Lukas Reschke 1c75b73239 Verify authentication before initializing apps and routing
The current behaviour of the authenticion logic in base.php prevents REST APIs in ownCloud applications to work.

Because `!self::$CLI` is usually always a true statement the previously above block was entered which returned, thus the authentication logic for this part does not trigger in.

This can be reproduced by installing apps such as the News app and issuing the following command:

`curl -u admin:admin http://localhost/index.php/apps/news/api/v1-2/feeds`

The following parts needs to get throughly tested:

- [ ] OCS
- [ ] remote.php's DAV features
- [ ] Regular login features

This bug affects master and stable7. I'd propose that we merge this for 8.0 since this has the potential to break every component that relies on Basic Auth features. A backport would also be very nice.

Remark to myself: We really need to move out the authentication code for 8.1 out of base.php - I already have a local branch that does that somewhere which I will get in shape for 8.1... - This untested code is a night-mare.

Fixes itself.
2015-01-09 21:07:29 +01:00
Lukas Reschke b8b4df5425 Cache responses from the AppStore server
Otherwise every time the AppStore was opened a lot of connections to the AppStore server were made which resulted in a terrible performance.

This changeset will cache the response for a sensible time so that only the first request will be somewhat slow.

Performance changes:
- Loading a category took previously more than 3 seconds on my machine. Now for every follow-up request it takes less than 200ms, resulting in a performance gain of 1950%
- Loading the category list took previously about 750ms - now it takes 154ms, a total performance gain of 395%
2015-01-09 19:49:59 +01:00
Thomas Müller d4355cafc6 Merge pull request #13192 from owncloud/cache_binary_path
Use memcache for findBinaryPath
2015-01-09 17:46:36 +01:00
Robin McCorkell 631d6571fd Merge pull request #13181 from owncloud/filecache-preventleadingslash
Trim leading or trailing slashes in file cache paths
2015-01-09 13:54:17 +00:00
Morris Jobke 800738f51a Merge pull request #12011 from owncloud/reuse-etag-default
Default to reusing etags in the scanner
2015-01-09 14:38:45 +01:00
Robin McCorkell c291383116 Memcache binary executable searching
It's slow, this makes it fast!
2015-01-09 13:18:00 +00:00
Robin McCorkell 17dd5d0816 Add Null memcacher 2015-01-09 13:18:00 +00:00
Thomas Müller 1f1643b35f Merge pull request #12995 from owncloud/tbelau666-master
Use Doctrines filter by table name
2015-01-09 14:17:14 +01:00
Vincent Petry 888ce4d4f9 Fix cache jail to not duplicate slashes 2015-01-09 10:18:32 +01:00
Jenkins for ownCloud d4fc2f555b [tx-robot] updated from transifex 2015-01-09 01:55:22 -05:00
Lukas Reschke 6c59253978 Merge pull request #13179 from owncloud/fix-fatal-php-error-for-not-existing-files
Verify whether type is correct
2015-01-09 02:27:51 +01:00
Morris Jobke 6a5f12beca Merge pull request #12988 from owncloud/logfile_download
Logfile download
2015-01-09 00:33:22 +01:00
Vincent Petry aa821ecc00 Trim leading or trailing slashes in file cache paths 2015-01-08 19:43:02 +01:00
Lukas Reschke ceaaab6295 Verify whether type is correct
`$this->info` can very well contain an empty array or possibly other values. This means that when this code path is called a PHP Fatal error might get thrown which is not what we want.
2015-01-08 18:38:17 +01:00
Lukas Reschke 7fbb7f4dc4 Add version to .htaccess
Currently if a user does not replace the .htaccess file with the new update this can lead to serious problems in case Apache is used as webserver.

This commit adds the version to the .htaccess file and the update routine fails in case not the newest version is specified in there. This obviously means that every release has to update the version specified in .htaccess as well. But I see no better solution for it.

Conflicts:
	lib/private/updater.php
2015-01-08 12:49:02 +01:00
Thomas Müller 5f171618fd remove unused variable and fix undefined variable 2015-01-08 09:46:40 +01:00
Thomas Müller 296a852063 check for working htaccess will result in a dead lock because the server is blocking the request to itself - fixes #13153 2015-01-08 09:13:18 +01:00
Jenkins for ownCloud 6bda95037f [tx-robot] updated from transifex 2015-01-08 01:56:00 -05:00
Vincent Petry 2e57fe93e4 Disable part files for OC ext storage backend + s2s backend
When uploading files to an OC ext storage backend or when using server
to server sharing storage, part files aren't needed because the backend
already has its own part files and takes care of the final atomic rename
operation.

This also fixes issues when using two encrypted ownCloud instances where
one mounts the other either as external storage (ownCloud backend) or
through server to server sharing.
2015-01-07 21:21:51 +01:00
Morris Jobke bfb6e350d5 Merge pull request #13016 from owncloud/sharing_fixes
don't delete share table entries for the unique name if re-share permission was removed
2015-01-07 18:14:53 +01:00
Bjoern Schiessle b6f63e9b3d don't delete share table entries for the unique name if re-share permission was removed 2015-01-07 16:36:13 +01:00
Georg Ehrke f579f2bd94 add Download logfile button to admin settings
add logSettingsController

add download logfile button

move getEntries to LogSettingsController

move set log level to logsettingscontroller.php

add warning if logfile is bigger than 100MB

add unit test for set log level

fix typecasting, add new line at EoF

show log and logfile download only if log_type is set to owncloud

add unit test for getFilenameForDownload
2015-01-07 14:55:53 +01:00
Morris Jobke fd57820708 Merge pull request #13132 from aptivate/improve_debug_logging_messages
Improve debugging for ServiceUnavailable exceptions
2015-01-07 10:36:27 +01:00
Thomas Müller 4628e98cfc Merge pull request #13063 from AdamWill/assets-relocate
allow css/js asset directory to be relocated ('assetdirectory')
2015-01-07 09:36:26 +01:00
Jenkins for ownCloud 2daf90dae6 [tx-robot] updated from transifex 2015-01-07 01:55:42 -05:00
Morris Jobke a8d82b7091 Merge pull request #13131 from owncloud/db-connect-stacktrace
Prevent leaking db connection info in the stacktrace
2015-01-07 01:17:27 +01:00
Lukas Reschke 7528a1a475 Merge pull request #13130 from owncloud/getstoragestats-error-handling
Add error handling to getstoragestats.php
2015-01-06 18:35:09 +01:00
Chris Wilson 402a3ed146 Improve debugging for ServiceUnavailable exceptions
I was getting a lot of these in my logs for no apparent reason, and file
uploads were failing:

	{"app":"webdav","message":"Sabre\\DAV\\Exception\\ServiceUnavailable: ","level":4,"time":"2015-01-06T15:33:39+00:00"}

In order to debug it, I had to add unique messages to all the places where
this exception was thrown, to identify which one it was, and that made the
logs much more useful:

	{"app":"webdav","message":"Sabre\\DAV\\Exception\\ServiceUnavailable: Encryption is disabled","level":4,"time":"2015-01-06T15:36:47+00:00"}
2015-01-06 15:59:38 +00:00
Robin Appelman 3356308594 Prevent leaking db connection info in the stacktrace 2015-01-06 16:54:41 +01:00
Morris Jobke fe4592937a Merge pull request #12653 from owncloud/full_content_search_results
Full content width search results
2015-01-06 16:44:58 +01:00
Robin Appelman 64e3ebae74 Add error handling to getstoragestats.php 2015-01-06 15:56:06 +01:00
Thomas Müller 68efeba343 Merge pull request #13125 from owncloud/lower-deprecation-warning-level
degraded logging policy for server container in AppFramework
2015-01-06 14:38:50 +01:00
Thomas Müller 20886d8151 Merge pull request #13116 from owncloud/fix_assets
Fix JS asset generation
2015-01-06 14:36:51 +01:00
Morris Jobke 4ffe7ddb75 degraded logging policy for server container in AppFramework 2015-01-06 13:43:40 +01:00
Jenkins for ownCloud 6a3f69c2d0 [tx-robot] updated from transifex 2015-01-06 01:54:59 -05:00
Adam Williamson bb79aac78a allow css/js asset directory to be relocated (#13053)
This allows the directory where CSS/JS asset collections are
written to be changed, in case SERVERROOT is not writeable. Note
it does *not* allow the expected URL to be changed: whatever
directory is used, the server must be configured to serve it
at WEBROOT/assets. It may be possible to add another config
parameter to allow the admin to specify a custom asset URL,
but I thought I'd keep the first implementation simple.
2015-01-05 15:24:23 -08:00
Thomas Müller c0ad6e818b Merge pull request #13101 from owncloud/variable-is-undefined-please-use-a-proper-ide-in-the-future-whoever-did-that
Fix undefined variable and write unit tests for OC_Principal connector
2015-01-05 20:09:10 +01:00
Robin McCorkell 2c44bc1768 Fix JS asset generation
At some point SeparatorFilter should be included upstream
(kriswallsmith/assetic), then lib/private/assetic/separatorfilter.php can be
removed and the `use` in lib/private/templatelayout.php rewritten.

SeparatorFilter inserts a separator between assets, preventing issues when
files are incorrectly terminated. For JS this is a semicolon.
2015-01-05 15:48:04 +00:00
Lukas Reschke 8689605999 Use info instead of warning log level
Otherwise the log is flooded as can be seen at https://github.com/owncloud/core/issues/13106

Fixes https://github.com/owncloud/core/issues/13106
2015-01-05 11:18:54 +01:00
Lukas Reschke 0ed00bca43 Use namespace 2015-01-05 09:54:14 +01:00
Lukas Reschke 556c9b6f46 Write unit-tests and use DI 2015-01-05 09:54:12 +01:00
Lukas Reschke f2ddd565e8 Fix code-style 2015-01-05 09:53:01 +01:00
Morris Jobke f2e759b533 Merge pull request #13095 from derkostka/master
fix "app":"PHP","message":"Undefined variable: user at/principal.php#66"
2015-01-05 09:47:44 +01:00
Jenkins for ownCloud 8776271103 [tx-robot] updated from transifex 2015-01-05 01:54:36 -05:00
derkostka deedfad050 fix "app":"PHP","message":"Undefined variable: user at/principal.php#66"
changed variable #user to #name
2015-01-04 17:07:33 +01:00
Morris Jobke 298eae9c86 Merge pull request #13060 from dratini0/master
Fix: X-Accel-Redirect did not support custom data dir and local mounts
2015-01-04 10:09:30 +01:00
Jenkins for ownCloud 84ed1034b4 [tx-robot] updated from transifex 2015-01-04 01:54:53 -05:00
Jenkins for ownCloud 05ffa3ab7a [tx-robot] updated from transifex 2015-01-03 01:54:29 -05:00
Jörn Friedrich Dreyer 79e790c55d add SIZE_ALL const 2015-01-02 10:28:42 +01:00
Jörn Friedrich Dreyer a8edb2124d fix visibility 2015-01-02 10:28:41 +01:00
Jörn Friedrich Dreyer 606f802b7b move search results below filelist, show hint when results are off screen, use js plugin mechanism 2015-01-02 10:28:41 +01:00
Jörn Friedrich Dreyer 0e9b05b701 ajax paging, some js cleanups 2015-01-02 10:28:41 +01:00
Jörn Friedrich Dreyer c738359a11 add paged provider 2015-01-02 10:28:41 +01:00
Jörn Friedrich Dreyer 088323aad5 move code from js.js to search.js in the search app 2015-01-02 10:28:41 +01:00
Jörn Friedrich Dreyer d3662722f6 new OC.Search, add search result formatters and handlers, use full content width for results 2015-01-02 10:28:41 +01:00
Jenkins for ownCloud 4b357274bb [tx-robot] updated from transifex 2015-01-02 01:54:28 -05:00
Jenkins for ownCloud ec6e70889a [tx-robot] updated from transifex 2015-01-01 01:54:30 -05:00
Jenkins for ownCloud 573be9092d [tx-robot] updated from transifex 2014-12-31 01:54:33 -05:00
dratini0 31970ee740 removed a little duplication 2014-12-30 22:36:13 +01:00
dratini0 f2075f803f Fix: X-Accel-Redirect did not support custom data dir and local mounts 2014-12-30 22:07:04 +01:00
Frank Karlitschek cd53da43c0 Merge pull request #12854 from owncloud/add-direct-download-link
Adding foundation for the direct download url
2014-12-29 18:47:39 +01:00
Jenkins for ownCloud c8e946f633 [tx-robot] updated from transifex 2014-12-29 01:54:27 -05:00
Thomas Müller 81243b0f5d adding getDirectDownload() to Wrapper 2014-12-28 17:17:14 +01:00
Thomas Müller 5b00bc1d6e Adding basement for the direct download url 2014-12-28 17:17:14 +01:00
Thomas Müller aec79b0c0e Merge pull request #13043 from owncloud/check-for-hash
Check for hash
2014-12-28 14:12:57 +01:00
Lukas Reschke 2711863220 Merge pull request #13035 from owncloud/new_edition_detection
Automatically detect the edition based on the enterprise_key app.
2014-12-28 13:36:59 +01:00
Lukas Reschke 222e4a0762 Check for hash
See https://github.com/owncloud/core/pull/13042
2014-12-28 13:23:34 +01:00
Jenkins for ownCloud d2e53d1022 [tx-robot] updated from transifex 2014-12-27 01:54:33 -05:00
Jenkins for ownCloud 0836ce9cd8 [tx-robot] updated from transifex 2014-12-26 01:54:28 -05:00
Frank Karlitschek 4a40e5699c remove Edition 2014-12-25 11:36:41 +01:00
Frank Karlitschek 3dea2b95c6 Automatically detect the edition based on the enterprise_key app. 2014-12-25 09:48:15 +01:00
Jenkins for ownCloud e0fc26a5cb [tx-robot] updated from transifex 2014-12-25 01:54:29 -05:00
Jenkins for ownCloud 801b9e0494 [tx-robot] updated from transifex 2014-12-24 01:54:33 -05:00
Morris Jobke 95374e1404 add default for dbtableprefix 2014-12-23 13:32:25 +01:00
Bernhard Posselt f195123765 Intelligent container
* resolves dependencies by type hint or variable name
* simpler route.php
* implementation of https://github.com/owncloud/core/issues/12829

Generates and injects parameters automatically. You can now build full classes like

    $c->query('MyClassName')

without having to register it as a service. The resolved object's instance will be saved by using registerService. If a constructor parameter is not type hinted, the parameter name will be taken.

Therefore the following two implementations are identical:

    class Class1 { function __construct(MyClassName $class)
    class Class1 { function __construct($MyClassName)

This makes it possible to also inject primitive values such as strings, arrays etc.

In addition if the query could not be resolved, a `QueryException` is now thrown

Routes can now be returned as an array from `routes.php` and an `appinfo/application.php` is optional

Old commit messages:

make it possible to return the routes instead of having to intialize the application
try to get the controller by convention
add first implementation of automatic resolve
add another test just to be sure
store the resolved object
more tests
add phpdoc to public app.php method
use the same variable for the public app.php method
deprecate old methods and add services for public interfaces
deprecated getServer method
disallow private api injection for apps other than core or settings (settings should be an app goddamnit :D)
register userid because its such an often used variable
fix indention and leading slash
use test namespace
add deprecation reasons, remove private api usage checks and remove deprecation from getServer()
add additional public interfaces
add public interface for rootfolder
fix syntax error
remove deprecation from methods where no alternative is there yet
remove deprecated from method which has no alternative
add timezone public service for #12881
add another deprecation hint
move deprecation into separate branch
remove dead comment
first try to get the namespace from the info.xml, if it does not exist, just uppercase the first letter
also trim the namespace name
add an interface for timefactory
move timefactory to public and add icontrollermethodreflector
keep core interface
fix copyright date in headers
2014-12-23 09:50:42 +01:00
Jenkins for ownCloud d8f04f5a97 [tx-robot] updated from transifex 2014-12-23 01:55:23 -05:00
Morris Jobke dbc465de97 use injected config object and fix typos 2014-12-22 10:55:52 +01:00
Morris Jobke de25084def inject \OCP\IConfig instance in migrator 2014-12-22 10:47:10 +01:00
tbelau666 ad8d55c327 Use Doctrines filter by table name
Doctrine's SchemaManager can filter table names by regular expression.
On this way it picks up only ownClouds's tables in a database.

by tbelau666
2014-12-22 10:45:32 +01:00
Morris Jobke 5d296aa6b1 Merge pull request #12969 from owncloud/clarify-docs
Clarify return values
2014-12-22 10:01:39 +01:00
Morris Jobke c17b9ec068 Merge pull request #12983 from owncloud/root-iface
Add an interface for the root folder so apps have an interface to deal with storage
2014-12-22 09:05:23 +01:00
Jenkins for ownCloud 92c8cd3933 [tx-robot] updated from transifex 2014-12-22 01:54:49 -05:00
Bernhard Posselt 8e37214346 add an interface for the root folder so apps have an interface to deal with storage
fix comments and newline

add newline
2014-12-21 20:52:34 +01:00
Thomas Müller dc12f5d9af Merge pull request #12978 from owncloud/fix-support-claim
Change support message to be more explicit about the enterprise edition
2014-12-21 20:30:43 +01:00
Thomas Müller c3544bd27e Merge pull request #12982 from owncloud/timefac-iface
Add an interface for the timefactory class
2014-12-21 20:27:53 +01:00
Jenkins for ownCloud 312891c603 [tx-robot] updated from transifex 2014-12-21 01:54:36 -05:00
Bernhard Posselt ba03b0b843 add an interface for the timefactory class
fix indention
2014-12-20 15:53:31 +01:00
Morris Jobke 5383d83f9e Change support message to be more explicit about the enterprise edition 2014-12-20 11:57:15 +01:00
Jenkins for ownCloud 5a54ca380d [tx-robot] updated from transifex 2014-12-20 01:56:24 -05:00
derkostka 1c22b1f626 Fix Undefined variable: result at tags.php#231
Fix app":"PHP","message":"Undefined variable: result at \/var\/www\/owncloud\/lib\/private\/tags.php#231" by moving the function call into the respective loop

Adjust indentation

Do it right - indentation

sorry, this is my first one
2014-12-19 19:44:43 +01:00
Björn Schießle 8164415b45 Merge pull request #12749 from owncloud/server2server-sharing-ng
server to server sharing next generation
2014-12-19 19:04:44 +01:00
blizzz ad6814f920 Merge pull request #12101 from owncloud/ldap_split_mapping
Ldap split mapping from Access superclass
2014-12-19 18:52:30 +01:00
Arthur Schiwon ec0f80fee9 Split mapping from Access and Helper classes into it's own. Fully test them, too.
remove unused methods

split mapping methods off from Access class

fix DB query handling

move 'clear mapping' methods from static helper to new mapping class

add tests

test directly with DB

finishing tests and fix return value from setDNbyUUID

add corresponding class for groups and make abstract test class neutral. helper tests is now obsolete as the tested functions were moved to the new mapper class.

add missing info to PHPDoc

add unmap method

fix namespaces

fix test inheritance

PHPDoc and a small code restructure for scrutinizer, no effective changes

PostgreSQL does not accept LIMIT in DELETE queries

phpdoc fixes, no code changes
2014-12-19 18:26:12 +01:00
Bjoern Schiessle 24993280ed Next step in server-to-server sharing next generation, see #12285
Beside some small improvements and bug fixes this will probably the final state for OC8.

To test this you need to set up two ownCloud instances. Let's say:

URL: myPC/firstOwnCloud user: user1
URL: myPC/secondOwnCloud user: user2
Now user1 can share a file with user2 by entering the username and the URL to the second ownCloud to the share-drop-down, in this case "user2@myPC/secondOwnCloud".

The next time user2 login he will get a notification that he received a server-to-server share with the option to accept/decline it. If he accept it the share will be mounted. In both cases a event will be send back to user1 and add a notification to the activity stream that the share was accepted/declined.

If user1 decides to unshare the file again from user2 the share will automatically be removed from the second ownCloud server and user2 will see a notification in his activity stream that user1@myPC/firstOwnCloud has unshared the file/folder from him.
2014-12-19 15:20:24 +01:00
Lukas Reschke f671b232cc Merge pull request #12923 from owncloud/ultra-slim-version-of-incognito-mode
Add ultra-slim hack for incognito mode
2014-12-19 14:54:11 +01:00
Lukas Reschke dbbf568192 Fix typo 2014-12-19 14:36:00 +01:00
Lukas Reschke a022e65285 Clarify return values
This function returns `null` when no user is logged-in.
2014-12-19 14:17:40 +01:00
Thomas Müller 2d64797320 Merge pull request #12956 from owncloud/jenkins-user-backend-names
[jenkins only] introduce names for user backends - IUserBackend
2014-12-19 13:15:50 +01:00
Lukas Reschke 157ff1219a Merge pull request #12954 from owncloud/hhvm-apc-clear
HHVM: In APC cache clear, only request the cache key in APCIterator.
2014-12-19 10:46:20 +01:00
Morris Jobke 6b3600d2bf Merge pull request #12918 from owncloud/use-uid-instead-of-login-name
Return UID instead of login name
2014-12-19 10:24:52 +01:00
Morris Jobke 6da33e1ea7 introduce names for user backends - IUserBackend
* LDAP with multiple servers also proved backendName
2014-12-19 10:17:17 +01:00
Morris Jobke 39d6ddd38a Merge pull request #12865 from owncloud/files-tags-webdav
Returns tags through WebDAV
2014-12-19 09:33:28 +01:00
Jenkins for ownCloud 028b0efd5c [tx-robot] updated from transifex 2014-12-19 01:56:51 -05:00
Andreas Fischer 0ba5c182f0 HHVM: In APC cache clear, only request the cache key in APCIterator.
The default value of the $format parameter of the APCIterator constructur is
APC_ITER_ALL which instructs the iterator to provide all available information
on cache values being iterated over. Only the key value is necessary for
matching and deletion via apc_delete(), though.

This prevents a "Format values FILENAME, DEVICE, INODE, MD5, NUM_HITS, MTIME,
CTIME, DTIME, ATIME, REFCOUNT not supported yet." notice on HHVM.
2014-12-19 03:24:00 +01:00
Morris Jobke 114a6464e8 Merge pull request #12748 from owncloud/redis_cache
Add Redis cache implementation, prefer over memcached, tests & config sample doc
2014-12-19 00:26:25 +01:00
Morris Jobke 75e8b39826 Merge pull request #12879 from owncloud/mountconfig
Add mount specific options
2014-12-18 23:38:14 +01:00
Jörn Friedrich Dreyer 891474b0d6 Merge pull request #12759 from owncloud/core-reduce-js-and-css
make sure styles and scripts are only loaded once
2014-12-18 23:18:37 +01:00
Morris Jobke 609e10238f Merge pull request #12945 from owncloud/hhvm-image
HHVM: Do not call filesize(null), this function expects a string.
2014-12-18 22:20:56 +01:00
Andreas Fischer 3ebb69944b Do not call filesize(null), this function expects a string.
filesize(null) yields an int on HHVM and thus exif_imagetype(null) is called.
2014-12-18 20:57:19 +01:00
Morris Jobke 85301c8b85 Merge pull request #12940 from drarko/master
Fix extra quotes in custom tags in header
2014-12-18 18:44:44 +01:00
Vincent Petry 6224e29f25 Fix code style issues for tags plugin 2014-12-18 16:43:00 +01:00
drarko faaa1a89cb Fix extra quotes in custom tags in header
Fix #12939
2014-12-18 12:40:08 -03:00
Robin Appelman 1ef01de402 Merge pull request #12907 from owncloud/delete-invalid-external-share
Fix deleting invalid s2s shares
2014-12-18 16:38:13 +01:00
Vincent Petry 3c67900421 Remove obsolete method 2014-12-18 16:04:36 +01:00
Jenkins for ownCloud 5c6e08213e [tx-robot] updated from transifex 2014-12-18 01:56:40 -05:00
Robin McCorkell 619dcae7af Merge pull request #12901 from owncloud/move-ldap-check-to-manager
Move the Null-Byte LDAP check to the user manager
2014-12-18 00:28:00 +00:00
Robin McCorkell d83fdd7f9d Merge pull request #12913 from owncloud/hhvm-memcached-clear
HHVM: Add workaround for missing Memcached::deleteMulti()
2014-12-18 00:27:07 +00:00
Morris Jobke 232d4385f4 Merge pull request #12917 from owncloud/fix-ocs-12915-api
Move basic auth login out of `isLoggedIn`
2014-12-18 00:57:22 +01:00
Lukas Reschke e3230b5bc2 Add ultra-slim hack for incognito mode
As discussed at https://github.com/owncloud/core/pull/12912#issuecomment-67391155
2014-12-17 21:53:43 +01:00
Lukas Reschke 058324b80e Check basic auth header only for not-logged-in users 2014-12-17 21:42:07 +01:00
Morris Jobke 3d006207d1 Merge pull request #12892 from owncloud/is-addmin
Add isAdmin and isInGroup methods for the group manager
2014-12-17 21:40:26 +01:00
Lukas Reschke 9031d79597 Return UID instead of login name
Without this OCS on LDAP is broken for API requests coming via Basic Authentication...
2014-12-17 20:33:22 +01:00
Lukas Reschke a02b00445e Store result of authentication 2014-12-17 20:22:51 +01:00
Lukas Reschke b91a435ed4 Move basic auth login out of `isLoggedIn`
Potentially fixes https://github.com/owncloud/core/issues/12915 and opens the door for potential other bugs...

Please test very carefully, this includes:

- Testing from OCS via cURL (as in #12915)
- Testing from OCS via browser (Open the "Von Dir geteilt" shares overview)
- WebDAV
- CalDAV
- CardDAV
2014-12-17 20:12:14 +01:00
Andreas Fischer fcf3c5197f HHVM: Add workaround for missing Memcached::deleteMulti() 2014-12-17 18:10:11 +01:00
Bernhard Posselt 6779bf113d add isAdmin and isInGroup methods for the group manager 2014-12-17 17:41:57 +01:00
Bernhard Posselt 236632702c add a isLoggedIn method to the usersession and deprecate the isLoggedIn method on the api 2014-12-17 17:40:52 +01:00
Andreas Fischer 8c509c3437 HHVM: Call libxml_use_internal_errors() instead of surpressing errors.
In contrast to the previous solution, this also works on HHVM.
2014-12-17 17:00:10 +01:00