Compare commits

..

820 Commits

Author SHA1 Message Date
Frank Karlitschek 87345f80ea 6.0.7 2015-02-16 04:57:16 +01:00
Thomas Müller b864fb4cc8 Merge pull request #14150 from owncloud/no-whitespace-from-themes-stable6
catch any whitespaces which might get written to the output buffer while...
2015-02-19 10:20:10 +01:00
Morris Jobke 24911a36f7 Merge pull request #14255 from owncloud/console-execution-time-stable6
[backport-14243-stable6] console commands shall not be limited with respect to execution time
2015-02-16 21:16:31 +01:00
Thomas Müller 9f01059ed9 console commands shall not be limited with respect to execution time 2015-02-16 16:27:21 +01:00
Thomas Müller e9e1b0638c catch any whitespaces which might get written to the output buffer while loading a theme 2015-02-12 12:09:18 +01:00
Lukas Reschke 267341fbeb Normalize before processing 2015-02-06 15:53:13 +01:00
Frank Karlitschek 0bccd06bc8 6.0.7 RC1 2015-02-06 02:48:07 +01:00
Morris Jobke cbb58b0d2f Merge pull request #12736 from owncloud/temp-handling-stable6
[stable6] Cleanup handling of temporary files
2015-01-09 00:38:40 +01:00
Morris Jobke df5b5e4cf8 Merge pull request #13177 from owncloud/stable6-extstorage-fixsharedmountpointrootleadingslash
[stable6] Fix source path when share is a mount point
2015-01-09 00:00:23 +01:00
Robin Appelman 3adb47094e Use the TempManager to handle temporary files 2015-01-08 16:22:44 +01:00
Robin Appelman 299ff5a3b1 Add \OC\TempManager to handle creating and cleaning temporary files 2015-01-08 16:22:44 +01:00
Vincent Petry aca2807da6 Fix source path when share is a mount point
Whenever an external storage mount point is shared directly, its path is
empty which causes a leading slash to appear in the source path.

This fix removes the bogus leading slash in such situation.
2015-01-08 11:40:47 +01:00
Byron Marohn 441cdccc3e Added error check to lib/private/image.php
This checks that imagecreatetruecolor actually creates an image, rather than returning FALSE.
Without this check, subsequent loop might create billions of ERROR-level log messages.

Signed-off-by: Byron Marohn <combustible@live.com>
2015-01-02 18:04:58 +01:00
Victor Dubiniuk c59b22ab55 Skip headers that can not be split 2014-12-10 08:22:29 +01:00
Frank Karlitschek 60e955bde4 6.0.6 2014-11-07 20:27:15 +01:00
Craig Morrissey 3cb244dd23 logging changes 2014-11-07 12:47:06 -05:00
Björn Schießle 78edcd9696 Merge pull request #11706 from owncloud/fix_trash_stable6
[oc6] make sure that trash bin is initialized correctly
2014-10-23 16:34:00 +02:00
Bjoern Schiessle 9320225daa make sure that trash bin is initialized for both the current user and the file owner 2014-10-22 15:14:30 +02:00
Bjoern Schiessle 9ea90ac82f no error if we try to delete a file which no longer exists 2014-10-21 16:55:17 +02:00
Arthur Schiwon e46f87fdac backport of #11494
fix retrievel of group members and cache group members

fix changed variable name

with several backends, more than limit can be returned

make performance less bad. Still far from good, but at least it works

add one simple cache test

adjust group manager tests

Conflicts:
	apps/user_ldap/group_ldap.php
	apps/user_ldap/lib/access.php
	apps/user_ldap/tests/group_ldap.php
2014-10-20 12:51:38 +02:00
blizzz 6fc04c2f91 Merge pull request #11217 from owncloud/backport-9225-stable6
Backport of #9225 to stable6
2014-10-20 11:42:51 +02:00
Lukas Reschke 55573645c6 Merge pull request #11371 from owncloud/backport-11368
Load public preview via JS
2014-10-20 09:13:26 +02:00
Frank Karlitschek de8c624a15 Merge pull request #10576 from owncloud/ajaxify_user_list_for_files_external_stable6
Ajaxify user list for files external stable6
2014-10-18 18:28:28 +02:00
Lukas Reschke 65b439da8c Merge pull request #11560 from owncloud/stable6-encsharekeymatchingdirectbackport
[stable6] backport share key pattern matching fix
2014-10-17 11:36:03 +02:00
Arthur Schiwon 4e6a4e53cf Merge branch 'voxsim-backport-9225-stable6' into backport-9225-stable6 2014-10-16 16:38:26 +02:00
Lukas Reschke 870dc981aa Merge pull request #11248 from owncloud/11032-backport-stable6
Do only follow HTTP and HTTPS redirects
2014-10-16 13:54:21 +02:00
Lukas Reschke 979d2823b5 Fix SVG icons
FIXME: Ugly hack to prevent SVG of being returned if the SVG
provider is not enabled.
This is required because the preview system is designed in a
bad way and relies on opt-in with asterisks (i.e. image/*)
which will lead to the fact that a SVG will also match the image
provider.
2014-10-16 12:25:58 +02:00
Vincent Petry d63bba391d Disabled assert known to fail
stable6 has a bug where the share keys are not properly deleted when
deleting a shared file as non-owner.

To make sure the more important fix from the backport of
1e631754d7 can be applied, the
corresponding assert introduced by the backport is disabled.
2014-10-16 10:29:24 +02:00
Frank Karlitschek 784931f835 6.0.6 RC1 2014-10-16 08:24:28 +02:00
Vincent Petry 962b410fcc Remove FileInfo instance check
FileInfo class doesn't exist in stable6
2014-10-15 17:26:13 +02:00
Vincent Petry 9878f00118 Removed broken/unneeded fixFileSize
fixFileSize is not needed as the target file will already have the
correct unencrypted size after renaming
2014-10-15 12:34:33 +02:00
Vincent Petry 828a939f96 Fix share key finding algorithm in various cases
Instead of inaccurate pattern matching, use the list of users who we
know have access to the file to build the list of share keys.

This covers the following cases:

- Move/copy files into a subfolder within a share
- Unsharing from a user
- Deleting files directlry / moving share keys to trashbin

Conflicts:
	apps/files_encryption/lib/keymanager.php
	apps/files_encryption/tests/hooks.php
	apps/files_encryption/tests/keymanager.php
	apps/files_encryption/tests/trashbin.php
2014-10-15 12:34:32 +02:00
Vincent Petry 9327abd2e4 Merge pull request #11561 from owncloud/stable6-enc-webdavcopywithencryptionfix
[stable6] add support for webdav copy to the encryption and versions app
2014-10-15 12:30:37 +02:00
Bjoern Schiessle 07377be378 make sure that we always find all versions 2014-10-14 11:36:39 +02:00
Bjoern Schiessle fd55d73ac5 add unit test for rename and copy operation
Conflicts:
	apps/files_versions/appinfo/app.php
	apps/files_versions/tests/versions.php
2014-10-14 11:11:37 +02:00
Bjoern Schiessle 1aedc60aa2 make the versions and encryption app aware of the copy operation
Conflicts:
	apps/files_encryption/hooks/hooks.php
	apps/files_versions/appinfo/app.php
2014-10-14 11:10:00 +02:00
Jörn Friedrich Dreyer 2107915073 fix flickering users 2014-10-13 17:49:40 +02:00
Arthur Schiwon abc2aad2a1 no need to load display names 2014-10-13 17:18:35 +02:00
Jörn Friedrich Dreyer cb74d8ac0e fix deletion of shares 2014-10-13 17:18:35 +02:00
Jörn Friedrich Dreyer 5af5bd5498 replace chosen with select2 to provide ajaxified user and group selection for files_external, fixes #7499 2014-10-13 17:18:35 +02:00
Jörn Friedrich Dreyer 564d28b57c add select2 to app specific thirdparty 2014-10-13 17:18:35 +02:00
Lukas Reschke af97529339 force loading of encryption app 2014-10-13 11:55:05 +02:00
Vincent Petry 3844585f91 Prevent button click when enter key is pressed in LDAP wizard
Pressing enter in the LDAP wizard will trigger a click on the first
button. In the main page it would trigger the delete dialog, which is
quite inconvenient.

Added a type attribute to suppress this behavior.

Backport of bb424802c8 from master
2014-10-10 14:55:32 +02:00
Robin Appelman dfa57cdc01 Show a proper error message when trying to scan the filesystem for a non existing user
Backport of e8280c80da from master
2014-10-10 13:00:39 +02:00
Robin Appelman c526ebb832 Don't keep the full info of all children in memory
Backport of f88021dbbc from master
2014-10-10 13:00:14 +02:00
Arthur Schiwon 94d5f9e6e2 Backport of #10527
properly cancel a Paginated Results operation in order to avoid protocol errors, fixes #10526

abandon ongoing paged search before starting a new one

abandond paged search only if PHP supports them

init a new paged search on read operations to satisfy OpenLDAP

make scrutinizer happy, very minor changes

Conflicts:
	apps/user_ldap/lib/access.php
	apps/user_ldap/lib/ildapwrapper.php
2014-10-09 14:46:20 +02:00
Lukas Reschke 65c655afad Merge pull request #8307 from owncloud/case_insensitive_search_oracle_stable6
on oracle use regex_like to make filename search case insensitive
2014-10-03 15:19:59 +02:00
Lukas Reschke befbf1c150 Load public preview via JS
Backport of https://github.com/owncloud/core/pull/11368 to stable6 - since stable6 has no detection for SVG support this will just use the PNG icon instead of SVG ones.

I believe this is a better solution than backporting the whole SVG support stuff and potentially breaking a lot.
2014-10-01 13:49:59 +02:00
Lukas Reschke d9ceeed60d Merge pull request #11153 from owncloud/parallel-upload-stable6
close the session for all DAV calls right after authentication - no need...
2014-10-01 10:42:20 +02:00
Jörn Friedrich Dreyer 5e0ea9f3b5 fix case insensitive search on oracle and postgresql
on oracle use regex_like
on postgres use ILIKE
add unit test to check case insensitivity
2014-09-29 14:31:40 +02:00
Lukas Reschke b358547699 Clarify possible preview providers for type Office
a

Conflicts:
	lib/private/preview.php
2014-09-25 09:59:08 +02:00
Simon Vocella e9cc95a403 Fix in stable6 after backport of #9225 2014-09-24 22:56:23 +02:00
Arthur Schiwon a84250c6d1 ask implementsAction instead of checking method_exists for easier testing 2014-09-24 22:36:45 +02:00
Joas Schilling 79e6b60199 Fix getting group '0' from database backend
Fix #9972
2014-09-24 22:23:25 +02:00
Arthur Schiwon 01ce97f85f add optional countUsersInGroup method to group backends
Conflicts:
	lib/private/group/backend.php
	lib/private/group/database.php
	lib/private/group/dummy.php
2014-09-24 22:23:13 +02:00
Robin Appelman 03694be08a remove unneeded ; in comment 2014-09-24 22:08:01 +02:00
Robin Appelman 5525294f9b user Group->users as assosiative array 2014-09-24 22:07:56 +02:00
Robin Appelman e9cf3b4e8b cache the result from inGroup 2014-09-24 22:07:47 +02:00
Robin Appelman 82c375cda5 Fix test cases for group manager 2014-09-24 09:39:39 +02:00
Robin Appelman ed6588ff21 remove duplicate call to groupExists 2014-09-24 09:22:43 +02:00
Morris Jobke 34a803d83e Merge pull request #11246 from owncloud/backport-11211-stable6
Add a configuration switch for enabled preview mimetypes
2014-09-23 23:54:08 +02:00
Lukas Reschke 716613fda4 Merge branch 'stable6' into backport-11211-stable6
Conflicts:
	config/config.sample.php
2014-09-23 14:49:53 +02:00
Vincent Petry 3ec5cbb347 Reenable file proxy when renaming between mount points
When moving a folder into another mount point, $renamedFiles is empty
because that goes over a different mechanism.

In such case, this fix makes sure that the file proxy is reenable to
avoid breaking the subsequent files that are being moved.
2014-09-23 13:35:45 +02:00
Victor Dubiniuk f2629142b0 Use non-empty defaults 2014-09-23 12:53:54 +02:00
Lukas Reschke b2798afef5 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

Conflicts:
	apps/files/ajax/newfile.php
	lib/private/files/storage/dav.php
	lib/private/server.php
	lib/private/util.php
	lib/public/iservercontainer.php
2014-09-23 12:05:34 +02:00
Bjoern Schiessle 5de19f38c4 first check if a private key exists, if not it is always a recovery szenario 2014-09-23 10:56:01 +02:00
Lukas Reschke 77a4b1609b Add a configuration switch for enabled preview mimetypes
Backport of https://github.com/owncloud/core/pull/11211 to stable6
2014-09-23 10:53:34 +02:00
Vincent Petry e001dfb3be Added extra check to avoid deleting key folders
Whenever a delete operation is called twice in a row, it could happen
that the first call already deleted the file.

The second call would return an empty $ownerPath because the file does
not exist. That empty $ownerPath would run the key deletion operation on
the wrong path.

This fix adds checks in many places to make sure we don't use $ownerPath
when it's empty or null.

Backport of 8aca127e52 from master
2014-09-22 17:09:25 +02:00
Lukas Reschke e123b6db68 Merge pull request #11207 from owncloud/enc_create_backup_on_recovery_oc6
create backup from all keys before recovery (oc6 backport)
2014-09-22 15:11:16 +02:00
voxsim 45489ecce4 Backport of #9225
fix in displayNamesInGroup: when specified limit N, we did complex search only in the first N users

change logic in displayNamesInGroup and add some unit tests

add more logic in displayNamesInGroup for big user bases

1. remove sizeof($filteredUsers) > 0 as condition
2. use count instead of sizeof. Latter is an alias to first one, practically we stick to count everywhere. Having it consistent helps with readability.
3. move whitespace so we have $groupUsers[] = $filteredUser; instead of $groupUsers []= $filteredUser;

Conflicts:
	tests/lib/group/manager.php
2014-09-22 12:26:47 +02:00
Bjoern Schiessle 7539309742 create backup from all keys before recovery 2014-09-22 09:53:40 +02:00
Thomas Müller 7217fb873c use session_write_close() because the Session class has no close() yet in this version 2014-09-18 13:21:08 +02:00
Thomas Müller b963723c21 close the session for all DAV calls right after authentication - no need to write to the session afterwards 2014-09-18 11:58:38 +02:00
Lukas Reschke 7a2dbc25cb Revert "Reword the description"
This reverts commit 16c5925155.
2014-09-16 16:03:30 +02:00
Lukas Reschke 16c5925155 Reword the description
The old one was just horrible wrong.
Conflicts:
	config/config.sample.php
2014-09-16 16:02:48 +02:00
Thomas Müller 5ecbd9ddd6 Merge pull request #11025 from owncloud/nojavascript
introduce no-javascript message, manual backport of #6202 and #10944
2014-09-12 11:30:33 +02:00
Jan-Christoph Borchardt c3002b3053 introduce no-javascript message, manual backport of #6202 and #10944, fix #10841 2014-09-11 16:11:44 +02:00
tomneedham e962c190c7 Add displayname for admins 2014-09-11 08:51:31 +01:00
Vincent Petry 725360fa14 Merge pull request #10250 from owncloud/block-folder-upload-stable6
Prevent folder upload causing unexpected behavior
2014-09-03 17:15:59 +02:00
Thomas Müller 69f198d6fb Merge pull request #10645 from owncloud/backport_7728
Backport 7728
2014-09-03 12:46:12 +02:00
Thomas Müller 7507995485 Merge pull request #10774 from owncloud/backport-getUserFolder
Add optional user ID parameter for getUseFolder
2014-09-03 11:06:02 +02:00
Morris Jobke 4a4f52e7a4 Add optional user ID parameter for getUseFolder
Conflicts:
	lib/private/server.php
2014-08-31 13:42:41 +02:00
Arthur Schiwon 8d786ec456 retrieve local users, groups and group members in a sorted way 2014-08-31 11:59:57 +02:00
Thomas Müller 9c4fe0bc3a Merge pull request #10694 from owncloud/allow_empty_hostname_and_dots_in_service_name_for_oracle_autosetup
allow empty hostname and dots in service name for oracle autosetup
2014-08-29 17:07:21 +02:00
Jörn Friedrich Dreyer 25524e03c4 allow empty hostname and dots in service name for oracle autosetup 2014-08-28 15:54:28 +02:00
blizzz da1d4bf4fd Merge pull request #10631 from owncloud/fixWizardTest_stable6
fix wizard test, adjust to changed parameters of the tested method, intr...
2014-08-28 11:33:42 +02:00
Lukas Reschke 1d5a664dc0 Escape error messages 2014-08-28 09:37:38 +02:00
Jörn Friedrich Dreyer 4a3e6dd528 Merge pull request #10660 from owncloud/use_notification_to_show_error_on_new_via_web_stable6
use notification to show error on new via web
2014-08-27 11:46:08 +02:00
Jörn Friedrich Dreyer c2e7c19c49 use notification to shw error on new via web 2014-08-27 10:44:10 +02:00
Thomas Müller f3d335b7c1 unit tests for specific image type output added 2014-08-26 19:39:46 +02:00
Georg Ehrke 6da05d0ca4 excerpt code changes from 79ba930ef9 2014-08-26 19:39:30 +02:00
Georg Ehrke c82f158c16 OC_Image::_output() - throw exception instead of falling back to png 2014-08-26 19:36:54 +02:00
Georg Ehrke f2b072bceb remove image/pjpeg from OC_Image::_output 2014-08-26 19:36:40 +02:00
Georg Ehrke ee8ded88b3 don't change mimetype of whole image object 2014-08-26 19:36:28 +02:00
Georg Ehrke 3c65a503b2 always output a png 2014-08-26 19:36:18 +02:00
Georg Ehrke 8f45e8107a make it possible to influence output type of \OC_Image
Conflicts:
	lib/private/image.php
2014-08-26 19:35:53 +02:00
Frank Karlitschek 30098c34ad 6.0.5 2014-08-26 12:04:32 +02:00
Arthur Schiwon e895f06165 fix wizard test, adjust to changed parameters of the tested method, introduced by 9caa354cfc 2014-08-26 10:50:00 +02:00
Jörn Friedrich Dreyer 96430a99f9 Merge pull request #10448 from owncloud/check_quota_on_new_via_web_stable6
check quota when trying to download a file via new -> web
2014-08-25 15:17:37 +02:00
Frank Karlitschek eb276df08c 6.0.5 RC1 2014-08-21 05:37:53 +02:00
Lukas Reschke d9ecfa3bd4 Also encode > and ' 2014-08-20 19:20:12 +02:00
Jörn Friedrich Dreyer a5aa04ce19 properly encode groups as json, not ',' separated 2014-08-19 11:29:09 +02:00
Bjoern Schiessle 1e692e56e1 set incognitoMode to true, getUser should always return false during public upload 2014-08-19 10:16:07 +02:00
Lukas Reschke 663daf4bc7 Merge pull request #10146 from owncloud/fix-8578-stable6
Update 3rdparty to replace fpassthru() in Sabre.
2014-08-17 19:11:10 +02:00
Jörn Friedrich Dreyer 8f0d89a986 check quota when trying to download a file via new -> web 2014-08-15 16:47:50 +02:00
Clark Tomlinson 6d6dfe2329 Merge pull request #10440 from owncloud/enforce-debug
Remove ability to trigger DEBUG mode via cookie
2014-08-15 09:18:33 -04:00
Lukas Reschke b067848509 Merge pull request #10034 from owncloud/remove-es_MX-from-stable6
Remove es mx from stable6
2014-08-15 14:07:52 +02:00
Bjoern Schiessle ca33b2af72 we need the recipient as a additional parameter to know for which share the notification was send 2014-08-14 17:51:16 +02:00
Vincent Petry f82aed0075 Fix Upload button does not disappear
Tipsy tooltip must be hidden when the upload starts. Otherwise it covers
the progress bar and stays in DOM.

Backport of fa28c089fa and
90839b784f from master
2014-08-14 13:57:39 +02:00
Volkan Gezer 5e85790f5e Minor changes in config.sample
* appcodechecker accepts boolean.
* using different ports in trusted domains

Partially fixes #330
2014-08-13 22:57:06 +02:00
Bjoern Schiessle ffe3bd1429 fix broken variable name, recoveryPasswordSupported is now recoveryEnabledForUser 2014-08-12 19:28:05 +02:00
Bjoern Schiessle 851d478691 add unit tests 2014-08-12 18:10:49 +02:00
Bjoern Schiessle 74a994c561 fix detection of system wide mount points 2014-08-12 17:59:21 +02:00
Lukas Reschke 534336162e Merge pull request #10344 from owncloud/backport-10096-stable6
in case $_POST['itemSourceName'] does not exist we simply default it to...
2014-08-11 21:31:53 +02:00
Thomas Müller 274de5af86 in case $_POST['itemSourceName'] does not exist we simply default it to null 2014-08-11 17:56:36 +02:00
Jean-Louis Dupond 2a34f530b2 backport of #9848
Fix memberOf detection. Fixes: #9835

Conflicts:
	apps/user_ldap/lib/wizard.php

Fix remarks in #9848

Conflicts:
	apps/user_ldap/lib/wizard.php

Fix initializing in #9848

do not change var names here
2014-08-11 17:29:48 +02:00
Frank Karlitschek d046527409 Merge pull request #10315 from owncloud/clarify-encryption-descripti
clearify the use-case of this app
2014-08-10 17:11:31 -04:00
Lukas Reschke e7f9c21fb3 clearify the use-case of this app
Backport of https://github.com/owncloud/core/commit/8a24e1eb9624 to stable7
2014-08-09 22:59:42 +02:00
Jörn Friedrich Dreyer e1a77bdcc9 Merge pull request #9675 from owncloud/stable6-9647
[stable6] Add unit test for multi-user configuration loading
2014-08-09 02:41:33 +02:00
Robin McCorkell 6b38c1de68 Add unit test for multi-user configuration loading 2014-08-08 15:52:22 +02:00
Robin Appelman be07def0af Prevent folder upload causing unexpected behavior 2014-08-07 15:43:38 +02:00
Andreas Fischer 66cccd4e4e Update 3rdparty to replace fpassthru() in Sabre. 2014-08-04 15:15:55 +02:00
Georg Ehrke 2c192a1b76 don't preload videos on public sharing, fixes #10042 2014-07-30 21:12:02 +02:00
Morris Jobke ca29c8bab1 Fix template rendering for 'blank' templates 2014-07-30 10:34:13 +02:00
Thomas Müller f00563c652 remove l10n folder - sync script and transifex config are no longer required on a stable branch 2014-07-29 22:51:15 +02:00
Thomas Müller 3368af82aa remove language es_MX 2014-07-29 22:48:21 +02:00
Vincent Petry a66b2f56b9 Merge pull request #9575 from owncloud/fix-7038
Hack to avoid Agent DN + Password being overwritten by some ugly browser...
2014-07-22 18:25:45 +02:00
Thomas Müller 8d5081f58f Merge pull request #9776 from owncloud/backport-9738-stable6
Backport 9738 stable6
2014-07-22 16:42:31 +02:00
Lukas Reschke f99f48e26a Remove uneeded strip_tags
This `strip_tags` seems to be completely unneeded and will cause problems with passwords containing stripped characters. (e.g. `<` or `>`)

Needs https://github.com/owncloud/core/pull/9735 to be merged first.
2014-07-22 15:43:52 +02:00
Andreas Fischer 6fb60e9d4a Extract Auth Header logic into new function handleAuthHeaders().
Conflicts:
	lib/base.php
2014-07-22 15:43:47 +02:00
Andreas Fischer e8be18a8d8 Deduplicate user/password extraction from alternative HTTP headers. 2014-07-22 15:40:50 +02:00
Vincent Petry 3a27cc5221 Merge pull request #9109 from owncloud/stable6-extstorage-multiplemountpointconfig
[6.0.5] Fix merging of external storage configurations
2014-07-22 15:28:00 +02:00
Vincent Petry a47aad8628 Merge pull request #9717 from owncloud/backport_9668
[encryption] update keys recursively if a folder was moved (oc6 backport)
2014-07-18 15:03:17 +02:00
Andreas Fischer 3e2e766f64 login() must be called after getServerPublicHostKey(). 2014-07-18 13:32:46 +02:00
Bjoern Schiessle 51185c1b53 make sure that we don't connect hooks multiple times 2014-07-18 12:12:32 +02:00
Bjoern Schiessle 6ef2acb82b check that the file proxies are enabled after each test 2014-07-18 10:57:16 +02:00
Bjoern Schiessle 304cf0b90c update keys recursively if a folder was moved 2014-07-18 10:57:16 +02:00
Arthur Schiwon add4ce4319 Hack to avoid Agent DN + Password being overwritten by some ugly browsers with stored site credentials 2014-07-16 19:26:24 +02:00
Vincent Petry 68fa6e6620 Merge pull request #9511 from owncloud/stable6-download-button-public-folder
[stable6] Bring back the download button public folder
2014-07-15 17:36:45 +02:00
Vincent Petry e4b4c6ce6f Merge pull request #9635 from owncloud/stable6-files_external_fix_readData
[stable6 backport] Permit personal mount points to be used for sharing
2014-07-15 17:11:49 +02:00
Robin McCorkell 82be3674c9 Permit personal mount points to be used for sharing
An issue existed where `readData` used `OCP\User::getUser()` to get the user
for personal mount points, which worked in all situations apart from when a
personal mount point was used for sharing, so the return from `getUser()` is
not the user that owns the share. As such, any personal mount points would not
work correctly when shared.

`readData` and `writeData` have been changed from using a `$isPersonal`
boolean to using a `$user` string|null. `$isPersonal = false` can now be
written as `$user = NULL` (or left out in the case of `readData`), and
`$isPersonal = true` can be written as `$user = OCP\User::getUser()`.

Backport of abfd7ec from master
2014-07-15 13:33:23 +02:00
Vincent Petry c3c87b012a Merge pull request #9618 from owncloud/fix_8345
throw exception if file is to large for trash bin
2014-07-15 12:15:25 +02:00
Thomas Müller 2aabe31cb5 append file extension to the temporary file which contains the downloaded archive - in case of zip files fileinfo doesn't seem to return anything reliable 2014-07-14 20:12:40 +02:00
Bjoern Schiessle afa8006d7c throw exception if file is to large for trash bin 2014-07-14 17:29:19 +02:00
blizzz c83c1749ce Merge pull request #9581 from owncloud/backport-9500
Backport of #9500 to stable6
2014-07-11 13:30:22 +02:00
Arthur Schiwon 0477d56f5b do not write to appconfig or preference tables if the value is unchanged 2014-07-11 00:13:52 +02:00
Arthur Schiwon b77298b76d don't trigger update from checkPassword, it is already called by userExists, this is enough. 2014-07-10 23:48:38 +02:00
Vincent Petry d5d55412e1 Merge pull request #9523 from owncloud/stable6-fix-9302-master
[stable6] Upload abortion is now detected within the  OC_Connector_Sabre_File::put...
2014-07-09 17:58:54 +02:00
Thomas Müller a8ec0a7ccc Upload abortion is now detected within the OC_Connector_Sabre_File::put()
OC_Connector_Sabre_AbortedUploadDetectionPlugin is pointless

Adding unit test testUploadAbort()

Backport of ea269f0 from master
2014-07-08 17:28:16 +02:00
Christopher T. Johnson 3c3ebd5cf9 Fix Signiture Does Not Match when mounting Amazon S3 external storage
For some reason the aws-sdk-php package does not caclulate the
signiture correctly when accessing an object in a bucket with a name of
'.'.

When we are at the top of a S3 bucket there is a need(?) to have a directory
name.  Per standard Unix the name picked was '.' (dot or period).  This
choice exercises the aws-sdk bug.

This fix is to add a field to the method to store the name to use instead of
'.' which at this point is hard coded to '<root>'.  We also add a private
function 'cleanKey()' which will test for the '.' name and replace it with
the variable.  Finally all calls to manipulate objects where the path is
not obviously not '.' are processed through cleanKey().

An example where we don't process through clean key would be
	'Key' => $path.'/',

Use correct relationship operator

Per feed back use === instead of ==

use '/' instead of '<root>'
2014-07-08 14:37:55 +02:00
Thomas Müller fca5af206f disable download button if zip download is disabled
Backport of 6e75b37
2014-07-08 10:44:35 +02:00
Jan-Christoph Borchardt bfe76fa9e2 fix position and look of public download button
Backport of 899c7c0 from master
2014-07-08 10:40:50 +02:00
Jan-Christoph Borchardt d9e9191248 remove unneeded header-right details styles
Backport a280a69
2014-07-08 10:39:41 +02:00
Thomas Müller bbc997aa5e remove file name from upper right button
Backport of 003049e from master
2014-07-08 10:26:10 +02:00
Thomas Müller 114ce30153 reintroduce download button on public shares
Backport of df32254 from master
2014-07-08 10:24:14 +02:00
Arthur Schiwon 3bec0dc4f1 Backport of #9156 2014-07-04 15:17:20 +02:00
Björn Schießle b87591a537 Merge pull request #9250 from owncloud/enc_check_if_file_exists_oc6
[encryption] check if file exists (OC6)
2014-07-01 11:15:21 +02:00
Bjoern Schiessle 46ade71b5a improved error message 2014-06-30 16:32:20 +02:00
Bjoern Schiessle 22cef86b91 unit tests 2014-06-27 23:13:28 +02:00
Bjoern Schiessle cf46391f7c check if file exists before deleting keys, and add debug output for every
delete operation
2014-06-27 23:13:28 +02:00
Vincent Petry ff8cd422b5 Merge pull request #9251 from owncloud/enc_always_find_mount_point
[encryption] make sure that we always detect the system wide mount point
2014-06-27 16:49:01 +02:00
Bjoern Schiessle e8167999dc normalize path before comparison to make sure that we always find the mount point 2014-06-27 12:20:29 +02:00
Björn Schießle e14e4f1dc4 Merge pull request #9173 from owncloud/enc_always_use_oc_filesview_oc6
[encryption] always use oc filesview, backport for OC6
2014-06-26 15:11:55 +02:00
Morris Jobke 28eabc15bf Merge pull request #9219 from owncloud/stable6-trashwarning
[stable6] Fix trashbin warnings in logs
2014-06-26 13:40:33 +02:00
Vincent Petry a609d5e031 Do not retrieve storage stats for trash bin 2014-06-26 10:56:18 +02:00
Vincent Petry da7641c232 Remove etag warning in trashbin
When previews are available, the etag attribute is used for the icon.
But when none is set, a warning is shown.

This fix uses the timestamp as a dummy etag.
2014-06-26 10:50:59 +02:00
Morris Jobke 2e264b3a02 Merge pull request #9197 from owncloud/fix_dir_seperator_oc6
always use '/' as dir seperator
2014-06-25 11:03:29 +02:00
Bjoern Schiessle 9a44862979 always use '/' as dir seperator 2014-06-24 18:45:22 +02:00
Frank Karlitschek e4fb6d536b 6.0.4 2014-06-24 09:44:53 -04:00
Bjoern Schiessle 46cc6f5747 always use a \OC\Files\View 2014-06-23 22:06:50 +02:00
Bjoern Schiessle b66d3632ea always use oc filesystem for rename operation 2014-06-23 17:44:05 +02:00
Frank Karlitschek feca3d0ea9 Merge pull request #9075 from owncloud/autosetup-trusteddomains
trusted domains shall not be ignored on autosetup
2014-06-20 16:56:37 -04:00
Arthur Schiwon 6eb39f2194 Backport subset of #4179, re-established Oracle compatibility for LDAP 2014-06-20 20:47:51 +02:00
Vincent Petry 26ded10052 Fix merging of external storage configurations
Merging of configurations is whenever the same config is available for
multiple users/groups, in which case the config is considered as a
single one by the UI, and shows multiple users/groups selected.

Fixed merging logic to make sure that class, mount point and options are
the same before merging them.

Fixed merging to work correctly when the same mount point path is used
for separate users and configs. These are now correctly shows in the UI
as separate entries.

Backport of e002b72 from master
2014-06-19 18:26:12 +02:00
Arthur Schiwon 267c0ff567 trusted domains shall not be ignored on autosetup 2014-06-17 23:15:32 +02:00
blizzz 4b843dfcd1 Merge pull request #9002 from owncloud/ldap_wizard_pagedsearch
LDAP Wizard: get correct total no of users, groups and complete list of groups on big setups
2014-06-17 10:04:57 +02:00
Frank Karlitschek 508d84dcd8 6.0.4 beta 1 2014-06-17 08:48:46 +02:00
Arthur Schiwon 58d04d1772 remove unused vars; increase scrutinizer happiness 2014-06-16 17:52:12 +02:00
Arthur Schiwon 9caa354cfc simplify two methods a bit, because they are not used for group search anymore 2014-06-16 17:52:12 +02:00
Arthur Schiwon 0ba9a6b73d make all this work in an early configuration state in the wizard by marking the config active and ignoring the validation state. 2014-06-16 17:51:31 +02:00
Arthur Schiwon c491fa272e Wizard: get really all groups from LDAP by power of Paged Search 2014-06-16 17:51:31 +02:00
Arthur Schiwon e23e459c41 fix PHPdoc 2014-06-16 17:51:31 +02:00
Arthur Schiwon 78feb6514b consolidate requirement check 2014-06-16 17:51:31 +02:00
Arthur Schiwon 1c634ab772 LDAP Wizard: count users and groups with the power of paged search 2014-06-16 17:51:31 +02:00
Arthur Schiwon 53e036e5c0 add method to count groups on LDAP 2014-06-16 17:51:31 +02:00
Arthur Schiwon f56a9c08f8 fix PHPdoc 2014-06-16 17:51:31 +02:00
blizzz 659a3d4a37 Merge pull request #8623 from owncloud/fix-8457
LDAP: fix possible infinite loop, that causes hanging wizard, fixes #8457
2014-06-16 17:42:46 +02:00
Lukas Reschke 3d26896431 Merge pull request #9033 from owncloud/validate-dire
Add deprecation notice to load* functions
2014-06-16 16:20:21 +02:00
Vincent Petry f6c970e214 Merge pull request #9008 from owncloud/repair-parent-stable6
Repair broken parent link in the scanner - stable6
2014-06-16 15:00:22 +02:00
Robin Appelman 84222e30a7 Fix unit test 2014-06-16 13:37:08 +02:00
Lukas Reschke 81fc7cfb21 Add deprecation notice to load* functions
This functions are deprecated and/or removed since ownCloud 7. Additionally a issubdirectory check has been added here to prevent developers to use this function in a potentially insecure way.

Please review @karlitschek and others. Backport to stable5 and master requested.
2014-06-14 11:05:12 +02:00
Morris Jobke 04817fb0f3 Merge pull request #9015 from owncloud/stable6-downloadwithdisabledzip
[stable6] Fix public download link when zip download is disabled
2014-06-13 13:09:41 +02:00
Vincent Petry bca536eb3d Merge pull request #8988 from owncloud/stable6_fix_encryption
Stable6 fix encryption
2014-06-13 10:31:18 +02:00
Morris Jobke 64534546be Merge pull request #9016 from owncloud/stable6-maxheartbeatinterval
[stable6] Added max heartbeat interval to prevent integer overflow
2014-06-13 00:19:36 +02:00
Vincent Petry 00ec5fc193 Added max heartbeat interval to prevent integer overflow
When using big session timeout values, the interval value might overflow
and cause the setInterval() call to ping the server in a loop without
any delay.

This fix adds a maximum ping interval of 24 hours.
2014-06-12 18:27:21 +02:00
Vincent Petry 8ef1542ad0 Fix public download link when zip download is disabled
When zip download is disabled, the public download action defined in
public.js is overridden by the one in fileactions.js because of the JS
loading order.

This quick fix prevents the override to happen when a download action is
already defined.

There are additional changes that were required to make the download
action icon work when registered from the public page.
2014-06-12 17:29:55 +02:00
Robin Appelman eeca726d28 remove unused argument 2014-06-12 15:07:05 +02:00
Robin Appelman e793a87954 add some comments 2014-06-12 15:06:01 +02:00
Robin Appelman 6e0a218d11 Repair broken parent link in the scanner 2014-06-12 15:05:45 +02:00
Jörn Friedrich Dreyer b2fae8a8b7 Fix copy conflict dialog translation
backport of fileexist template translations
with minor fixes
2014-06-11 20:25:10 +02:00
Bjoern Schiessle 193d237b56 fix rename of encryption keys 2014-06-11 18:38:20 +02:00
Vincent Petry 4bc091965f Merge pull request #8970 from owncloud/cache-change-propagator-stable6
Cache change propagator stable6
2014-06-10 17:17:35 +02:00
Robin Appelman 3ea94a7930 Fix unit tests 2014-06-10 16:32:46 +02:00
Robin Appelman 129bfad204 Fix size calculation during recursive scan 2014-06-10 16:24:08 +02:00
Robin Appelman 4d7e1c568c Fix unit tests 2014-06-10 16:24:00 +02:00
Robin Appelman f36e354a42 Fix recursive scanning 2014-06-10 16:20:59 +02:00
Robin Appelman 81f6e78c0c propagate changes in the scanner 2014-06-10 16:20:51 +02:00
Robin Appelman a543f46699 Split of cache writes in the scanner to their own methods 2014-06-10 16:20:48 +02:00
Robin Appelman 2895261102 Add a change propagator class to handle propagating etag and mtime changes 2014-06-10 16:16:46 +02:00
Thomas Müller 2911906586 Merge pull request #8885 from owncloud/flock-stable6
[stable6][WIP] Move Flock basics into stable6
2014-06-06 17:58:08 +02:00
Thomas Müller 909913d581 fix failing unit test 2014-06-06 15:48:02 +02:00
Jan-Christoph Borchardt edced60ed4 keep long file names in one line to not overflow download button on mobile 2014-06-06 15:35:12 +02:00
Jan-Christoph Borchardt 45d165405f add max-width to directLink input to prevent overflow 2014-06-06 15:34:36 +02:00
Robin Appelman e98627d6ab Dont backport unit tests for code that isn't backported 2014-06-05 16:48:04 +02:00
Thomas Müller a4c422a6da added missing LockNotAcquiredException 2014-06-05 16:48:03 +02:00
ringmaster 6ec29711fc Continued flock work.
add actual locking and log changes necessary for debugging.

Simpler log unique id.

Respect locked files, surface correct exception.

Conflicts:
	lib/private/connector/sabre/file.php

Remove unused methods.

Conflicts:
	lib/private/files/storage/local.php

Fix typo

Fix typo

Removed unused vars/declarations, update PHPDoc.

Don't error out on console.

Move Lock to private namespace, add interface. Update PHPDoc.

Restore the reference to this used exception class.

make sure to close the stream at the end of each test

Normalize lock exception messages.

don't ask for fileInfo if we already have one

Conflicts:
	apps/files_encryption/lib/proxy.php

name the storage wrapper to make sure that we don't apply the wrapper multiple times

Conflicts:
	lib/private/util.php

fix unit test after adding the additional parameter to addStorageWrapper()

only lock if unlink is called for a file

Can't use assertInstanceOf on wrapped storage; use assertTrue(instanceOfStorage() instead.

Conflicts:
	tests/lib/files/filesystem.php

Use ->instanceOfStorage() not instanceof for Storage instances.

Conflicts:
	lib/private/helper.php

get the storage from the view

Conflicts:
	apps/files_encryption/tests/webdav.php

workaround to get the unit test going

Conflicts:
	apps/files_encryption/hooks/hooks.php

Added isLocal() method to storage, used for xsendfile

Added isLocal() method to Storage to find out whether the storage is
local or not.
This method is used for the x-sendfile logic to find out whether to add
the headers.

Conflicts:
	lib/private/files.php

Add ->instanceOfStorage to handle instanceof for storage wrappers

Conflicts:
	lib/private/files/storage/common.php
	lib/private/files/storage/wrapper/wrapper.php
	lib/public/files/storage.php

Use instanceOfStorage instead of instanceof

Conflicts:
	lib/private/files.php

Fix storage wrapper being called with null

Pass any methods custom to specific storage implementations to the wrapped storage

remove duplicate declaration of isLocal()

remove file locking - code will continue to live in it's own app
2014-06-05 16:47:37 +02:00
Vincent Petry 49f2955119 Merge pull request #8870 from owncloud/storage-instanceof-stable6
Add storage->instanceOfStorage() - stable6
2014-06-05 11:16:08 +02:00
Robin Appelman b62ba9808a Pass any methods custom to specific storage implementations to the wrapped storage 2014-06-04 14:30:40 +02:00
Robin Appelman f814b9a23c Fix storage wrapper being called with null 2014-06-04 14:30:17 +02:00
Robin Appelman b3c8b574df Use instanceOfStorage instead of instanceof 2014-06-04 14:29:55 +02:00
Robin Appelman 79b953a920 Add ->instanceOfStorage to handle instanceof for storage wrappers 2014-06-04 14:17:52 +02:00
Thomas Müller d3445d9668 Merge pull request #8847 from owncloud/stable6_backport_8557
Stable6 backport of #8557
2014-06-04 10:26:59 +02:00
Thomas Müller e5dcec75ba Merge pull request #8850 from owncloud/stable6_backport_8607
[backport] [stable6] Skip filescan but execute hooks
2014-06-04 09:34:39 +02:00
ringmaster a908e281e7 [backport] [stable6] Skip filescan but execute hooks
Backport of #8607
2014-06-03 10:52:12 -04:00
ringmaster 2910486979 Allow apps to create custom session handlers. 2014-06-03 10:20:42 -04:00
blizzz 58b6b89ec4 Merge pull request #8579 from owncloud/ldap_nail_filter_on_upgrade
LDAP: fix filter can be reset and broken after upgrade from OC 5
2014-06-02 12:02:15 +02:00
Frank Karlitschek 8758b66fc4 Merge pull request #8672 from owncloud/stable6-obfuscatepasswords
[backport] [stable6] Added password obfuscation for external storage config
2014-06-02 11:56:36 +02:00
Thomas Müller 8429dde4d9 Merge pull request #8692 from owncloud/fix_unit_tests_oc6
fix failing unit tests on OC6
2014-05-28 17:44:40 +02:00
Arthur Schiwon 37ef48d9f4 simpler and better readable assignment 2014-05-28 17:24:04 +02:00
Thomas Müller 776d656ea9 Merge pull request #8683 from owncloud/log-upload-error-stable6
Log upload error stable6
2014-05-28 13:07:18 +02:00
Thomas Müller d17335d7a8 fix expectation - same as in master 2014-05-27 23:44:09 +02:00
Jan-Christoph Borchardt 84b239f123 reduce multiselect max-width from 400 to 200px to not take too much space 2014-05-27 14:32:23 +02:00
Bjoern Schiessle ab3b713c23 don't expect depreciated OC_FilesystemView 2014-05-23 15:13:59 +02:00
Thomas Müller 1eedab7f6e php upload errors are written to log 2014-05-23 11:45:35 +02:00
Vincent Petry 9a5da34721 Added password obfuscation for external storage config
Added obfuscation for all "password" options from external storages.
Added more ext storage unit tests config.
Added unit tests for reading/writing the configuration.
Added IV for ext storage password encryption
Moved the mounting code for external storage from
OC\Filesystem::initMountPoint to files_external using the post_initMountPoints hook
Fixed ext storage unit test for groups

Squashed backport of 2c561c9c50 from
master.
2014-05-22 12:29:15 +02:00
Bjoern Schiessle 6f29e1c67b only start migration if the encryption was initialized; allow to overwrite keys if no files exists 2014-05-21 17:36:39 +02:00
Arthur Schiwon 516f75fc6b add unit test to make sure the infinite loop never comes back 2014-05-16 18:03:40 +02:00
Arthur Schiwon 9f405339d6 set result entry identifier earlier, i.e. before a continue for the same level can happen. otherwise will always get the same value and we end up in an infinite loop 2014-05-16 18:03:15 +02:00
tomneedham 419e0354d5 Only accept success as 100 like the OCS spec does 2014-05-14 19:24:08 +00:00
Arthur Schiwon 313324a7b4 bump version and don't overwrite values on next update if not necessary 2014-05-14 13:27:23 +02:00
Arthur Schiwon c18f2943d5 get the correct version number for compare -.- 2014-05-14 12:01:41 +02:00
Vincent Petry 0c355cb1fb Fixed getAbsolutePath case when path is "0"
Make sure to correctly check for string emptiness when the passed path
is "0".

Backport of bab8c1f from master
2014-05-13 21:17:33 +02:00
Arthur Schiwon 68434510bd LDAP: set filter mode to raw, so filters will not be changed and broken after upgrade from oc5, when visiting the LDAP settings and opening filter tabs 2014-05-13 17:47:00 +02:00
Lukas Reschke 1e6b4576c2 Harden issubdirectory()
realpath() may return false in case the directory does not exist since we can not be sure how different PHP versions may behave here we do an additional check whether realpath returned false
2014-05-12 09:10:35 +02:00
Vincent Petry 8c1eff8f52 Merge pull request #8521 from owncloud/stable6-shareextstoragemountpointfix
[stable6] Fix sharing of ext storage mount points
2014-05-09 16:57:53 +02:00
Vincent Petry 37e29169e0 Fix getPathById for Oracle
Added extra code to handle the case of Oracle which saves empty strings
as null values.

Backport of 05dc694 from master
2014-05-09 14:37:26 +02:00
Vincent Petry b91e3be5de Added unit test for sharing ext storage mount points
Backport of f73a168 from master
2014-05-09 14:37:16 +02:00
Vincent Petry 113cd404c0 Fix sharing of ext storage mount points
When sharing an ext storage mount point, it will now use the name of the
mount point instead of an empty string for the target path.

Backport of 28f0e63 from master
2014-05-09 14:37:07 +02:00
Robin Appelman d2dbab21fb Fix getPath for storage roots 2014-05-07 21:51:10 +02:00
Vincent Petry a152f3a50f Added PostgreSQL version warning + log on upgrade
Backport of 3cd09f2, a25b86a, 6bfeb34 from master
2014-05-07 12:15:55 +02:00
Morris Jobke c341a971f8 fix getUserFolder() of server container 2014-05-05 23:09:06 +02:00
Georg Ehrke 1d2dc9b685 fix issue with spamming logging files when loading cached thumbnail
Conflicts:
	lib/private/preview.php
2014-05-05 16:04:05 +02:00
Bjoern Schiessle 4e1d57e815 always encrypt files to owner 2014-05-05 12:05:36 +02:00
Fabian Henze 76cdd85cd9 Add unit tests for OC_Helper::phpFileSize function 2014-05-03 13:04:10 +02:00
Fabian Henze 6f8a24c2cd Fix setting the max-upload-size for really large values.
php can only parse filesize units up to gigabytes, not terabytes or petabytes.
2014-05-03 13:03:59 +02:00
Frank Karlitschek 835025e569 6.0.3 2014-04-29 02:38:18 +02:00
Lukas Reschke 821ad6ad41 Merge pull request #8389 from owncloud/reset-3rdparty-stable6
Update 3rdparty
2014-04-28 22:25:43 +02:00
Thomas Müller 3fe45b1d4c Update 3rdparty 2014-04-28 20:38:48 +02:00
Thomas Müller 86757cdb45 Merge pull request #8384 from owncloud/kill_office_fallback_stable6
backport b68098ebba to stable6
2014-04-28 20:29:06 +02:00
Volkan Gezer 65ea07fc54 Update outdated comment 2014-04-28 20:24:17 +02:00
Georg Ehrke a3d93f0ba1 backport b68098ebba to stable6 2014-04-28 15:42:48 +02:00
Lukas Reschke 283a8b9624 Clarify the trusted_domain error page
Backport of https://github.com/owncloud/core/pull/8372
2014-04-27 18:34:35 +02:00
Lukas Reschke dacacacc4f Revert "Clarify the trusted_domain error page"
This reverts commit 4f9a5c9d3c.
2014-04-27 18:33:50 +02:00
Lukas Reschke 4f9a5c9d3c Clarify the trusted_domain error page
Conflicts:
	lib/base.php
2014-04-27 18:32:28 +02:00
Lukas Reschke e5def25f40 Add another example to the trusted_domains config
Users often ask in IRC or the forum how to add another domain.
Hopefully they will be able to find it out on their own if we have an example with two domains.
2014-04-26 23:13:48 +02:00
Morris Jobke 2c92ef9e64 Merge pull request #8365 from owncloud/stable6-external-storage-css-fix
fix layout of external storage config table
2014-04-26 10:34:36 +02:00
Morris Jobke 16ae62f246 fix layout of external storage config table
Conflicts:
	apps/files_external/css/settings.css
2014-04-26 00:45:45 +02:00
Frank Karlitschek 53df9c93c4 6.0.3 RC1 2014-04-23 16:49:44 +02:00
blizzz 14c95086a9 Merge pull request #7745 from owncloud/fix_6946_stable6
Group Database backend must not gather user details itself but ask user backends, fixes #6946 in stable6
2014-04-23 16:30:26 +02:00
Lukas Reschke 4696b06060 Merge pull request #8261 from owncloud/stable6-backport-8182
Backport of #8182
2014-04-23 14:37:07 +02:00
Arthur Schiwon 0a9487ec80 fix after rebase 2014-04-23 13:55:21 +02:00
Arthur Schiwon fcffccf018 keep the constant to not provoke PHP warnings 2014-04-23 13:35:01 +02:00
Arthur Schiwon 72b90816fa trim must not be used in empty in PHP < 5.5 2014-04-23 13:35:00 +02:00
Arthur Schiwon 6aeb5996b6 test for group manager's displayNamesInGroup 2014-04-23 13:35:00 +02:00
Arthur Schiwon af45da94b3 adjust user manager tests 2014-04-23 13:35:00 +02:00
Arthur Schiwon f93ab1105f implement getDisplayNames in group manager 2014-04-23 13:35:00 +02:00
Arthur Schiwon 637aa56197 remove now unnecessary test 2014-04-23 13:34:56 +02:00
Arthur Schiwon 649233e54c clean up group backends 2014-04-23 13:34:56 +02:00
Arthur Schiwon 8d00f1ca1f LDAP: getDisplayNamesInGroup is not an option for group backends anymore 2014-04-23 13:34:56 +02:00
Arthur Schiwon 60edf98c15 remove OC_GROUP_BACKEND_GET_DISPLAYNAME option for group backends 2014-04-23 13:34:56 +02:00
Thomas Müller 1041617a4e Merge pull request #8260 from owncloud/stable6-backport-8183-and-co
Backport of #8183 and #8197
2014-04-23 12:04:09 +02:00
ben-denham a314508543 Backport of #8164
Added improved version of patch by @blizzz in https://github.com/owncloud/core/issues/6651#issuecomment-32261257 to stop filter settings from being reset under a race condition.

Moved LdapFilter into a separate js file in user_ldap.

Changed conditions in user_ldap's ldapFilter.js to use ===, fixed indentation.

fix comparison in determineMode, fixes problems with restoring the filter mode (assisted or manually) on page refresh

Give hint when composing filter failed

fixing some JSHint warnings
2014-04-23 11:21:28 +02:00
Thomas Müller 74241140d2 Update 3rdparty submodule 2014-04-22 23:59:03 +02:00
Lukas Reschke d3a15b6b07 Check whether the user has permissions to add personal storage backends
Quick’n dirty back port of #8182 - master has a better fix but that
should be good enough…

missing return - OCP\JSON::success does not terminate the PHP process - which is good ;-)

Use error instead of success

Revert "Use error instead of success"

This reverts commit e2d5535a5aa436c3896e46f0b9e8ff1bd5640d4d.

Use error instead of success
2014-04-22 23:20:32 +02:00
blizzz 1403a85950 Merge pull request #8232 from owncloud/fix_8135
LDAP: optimize retrieval of displaynames, fixes #8135
2014-04-22 18:35:47 +02:00
Bernhard Posselt 130f2419f5 Merge pull request #8265 from owncloud/appframework-fix-backports
Appframework fix backports
2014-04-18 22:29:57 +02:00
Bernhard Posselt a53ec9ebeb merge middleware string registration 2014-04-18 16:17:58 +02:00
Bernhard Posselt 33bdab1618 use references for middleware to fix problems on 5.3 2014-04-18 16:14:46 +02:00
Bernhard Posselt 3405342ab6 merge dicontainer 2014-04-18 16:14:44 +02:00
Bernhard Posselt 980b11f096 default to GET request when no method is set to fix unittests, also set parsed json parameters on the post attribute 2014-04-18 16:13:10 +02:00
Bernhard Posselt 22485fe743 Correctly process request parameters other than GET or POST, dont use globals in the class but inject it 2014-04-18 16:13:01 +02:00
Lukas Reschke a7bc716b95 Merge pull request #8259 from owncloud/backport-7682-6
Backport #7682
2014-04-18 11:36:59 +02:00
Lukas Reschke 9b36224bd4 Backport of #8197 to stable6
This extends mimetypes.list.php to be a white-list of known secure mime
types as well as offering secure alternatives for know potentially
malicious mime types.
I kept this in the OC_Helper and OC\Files\Type\Detection classes as
each backend has its own way of detecting mime types.

This supersedes #8184 as discussed in owncloud/security-tracker#56
2014-04-18 11:19:47 +02:00
Lukas Reschke 9f1788f202 Backport of #8183 to stable6
Some headers were currently only added to the templates but not to
other components (e.g. SabreDAV / JSON / etc...)
The migration to base.php ensures that the headers are served to all
requests passing base.php
2014-04-18 11:13:47 +02:00
Lukas Reschke a30040411c Backport of #7682 to stable6 2014-04-18 10:36:04 +02:00
Lukas Reschke c4d4065dc2 Use JS as content-type due to mimesniffing 2014-04-17 17:15:35 +02:00
Robin Appelman d4be12ab21 Verify that a file exists before we share it 2014-04-17 12:32:52 +02:00
Arthur Schiwon 02de48e1ba add additional comments, PHPdoc and check whether it's really applicable 2014-04-16 17:16:51 +02:00
Arthur Schiwon 97d6db966c LDAP: cache display names immediately on retrieval, saves tens of unecessary queries to LDAP server in the share dialog for example 2014-04-16 12:56:08 +02:00
Arthur Schiwon cf2fc58c65 Backport of PR #7815, correct LDAP user count on setup with many users
(occ user:report)

LDAP: make sure cache key for paged result cookie matches when limit or offset is null or 0

LDAP: fix user report i.e. count for LDAP servers with really many users

initialize variable

var count is assigned in the inner loop so it must be checked inside there to be properly used as part of the exit condition of the outer loop

Put inner loop into own method, let's see whether it makes scrutinizer happier
2014-04-16 11:15:16 +02:00
Arthur Schiwon e1b1ce684d adjust tests accordingly 2014-04-15 19:16:02 +02:00
Arthur Schiwon 793f20d728 Remove limit and offset manipulation when getting users or groups, because it does not work when more than one user or group backend. Fixing it would be too costly performancewise, so we switch back to the model used in OC 5: limit and offset are effective per backend, and not a general constraint 2014-04-15 19:15:55 +02:00
blizzz 15ebb4b8ad Merge pull request #8166 from owncloud/ldap_update_email
Also check for email address on userExists (next to Avatar and Quota)
2014-04-14 10:23:57 +02:00
Arthur Schiwon 80a294b334 LDAP: fetch email from LDAP on userExists check as well (along to Quota and Avatar) 2014-04-11 18:33:58 +02:00
Thomas Müller 6636c14c2a Merge pull request #8150 from owncloud/backport-8138-stable6
To isolate the variable scope used inside the $file it is required in i...
2014-04-11 12:30:18 +02:00
Bernhard Posselt bf898f90bc Merge pull request #8151 from owncloud/backport-8137-stable6
add requirements to routing
2014-04-10 21:34:57 +02:00
Bernhard Posselt de7a3861f3 Merge pull request #8119 from Raydiation/stable6
Remove dependency on container, removing service locator antipattern
2014-04-10 19:41:10 +02:00
Vincent Petry d4951c68f3 Fixed Sabre Node implementation to correctly return timestamps as int
Negative timestamps were returned as string and were confusing other

Sabre API like Sabre_DAV_Property_GetLastModified.

This fix makes sure the timestamp is returned as int when defined.

Backport of 4f11786 from master
2014-04-10 17:46:36 +02:00
Vincent Petry 85e90c33fc Merge pull request #8148 from owncloud/backport-6676-stable6
Disabled internet checking as mentioned when in proxy mode
2014-04-10 17:28:00 +02:00
Bernhard Posselt 22632a227c Update controller.php
Backwards compability fix for faster merge ;)
2014-04-10 16:43:57 +02:00
Bernhard Posselt fc8004d335 add requirements to routing
Conflicts:
	tests/lib/appframework/routing/RoutingTest.php
2014-04-10 16:25:44 +02:00
Thomas Müller 2149670328 fix code formatting 2014-04-10 16:20:42 +02:00
Thomas Müller 2741eb1fe3 To isolate the variable scope used inside the $file it is required in it's own method - refs #8138 2014-04-10 16:15:04 +02:00
Joan b09614b61b Disabled internet checking as mentioned when in proxy mode 2014-04-10 15:48:04 +02:00
Morris Jobke 2257ae987f Merge pull request #8123 from owncloud/fix_filename_closing_tag
fix double closing </a> for filenames
2014-04-09 13:41:08 +02:00
Arthur Schiwon 88949d7f94 Backport of PR #7837 to stable6
LDAP Wizard: when determining objectclasses, we realy do not need to look at every entry. Fixes #7530

Conflicts:
	apps/user_ldap/lib/wizard.php

Fix wildcard handling and check even less DNs per filter, enough will be looked at anyway

Use the LDAP wrapper for checking resources, needs for proper testing

fix potential infinite loop when the DN of the first entry was already read.

add tests for cumulativeSearchOnAttribute

make tests work on systems without php5_ldap

define var

add comment to clearify when a skip in the foreach happens
2014-04-09 12:45:36 +02:00
Jörn Friedrich Dreyer e34d00a958 fix double closing </a> for filenames 2014-04-09 11:23:57 +02:00
Bernhard Posselt 6b15731bfe Remove dependency on container, removing service locator antipattern 2014-04-08 22:48:57 +02:00
Vincent Petry be30728bc2 Fixed chunking and insufficient storage check
- fixed free space detection based on the already uploaded chunks
- now deleting chunks as soon as it is read out before writing it into
  the part file, which reduces the space needed when assembling part
files

Backport of 4033eba from master
2014-04-07 09:48:07 +02:00
Vincent Petry d34e1b524a Do not expire chunks while checking for their existence
The expiration should be done by the gc() function on login, not while
isComplete() is calling hasKey() for every chunk.

Backport of ab56f69416 from master
2014-04-04 17:17:53 +02:00
blizzz 3debb33346 Merge pull request #8038 from owncloud/fix_8028
Meanwhile, the quota value is stored human-readable in the DB
2014-04-04 16:34:48 +02:00
Robin Appelman 79635ccb41 Add bindParam to statement wrapper 2014-04-04 15:12:51 +02:00
Robin Appelman d8097b48ea fix unit tests 2014-04-04 13:07:14 +02:00
Thomas Müller 1116455b3f Merge pull request #8037 from owncloud/fix-7216
authentication apps need to be loaded in any case - fixes #7216
2014-04-03 23:05:41 +02:00
Arthur Schiwon 09802ac217 Meanwhile, the quota value is stored human-readable in the DB 2014-04-03 20:51:05 +02:00
Thomas Müller 984586c20a authentication apps need to be loaded in any case - fixes #7216 2014-04-03 20:47:38 +02:00
Robin Appelman a591160c32 use a non-recursive chmod on the datadir 2014-04-03 13:42:35 +02:00
Robin Appelman 6dd3215eae Improve phpdoc 2014-04-03 13:27:09 +02:00
Robin Appelman e96c365054 Implement getPath for shared files 2014-04-03 13:27:01 +02:00
Robin Appelman 2150cac956 Give storages the option to implement the getById behaviour for View->getPath 2014-04-03 13:26:54 +02:00
blizzz 096b4d8b1b Merge pull request #7931 from owncloud/fix_7785_stable6
LDAP: Read email and quota when mapping user, fixes #7785
2014-04-02 19:24:22 +02:00
Volkan Gezer 47e3e73c8f Fix admin-dir_permissions redirection when cannot write warning
is shown.
2014-04-02 14:51:06 +02:00
Arthur Schiwon 519ab3a9c8 more precise php doc 2014-04-02 11:01:29 +02:00
Arthur Schiwon 5df99d3e61 add PHP docs 2014-04-01 21:57:01 +02:00
Jan-Christoph Borchardt bd5eec7bb7 general styles for the content area 2014-04-01 18:55:37 +02:00
Rodrigo Hjort 2086e80e4d Correction: failure on sharing when user ID was prefixed by zero
Backport of 51b727c from master
2014-04-01 18:42:10 +02:00
Vincent Petry f84168253b Merge pull request #7976 from owncloud/fix-7973-stable6-2
remove pl_PL - fixes #7973
2014-04-01 18:41:33 +02:00
Thomas Müller a390bd2e73 Revert "remove Sabre_DAV_Browser_Plugin"
This reverts commit e4104e63d9.
2014-04-01 13:42:58 +02:00
Thomas Müller 456f02b476 remove pl_PL - fixes #7973 2014-03-31 18:10:12 +02:00
Bjoern Schiessle 027de54558 don't write file if opening a stream to encrypt the data fails 2014-03-28 15:00:27 +01:00
Arthur Schiwon 7dd34b1212 LDAP: Read email and quota when mapping user, fixes #7785 2014-03-28 12:18:24 +01:00
Jörn Friedrich Dreyer 24274acd6a don't block php session while download is in progress 2014-03-28 11:41:58 +01:00
Morris Jobke 5099caa55a Merge pull request #7901 from owncloud/fixed_position_ocdialogdim
prevent dimmed ocdialog div from scrolling
2014-03-28 02:43:08 +01:00
Vincent Petry 17e5c03a02 Fix swift touch operation
The touch() operation now uses "UpdateMetadata()" instead of "Update()"
which doesn't clear the object's contents.

This fixes syncing, as the sync client needs to use touch to update the
object's mtime.

Backport of 2a08e35 from master
2014-03-27 18:39:57 +01:00
Vincent Petry a31b37e733 Fixed mtime reading from OpenStack API
The API seems to return floating point values, which prevents
the hasUpdated() check to work and causes the scanner to rescan
everything every time.

Backport of fa00a18 from master
2014-03-27 17:59:39 +01:00
Jörn Friedrich Dreyer 35e4784202 prevent dimmed ocdialog div from scrolling 2014-03-26 17:48:33 +01:00
Thomas Tanghus f464620a65 Fix 'Undefined variable: message' in OCP\Util::logException 2014-03-25 18:07:07 +01:00
Arthur Schiwon 2d639b83ab add test for cloning and keeping configuration seperate 2014-03-21 18:03:05 +01:00
Arthur Schiwon 406747ab30 Use array_key_exists instead of isset, because the latter returns false if the assigned value is null 2014-03-21 18:02:59 +01:00
Arthur Schiwon b41c1d7655 On clone create a new instance of the Configuration
To avide effects on the original instance of Connection when the clone
is modified, for instance on authentication checks.
2014-03-21 18:02:53 +01:00
Vincent Petry b10b8a470b Fixed warning when browsing Shared folder
The virtual "Shared" folder doesn't have an unencrypted_size field.
This fix adds a check to prevent warnings in the log.

Backport of 022d76c from master
2014-03-21 17:56:56 +01:00
Thomas Müller 23ffdcc314 Merge pull request #7840 from owncloud/fix/7839
fixing wrong html close tags
2014-03-21 12:54:55 +01:00
Vincent Petry ffdbdf7496 Merge pull request #7834 from owncloud/stable6-quota-usequotaevenwhenfreespaceunknown
[stable6] [backport] Still return quota value when free space is unknown
2014-03-21 12:29:19 +01:00
Thomas Müller df636371a7 fixing wrong html close tags 2014-03-21 12:15:02 +01:00
Robin McCorkell ceff4dae61 Fix duplicate ipauniqueid 2014-03-21 11:30:00 +01:00
Robin McCorkell 540d4af8a7 Add FreeIPA UUID compatibility, fixes #7796
Ability to use ipauniqueid for the UUID of a user
2014-03-21 11:29:50 +01:00
Vincent Petry bb995c53c5 Still return quota value when free space is unknown
Fixed the quota storage wrapper to correctly return the quota value
when the free space is not known (which usually happens when the
disk_free_space function is disabled)

Backport of 66bc0f0 from master
2014-03-21 10:25:43 +01:00
Vincent Petry eacb4b3f3e Return unencrypted_size of folder when queried
This fixes the "used space" to be based on the unencrypted size, not
encrypted size, to be consistent with how quota/space is handled when
encryption is enabled
2014-03-21 10:23:56 +01:00
Vincent Petry a70b99ff62 Propagate unencrypted_size up to the file cache root 2014-03-21 10:23:48 +01:00
Vincent Petry 2c2fd5f3a0 Merge pull request #7819 from owncloud/stable6-datafolderexistence
[stable6] [backport] Added .ocdata file to check for data folder validity
2014-03-20 15:28:33 +01:00
Vincent Petry 288c40e2a6 Increase version to trigger upgrade related to .ocdata 2014-03-20 11:51:54 +01:00
Vincent Petry d85d3a4493 Return 503 when a config/data dir error exists
Backport of b619ff6 from master
2014-03-20 11:51:14 +01:00
Vincent Petry a1c0c5e1a2 Added .ocdata file to check for data folder validity
In environments where the data folder is mount from another partition,
it is important to check that the data folder we see is actually the
real one. If the mount failed for some reasons, this fix will make
ownCloud temporarily unavailable instead of causing unpredictable
behavior.

Backport of 3c46dcd from master
2014-03-20 11:50:53 +01:00
Robin McCorkell 6ccc8173d3 Fix smb4php to work with home shares
Stat'ing a share with url_stat now checks if the user can run 'ls' in that share rather than checking if the share is listed by the server. This means that OwnCloud can now mount user home shares, which are never listed by the server.
2014-03-18 21:37:14 +01:00
Vincent Petry 2cb342c3b8 Display admin option for public upload with encryption enabled
Now that public upload works with encryption, the admin option to toggle
it must be made visible.

Backport of b75ca9f from master
2014-03-18 13:15:50 +01:00
Vincent Petry 58db31e61e Added warning for trusted_domains after CLI upgrade
If trusted_domains is not set after a CLI upgrade, show a warning in the
output.

Backport of 1a11682 from master
2014-03-17 14:27:19 +01:00
Bjoern Schiessle 30cca2524f finally fix the paths for the OCS Share API 2014-03-13 20:28:08 +01:00
Vincent Petry 53ad7ebfea Merge pull request #7690 from owncloud/backport-7683-stable6
Backport 7683 stable6
2014-03-13 11:41:46 +01:00
Thomas Müller bff2c20fce Merge pull request #7701 from owncloud/backport-7681-stable6
remove Sabre_DAV_Browser_Plugin
2014-03-13 09:42:28 +01:00
Thomas Müller e4104e63d9 remove Sabre_DAV_Browser_Plugin 2014-03-12 23:56:28 +01:00
Vincent Petry bc5145e267 Merge pull request #7698 from owncloud/backport_7631
only enable drag&drop upload if public upload is allowed
2014-03-12 23:51:45 +01:00
Vincent Petry 544495563f Merge pull request #7280 from owncloud/tune_legacy_cache_webdav_properties_prefixing_stable6
Concatenate string in SQL instead of PHP, use doctrine to construct concat expression
2014-03-12 18:55:11 +01:00
Bjoern Schiessle 112a277998 only enable drag&drop upload if public upload is allowed, backport of #7631 2014-03-12 17:50:26 +01:00
Thomas Müller 46657ad8a6 fixing method names 2014-03-12 15:40:54 +01:00
Thomas Müller 14b9eba428 set content-type on ocs exceptions 2014-03-12 15:40:54 +01:00
Frank Karlitschek 6a31fecca3 increase version number 2014-03-11 19:11:07 +01:00
Bjoern Schiessle 3ccbc25dba add 'received_from' info to the share, so that every share can have a different value 2014-03-11 17:16:04 +01:00
Bjoern Schiessle c3c255b0ca fix path creation for re-shares, issue #7662 2014-03-11 17:15:56 +01:00
Thomas Müller 2e42b0555a Merge pull request #7672 from owncloud/backport-7659-stable6-2
Backport 7659 stable6 2
2014-03-11 16:26:28 +01:00
Thomas Müller c1c6ce22e8 remove magic handling of recipient lists by exploding the string - this functionality is nowhere used this way and nowhere documented - and broken because only $toaddress will be exploded not $toname 2014-03-11 14:41:36 +01:00
Thomas Müller a3bc3bbf2d backport #7659 2014-03-11 14:40:51 +01:00
Victor Dubiniuk 37e19534f1 Reset time of last update feed polling 2014-03-11 15:36:08 +03:00
Morris Jobke d290f44fc7 Merge pull request #7608 from owncloud/stable6-publicpagedownloadall
[stable6] Fixed "select all" + download on public page
2014-03-11 10:29:08 +01:00
Vincent Petry 4966d632ae Disable XML entities when parsing XML 2014-03-10 20:41:40 +01:00
Thomas Müller a5871c1811 Merge pull request #7653 from owncloud/backport-7646-stable6
we need the file_source to delete a share successfully
2014-03-10 17:55:27 +01:00
Bjoern Schiessle 0f40acb9a8 we need the file_source to delete a share successfully 2014-03-10 16:44:58 +01:00
Thomas Müller cf2af3ce4d Merge pull request #7633 from owncloud/fix-7582-stable6
Fix 7582 stable6
2014-03-10 15:10:07 +01:00
Thomas Müller d54f314c93 fixing ident 2014-03-07 20:05:11 +01:00
Thomas Müller ff078db8cb we first shall check if the current session is valid - otherwise the session-id will be regenerated on login via basic auth 2014-03-07 20:03:51 +01:00
Björn Schießle acc35849af Merge pull request #7586 from owncloud/dont_create_shared_folder_stable6
[oc6] don't allow to create a file or folder named 'Shared' in the root folder
2014-03-07 10:31:08 +01:00
Frank Karlitschek c9c91c7e15 Merge pull request #7609 from owncloud/fix-updater-6
Use $installedVersion instead of $currentVersion
2014-03-06 23:19:11 +01:00
Lukas Reschke ce5f8d72a4 Use $installedVersion instead of $currentVersion
Additionally use 6.00.4 as the internal version has been changed
2014-03-06 22:43:08 +01:00
Vincent Petry b4c10eea60 Fixed "select all" + download on public page
When a user has lots of files, selecting all and downloading would send
the whole list of files to the server.

This fix makes it use the simpler default download URL in such cases
(the one that was used by the "Download" button that is now removed on
the public page)
2014-03-06 20:32:27 +01:00
Vincent Petry c358373dfa Merge pull request #7578 from owncloud/introduce-generateUrl-stable6
adding new javascript function OC.generateUrl(url, params)
2014-03-06 17:26:17 +01:00
Frank Karlitschek 95ddadd146 increase the version number 2014-03-06 16:52:44 +01:00
Morris Jobke 91392c5a87 add dprecated warning for OC.Router 2014-03-06 15:17:55 +01:00
Jan-Christoph Borchardt 26b70bce28 fix noise not repeating 2014-03-06 14:55:04 +01:00
Bjoern Schiessle 7f81b14eff don't allow to create a file or folder named 'Shared' in the root folder, also exclude all combinations of lower and upper case letters 2014-03-06 12:09:32 +01:00
Thomas Müller 87d385303f adding new javascript function OC.generateUrl(url, params) 2014-03-06 00:28:11 +01:00
Lukas Reschke eaf96335ad Merge pull request #7565 from owncloud/stable6-trusteddomainerrorpage
[stable6] Show warning page when accessing server from an untrusted domain
2014-03-05 21:04:11 +01:00
Vincent Petry d7163c9b5a Fixed X-Forwarded-Host parsing 2014-03-05 20:06:05 +01:00
Vincent Petry 98ff74a70e Added unit tests for serverHost and other related functions 2014-03-05 20:06:04 +01:00
Vincent Petry f1b948d4dc Added localhost as trusted domain 2014-03-05 18:59:34 +01:00
Vincent Petry 9b6b02af6d Show warning page when accessing server from an untrusted domain
Added early check for the requested domain host and show a warning
page if the domain is not trusted.
2014-03-05 18:59:34 +01:00
Jan-Christoph Borchardt 6b45835ecf add hover/focus states for star icons to hint at action 2014-03-05 15:29:52 +01:00
Bjoern Schiessle c02c815603 don't create files folder, let ownCloud core handle it 2014-03-05 14:32:25 +01:00
Vincent Petry 5bf9aab464 Fixed configkey casing for PostgreSQL
Backport of fd5dec0 from master
2014-03-04 17:59:48 +01:00
Vincent Petry 722b81627c Merge pull request #7464 from owncloud/enc_fseek_fallback_stable6
Enc fseek fallback stable6
2014-03-04 12:53:08 +01:00
Vincent Petry 7e2659f017 Fix mail template to use p() for colors
Now using p() instead of print_unescaped() for colors.

Backport of 25251d4 from master
2014-03-03 17:43:52 +01:00
Frank Karlitschek 52b3187962 Merge pull request #7510 from owncloud/stable6-theme-mailtemplate
[stable6] Enable theming of the mail template header
2014-03-03 17:21:53 +01:00
Jan-Christoph Borchardt b3c5aaa1ca make mail notification header color themable 2014-03-03 16:50:05 +01:00
Jan-Christoph Borchardt ea62d23cb3 compress mail notification logo 2014-03-03 16:50:01 +01:00
Jan-Christoph Borchardt 289f64b191 mail template: remove off-white background color to better blend into mail client 2014-03-03 16:49:54 +01:00
Jan-Christoph Borchardt 5878d27068 remove border from log in input fields, simpler and works better with themes 2014-03-03 16:19:49 +01:00
Frank Karlitschek 071e371803 increasing the internal verison one more 2014-03-03 14:59:34 +01:00
Björn Schießle ccf2bf74ea Merge pull request #7501 from owncloud/stable6-libxmlfixsubmoduleupdate
Updated submodule for libxml entity fixes
2014-03-03 13:04:05 +01:00
Vincent Petry 9e439305fd Updated submodule for libxml entity fixes 2014-03-03 12:58:18 +01:00
Björn Schießle dadd67e7bd Merge pull request #7498 from owncloud/stable6-dbschemaxmlentityfix
Allow XML entity loader for MDB2 schema loader
2014-03-03 12:55:38 +01:00
Vincent Petry 762b0d9510 Allow XML entity loader for MDB2 schema loader 2014-03-03 12:15:51 +01:00
Frank Karlitschek dc0a7428bd 6.0.2 2014-02-28 22:59:59 +01:00
Thomas Müller 7534fae9bc Merge pull request #7462 from owncloud/ldap_proxy_access
Ldap proxy access
2014-02-28 21:51:37 +01:00
Jan-Christoph Borchardt 68a9ceacbb Merge pull request #7472 from owncloud/stable6-icons.css-updates
stable6 icons.css backports
2014-02-28 15:24:56 +01:00
Jan-Christoph Borchardt 8a3a5a2ff1 icons: automatically show delete hover instead of using explicit class 2014-02-28 11:37:00 +01:00
jbtbnl 8995c81103 Remove necessity of icon class
Only the icon specific class is needed
2014-02-28 11:36:51 +01:00
jbtbnl 095f9114dd Add white color variant of checkmark icon 2014-02-28 11:36:39 +01:00
Arthur Schiwon 470a0ad611 remove remaining testing artefact 2014-02-28 10:58:51 +01:00
Bjoern Schiessle 9661001af1 remember original fopen access type in pre-proxy because sometimes they change
during the fopen call, e.g. 'r' becomes 'r+' if we open an URL
2014-02-28 10:38:58 +01:00
Vincent Petry 17f869b2fb Merge pull request #7459 from owncloud/deletestorage-legacy
Also delete legacy storages when deleting a user
2014-02-28 10:30:52 +01:00
Vincent Petry 162ba722f6 Merge pull request #7468 from owncloud/stable6-enc-fixfieldnametypo
[stable6] Fixed wrong field name
2014-02-27 23:52:20 +01:00
Vincent Petry 4756d18a14 Fixed wrong field name
This re-fixes an issue where the unencrypted size isn't updated
correctly when saving a text file in the UI multiple times.

Fixes #7467
2014-02-27 19:50:16 +01:00
Bjoern Schiessle 9cff832282 add test for the stream wrapper to read encrypted files from the system folder /tmp 2014-02-27 18:02:13 +01:00
Bjoern Schiessle 7ced22ccc6 test for isEncryptedPath() 2014-02-27 18:02:05 +01:00
Bjoern Schiessle 6455722f29 extend the encryption stream wrapper to handle local files and add a fall back for file size calculation if the storage doesn't support fseek 2014-02-27 18:01:58 +01:00
Bjoern Schiessle 8b3d99308c implement ftell stream wrapper and fix return value from fseek stream wrapper 2014-02-27 18:01:51 +01:00
Bjoern Schiessle f87319f834 fall back to getLocalFile if storage doesn't support fseek 2014-02-27 18:01:45 +01:00
Arthur Schiwon 4605c2cc2d intendetion. where did the whitespaces come from? 2014-02-27 16:20:53 +01:00
Arthur Schiwon 49e567a5cc LDAP: let proxy for multiple server access methods from Access 2014-02-27 16:18:03 +01:00
Robin Appelman 7580518bd8 Also delete legacy storages when deleting a user 2014-02-27 14:52:36 +01:00
Jörn Friedrich Dreyer d93b5af265 Merge pull request #7430 from owncloud/stable6-quote-oldcolumname
[stable6] Also quote old column name during DB migration
2014-02-27 13:12:32 +01:00
Bjoern Schiessle 9a0c78b831 close encryption session after decryption was finished 2014-02-27 11:48:29 +01:00
Jan-Christoph Borchardt 61a37331ce disable autocomplete for shared link password input, fix #7419 2014-02-26 22:21:36 +01:00
Thomas Müller d265d290c3 Merge pull request #7426 from owncloud/stable6-fixmailnotificationtranslation
[stable6] Backported incorrect translation texts for German
2014-02-26 22:18:42 +01:00
Thomas Müller aff7594ef3 let's name the column 'select' because this is a keyword on all platforms 2014-02-26 22:14:44 +01:00
Thomas Müller 5e586995a8 adding test for migrations on columns using keywords 2014-02-26 22:14:44 +01:00
Vincent Petry 1d0e45e179 Also quote old column name during DB migration
This fixes alter table commands that didn't quote the old column name
2014-02-26 16:30:38 +01:00
Vincent Petry cab94eb719 Fix German message for "Enter new" 2014-02-26 15:50:02 +01:00
Vincent Petry c1cc4df26e Fixed German shared notification message 2014-02-26 15:49:44 +01:00
Bjoern Schiessle b4f154f9b4 fix path in sharing results if it is a file in the Shared folder 2014-02-26 15:22:20 +01:00
Bjoern Schiessle ac3f1d6f61 only add "received_from" if a share was found 2014-02-26 14:49:41 +01:00
Morris Jobke d27f2929d2 Merge pull request #7402 from owncloud/stable6-ie9-navigation
Stable6 IE9 navigation bar width
2014-02-26 13:49:03 +01:00
Vincent Petry 6aee04bba4 Merge pull request #7397 from owncloud/stable6-scrollperformance
Users list scrolling performance / improvements
2014-02-26 13:19:27 +01:00
Thomas Müller a88b253c78 introduce new theme function to allow full creation of documentation links: buildDocLinkToKey() 2014-02-26 12:52:49 +01:00
Jan-Christoph Borchardt 751c1b0418 manual backport of IE9 navigation bar pull request #6808, fix #7321 2014-02-26 09:19:02 +01:00
Vincent Petry a0feffb2a7 Added loading spinner to users list on scroll 2014-02-25 19:37:33 +01:00
Vincent Petry 34d17e6168 Improve users list scrolling performance
- fixed JS error when avatar mode is disabled
- added spinner at the bottom of the table
- scroll detection now happens earlier
- single/multiselect init is deferred so that the new rows are first appended
  into the list (more responsive) and initialized afterwards
- disabled users sorting after add (assuming they are always sorted on
  the server side)
2014-02-25 19:37:23 +01:00
Owen Winkler c30377392b Merge pull request #7394 from owncloud/backport-7344
Allow apps to add/modify config js output via hook.
2014-02-25 10:37:33 -05:00
ringmaster 0d2482a1a9 Allow apps to add/modify config js output via hook. 2014-02-25 09:16:38 -05:00
Vincent Petry 149814d95b Replace deleteAll call with unlink call
The method deleteAll() doesn't officially exist on the Storage class as
it's not defined on the interface, which means it fails on the Quota
storage wrapper and might fail on some external storage classes.
Also, this here is the only use case for that one method.
2014-02-25 15:01:38 +01:00
Frank Karlitschek 16e24dc4c5 Merge branch 'stable6' of https://github.com/owncloud/core into stable6 2014-02-25 13:56:30 +01:00
Frank Karlitschek dc11b87a1d 6.0.2 RC1 2014-02-25 13:56:06 +01:00
Bjoern Schiessle c8d34eaf9c add test case if a file gets moved out from the shared folder 2014-02-25 12:42:34 +01:00
Bjoern Schiessle 9183ade655 don't overwrite keys if rename was done by a stream copy 2014-02-25 12:36:06 +01:00
Vincent Petry 678afc4906 Merge pull request #7386 from owncloud/stable6-fixhostnamewithport
Fix case where port is missing
2014-02-25 12:32:41 +01:00
Vincent Petry 6d3b5b24fd Fix case where port is missing 2014-02-25 11:22:53 +01:00
icewind1991 4286eeb531 Merge pull request #7369 from owncloud/stable6-smbmissingfiles
[stable6] Fixed missing files on SMB storage
2014-02-24 13:57:57 +01:00
Vincent Petry 0187537a2e Fixed missing files on SMB storage
Files with attribute "N" weren't parsed out of the file list returned by
smbclient. It seems that these files appear when created on a Linux SMB
mount directly and that have no executable bit.
2014-02-24 09:22:02 +01:00
Vincent Petry 928947f1c3 Added extra checks for ext storage class 2014-02-22 08:13:11 +01:00
Lukas Reschke fb1ebf13c6 Adjust version for stable6 2014-02-22 08:09:49 +01:00
Lukas Reschke ed7e9be7cd Add overwritehost config on setup and upgrade 2014-02-22 07:59:39 +01:00
Bjoern Schiessle e903c8b57b fix test so that it doesn't depend on the array order 2014-02-21 15:53:11 +01:00
Bjoern Schiessle 210832ddf1 fix usersPath and add unit tests 2014-02-21 15:53:03 +01:00
Vincent Petry 96ebefc597 Updated submodule
Includes XML fixes
2014-02-21 15:49:08 +01:00
Bjoern Schiessle 5348e2eb54 fix sharing unit tests 2014-02-21 14:44:09 +01:00
Bjoern Schiessle f6e6f465f2 add unit test for \OC\URLGenerator::getAbsoluteURL to verify #6935 2014-02-21 13:49:11 +01:00
Thomas Müller ce87f933a4 Merge pull request #7349 from owncloud/backport-7347
Backport of #7347 to stable6
2014-02-21 11:21:06 +01:00
Arthur Schiwon a04af7854d LDAP: fix and extend tests 2014-02-21 10:15:09 +01:00
Arthur Schiwon 75c7fd2886 LDAP: improve compilation of filters 2014-02-21 10:15:00 +01:00
Lukas Reschke 92b4d52079 Fix "headers are already sent" introduced with #6519
Backport of #7347
2014-02-21 10:05:05 +01:00
Thomas Tanghus 91b4045791 Test if $url is already prefixed by '/' 2014-02-20 18:19:05 +01:00
Thomas Tanghus 0f87a0248f Add missing slash in URLGenerator::getAbsoluteURL(). Refs. #6840 2014-02-20 18:18:54 +01:00
Arthur Schiwon 3c9421381b LDAP: prevent other configuration from being deleted when deleting the first one which has an empty prefix for historical reasons 2014-02-20 16:25:50 +01:00
nhirokinet 2d946d2766 Update user.php to fix duplicate session-duplicate 2014-02-20 14:31:28 +01:00
NARUKAWA Hiroki a422f19fac Security Update: session fixation
Previous version is vulnerable to session fixation attack in some situations, guessing non-apache-module-php5 environment. Regeneration of session id should be done here.
2014-02-20 14:31:23 +01:00
Lukas Reschke ebb1a70abc Check whether the app is set 2014-02-20 11:26:55 +01:00
Lukas Reschke b9d013e3ce Check whether the Key is set 2014-02-20 11:26:47 +01:00
Lukas Reschke b044ec0420 An admin should not be able to add remote and public services on its own. This should only be possible programmatically.
This change is due the fact that an admin may not be expected to execute arbitrary code in every environment.
2014-02-20 11:26:41 +01:00
Jörn Friedrich Dreyer 3520529430 Concatenate string in SQL instead of PHP, use doctrine to construct concat expression 2014-02-19 12:06:04 +01:00
Joas Schilling 864f0342af Make google drive client secret and dropbox api secret a password field
Fix issue #5794

Backport of 828985d
2014-02-18 18:33:13 +01:00
Joas Schilling 5a2e99c975 External FTP Storage should request hostname instead of URL
Fix issue #6277

Backport of 658af62
2014-02-18 18:15:19 +01:00
Lukas Reschke d07f459409 Use the proper content-type
We should use the proper content-type `application/xml` instead of the default `text/html` here.

Backport requested.
2014-02-18 11:45:05 +01:00
Vincent Petry 3d5d6b5ad1 Now using PHP session lifetime as default value for the JS config
This will fix the heartbeat when the session_lifetime config parameter
hasn't been set explicitly.

Backport of f9763e1fc5
2014-02-18 10:53:35 +01:00
Vincent Petry 80dcec773a Merge pull request #7225 from owncloud/enc_improved_error_handling_oc6
[encryption] improved error handling (OC6)
2014-02-17 11:26:21 +01:00
Bjoern Schiessle 43738dacfb don't block login forever if we are stuck in the middle of the initial encryption 2014-02-17 10:24:04 +01:00
Bjoern Schiessle 78b10de7d6 catch errors during decryption
Conflicts:
	apps/files_encryption/tests/util.php
2014-02-17 10:23:48 +01:00
Bjoern Schiessle 37db8a13d4 catch errors during initial encryption 2014-02-17 10:21:16 +01:00
Joas Schilling eb8b2210cd Send correct path on file upload when using public app
Fix issue #7152
2014-02-14 12:27:34 +01:00
Robin Appelman 118033cac6 Also clean up the filecache table when deleting a storage entry 2014-02-12 14:03:30 +01:00
Robin Appelman b0ba69ff31 Also remove the user's home storage from the storage table when deleting a user 2014-02-12 14:03:30 +01:00
Thomas Müller c1241b1691 Load authentication apps to get users from all backends - fixes #7019 2014-02-11 18:42:09 +01:00
Vincent Petry ad813da7b1 Merge pull request #7157 from owncloud/stable6-xsendfilequotacheck
Fix xsendfile local storage detection with quota
2014-02-11 17:03:55 +01:00
Vincent Petry b4f04c18db Fix xsendfile local storage detection with quota 2014-02-11 15:04:17 +01:00
blizzz 23985428ea Merge pull request #6778 from owncloud/fix_6430
on filtering the share box users and groups whose name begins with the s...
2014-02-11 10:38:04 +01:00
Bjoern Schiessle 018fed6014 getData() always needs to return an array 2014-02-10 15:16:58 +01:00
Arthur Schiwon 3be50224ff intendation 2014-02-10 14:53:59 +01:00
Arthur Schiwon 0213928735 fix DI 2014-02-10 14:53:59 +01:00
Arthur Schiwon 1cf599d494 Inject logger 2014-02-10 14:53:59 +01:00
Arthur Schiwon 8a4dbdedcf wrong tld 2014-02-10 14:53:59 +01:00
Arthur Schiwon 35b316f93f test for share dialoge sorter 2014-02-10 14:53:59 +01:00
Arthur Schiwon 7e451a24bc sort following entries in alphabetical order 2014-02-10 14:53:59 +01:00
Arthur Schiwon f8620704d4 move sorter into a class 2014-02-10 14:53:58 +01:00
Arthur Schiwon c6687e159b respect coding guidelines 2014-02-10 14:53:58 +01:00
Arthur Schiwon 8227bc41cd on filtering the share box users and groups whose name begins with the search term shall appear on top, fixes #6430 2014-02-10 14:53:58 +01:00
Bjoern Schiessle 6f5caaa87a refuse login as long as the initial encryption is running 2014-02-10 14:51:34 +01:00
blizzz e5dac9fa24 Merge pull request #7124 from owncloud/fix_6541
LDAP: also try MS AD's thumbnailPhoto when looking for an avatar image
2014-02-10 14:44:43 +01:00
Joas Schilling 48bb8aeb01 Only add files to file list when uploading to current directory
Fix Issue #6683
2014-02-10 12:41:45 +01:00
blizzz fd32501fe0 Merge pull request #7081 from owncloud/fix_6670
LDAP: Wizard cannot determine Base DN in some cases, fixes #6670
2014-02-10 11:27:31 +01:00
Arthur Schiwon 0a475bdab3 LDAP: improve debug message 2014-02-10 10:19:37 +01:00
Arthur Schiwon 3d6ab2b53b LDAP: also try MS AD's thumbnailPhoto when looking for an avatar image 2014-02-10 10:19:37 +01:00
Björn Schießle 5e315495c2 Merge pull request #7130 from owncloud/enc_fix_unit_tests
name users after test
2014-02-07 17:56:21 +01:00
Thomas Müller b353637e45 Merge pull request #7129 from owncloud/ldap_info_doc
LDAP: add documentation info in info.xml
2014-02-07 17:13:45 +01:00
Thomas Müller fb6290c87a Merge pull request #7083 from owncloud/backport_6777_stable6
Backport 6777 stable6
2014-02-07 17:08:25 +01:00
Bjoern Schiessle 76cb5a50c0 name users after test 2014-02-07 17:01:02 +01:00
Arthur Schiwon 5c40ef090a LDAP: add documentation info in info.xml 2014-02-07 15:55:35 +01:00
Bjoern Schiessle 9c9b161f51 replace 'size' with 'unencrypted_size' if encryption is enabled 2014-02-07 15:26:21 +01:00
Bjoern Schiessle 9b257ad862 change order of issubdirectory() calls to avoid error messages for non-apps 2014-02-07 14:48:01 +01:00
Thomas Müller 5edc4c95bc Merge branch 'stable6' into backport_6777_stable6
Conflicts:
	apps/files_sharing/css/public.css
	apps/files_sharing/templates/public.php
2014-02-07 14:21:10 +01:00
Vincent Petry f9bd4c5d24 Fixed searchByMime in shared cache
- searchByMime now correctly returns files recursively search through
  all the dirs
- added unit test for searchByMime

Backport of fa5ddc3 to stable6
2014-02-06 16:23:15 +01:00
Thomas Müller 88a5f7d994 remove css files from rewrite rule - there is no need to rewrite css any more 2014-02-06 15:13:23 +01:00
Jan-Christoph Borchardt 04b4c7c042 remove %webroot from files_sharing app 2014-02-06 14:28:26 +01:00
Jan-Christoph Borchardt 87d06bae85 remove %webroot% from files app 2014-02-06 14:28:17 +01:00
Jan-Christoph Borchardt c096c6edc3 add icons.css file, first step to get rid of %webroot% 2014-02-06 14:28:08 +01:00
Bjoern Schiessle 713c5c4275 use appstoreenabled config switch 2014-02-05 16:52:18 +01:00
Jan-Christoph Borchardt e48c7675b9 do not show 'Add app' and 'More apps' for themed ownCloud 2014-02-05 16:52:15 +01:00
Bjoern Schiessle f824986742 add function to extract filename from sharekey name + tests 2014-02-05 14:32:32 +01:00
Bjoern Schiessle 5e788ae1fa added tests for the delete hooks if the trash bin is disabled 2014-02-05 14:32:13 +01:00
Bjoern Schiessle 78b390da31 don't expect OC_FilesystemView, this is depreciated 2014-02-05 14:31:47 +01:00
Bjoern Schiessle b3257a315d better error detection and don't use glob() 2014-02-05 14:31:34 +01:00
Bjoern Schiessle fc1763dc6b move unlink proxy to a hook which handles pre and post conditions 2014-02-05 14:31:13 +01:00
Vincent Petry 7b948b0580 Added session_keepalive setting
When session_keepalive is true (default) the heartbeat will be send as
often as the half of the session timeout value.

Backport of 912da8d to stable6
2014-02-05 13:46:49 +01:00
Jörn Friedrich Dreyer 379ddd88d6 make header scroll up for single shares, more view of content on small screens 2014-02-05 11:39:02 +01:00
Jörn Friedrich Dreyer 23c015ba52 adding class to header div: share-folder or share-file 2014-02-05 11:38:21 +01:00
Jörn Friedrich Dreyer 0f97d9555c adjust file type icon placement for when no preview can be generated 2014-02-05 11:37:23 +01:00
Jörn Friedrich Dreyer 0992a77cfb permanently show download action on mobile, only icon 2014-02-05 11:33:43 +01:00
Jörn Friedrich Dreyer 4b1f93b61c fix horizontal scrollbar appearing when footer is too long, footer wraps now 2014-02-05 11:30:54 +01:00
Jörn Friedrich Dreyer 916122b166 fix multiselect bar being too short on big displays 2014-02-05 11:29:39 +01:00
Jörn Friedrich Dreyer a3b351738a Instead of 'No preview available for ...' we simple display the mime-type icon 2014-02-05 11:27:46 +01:00
Jörn Friedrich Dreyer 37f8607a88 remove background and width from multiselect bar, fix Download button not showing on mobile 2014-02-05 11:24:34 +01:00
Jörn Friedrich Dreyer a4895e4df1 focus link text only on click in the input field - closes #6817 2014-02-05 11:17:04 +01:00
Jörn Friedrich Dreyer a9a92892be remove unused variable 2014-02-05 11:15:04 +01:00
Jörn Friedrich Dreyer d8770d1284 fix input element closing tag 2014-02-05 11:13:31 +01:00
Jörn Friedrich Dreyer e3d8758a32 make sure there's enough room for the file actions 2014-02-05 11:12:01 +01:00
Jörn Friedrich Dreyer 5a5496f4e7 restrict zooming on mobile devices for the publicly accessible, optimized pages 2014-02-05 11:10:30 +01:00
Jörn Friedrich Dreyer b33cfce2fa add icons for file list and picture view toggles 2014-02-05 11:08:34 +01:00
Jörn Friedrich Dreyer 025ab0dabb on mobile, show single shared image at full width without margin 2014-02-05 11:06:42 +01:00
Jörn Friedrich Dreyer 63b078b550 fix public share download button width 2014-02-05 11:02:21 +01:00
Jörn Friedrich Dreyer fa1288c6b3 tweak color and position of username in public share 2014-02-05 10:59:52 +01:00
Jörn Friedrich Dreyer 9f9466d001 improvements to public files mobile view 2014-02-05 10:57:26 +01:00
Jörn Friedrich Dreyer 249df3864b remove min-width rule to fix mobile views 2014-02-05 10:53:54 +01:00
Jörn Friedrich Dreyer 615f0c4a1c first mobile style rules, hide extra columns in files view and scroll header 2014-02-05 10:52:25 +01:00
Jörn Friedrich Dreyer a096f19bb2 add download button on single file share page 2014-02-05 10:49:57 +01:00
Arthur Schiwon a967acee4c Rephrase and clarify log message 2014-02-05 10:33:44 +01:00
Arthur Schiwon 2801edc451 Wizard: enable base DN for editing, if not base DN could have been detected. Also part of fix for #6670 2014-02-05 10:30:56 +01:00
Arthur Schiwon acebc3f41e Wizard: disable LDAP referrals, fixes #6670 2014-02-05 10:29:09 +01:00
Vincent Petry 9404389d83 Allow getting info or renaming part files through WebDAV
When mounting an ownCloud (backend OC) inside another ownCloud (frontend
OC), the frontend OC will use WebDAV to upload file, which will create
part files. These part files need to be accessible for the frontend OC
to rename them to the actual file name.

This fix leaves the file cache untouched but gives direct access to part
file info when requested.

This means that part file can be accessed only when their path and name
are known. These won't appear in file listtings.

Fixes #6068
2014-02-05 10:11:28 +01:00
Arthur Schiwon 60b75b25f8 throw an info message, when base dn test failed 2014-02-04 19:37:40 +01:00
Arthur Schiwon 608fe55889 LDAP: extend LDAP wrapper search method for sizelimit, improves performance in wizard 2014-02-04 17:56:53 +01:00
Jörn Friedrich Dreyer 37d2c0a4be remove unused js code and css rules 2014-02-04 16:32:39 +01:00
Jörn Friedrich Dreyer 3ccbc984f4 no new menu on public upload 2014-02-04 16:29:59 +01:00
Jörn Friedrich Dreyer 8bd3ce2fe2 fixing preview generation 2014-02-04 16:28:51 +01:00
Jörn Friedrich Dreyer ebcbf85396 reuse file upload as used within files app - remove public upload button 2014-02-04 16:25:23 +01:00
Bjoern Schiessle 44a6d2a98c add test for password remove method 2014-02-04 14:42:41 +01:00
Bjoern Schiessle 8ee368ddad remove needless element tag 2014-02-03 17:03:30 +01:00
Bjoern Schiessle 34069e00c4 also load error handler if debugging is enabled 2014-02-03 17:00:30 +01:00
Bjoern Schiessle 88542819f0 remove passwords in URLs from all log messages 2014-02-03 17:00:17 +01:00
Vincent Petry 8a66c30895 Fixed image preview in trashbin subdirs 2014-01-31 16:35:23 +01:00
Bjoern Schiessle e6579a3c0a public upload is also possible with encryption enabled, since OC6 2014-01-29 11:51:50 +01:00
Bjoern Schiessle 9016093b4c use more accurate error codes 2014-01-28 16:46:58 +01:00
Vincent Petry 301e4988a1 Added exception logger plugin for sabre connector
Whenever an exception occurs in the sabre connector code or code called
by it, it will be logged.

This plugin approach is needed because Sabre already catches exceptions
to return them to the client in the XML response, so they don't appear
logged in the web server log.

This will make it much easier to debug syncing issues.

Backport of 11ef12a to stable6
2014-01-28 14:19:13 +01:00
Otto Sabart e6391d84a1 Add check for apc.enabled option
Sometimes it's not possible to disable APC entirely and some of
apc_functions are disabled. Only thing which is possible is
to disable apc.enable option.
2014-01-27 23:33:39 +03:00
Bjoern Schiessle 4c305ef459 disable button and input field during decryption 2014-01-27 14:23:56 +01:00
Bjoern Schiessle 72e308788f remove the form, it isn't needed here 2014-01-27 14:23:43 +01:00
Bjoern Schiessle f1dc6e1441 use localised date in notification mails 2014-01-27 14:18:10 +01:00
Bjoern Schiessle 33801c311e only update file cache with the unenecrypted size when the file was written 2014-01-27 10:39:11 +01:00
Jan-Christoph Borchardt 0cd68cfedc prevent autofill for password change settings, prevent leak of existing password, fix #6552 2014-01-26 20:04:24 +01:00
Bjoern Schiessle e00f483238 add expire date to link share if possible 2014-01-24 16:57:18 +01:00
Bjoern Schiessle 5cc8df3723 increase size of mimetype column 2014-01-24 16:09:22 +01:00
Bjoern Schiessle 08bf128255 added website field 2014-01-24 13:58:51 +01:00
Bjoern Schiessle 3979508dae distinguish app links from doc links 2014-01-24 13:58:43 +01:00
Bjoern Schiessle a5a2fe9180 show link to app documentation 2014-01-24 13:58:29 +01:00
Bjoern Schiessle 29d63893ff add link to documentation 2014-01-24 13:58:18 +01:00
Vincent Petry 39354eaaf1 Fixed sharing results to include the correct permissions
Passing $includeCollections would return more than one entry which gives
mixed up file permissions.

Added a method getFile() that doesn't set $includeCollections to make
sure we only get one result which is the file itself.

Fixes #6265
2014-01-23 15:31:14 +01:00
Bjoern Schiessle 2e8418b362 fix infinite loop if folder and subfolder has the same name 2014-01-23 13:36:33 +01:00
Bjoern Schiessle 1a93891222 add path relative to the files folder of the currently logged in user to the output of getFolderContent() 2014-01-23 13:36:22 +01:00
Vincent Petry 099ccfa254 Fixed isPreviewAvailable warnings in log
isPreviewAvailable wasn't always set as the files formatting code is
slightly different than the one from the files app.

Fixes #6423

Backport of f4c198b to stable6
2014-01-23 12:32:10 +01:00
Björn Schießle d41b2c5401 Merge pull request #6891 from owncloud/version_fix_array_order_stable6
Version fix array order stable6
2014-01-22 03:21:50 -08:00
Myles McNamara 5f7bc2cf4d change publicUploadButtonMock to public_upload
Changed jQuery selector for public preview to public_upload to correctly show preview
2014-01-22 11:36:47 +01:00
Myles McNamara 6d330e8a3f change em to px 2014-01-22 11:36:42 +01:00
Myles McNamara 72b680ca2d modify js to move upload wrapper, modify css to match core values 2014-01-22 11:36:38 +01:00
Myles McNamara 5e1c3732e5 remove extra upload controls 2014-01-22 11:36:29 +01:00
Myles McNamara 7251c65996 fix upload button layout 2014-01-22 11:36:24 +01:00
Bjoern Schiessle fea0ba84c5 fix size calculation 2014-01-22 11:28:09 +01:00
Bjoern Schiessle cdfc6ff5d5 fix array ordering issue 2014-01-22 11:25:19 +01:00
Björn Schießle 50721da77b Merge pull request #6874 from owncloud/versioning_expire_fixes_stable6
selective backport of the bug fixes from pr #6863
2014-01-22 02:21:55 -08:00
Frank Karlitschek 14cbec6d6b 6.0.1 2014-01-22 09:28:41 +01:00
Thomas Müller ea334cfa18 fixing comment + adding unit test for checkPasswordProtectedShare 2014-01-21 20:52:16 +01:00
Thomas Müller c10af30381 in case no share is found for the given token we can return right away 2014-01-21 20:52:16 +01:00
Thomas Müller 4351609df9 adding password protection check to getShareByToken() 2014-01-21 20:52:16 +01:00
Thomas Müller c430fe6612 Merge pull request #6869 from owncloud/fix-setupfs-only-for-existing-users-stable6
Fix setupfs only for existing users stable6
2014-01-21 10:18:29 -08:00
Tigran Mkrtchyan 3501007074 webdav: return SPACE_UNKNOWN if server do not support quota
Backport of a78dc11732 to stable6
2014-01-21 18:15:14 +01:00
Bjoern Schiessle 603828366f selective backport of the bug fixes from pr #6863 2014-01-21 17:49:56 +01:00
Vincent Petry e46df97c3a Replaced time() with uniqid() to make sure the file name is unique
The cache isn't cleared properly because unlink() doesn't remove the
cache entry which caused side-effects when reusing the same file name
(which randomly happens when time() returns the same value)

This fix first makes sure the unit tests don't fail any more.
The unlink() case with the cache will be investigated separately.

Backport of f09c19c to stable6
2014-01-21 17:47:46 +01:00
Björn Schießle 180bb9fa9f Merge pull request #6867 from owncloud/protect-versions-preview-stable6
don't use the user id within the versions preview call as it could be us...
2014-01-21 07:46:37 -08:00
Thomas Müller 81f1c04b85 Merge pull request #6456 from owncloud/fix_home_storage_quota_stable6
Fix home storage quota stable6
2014-01-21 07:42:35 -08:00
Thomas Müller b722ce6cc3 OC_Util::setupFS($user) will create a data dir for the given string - no matter if the user really exists - OCP\JSON::checkUserExists($owner); introduces a ready to use check which will bail out with an JSON error
Conflicts:
	lib/public/json.php
2014-01-21 16:39:31 +01:00
Jörn Friedrich Dreyer 65fa896bc2 add getOwner impementation to Home Storage 2014-01-21 15:18:46 +01:00
Thomas Müller 464b31157e don't use the user id within the versions preview call as it could be used to access previews of another user 2014-01-21 15:18:36 +01:00
Thomas Müller a9f7764879 Merge pull request #6865 from owncloud/fix_user_ldap_sql_on_oracle_stable6
user workarount to compare CLOB column with CHAR value
2014-01-21 06:15:02 -08:00
Jörn Friedrich Dreyer 047ae7fb23 user workarount to compare CLOB column with CHAR value 2014-01-21 14:03:51 +01:00
Thomas Müller 98db90ba70 Merge pull request #6862 from owncloud/neutral_download_zip_default_name_stable6
use 'download.zip' as default name for zip downloads instead of 'owncloud.zip'
2014-01-21 04:20:02 -08:00
Jörn Friedrich Dreyer 0b11762b1c use 'download.zip' as default name for zip downloads instead of 'owncloud.zip' 2014-01-21 12:43:43 +01:00
Vincent Petry 127ab3cb47 When reading the size of "files" mountpoints need to be excluded
The versions and trashbin app are now passing "includeMountPoints=false"
to "getFileInfo()" to make sure that the calculated total size doesn't
include mount points like Shared or external storage.

This is because the default call (legacy) used to return the size of
mount points as well.

Fixes #6731

Backport of ca57a84 to stable6
2014-01-20 18:29:27 +01:00
Vincent Petry 09cc0c5cc9 Fixed quota wrapper to not wrap failed fopen streams
When calling fopen() on some storage types, these return false instead
of throwing an exception.

This fix makes sure that in case the stream wasn't opened (for example
when a file doesn't exist any more) the stream isn't wrapped.

Also added 'rb' as another case that doesn't need to be wrapped.

Fixes #6832
2014-01-20 14:32:57 +01:00
rnveach c4c5e34110 added trigger to redo selection text on a directory change 2014-01-20 13:03:40 +01:00
rnveach 89d60a2680 fixed selector string and removed all checkbox if it was selected 2014-01-20 13:03:34 +01:00
Thomas Müller 369ec65d12 Merge pull request #6828 from owncloud/dont_add_queuedtasks_during_upgrade
add needUpgrade() check to addQueuedTask()
2014-01-18 03:46:31 -08:00
Jörn Friedrich Dreyer 40c2f47cd9 add needUpgrade() check to addQueuedTask() 2014-01-17 19:50:37 +01:00
Vincent Petry bc22799160 Fix array access syntax for older PHP
There was a syntax error when running tests in PHP 5.3.10.
2014-01-17 14:39:49 +01:00
Bjoern Schiessle 4c1510b729 updated description of the files encryption app 2014-01-17 12:56:58 +01:00
Vincent Petry d44b98d3dd Fix to not destroy draggable when no draggable was set
When a dir has no delete permission, the draggable isn't initialized on
files. This fix makes sure we don't try to destroy a draggable when it
wasn't inited in the first place.

Fixes #6254

Backport of 8135828 to stable6
2014-01-16 17:50:07 +01:00
Frank Karlitschek a4e842f19a 6.0.1 RC1 2014-01-16 17:09:54 +01:00
Volkan Gezer aec0f06501 Fix untranslated text when deleting user
This should fix issue #6728
2014-01-16 12:23:34 +01:00
ben-denham f9e4d0a5e2 updated the unit test for OCP\Share::unshareAll() to verify that shares by all users are removed for an item. 2014-01-16 12:14:53 +01:00
ben-denham 3093c63024 Unshare all will now delete all shares for the item, instead of only for a single owner. 2014-01-16 12:14:37 +01:00
Thomas Müller b0edbd8ebd Merge pull request #6783 from owncloud/backport-6530-stable6
Backport 6530 stable6
2014-01-15 11:01:47 -08:00
Vincent Petry 5dd20db05f Fixed Dropbox/Google storage async save call
When clicking "Grant access", the settings for Dropbox/Google were saved
through a call that gets cancelled when redirecting to the grant page
(for example in Firefox)

This fix makes sure the "save settings" call finished before redirecting
to the grant page.

Fixes #6176

Backport of e13be94 to stable6
2014-01-15 16:41:54 +01:00
Thomas Müller 0c140d5f6e in order to work properly with encryption ocTransferId is added to the file path - questionable usage of magic string 2014-01-15 16:37:23 +01:00
Thomas Müller 49969825ad Adding a random postfix to the part file. 2014-01-15 16:37:23 +01:00
Bjoern Schiessle 3b21499b34 extended test to also check the status messages 2014-01-15 16:10:31 +01:00
Bjoern Schiessle 3fde29ead4 keep response message 2014-01-15 16:10:22 +01:00
Bjoern Schiessle afe35ca12d call getFileInfo to enforce a file cache entry for the new version, fix #6286 2014-01-15 16:01:48 +01:00
Bjoern Schiessle a83e37c799 remove old code 2014-01-15 15:59:04 +01:00
Bjoern Schiessle 3c7541e97c don't try to encrypt/decrypt cache chunks or files in the trash bin 2014-01-15 15:58:56 +01:00
Bjoern Schiessle 3ec3ebb3db copy files to owner trash recursively 2014-01-15 15:58:48 +01:00
Morris Jobke 3e71827bea Merge pull request #6293 from owncloud/stable6-legacy-settings-popup
Stable6 legacy settings popup
2014-01-15 02:12:27 -08:00
Robin Appelman 6adac6a673 Use storage_mtime when determining if we can reuse cached data while scanning
Backport to stable6 of the following commits, in order:
- 203d5d0
- 4113042
- 7e4c80f
- 16b898d
2014-01-15 10:36:32 +01:00
Vincent Petry 88dc71381f Fix calculated folder size to use unencrypted size
The encrypted size was used when calculating folder sizes.
This fix now also sums up the unencrypted size and shows that one when
available.

Backport of 4faba49 to stable6
2014-01-14 16:37:48 +01:00
icewind1991 c6ca9be406 Merge pull request #6612 from owncloud/user-no-change-displayname-stable
Backport: Re-add the config options to remove the ability for users to change their displayname
2014-01-14 07:13:21 -08:00
Bjoern Schiessle 7dddf59942 it is not an urgent error... a DEBUG message is enough at this point 2014-01-14 15:09:26 +01:00
Vincent Petry 8ef32821be Fixed timezone issue with SMB storage
Now forcing smbclient to also run on UTC

Backport of 1eb5ebd to stable6
2014-01-14 15:04:41 +01:00
Thomas Müller 1e9f0409c3 Merge pull request #6408 from owncloud/ldap_fix_tls_detection
LDAP fix TLS detection
2014-01-14 05:01:08 -08:00
Andreas Fischer bcec9cea78 Merge pull request #6756 from owncloud/remove-ru_RU-stable6
remove ru_RU - it's almost untranslated

* owncloud/remove-ru_RU-stable6:
  remove ru_RU - it's almost untranslated
2014-01-14 00:45:55 +01:00
Björn Schießle 87cfbb3a2b Merge pull request #6753 from owncloud/no_unshare_on_delete
don't unshare on delete
2014-01-13 07:48:22 -08:00
Thomas Müller 3b1396b538 remove ru_RU - it's almost untranslated 2014-01-13 16:44:03 +01:00
Carlos Cerrillo ce1a1996f7 Fixing Issue #6301 on master branch
Added private var $certPath to store the user root cert

Move logic to determine the $certPath path to the constructor and modify to get the path from OC_User::getHome()

Add curl options to use the certificate to avoid certificate errors with self-signed certicates in the downdload/upload method so we don't get blank files

Only set SSL things when ```$this->secure``` is ```true```

Fix ```createCertificateBundle``` and  ```getCertificates``` methods
from ```OC_Mount_config``` to use ```OC_User::getHome``` to get the
path

Backport of 7c264c88fe,
b245e2e3d8 and
c06844c374 to stable6 (squashed)
2014-01-13 16:38:30 +01:00
st3so 5f2e8f7723 fixing typo in redirection query string
Backport of a2cae551f3 to stable6
2014-01-13 15:58:29 +01:00
Bjoern Schiessle 54cd174f61 don't unshare on delete 2014-01-13 15:25:59 +01:00
Vincent Petry 28be8496a9 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

Backport to stable6 of 1042733
2014-01-12 13:29:54 +01:00
Georg Ehrke 3ae7bfc298 fix preview for reshared file 2014-01-11 11:31:43 +01:00
Vincent Petry 1cbe1896e7 Prevent deleting storage root
Storage mount points are not deletable, so make sure that the unlink
operation and its hooks aren't run in such cases.

Note that some storages might recursively delete their contents when
calling unlink on their root. This fix prevents that as well.

Backport of f642ad3 to stable6
2014-01-10 16:50:26 +01:00
Arthur Schiwon ebe3872c64 Infowarning about 32bit 2014-01-09 17:00:35 +01:00
Arthur Schiwon f1ea0bcafc add tests for user counting 2014-01-09 17:00:28 +01:00
Arthur Schiwon cf8fc2294e if backends have the same class name, sum their users up instead of overwriting 2014-01-09 17:00:21 +01:00
Arthur Schiwon 1636c6dbd8 LDAP: add tests for countUsers 2014-01-09 17:00:14 +01:00
Arthur Schiwon 59ff8388ea remove unnecessary line 2014-01-09 17:00:06 +01:00
Arthur Schiwon 1c58d8b226 LDAP: implement userCount action. This required to (finally) clean up and refactor the search method, which will have a positive performance impact on paged search. 2014-01-09 16:59:58 +01:00
Arthur Schiwon 0f58bd02c1 Add command line tool to show numbers of users and user directories 2014-01-09 16:59:47 +01:00
Arthur Schiwon 4b4901519d Introduce user count action to user management 2014-01-09 16:59:39 +01:00
Vincent Petry a711d4e39a Removed special handling of part files in shared storage rename
This fixes the issue introduced by the transfer id which itself wasn't
taken into account by the shortcut code for part file in the shared
storage class.

Backport of 8eaa39f to stable6
2014-01-09 15:23:55 +01:00
Thomas Müller 52dc90d5fd Merge pull request #6696 from owncloud/backport-6693-stable6
Backport 6693 stable6
2014-01-09 04:56:26 -08:00
Thomas Müller 9a1cbabdd6 rename user-id to loginname to stay consistent 2014-01-09 12:34:19 +01:00
Thomas Müller 596ab7552e set login name within apache auth backend 2014-01-09 12:34:19 +01:00
Thomas Müller ea23a09c05 fixing PHPDoc and use cameCase names 2014-01-09 12:34:19 +01:00
Arthur Schiwon 394bd17251 typo, grammar 2014-01-08 19:55:28 +01:00
Thomas Müller 627612c9e0 Merge pull request #6679 from owncloud/backport-6675-stable6
Backport 6675 stable6
2014-01-08 04:33:40 -08:00
Thomas Müller c6fa2dd8e2 turn off mod_pagespeed 2014-01-08 12:19:30 +01:00
Thomas Müller 8d38228c98 Merge pull request #6678 from owncloud/backport-6660-stable6
Backport 6660 stable6
2014-01-08 02:50:15 -08:00
Thomas Müller bbba8fd09d trimming all array elements 2014-01-08 10:45:37 +01:00
Thomas Müller 5e928fc988 we shall explode on ',' only 2014-01-08 10:45:37 +01:00
Thomas Müller 7e36763631 reuse existing helper function OC_Helper::is_function_enabled 2014-01-08 10:45:37 +01:00
Vincent Petry 542cf79595 Now also preventing to override "files" dir size with -1
Fixes #6526

Backport of 5be4af9 to stable6
2014-01-08 09:56:00 +01:00
Vincent Petry 2ea3765359 Added isUserAgent() method to request
- added isUserAgent() method to OC_Request which makes it possible to
  test it
- OC_Response::setContentDisposition now uses OC_Request::isUserAgent()
2014-01-07 22:11:39 +01:00
Vincent Petry b7aaebf94f Added workaround for Android content disposition
Fixes #5807
2014-01-07 22:11:30 +01:00
Vincent Petry c9cb258616 Moved content disposition code+workarounds to OCP\Response
Added new OC\Response API called setContentDispositionHeader() that
contains the needed workarounds for UTF8 and IE.

Refactored download code to use the new API.

Removed unused trashbin download file.
2014-01-07 22:11:22 +01:00
Thomas Müller 697ad1ca9e Merge pull request #6666 from ogasser/decimal_precision_scale_stable6_bp
DB: Support DECIMAL(precision,scale) syntax in XML
2014-01-07 11:11:32 -08:00
Thomas Müller 6a838718df Merge pull request #6664 from owncloud/fix_empty_mimetypes_stable6
remove duplicate exe mimetype, add correct msi mimetype
2014-01-07 07:31:29 -08:00
Oliver Gasser 6a21922854 DB: Support DECIMAL(precision,scale) syntax in XML
Add support for specifying the precision and scale of a decimal data
type to the XML description language. Added new unit tests and adapted
existing ones.

See owncloud/core#6475

Backported from owncloud/core#6476
2014-01-07 16:07:54 +01:00
Jörn Friedrich Dreyer c81a05cbb1 remove duplicate exe mimetype, add correct msi mimetype 2014-01-07 15:54:33 +01:00
Robin Appelman 956a4419d8 Fix APCIterator syntax in \OC\Memcache\APCU::clear
see http://www.php.net/manual/en/apciterator.construct.php
2014-01-03 14:31:19 +01:00
Robin Appelman f356ef90d7 Return SPACE_UNKNOWN if disk_free_space is disabled when getting the free space on a local storage 2014-01-02 17:30:39 +01:00
Robin Appelman a8fd55d90d Pass config object in testGetHomeNotSupported 2014-01-02 16:58:30 +01:00
Robin Appelman 208037b56a Replace static usage of OC_Config and OC_Preferences with the injected \OC\ConfigAll 2014-01-02 16:58:12 +01:00
Robin Appelman 62887c67ab fix the config option to remove the ability for users to set their displayname 2014-01-02 16:58:05 +01:00
Robin Appelman 9960596f4e fix fallback overwriting result of getHome 2014-01-02 16:57:52 +01:00
Robin Appelman b5ef21b22d cache the home folder of a User 2014-01-02 16:57:45 +01:00
Robin Appelman 44fb817a4e Also add default to the \OCP\IConfig interface 2014-01-02 16:54:44 +01:00
Robin Appelman 2c54dcda89 add default parameter for AllConfig->get*Value() 2014-01-02 16:54:39 +01:00
Frank Karlitschek 0bb7202ff7 Merge pull request #6562 from syncloud/stable6
Made admin password field required on client side
2013-12-25 03:36:00 -08:00
Vladimir Sapronov 75eaea1dff Made password field required on client side
Fix for case described in https://github.com/syncloud/owncloud-setup/issues/19
2013-12-23 21:39:14 -05:00
Andreas Fischer 93b6c83814 Backport of PR #4378: Don't use xcache in case admin auth is enabled. 2013-12-20 17:15:48 +01:00
Andreas Fischer d9df271113 Do not use xcache variable cache if cache size is 0.
This is possible because it is possible to only use xcache as an opcode cache
but not a variable cache.
2013-12-20 16:50:18 +01:00
Bjoern Schiessle 13461698e4 tests added 2013-12-19 20:10:42 +01:00
Bjoern Schiessle eaa5dd0282 we can also have a path user/cache/... 2013-12-19 20:10:29 +01:00
Bjoern Schiessle 672cbc5378 check if the old owner and the old path is available 2013-12-19 19:20:29 +01:00
Bjoern Schiessle 2f568c9766 fix rename of shared files 2013-12-19 19:20:17 +01:00
Vincent Petry c4c972fd2f Merge pull request #6498 from owncloud/stable6-oracleencryptiontestfix
[stable6] Trying to fix failing encryption tests on Oracle
2013-12-19 06:45:37 -08:00
Thomas Müller 6de259e0ac Merge pull request #6291 from owncloud/ldap_doc_link
LDAP: Adjust help link to documentation
2013-12-19 02:56:34 -08:00
Vincent Petry 1f93b4e842 Removed numRows usage from encryption app
numRows on Oracle always seem to return 0.

This fix removes numRows usage from the encryption and sharing app.

This fixes unit tests and potentially the encryption app itself
(migration status) when running on Oracle
2013-12-18 21:14:26 +01:00
Robin Appelman 4c2d2f4dc9 check if a $_SESSION entry exists before we try to remove it 2013-12-18 14:26:27 +01:00
Robin Appelman 148c16bf70 preserve 3rd party values in in the Session destructor 2013-12-18 14:26:21 +01:00
Vincent Petry 77af1a7127 Fixed JS plural function to be per app
Some apps might not define the same "nplural" value.
To avoid conflicts, the plural function is now generated per app.

Fixes #6427
2013-12-18 12:13:22 +01:00
Bjoern Schiessle 2f0ec8256f reliable detect encrypted files 2013-12-17 18:14:36 +01:00
Frank Karlitschek 913df0c5ed clarifying license 2013-12-17 17:30:57 +01:00
Bjoern Schiessle c88109a496 always show home breadcrumb in files view 2013-12-17 11:02:02 +01:00
Bjoern Schiessle 8f5dfd0920 always show 'Deleted Files' breadcrumb 2013-12-17 11:01:43 +01:00
Vincent Petry ae58a385b7 Do not use L10n when logging exceptions
In some specific situations, the L10N bundle isn't loadable yet (for
example when there is an issue with the app_config table). In such case,
we still want to be able to log the real exception.

This fixes errors that say "OC_L10N_String::__toString must not throw
exceptions"
2013-12-17 10:56:02 +01:00
Bjoern Schiessle 3160b23291 update file cache for target file 2013-12-16 17:49:14 +01:00
Bjoern Schiessle 73a0b690e9 only remove encryption keys if a real file gets deleted, skip this method if a file outside of /data/user/files was deleted 2013-12-16 17:49:05 +01:00
Bjoern Schiessle bdb4890d04 call set password hook because it doesn't get triggered during test execution and fix paths 2013-12-16 17:48:52 +01:00
Bjoern Schiessle 9091dd7833 enable more tests 2013-12-16 17:48:44 +01:00
Thomas Tanghus a8a35f4d07 Use DEBUG instead of ERROR when favourites not found. Fix #6419 2013-12-16 17:31:03 +01:00
Frank Karlitschek 0d24b22485 6.0.0a 2013-12-14 20:40:17 +01:00
Frank Karlitschek e8a696cff9 Merge pull request #6389 from owncloud/ignore_comments_on_columns
ignore comments on schema as a quickfix for oc6
2013-12-14 11:31:20 -08:00
Vincent Petry 811ef19ada Removed comments in database schema of encryption app 2013-12-14 11:18:48 +01:00
Jörn Friedrich Dreyer db696a2dda ignore comments on schema as a quickfix for oc6 2013-12-13 19:21:14 +01:00
Arthur Schiwon 3d81009347 LDAP: only read config from database, if configID is given. Not what we want to do when on-the-fly-testing settings from the admin page 2013-12-13 18:01:42 +01:00
Vincent Petry 0b665700b5 Merge pull request #6406 from owncloud/stable6-no-backgroundjobs-during-upgrade
dont try to register background jobs if we haven't upgraded yet
2013-12-13 08:58:50 -08:00
Arthur Schiwon 1e407482be remove unused variables 2013-12-13 17:52:43 +01:00
Arthur Schiwon d343c66f85 LDAP: fix TLS detection 2013-12-13 17:52:19 +01:00
Robin Appelman 0a0d89296b dont try to register background jobs if we haven't upgraded yet 2013-12-13 17:13:18 +01:00
blizzz fede36d515 Merge pull request #6308 from owncloud/fix_webdav_session_login_user_comparison
Fix webdav session login user comparison
2013-12-13 07:56:28 -08:00
Vincent Petry 527a16852e Merge pull request #6367 from owncloud/fix_expiration_date_conversion
rely only on php DateTime to parse the db datetime string
2013-12-13 07:36:30 -08:00
blizzz aab7c187f2 Merge pull request #6372 from owncloud/ldap_fix_setConfig
LDAP: fix method behind save button on advancend and expert tabs, fixes ...
2013-12-13 07:28:44 -08:00
Vincent Petry dd7b074dfa Fix webroot for update page
On the update page, config.js was missing which caused oc_webroot to not
be available. That would trigger the faulty oc_webroot fallback that
didn't take URLs like "/owncloud/index.php/files/apps" into account.

This fix adds config.js in the update page and also a fix for the
oc_webroot fallback, in case it is used elsewhere.

Backport of df1a404
2013-12-13 14:36:35 +01:00
Robin Appelman 71e93c2b79 remove unneeded ; in comment 2013-12-13 13:52:39 +01:00
Robin Appelman ca161e2a96 Add test for having utf8 filenames in the cache 2013-12-13 13:52:32 +01:00
Arthur Schiwon ab8691d84b adjust test 2013-12-13 12:56:06 +01:00
Thomas Müller a48cf28e17 Merge pull request #6364 from owncloud/backport-6302-stable6
Send "SET NAMES utf8" to MySQL for PHP below 5.3.6
2013-12-13 00:56:28 -08:00
Thomas Müller cd7c974fb6 Updated 3rdparty ref 2013-12-13 00:03:20 +01:00
Arthur Schiwon 3b5d032dd5 LDAP: fix method behind save button on advancend and expert tabs, fixes at least Home Folder setinng 2013-12-12 23:09:31 +01:00
Jörn Friedrich Dreyer f8088ecd29 rely only on php DateTime to parse the db datetime string 2013-12-12 19:09:21 +01:00
Bjoern Schiessle e83ff69465 toggle select all checkbox 2013-12-12 18:47:31 +01:00
Andreas Fischer 66af605697 Send "SET NAMES utf8" to MySQL for PHP below 5.3.6 2013-12-12 12:26:17 -05:00
Jörn Friedrich Dreyer 71dc81d420 update 3rdparty 2013-12-12 17:59:46 +01:00
blizzz 02c9bb76ff Merge pull request #6350 from owncloud/ldap_dont_autofill
LDAP: the browser shall not autofill userdn and password, usually login ...
2013-12-12 05:14:44 -08:00
Arthur Schiwon 7b388eb4a8 LDAP: the browser shall not autofill userdn and password, usually login credentials are inserted. fixes #6283 2013-12-12 14:04:10 +01:00
Arthur Schiwon c770089b50 coding style 2013-12-11 14:01:48 +01:00
Arthur Schiwon afaac05f61 coding style 2013-12-11 13:57:02 +01:00
Arthur Schiwon aba8199a82 On webdav sesssions, loginname was compared to username which does not need to match necessarily 2013-12-11 13:56:45 +01:00
Arthur Schiwon 0134b1ebfa LDAP: adjust documentation URL for OC 6 2013-12-10 17:45:03 +01:00
Jan-Christoph Borchardt 339e073399 fix shadow size and arrow position 2013-12-10 14:39:23 +01:00
Jan-Christoph Borchardt 4feafda822 fix the legacy popup to make calendar settings look nicer 2013-12-10 14:39:15 +01:00
Andreas Fischer 5ac339b866 Document memcached settings in config.sample.php 2013-12-09 14:35:20 +01:00
Morris Jobke 95c90ddbc4 fix wrong test data in l10n 2013-12-09 10:41:57 +01:00
Morris Jobke 2417c8a49e fix plural translation - fixes #6226 2013-12-09 10:41:51 +01:00
Frank Karlitschek 26d0adf2fe 6.0.0 2013-12-06 21:20:22 +01:00
Frank Karlitschek 734fdbddea RC4 2013-12-06 21:06:42 +01:00
Robin Appelman 33144941a9 add test case for removing background jobs that are throwing exceptions 2013-12-06 20:58:12 +01:00
Robin Appelman f309920bef Dont use exceptions for the backgroundjob test cases 2013-12-06 20:58:06 +01:00
Robin Appelman e78a309111 remove background jobs if they are failing 2013-12-06 20:57:58 +01:00
Robin Appelman 46a4ad4f3c Catch exceptions from background jobs and log them 2013-12-06 20:57:52 +01:00
Frank Karlitschek 3842c0d766 Merge pull request #6225 from owncloud/stable6-backgroundscan-reuse-etag
Stable6 backgroundscan reuse etag
2013-12-06 11:55:23 -08:00
Robin Appelman 8369c1f05b get rid of failing test that don't cause additional downloads 2013-12-06 19:19:10 +01:00
Robin Appelman cadf1c232e extend test case for etag preservation 2013-12-06 19:19:10 +01:00
Robin Appelman 713651738c reuse etags when doing a background scan 2013-12-06 19:19:10 +01:00
Bart Visscher 1475245465 XSendfile and encryption don't work together
The file on disk is encrypted, and not readable on client systems
2013-12-06 19:07:22 +01:00
Bart Visscher 281bbf4bd4 Don't try to encrypt a file when the temp file isn't created 2013-12-06 19:07:11 +01:00
Bart Visscher a2bbbb1448 Users of getFolderContent are mostly interested in the unecrypted file size 2013-12-06 19:06:42 +01:00
root 87a28957aa correctly propagate the return value of ldap_set_option
otherwise LDAP_OPT_REFERRALS won't be set to 0 and in turn
active directory paging will stop working
(Operations error on ldap_control_paged_result_response)
2013-12-06 18:01:42 +01:00
Bjoern Schiessle 01de6c565a set unencrypted_size to 0 after decryption... so that the unencrypted_size gets re-calculated if encryption was enabled again 2013-12-06 17:08:17 +01:00
Bjoern Schiessle f3e341edac add a optional parameter to skip check for expired files, this is necessary to find out to whom a file was shared after it was expired. 2013-12-06 14:42:09 +01:00
Bjoern Schiessle c5d6af3c5a get owner from share item, if we expire a share while the user updates his /Shared folder than the owner is different from the currently logged in user 2013-12-06 14:41:59 +01:00
Bjoern Schiessle cc1577054d it is not possible to unshare files 2013-12-06 12:36:31 +01:00
Björn Schießle 3e6b18b2d0 Merge pull request #6208 from owncloud/enc_only_create_new_key_if_no_other_key_exists
[Encryption] Only create new key if no other key exists
2013-12-06 03:07:52 -08:00
Nico Kaiser 7eb505e6dd Fix user's displayName being overwritten by (old) cookie 2013-12-05 20:56:41 +01:00
Bjoern Schiessle 91ca1cf985 fix typo 2013-12-05 20:02:41 +01:00
Bjoern Schiessle f8a4bcdd50 only create new key on password change if a recovery key exists or if the user don't have any private/public keys 2013-12-05 19:41:01 +01:00
Bjoern Schiessle 418d401bf9 show change password form if key couldn't be decrypted 2013-12-05 18:50:52 +01:00
Bjoern Schiessle d0afd774b7 add method to check if users private/public key exists 2013-12-05 18:49:55 +01:00
Morris Jobke 0af65cae37 fix appearance of error message - .errors is outdated 2013-12-05 16:11:52 +01:00
Frank Karlitschek 4d50fe5f12 ownCloud 6 RC3 2013-12-05 12:02:53 +01:00
Vincent Petry f24aca61a9 Merge pull request #6180 from owncloud/fix_6143
fixes checkboxes in Advanced Tab don't save unchecked state anymore, #6143
2013-12-04 08:33:12 -08:00
Bjoern Schiessle d3e2226b38 config switch to disable auto expire for the trash bin 2013-12-04 16:55:07 +01:00
Arthur Schiwon 73fa6259be LDAP Wizard: avoid a manually deactivated LDAP configuration is enabled by just opening the admin page 2013-12-04 14:01:31 +01:00
Morris Jobke dffc2a8b1c Revert "Adjust files_encryption requirements to the new core requirement (PHP 5.3.8)."
This reverts commit efbf18652c.
2013-12-04 13:26:59 +01:00
Vincent Petry fd634fdec8 Added unit test for the test() method
This is to make sure that method isn't broken
2013-12-04 13:22:25 +01:00
Arthur Schiwon 328ebaefde LDAP: make unsetting checkboxes from Advanced tab work again, fixes #6143 2013-12-04 13:15:17 +01:00
Thomas Müller 4de8c4e5db Merge pull request #6175 from owncloud/fix_6142
LDAP Wizard: make sure auto-detected suggestions are really applied initially, fixes #6142
2013-12-04 02:54:07 -08:00
Frank Karlitschek 8dc3cb2ffb lower required php version to 5.3.3 2013-12-04 10:51:12 +01:00
Arthur Schiwon c67ece0f6b LDAP Wizard: don't generate filter when not allowed 2013-12-03 20:50:46 +01:00
Arthur Schiwon 6640e120b7 some equals are more equal than other equals 2013-12-03 20:45:05 +01:00
Thomas Mueller 6f7b394d99 fixing PHPDoc and spelling 2013-12-03 17:49:37 +01:00
Andreas Fischer 91f47645b0 Use getLastError() everywhere. 2013-12-03 17:49:37 +01:00
Andreas Fischer 18903cc8f7 Add getLastError() 2013-12-03 17:49:37 +01:00
Andreas Fischer 7e467484a8 No function as oci_last_error. It's oci_error. 2013-12-03 17:49:37 +01:00
Andreas Fischer 21bf6abd41 There is no property such as dbusername. It's 'dbuser'. 2013-12-03 17:49:37 +01:00
Andreas Fischer 401728b2a2 Correct property name. It's 'dbpassword', with the 'db' prefix. 2013-12-03 17:49:37 +01:00
Andreas Fischer bfd0dc3314 Correct property name. It's just 'tableprefix', without the 'db' prefix. 2013-12-03 17:49:37 +01:00
Jan-Christoph Borchardt ad92b12559 fix time input field properly, details 2013-12-03 17:42:03 +01:00
Morris Jobke 4391992b8c fix public page - gallery view issues 2013-12-03 17:20:29 +01:00
Morris Jobke 728e6d735a fix trashbin and pbulic page controls 2013-12-03 17:20:23 +01:00
Morris Jobke 66df8c3bb3 fix and cleanup CSS for public page 2013-12-03 17:20:17 +01:00
Jan-Christoph Borchardt ca08d21da0 change different shades of grey for public share page to white 2013-12-03 17:20:08 +01:00
Jan-Christoph Borchardt 7d0f458f11 remove app specific code 2013-12-03 17:20:00 +01:00
Jan-Christoph Borchardt f15aeb3bbc fix details for buttons in header and controls bar 2013-12-03 17:19:53 +01:00
Jan-Christoph Borchardt 9333244925 account for shift of controls bar due to app navigation, do not shift on public page 2013-12-03 17:19:38 +01:00
Vincent Petry 50f5ab8515 Merge pull request #6173 from owncloud/stable6-extstorage-s3fixes
Backport of S3 ext storage fixes to stable6
2013-12-03 08:16:10 -08:00
Arthur Schiwon 4df0d2e7e8 LDAP Wizard: return correct var 2013-12-03 16:37:11 +01:00
Vincent Petry f2e17a0b68 Fixed placeholder after page reload
The placeholder somehow had too many characters stripping from it...
2013-12-03 15:55:24 +01:00
Vincent Petry e372971f2b Fixed test function for S3
Fixes #5752
2013-12-03 15:55:15 +01:00
Vincent Petry 3bf30377b8 Fixed Amazon S3 ext storage config UI
Optional parameters are now really optional

Fixes #5861
2013-12-03 15:55:08 +01:00
Arthur Schiwon 67b67b6d66 LDAP Wizard: make sure auto-detected suggestions are really applied initially. Also make initial filter compilation and user counting robust against race conditions. 2013-12-03 13:27:45 +01:00
Arthur Schiwon b8390f15d4 LDAP: on testing configuration, set active property to true, otherwise inactive connections cannot be tested properly 2013-12-03 13:21:55 +01:00
Robin Appelman 5ac3f9bfa5 check if a directory exists before we try to remove it 2013-12-03 12:45:41 +01:00
Arthur Schiwon 02fe013d2f LDAP: set default value for login filter to empty, otherwise the wizard signals completed configuration too early when it might be not correct, i.e. login won't work 2013-12-03 12:11:43 +01:00
Bjoern Schiessle 5e5e4fe3a4 make it possible to select folders 2013-12-02 22:23:51 +01:00
Arthur Schiwon d49e4e53fd LDAP Wizard: don't send ldap_tls change back to the interface as the element was removed, for it is detected fully automatically. Resolves an JS error and thus an ever-spinning spinner 2013-12-02 21:11:20 +01:00
Bjoern Schiessle 2d11290121 check explicitely all possible dir values 2013-12-02 16:06:51 +01:00
Bjoern Schiessle 1a197292da set delete all to true if a complete folder was deleted 2013-12-02 16:06:36 +01:00
Bjoern Schiessle 3b59979746 fix delete files from trash bin 2013-12-02 16:06:24 +01:00
Bjoern Schiessle 259d619af3 fix restore from files in sub-folders 2013-12-02 16:06:14 +01:00
12676 changed files with 292429 additions and 1304166 deletions
-15
View File
@@ -1,15 +0,0 @@
codecov:
branch: stable24
ci:
- drone.nextcloud.com
- !scrutinizer-ci.com
coverage:
precision: 2
round: down
range: "70...100"
status:
project: off
patch: off
comment: off
-47
View File
@@ -1,47 +0,0 @@
FROM ubuntu:focal
ARG DEBIAN_FRONTEND=noninteractive
# PHP
RUN apt-get update -y
RUN apt-get install --no-install-recommends -y \
php7.4 \
php7.4-gd \
php7.4-zip \
php7.4-curl \
php7.4-xml \
php7.4-mbstring \
php7.4-sqlite \
php7.4-xdebug \
php7.4-pgsql \
php7.4-intl \
php7.4-imagick \
php7.4-gmp \
php7.4-apcu \
php7.4-bcmath \
libmagickcore-6.q16-3-extra \
curl \
vim \
lsof \
make \
nodejs \
npm
RUN echo "xdebug.remote_enable = 1" >> /etc/php/7.4/cli/conf.d/20-xdebug.ini
RUN echo "xdebug.remote_autostart = 1" >> /etc/php/7.4/cli/conf.d/20-xdebug.ini
# Docker
RUN apt-get -y install \
apt-transport-https \
ca-certificates \
curl \
gnupg-agent \
software-properties-common
RUN curl -fsSL https://download.docker.com/linux/ubuntu/gpg | apt-key add -
RUN add-apt-repository \
"deb [arch=amd64] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) \
stable"
RUN apt-get update -y
RUN apt-get install -y docker-ce docker-ce-cli containerd.io
RUN ln -s /var/run/docker-host.sock /var/run/docker.sock
-18
View File
@@ -1,18 +0,0 @@
<?php
$cloudEnvironmentId = getenv('CLOUDENV_ENVIRONMENT_ID');
$CONFIG = [
'mail_from_address' => 'no-reply',
'mail_smtpmode' => 'smtp',
'mail_sendmailmode' => 'smtp',
'mail_domain' => 'example.com',
'mail_smtphost' => 'localhost',
'mail_smtpport' => '1025',
'memcache.local' => '\OC\Memcache\APCu',
];
if($cloudEnvironmentId !== true) {
$CONFIG['overwritehost'] = $cloudEnvironmentId . '-80.apps.codespaces.githubusercontent.com';
$CONFIG['overwriteprotocol'] = 'https';
}
-22
View File
@@ -1,22 +0,0 @@
{
"name": "NextcloudServer",
"dockerComposeFile": "docker-compose.yml",
"service": "nextclouddev",
"postCreateCommand": ".devcontainer/setup.sh",
"forwardPorts": [
80,
8080,
8025
],
"runArgs": [
"--privileged"
],
"extensions": [
"felixfbecker.php-debug",
"felixfbecker.php-intellisense",
"ms-azuretools.vscode-docker"
],
"settings": {
"php.suggest.basic": false,
}
}
-29
View File
@@ -1,29 +0,0 @@
version: '3'
services:
nextclouddev:
build: .
volumes:
- .:/workspace:cached
- /var/run/docker.sock:/var/run/docker-host.sock
command: /bin/sh -c "while sleep 1000; do :; done"
ports:
- 80:80
- 8080:8080
- 8025:8025
db:
image: postgres
restart: always
environment:
POSTGRES_PASSWORD: postgres
network_mode: service:nextclouddev
adminer:
image: adminer
restart: always
network_mode: service:nextclouddev
mailhog:
image: mailhog/mailhog
restart: always
network_mode: service:nextclouddev
-8
View File
@@ -1,8 +0,0 @@
#!/bin/bash
DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )/../" >/dev/null 2>&1 && pwd )"
cd $DIR/
git submodule update --init
# Codespace config
cp .devcontainer/codespace.config.php config/codespace.config.php
-2039
View File
File diff suppressed because it is too large Load Diff
-25
View File
@@ -1,25 +0,0 @@
# https://editorconfig.org
root = true
[*]
charset = utf-8
end_of_line = lf
indent_size = 4
indent_style = tab
insert_final_newline = true
trim_trailing_whitespace = true
[*.feature]
indent_size = 2
indent_style = space
[*.yml]
indent_size = 2
indent_style = space
[*.md]
trim_trailing_whitespace = false
[*.svg]
insert_final_newline = false
-11
View File
@@ -1,11 +0,0 @@
# Ignoring folders for eslint
node_modules/
3rdparty/
**/vendor/
**/l10n/
**/js/*
*.config.js
tests/lib/
# TODO: remove when comments files is not using handlebar templates anymore
apps/comments/src/templates.js
-28
View File
@@ -1,28 +0,0 @@
module.exports = {
globals: {
__webpack_nonce__: true,
_: true,
$: true,
moment: true,
escapeHTML: true,
oc_userconfig: true,
dayNames: true,
firstDay: true,
},
extends: ['@nextcloud'],
rules: {
'no-tabs': 'warn',
// TODO: make sure we fix this as this is bad vue coding style.
// Use proper sync modifier
'vue/no-mutating-props': 'warn',
'vue/custom-event-name-casing': ['error', 'kebab-case', {
// allows custom xxxx:xxx events formats
ignores: ['/^[a-z]+(?:-[a-z]+)*:[a-z]+(?:-[a-z]+)*$/u'],
}],
},
settings: {
jsdoc: {
mode: 'typescript',
},
},
}
-4
View File
@@ -1,4 +0,0 @@
# .git-blame-ignore-revs
# SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: AGPL-3.0-or-later
-2
View File
@@ -1,2 +0,0 @@
/dist/* binary
/package-lock.json binary
-10
View File
@@ -1,10 +0,0 @@
*/Activity/* @nickvergessen
*/Notifications/* @nickvergessen
/apps/dav/lib/CalDAV @ChristophWurst @miaulalala @tcitworld
/apps/dav/lib/CardDAV @ChristophWurst @miaulalala @tcitworld
# Two-Factor Authentication
# https://github.com/nextcloud/wg-two-factor-authentication#members
/apps/twofactor_backupcodes @ChristophWurst @miaulalala @nickvergessen
*/TwoFactorAuth/* @ChristophWurst @miaulalala @nickvergessen
/core/templates/twofactor* @ChristophWurst @miaulalala @nickvergessen
-68
View File
@@ -1,68 +0,0 @@
## Submitting issues
If you have questions about how to install or use Nextcloud, please direct these to our [forum][forum]. We are also available on [IRC][irc].
### Short version
* The [**issue templates can be found here**][templates] but be aware of the different repositories! See list below. Please always use an issue template when reporting issues.
### Guidelines
* Please search the existing issues first, it's likely that your issue was already reported or even fixed.
- Go to one of the repositories, click "issues" and type any word in the top search/command bar.
- You can also filter by appending e. g. "state:open" to the search string.
- More info on [search syntax within github](https://help.github.com/articles/searching-issues)
* This repository ([server](https://github.com/nextcloud/server/issues)) is *only* for issues within the Nextcloud Server code. This also includes the apps: files, encryption, external storage, sharing, deleted files, versions, LDAP, and WebDAV Auth
* __SECURITY__: Report any potential security bug to us via [our HackerOne page](https://hackerone.com/nextcloud) following our [security policy](https://nextcloud.com/security/) instead of filing an issue in our bug tracker.
* The issues in other components should be reported in their respective repositories: You will find them in our [GitHub Organization](https://github.com/nextcloud/)
* Report the issue using one of our [templates][templates], they include all the information we need to track down the issue.
Help us to maximize the effort we can spend fixing issues and adding new features, by not reporting duplicate issues.
[templates]: ./ISSUE_TEMPLATE
[forum]: https://help.nextcloud.com/
[irc]: https://webchat.freenode.net/?channels=nextcloud
## Contributing to Source Code
Thanks for wanting to contribute source code to Nextcloud. That's great!
Please read the [Developer Manuals][devmanual] to learn how to create your first application or how to test the Nextcloud code with PHPUnit.
### Tests
In order to constantly increase the quality of our software we can no longer accept pull request which submit un-tested code.
It is a must have that changed and added code segments are unit tested.
In some areas unit testing is hard (aka almost impossible) as of today - in these areas refactoring WHILE fixing a bug is encouraged to enable unit testing.
### Sign your work
We use the Developer Certificate of Origin (DCO) as a additional safeguard
for the Nextcloud project. This is a well established and widely used
mechanism to assure contributors have confirmed their right to license
their contribution under the project's license.
Please read [contribute/developer-certificate-of-origin][dcofile].
If you can certify it, then just add a line to every git commit message:
````
Signed-off-by: Random J Developer <random@developer.example.org>
````
Use your real name (sorry, no pseudonyms or anonymous contributions).
If you set your `user.name` and `user.email` git configs, you can sign your
commit automatically with `git commit -s`. You can also use git [aliases](https://git-scm.com/book/tr/v2/Git-Basics-Git-Aliases)
like `git config --global alias.ci 'commit -s'`. Now you can commit with
`git ci` and the commit will be signed.
### Apply a license
In case you are not sure how to add or update the license header correctly please have a look at [contribute/HowToApplyALicense.md][applyalicense]
[devmanual]: https://docs.nextcloud.com/server/latest/developer_manual/
[dcofile]: https://github.com/nextcloud/server/blob/master/contribute/developer-certificate-of-origin
[applyalicense]: https://github.com/nextcloud/server/blob/master/contribute/HowToApplyALicense.md
## Translations
Please submit translations via [Transifex][transifex].
[transifex]: https://www.transifex.com/nextcloud
-1
View File
@@ -1 +0,0 @@
custom: https://nextcloud.com/include/
-205
View File
@@ -1,205 +0,0 @@
name: "Bug report: Nextcloud Server"
description: "Submit a report and help us improve Nextcloud Server"
title: "[Bug]: "
labels: ["bug", "0. Needs triage"]
body:
- type: markdown
attributes:
value: |
### 👍 Thank you for contributing to our project!
Please note this is a **free and open-source** project. Most people take on their own time to help you, so please, be patient.
You can obtain [Enterprise support](https://nextcloud.com/support/) if you run Nextcloud Server in a mission critical environment.
- type: checkboxes
id: before-posting
attributes:
label: "⚠️ This issue respects the following points: ⚠️"
description: All conditions are **required**. Your issue can be closed if these are checked incorrectly.
options:
- label: This is a **bug**, not a question or a configuration/webserver/proxy issue.
required: true
- label: This issue is **not** already reported on Github _(I've searched it)_.
required: true
- label: Nextcloud Server **is** up to date. See [Maintenance and Release Schedule](https://github.com/nextcloud/server/wiki/Maintenance-and-Release-Schedule) for supported versions.
required: true
- label: I agree to follow Nextcloud's [Code of Conduct](https://nextcloud.com/contribute/code-of-conduct/).
required: true
- type: textarea
id: bug-description
attributes:
label: Bug description
description: |
Provide a description of the bug you're experiencing.
Don't just expect someone will guess what your specific problem is and provide full details.
validations:
required: true
- type: textarea
id: reproduce
attributes:
label: Steps to reproduce
description: |
Describe the steps to reproduce the bug.
The better your description is _(go 'here', click 'there'...)_ the fastest you'll get an _(accurate)_ answer.
value: |
1.
2.
3.
validations:
required: true
- type: textarea
id: expected-behavior
attributes:
label: Expected behavior
description: Describe what you expected to happen instead.
validations:
required: true
- type: dropdown
id: install-method
attributes:
label: Installation method
description: |
Select installation method you've used.
_Describe the method in the "Additional info" section if you chose "Other"._
options:
- "Manual installation"
- "Official Docker image"
- "Official VM scripts"
- "Official SNAP package"
- "Official All-in-One appliance"
- "Web installer on a VPS or web space"
- "Other"
- type: dropdown
id: system
attributes:
label: Operating system
description: |
Select operating system where Nextcloud Server is installed.
_Describe in the "Additional info" section if you chose "Other"._
options:
- "Debian/Ubuntu"
- "RHEL/CentOS"
- "Other"
- type: dropdown
id: php
attributes:
label: PHP engine version
description: |
Select PHP engine version serving Nextcloud Server.
_Describe in the "Additional info" section if you chose "Other"._
options:
- "PHP 7.3"
- "PHP 7.4"
- "PHP 8.0"
- "PHP 8.1"
- "Other"
- type: dropdown
id: webserver
attributes:
label: Web server
description: |
Select Webserver serving Nextcloud Server.
_Describe in the "Additional info" section if you chose "Other"._
options:
- "Apache (supported)"
- "Nginx"
- "Lighttpd"
- "Other"
- type: dropdown
id: database
attributes:
label: Database engine version
description: |
Select Database engine serving Nextcloud Server.
_Describe in the "Additional info" section if you chose "Other"._
options:
- "MySQL"
- "MariaDB"
- "PostgreSQL"
- "SQlite"
- "Oracle"
- "Other"
- type: dropdown
id: fresh
attributes:
label: Is this bug present after an update or on a fresh install?
description: |
Select if bug is present after an update or on a fresh install.
options:
- "Updated from a minor version (ex. 22.2.3 to 22.2.4)"
- "Updated to a major version (ex. 22.2.3 to 23.0.1)"
- "Fresh Nextcloud Server install"
- type: dropdown
id: encryption
attributes:
label: Are you using the Nextcloud Server Encryption module?
description: Select if encryption is Enabled on your Nextcloud Server.
options:
- "Encryption is Enabled"
- "Encryption is Disabled"
- type: checkboxes
id: users
attributes:
label: What user-backends are you using?
description: |
Select **all** user-backends Enabled on your Nextcloud Server.
_Describe in the "Additional info" section if you chose "Other"._
options:
- label: "Default user-backend _(database)_"
- label: "LDAP/ Active Directory"
- label: "SSO - SAML"
- label: "Other"
- type: textarea
id: configs
attributes:
label: Configuration report
description: |
Provide information about your configuration.
To get this information, execute one of the following commands on the CLI:
```shell
sudo -u www-data php occ config:list system
php occ config:list system
./occ config:list system
```
> NOTE: This will be automatically formatted into code for better readability.
render: shell
- type: textarea
id: apps
attributes:
label: List of activated Apps
description: |
Provide information about your apps.
To get this information, execute one of the following commands on the CLI:
```shell
sudo -u www-data php occ app:list
php occ app:list
./occ app:list
```
> NOTE: This will be automatically formatted into code for better readability.
render: shell
validations:
required: true
- type: textarea
id: nextcloud-signingstatus
attributes:
label: Nextcloud Signing status
description: |
Provide Nextcloud Signing status.
First, login as Admin user into your Nextcloud, then access this URL:
```shell
https://yournextcloud.tld/index.php/settings/integrity/failed
```
> NOTE: This will be automatically formatted into code for better readability.
render: shell
- type: textarea
id: nextcloud-log
attributes:
label: Nextcloud Logs
description: |
Provide Nextcloud logs lines.
Copy all contents from `data/nextcloud.log` or a RAW from `/settings/admin/logging` section:
> NOTE: This will be automatically formatted into code for better readability.
render: shell
- type: textarea
id: additional-info
attributes:
label: Additional info
description: Any additional information related to the issue (ex. browser console errors, software versions).
-48
View File
@@ -1,48 +0,0 @@
---
name: 🚀 Feature request
about: Suggest an idea for this project
labels: enhancement, 0. Needs triage
---
<!--
Thanks for reporting issues back to Nextcloud!
Note: This is the **issue tracker of Nextcloud**, please do NOT use this to get answers to your questions or get help for fixing your installation. This is a place to report bugs to developers, after your server has been debugged. You can find help debugging your system on our home user forums: https://help.nextcloud.com or, if you use Nextcloud in a large organization, ask our engineers on https://portal.nextcloud.com. See also https://nextcloud.com/support for support options.
Nextcloud is an open source project backed by Nextcloud GmbH. Most of our volunteers are home users and thus primarily care about issues that affect home users. Our paid engineers prioritize issues of our customers. If you are neither a home user nor a customer, consider paying somebody to fix your issue, do it yourself or become a customer.
Guidelines for submitting issues:
* Please search the existing issues first, it's likely that your issue was already reported or even fixed.
- Go to https://github.com/nextcloud and type any word in the top search/command bar. You probably see something like "We couldnt find any repositories matching ..." then click "Issues" in the left navigation.
- You can also filter by appending e. g. "state:open" to the search string.
- More info on search syntax within github: https://help.github.com/articles/searching-issues
* This repository https://github.com/nextcloud/server/issues is *only* for issues within the Nextcloud Server code. This also includes the apps: files, encryption, external storage, sharing, deleted files, versions, LDAP, and WebDAV Auth
* SECURITY: Report any potential security bug to us via our HackerOne page (https://hackerone.com/nextcloud) following our security policy (https://nextcloud.com/security/) instead of filing an issue in our bug tracker.
* The issues in other components should be reported in their respective repositories: You will find them in our GitHub Organization (https://github.com/nextcloud/)
-->
<!--- Please keep this note for other contributors -->
### How to use GitHub
* Please use the 👍 [reaction](https://blog.github.com/2016-03-10-add-reactions-to-pull-requests-issues-and-comments/) to show that you are interested into the same feature.
* Please don't comment if you have no relevant information to add. It's just extra noise for everyone subscribed to this issue.
* Subscribe to receive notifications on status change and new comments.
**Is your feature request related to a problem? Please describe.**
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
**Describe the solution you'd like**
A clear and concise description of what you want to happen.
**Describe alternatives you've considered**
A clear and concise description of any alternative solutions or features you've considered.
**Additional context**
Add any other context or screenshots about the feature request here.
-8
View File
@@ -1,8 +0,0 @@
blank_issues_enabled: false
contact_links:
- name: ❓ Community Support and Help
url: https://help.nextcloud.com/
about: Configuration, webserver/proxy or performance issues and other questions
- name: 💼 Nextcloud Enterprise
url: https://portal.nextcloud.com/
about: If you are a Nextcloud Enterprise customer, or need Professional support, so it can be resolved directly by our dedicated engineers more quickly
-3
View File
@@ -1,3 +0,0 @@
firstPRMergeComment: >
Thanks for your first pull request and welcome to the community!
Feel free to keep them coming! If you are looking for issues to tackle then have a look at this selection: https://github.com/nextcloud/server/issues?q=is%3Aopen+is%3Aissue+label%3A%22good+first+issue%22
-165
View File
@@ -1,165 +0,0 @@
version: 2
updates:
# Linting and coding style
- package-ecosystem: composer
directory: "/"
schedule:
interval: weekly
day: saturday
time: "03:00"
timezone: Europe/Paris
labels:
- "3. to review"
- "feature: dependencies"
reviewers:
- "nextcloud/server-dependabot"
# Main master npm
- package-ecosystem: npm
directory: "/"
schedule:
interval: weekly
day: saturday
time: "03:00"
timezone: Europe/Paris
open-pull-requests-limit: 10
labels:
- "3. to review"
- "feature: dependencies"
reviewers:
- "nextcloud/server-dependabot"
# Testing master npm
- package-ecosystem: npm
directory: "/build"
schedule:
interval: weekly
day: saturday
time: "03:00"
timezone: Europe/Paris
labels:
- "3. to review"
- "feature: dependencies"
# Testing master composer
- package-ecosystem: composer
directory: "/build/integration"
schedule:
interval: weekly
day: saturday
time: "03:00"
timezone: Europe/Paris
labels:
- "3. to review"
- "feature: dependencies"
# Main stableXX npm
- package-ecosystem: npm
directory: "/"
schedule:
interval: weekly
day: saturday
time: "03:00"
timezone: Europe/Paris
target-branch: stable21
labels:
- "3. to review"
- "feature: dependencies"
reviewers:
- "nextcloud/server-dependabot"
ignore:
# ignore all GitHub linguist patch updates
- dependency-name: "*"
update-types: ["version-update:semver-major", "version-update:semver-minor", "version-update:semver-patch"]
- package-ecosystem: npm
directory: "/"
schedule:
interval: weekly
day: saturday
time: "03:00"
timezone: Europe/Paris
target-branch: stable22
labels:
- "3. to review"
- "feature: dependencies"
reviewers:
- "nextcloud/server-dependabot"
ignore:
# ignore all GitHub linguist patch updates
- dependency-name: "*"
update-types: ["version-update:semver-major", "version-update:semver-minor"]
- package-ecosystem: npm
directory: "/"
schedule:
interval: weekly
day: saturday
time: "03:00"
timezone: Europe/Paris
target-branch: stable23
labels:
- "3. to review"
- "feature: dependencies"
reviewers:
- "nextcloud/server-dependabot"
ignore:
# ignore all GitHub linguist patch updates
- dependency-name: "*"
update-types: ["version-update:semver-major", "version-update:semver-minor"]
# Testing StableXX composer
- package-ecosystem: composer
directory: "/build/integration"
schedule:
interval: weekly
day: saturday
time: "03:00"
timezone: Europe/Paris
target-branch: stable21
labels:
- "3. to review"
- "feature: dependencies"
reviewers:
- "nextcloud/server-dependabot"
ignore:
# ignore all GitHub linguist patch updates
- dependency-name: "*"
update-types: ["version-update:semver-major", "version-update:semver-minor", "version-update:semver-patch"]
- package-ecosystem: composer
directory: "/build/integration"
schedule:
interval: weekly
day: saturday
time: "03:00"
timezone: Europe/Paris
target-branch: stable22
labels:
- "3. to review"
- "feature: dependencies"
reviewers:
- "nextcloud/server-dependabot"
ignore:
# ignore all GitHub linguist patch updates
- dependency-name: "*"
update-types: ["version-update:semver-major", "version-update:semver-minor"]
- package-ecosystem: composer
directory: "/build/integration"
schedule:
interval: weekly
day: saturday
time: "03:00"
timezone: Europe/Paris
target-branch: stable23
labels:
- "3. to review"
- "feature: dependencies"
reviewers:
- "nextcloud/server-dependabot"
ignore:
# ignore all GitHub linguist patch updates
- dependency-name: "*"
update-types: ["version-update:semver-major", "version-update:semver-minor"]
-30
View File
@@ -1,30 +0,0 @@
# This workflow is provided via the organization template repository
#
# https://github.com/nextcloud/.github
# https://docs.github.com/en/actions/learn-github-actions/sharing-workflows-with-your-organization
name: Pull request checks
on: pull_request
jobs:
block-merges-eol:
name: Block merges for EOL branches
# Only run on stableXX branches
if: startsWith( github.base_ref, 'stable')
runs-on: ubuntu-latest
steps:
- name: Download updater config
run: curl https://raw.githubusercontent.com/nextcloud/updater_server/production/config/config.php --output config.php
- name: Set server major version environment
run: |
# retrieve version number from branch reference
server_major=$(echo "${{ github.base_ref }}" | sed -En 's/stable//p')
echo "server_major=$server_major" >> $GITHUB_ENV
- name: Checking if ${{ env.server_major }} is EOL
run: |
php -r 'echo json_encode(require_once "config.php");' | jq --arg version "${{ env.server_major }}" '.stable[$version]["100"].eol' | grep --silent -i 'false'
-21
View File
@@ -1,21 +0,0 @@
# This workflow is provided via the organization template repository
#
# https://github.com/nextcloud/.github
# https://docs.github.com/en/actions/learn-github-actions/sharing-workflows-with-your-organization
name: Pull request checks
on: pull_request
jobs:
block-merges-during-freeze:
name: Block merges during feature freezes
runs-on: ubuntu-latest
steps:
- name: Download version.php from ${{ github.base_ref }}
run: curl https://raw.githubusercontent.com/nextcloud/server/${{ github.base_ref }}/version.php --output version.php
- name: Run check
run: cat version.php | grep 'OC_VersionString' | grep -i -v 'RC'
@@ -1,53 +0,0 @@
name: Block merging with outdated 3rdparty/
on:
pull_request:
types: [opened, ready_for_review, reopened, synchronize]
permissions:
contents: read
concurrency:
group: block-outdated-3rdparty-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
jobs:
block-outdated-3rdparty:
name: Block merging with outdated 3rdparty/
runs-on: ubuntu-latest-low
steps:
- name: Check requirement
uses: dorny/paths-filter@4512585405083f25c027a35db413c2b3b9006d50 # v2.11.1
id: changes
continue-on-error: true
with:
filters: |
src:
- '3rdparty'
- 'version.php'
- name: Checkout
uses: actions/checkout@9bb56186c3b09b4f86b1c65136769dd318469633 # v4.1.2
- name: 3rdparty commit hash on current branch
id: actual
run: |
echo "commit=$(git submodule status | grep ' 3rdparty' | egrep -o '[a-f0-9]{40}')" >> "$GITHUB_OUTPUT"
- name: Last 3rdparty commit on target branch
id: target
run: |
echo "commit=$(git ls-remote https://github.com/nextcloud/3rdparty refs/heads/${{ github.base_ref }} | awk '{ print $1}')" >> "$GITHUB_OUTPUT"
- name: Compare if 3rdparty commits are different
run: |
echo '3rdparty/ seems to not point to the last commit of the dedicated branch:'
echo "Branch has: ${{ steps.actual.outputs.commit }}"
echo "${{ github.base_ref }} has: ${{ steps.target.outputs.commit }}"
- name: Fail if 3rdparty commits are different
if: ${{ steps.changes.outputs.src != 'false' && steps.actual.outputs.commit != steps.target.outputs.commit }}
run: |
exit 1
-117
View File
@@ -1,117 +0,0 @@
name: Compile Command
on:
issue_comment:
types: [created]
jobs:
init:
runs-on: ubuntu-latest
# On pull requests and if the comment starts with `/compile`
if: github.event.issue.pull_request != '' && startsWith(github.event.comment.body, '/compile')
outputs:
git_path: ${{ steps.git-path.outputs.path }}
arg1: ${{ steps.command.outputs.arg1 }}
arg2: ${{ steps.command.outputs.arg2 }}
head_ref: ${{ steps.comment-branch.outputs.head_ref }}
steps:
- name: Check actor permission
uses: skjnldsv/check-actor-permission@e591dbfe838300c007028e1219ca82cc26e8d7c5 # v2.1
with:
require: write
- name: Add reaction on start
uses: peter-evans/create-or-update-comment@a35cf36e5301d70b76f316e867e7788a55a31dae # v1.4.5
with:
token: ${{ secrets.COMMAND_BOT_PAT }}
repository: ${{ github.event.repository.full_name }}
comment-id: ${{ github.event.comment.id }}
reaction-type: "+1"
- name: Parse command
uses: skjnldsv/parse-command-comment@7cef1df370a99dfd5bf896d50121390c96785db8 # v2.0
id: command
# Init path depending on which command is run
- name: Init path
id: git-path
run: |
if ${{ startsWith(steps.command.outputs.arg1, '/') }}; then
echo "::set-output name=path::${{ github.workspace }}${{steps.command.outputs.arg1}}"
else
echo "::set-output name=path::${{ github.workspace }}${{steps.command.outputs.arg2}}"
fi
- name: Init branch
uses: xt0rted/pull-request-comment-branch@653a7d5ca8bd91d3c5cb83286063314d0b063b8e # v1.4.0
id: comment-branch
process:
runs-on: ubuntu-latest
needs: init
steps:
- name: Checkout ${{ needs.init.outputs.head_ref }}
uses: actions/checkout@ee0669bd1cc54295c223e0bb666b733df41de1c5 # v2.7.0
with:
token: ${{ secrets.COMMAND_BOT_PAT }}
fetch-depth: 0
ref: ${{ needs.init.outputs.head_ref }}
- name: Setup git
run: |
git config --local user.email "nextcloud-command@users.noreply.github.com"
git config --local user.name "nextcloud-command"
- name: Read package.json node and npm engines version
uses: skjnldsv/read-package-engines-version-actions@1bdcee71fa343c46b18dc6aceffb4cd1e35209c6 # v1.2
id: package-engines-versions
with:
fallbackNode: '^12'
fallbackNpm: '^6'
- name: Set up node ${{ steps.package-engines-versions.outputs.nodeVersion }}
uses: actions/setup-node@7c12f8017d5436eb855f1ed4399f037a36fbd9e8 # v2.5.2
with:
node-version: ${{ steps.package-engines-versions.outputs.nodeVersion }}
cache: npm
- name: Set up npm ${{ steps.package-engines-versions.outputs.npmVersion }}
run: npm i -g npm@"${{ steps.package-engines-versions.outputs.npmVersion }}"
- name: Install dependencies & build
run: |
npm ci
npm run build --if-present
- name: Commit and push default
if: ${{ needs.init.outputs.arg1 != 'fixup' && needs.init.outputs.arg1 != 'amend' }}
run: |
git add ${{ needs.init.outputs.git_path }}
git commit --signoff -m 'Compile assets'
git push origin ${{ needs.init.outputs.head_ref }}
- name: Commit and push fixup
if: ${{ needs.init.outputs.arg1 == 'fixup' }}
run: |
git add ${{ needs.init.outputs.git_path }}
git commit --fixup=HEAD --signoff
git push origin ${{ needs.init.outputs.head_ref }}
- name: Commit and push amend
if: ${{ needs.init.outputs.arg1 == 'amend' }}
run: |
git add ${{ needs.init.outputs.git_path }}
git commit --amend --no-edit --signoff
git push --force origin ${{ needs.init.outputs.head_ref }}
- name: Add reaction on failure
uses: peter-evans/create-or-update-comment@a35cf36e5301d70b76f316e867e7788a55a31dae # v1.4.5
if: failure()
with:
token: ${{ secrets.COMMAND_BOT_PAT }}
repository: ${{ github.event.repository.full_name }}
comment-id: ${{ github.event.comment.id }}
reaction-type: "-1"
-46
View File
@@ -1,46 +0,0 @@
# This workflow is provided via the organization template repository
#
# https://github.com/nextcloud/.github
# https://docs.github.com/en/actions/learn-github-actions/sharing-workflows-with-your-organization
name: Rebase command
on:
issue_comment:
types: created
jobs:
rebase:
runs-on: ubuntu-latest
# On pull requests and if the comment starts with `/rebase`
if: github.event.issue.pull_request != '' && startsWith(github.event.comment.body, '/rebase')
steps:
- name: Add reaction on start
uses: peter-evans/create-or-update-comment@a35cf36e5301d70b76f316e867e7788a55a31dae # v1.4.5
with:
token: ${{ secrets.COMMAND_BOT_PAT }}
repository: ${{ github.event.repository.full_name }}
comment-id: ${{ github.event.comment.id }}
reaction-type: "+1"
- name: Checkout the latest code
uses: actions/checkout@f43a0e5ff2bd294095638e18286ca9a3d1956744 # v3.6.0
with:
fetch-depth: 0
token: ${{ secrets.COMMAND_BOT_PAT }}
- name: Automatic Rebase
uses: cirrus-actions/rebase@c473b716e3fcde0c6bf67416e2c2882830ad40f6 # 1.5
env:
GITHUB_TOKEN: ${{ secrets.COMMAND_BOT_PAT }}
- name: Add reaction on failure
uses: peter-evans/create-or-update-comment@a35cf36e5301d70b76f316e867e7788a55a31dae # v1.4.5
if: failure()
with:
token: ${{ secrets.COMMAND_BOT_PAT }}
repository: ${{ github.event.repository.full_name }}
comment-id: ${{ github.event.comment.id }}
reaction-type: "-1"
@@ -1,29 +0,0 @@
# This workflow is provided via the organization template repository
#
# https://github.com/nextcloud/.github
# https://docs.github.com/en/actions/learn-github-actions/sharing-workflows-with-your-organization
name: Dependabot
on:
pull_request_target:
branches:
- master
- stable*
jobs:
auto-approve-merge:
if: github.actor == 'dependabot[bot]'
runs-on: ubuntu-latest
steps:
# Github actions bot approve
- uses: hmarr/auto-approve-action@b40d6c9ed2fa10c9a2749eca7eb004418a705501 # v2
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
# Nextcloud bot approve and merge request
- uses: ahmadnassri/action-dependabot-auto-merge@45fc124d949b19b6b8bf6645b6c9d55f4f9ac61a # v2.6.6
with:
target: minor
github-token: ${{ secrets.DEPENDABOT_AUTOMERGE_TOKEN }}
-20
View File
@@ -1,20 +0,0 @@
# This workflow is provided via the organization template repository
#
# https://github.com/nextcloud/.github
# https://docs.github.com/en/actions/learn-github-actions/sharing-workflows-with-your-organization
name: Pull request checks
on: pull_request
jobs:
commit-message-check:
name: Block fixup and squash commits
runs-on: ubuntu-latest
steps:
- name: Run check
uses: xt0rted/block-autosquash-commits-action@79880c36b4811fe549cfffe20233df88876024e7 # v2.2.0
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
-80
View File
@@ -1,80 +0,0 @@
name: FTP
on:
push:
branches:
- master
- stable*
paths:
- 'apps/files_external/**'
pull_request:
paths:
- 'apps/files_external/**'
env:
APP_NAME: files_external
jobs:
ftp-tests:
runs-on: ubuntu-latest
if: ${{ github.repository_owner != 'nextcloud-gmbh' }}
strategy:
# do not stop on another job's failure
fail-fast: false
matrix:
php-versions: ['7.4', '8.0']
ftpd: ['proftpd', 'vsftpd', 'pure-ftpd']
name: php${{ matrix.php-versions }}-${{ matrix.ftpd }}
steps:
- name: Checkout server
uses: actions/checkout@ee0669bd1cc54295c223e0bb666b733df41de1c5 # v2.7.0
with:
submodules: true
- name: Set up ftpd
run: |
sudo mkdir /tmp/ftp
sudo chown -R 0777 /tmp/ftp
if [[ "${{ matrix.ftpd }}" == 'proftpd' ]]; then docker run --name ftp -d --net host -e FTP_USERNAME=test -e FTP_PASSWORD=test -v /tmp/ftp:/home/test hauptmedia/proftpd; fi
if [[ "${{ matrix.ftpd }}" == 'vsftpd' ]]; then docker run --name ftp -d --net host -e FTP_USER=test -e FTP_PASS=test -e PASV_ADDRESS=127.0.0.1 -v /tmp/ftp:/home/vsftpd/test fauria/vsftpd; fi
if [[ "${{ matrix.ftpd }}" == 'pure-ftpd' ]]; then docker run --name ftp -d --net host -e "PUBLICHOST=localhost" -e FTP_USER_NAME=test -e FTP_USER_PASS=test -e FTP_USER_HOME=/home/test -v /tmp/ftp2:/home/test -v /tmp/ftp2:/etc/pure-ftpd/passwd stilliard/pure-ftpd; fi
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@44454db4f0199b8b9685a5d763dc37cbf79108e1 # v2.36.0
with:
php-version: ${{ matrix.php-versions }}
tools: phpunit:9
extensions: mbstring, fileinfo, intl, sqlite, pdo_sqlite, zip, gd
- name: Set up Nextcloud
run: |
mkdir data
./occ maintenance:install --verbose --database=sqlite --database-name=nextcloud --database-host=127.0.0.1 --database-user=root --database-pass=rootpassword --admin-user admin --admin-pass password
./occ app:enable --force ${{ env.APP_NAME }}
php -S localhost:8080 &
- name: smoketest ftp
run: |
php -r 'var_dump(file_put_contents("ftp://test:test@localhost/ftp.txt", "asd"));'
php -r 'var_dump(file_get_contents("ftp://test:test@localhost/ftp.txt"));'
php -r 'var_dump(mkdir("ftp://test:test@localhost/asdads"));'
ls -l /tmp/ftp
- name: PHPUnit
run: |
echo "<?php return ['run' => true,'host' => 'localhost','user' => 'test','password' => 'test', 'root' => ''];" > apps/${{ env.APP_NAME }}/tests/config.ftp.php
phpunit --configuration tests/phpunit-autotest-external.xml apps/files_external/tests/Storage/FtpTest.php
- name: ftpd logs
if: always()
run: |
docker logs ftp
ftp-summary:
runs-on: ubuntu-latest
needs: ftp-tests
if: always()
steps:
- name: Summary status
run: if ${{ needs.ftp-tests.result != 'success' }}; then exit 1; fi
-44
View File
@@ -1,44 +0,0 @@
# This workflow is provided via the organization template repository
#
# https://github.com/nextcloud/.github
# https://docs.github.com/en/actions/learn-github-actions/sharing-workflows-with-your-organization
name: Lint
on:
pull_request:
push:
branches:
- master
- stable*
jobs:
lint:
runs-on: ubuntu-latest
name: eslint
steps:
- name: Checkout
uses: actions/checkout@ee0669bd1cc54295c223e0bb666b733df41de1c5 # v2.7.0
- name: Read package.json node and npm engines version
uses: skjnldsv/read-package-engines-version-actions@1e2f46e78e31476bc71ebd909105e6e033d5a6f4 # v1.1
id: versions
with:
fallbackNode: '^12'
fallbackNpm: '^6'
- name: Set up node ${{ steps.versions.outputs.nodeVersion }}
uses: actions/setup-node@7c12f8017d5436eb855f1ed4399f037a36fbd9e8 # v2.5.2
with:
node-version: ${{ steps.versions.outputs.nodeVersion }}
- name: Set up npm ${{ steps.versions.outputs.npmVersion }}
run: npm i -g npm@"${{ steps.versions.outputs.npmVersion }}"
- name: Install dependencies
run: npm ci
- name: Lint
run: npm run lint
-42
View File
@@ -1,42 +0,0 @@
name: Lint
on: pull_request
jobs:
php-linters:
runs-on: ubuntu-latest
strategy:
matrix:
php-versions: ['7.4', '8.0', '8.1']
name: php${{ matrix.php-versions }} lint
steps:
- name: Checkout
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- name: Set up php${{ matrix.php-versions }}
uses: shivammathur/setup-php@44454db4f0199b8b9685a5d763dc37cbf79108e1 # v2.36.0
with:
php-version: ${{ matrix.php-versions }}
extensions: ctype,curl,dom,fileinfo,gd,intl,json,mbstring,openssl,pdo_sqlite,posix,sqlite,xml,zip
coverage: none
- name: Lint
run: composer run lint
php-cs-fixer:
name: php-cs check
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- name: Set up php
uses: shivammathur/setup-php@44454db4f0199b8b9685a5d763dc37cbf79108e1 # v2.36.0
with:
php-version: 7.4
extensions: ctype,curl,dom,fileinfo,gd,intl,json,mbstring,openssl,pdo_sqlite,posix,sqlite,xml,zip
coverage: none
tools: cs2pr
- name: Install dependencies
run: composer i
- name: Run coding standards check
run: |
composer run cs:check -- --format=checkstyle | cs2pr
composer run cs:check || ( echo 'Please run `composer run cs:fix` to format your code' && exit 1 )
shell: bash
-98
View File
@@ -1,98 +0,0 @@
name: Node
on:
pull_request:
push:
branches:
- master
- stable*
jobs:
versions:
runs-on: ubuntu-latest
if: ${{ github.repository_owner != 'nextcloud-gmbh' }}
outputs:
nodeVersion: ${{ steps.versions.outputs.nodeVersion }}
npmVersion: ${{ steps.versions.outputs.npmVersion }}
steps:
- name: Checkout
uses: actions/checkout@ee0669bd1cc54295c223e0bb666b733df41de1c5 # v2.7.0
- name: Read package.json node and npm engines version
uses: skjnldsv/read-package-engines-version-actions@1e2f46e78e31476bc71ebd909105e6e033d5a6f4 # v1.1
id: versions
with:
fallbackNode: '^12'
fallbackNpm: '^6'
test:
runs-on: ubuntu-latest
needs: versions
steps:
- name: Checkout
uses: actions/checkout@ee0669bd1cc54295c223e0bb666b733df41de1c5 # v2.7.0
- name: Set up node ${{ needs.versions.outputs.nodeVersion }}
uses: actions/setup-node@7c12f8017d5436eb855f1ed4399f037a36fbd9e8 # v2.5.2
with:
node-version: ${{ needs.versions.outputs.nodeVersion }}
- name: Set up npm ${{ needs.versions.outputs.npmVersion }}
run: npm i -g npm@"${{ needs.versions.outputs.npmVersion }}"
- name: Install dependencies
env:
CYPRESS_INSTALL_BINARY: 0
PUPPETEER_SKIP_DOWNLOAD: true
run: npm ci
- name: Test
run: npm run test
jsunit:
runs-on: ubuntu-latest
needs: versions
steps:
- name: Checkout
uses: actions/checkout@ee0669bd1cc54295c223e0bb666b733df41de1c5 # v2.7.0
- name: Set up node ${{ needs.versions.outputs.nodeVersion }}
uses: actions/setup-node@7c12f8017d5436eb855f1ed4399f037a36fbd9e8 # v2.5.2
with:
node-version: ${{ needs.versions.outputs.nodeVersion }}
- name: Set up npm ${{ needs.versions.outputs.npmVersion }}
run: npm i -g npm@"${{ needs.versions.outputs.npmVersion }}"
- name: Install dependencies
run: npm ci
- name: Test
run: ./autotest-js.sh
handlebars:
runs-on: ubuntu-latest
needs: versions
steps:
- name: Checkout
uses: actions/checkout@ee0669bd1cc54295c223e0bb666b733df41de1c5 # v2.7.0
- name: Set up node ${{ needs.versions.outputs.nodeVersion }}
uses: actions/setup-node@7c12f8017d5436eb855f1ed4399f037a36fbd9e8 # v2.5.2
with:
node-version: ${{ needs.versions.outputs.nodeVersion }}
- name: Set up npm ${{ needs.versions.outputs.npmVersion }}
run: npm i -g npm@"${{ needs.versions.outputs.npmVersion }}"
- name: Install dependencies
run: npm ci
- name: Run compile
run: ./build/compile-handlebars-templates.sh
-52
View File
@@ -1,52 +0,0 @@
# This workflow is provided via the organization template repository
#
# https://github.com/nextcloud/.github
# https://docs.github.com/en/actions/learn-github-actions/sharing-workflows-with-your-organization
name: Node
on:
pull_request:
push:
branches:
- master
- stable*
jobs:
build:
runs-on: ubuntu-latest
name: node
steps:
- name: Checkout
uses: actions/checkout@ee0669bd1cc54295c223e0bb666b733df41de1c5 # v2.7.0
- name: Read package.json node and npm engines version
uses: skjnldsv/read-package-engines-version-actions@1e2f46e78e31476bc71ebd909105e6e033d5a6f4 # v1.1
id: versions
with:
fallbackNode: '^12'
fallbackNpm: '^6'
- name: Set up node ${{ steps.versions.outputs.nodeVersion }}
uses: actions/setup-node@7c12f8017d5436eb855f1ed4399f037a36fbd9e8 # v2.5.2
with:
node-version: ${{ steps.versions.outputs.nodeVersion }}
- name: Set up npm ${{ steps.versions.outputs.npmVersion }}
run: npm i -g npm@"${{ steps.versions.outputs.npmVersion }}"
- name: Install dependencies & build
run: |
npm ci
npm run build --if-present
- name: Check webpack build changes
run: |
bash -c "[[ ! \"`git status --porcelain `\" ]] || exit 1"
- name: Show changes on failure
if: failure()
run: |
git status
git --no-pager diff
-90
View File
@@ -1,90 +0,0 @@
name: PHPUnit
on:
pull_request:
push:
branches:
- master
- stable*
jobs:
phpunit-oci:
runs-on: ubuntu-20.04
if: ${{ github.repository_owner != 'nextcloud-gmbh' }}
strategy:
fail-fast: false
matrix:
php-versions: [ '7.4', '8.0', '8.1']
databases: [ 'oci' ]
name: php${{ matrix.php-versions }}-${{ matrix.databases }}
services:
oracle:
image: ghcr.io/gvenzl/oracle-xe:11
# Provide passwords and other environment variables to container
env:
ORACLE_RANDOM_PASSWORD: true
APP_USER: autotest
APP_USER_PASSWORD: owncloud
# Forward Oracle port
ports:
- 1521:1521/tcp
# Provide healthcheck script options for startup
options: >-
--health-cmd healthcheck.sh
--health-interval 10s
--health-timeout 5s
--health-retries 10
steps:
- name: Checkout server
uses: actions/checkout@ee0669bd1cc54295c223e0bb666b733df41de1c5 # v2.7.0
- name: Checkout submodules
shell: bash
run: |
auth_header="$(git config --local --get http.https://github.com/.extraheader)"
git submodule sync --recursive
git -c "http.extraheader=$auth_header" -c protocol.version=2 submodule update --init --force --recursive --depth=1
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@44454db4f0199b8b9685a5d763dc37cbf79108e1 # v2.36.0
with:
php-version: ${{ matrix.php-versions }}
extensions: ctype,curl,dom,fileinfo,gd,imagick,intl,json,mbstring,oci8,openssl,pcntl,pdo_sqlite,posix,sqlite,xml,zip
tools: phpunit:9
coverage: none
- name: Set up Nextcloud
run: |
mkdir data
./occ maintenance:install --verbose --database=oci --database-name=XE --database-host=127.0.0.1 --database-port=1521 --database-user=autotest --database-pass=owncloud --admin-user admin --admin-pass admin
php -f index.php
- name: PHPUnit
working-directory: tests
run: phpunit --configuration phpunit-autotest.xml --group DB,SLOWDB
- name: Run repair steps
run: |
./occ maintenance:repair --include-expensive
summary:
permissions:
contents: none
runs-on: ubuntu-latest
needs: phpunit-oci
if: always()
name: phpunit-oci-summary
steps:
- name: Summary status
run: if ${{ needs.phpunit-oci.result != 'success' }}; then exit 1; fi
-28
View File
@@ -1,28 +0,0 @@
name: Psalm show github
on:
pull_request:
push:
branches:
- master
- stable*
jobs:
psalm:
name: Psalm
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@ee0669bd1cc54295c223e0bb666b733df41de1c5 # v2.7.0
with:
submodules: recursive
- name: Psalm
uses: docker://vimeo/psalm-github-actions:4.9.3
continue-on-error: true
with:
composer_ignore_platform_reqs: false
report_file: results.sarif
- name: Upload Analysis results to GitHub
uses: github/codeql-action/upload-sarif@231aa2c8a89117b126725a0e11897209b7118144 # v1.1.39
with:
sarif_file: results.sarif
-28
View File
@@ -1,28 +0,0 @@
name: Psalm Security Analysis
on:
pull_request:
push:
branches:
- master
- stable*
jobs:
psalm:
name: Psalm
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@ee0669bd1cc54295c223e0bb666b733df41de1c5 # v2.7.0
with:
submodules: recursive
- name: Psalm
uses: docker://vimeo/psalm-github-actions:4.9.3
with:
security_analysis: true
composer_ignore_platform_reqs: false
report_file: results.sarif
- name: Upload Security Analysis results to GitHub
uses: github/codeql-action/upload-sarif@231aa2c8a89117b126725a0e11897209b7118144 # v1.1.39
with:
sarif_file: results.sarif
-128
View File
@@ -1,128 +0,0 @@
name: S3 External storage
on:
push:
branches:
- master
- stable*
paths:
- 'apps/files_external/**'
pull_request:
paths:
- 'apps/files_external/**'
env:
APP_NAME: files_external
jobs:
s3-external-tests-minio:
runs-on: ubuntu-latest
if: ${{ github.repository_owner != 'nextcloud-gmbh' }}
strategy:
# do not stop on another job's failure
fail-fast: false
matrix:
php-versions: ['7.4', '8.0']
name: php${{ matrix.php-versions }}-minio
services:
minio:
env:
MINIO_ACCESS_KEY: minio
MINIO_SECRET_KEY: minio123
image: bitnami/minio:2021.10.6
ports:
- "9000:9000"
steps:
- name: Checkout server
uses: actions/checkout@ee0669bd1cc54295c223e0bb666b733df41de1c5 # v2.7.0
with:
submodules: true
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@44454db4f0199b8b9685a5d763dc37cbf79108e1 # v2.36.0
with:
php-version: ${{ matrix.php-versions }}
tools: phpunit:9
extensions: mbstring, fileinfo, intl, sqlite, pdo_sqlite, zip, gd
- name: Set up Nextcloud
run: |
mkdir data
./occ maintenance:install --verbose --database=sqlite --database-name=nextcloud --database-host=127.0.0.1 --database-user=root --database-pass=rootpassword --admin-user admin --admin-pass password
./occ app:enable --force ${{ env.APP_NAME }}
php -S localhost:8080 &
- name: PHPUnit
run: |
echo "<?php return ['run' => true,'hostname' => 'localhost','key' => 'minio','secret' => 'minio123', 'bucket' => 'bucket', 'port' => 9000, 'use_ssl' => false, 'autocreate' => true, 'use_path_style' => true];" > apps/${{ env.APP_NAME }}/tests/config.amazons3.php
phpunit --configuration tests/phpunit-autotest-external.xml apps/files_external/tests/Storage/Amazons3Test.php
phpunit --configuration tests/phpunit-autotest-external.xml apps/files_external/tests/Storage/VersionedAmazonS3Test.php
- name: S3 logs
if: always()
run: |
docker ps -a
docker logs $(docker ps -aq)
s3-external-tests-localstack:
runs-on: ubuntu-latest
if: ${{ github.repository_owner != 'nextcloud-gmbh' }}
strategy:
# do not stop on another job's failure
fail-fast: false
matrix:
php-versions: ['7.4', '8.0']
name: php${{ matrix.php-versions }}-localstack
services:
minio:
env:
SERVICES: s3
DEBUG: 1
image: localstack/localstack:0.12.7
ports:
- "4566:4566"
steps:
- name: Checkout server
uses: actions/checkout@ee0669bd1cc54295c223e0bb666b733df41de1c5 # v2.7.0
with:
submodules: true
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@44454db4f0199b8b9685a5d763dc37cbf79108e1 # v2.36.0
with:
php-version: ${{ matrix.php-versions }}
tools: phpunit:9
extensions: mbstring, fileinfo, intl, sqlite, pdo_sqlite, zip, gd
- name: Set up Nextcloud
run: |
mkdir data
./occ maintenance:install --verbose --database=sqlite --database-name=nextcloud --database-host=127.0.0.1 --database-user=root --database-pass=rootpassword --admin-user admin --admin-pass password
./occ app:enable --force ${{ env.APP_NAME }}
php -S localhost:8080 &
- name: PHPUnit
run: |
echo "<?php return ['run' => true,'hostname' => 'localhost','key' => 'ignored','secret' => 'ignored', 'bucket' => 'bucket', 'port' => 4566, 'use_ssl' => false, 'autocreate' => true, 'use_path_style' => true];" > apps/${{ env.APP_NAME }}/tests/config.amazons3.php
phpunit --configuration tests/phpunit-autotest-external.xml apps/files_external/tests/Storage/Amazons3Test.php
phpunit --configuration tests/phpunit-autotest-external.xml apps/files_external/tests/Storage/VersionedAmazonS3Test.php
- name: S3 logs
if: always()
run: |
docker ps -a
docker logs $(docker ps -aq)
s3-external-summary:
runs-on: ubuntu-latest
needs: [s3-external-tests-minio, s3-external-tests-localstack]
if: always()
steps:
- name: Summary status
run: if ${{ needs.s3-external-tests-minio.result != 'success' }} || ${{ needs.s3-external-tests-localstack.result != 'success' }}; then exit 1; fi
-76
View File
@@ -1,76 +0,0 @@
name: S3 primary storage
on:
pull_request:
push:
branches:
- master
- stable*
jobs:
s3-primary-tests-minio:
runs-on: ubuntu-20.04
if: ${{ github.repository_owner != 'nextcloud-gmbh' }}
strategy:
# do not stop on another job's failure
fail-fast: false
matrix:
php-versions: ['8.0']
key: ['objectstore', 'objectstore_multibucket']
name: php${{ matrix.php-versions }}-${{ matrix.key }}-minio
services:
minio:
env:
MINIO_ACCESS_KEY: minio
MINIO_SECRET_KEY: minio123
image: bitnami/minio:2021.12.29
ports:
- "9000:9000"
steps:
- name: Checkout server
uses: actions/checkout@ee0669bd1cc54295c223e0bb666b733df41de1c5 # v2.7.0
with:
submodules: true
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@44454db4f0199b8b9685a5d763dc37cbf79108e1 # v2.36.0
with:
php-version: ${{ matrix.php-versions }}
tools: phpunit:9
extensions: mbstring, fileinfo, intl, sqlite, pdo_sqlite, zip, gd
- name: Set up Nextcloud
run: |
mkdir data
echo '<?php $CONFIG=["${{ matrix.key }}" => ["class" => "OC\Files\ObjectStore\S3", "arguments" => ["bucket" => "nextcloud", "autocreate" => true, "key" => "minio", "secret" => "minio123", "hostname" => "localhost", "port" => 9000, "use_ssl" => false, "use_path_style" => true, "uploadPartSize" => 52428800]]];' > config/config.php
./occ maintenance:install --verbose --database=sqlite --database-name=nextcloud --database-host=127.0.0.1 --database-user=root --database-pass=rootpassword --admin-user admin --admin-pass password
php -f index.php
- name: Wait for S3
run: |
sleep 10
curl -f -m 1 --retry-connrefused --retry 10 --retry-delay 10 http://localhost:9000/minio/health/ready
- name: PHPUnit
working-directory: tests
run: phpunit --configuration phpunit-autotest.xml --group DB,SLOWDB
- name: S3 logs
if: always()
run: |
docker ps -a
docker logs $(docker ps -aq)
s3-primary-summary:
runs-on: ubuntu-latest
needs: [s3-primary-tests-minio]
if: always()
steps:
- name: Summary status
run: if ${{ needs.s3-primary-tests-minio.result != 'success' }}; then exit 1; fi
-83
View File
@@ -1,83 +0,0 @@
name: Samba Kerberos SSO
on:
push:
branches:
- master
- stable*
paths:
- "apps/files_external/**"
- ".github/workflows/smb-kerberos.yml"
pull_request:
paths:
- "apps/files_external/**"
- ".github/workflows/smb-kerberos.yml"
jobs:
smb-kerberos-tests:
runs-on: ubuntu-latest
if: ${{ github.repository_owner != 'nextcloud-gmbh' }}
strategy:
fail-fast: false
matrix:
php-versions: ["7.4", "8.0"]
name: smb-kerberos-sso
steps:
- name: Checkout server
uses: actions/checkout@ee0669bd1cc54295c223e0bb666b733df41de1c5 # v2.7.0
with:
submodules: true
- name: Pull images
run: |
docker pull icewind1991/samba-krb-test-dc
docker pull icewind1991/samba-krb-test-apache
docker pull icewind1991/samba-krb-test-client
- name: Setup AD-DC
run: |
cp apps/files_external/tests/*.sh .
mkdir data
sudo chown -R 33 data apps config
DC_IP=$(./start-dc.sh)
./start-apache.sh $DC_IP $PWD
echo "DC_IP=$DC_IP" >> $GITHUB_ENV
- name: Set up Nextcloud
run: |
docker exec --user 33 apache ./occ maintenance:install --verbose --database=sqlite --database-name=nextcloud --database-host=127.0.0.1 --database-user=root --database-pass=rootpassword --admin-user admin --admin-pass password
docker exec --user 33 apache ./occ config:system:set trusted_domains 1 --value 'httpd.domain.test'
# setup user_saml
docker exec --user 33 apache ./occ app:enable user_saml --force
docker exec --user 33 apache ./occ config:app:set user_saml type --value 'environment-variable'
docker exec --user 33 apache ./occ saml:config:create
docker exec --user 33 apache ./occ saml:config:set 1 --general-uid_mapping=REMOTE_USER
# setup external storage
docker exec --user 33 apache ./occ app:enable files_external --force
docker exec --user 33 apache ./occ files_external:create smb smb smb::kerberosapache
docker exec --user 33 apache ./occ files_external:config 1 host krb.domain.test
docker exec --user 33 apache ./occ files_external:config 1 share netlogon
docker exec --user 33 apache ./occ files_external:list
- name: Test SSO
run: |
mkdir /tmp/shared/cookies
chmod 0777 /tmp/shared/cookies
echo "SAML login"
./client-cmd.sh ${{ env.DC_IP }} curl -c /shared/cookies/jar -s --negotiate -u testuser@DOMAIN.TEST: --delegation always http://httpd.domain.test/index.php/apps/user_saml/saml/login
echo "Check we are logged in"
CONTENT=$(./client-cmd.sh ${{ env.DC_IP }} curl -b /shared/cookies/jar -s --negotiate -u testuser@DOMAIN.TEST: --delegation always http://httpd.domain.test/remote.php/webdav/smb/test.txt)
CONTENT=$(echo $CONTENT | head -n 1 | tr -d '[:space:]')
[[ $CONTENT == "testfile" ]]
smb-kerberos-summary:
runs-on: ubuntu-latest
needs: smb-kerberos-tests
if: always()
steps:
- name: Summary status
run: if ${{ needs.smb-kerberos-tests.result != 'success' }}; then exit 1; fi
-31
View File
@@ -1,31 +0,0 @@
name: Close stale issues
on:
workflow_dispatch:
schedule:
- cron: "0 0 * * *"
jobs:
stale:
runs-on: ubuntu-latest
if: ${{ github.repository_owner != 'nextcloud-gmbh' }}
permissions:
issues: write
steps:
- uses: actions/stale@f7176fd3007623b69d27091f9b9d4ab7995f0a06 # v5.2.1
with:
repo-token: ${{ secrets.COMMAND_BOT_PAT }}
stale-issue-message: >
This issue has been automatically marked as stale because it has not had
recent activity and seems to be missing some essential information.
It will be closed if no further activity occurs. Thank you
for your contributions.
stale-issue-label: 'stale'
only-labels: 'needs info'
exempt-issue-labels: '1. to develop,2. developing,3. to review,4. to release,security'
days-before-stale: 30
days-before-close: 14
debug-only: true
@@ -1,62 +0,0 @@
name: Static code analysis
on: [pull_request]
jobs:
static-code-analysis:
runs-on: ubuntu-latest
if: ${{ github.repository_owner != 'nextcloud-gmbh' }}
steps:
- uses: actions/checkout@ee0669bd1cc54295c223e0bb666b733df41de1c5 # v2.7.0
- name: Checkout submodules
shell: bash
run: |
auth_header="$(git config --local --get http.https://github.com/.extraheader)"
git submodule sync --recursive
git -c "http.extraheader=$auth_header" -c protocol.version=2 submodule update --init --force --recursive --depth=1
- name: Set up php7.4
uses: shivammathur/setup-php@44454db4f0199b8b9685a5d763dc37cbf79108e1 # v2.36.0
with:
php-version: 7.4
extensions: apcu,ctype,curl,dom,fileinfo,ftp,gd,intl,json,ldap,mbstring,openssl,pdo_sqlite,posix,sqlite,xml,zip
coverage: none
- name: Composer install
run: composer i
- name: Psalm
run: composer run psalm -- --monochrome --no-progress --output-format=github --update-baseline || ( git diff -- . ':!lib/composer' && exit 1 )
- name: Check diff
run: git diff -- . ':!lib/composer'
- name: Show potential changes in Psalm baseline
run: |
bash -c "[[ ! \"`git status --porcelain build/psalm-baseline.xml`\" ]] || ( echo 'Uncommited changes in Psalm baseline' && git status && git diff build/psalm-baseline.xml)"
static-code-analysis-ocp:
runs-on: ubuntu-latest
if: ${{ github.repository_owner != 'nextcloud-gmbh' }}
steps:
- uses: actions/checkout@ee0669bd1cc54295c223e0bb666b733df41de1c5 # v2.7.0
- name: Checkout submodules
shell: bash
run: |
auth_header="$(git config --local --get http.https://github.com/.extraheader)"
git submodule sync --recursive
git -c "http.extraheader=$auth_header" -c protocol.version=2 submodule update --init --force --recursive --depth=1
- name: Set up php7.4
uses: shivammathur/setup-php@44454db4f0199b8b9685a5d763dc37cbf79108e1 # v2.36.0
with:
php-version: 7.4
extensions: apcu,ctype,curl,dom,fileinfo,ftp,gd,intl,json,ldap,mbstring,openssl,pdo_sqlite,posix,sqlite,xml,zip
coverage: none
- name: Composer install
run: composer i
- name: Psalm
run: composer run psalm -- -c psalm-ocp.xml --monochrome --no-progress --output-format=github --update-baseline || ( git diff -- . ':!lib/composer' && exit 1 )
- name: Check diff
run: git diff -- . ':!lib/composer'
- name: Show potential changes in Psalm baseline
run: |
bash -c "[[ ! \"`git status --porcelain build/psalm-baseline-ocp.xml`\" ]] || ( echo 'Uncommited changes in Psalm baseline' && git status && git diff build/psalm-baseline.xml)"
@@ -1,55 +0,0 @@
name: Update Psalm baseline
on:
workflow_dispatch:
schedule:
- cron: '5 4 * * *'
jobs:
update-psalm-baseline:
runs-on: ubuntu-latest
if: ${{ github.repository_owner != 'nextcloud-gmbh' }}
steps:
- uses: actions/checkout@ee0669bd1cc54295c223e0bb666b733df41de1c5 # v2.7.0
with:
submodules: true
- name: Set up php7.4
uses: shivammathur/setup-php@44454db4f0199b8b9685a5d763dc37cbf79108e1 # v2.36.0
with:
php-version: 7.4
extensions: ctype,curl,dom,fileinfo,gd,intl,json,mbstring,openssl,pdo_sqlite,posix,sqlite,xml,zip
coverage: none
- name: Composer install
run: composer install
- name: Psalm
run: composer run psalm -- --monochrome --no-progress --output-format=text --update-baseline
continue-on-error: true
- name: Reset composer
run: |
git clean -f lib/composer
git checkout composer.json composer.lock lib/composer
- name: Create Pull Request
uses: peter-evans/create-pull-request@18f7dc018cc2cd597073088f7c7591b9d1c02672 # v3.14.0
with:
token: ${{ secrets.COMMAND_BOT_PAT }}
commit-message: Update psalm baseline
committer: GitHub <noreply@github.com>
author: nextcloud-command <nextcloud-command@users.noreply.github.com>
signoff: true
branch: automated/noid/psalm-baseline-update
# Make sure we can open multiple PRs
branch-suffix: timestamp
title: '[Automated] Update psalm-baseline.xml'
body: |
Auto-generated update psalm-baseline.xml with fixed psalm warnings
labels: |
automated pr
3. to review
team-reviewers: server-backend
+7 -75
View File
@@ -1,61 +1,30 @@
# the default generated dir + db file
/data
/owncloud
/config/config.php
/config/*.config.php
/config/mimetype*.json
/config/mount.php
/apps/inc.php
/assets
/.htaccess
/node_modules
/translationfiles
/translationtool.phar
# ignore all apps except core ones
/apps*/*
!/apps/accessibility
!/apps/cloud_federation_api
!/apps/comments
!/apps/contactsinteraction
!/apps/dashboard
!/apps/dav
!/apps/files
!/apps/federation
!/apps/federatedfilesharing
!/apps/sharebymail
!/apps/encryption
!/apps/files_encryption
!/apps/files_external
!/apps/files_sharing
!/apps/files_trashbin
!/apps/files_versions
!/apps/lookup_server_connector
!/apps/user_ldap
!/apps/oauth2
!/apps/provisioning_api
!/apps/settings
!/apps/systemtags
!/apps/testing
!/apps/admin_audit
!/apps/updatenotification
!/apps/theming
!/apps/twofactor_backupcodes
!/apps/user_status
!/apps/weather_status
!/apps/workflowengine
!/apps/user_webdavauth
/apps/files_external/3rdparty/irodsphp/PHPUnitTest
/apps/files_external/3rdparty/irodsphp/web
/apps/files_external/3rdparty/irodsphp/prods/test
/apps/files_external/3rdparty/irodsphp/prods/tutorials
/apps/files_external/3rdparty/irodsphp/prods/test*
/apps/files_external/tests/config.*.php
# apps modules
/apps/*/node_modules
# ignore themes except the example and the README
# ignore themes except the README
/themes/*
!/themes/example
!/themes/README
# just sane ignores
@@ -73,7 +42,6 @@ CVS/*
.svn/*
RCS/*
*.backup*
.php_cs.cache
# kdevelop
.kdev
@@ -87,16 +55,13 @@ RCS/*
.project
.settings
# netbeans
# netbeans
nbproject
# phpStorm
.idea
*.iml
# vscode
.vscode
# geany
*.geany
@@ -106,10 +71,7 @@ nbproject
# vim ex mode
.vimrc
# ack(-grep)
.ackrc
# Mac OS
.DS_Store
@@ -123,40 +85,10 @@ nbproject
# Node Modules
/build/node_modules/
# nodejs
/build/bin
/build/lib/
/build/jsdocs/
/npm-debug.log
/PhantomJS_*
# puphpet
puphpet
# vagrant
.vagrant
Vagrantfile
# Tests - auto-generated files
/data-autotest
/tests/.phpunit.result.cache
/tests/coverage*
/tests/css
/tests/karma-coverage
/tests/autoconfig*
/tests/autotest*
/tests/data/lorem-copy.txt
/tests/data/testimage-copy.png
/tests/ui-regression/out/
/tests/ui-regression/node_modules/
/tests/ui-regression/package-lock.json
/config/config-autotest-backup.php
/config/autoconfig.php
clover.xml
# Tests - dependencies
tests/acceptance/vendor/
composer.phar
/lib/composer/bin
/vendor-bin/**/vendor
+1 -1
View File
@@ -1,3 +1,3 @@
[submodule "3rdparty"]
path = 3rdparty
url = https://github.com/nextcloud/3rdparty.git
url = git://github.com/owncloud/3rdparty.git
Regular → Executable
+33 -96
View File
@@ -1,106 +1,43 @@
<IfModule mod_fcgid.c>
<IfModule mod_setenvif.c>
<IfModule mod_headers.c>
<IfModule mod_setenvif.c>
<IfModule mod_fcgid.c>
SetEnvIfNoCase ^Authorization$ "(.+)" XAUTHORIZATION=$1
RequestHeader set XAuthorization %{XAUTHORIZATION}e env=XAUTHORIZATION
</IfModule>
<IfModule mod_proxy_fcgi.c>
SetEnvIfNoCase Authorization "(.+)" HTTP_AUTHORIZATION=$1
</IfModule>
<IfModule mod_lsapi.c>
SetEnvIfNoCase ^Authorization$ "(.+)" XAUTHORIZATION=$1
RequestHeader set XAuthorization %{XAUTHORIZATION}e env=XAUTHORIZATION
</IfModule>
</IfModule>
<IfModule mod_env.c>
# Add security and privacy related headers
# Avoid doubled headers by unsetting headers in "onsuccess" table,
# then add headers to "always" table: https://github.com/nextcloud/server/pull/19002
Header onsuccess unset Referrer-Policy
Header always set Referrer-Policy "no-referrer"
Header onsuccess unset X-Content-Type-Options
Header always set X-Content-Type-Options "nosniff"
Header onsuccess unset X-Frame-Options
Header always set X-Frame-Options "SAMEORIGIN"
Header onsuccess unset X-Permitted-Cross-Domain-Policies
Header always set X-Permitted-Cross-Domain-Policies "none"
Header onsuccess unset X-Robots-Tag
Header always set X-Robots-Tag "noindex, nofollow"
Header onsuccess unset X-XSS-Protection
Header always set X-XSS-Protection "1; mode=block"
SetEnv modHeadersAvailable true
</IfModule>
# Add cache control for static resources
<FilesMatch "\.(css|js|svg|gif|png|jpg|ico|wasm|tflite)$">
<If "%{QUERY_STRING} =~ /(^|&)v=/">
Header set Cache-Control "max-age=15778463, immutable"
</If>
<Else>
Header set Cache-Control "max-age=15778463"
</Else>
</FilesMatch>
# Let browsers cache WOFF files for a week
<FilesMatch "\.woff2?$">
Header set Cache-Control "max-age=604800"
</FilesMatch>
SetEnvIfNoCase ^Authorization$ "(.+)" XAUTHORIZATION=$1
RequestHeader set XAuthorization %{XAUTHORIZATION}e env=XAUTHORIZATION
</IfModule>
# PHP 7.x
<IfModule mod_php7.c>
php_value mbstring.func_overload 0
php_value default_charset 'UTF-8'
php_value output_buffering 0
<IfModule mod_env.c>
SetEnv htaccessWorking true
</IfModule>
</IfModule>
# PHP 8+
<IfModule mod_php.c>
php_value mbstring.func_overload 0
php_value default_charset 'UTF-8'
php_value output_buffering 0
<IfModule mod_env.c>
SetEnv htaccessWorking true
</IfModule>
</IfModule>
<IfModule mod_mime.c>
AddType image/svg+xml svg svgz
AddType application/wasm wasm
AddEncoding gzip svgz
ErrorDocument 403 /core/templates/403.php
ErrorDocument 404 /core/templates/404.php
<IfModule mod_php5.c>
php_value upload_max_filesize 513M
php_value post_max_size 513M
php_value memory_limit 512M
php_value mbstring.func_overload 0
<IfModule env_module>
SetEnv htaccessWorking true
</IfModule>
<IfModule mod_dir.c>
DirectoryIndex index.php index.html
</IfModule>
<IfModule pagespeed_module>
ModPagespeed Off
</IfModule>
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{HTTP_USER_AGENT} DavClnt
RewriteRule ^$ /remote.php/webdav/ [L,R=302]
RewriteRule .* - [env=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteRule ^\.well-known/carddav /remote.php/dav/ [R=301,L]
RewriteRule ^\.well-known/caldav /remote.php/dav/ [R=301,L]
RewriteRule ^remote/(.*) remote.php [QSA,L]
RewriteRule ^(?:build|tests|config|lib|3rdparty|templates)/.* - [R=404,L]
RewriteRule ^\.well-known/(?!acme-challenge|pki-validation) /index.php [QSA,L]
RewriteRule ^(?:\.(?!well-known)|autotest|occ|issue|indie|db_|console).* - [R=404,L]
RewriteEngine on
RewriteRule .* - [env=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteRule ^.well-known/host-meta /public.php?service=host-meta [QSA,L]
RewriteRule ^.well-known/host-meta.json /public.php?service=host-meta-json [QSA,L]
RewriteRule ^.well-known/carddav /remote.php/carddav/ [R]
RewriteRule ^.well-known/caldav /remote.php/caldav/ [R]
RewriteRule ^apps/calendar/caldav.php remote.php/caldav/ [QSA,L]
RewriteRule ^apps/contacts/carddav.php remote.php/carddav/ [QSA,L]
RewriteRule ^apps/([^/]*)/(.*\.(php))$ index.php?app=$1&getfile=$2 [QSA,L]
RewriteRule ^remote/(.*) remote.php [QSA,L]
</IfModule>
<IfModule mod_mime.c>
AddType image/svg+xml svg svgz
AddEncoding gzip svgz
</IfModule>
<IfModule dir_module>
DirectoryIndex index.php index.html
</IfModule>
AddDefaultCharset utf-8
Options -Indexes
<IfModule pagespeed_module>
ModPagespeed Off
</IfModule>
-52
View File
@@ -1,52 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectCodeStyleSettingsManager">
<option name="PER_PROJECT_SETTINGS">
<value>
<option name="RIGHT_MARGIN" value="80" />
<PHPCodeStyleSettings>
<option name="PHPDOC_BLANK_LINE_BEFORE_TAGS" value="true" />
<option name="LOWER_CASE_BOOLEAN_CONST" value="true" />
<option name="LOWER_CASE_NULL_CONST" value="true" />
</PHPCodeStyleSettings>
<XML>
<option name="XML_KEEP_BLANK_LINES" value="1" />
<option name="XML_LEGACY_SETTINGS_IMPORTED" value="true" />
</XML>
<codeStyleSettings language="CSS">
<indentOptions>
<option name="USE_TAB_CHARACTER" value="true" />
</indentOptions>
</codeStyleSettings>
<codeStyleSettings language="HTML">
<indentOptions>
<option name="USE_TAB_CHARACTER" value="true" />
</indentOptions>
</codeStyleSettings>
<codeStyleSettings language="JavaScript">
<option name="SPACE_BEFORE_METHOD_PARENTHESES" value="true" />
<indentOptions>
<option name="USE_TAB_CHARACTER" value="true" />
</indentOptions>
</codeStyleSettings>
<codeStyleSettings language="PHP">
<option name="CLASS_BRACE_STYLE" value="1" />
<option name="METHOD_BRACE_STYLE" value="1" />
<option name="DOWHILE_BRACE_FORCE" value="3" />
<option name="WHILE_BRACE_FORCE" value="3" />
<option name="FOR_BRACE_FORCE" value="3" />
<indentOptions>
<option name="USE_TAB_CHARACTER" value="true" />
</indentOptions>
</codeStyleSettings>
<codeStyleSettings language="XML">
<indentOptions>
<option name="USE_TAB_CHARACTER" value="true" />
</indentOptions>
</codeStyleSettings>
</value>
</option>
<option name="USE_PER_PROJECT_SETTINGS" value="true" />
</component>
</project>
-37
View File
@@ -1,37 +0,0 @@
{
"camelcase": true,
"eqeqeq": true,
"immed": true,
"latedef": false,
"noarg": true,
"nonbsp": true,
"undef": true,
"unused": true,
"trailing": true,
"maxparams": 5,
"curly": true,
"jquery": true,
"maxlen": 120,
"indent": 4,
"browser": true,
"laxbreak": true,
"globals": {
"console": true,
"it": true,
"xit": true,
"expect": true,
"describe": true,
"beforeEach": true,
"afterEach": true,
"sinon": true,
"fakeServer": true,
"_": true,
"OC": true,
"OCA": true,
"OCP": true,
"t": true,
"n": true,
"escapeHTML": true,
"Promise": true
}
}
-433
View File
@@ -1,433 +0,0 @@
Aamir Khan <ak4u2009@gmail.com>
Aaron Reichman <areichman.kde@gmail.com>
Adam Williamson <awilliam@redhat.com>
Aditya Patawari <adimania@gmail.com>
Administrator <Administrator@WINDOWS-2012>
adrien <adrien.waksberg@believedigital.com>
Aldo "xoen" Giambelluca <xoen@xoen.org>
Alessandro Cosentino <cosenal@gmail.com>
Alexander Bergolth <leo@strike.wu.ac.at> root <leo@strike.wu.ac.at>
Alexander Bogdanov <syn@li.ru>
Alexander Wigen <alex@wigen.net>
Aloisio Almeida Jr <aloisio.almeida@openbossa.org>
Anders Nor Berle <anders@berle.cc>
Andreas Fischer <bantu@owncloud.com>
Andreas Schönebeck <aschoenebeck@web.de>
Andreas Ergenzinger <andreas.ergenzinger@gmx.de> AndreasErgenzinger <andreas.ergenzinger@gmx.de>
Andrew Brown <andrew@casabrown.com>
André Gaul <gaul@web-yard.de>
Arthur Schiwon <blizzz@arthur-schiwon.de> Arthur Schiwon <blizzz@owncloud.com>
Arthur Schiwon <blizzz@arthur-schiwon.de> blizzz <blizzz@owncloud.com>
Artur Duque de Souza <asouza@kde.org>
Axel Roenn <axel@mpim-bonn.mpg.de>
Bagera <victor@baquero-wihlborg.se>
Bart Visscher <bartv@thisnet.nl> Bart Visscher <bart@thisnet.nl>
Bart Visscher <bartv@thisnet.nl> Bart Visscher <github@thisnet.nl>
Bartek Przybylski <bart.p.pl@gmail.com>
Bastien Ho <bastienho@urbancube.fr>
ben-denham <bend@catalyst.net.nz>
Benjamin Diele <benjamin@diele.be>
Benjamin Liles <benliles@arch.tamu.edu>
Bernhard Posselt <dev@bernhard-posselt.com> Bernhard Posselt <nukeawhale@gmail.com>
Bernhard Posselt <dev@bernhard-posselt.com> Bernhard Posselt <Raydiation@users.noreply.github.com>
Bernhard Posselt <dev@bernhard-posselt.com> Bernhard Posselt <BernhardPosselt@users.noreply.github.com>
Bernhard Reiter <ockham@raz.or.at>
Birk Borkason <daniel.niccoli@gmail.com>
Björn Schießle <bjoern@schiessle.org> Bjoern Schiessle <schiesbn@woody.(none)>
Björn Schießle <bjoern@schiessle.org> Björn Schießle <schiessle@owncloud.com>
Björn Schießle <bjoern@schiessle.org> Björn Schießle <schiesbn@potato.(none)>
Björn Schießle <bjoern@schiessle.org> Björn Schiessle <schiessle@owncloud.com>
Björn Schießle <bjoern@schiessle.org> Bjoern Schießle <schiessle@owncloud.com>
Björn Schießle <bjoern@schiessle.org> Bjoern Schiessle <schiessle@owncloud.com>
Björn Schießle <bjoern@schiessle.org> Björn Schießle <schiessle@owncloud.com>
BlackEagle <ike.devolder@gmail.com>
Boris Rybalkin <ribalkin@gmail.com>
Borjan Tchakaloff <borjan@tchakaloff.fr>
Brice Maron <brice@bmaron.net>
brumsel <brumsel@losecatcher.de> brumsoel <brumsel@losecatcher.de>
Byron Marohn <combustible@live.com> eMerzh <brice@bmaron.net>
Caio Marcelo de Oliveira Filho <caio.oliveira@openbossa.org>
Carla Schroder <carla@owncloud.com>
Carlos Cerrillo <ccerrillo@gmail.com>
cbhp <cbhp@users.noreply.github.com>
cbojar <chris@cbojar.net>
Ceri Davies <ceri@submonkey.net>
cetra3 <peter@parashift.com.au>
Charles-Edouard Coste <contact@ccoste.fr>
CharlyCoste <contact@ccoste.fr>
chli1 <chli1@users.noreply.github.com>
Chris Kankiewicz <Chris@ChrisKankiewicz.com>
Chris LeBlanc <chris@leblaaanc.com>
Chris Wilson <chris+github@qwirx.com>
Christian Berendt <berendt@b1-systems.de>
Christian Kampka <christian@kampka.net>
Christian Koch <koch.chris@gmail.com>
Christian Reiner <github@christian-reiner.info> Christian Reiner <arkascha@balder.site>
Christoph Wurst <christoph@winzerhof-wurst.at> Christoph Wurst <ChristophWurst@users.noreply.github.com>
Christoph Wurst <christoph@winzerhof-wurst.at> Christoph Wurst <christoph@owncloud.com>
Christopher Bunn <b11.chris@gmail.com>
Christopher Schäpers <kondou@ts.unde.re> Christopher <kondou@ts.unde.re>
Christopher Schäpers <kondou@ts.unde.re> kondou <kondou@ts.unde.re>
Christopher Schäpers <kondou@ts.unde.re> root <kondou@ts.unde.re>
Christopher T. Johnson <ctjctj@gmail.com>
Clark Tomlinson <fallen013@gmail.com>
Cloud Dumper <clouddumper@gmail.com>
cmeh <cmeh@users.noreply.github.com>
Cornelius Schumacher <schumacher@kde.org>
Craig Morrissey <craig@owncloud.com>
Côme BERNIGAUD <come.bernigaud@laposte.net>
dampfklon <me@dampfklon.de>
Dan Bartram <daneybartram@gmail.com>
Dan Callahan <dan.callahan@gmail.com>
Dan Jones <dan@danneh.org>
Daniel <daniel@mars.(none)>
Daniel Hansson <enoch85@gmail.com>
Daniel Kesselberg <mail@danielkesselberg.de> kesselb <mail@danielkesselberg.de>
Daniel Köb <daniel.koeb@peony.at>
Daniel Molkentin <daniel@molkentin.de>
Daniele E. Domenichelli <daniele.domenichelli@gmail.com>
David <davidventura>
David Iwanowitsch <david+git@unclouded.de> David Iwanowitsch <diw@gmx.de>
David Prévot <taffit@debian.org>
David Reagan <reagand@lanecc.edu>
davidak <davidak@gmx.de>
davidgumberg <davidnoizgumberg@gmail.com>
Dawid Opis <ncore@ncore.com.pl>
Deepak Mittal <dpac.mittal2@gmail.com>
DeLtAfOx <edo@ravers.it>
denis-b <denis.bonnenfant@diderot.org>
Der-Jan <de@r-jan.de>
derkostka <sebastian.kostka@gmail.com>
Diederik de Haas <diederik@cknow.org>
Dominik Schmidt <dev@dominik-schmidt.de>
Donald Buczek <buczek@molgen.mpg.de>
Donquixote <marjunebatac@gmail.com> Donquixote <marjunebatac@gmailcom>
Doug Neiner <doug@pixelgraphics.us>
drarko <drarko@users.noreply.github.com>
dratini0 <dratini0@gmail.com>
Duane Johnson <duane.johnson@gmail.com>
eduardo <eduardo@vnexu.net>
elchi <niklas1b@yahoo.de>
Elias Probst <mail@eliasprobst.eu>
Florian <ente@baer.rwth-aachen.de> ente <ente@baer.rwth-aachen.de>
Erik Sargent <esthepiking@gmail.com>
Evgeni Golov <evgeni@golov.de>
fabian <fabian@web2.0-apps.de>
Fabian Henze <flyser42@gmx.de>
Felix Böhm <felixboehm@gmx.de> felixboehm <felixboehm@gmx.de>
Felix Eckhofer <felix@eckhofer.com>
Felix Moeller <mail@felixmoeller.de>
Felix Niklas <mrflix@gmail.com>
Fernando Rodriguez Sela <frsela@tid.es>
fibsifan <fi@volans.uberspace.de>
Florian Hülsmann <fh@cbix.de>
Florian Jacob <fjacob@lavabit.com>
Florian Preinstorfer <nblock@archlinux.us>
Florian Pritz <bluewind@xinu.at>
Florian Scholz <FlorianScholz@bgstyle.de> Florian Scholz <work@bgstyle.de>
Florian Vichot <florian.vichot@gmail.com>
Florin Peter <github@florin-peter.de> Florin Peter <fp@datawerk.de>
Florin Peter <github@florin-peter.de> FlorinPeter <github@florin-peter.de>
Francesco Piraneo G. <fpiraneo@iface.ch>
Frank Karlitschek <frank@karlitschek.de> Frank Karlitschek <frank@dev.(none)>
Frank Karlitschek <frank@karlitschek.de> Frank Karlitschek <frank@devel.(none)>
Frank Karlitschek <frank@karlitschek.de> Frank Karlitschek <frank@oc.(none)>
Frank Karlitschek <frank@karlitschek.de> Frank Karlitschek <frank@owncloud.org>
Frank Karlitschek <frank@karlitschek.de> Frank Karlitschek <karlitschek@kde.org>
François Kubler <francois@kubler.org>
Frédéric Fortier <frederic.fortier@oronospolytechnique.com> Frédéric Fortier <frederic.fortier@polymtl.ca>
Frederik Gladhorn <gladhorn@kde.org>
Gadzy <dev@gadzy.fr>
ganomi <ganomi@gmail.com>
Gaël Beaudoin <gaboo@home.gaboo.org>
geez0x1 <geez0x1@users.noreply.github.com>
gekmihesg <markus@gekmihesg.de>
Georg Ehrke <oc.list@georgehrke.com> Georg Ehrke <dev@georgswebsite.de>
Georg Ehrke <oc.list@georgehrke.com> Georg Ehrke <developer@georgehrke.com>
Georg Ehrke <oc.list@georgehrke.com> Georg Ehrke <georg.stefan.germany@googlemail.com>
Georg Ehrke <oc.list@georgehrke.com> Georg Ehrke <ownclouddev@georgswebsite.de>
Georg Ehrke <oc.list@georgehrke.com> Georg Ehrke <devgeorg@ownCloud.com>
Georg Ehrke <oc.list@georgehrke.com> Georg Ehrke <georg@ownCloud.com>
Georg Ehrke <oc.list@georgehrke.com> Georg Ehrke <georg@owncloud.com>
Golnaz Nilieh <g382nilieh@gmail.com>
Grundik <grundik@ololo.cc>
Guillaume AMAT <guillaume.amat@informatique-libre.com>
Hans Bakker <hansmbakker@gmail.com>
helix84 <helix84@centrum.sk>
Hendrik Langer <hendrik.langer@gmx.de>
Henning Becker <h.becker@oedenstockach.de>
Henning Oschwald <h.oschwald@gmx.de>
Henrik Kjölhede <hkjolhede@gmail.com>
herbrechtsmeier <stefan@herbrechtsmeier.net>
hkjolhede <hkjolhede@gmail.com>
IchEben <andreas@reichster.de>
ideaship <ideaship@users.noreply.github.com>
Ignacio Daniel Rostagno <ignaciorostagno@vijona.com.ar>
infoneo <infoneo@yahoo.pl>
Insanemal <insanemal@gmail.com>
Tobias Perschon <tobias@perschon.at> Tobias Perschon <tofuSCHNITZEL@users.noreply.github.com>
Tobias Ramforth <tobias@ramforth.com> Tobias Ramforth <tobias.ramforth@udo.edu>
Tobias Ramforth <tobias@ramforth.com> irgsmirx <tobias.ramforth@udo.edu>
Isaac Rosenberg <irosenb7@gmail.com>
itheiss <ingo.theiss@i-matrixx.de>
j-ed <juergen@eisfair.org>
Jake Wilson <jakew@huebnerpetersen.com>
Jakob Sack <mail@jakobsack.de> Jakob Sack <kde@jakobsack.de>
jamesryanbell <james@james-bell.co.uk>
Jamie McClelland <jm@mayfirst.org>
Jan-Christoph Borchardt <hey@jancborchardt.net> Jan-Christoph Borchardt <jan@unhosted.org>
Jan-Christoph Borchardt <hey@jancborchardt.net> Jan-Christoph Borchardt <JanCBorchardt@fsfe.org>
jbtbnl <jbtbnl@users.noreply.github.com>
Jean-Louis Dupond <jean-louis@dupond.be>
Jenkins for ownCloud <owncloud-bot@tmit.eu> Jenkins for ownCloud <thomas.mueller@tmit.eu>
Jens-Christian Fischer <jens-christian.fischer@switch.ch>
Jernej Virag <jernej.virag@gmail.com>
Jesus Macias Portela <jesus.macias.portela@gmail.com>
Jesús Macias <jmacias@solidgear.es> Jesus Macias <jmacias@full-on-net.com>
jknockaert <jasper@knockaert.nl>
Joan <aseques@gmail.com>
Joar Wandborg <git@wandborg.com>
Joas Schilling <coding@schilljs.com> Joas Schilling <213943+nickvergessen@users.noreply.github.com>
Joas Schilling <coding@schilljs.com> Joas Schilling <nickvergessen@gmx.de>
Joas Schilling <coding@schilljs.com> Joas Schilling <nickvergessen@owncloud.com>
joel hansson <joel.hansson@gmail.com>
Johan Björk <johanimon@gmail.com>
Johannes Twittmann <github.com@deryo.de>
Johannes Willnecker <johannes@willnecker.com>
John Kristensen <John.Kristensen@dpipwe.tas.gov.au>
Jonathan Riddell <jriddell@ubuntu.com>
Jonny007-MKD <1-23-4-5@web.de>
josh4trunks <joshruehlig@gmail.com>
Joshua Medeiros <Jammerx2@gmail.com>
Juan Carlos Cornejo <jc2@paintblack.com>
Julian Müller <julian.mueller.ffb@kabelmail.de>
Jörn Friedrich Dreyer <jfd@butonic.de> jfd <jfd@lance>
Jörn Friedrich Dreyer <jfd@butonic.de> jfd <jfd@underverse>
Kamil Domanski <kdomanski@kdemail.net>
Kees Huiberts <snowy@derideal.com>
Klaas Freitag <freitag@owncloud.com> Klaas Freitag <freitag@suse.de>
Konstantin Popov <konstantin.popov@globalpointagency.comv> Konstantin.Popov <konstantin.popov@globalpointagency.comv>
krzaczek <pawel@freshmind.pl>
Kshitij Parajuli <kshitijparajuli@gmail.com>
Kunal Ghosh <kunal.t2@gmail.com>
Tobia De Koninck <tobia@ledfan.be> LEDfan <tobia@ledfan.be>
Lennart Rosam <lennart.rosam@medien-systempartner.de>
Sebastian Döll <sebastian.doell@libasys.de> libasys <sebastian.doell@libasys.de>
Lode Hoste <zillode@zillode.be>
lolozere <laurent@chedanne.pro>
Louis Chemineau <louis@chmn.me> Louis Chemineau <6653109+artonge@users.noreply.github.com>
Lorenzo M. Catucci <lorenzo@sancho.ccd.uniroma2.it>
Lukas Reschke <lukas@statuscode.ch> Lukas Reschke <lukas@owncloud.com>
Lukas Reschke <lukas@statuscode.ch> Lukas Reschke <lukas@owncloud.org>
Luke Policinski <lpolicinski@gmail.com>
Lyonel Vincent <lyonel@ezix.org>
macjohnny <estebanmarin@gmx.ch>
maelzx <maelzx@gmail.com>
marc0s <marcos@tenak.net>
Marco B <beinbrech@solutica.de>
Marco Michelino <michelinux@gmail.com>
Markus Goetz <markus@woboq.com>
Markus Kalkbrenner <markus.kalkbrenner@bio.logis.de>
Martial Saunois <saunois.martial@gmail.com>
Martin Mattel <martin.mattel@diemattels.at> Martin <martin.mattel@diemattels.at>
Martin Mattel <martin.mattel@diemattels.at> root <martin.mattel@diemattels.at>
Martin Grohmann <martin@medi-inf.org>
# TODO: the same person
Martin Konrad <info@martin-konrad.net>
Martin Konrad <konrad@frib.msu.edu>
Martin Sandsmark <martin.sandsmark@kde.org> Martin T. H. Sandsmark <sandsmark@samfundet.no>
Marvin Thomas Rabe <mrabe@marvinrabe.de> Marvin Thomas Rabe <m.rabe@echtzeitraum.de>
Masaki Kawabata Neto <masaki.kawabata@gmail.com> Masaki <masaki.kawabata@gmail.com>
Mat Lipe <mat@lipeimagination.info>
Matthew Caron <matt@mattcaron.net>
Matthew Dawson <matthew@mjdsystems.ca>
Matthias Rieber <matthias@zu-con.org>
Maximilian Ruta <mr@xtain.net>
mh <mh@immerda.ch>
Michael Gapczynski <GapczynskiM@gmail.com> Michael Gapczynski <mtgap@owncloud.com>
Michael Göhler <somebody.here@gmx.de>
Michael Kent <mike@draftx.net>
Michael Kuhn <suraia@ikkoku.de>
Michael Monreal <michael.monreal@gmail.com>
Michael Roitzsch <reactorcontrol@icloud.com>
michag86 <micha_g@arcor.de>
Michiel de Jong <michiel@unhosted.org> Michiel@unhosted <michiel@unhosted.org>
Miguel Prokop <miguel.prokop@vtu.com>
miicha <pfitzner@physik.hu-berlin.de>
Miquel Rodríguez Telep / Michael Rodríguez-Torrent <miquel@designunbound.co.uk>
Morris Jobke <hey@morrisjobke.de> Morris Jobke <morris.jobke@gmail.com>
MTRichards <matt@owncloud.com>
mvn23 <schopdiedwaas@gmail.com>
Myles McNamara <myles@hostt.net> Myles McNamara <myles@smyl.es>
NARUKAWA Hiroki <nhirokinet@nhiroki.net>
Nathan Dauber <nathan@radialogica.com>
Nazar Mokrynskyi <nazar@mokrynskyi.com>
nhirokinet <nhirokinet@nhiroki.net>
Nico Kaiser <nico.kaiser@boerse-go.de>
Nicolai Ehemann <en@enlightened.de>
Nicolas Stamm <nicolas.stamm@gmail.com>
NIEK Antoine <antoineniek@gmail.com>
Niklas Sombert <niklas1b@yahoo.de>
Nils Jansen <nilsjansen@gmail.com>
nishiki <nishiki@yaegashi.fr>
Nmz <nemesiz@nmz.lt>
Normal Ra <normalraw@gmail.com> Normal Ra <NormalRa@users.noreply.github.com>
Oliver Gasser <oliver.gasser@gmail.com> Oliver Gasser <oliver@flowriver.net>
Oliver Kohl D.Sc. <oliver@kohl.bz>
Olivier Paroz <github@oparoz.com> Olivier Paroz <oparoz@users.noreply.github.com>
Olivier Tétard <olivier.tetard@miskin.fr>
Aaron Larisch <aaron.larisch@gmx.de> OpenLarry <aaron.larisch@gmx.de>
opensaucesystems <ashley@opensaucesystems.com>
Oskar Hollmann <oskarhollmann@gmail.com>
Otto Sabart <ottosabart@seberm.com>
Owen Winkler <a_github@midnightcircus.com> Owen Winkler <epithet@gmail.com>
Owen Winkler <a_github@midnightcircus.com> ringmaster <epithet@gmail.com>
Pascal de Bruijn <pmjdebruijn@pcode.nl>
Patrick Paysant <ppaysant@linagora.com>
Patrick Stricker <stricker@hera.dev.iks-hagen.de>
Paul Brown <paul90brown@gmail.com>
pdessauw <pdessauw@gmail.com>
Pellaeon Lin <nfsmwlin@gmail.com>
Pete McFarlane <peterjohnmcfarlane@gmail.com> petemcfarlane <peterjohnmcfarlane@gmail.com>
Philipp Kapfer <philipp.kapfer@gmx.at>
Philipp Knechtges <philipp-dev@knechtges.com>
Philipp Roggan <philipp.roggan@newsletter4free.de>
Philipp Schmitt <philipp@schmitt.co>
Philippe Jung <phil.jung@free.fr>
Philippe Kueck <pk@plusline.de>
prcrst <prcrst@hush.com>
pzy <pzy@d1sturbed.org>
Qingping Hou <dave2008713@gmail.com>
Raghu Nayyar <me@iraghu.com> Raghu Nayyar <raghu.nayyar.007@gmail.com>
Raghu Nayyar <me@iraghu.com> raghunayyar <me@iraghu.com>
Raimund Schlüßler <raimund.schluessler@googlemail.com>
Ramiro Aparicio <rapariciog@gmail.com>
Randolph Carter <RandolphCarter@fantasymail.de>
RealRancor <Fisch.666@gmx.de>
Remco Brenninkmeijer <requist1@starmail.nl>
Riccardo Iaconelli <riccardo@kde.org>
Richard Clarkson <robert@trash-mail.com>
rnveach <rveach02@gmail.com>
Robert Jäckel <rjaeckel@users.noreply.github.com>
Robin Appelman <robin@icewind.nl> icewind1991 <icewind1991@gmail.com>
Robin Appelman <robin@icewind.nl> icewind1991 <robin@icewind.nl>
Robin Appelman <robin@icewind.nl> Robin <Robin Appelman icewind1991@gmail.com>
Robin Appelman <robin@icewind.nl> Robin <robin@Amaya.(none)>
Robin Appelman <robin@icewind.nl> Robin Appelman <icewind1991@gmail.com>
Robin Appelman <robin@icewind.nl> Robin Appelman <icewind1991@gmail>
Robin Appelman <robin@icewind.nl> Robin Appelman <icewind@owncloud.com>
Robin McCorkell <robin@mccorkell.me.uk> Robin McCorkell <rmccorkell@karoshi.org.uk>
Robin McCorkell <robin@mccorkell.me.uk> Robin McCorkell <rmccorkell@owncloud.com>
Rodrigo Hjort <rodrigo.hjort@gmail.com>
Roeland Jago Douma <roeland@famdouma.nl> Roeland Jago Douma <rullzer@owncloud.com>
Roeland Jago Douma <roeland@famdouma.nl> Roeland Douma <rullzer@users.noreply.github.com>
Roeland Jago Douma <roeland@famdouma.nl> Roeland Jago Douma <rullzer@users.noreply.github.com>
Roger Szabo <roger.szabo@web.de> root <roger.szabo@web.de>
rok <brejktru@gmail.com>
Roland Hager <roland.hager@tu-berlin.de>
Roland van Laar <roland@micite.net>
rolandgeider <roland@geider.net>
Roman Geber <rgeber@owncloudapps.com>
root <root@asterisk03.ceschia.de>
root <root@dev.(none)>
root <root@oc.(none)>
root <root@plug.(none)>
Ross Nicoll <jrn@jrn.me.uk>
runky <philipp.boersteken@googlemail.com>
Sam Tuke <mail@samtuke.com> Sam Tuke <sam@donttravelempty.com>
Sam Tuke <mail@samtuke.com> Sam Tuke <samtuke@jack-laptop.(none)>
Sam Tuke <mail@samtuke.com> Sam Tuke <samtuke@owncloud.com>
Sander <brantje@gmail.com>
Sandro Knauß <bugs@sandroknauss.de> Sandro <hefee@taurin.(none)>
Sascha Schmidt <realriot@realriot.de>
Sascha Schneider <development@suntsu.org>
Sascha Wiswedel <sascha.wiswedel@nextcloud.com> Sascha Wiswedel <wiswedel@users.noreply.github.com>
scambra <sergio@entrecables.com>
scolebrook <scolebrook@mac.com>
Scott Arciszewski <scott@arciszewski.me>
Scott Barnett <scott.n.barnett@gmail.com>
Scott Shambarger <gitorious@shambarger.net>
Scrutinizer Auto-Fixer <auto-fixer@scrutinizer-ci.com>
Sean Comeau <sean@ftlnetworks.ca>
Sean Leonard <meanderingcode@silverleafstudios.net>
Sebastian Bolt <sebastian.bolt@gmx.de>
Serge Martin <edb@sigluy.net>
Sergei Shuykov <n1nj4p0w3r@gmail.com>
Sergi Almacellas Abellana <sergi@koolpi.com>
sherbrecher <oss@herbrecher.de>
shkdee <louis.traynard@m4x.org>
Simon Birnbach <simon@simon-birnbach.de>
Simon Könnecke <simonkoennecke@gmail.com>
Simon Whittaker <simon@swbh.net>
Sjors van der Pluijm <sjors@desjors.nl> Sjors van der Pluijm <sjors@youngguns.nl>
John Molakvoæ <skjnldsv@protonmail.com> John Molakvoæ <skjnldsv@users.noreply.github.com>
John Molakvoæ <skjnldsv@protonmail.com> John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
st3so <st3so@server.fake>
Stefan <mu.stefan@googlemail.com>
Stefan Göckeritz <admin@s-goecker.de>
Stefan Herbrechtsmeier <stefan@herbrechtsmeier.net>
Stefan Rado <owncloud@sradonia.net>
Stefan Seidel <android@stefanseidel.info>
Steffen Lindner <mail@steffen-lindner.de> Steffen Lindner <gomez@flexiabel.de>
Stephan Arts <stephan@xfce.org>
Stephan Bergemann <st.bergemann@htw-berlin.de>
Stephan Peijnik <speijnik@anexia-it.com>
Stephane Martin <stef.martin@gmail.com> Stephane Martin <stephane.martin@vesperal.eu>
Stephane V <stephane@vergeylen.eu>
Stephen Rees-Carter <stephen@rees-carter.net>
Steven <wokste@gmail.com>
Steven <wokste@Komkommer.(none)>
Steven <wwjd2@web.de>
Sugaroverdose <n1nj4p0w3r@gmail.com>
Susinthiran Sithamparanathan <chesusin@gmail.com>
tbelau666 <thomas.belau@gmx.de>
TheSFReader <TheSFReader@gmail.com>
Thibaut GRIDEL <tgridel@free.fr>
thomas <thomas@thomas-VirtualBox.(none)>
Thomas Citharel <nextcloud@tcit.fr> Thomas Citharel <tcit@tcit.fr>
Thomas Citharel <nextcloud@tcit.fr> Thomas Citharel <github@tcit.fr>
Thomas Müller <thomas.mueller@tmit.eu> Thomas Mueller <thomas.mueller@tmit.eu>
Thomas Müller <thomas.mueller@tmit.eu> Thomas Müller <DeepDiver1975@users.noreply.github.com>
Thomas Olsen <tol@tanghus>
Thomas Schmidt <tschmidt@suse.de>
Thomas Tanghus <thomas@tanghus.net>
Thomas Zander <zander@kde.org>
tiezdne <oswald.84@t-online.de>
Tigran Mkrtchyan <tigran.mkrtchyan@desy.de>
Tobias Kaminsky <tobias@kaminsky.me> tobiasKaminsky <tobias@kaminsky.me>
Tom Needham <tom@owncloud.com> Tom Needham <needham.thomas@gmail.com>
Tom Needham <tom@owncloud.com> Tom Needham <tom@tre.tomneedham.com>
Tom Needham <tom@owncloud.com> tomneedham <needham.thomas@gmail.com>
Tom Needham <tom@owncloud.com> tomneedham <tom@owncloud.com>
Tony Zelenoff <antonz@parallels.com>
tsumi <mail@tsumi.it>
twood8 <ted.wood@gtri.gatech.edu>
Türker Sezer <turkersezer@tsdesign.info>
unclejamal3000 <andreas.pramhaas@posteo.de>
unknown <Alain@Alain-PC.(none)>
unknown <pnd@.nist.gov>
Valerio Ponte <valerio.ponte@gmail.com>
Victor Dubiniuk <dubiniuk@owncloud.com> Victor Dubiniuk <victor.dubiniuk@gmail.com>
Victor Dubiniuk <dubiniuk@owncloud.com> VicDeo <dubiniuk@owncloud.com>
Victor Dubiniuk <dubiniuk@owncloud.com> VicDeo <victor.dubiniuk@gmail.com>
Vincent Cloutier <vincent1cloutier@gmail.com>
Vincent Petry <vincent@nextcloud.com> Vincent Petry <PVince81@yahoo.fr>
Vincent Petry <vincent@nextcloud.com> Vincent Petry <vincent@vvortex.site>
Vincent Petry <vincent@nextcloud.com> Vincent Petry <pvince81@owncloud.com>
Vinicius Cubas Brand <vinicius@eita.org.br> Vinicius Cubas Brand <viniciuscb@gmail.com>
Vitaly Kuznetsov <vitty@altlinux.ru>
Vladimir Sapronov <vladimir.sapronov@gmail.com>
Volkan Gezer <volkangezer@gmail.com> Volkan Gezer <wakeup@users.noreply.github.com>
Volker E. <open@temporaer.net>
voxsim <Simon Vocella>
vsapronov <vladimir.sapronov@gmail.com>
Vsevolod Kukol <v.kukol@rubologic.de>
Weng Xuetian <wengxt@gmail.com>
Wikinaut <mail@tgries.de>
Willi Ballenthin <willi.ballenthin@gmail.com>
windaishi <manuel.strider@web.de>
Witali Rott <info@hlop.eu>
Yann VERRY <yann@verry.org>
yannickoo <github@yannickoo.de>
zafi <zafirakis.daniel@gmail.com>
zombiehugs <gerdsen@gmail.com>
-1
View File
@@ -1 +0,0 @@
**/*.spec.js
-24
View File
@@ -1,24 +0,0 @@
<?php
declare(strict_types=1);
require_once './vendor-bin/cs-fixer/vendor/autoload.php';
use Nextcloud\CodingStandard\Config;
$config = new Config();
$config
->getFinder()
->ignoreVCSIgnored(true)
->exclude('config')
->exclude('data')
->notPath('3rdparty')
->notPath('build/integration/vendor')
->notPath('build/lib')
->notPath('build/node_modules')
->notPath('build/stubs')
->notPath('composer')
->notPath('node_modules')
->notPath('vendor')
->in(__DIR__);
return $config;
-17
View File
@@ -1,17 +0,0 @@
# See https://pre-commit.com for more information
# See https://pre-commit.com/hooks.html for more hooks
repos:
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v4.3.0
hooks:
- id: end-of-file-fixer
- id: check-yaml
- id: check-added-large-files
- repo: https://github.com/nextcloud/pre-commit-php.git
rev: 1.5.1
hooks:
- id: php-lint
- id: php-cs-fixer
files: \.(php)$
exclude: ^(config|data|composer)
args: []
-39
View File
@@ -1,39 +0,0 @@
before_commands:
- 'git submodule update --init --recursive'
build:
nodes:
analysis:
tests:
override:
- php-scrutinizer-run
checks:
php:
excluded_dependencies:
- etsy/phan
filter:
excluded_paths:
- '3rdparty/*'
- 'apps/*/3rdparty/*'
- 'apps/*/vendor/*'
- 'l10n/*'
- 'core/l10n/*'
- 'apps/*/l10n/*'
- 'apps/*/tests/*'
- 'lib/l10n/*'
- 'core/vendor/*'
- 'core/js/tests/lib/*.js'
- 'core/js/tests/specs/*.js'
- 'core/js/jquery-showpassword.js'
- 'core/js/jquery-tipsy.js'
- 'core/js/placeholders.js'
- 'settings/l10n/*'
- 'tests/*'
- 'build/*'
- 'lib/composer/*'
imports:
- javascript
- php
-1
View File
@@ -1 +0,0 @@
$Format:%H$
-183
View File
@@ -1,183 +0,0 @@
[main]
host = https://www.transifex.com
lang_map = bg_BG: bg, cs_CZ: cs, fi_FI: fi, hu_HU: hu, nb_NO: nb, sk_SK: sk, th_TH: th, ja_JP: ja
[nextcloud.core]
file_filter = translationfiles/<lang>/core.po
source_file = translationfiles/templates/core.pot
source_lang = en
type = PO
[nextcloud.files]
file_filter = translationfiles/<lang>/files.po
source_file = translationfiles/templates/files.pot
source_lang = en
type = PO
[nextcloud.settings-1]
file_filter = translationfiles/<lang>/settings.po
source_file = translationfiles/templates/settings.pot
source_lang = en
type = PO
[nextcloud.lib]
file_filter = translationfiles/<lang>/lib.po
source_file = translationfiles/templates/lib.pot
source_lang = en
type = PO
[nextcloud.dav]
file_filter = translationfiles/<lang>/dav.po
source_file = translationfiles/templates/dav.pot
source_lang = en
type = PO
[nextcloud.files_encryption]
file_filter = translationfiles/<lang>/encryption.po
source_file = translationfiles/templates/encryption.pot
source_lang = en
type = PO
[nextcloud.files_external]
file_filter = translationfiles/<lang>/files_external.po
source_file = translationfiles/templates/files_external.pot
source_lang = en
type = PO
[nextcloud.files_sharing]
file_filter = translationfiles/<lang>/files_sharing.po
source_file = translationfiles/templates/files_sharing.pot
source_lang = en
type = PO
[nextcloud.files_trashbin]
file_filter = translationfiles/<lang>/files_trashbin.po
source_file = translationfiles/templates/files_trashbin.pot
source_lang = en
type = PO
[nextcloud.files_versions]
file_filter = translationfiles/<lang>/files_versions.po
source_file = translationfiles/templates/files_versions.pot
source_lang = en
type = PO
[nextcloud.user_ldap]
file_filter = translationfiles/<lang>/user_ldap.po
source_file = translationfiles/templates/user_ldap.pot
source_lang = en
type = PO
[nextcloud.comments]
file_filter = translationfiles/<lang>/comments.po
source_file = translationfiles/templates/comments.pot
source_lang = en
type = PO
[nextcloud.federatedfilesharing]
file_filter = translationfiles/<lang>/federatedfilesharing.po
source_file = translationfiles/templates/federatedfilesharing.pot
source_lang = en
type = PO
[nextcloud.federation]
file_filter = translationfiles/<lang>/federation.po
source_file = translationfiles/templates/federation.pot
source_lang = en
type = PO
[nextcloud.oauth2]
file_filter = translationfiles/<lang>/oauth2.po
source_file = translationfiles/templates/oauth2.pot
source_lang = en
type = PO
[nextcloud.sharebymail]
file_filter = translationfiles/<lang>/sharebymail.po
source_file = translationfiles/templates/sharebymail.pot
source_lang = en
type = PO
[nextcloud.systemtags]
file_filter = translationfiles/<lang>/systemtags.po
source_file = translationfiles/templates/systemtags.pot
source_lang = en
type = PO
[nextcloud.updatenotification]
file_filter = translationfiles/<lang>/updatenotification.po
source_file = translationfiles/templates/updatenotification.pot
source_lang = en
type = PO
[nextcloud.theming]
file_filter = translationfiles/<lang>/theming.po
source_file = translationfiles/templates/theming.pot
source_lang = en
type = PO
[nextcloud.twofactor_backupcodes]
file_filter = translationfiles/<lang>/twofactor_backupcodes.po
source_file = translationfiles/templates/twofactor_backupcodes.pot
source_lang = en
type = PO
[nextcloud.workflowengine]
file_filter = translationfiles/<lang>/workflowengine.po
source_file = translationfiles/templates/workflowengine.pot
source_lang = en
type = PO
[nextcloud.accessibility]
file_filter = translationfiles/<lang>/accessibility.po
source_file = translationfiles/templates/accessibility.pot
source_lang = en
type = PO
[nextcloud.provisioning_api]
file_filter = translationfiles/<lang>/provisioning_api.po
source_file = translationfiles/templates/provisioning_api.pot
source_lang = en
type = PO
[nextcloud.lookup_server_connector]
file_filter = translationfiles/<lang>/lookup_server_connector.po
source_file = translationfiles/templates/lookup_server_connector.pot
source_lang = en
type = PO
[nextcloud.dashboard-shipped-with-server]
file_filter = translationfiles/<lang>/dashboard.po
source_file = translationfiles/templates/dashboard.pot
source_lang = en
type = PO
[nextcloud.contactsinteraction]
file_filter = translationfiles/<lang>/contactsinteraction.po
source_file = translationfiles/templates/contactsinteraction.pot
source_lang = en
type = PO
[nextcloud.cloud_federation_api]
file_filter = translationfiles/<lang>/cloud_federation_api.po
source_file = translationfiles/templates/cloud_federation_api.pot
source_lang = en
type = PO
[nextcloud.admin_audit]
file_filter = translationfiles/<lang>/admin_audit.po
source_file = translationfiles/templates/admin_audit.pot
source_lang = en
type = PO
[nextcloud.user_status]
file_filter = translationfiles/<lang>/user_status.po
source_file = translationfiles/templates/user_status.pot
source_lang = en
type = PO
[nextcloud.weather_status]
file_filter = translationfiles/<lang>/weather_status.po
source_file = translationfiles/templates/weather_status.pot
source_lang = en
type = PO
-4
View File
@@ -1,4 +0,0 @@
mbstring.func_overload=0
always_populate_raw_post_data=-1
default_charset='UTF-8'
output_buffering=0
+25 -466
View File
@@ -1,472 +1,31 @@
Nextcloud is written by:
- AW-UC <git@a-wesemann.de>
- Aaron Wood <aaronjwood@gmail.com>
- Abijeet <abijeetpatro@gmail.com>
- Achim Königs <garfonso@tratschtante.de>
- Adam Williamson <awilliam@redhat.com>
- Administrator "Administrator@WINDOWS-2012"
- Adrian Brzezinski <adrian.brzezinski@eo.pl>
- Aldo "xoen" Giambelluca <xoen@xoen.org>
- Alecks Gates <alecks.g@gmail.com>
- Alejandro Varela <epma01@gmail.com>
- Alex Weirig <alex.weirig@technolink.lu>
- Alexander A. Klimov <grandmaster@al2klimov.de>
- Alexander Bergolth <leo@strike.wu.ac.at>
- Alexey Pyltsyn <lex61rus@gmail.com>
- Allan Nordhøy <epost@anotheragency.no>
- Andreas Fischer <bantu@owncloud.com>
- Andreas Pflug <dev@admin4.org>
- Andrew Brown <andrew@casabrown.com>
- André Gaul <gaul@web-yard.de>
- Anna Larch <anna@nextcloud.com>
- Ardinis <Ardinis@users.noreply.github.com>
- Ari Selseng <ari@selseng.net>
- Arne Hamann <kontakt+github@arne.email>
- Artem Kochnev <MrJeos@gmail.com>
- Artem Sidorenko <artem@posteo.de>
- Arthur Schiwon <blizzz@arthur-schiwon.de>
- Artur Neumann <info@individual-it.net>
- Ashod Nakashian <ashod.nakashian@collabora.co.uk>
- Avior <florian.bouillon@delta-wings.net>
- Axel Helmert <axel.helmert@luka.de>
- Azul <azul@riseup.net>
- Bart Visscher <bartv@thisnet.nl>
- Bartek Przybylski <bart.p.pl@gmail.com>
- Bastien Durel <bastien@durel.org>
- Bastien Ho <bastienho@urbancube.fr>
- Benjamin Diele <benjamin@diele.be>
- Benjamin Liles <benliles@arch.tamu.edu>
- Bernd Stellwag <burned@zerties.org>
- Bernhard Ostertag <bernieo.code@gmx.de>
- Bernhard Posselt <dev@bernhard-posselt.com>
- Bernhard Reiter <ockham@raz.or.at>
- Birk Borkason <daniel.niccoli@gmail.com>
- Bjoern Schiessle <bjoern@schiessle.org>
- Björn Schießle <bjoern@schiessle.org>
- Blaok <i@blaok.me>
- Boris Rybalkin <ribalkin@gmail.com>
- Borjan Tchakaloff <borjan@tchakaloff.fr>
- Brad Rubenstein <brad@wbr.tech>
- Brandon Kirsch <brandonkirsch@github.com>
- Branko Kokanovic <branko@kokanovic.org>
- Brice Maron <brice@bmaron.net>
- Byron Marohn <combustible@live.com>
- Carla Schroder <carla@owncloud.com>
- Carlos Cerrillo <ccerrillo@gmail.com>
- Carlos Ferreira <carlos@reendex.com>
- Carsten Wiedmann <carsten_sttgt@gmx.de>
- Chih-Hsuan Yen <yan12125@gmail.com>
- Christian <16852529+cviereck@users.noreply.github.com>
- Christian Berendt <berendt@b1-systems.de>
- Christian Jürges <christian@eqipe.ch>
- Christian Kampka <christian@kampka.net>
- Christian Oliff <christianoliff@yahoo.com>
- Christian Weiske <cweiske@cweiske.de>
- Christoph Schaefer "christophł@wolkesicher.de"
- Christoph Seitz <christoph.seitz@posteo.de>
- Christoph Wickert <cwickert@suse.de>
- Christoph Wurst <christoph@winzerhof-wurst.at>
- Christopher Bartz <bartz@dkrz.de>
- Christopher Schäpers <kondou@ts.unde.re>
- Christopher T. Johnson <ctjctj@gmail.com>
- Claas Augner <github@caugner.de>
- Clark Tomlinson <fallen013@gmail.com>
- Clement Wong <git@clement.hk>
- Cornelius Kölbel <cornelius.koelbel@netknights.it>
- Cthulhux <git@tuxproject.de>
- Damjan Georgievski <gdamjan@gmail.com>
- Dan Callahan <dan.callahan@gmail.com>
- Daniel Calviño Sánchez <danxuliu@gmail.com>
- Daniel Hansson <daniel@techandme.se>
- Daniel Jagszent <daniel@jagszent.de>
- Daniel Kesselberg <mail@danielkesselberg.de>
- Daniel Rudolf <github.com@daniel-rudolf.de>
- Daniel Schneider <daniel@schneidoa.de>
- Dariusz Olszewski <starypatyk@users.noreply.github.com>
- David Prévot <taffit@debian.org>
- David Toledo <dtoledo@solidgear.es>
- Denis Mosolov <denismosolov@gmail.com>
- Derek <derek.kelly27@gmail.com>
- Dominik Schmidt <dev@dominik-schmidt.de>
- Donquixote <marjunebatac@gmail.com>
- Elijah Martin-Merrill <elijah@nyp-itsours.com>
- Eric Masseran <rico.masseran@gmail.com>
- Evgeny Golyshev <eugulixes@gmail.com>
- Fabrizio Steiner <fabrizio.steiner@gmail.com>
- Felix Epp <work@felixepp.de>
- Felix Heidecke <felix@heidecke.me>
- Felix Moeller <mail@felixmoeller.de>
- Felix Nieuwenhuizen <felix@tdlrali.com>
- Felix Nüsse <Felix.nuesse@t-online.de>
- Felix Rupp <github@felixrupp.com>
- Filis Futsarov <filisko@users.noreply.github.com>
- Florent <florent@coppint.com>
- Florian Schunk <florian.schunk@rwth-aachen.de>
- Florin Peter <github@florin-peter.de>
- Flávio Gomes da Silva Lisboa <flavio.lisboa@serpro.gov.br>
- Frank Isemann <frank@isemann.name>
- Frank Karlitschek <frank@karlitschek.de>
- François Freitag <mail@franek.fr>
- François Kubler <francois@kubler.org>
- Frederic Werner <frederic-github@werner-net.work>
- Frédéric Fortier <frederic.fortier@oronospolytechnique.com>
- Gary Kim <gary@garykim.dev>
- Georg Ehrke <oc.list@georgehrke.com>
- GrayFix <grayfix@gmail.com>
- Greta Doci <gretadoci@gmail.com>
- GretaD <gretadoci@gmail.com>
- Guillaume COMPAGNON <gcompagnon@outlook.com>
- Guillaume Virlet <github@virlet.org>
- Hasso Tepper <hasso@zone.ee>
- Hemanth Kumar Veeranki <hems.india1997@gmail.com>
- Hendrik Leppelsack <hendrik@leppelsack.de>
- Holger Hees <holger.hees@gmail.com>
- Ilja Neumann <ineumann@owncloud.com>
- Individual IT Services <info@individual-it.net>
- Iscle <albertiscle9@gmail.com>
- J0WI <J0WI@users.noreply.github.com>
- Jaakko Salo <jaakkos@gmail.com>
- Jacob Neplokh <me@jacobneplokh.com>
- Jakob Sack <mail@jakobsack.de>
- Jakub Onderka <ahoj@jakubonderka.cz>
- James Letendre <James.Letendre@gmail.com>
- Jan C. Borchardt <hey@jancborchardt.net>
- Jan-Christoph Borchardt <hey@jancborchardt.net>
- Jan-Philipp Litza <jplitza@users.noreply.github.com>
- Janis Köhr <janis.koehr@novatec-gmbh.de>
- Jared Boone <jared.boone@gmail.com>
- Jarkko Lehtoranta <devel@jlranta.com>
- Jean-Louis Dupond <jean-louis@dupond.be>
- Jens-Christian Fischer <jens-christian.fischer@switch.ch>
- Jesús Macias <jmacias@solidgear.es>
- Joachim Bauch <bauch@struktur.de>
- Joachim Sokolowski <github@sokolowski.org>
- Joas Schilling <coding@schilljs.com>
- Joel S <joel.devbox@protonmail.com>
- Johan Björk <johanimon@gmail.com>
- Johannes Ernst <jernst@indiecomputing.com>
- Johannes Leuker <j.leuker@hosting.de>
- Johannes Riedel <joeried@users.noreply.github.com>
- Johannes Schlichenmaier <johannes@schlichenmaier.info>
- Johannes Willnecker <johannes@willnecker.com>
- John Molakvoæ <skjnldsv@protonmail.com>
- Jonas Rittershofer <jotoeri@users.noreply.github.com>
- Jonas Sulzer <jonas@violoncello.ch>
- Jonny007-MKD <1-23-4-5@web.de>
- Jos Poortvliet <jos@opensuse.org>
- Jose Quinteiro <github@quinteiro.org>
- Juan Pablo Villafañez <jvillafanez@solidgear.es>
- Juan Pablo Villafáñez <jvillafanez@solidgear.es>
- Julien Lutran <julien.lutran@corp.ovh.com>
- Julien Veyssier <eneiluj@posteo.net>
- Julius Haertl <jus@bitgrid.net>
- Julius Härtl <jus@bitgrid.net>
- Jörn Friedrich Dreyer <jfd@butonic.de>
- KB7777 <k.burkowski@gmail.com>
- Kamil Domanski <kdomanski@kdemail.net>
- Kawohl <john@owncloud.com>
- Kenneth Newwood <kenneth@newwood.name>
- Kevin Lanni <therealklanni@gmail.com>
- Kevin Ndung'u <kevgathuku@gmail.com>
- Kim Brose <kim.brose@rwth-aachen.de>
- Klaas Freitag <freitag@owncloud.com>
- Knut Ahlers <knut@ahlers.me>
- Ko- <k.stoffelen@cs.ru.nl>
- Konrad Bucheli <kb@open.ch>
- Kristof Provost <github@sigsegv.be>
- Kyle Fazzari <kyrofa@ubuntu.com>
- Lars <winnetou+github@catolic.de>
- Lars Knickrehm <mail@lars-sh.de>
- Laurens Post <Crote@users.noreply.github.com>
- Laurens Post <lkpost@scept.re>
- Lauris Binde <laurisb@users.noreply.github.com>
- Lennart Rosam <hello@takuto.de>
- Lennart Rosam <lennart.rosam@medien-systempartner.de>
- Leon Klingele <git@leonklingele.de>
- Leon Klingele <leon@struktur.de>
- Liam Dennehy <liam@wiemax.net>
- Liam JACK <liamjack@users.noreply.github.com>
- Lionel Elie Mamane <lionel@mamane.lu>
- Loki3000 <github@labcms.ru>
- Lorenzo M. Catucci <lorenzo@sancho.ccd.uniroma2.it>
- Loïc Hermann <loic.hermann@sciam.fr>
- Lukas Reschke <lukas@statuscode.ch>
- Lukas Stabe <lukas@stabe.de>
- Luke Policinski <lpolicinski@gmail.com>
- Magnus Walbeck <mw@mwalbeck.org>
- Marcel Klehr <mklehr@gmx.net>
- Marcel Waldvogel <marcel.waldvogel@uni-konstanz.de>
- Marco Ziech <marco@ziech.net>
- Marin Treselj <marin@pixelipo.com>
- Mario Danic <mario@lovelyhq.com>
- Mario Kolling <mario.kolling@serpro.gov.br>
- Marius Blüm <marius@lineone.io>
- Marius David Wieschollek <git.public@mdns.eu>
- Markus Goetz <markus@woboq.com>
- Markus Staab <markus.staab@redaxo.de>
- MartB <mart.b@outlook.de>
- Martin <github@diemattels.at>
- Martin Konrad <info@martin-konrad.net>
- Martin Konrad <konrad@frib.msu.edu>
- Martin Mattel <martin.mattel@diemattels.at>
- Marvin Thomas Rabe <mrabe@marvinrabe.de>
- Masaki Kawabata Neto <masaki.kawabata@gmail.com>
- MasterOfDeath <rinat.gumirov@mail.ru>
- Matthew Setter <matthew@matthewsetter.com>
- Max Kovalenko <mxss1998@yandex.ru>
- Maxence Lange <maxence@artificial-owl.com>
- Maxence Lange <maxence@nextcloud.com>
- Maxence Lange <maxence@pontapreta.net>
- Maxopoly <max@dermax.org>
- MichaIng <28480705+MichaIng@users.noreply.github.com>
- MichaIng <micha@dietpi.com>
- Michael Gapczynski <GapczynskiM@gmail.com>
- Michael Göhler <somebody.here@gmx.de>
- Michael Jobst <mjobst+github@tecratech.de>
- Michael Jobst <mjobst@necls.com>
- Michael Kuhn <michael@ikkoku.de>
- Michael Letzgus <www@chronos.michael-letzgus.de>
- Michael Roitzsch <reactorcontrol@icloud.com>
- Michael Weimann <mail@michael-weimann.eu>
- Michael Zamot <michael@zamot.io>
- Michał Węgrzynek <michal.wegrzynek@malloc.com.pl>
- Miguel Prokop <miguel.prokop@vtu.com>
- Mikael Hammarin <mikael@try2.se>
- Mitar <mitar.git@tnode.com>
- Mohammed Abdellatif <m.latief@gmail.com>
- Morris Jobke <hey@morrisjobke.de>
- Nazar Mokrynskyi <nazar@mokrynskyi.com>
- Nick Sweeting <git@sweeting.me>
- Nicolai Ehemann <en@enlightened.de>
- Nicolas Grekas <nicolas.grekas@gmail.com>
- Nicolas SIMIDE <2083596+dems54@users.noreply.github.com>
- Nils <git@to.nilsschnabel.de>
- Nils Wittenbrink <nilswittenbrink@web.de>
- Nina Pypchenko <22447785+nina-py@users.noreply.github.com>
- Nmz <nemesiz@nmz.lt>
- Noveen Sachdeva <noveen.sachdeva@research.iiit.ac.in>
- Ole Ostergaard <ole.c.ostergaard@gmail.com>
- Ole Ostergaard <ole.ostergaard@knime.com>
- Oliver Kohl D.Sc. <oliver@kohl.bz>
- Oliver Wegner <void1976@gmail.com>
- Olivier Paroz <github@oparoz.com>
- Owen Winkler <a_github@midnightcircus.com>
- Pascal de Bruijn <pmjdebruijn@pcode.nl>
- Patrick Paysant <patrick.paysant@linagora.com>
- Patrik Kernstock <info@pkern.at>
- Pauli Järvinen <pauli.jarvinen@gmail.com>
- Pavel Krasikov <klonishe@gmail.com>
- Pellaeon Lin <nfsmwlin@gmail.com>
- Peter Kubica <peter@kubica.ch>
- Phil Davis <phil.davis@inf.org>
- Philipp Kapfer <philipp.kapfer@gmx.at>
- Philipp Schaffrath <github@philipp.schaffrath.email>
- Philipp Staiger <philipp@staiger.it>
- Philippe Jung <phil.jung@free.fr>
- Pierre Ozoux <pierre@ozoux.net>
- Pierre Rudloff <contact@rudloff.pro>
- Piotr Filiciak <piotr@filiciak.pl>
- Piotr M <mrow4a@yahoo.com>
- Piotr Mrowczynski <mrow4a@yahoo.com>
- Piotr Mrówczyński <mrow4a@yahoo.com>
- Qingping Hou <dave2008713@gmail.com>
- Raghu Nayyar <hey@raghunayyar.com>
- Ralph Krimmel <rkrimme1@gwdg.de>
- Ramiro Aparicio <rapariciog@gmail.com>
- Randolph Carter <RandolphCarter@fantasymail.de>
- Rayn0r <andrew@ilpss8.myfirewall.org>
- RealRancor <Fisch.666@gmx.de>
- RealRancor <fisch.666@gmx.de>
- Rello <Rello@users.noreply.github.com>
- Remco Brenninkmeijer <requist1@starmail.nl>
- Richard Steinmetz <richard@steinmetz.cloud>
- Rinat Gumirov <rinat.gumirov@mail.ru>
- Robert Dailey <rcdailey@gmail.com>
- Robin Appelman <robin@icewind.nl>
- Robin McCorkell <robin@mccorkell.me.uk>
- Robin Müller <coder-hugo@users.noreply.github.com>
- Roeland Jago Douma <roeland@famdouma.nl>
- Roger Szabo <roger.szabo@web.de>
- Roland Tapken <roland@bitarbeiter.net>
- Romain Rivière <lecoyote@lecoyote.org>
- Roman Kreisel <mail@romankreisel.de>
- Ross Nicoll <jrn@jrn.me.uk>
- Ruben Homs <ruben@homs.codes>
- RussellAult <RussellAult@users.noreply.github.com>
- Rémy Jacquin <remy@remyj.fr>
- S. Cat <33800996+sparrowjack63@users.noreply.github.com>
- SA <stephen@mthosting.net>
- Sam Bull <aa6bs0@sambull.org>
- Sam Tuke <mail@samtuke.com>
- Samuel <faust64@gmail.com>
- Samuel CHEMLA <chemla.samuel@gmail.com>
- Sander Ruitenbeek <s.ruitenbeek@getgoing.nl>
- Sander Ruitenbeek <sander@grids.be>
- Sandro Lutz <sandro.lutz@temparus.ch>
- Sascha Sambale <mastixmc@gmail.com>
- Sascha Wiswedel <sascha.wiswedel@nextcloud.com>
- Scott Dutton <exussum12@users.noreply.github.com>
- Scott Dutton <scott@exussum.co.uk>
- Scott Shambarger <devel@shambarger.net>
- Sean Comeau <sean@ftlnetworks.ca>
- Sean Molenaar <sean@seanmolenaar.eu>
- Sebastian Döll <sebastian.doell@libasys.de>
- Sebastian Steinmetz <462714+steiny2k@users.noreply.github.com>
- Sebastian Steinmetz <me@sebastiansteinmetz.ch>
- Sebastian Wessalowski <sebastian@wessalowski.org>
- Semih Serhat Karakaya <karakayasemi@itu.edu.tr>
- Senorsen <senorsen.zhang@gmail.com>
- Serge Martin <edb@sigluy.net>
- Sergej Nikolaev <kinolaev@gmail.com>
- Sergej Pupykin <pupykin.s@gmail.com>
- Sergey Shliakhov <husband.sergey@gmail.com>
- Sergio Bertolin <sbertolin@solidgear.es>
- Sergio Bertolín <sbertolin@solidgear.es>
- Simon Könnecke <simonkoennecke@gmail.com>
- Simon Spannagel <simonspa@kth.se>
- Simounet <contact@simounet.net>
- Sjors van der Pluijm <sjors@desjors.nl>
- Stefan Rado <owncloud@sradonia.net>
- Stefan Schneider <stefan.schneider@squareweave.com.au>
- Stefan Weiberg <sweiberg@suse.com>
- Stefan Weil <sw@weilnetz.de>
- Steffen Lindner <mail@steffen-lindner.de>
- Stephan Müller <mail@stephanmueller.eu>
- Stephan Peijnik <speijnik@anexia-it.com>
- Stephen Cuppett <steve@cuppett.com>
- Steven Bühner <buehner@me.com>
- Sujith H <sharidasan@owncloud.com>
- Sujith Haridasan <Sujith_Haridasan@mentor.com>
- Sujith Haridasan <sujith.h@gmail.com>
- Sven Strickroth <email@cs-ware.de>
- Sylvia van Os <sylvia@hackerchick.me>
- Tekhnee <info@tekhnee.org>
- Temtaime <temtaime@gmail.com>
- Thibaut GRIDEL <tgridel@free.fr>
- Thomas Citharel <nextcloud@tcit.fr>
- Thomas Ebert <thomas.ebert@usability.de>
- Thomas Müller <thomas.mueller@tmit.eu>
- Thomas Pulzer <t.pulzer@kniel.de>
- Thomas Tanghus <thomas@tanghus.net>
- Tiago Flores <tiago.flores@yahoo.com.br>
- Tigran Mkrtchyan <tigran.mkrtchyan@desy.de>
- Tim Dettrick <t.dettrick@uq.edu.au>
- Tim Obert <tobert@w-commerce.de>
- Tim Terhorst <mynamewastaken+gitlab@gmail.com>
- TimObert <tobert@w-commerce.de>
- Timo Förster <tfoerster@webfoersterei.de>
- Tobia De Koninck <LEDfan@users.noreply.github.com>
- Tobia De Koninck <tobia@ledfan.be>
- Tobias Kaminsky <tobias@kaminsky.me>
- Tobias Perschon <tobias@perschon.at>
- Tom Grant <TomG736@users.noreply.github.com>
- Tom Needham <tom@owncloud.com>
- Tomasz Grobelny <tomasz@grobelny.net>
- Tomasz Paluszkiewicz <tomasz.paluszkiewicz@gmail.com>
- Tor Lillqvist <tml@collabora.com>
- Unknown <anpz.asutp@gmail.com>
- Valdnet <47037905+Valdnet@users.noreply.github.com>
- Victor Dubiniuk <dubiniuk@owncloud.com>
- Viktor Szépe <viktor@szepe.net>
- Vincent Chan <plus.vincchan@gmail.com>
- Vincent Petry <vincent@nextcloud.com>
- Vinicius Cubas Brand <vinicius@eita.org.br>
- Vitor Mattos <vitor@php.rio>
- Vlastimil Pecinka <pecinka@email.cz>
- Volkan Gezer <volkangezer@gmail.com>
- Volker <skydiablo@gmx.net>
- William Pain <pain.william@gmail.com>
- Xheni Myrtaj <myrtajxheni@gmail.com>
- Xuanwo <xuanwo@yunify.com>
- acsfer <carlos@reendex.com>
- adrien <adrien.waksberg@believedigital.com>
- aler9 <46489434+aler9@users.noreply.github.com>
- alexweirig <alex.weirig@technolink.lu>
- b108@volgograd "b108@volgograd"
- bladewing <lukas@ifflaender-family.de>
- bline <scottbeck@gmail.com>
- blizzz <blizzz@arthur-schiwon.de>
- brad2014 <brad2014@users.noreply.github.com>
- brumsel <brumsel@losecatcher.de>
- call-me-matt <nextcloud@matthiasheinisch.de>
- castillo92 <37965565+castillo92@users.noreply.github.com>
- cetra3 <peter@parashift.com.au>
- cmeh <cmeh@users.noreply.github.com>
- comradekingu <epost@anotheragency.no>
- dartcafe <github@dartcafe.de>
- davidgumberg <davidnoizgumberg@gmail.com>
- davitol <dtoledo@solidgear.es>
- dems54 <2083596+dems54@users.noreply.github.com>
- duritong <peter.meier+github@immerda.ch>
- eduardo <eduardo@vnexu.net>
- eleith <online+github@eleith.com>
- enoch <lanxenet@hotmail.com>
- essys <essys@users.noreply.github.com>
- exner104 <59639860+exner104@users.noreply.github.com>
- fabian <fabian@web2.0-apps.de>
- felixboehm <felix@webhippie.de>
- fnuesse <felix.nuesse@t-online.de>
- fnuesse <fnuesse@techfak.uni-bielefeld.de>
- helix84 <helix84@centrum.sk>
- hkjolhede <hkjolhede@gmail.com>
- hoellen <dev@hoellen.eu>
- ideaship <ideaship@users.noreply.github.com>
- j-ed <juergen@eisfair.org>
- j3l11234 <297259024@qq.com>
- jaltek <jaltek@mailbox.org>
- jknockaert <jasper@knockaert.nl>
- josh4trunks <joshruehlig@gmail.com>
- karakayasemi <karakayasemi@itu.edu.tr>
- kevin147147 <kevintamool@gmail.com>
- korelstar <korelstar@users.noreply.github.com>
- leith abdulla <online-nextcloud@eleith.com>
- lui87kw <lukas.ifflaender@uni-wuerzburg.de>
- lynn-stephenson <lynn.stephenson@protonmail.com>
- macjohnny <estebanmarin@gmx.ch>
- marco44 <cousinmarc@gmail.com>
- martin.mattel@diemattels.at <martin.mattel@diemattels.at>
- martink-p <47943787+martink-p@users.noreply.github.com>
- matt <34400929+call-me-matt@users.noreply.github.com>
- medcloud <42641918+medcloud@users.noreply.github.com>
- michaelletzgus <michaelletzgus@users.noreply.github.com>
- michag86 <micha_g@arcor.de>
- mmccarn <mmccarn-github@mmsionline.us>
- nacho <nacho@ownyourbits.com>
- nhirokinet <nhirokinet@nhiroki.net>
- nik gaffney <nik@fo.am>
- nishiki <nishiki@yaegashi.fr>
- noiob <8197071+noiob@users.noreply.github.com>
- noveens <noveen.sachdeva@research.iiit.ac.in>
- npmbuildbot[bot] "npmbuildbot[bot]@users.noreply.github.com"
- onehappycat <one.happy.cat@gmx.com>
- oparoz <owncloud@interfasys.ch>
- phisch <git@philippschaffrath.de>
- rakekniven <mark.ziegler@rakekniven.de>
- robottod <83244577+robottod@users.noreply.github.com>
- root "root@oc.(none)"
- root <root@localhost.localdomain>
- rubo77 <github@r.z11.de>
- sammo2828 <sammo2828@gmail.com>
- scambra <sergio@entrecables.com>
- scolebrook <scolebrook@mac.com>
- shkdee <louis.traynard@m4x.org>
- simonspa <1677436+simonspa@users.noreply.github.com>
- ste101 <stephan_bauer@gmx.de>
- sualko <klaus@jsxc.org>
- szaimen <szaimen@e.mail.de>
- tbartenstein <tbartenstein@users.noreply.github.com>
- tbelau666 <thomas.belau@gmx.de>
- tgrant <tom.grant760@gmail.com>
- timm2k <timm2k@gmx.de>
- tux-rampage <tux-rampage@users.noreply.github.com>
- v1r0x <vinzenz.rosenkranz@gmail.com>
- voxsim "Simon Vocella"
- waleczny <michal@walczak.xyz>
- zulan <git@zulan.net>
- Łukasz Buśko <busko.lukasz@pm.me>
ownCloud is written by:
Frank Karlitschek
Robin Appelman
Jakob Sack
Jan-Christoph Borchardt
Michael Gapczynski
Arthur Schiwon
Bart Visscher
Georg Ehrke
Brice Maron
Tom Needham
Marvin Thomas Rabe
Florian Pritz
Bartek Przybylski
Thomas Müller
Klaas Freitag
Sam Tuke
Simon Birnbach
Lukas Reschke
Christian Reiner
Daniel Molkentin
With help from many libraries and frameworks including:
Open Collaboration Services
SabreDAV
jQuery
"Lock” symbol from thenounproject.com collection
"Clock” symbol by Brandon Hopkins, from thenounproject.com collection
-4
View File
@@ -1,4 +0,0 @@
Changelog
=========
The change log is at [https://nextcloud.com/changelog/](https://nextcloud.com/changelog/).
-9
View File
@@ -1,9 +0,0 @@
In the Nextcloud community, participants from all over the world come together to create Free Software for a free internet. This is made possible by the support, hard work and enthusiasm of thousands of people, including those who create and use Nextcloud software.
Our code of conduct offers some guidance to ensure Nextcloud participants can cooperate effectively in a positive and inspiring atmosphere, and to explain how together we can strengthen and support each other.
The Code of Conduct is shared by all contributors and users who engage with the Nextcloud team and its community services. It presents a summary of the shared values and “common sense” thinking in our community.
You can find our full code of conduct on our website: https://nextcloud.com/code-of-conduct/
Please, keep our CoC in mind when you contribute! That way, everyone can be a part of our community in a productive, positive, creative and fun way.
+53
View File
@@ -0,0 +1,53 @@
## Submitting issues
If you have questions about how to install or use ownCloud, please direct these to the [mailing list][mailinglist] or our [forum][forum]. We are also available on [IRC][irc].
### TL;DR
* The [issue template can be found here][template] but be aware of the different repositories! See list below.
### Guidelines
* Please search the existing issues first, it's likely that your issue was already reported or even fixed.
- Go to one of the repositories, click "issues" and type any word in the top search/command bar.
- You can also filter by appending e. g. "state:open" to the search string.
- More info on [search syntax within github](https://help.github.com/articles/searching-issues)
* This repository ([core](https://github.com/owncloud/core/issues)) is *only* for issues within the ownCloud core code. This also includes the apps: files, encryption, external storage, sharing, deleted files, versions, LDAP, and WebDAV Auth
* The issues in other components should be reported in their respective repositories:
- [Android client](https://github.com/owncloud/android/issues)
- [iOS client](https://github.com/owncloud/ios-issues/issues)
- [Desktop client](https://github.com/owncloud/mirall/issues)
- Apps:
- [Bookmarks](https://github.com/owncloud/bookmarks/issues)
- [Calendar](https://github.com/owncloud/calendar/issues)
- [Contacts](https://github.com/owncloud/contacts/issues)
- [Documents](https://github.com/owncloud/documents/issues)
- [Mail](https://github.com/owncloud/mail/issues)
- [Media/Music](https://github.com/owncloud/media/issues)
- [News](https://github.com/owncloud/news/issues)
- [Notes](https://github.com/owncloud/notes/issues)
- [Shorty](https://github.com/owncloud/shorty/issues)
- [All other apps](https://github.com/owncloud/apps/issues) (e.g. Pictures, Tasks, ...)
* Report the issue using our [template][template], it includes all the information we need to track down the issue.
Help us to maximize the effort we can spend fixing issues and adding new features, by not reporting duplicate issues.
[template]: https://raw.github.com/owncloud/core/master/issue_template.md
[mailinglist]: https://mail.kde.org/mailman/listinfo/owncloud
[forum]: http://forum.owncloud.org/
[irc]: http://webchat.freenode.net/?channels=owncloud&uio=d4
## Contributing to Source Code
Thanks for wanting to contribute source code to ownCloud. That's great!
Before we're able to merge your code into the ownCloud core, you need to sign our [Contributor Agreement][agreement].
Please read the [Developer Manuals][devmanual] to learn how to create your first application or how to test the ownCloud code with PHPUnit.
[agreement]: http://owncloud.org/about/contributor-agreement/
[devmanual]: http://owncloud.org/dev/
## Translations
Please submit translations via [Transifex][transifex].
[transifex]: https://www.transifex.com/projects/p/owncloud/
View File
+4 -5
View File
@@ -1,5 +1,5 @@
Files in Nextcloud are licensed under the Affero General Public License version 3,
the text of which can be found in COPYING, or any later version of the AGPL,
Files in ownCloud are licensed under the Affero General Public License version 3,
the text of which can be found in COPYING-AGPL, or any later version of the AGPL,
unless otherwise noted.
Licensing of components:
@@ -8,9 +8,8 @@ Licensing of components:
* MDB2: BSD style custom
* User: AGPL
* XML/RPC: MIT / PHP
* Elementary filetype icons: GPL v3+
* Material UI icons: APACHE LICENSE, VERSION 2.0
* Silk icons: Creative Commons Attribution
All unmodified files from these and other sources retain their original copyright
and license notices: see the relevant individual files.
Attribution information for Nextcloud is contained in the AUTHORS file.
Attribution information for ownCloud is contained in the AUTHORS file.
-34
View File
@@ -1,34 +0,0 @@
all: clean dev-setup build-js-production
# Dev env management
dev-setup: clean npm-init
npm-init:
npm ci
npm-update:
npm update
# Building
build-js:
npm run dev
build-js-production:
npm run build
watch-js:
npm run watch
# Linting
lint-fix:
npm run lint:fix
lint-fix-watch:
npm run lint:fix-watch
# Cleaning
clean:
rm -rf dist
clean-git: clean
git checkout -- dist
+19 -137
View File
@@ -1,144 +1,26 @@
# Nextcloud Server ☁
[![Scrutinizer Code Quality](https://scrutinizer-ci.com/g/nextcloud/server/badges/quality-score.png?b=stable24)](https://scrutinizer-ci.com/g/nextcloud/server/?branch=stable24)
[![codecov](https://codecov.io/gh/nextcloud/server/branch/stable24/graph/badge.svg)](https://codecov.io/gh/nextcloud/server)
[![CII Best Practices](https://bestpractices.coreinfrastructure.org/projects/209/badge)](https://bestpractices.coreinfrastructure.org/projects/209)
# ownCloud
**A safe home for all your data.**
[ownCloud](http://ownCloud.org) gives you freedom and control over your own data.
A personal cloud which runs on your own server.
![](https://raw.githubusercontent.com/nextcloud/screenshots/master/files/Files%20Sharing.png)
### Build Status on [Jenkins CI](https://ci.owncloud.org/)
Git master: [![Build Status](https://ci.owncloud.org/buildStatus/icon?job=ownCloud-Server%28master%29)](https://ci.owncloud.org/job/ownCloud-Server%28master%29/)
## Why is this so awesome? 🤩
### Installation instructions
http://doc.owncloud.org/server/5.0/developer_manual/app/gettingstarted.html
* 📁 **Access your Data** You can store your files, contacts, calendars and more on a server of your choosing.
* 🔄 **Sync your Data** You keep your files, contacts, calendars and more synchronized amongst your devices.
* 🙌 **Share your Data** …by giving others access to the stuff you want them to see or to collaborate with.
* 🚀 **Expandable with hundreds of Apps** ...like [Calendar](https://github.com/nextcloud/calendar), [Contacts](https://github.com/nextcloud/contacts), [Mail](https://github.com/nextcloud/mail), [Video Chat](https://github.com/nextcloud/spreed) and all those you can discover in our [App Store](https://apps.nextcloud.com)
* 🔒 **Security** with our encryption mechanisms, [HackerOne bounty program](https://hackerone.com/nextcloud) and two-factor authentication.
### Contribution Guidelines
http://owncloud.org/dev/contribute/
You want to learn more about how you can use Nextcloud to access, share and protect your files, calendars, contacts, communication & more at home and at your organization? [**Learn about all our Features**](https://nextcloud.com/athome/).
### Get in touch
* [Forum](http://forum.owncloud.org)
* [Mailing list](https://mail.kde.org/mailman/listinfo/owncloud)
* [IRC channel](https://webchat.freenode.net/?channels=owncloud)
* [Twitter](https://twitter.com/ownClouders)
## Get your Nextcloud 🚚
### Important notice on translations
Please submit translations via Transifex:
https://www.transifex.com/projects/p/owncloud/
- ☑️ [**Simply sign up**](https://nextcloud.com/signup/) at one of our providers either through our website or through the apps directly.
- 🖥 [**Install** a server by yourself](https://nextcloud.com/install/#instructions-server) on your own hardware or by using one of our ready to use **appliances**
- 📦 Buy one of the [awesome **devices** coming with a preinstalled Nextcloud](https://nextcloud.com/devices/)
- 🏢 Find a [service **provider**](https://nextcloud.com/providers/) who hosts Nextcloud for you or your company
Enterprise? Public Sector or Education user? You may want to have a look into [**Nextcloud Enterprise**](https://nextcloud.com/enterprise/) provided by Nextcloud GmbH.
## Get in touch 💬
* [📋 Forum](https://help.nextcloud.com)
* [👥 Facebook](https://www.facebook.com/nextclouders)
* [🐣 Twitter](https://twitter.com/Nextclouders)
* [🐘 Mastodon](https://mastodon.xyz/@nextcloud)
You can also [get support for Nextcloud](https://nextcloud.com/support)!
## Join the team 👪
There are many ways to contribute, of which development is only one! Find out [how to get involved](https://nextcloud.com/contribute/), including as translator, designer, tester, helping others and much more! 😍
### Development setup 👩‍💻
1. 🚀 [Set up your local development environment](https://docs.nextcloud.com/server/latest/developer_manual/getting_started/devenv.html)
2. 🐛 [Pick a good first issue](https://github.com/nextcloud/server/labels/good%20first%20issue)
3. 👩‍🔧 Create a branch and make your changes. Remember to sign off your commits using `git commit -sm "Your commit message"`
4. ⬆ Create a [pull request](https://opensource.guide/how-to-contribute/#opening-a-pull-request) and `@mention` the people from the issue to review
5. 👍 Fix things that come up during review
6. 🎉 Wait for it to get merged!
Third-party components are handled as git submodules which have to be initialized first. So aside from the regular git checkout invoking `git submodule update --init` or a similar command is needed, for details see Git documentation.
Several apps that are included by default in regular releases such as [First run wizard](https://github.com/nextcloud/firstrunwizard) or [Activity](https://github.com/nextcloud/activity) are missing in `master` and have to be installed manually by cloning them into the `apps` subfolder.
Otherwise, git checkouts can be handled the same as release archives, by using the `stable*` branches. Note they should never be used on production systems.
### Working with front-end code 🏗
#### Building
We are moving more and more towards using Vue.js in the frontend, starting with Settings. For building the code on changes, use these terminal commands in the root folder:
```bash
# install dependencies
make dev-setup
# build for development
make build-js
# build for development and watch edits
make watch-js
# build for production with minification
make build-js-production
```
#### Committing changes
**When making changes, also commit the compiled files!**
We still use Handlebars templates some places in Files and Settings. We will replace these step-by-step with Vue.js, but in the meantime you need to compile them separately.
If you dont have Handlebars installed yet, you can do it with this terminal command:
```bash
sudo npm install -g handlebars
```
Then inside the root folder of your local Nextcloud development installation, run this command in the terminal every time you changed a `.handlebars` file to compile it:
```bash
./build/compile-handlebars-templates.sh
```
Before checking in JS changes, make sure to also build for production:
```bash
make build-js-production
```
Then add the compiled files for committing.
To save some time, to only rebuild for a specific app, use the following and replace the module with the app name:
```bash
MODULE=user_status make build-js-production
```
Please note that if you used `make build-js` or `make watch-js` before, you'll notice that a lot of files were marked as changed, so might need to clear the workspace first.
### Working with back-end code 🏗
When changing back-end PHP code, in general no additional steps are needed before checking in.
However, if new files were created, you will need to run the following command to update the autoloader files:
```bash
build/autoloaderchecker.sh
```
After that, please also include the autoloader file changes in your commits.
### Tools we use 🛠
- [👀 BrowserStack](https://browserstack.com) for cross-browser testing
- [🌊 WAVE](https://wave.webaim.org/extension/) for accessibility testing
- [🚨 Lighthouse](https://developers.google.com/web/tools/lighthouse/) for testing of performance, accessibility and more
## Contribution guidelines 📜
All contributions to this repository from June, 16 2016 on are considered to be
licensed under the AGPLv3 or any later version.
Nextcloud doesn't require a CLA (Contributor License Agreement).
The copyright belongs to all the individual contributors. Therefore we recommend
that every contributor adds following line to the header of a file, if they
changed it substantially:
```
@copyright Copyright (c) <year>, <your name> (<your email address>)
```
Please read the [Code of Conduct](https://nextcloud.com/community/code-of-conduct/). This document offers some guidance to ensure Nextcloud participants can cooperate effectively in a positive and inspiring atmosphere, and to explain how together we can strengthen and support each other.
Please review the [guidelines for contributing](.github/CONTRIBUTING.md) to this repository.
More information how to contribute: [https://nextcloud.com/contribute/](https://nextcloud.com/contribute/)
For more detailed information about translations:
http://owncloud.org/dev/translation/
-25
View File
@@ -1,25 +0,0 @@
# Security Policy
## Supported Versions
The latest three major release versions of Nextcloud are currently being supported with security updates.
Please visit https://github.com/nextcloud/server/wiki/Maintenance-and-Release-Schedule for further details.
## Reporting a Vulnerability
Security is very important to us. If you have discovered a security issue with Nextcloud,
please read our responsible disclosure guidelines and contact us at [hackerone.com/nextcloud](https://hackerone.com/nextcloud).
Your report should include:
- Product version
- A vulnerability description
- Reproduction steps
A member of the security team will confirm the vulnerability, determine its impact, and develop a fix.
The fix will be applied to the master branch, tested, and packaged in the next security release.
The vulnerability will be publicly announced after the release. Finally, your name will be added
to the [hall of fame](https://hackerone.com/nextcloud/thanks) as a thank you from the entire Nextcloud community. Note our
[threat model](https://nextcloud.com/security/threat-model) to know what is expected behavior.
Please visit https://nextcloud.com/security/ for further information about security.
-9
View File
@@ -1,9 +0,0 @@
root = true
[*]
charset = utf-8
indent_style = tab
indent_size = 4
end_of_line = lf
insert_final_newline = true
trim_trailing_whitespace = true
-12
View File
@@ -1,12 +0,0 @@
.DS_Store
node_modules/
dist/
npm-debug.log
yarn-error.log
# Editor directories and files
.idea
*.suo
*.ntvs*
*.njsproj
*.sln
-3
View File
@@ -1,3 +0,0 @@
{
"esversion": 6
}
-2
View File
@@ -1,2 +0,0 @@
# compiled vue templates
js/
-26
View File
@@ -1,26 +0,0 @@
all: dev-setup build-js-production
dev-setup: clean clean-dev npm-init
npm-init:
npm install
npm-update:
npm update
build-js:
npm run dev
build-js-production:
npm run build
watch-js:
npm run watch
clean:
rm -f js/accessibility.js
rm -f js/accessibility.js.map
clean-dev:
rm -rf node_modules
-22
View File
@@ -1,22 +0,0 @@
# Accessibility ♿
> This app provide multiple features to ease the use of nextcloud.
## Build Setup
``` bash
# install dependencies
make dev-setup
# build for development
make build-js
# build for development and watch edits
make watch-js
# build for production with minification
make build-js-production
# clean output files
make clean
```
-32
View File
@@ -1,32 +0,0 @@
<?xml version="1.0"?>
<info xmlns:xsi= "http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="https://apps.nextcloud.com/schema/apps/info.xsd">
<id>accessibility</id>
<name>Accessibility</name>
<summary>Accessibility options for nextcloud</summary>
<description><![CDATA[Provides multiple accessibilities options to ease your use of Nextcloud]]></description>
<version>1.10.0</version>
<licence>agpl</licence>
<author>John Molakvoæ</author>
<namespace>Accessibility</namespace>
<default_enable/>
<category>customization</category>
<bugs>https://github.com/nextcloud/server/issues</bugs>
<dependencies>
<nextcloud min-version="24" max-version="24"/>
</dependencies>
<repair-steps>
<pre-migration>
<step>OCA\Accessibility\Migration\RepairUserConfig</step>
</pre-migration>
</repair-steps>
<settings>
<personal>OCA\Accessibility\Settings\Personal</personal>
<personal-section>OCA\Accessibility\Settings\PersonalSection</personal-section>
</settings>
</info>
-47
View File
@@ -1,47 +0,0 @@
<?php
/**
* @copyright Copyright (c) 2018 John Molakvoæ <skjnldsv@protonmail.com>
*
* @author Alexey Pyltsyn <lex61rus@gmail.com>
* @author Christoph Wurst <christoph@winzerhof-wurst.at>
* @author John Molakvoæ <skjnldsv@protonmail.com>
* @author Julius Härtl <jus@bitgrid.net>
*
* @license GNU AGPL version 3 or any later version
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as
* published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
*/
return [
'routes' => [
['name' => 'accessibility#getCss', 'url' => '/css/user-{md5}', 'verb' => 'GET'],
],
'ocs' => [
[
'name' => 'Config#getConfig',
'url' => '/api/v1/config',
'verb' => 'GET',
],
[
'name' => 'Config#setConfig',
'url' => '/api/v1/config/{key}',
'verb' => 'PUT',
],
[
'name' => 'Config#deleteConfig',
'url' => '/api/v1/config/{key}',
'verb' => 'DELETE',
],
]
];
-25
View File
@@ -1,25 +0,0 @@
<?php
// autoload.php @generated by Composer
if (PHP_VERSION_ID < 50600) {
if (!headers_sent()) {
header('HTTP/1.1 500 Internal Server Error');
}
$err = 'Composer 2.3.0 dropped support for autoloading on PHP <5.6 and you are running '.PHP_VERSION.', please upgrade PHP or use Composer 2.2 LTS via "composer self-update --2.2". Aborting.'.PHP_EOL;
if (!ini_get('display_errors')) {
if (PHP_SAPI === 'cli' || PHP_SAPI === 'phpdbg') {
fwrite(STDERR, $err);
} elseif (!headers_sent()) {
echo $err;
}
}
trigger_error(
$err,
E_USER_ERROR
);
}
require_once __DIR__ . '/composer/autoload_real.php';
return ComposerAutoloaderInitAccessibility::getLoader();
-13
View File
@@ -1,13 +0,0 @@
{
"config" : {
"vendor-dir": ".",
"optimize-autoloader": true,
"classmap-authoritative": true,
"autoloader-suffix": "Accessibility"
},
"autoload" : {
"psr-4": {
"OCA\\Accessibility\\": "../lib/"
}
}
}
-18
View File
@@ -1,18 +0,0 @@
{
"_readme": [
"This file locks the dependencies of your project to a known state",
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
"This file is @generated automatically"
],
"content-hash": "d751713988987e9331980363e24189ce",
"packages": [],
"packages-dev": [],
"aliases": [],
"minimum-stability": "stable",
"stability-flags": [],
"prefer-stable": false,
"prefer-lowest": false,
"platform": [],
"platform-dev": [],
"plugin-api-version": "2.1.0"
}
@@ -1,572 +0,0 @@
<?php
/*
* This file is part of Composer.
*
* (c) Nils Adermann <naderman@naderman.de>
* Jordi Boggiano <j.boggiano@seld.be>
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Composer\Autoload;
/**
* ClassLoader implements a PSR-0, PSR-4 and classmap class loader.
*
* $loader = new \Composer\Autoload\ClassLoader();
*
* // register classes with namespaces
* $loader->add('Symfony\Component', __DIR__.'/component');
* $loader->add('Symfony', __DIR__.'/framework');
*
* // activate the autoloader
* $loader->register();
*
* // to enable searching the include path (eg. for PEAR packages)
* $loader->setUseIncludePath(true);
*
* In this example, if you try to use a class in the Symfony\Component
* namespace or one of its children (Symfony\Component\Console for instance),
* the autoloader will first look for the class under the component/
* directory, and it will then fallback to the framework/ directory if not
* found before giving up.
*
* This class is loosely based on the Symfony UniversalClassLoader.
*
* @author Fabien Potencier <fabien@symfony.com>
* @author Jordi Boggiano <j.boggiano@seld.be>
* @see https://www.php-fig.org/psr/psr-0/
* @see https://www.php-fig.org/psr/psr-4/
*/
class ClassLoader
{
/** @var ?string */
private $vendorDir;
// PSR-4
/**
* @var array[]
* @psalm-var array<string, array<string, int>>
*/
private $prefixLengthsPsr4 = array();
/**
* @var array[]
* @psalm-var array<string, array<int, string>>
*/
private $prefixDirsPsr4 = array();
/**
* @var array[]
* @psalm-var array<string, string>
*/
private $fallbackDirsPsr4 = array();
// PSR-0
/**
* @var array[]
* @psalm-var array<string, array<string, string[]>>
*/
private $prefixesPsr0 = array();
/**
* @var array[]
* @psalm-var array<string, string>
*/
private $fallbackDirsPsr0 = array();
/** @var bool */
private $useIncludePath = false;
/**
* @var string[]
* @psalm-var array<string, string>
*/
private $classMap = array();
/** @var bool */
private $classMapAuthoritative = false;
/**
* @var bool[]
* @psalm-var array<string, bool>
*/
private $missingClasses = array();
/** @var ?string */
private $apcuPrefix;
/**
* @var self[]
*/
private static $registeredLoaders = array();
/**
* @param ?string $vendorDir
*/
public function __construct($vendorDir = null)
{
$this->vendorDir = $vendorDir;
}
/**
* @return string[]
*/
public function getPrefixes()
{
if (!empty($this->prefixesPsr0)) {
return call_user_func_array('array_merge', array_values($this->prefixesPsr0));
}
return array();
}
/**
* @return array[]
* @psalm-return array<string, array<int, string>>
*/
public function getPrefixesPsr4()
{
return $this->prefixDirsPsr4;
}
/**
* @return array[]
* @psalm-return array<string, string>
*/
public function getFallbackDirs()
{
return $this->fallbackDirsPsr0;
}
/**
* @return array[]
* @psalm-return array<string, string>
*/
public function getFallbackDirsPsr4()
{
return $this->fallbackDirsPsr4;
}
/**
* @return string[] Array of classname => path
* @psalm-return array<string, string>
*/
public function getClassMap()
{
return $this->classMap;
}
/**
* @param string[] $classMap Class to filename map
* @psalm-param array<string, string> $classMap
*
* @return void
*/
public function addClassMap(array $classMap)
{
if ($this->classMap) {
$this->classMap = array_merge($this->classMap, $classMap);
} else {
$this->classMap = $classMap;
}
}
/**
* Registers a set of PSR-0 directories for a given prefix, either
* appending or prepending to the ones previously set for this prefix.
*
* @param string $prefix The prefix
* @param string[]|string $paths The PSR-0 root directories
* @param bool $prepend Whether to prepend the directories
*
* @return void
*/
public function add($prefix, $paths, $prepend = false)
{
if (!$prefix) {
if ($prepend) {
$this->fallbackDirsPsr0 = array_merge(
(array) $paths,
$this->fallbackDirsPsr0
);
} else {
$this->fallbackDirsPsr0 = array_merge(
$this->fallbackDirsPsr0,
(array) $paths
);
}
return;
}
$first = $prefix[0];
if (!isset($this->prefixesPsr0[$first][$prefix])) {
$this->prefixesPsr0[$first][$prefix] = (array) $paths;
return;
}
if ($prepend) {
$this->prefixesPsr0[$first][$prefix] = array_merge(
(array) $paths,
$this->prefixesPsr0[$first][$prefix]
);
} else {
$this->prefixesPsr0[$first][$prefix] = array_merge(
$this->prefixesPsr0[$first][$prefix],
(array) $paths
);
}
}
/**
* Registers a set of PSR-4 directories for a given namespace, either
* appending or prepending to the ones previously set for this namespace.
*
* @param string $prefix The prefix/namespace, with trailing '\\'
* @param string[]|string $paths The PSR-4 base directories
* @param bool $prepend Whether to prepend the directories
*
* @throws \InvalidArgumentException
*
* @return void
*/
public function addPsr4($prefix, $paths, $prepend = false)
{
if (!$prefix) {
// Register directories for the root namespace.
if ($prepend) {
$this->fallbackDirsPsr4 = array_merge(
(array) $paths,
$this->fallbackDirsPsr4
);
} else {
$this->fallbackDirsPsr4 = array_merge(
$this->fallbackDirsPsr4,
(array) $paths
);
}
} elseif (!isset($this->prefixDirsPsr4[$prefix])) {
// Register directories for a new namespace.
$length = strlen($prefix);
if ('\\' !== $prefix[$length - 1]) {
throw new \InvalidArgumentException("A non-empty PSR-4 prefix must end with a namespace separator.");
}
$this->prefixLengthsPsr4[$prefix[0]][$prefix] = $length;
$this->prefixDirsPsr4[$prefix] = (array) $paths;
} elseif ($prepend) {
// Prepend directories for an already registered namespace.
$this->prefixDirsPsr4[$prefix] = array_merge(
(array) $paths,
$this->prefixDirsPsr4[$prefix]
);
} else {
// Append directories for an already registered namespace.
$this->prefixDirsPsr4[$prefix] = array_merge(
$this->prefixDirsPsr4[$prefix],
(array) $paths
);
}
}
/**
* Registers a set of PSR-0 directories for a given prefix,
* replacing any others previously set for this prefix.
*
* @param string $prefix The prefix
* @param string[]|string $paths The PSR-0 base directories
*
* @return void
*/
public function set($prefix, $paths)
{
if (!$prefix) {
$this->fallbackDirsPsr0 = (array) $paths;
} else {
$this->prefixesPsr0[$prefix[0]][$prefix] = (array) $paths;
}
}
/**
* Registers a set of PSR-4 directories for a given namespace,
* replacing any others previously set for this namespace.
*
* @param string $prefix The prefix/namespace, with trailing '\\'
* @param string[]|string $paths The PSR-4 base directories
*
* @throws \InvalidArgumentException
*
* @return void
*/
public function setPsr4($prefix, $paths)
{
if (!$prefix) {
$this->fallbackDirsPsr4 = (array) $paths;
} else {
$length = strlen($prefix);
if ('\\' !== $prefix[$length - 1]) {
throw new \InvalidArgumentException("A non-empty PSR-4 prefix must end with a namespace separator.");
}
$this->prefixLengthsPsr4[$prefix[0]][$prefix] = $length;
$this->prefixDirsPsr4[$prefix] = (array) $paths;
}
}
/**
* Turns on searching the include path for class files.
*
* @param bool $useIncludePath
*
* @return void
*/
public function setUseIncludePath($useIncludePath)
{
$this->useIncludePath = $useIncludePath;
}
/**
* Can be used to check if the autoloader uses the include path to check
* for classes.
*
* @return bool
*/
public function getUseIncludePath()
{
return $this->useIncludePath;
}
/**
* Turns off searching the prefix and fallback directories for classes
* that have not been registered with the class map.
*
* @param bool $classMapAuthoritative
*
* @return void
*/
public function setClassMapAuthoritative($classMapAuthoritative)
{
$this->classMapAuthoritative = $classMapAuthoritative;
}
/**
* Should class lookup fail if not found in the current class map?
*
* @return bool
*/
public function isClassMapAuthoritative()
{
return $this->classMapAuthoritative;
}
/**
* APCu prefix to use to cache found/not-found classes, if the extension is enabled.
*
* @param string|null $apcuPrefix
*
* @return void
*/
public function setApcuPrefix($apcuPrefix)
{
$this->apcuPrefix = function_exists('apcu_fetch') && filter_var(ini_get('apc.enabled'), FILTER_VALIDATE_BOOLEAN) ? $apcuPrefix : null;
}
/**
* The APCu prefix in use, or null if APCu caching is not enabled.
*
* @return string|null
*/
public function getApcuPrefix()
{
return $this->apcuPrefix;
}
/**
* Registers this instance as an autoloader.
*
* @param bool $prepend Whether to prepend the autoloader or not
*
* @return void
*/
public function register($prepend = false)
{
spl_autoload_register(array($this, 'loadClass'), true, $prepend);
if (null === $this->vendorDir) {
return;
}
if ($prepend) {
self::$registeredLoaders = array($this->vendorDir => $this) + self::$registeredLoaders;
} else {
unset(self::$registeredLoaders[$this->vendorDir]);
self::$registeredLoaders[$this->vendorDir] = $this;
}
}
/**
* Unregisters this instance as an autoloader.
*
* @return void
*/
public function unregister()
{
spl_autoload_unregister(array($this, 'loadClass'));
if (null !== $this->vendorDir) {
unset(self::$registeredLoaders[$this->vendorDir]);
}
}
/**
* Loads the given class or interface.
*
* @param string $class The name of the class
* @return true|null True if loaded, null otherwise
*/
public function loadClass($class)
{
if ($file = $this->findFile($class)) {
includeFile($file);
return true;
}
return null;
}
/**
* Finds the path to the file where the class is defined.
*
* @param string $class The name of the class
*
* @return string|false The path if found, false otherwise
*/
public function findFile($class)
{
// class map lookup
if (isset($this->classMap[$class])) {
return $this->classMap[$class];
}
if ($this->classMapAuthoritative || isset($this->missingClasses[$class])) {
return false;
}
if (null !== $this->apcuPrefix) {
$file = apcu_fetch($this->apcuPrefix.$class, $hit);
if ($hit) {
return $file;
}
}
$file = $this->findFileWithExtension($class, '.php');
// Search for Hack files if we are running on HHVM
if (false === $file && defined('HHVM_VERSION')) {
$file = $this->findFileWithExtension($class, '.hh');
}
if (null !== $this->apcuPrefix) {
apcu_add($this->apcuPrefix.$class, $file);
}
if (false === $file) {
// Remember that this class does not exist.
$this->missingClasses[$class] = true;
}
return $file;
}
/**
* Returns the currently registered loaders indexed by their corresponding vendor directories.
*
* @return self[]
*/
public static function getRegisteredLoaders()
{
return self::$registeredLoaders;
}
/**
* @param string $class
* @param string $ext
* @return string|false
*/
private function findFileWithExtension($class, $ext)
{
// PSR-4 lookup
$logicalPathPsr4 = strtr($class, '\\', DIRECTORY_SEPARATOR) . $ext;
$first = $class[0];
if (isset($this->prefixLengthsPsr4[$first])) {
$subPath = $class;
while (false !== $lastPos = strrpos($subPath, '\\')) {
$subPath = substr($subPath, 0, $lastPos);
$search = $subPath . '\\';
if (isset($this->prefixDirsPsr4[$search])) {
$pathEnd = DIRECTORY_SEPARATOR . substr($logicalPathPsr4, $lastPos + 1);
foreach ($this->prefixDirsPsr4[$search] as $dir) {
if (file_exists($file = $dir . $pathEnd)) {
return $file;
}
}
}
}
}
// PSR-4 fallback dirs
foreach ($this->fallbackDirsPsr4 as $dir) {
if (file_exists($file = $dir . DIRECTORY_SEPARATOR . $logicalPathPsr4)) {
return $file;
}
}
// PSR-0 lookup
if (false !== $pos = strrpos($class, '\\')) {
// namespaced class name
$logicalPathPsr0 = substr($logicalPathPsr4, 0, $pos + 1)
. strtr(substr($logicalPathPsr4, $pos + 1), '_', DIRECTORY_SEPARATOR);
} else {
// PEAR-like class name
$logicalPathPsr0 = strtr($class, '_', DIRECTORY_SEPARATOR) . $ext;
}
if (isset($this->prefixesPsr0[$first])) {
foreach ($this->prefixesPsr0[$first] as $prefix => $dirs) {
if (0 === strpos($class, $prefix)) {
foreach ($dirs as $dir) {
if (file_exists($file = $dir . DIRECTORY_SEPARATOR . $logicalPathPsr0)) {
return $file;
}
}
}
}
}
// PSR-0 fallback dirs
foreach ($this->fallbackDirsPsr0 as $dir) {
if (file_exists($file = $dir . DIRECTORY_SEPARATOR . $logicalPathPsr0)) {
return $file;
}
}
// PSR-0 include paths.
if ($this->useIncludePath && $file = stream_resolve_include_path($logicalPathPsr0)) {
return $file;
}
return false;
}
}
/**
* Scope isolated include.
*
* Prevents access to $this/self from included files.
*
* @param string $file
* @return void
* @private
*/
function includeFile($file)
{
include $file;
}
@@ -1,352 +0,0 @@
<?php
/*
* This file is part of Composer.
*
* (c) Nils Adermann <naderman@naderman.de>
* Jordi Boggiano <j.boggiano@seld.be>
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Composer;
use Composer\Autoload\ClassLoader;
use Composer\Semver\VersionParser;
/**
* This class is copied in every Composer installed project and available to all
*
* See also https://getcomposer.org/doc/07-runtime.md#installed-versions
*
* To require its presence, you can require `composer-runtime-api ^2.0`
*
* @final
*/
class InstalledVersions
{
/**
* @var mixed[]|null
* @psalm-var array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array<string, array{pretty_version?: string, version?: string, reference?: string|null, type?: string, install_path?: string, aliases?: string[], dev_requirement: bool, replaced?: string[], provided?: string[]}>}|array{}|null
*/
private static $installed;
/**
* @var bool|null
*/
private static $canGetVendors;
/**
* @var array[]
* @psalm-var array<string, array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array<string, array{pretty_version?: string, version?: string, reference?: string|null, type?: string, install_path?: string, aliases?: string[], dev_requirement: bool, replaced?: string[], provided?: string[]}>}>
*/
private static $installedByVendor = array();
/**
* Returns a list of all package names which are present, either by being installed, replaced or provided
*
* @return string[]
* @psalm-return list<string>
*/
public static function getInstalledPackages()
{
$packages = array();
foreach (self::getInstalled() as $installed) {
$packages[] = array_keys($installed['versions']);
}
if (1 === \count($packages)) {
return $packages[0];
}
return array_keys(array_flip(\call_user_func_array('array_merge', $packages)));
}
/**
* Returns a list of all package names with a specific type e.g. 'library'
*
* @param string $type
* @return string[]
* @psalm-return list<string>
*/
public static function getInstalledPackagesByType($type)
{
$packagesByType = array();
foreach (self::getInstalled() as $installed) {
foreach ($installed['versions'] as $name => $package) {
if (isset($package['type']) && $package['type'] === $type) {
$packagesByType[] = $name;
}
}
}
return $packagesByType;
}
/**
* Checks whether the given package is installed
*
* This also returns true if the package name is provided or replaced by another package
*
* @param string $packageName
* @param bool $includeDevRequirements
* @return bool
*/
public static function isInstalled($packageName, $includeDevRequirements = true)
{
foreach (self::getInstalled() as $installed) {
if (isset($installed['versions'][$packageName])) {
return $includeDevRequirements || empty($installed['versions'][$packageName]['dev_requirement']);
}
}
return false;
}
/**
* Checks whether the given package satisfies a version constraint
*
* e.g. If you want to know whether version 2.3+ of package foo/bar is installed, you would call:
*
* Composer\InstalledVersions::satisfies(new VersionParser, 'foo/bar', '^2.3')
*
* @param VersionParser $parser Install composer/semver to have access to this class and functionality
* @param string $packageName
* @param string|null $constraint A version constraint to check for, if you pass one you have to make sure composer/semver is required by your package
* @return bool
*/
public static function satisfies(VersionParser $parser, $packageName, $constraint)
{
$constraint = $parser->parseConstraints($constraint);
$provided = $parser->parseConstraints(self::getVersionRanges($packageName));
return $provided->matches($constraint);
}
/**
* Returns a version constraint representing all the range(s) which are installed for a given package
*
* It is easier to use this via isInstalled() with the $constraint argument if you need to check
* whether a given version of a package is installed, and not just whether it exists
*
* @param string $packageName
* @return string Version constraint usable with composer/semver
*/
public static function getVersionRanges($packageName)
{
foreach (self::getInstalled() as $installed) {
if (!isset($installed['versions'][$packageName])) {
continue;
}
$ranges = array();
if (isset($installed['versions'][$packageName]['pretty_version'])) {
$ranges[] = $installed['versions'][$packageName]['pretty_version'];
}
if (array_key_exists('aliases', $installed['versions'][$packageName])) {
$ranges = array_merge($ranges, $installed['versions'][$packageName]['aliases']);
}
if (array_key_exists('replaced', $installed['versions'][$packageName])) {
$ranges = array_merge($ranges, $installed['versions'][$packageName]['replaced']);
}
if (array_key_exists('provided', $installed['versions'][$packageName])) {
$ranges = array_merge($ranges, $installed['versions'][$packageName]['provided']);
}
return implode(' || ', $ranges);
}
throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed');
}
/**
* @param string $packageName
* @return string|null If the package is being replaced or provided but is not really installed, null will be returned as version, use satisfies or getVersionRanges if you need to know if a given version is present
*/
public static function getVersion($packageName)
{
foreach (self::getInstalled() as $installed) {
if (!isset($installed['versions'][$packageName])) {
continue;
}
if (!isset($installed['versions'][$packageName]['version'])) {
return null;
}
return $installed['versions'][$packageName]['version'];
}
throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed');
}
/**
* @param string $packageName
* @return string|null If the package is being replaced or provided but is not really installed, null will be returned as version, use satisfies or getVersionRanges if you need to know if a given version is present
*/
public static function getPrettyVersion($packageName)
{
foreach (self::getInstalled() as $installed) {
if (!isset($installed['versions'][$packageName])) {
continue;
}
if (!isset($installed['versions'][$packageName]['pretty_version'])) {
return null;
}
return $installed['versions'][$packageName]['pretty_version'];
}
throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed');
}
/**
* @param string $packageName
* @return string|null If the package is being replaced or provided but is not really installed, null will be returned as reference
*/
public static function getReference($packageName)
{
foreach (self::getInstalled() as $installed) {
if (!isset($installed['versions'][$packageName])) {
continue;
}
if (!isset($installed['versions'][$packageName]['reference'])) {
return null;
}
return $installed['versions'][$packageName]['reference'];
}
throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed');
}
/**
* @param string $packageName
* @return string|null If the package is being replaced or provided but is not really installed, null will be returned as install path. Packages of type metapackages also have a null install path.
*/
public static function getInstallPath($packageName)
{
foreach (self::getInstalled() as $installed) {
if (!isset($installed['versions'][$packageName])) {
continue;
}
return isset($installed['versions'][$packageName]['install_path']) ? $installed['versions'][$packageName]['install_path'] : null;
}
throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed');
}
/**
* @return array
* @psalm-return array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}
*/
public static function getRootPackage()
{
$installed = self::getInstalled();
return $installed[0]['root'];
}
/**
* Returns the raw installed.php data for custom implementations
*
* @deprecated Use getAllRawData() instead which returns all datasets for all autoloaders present in the process. getRawData only returns the first dataset loaded, which may not be what you expect.
* @return array[]
* @psalm-return array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array<string, array{pretty_version?: string, version?: string, reference?: string|null, type?: string, install_path?: string, aliases?: string[], dev_requirement: bool, replaced?: string[], provided?: string[]}>}
*/
public static function getRawData()
{
@trigger_error('getRawData only returns the first dataset loaded, which may not be what you expect. Use getAllRawData() instead which returns all datasets for all autoloaders present in the process.', E_USER_DEPRECATED);
if (null === self::$installed) {
// only require the installed.php file if this file is loaded from its dumped location,
// and not from its source location in the composer/composer package, see https://github.com/composer/composer/issues/9937
if (substr(__DIR__, -8, 1) !== 'C') {
self::$installed = include __DIR__ . '/installed.php';
} else {
self::$installed = array();
}
}
return self::$installed;
}
/**
* Returns the raw data of all installed.php which are currently loaded for custom implementations
*
* @return array[]
* @psalm-return list<array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array<string, array{pretty_version?: string, version?: string, reference?: string|null, type?: string, install_path?: string, aliases?: string[], dev_requirement: bool, replaced?: string[], provided?: string[]}>}>
*/
public static function getAllRawData()
{
return self::getInstalled();
}
/**
* Lets you reload the static array from another file
*
* This is only useful for complex integrations in which a project needs to use
* this class but then also needs to execute another project's autoloader in process,
* and wants to ensure both projects have access to their version of installed.php.
*
* A typical case would be PHPUnit, where it would need to make sure it reads all
* the data it needs from this class, then call reload() with
* `require $CWD/vendor/composer/installed.php` (or similar) as input to make sure
* the project in which it runs can then also use this class safely, without
* interference between PHPUnit's dependencies and the project's dependencies.
*
* @param array[] $data A vendor/composer/installed.php data set
* @return void
*
* @psalm-param array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array<string, array{pretty_version?: string, version?: string, reference?: string|null, type?: string, install_path?: string, aliases?: string[], dev_requirement: bool, replaced?: string[], provided?: string[]}>} $data
*/
public static function reload($data)
{
self::$installed = $data;
self::$installedByVendor = array();
}
/**
* @return array[]
* @psalm-return list<array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array<string, array{pretty_version?: string, version?: string, reference?: string|null, type?: string, install_path?: string, aliases?: string[], dev_requirement: bool, replaced?: string[], provided?: string[]}>}>
*/
private static function getInstalled()
{
if (null === self::$canGetVendors) {
self::$canGetVendors = method_exists('Composer\Autoload\ClassLoader', 'getRegisteredLoaders');
}
$installed = array();
if (self::$canGetVendors) {
foreach (ClassLoader::getRegisteredLoaders() as $vendorDir => $loader) {
if (isset(self::$installedByVendor[$vendorDir])) {
$installed[] = self::$installedByVendor[$vendorDir];
} elseif (is_file($vendorDir.'/composer/installed.php')) {
$installed[] = self::$installedByVendor[$vendorDir] = require $vendorDir.'/composer/installed.php';
if (null === self::$installed && strtr($vendorDir.'/composer', '\\', '/') === strtr(__DIR__, '\\', '/')) {
self::$installed = $installed[count($installed) - 1];
}
}
}
}
if (null === self::$installed) {
// only require the installed.php file if this file is loaded from its dumped location,
// and not from its source location in the composer/composer package, see https://github.com/composer/composer/issues/9937
if (substr(__DIR__, -8, 1) !== 'C') {
self::$installed = require __DIR__ . '/installed.php';
} else {
self::$installed = array();
}
}
$installed[] = self::$installed;
return $installed;
}
}
@@ -1,21 +0,0 @@
Copyright (c) Nils Adermann, Jordi Boggiano
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is furnished
to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
@@ -1,18 +0,0 @@
<?php
// autoload_classmap.php @generated by Composer
$vendorDir = dirname(__DIR__);
$baseDir = $vendorDir;
return array(
'Composer\\InstalledVersions' => $vendorDir . '/composer/InstalledVersions.php',
'OCA\\Accessibility\\AccessibilityProvider' => $baseDir . '/../lib/AccessibilityProvider.php',
'OCA\\Accessibility\\AppInfo\\Application' => $baseDir . '/../lib/AppInfo/Application.php',
'OCA\\Accessibility\\Controller\\AccessibilityController' => $baseDir . '/../lib/Controller/AccessibilityController.php',
'OCA\\Accessibility\\Controller\\ConfigController' => $baseDir . '/../lib/Controller/ConfigController.php',
'OCA\\Accessibility\\Migration\\RepairUserConfig' => $baseDir . '/../lib/Migration/RepairUserConfig.php',
'OCA\\Accessibility\\Service\\JSDataService' => $baseDir . '/../lib/Service/JSDataService.php',
'OCA\\Accessibility\\Settings\\Personal' => $baseDir . '/../lib/Settings/Personal.php',
'OCA\\Accessibility\\Settings\\PersonalSection' => $baseDir . '/../lib/Settings/PersonalSection.php',
);
@@ -1,9 +0,0 @@
<?php
// autoload_namespaces.php @generated by Composer
$vendorDir = dirname(__DIR__);
$baseDir = $vendorDir;
return array(
);
@@ -1,10 +0,0 @@
<?php
// autoload_psr4.php @generated by Composer
$vendorDir = dirname(__DIR__);
$baseDir = $vendorDir;
return array(
'OCA\\Accessibility\\' => array($baseDir . '/../lib'),
);
@@ -1,37 +0,0 @@
<?php
// autoload_real.php @generated by Composer
class ComposerAutoloaderInitAccessibility
{
private static $loader;
public static function loadClassLoader($class)
{
if ('Composer\Autoload\ClassLoader' === $class) {
require __DIR__ . '/ClassLoader.php';
}
}
/**
* @return \Composer\Autoload\ClassLoader
*/
public static function getLoader()
{
if (null !== self::$loader) {
return self::$loader;
}
spl_autoload_register(array('ComposerAutoloaderInitAccessibility', 'loadClassLoader'), true, true);
self::$loader = $loader = new \Composer\Autoload\ClassLoader(\dirname(__DIR__));
spl_autoload_unregister(array('ComposerAutoloaderInitAccessibility', 'loadClassLoader'));
require __DIR__ . '/autoload_static.php';
call_user_func(\Composer\Autoload\ComposerStaticInitAccessibility::getInitializer($loader));
$loader->setClassMapAuthoritative(true);
$loader->register(true);
return $loader;
}
}
@@ -1,44 +0,0 @@
<?php
// autoload_static.php @generated by Composer
namespace Composer\Autoload;
class ComposerStaticInitAccessibility
{
public static $prefixLengthsPsr4 = array (
'O' =>
array (
'OCA\\Accessibility\\' => 18,
),
);
public static $prefixDirsPsr4 = array (
'OCA\\Accessibility\\' =>
array (
0 => __DIR__ . '/..' . '/../lib',
),
);
public static $classMap = array (
'Composer\\InstalledVersions' => __DIR__ . '/..' . '/composer/InstalledVersions.php',
'OCA\\Accessibility\\AccessibilityProvider' => __DIR__ . '/..' . '/../lib/AccessibilityProvider.php',
'OCA\\Accessibility\\AppInfo\\Application' => __DIR__ . '/..' . '/../lib/AppInfo/Application.php',
'OCA\\Accessibility\\Controller\\AccessibilityController' => __DIR__ . '/..' . '/../lib/Controller/AccessibilityController.php',
'OCA\\Accessibility\\Controller\\ConfigController' => __DIR__ . '/..' . '/../lib/Controller/ConfigController.php',
'OCA\\Accessibility\\Migration\\RepairUserConfig' => __DIR__ . '/..' . '/../lib/Migration/RepairUserConfig.php',
'OCA\\Accessibility\\Service\\JSDataService' => __DIR__ . '/..' . '/../lib/Service/JSDataService.php',
'OCA\\Accessibility\\Settings\\Personal' => __DIR__ . '/..' . '/../lib/Settings/Personal.php',
'OCA\\Accessibility\\Settings\\PersonalSection' => __DIR__ . '/..' . '/../lib/Settings/PersonalSection.php',
);
public static function getInitializer(ClassLoader $loader)
{
return \Closure::bind(function () use ($loader) {
$loader->prefixLengthsPsr4 = ComposerStaticInitAccessibility::$prefixLengthsPsr4;
$loader->prefixDirsPsr4 = ComposerStaticInitAccessibility::$prefixDirsPsr4;
$loader->classMap = ComposerStaticInitAccessibility::$classMap;
}, null, ClassLoader::class);
}
}
@@ -1,5 +0,0 @@
{
"packages": [],
"dev": false,
"dev-package-names": []
}
@@ -1,23 +0,0 @@
<?php return array(
'root' => array(
'name' => '__root__',
'pretty_version' => 'dev-master',
'version' => 'dev-master',
'reference' => 'c83487436cc66554fd93bc26ee3b72e7b91a21fd',
'type' => 'library',
'install_path' => __DIR__ . '/../',
'aliases' => array(),
'dev' => false,
),
'versions' => array(
'__root__' => array(
'pretty_version' => 'dev-master',
'version' => 'dev-master',
'reference' => 'c83487436cc66554fd93bc26ee3b72e7b91a21fd',
'type' => 'library',
'install_path' => __DIR__ . '/../',
'aliases' => array(),
'dev_requirement' => false,
),
),
);
-111
View File
@@ -1,111 +0,0 @@
// SCSS variables
$color-main-text: #d8d8d8;
$color-main-background: #181818;
$color-background-hover: lighten($color-main-background, 4%);
$color-background-dark: lighten($color-main-background, 7%);
$color-background-darker: lighten($color-main-background, 14%);
$color-placeholder-light: lighten($color-main-background, 10%);
$color-placeholder-dark: lighten($color-main-background, 20%);
$color-text-maxcontrast: darken($color-main-text, 30%);
$color-text-light: darken($color-main-text, 10%);
$color-text-lighter: darken($color-main-text, 20%);
$color-loading-light: #777;
$color-loading-dark: #ccc;
$color-box-shadow: transparentize(darken($color-main-background, 70%), 0.5);
$color-border: lighten($color-main-background, 7%);
$color-border-dark: lighten($color-main-background, 14%);
$image-logo: url('../../../core/img/logo/logo.svg?v=1');
$image-logoheader: url('../../../core/img/logo/logo.svg?v=1');
#app-navigation > ul > li > a:first-child,
#app-navigation > ul > li > ul > li > a:first-child,
#expanddiv a,
.activity-section .activity-icon.monochrome {
& > img,
:not(.avatardiv) > img {
filter: invert(100%);
}
}
#navigation #apps li a,
#body-settings #content-vue.app-settings .app-image-icon,
#body-settings #content-vue.app-settings #app-sidebar #app-details-view h2 {
svg {
filter: invert(100%);
}
}
// Otherwise icon-more gets inverted via function
#appmenu .icon-more-white {
filter: invert(100%);
}
// since svg icons are inverted, revert to white for the header
.header-right > * {
>[class^='icon-'] {
filter: invert(100%);
}
}
.bubble,
.app-navigation-entry-menu,
.popovermenu,
.popover__menu {
li {
> button,
> a,
> .menuitem, > .popover__menuitem {
> img {
filter: invert(100%);
}
}
}
}
.bubble,
.app-navigation-entry-menu,
.popovermenu,
#header .menu {
border: 1px solid var(--color-border);
}
.popover[x-placement^='top'] .popover__arrow {
border-top-color: var(--color-border);
}
.popover[x-placement^='bottom'] .popover__arrow {
border-bottom-color: var(--color-border);
}
.popover[x-placement^='left'] .popover__arrow {
border-left-color: var(--color-border);
}
.popover[x-placement^='right'] .popover__arrow {
border-right-color: var(--color-border);
}
.popover .popover__inner {
border: 1px solid var(--color-border);
}
// Prevent slideshow icons from going dark
#slideshow {
[class^='icon-'], [class*=' icon-']{
filter: invert(100%);
}
}
input[type=checkbox] {
&.checkbox {
&:checked + label:before {
background-image: url('../../../core/img/actions/checkbox-mark-dark.svg');
}
&:indeterminate + label:before {
background-image: url('../../../core/img/actions/checkbox-mixed-dark.svg');
}
}
}
-18
View File
@@ -1,18 +0,0 @@
@font-face {
font-family: 'OpenDyslexic';
font-style: normal;
font-weight: 400;
src: url('../fonts/OpenDyslexic-Regular.woff') format('woff');
}
@font-face {
font-family: 'OpenDyslexic';
font-style: normal;
font-weight: 700;
src: url('../fonts/OpenDyslexic-Bold.woff') format('woff');
}
$font-face: OpenDyslexic, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen-Sans, Cantarell, Ubuntu, 'Helvetica Neue', Arial, 'Noto Color Emoji', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol';
$image-logo: url('../../../core/img/logo/logo.svg?v=1');
$image-logoheader: url('../../../core/img/logo/logo.svg?v=1');
-31
View File
@@ -1,31 +0,0 @@
// SCSS variables
$color-main-text: #000;
$color-main-background: #fff;
$color-background-dark: darken($color-main-background, 30%);
$color-background-darker: darken($color-main-background, 30%);
$color-placeholder-light: darken($color-main-background, 30%);
$color-placeholder-dark: darken($color-main-background, 45%);
$color-text-maxcontrast: $color-main-text;
$color-text-light: $color-main-text;
$color-text-lighter: $color-main-text;
$color-loading-light: #ddd;
$color-loading-dark: #000;
$color-box-shadow: $color-main-text;
$color-border: darken($color-main-background, 50%);
$color-border-dark: darken($color-main-background, 50%);
$image-logo: url('../../../core/img/logo/logo.svg?v=1');
$image-logoheader: url('../../../core/img/logo/logo.svg?v=1');
[class^='icon-'], [class*=' icon-'],
.action,
#appmenu li a,
.menutoggle {
opacity: 1 !important;
}
@@ -1,25 +0,0 @@
// SCSS variables
$color-main-text: #fff;
$color-main-background: #000;
$color-background-dark: lighten($color-main-background, 30%);
$color-background-darker: lighten($color-main-background, 30%);
$color-text-maxcontrast: $color-main-text;
$color-text-light: $color-main-text;
$color-text-lighter: $color-main-text;
$color-loading-light: #000;
$color-loading-dark: #ddd;
$color-box-shadow: $color-main-text;
$color-border: lighten($color-main-background, 50%);
$color-border-dark: lighten($color-main-background, 50%);
[class^='icon-'], [class*=' icon-'],
.action,
#appmenu li a,
.menutoggle {
opacity: 1 !important;
}
-73
View File
@@ -1,73 +0,0 @@
// Rules we could port to the rest of Nextcloud too
// Proper highlight for links and focus feedback
#accessibility a {
font-weight: bold;
&:hover,
&:focus {
text-decoration: underline;
}
}
// Highlight checkbox label in bold for focus feedback
// Drawback: Text width increases a bit
#accessibility .checkbox:focus + label {
font-weight: bold;
}
// Limit width of settings sections for readability
#accessibility.section p {
max-width: 800px;
}
// End of rules we could port to rest of Nextcloud
.preview-list {
display: flex;
flex-direction: column;
max-width: 800px;
}
.preview {
display: flex;
justify-content: flex-start;
margin-top: 3em;
position: relative;
&,
* {
user-select: none;
}
.preview-image {
flex-basis: 200px;
flex-shrink: 0;
margin-right: 1em;
background-position: top left;
background-size: cover;
background-repeat: no-repeat;
border-radius: var(--border-radius);
}
.preview-description {
display: flex;
flex-direction: column;
label {
padding: 12px 0;
}
}
}
@media (max-width: ($breakpoint-mobile / 2)) {
.app-settings #accessibility .preview-list .preview {
display: unset;
.preview-image {
height: 150px;
}
}
}
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
-76
View File
@@ -1,76 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
version="1.1"
id="svg2"
width="16"
height="16"
viewBox="0 0 16 16"
sodipodi:docname="app-dark.svg"
inkscape:version="0.92.2 5c3e80d, 2017-08-06">
<metadata
id="metadata8">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<defs
id="defs6" />
<sodipodi:namedview
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1"
objecttolerance="10"
gridtolerance="10"
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:window-width="1880"
inkscape:window-height="993"
id="namedview4"
showgrid="false"
showguides="true"
inkscape:guide-bbox="true"
inkscape:zoom="36.460193"
inkscape:cx="8.4752826"
inkscape:cy="18.273624"
inkscape:window-x="20"
inkscape:window-y="67"
inkscape:window-maximized="0"
inkscape:current-layer="g848"
fit-margin-top="0"
fit-margin-left="0"
fit-margin-right="0"
fit-margin-bottom="0" />
<g
id="g848"
transform="matrix(1.1307959,0,0,1.0801738,-1.0463882,-0.84269722)"
style="stroke-width:0.90481776;fill:#000000">
<circle
r="1.9587879"
cy="2.8315151"
cx="7.990303"
id="path844"
style="opacity:1;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.90481776;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;paint-order:stroke markers fill" />
<path
sodipodi:nodetypes="scsssscsccccczzcccccssssccsscs"
inkscape:connector-curvature="0"
id="path843"
d="m 2.3519709,4.2557871 c -0.3126291,0 -0.4819578,0.1287194 -0.5322266,0.4028321 -0.053173,0.2899914 0.1062609,0.5159057 0.4370117,0.6274414 1.420521,0.4790277 2.4256503,0.6675279 3.8410483,0.9800416 0.327839,0.072385 0.6900295,0.2893751 0.6520998,1.0948483 C 6.6985575,8.451345 6.6372144,9.7041167 6.2631031,11.323353 6.0397526,12.290062 5.6782112,13.622766 5.4305838,14.3922 5.3416728,14.668443 5.281658,14.922355 5.281658,15.031849 c 0,0.08257 0.053443,0.249642 0.097656,0.307617 0.023823,0.03125 0.075039,0.07397 0.1147462,0.09522 0.062879,0.03361 0.096262,0.03787 0.2612304,0.03663 0.3361373,-0.0026 0.4608113,-0.08245 0.6665037,-0.429687 0.4838657,-0.939315 0.7378785,-2.132191 0.9402993,-3.014266 0.092189,-0.517235 0.2624476,-1.66347 0.6710287,-1.66347 0.4085811,0 0.4979093,0.95008 0.6812062,1.687228 0.1832969,0.737148 0.6122738,2.295202 0.7738717,2.704862 0.2137476,0.54186 0.5742238,0.836985 0.8764648,0.717774 0.03316,-0.01301 0.116937,-0.04526 0.187989,-0.0708 0.147435,-0.053 0.186715,-0.07824 0.219726,-0.156249 0.0655,-0.154793 -0.01013,-0.454047 -0.349121,-1.41114 C 9.7721847,11.597192 9.2651806,9.3990255 9.3334308,7.2974743 9.3630343,6.3859259 9.6837054,6.305369 10.075725,6.2075087 c 1.17285,-0.2927798 2.00228,-0.379973 3.387085,-0.8579717 0.468513,-0.1617184 0.727539,-0.2608264 0.727539,-0.5590819 0,-0.2554049 -0.153084,-0.4346541 -0.437011,-0.5102538 -0.116851,-0.031101 -0.318383,-0.028905 -0.632326,0.00243 -1.085189,0.10834 -2.939683,0.5153868 -4.0234365,0.6710819 -0.529944,0.076133 -1.7229392,0.094015 -2.2729489,0 C 5.6763224,4.7574297 4.1363176,4.4147025 2.9061699,4.2997326 2.6560099,4.2763537 2.4068766,4.2557871 2.3519709,4.2557871 Z"
style="fill:#000000;stroke-width:0.9048177" />
</g>
</svg>

Before

Width:  |  Height:  |  Size: 4.0 KiB

-76
View File
@@ -1,76 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
version="1.1"
id="svg2"
width="16"
height="16"
viewBox="0 0 16 16"
sodipodi:docname="app.svg"
inkscape:version="0.92.2 5c3e80d, 2017-08-06">
<metadata
id="metadata8">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<defs
id="defs6" />
<sodipodi:namedview
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1"
objecttolerance="10"
gridtolerance="10"
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:window-width="1880"
inkscape:window-height="993"
id="namedview4"
showgrid="false"
showguides="true"
inkscape:guide-bbox="true"
inkscape:zoom="36.460193"
inkscape:cx="8.4752826"
inkscape:cy="18.273624"
inkscape:window-x="20"
inkscape:window-y="67"
inkscape:window-maximized="0"
inkscape:current-layer="g848"
fit-margin-top="0"
fit-margin-left="0"
fit-margin-right="0"
fit-margin-bottom="0" />
<g
id="g848"
transform="matrix(1.1307959,0,0,1.0801738,-1.0463882,-0.84269722)"
style="stroke-width:0.90481776;fill:#000000">
<circle
r="1.9587879"
cy="2.8315151"
cx="7.990303"
id="path844"
style="opacity:1;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:0.90481776;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;paint-order:stroke markers fill" />
<path
sodipodi:nodetypes="scsssscsccccczzcccccssssccsscs"
inkscape:connector-curvature="0"
id="path843"
d="m 2.3519709,4.2557871 c -0.3126291,0 -0.4819578,0.1287194 -0.5322266,0.4028321 -0.053173,0.2899914 0.1062609,0.5159057 0.4370117,0.6274414 1.420521,0.4790277 2.4256503,0.6675279 3.8410483,0.9800416 0.327839,0.072385 0.6900295,0.2893751 0.6520998,1.0948483 C 6.6985575,8.451345 6.6372144,9.7041167 6.2631031,11.323353 6.0397526,12.290062 5.6782112,13.622766 5.4305838,14.3922 5.3416728,14.668443 5.281658,14.922355 5.281658,15.031849 c 0,0.08257 0.053443,0.249642 0.097656,0.307617 0.023823,0.03125 0.075039,0.07397 0.1147462,0.09522 0.062879,0.03361 0.096262,0.03787 0.2612304,0.03663 0.3361373,-0.0026 0.4608113,-0.08245 0.6665037,-0.429687 0.4838657,-0.939315 0.7378785,-2.132191 0.9402993,-3.014266 0.092189,-0.517235 0.2624476,-1.66347 0.6710287,-1.66347 0.4085811,0 0.4979093,0.95008 0.6812062,1.687228 0.1832969,0.737148 0.6122738,2.295202 0.7738717,2.704862 0.2137476,0.54186 0.5742238,0.836985 0.8764648,0.717774 0.03316,-0.01301 0.116937,-0.04526 0.187989,-0.0708 0.147435,-0.053 0.186715,-0.07824 0.219726,-0.156249 0.0655,-0.154793 -0.01013,-0.454047 -0.349121,-1.41114 C 9.7721847,11.597192 9.2651806,9.3990255 9.3334308,7.2974743 9.3630343,6.3859259 9.6837054,6.305369 10.075725,6.2075087 c 1.17285,-0.2927798 2.00228,-0.379973 3.387085,-0.8579717 0.468513,-0.1617184 0.727539,-0.2608264 0.727539,-0.5590819 0,-0.2554049 -0.153084,-0.4346541 -0.437011,-0.5102538 -0.116851,-0.031101 -0.318383,-0.028905 -0.632326,0.00243 -1.085189,0.10834 -2.939683,0.5153868 -4.0234365,0.6710819 -0.529944,0.076133 -1.7229392,0.094015 -2.2729489,0 C 5.6763224,4.7574297 4.1363176,4.4147025 2.9061699,4.2997326 2.6560099,4.2763537 2.4068766,4.2557871 2.3519709,4.2557871 Z"
style="fill:#ffffff;stroke-width:0.9048177" />
</g>
</svg>

Before

Width:  |  Height:  |  Size: 3.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 64 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 65 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 65 KiB

Some files were not shown because too many files have changed in this diff Show More