Giter Club home page Giter Club logo

contacts's Introduction

Nextcloud Contacts

REUSE status Downloads Code coverage Dependabot status

A contacts app for Nextcloud. Easily sync contacts from various devices with your Nextcloud and edit them online.

This app only support vCard 3.0 and 4.0. This app is compatible with the same browsers as server except IE!

πŸ’™ πŸŽ‰ Why is this so awesome?

  • πŸš€ Integration with other Nextcloud apps! Currently Mail and Calendar – more to come.
  • πŸŽ‰ Never forget a birthday! You can sync birthdays and other recurring events with your Nextcloud Calendar.
  • πŸ‘₯ Sharing of address books! You want to share your contacts with your friends or coworkers? No problem!
  • πŸ™ˆ We’re not reinventing the wheel! Based on the great and open SabreDAV library.

Maintainers

πŸ› οΈ Installation

The app is distributed through the app store and you can install it right from your Nextcloud installation.

Release tarballs are hosted at https://github.com/nextcloud-releases/contacts/releases.

πŸ“‘ Support

If you need assistance or want to ask a question about Contacts, you are welcome to ask for support in our forums. If you have found a bug, feel free to open a new Issue on GitHub. Keep in mind, that this repository only manages the frontend. If you find bugs or have problems with the CardDAV-Backend, you should ask the team at Nextcloud server for help!

Could you add XXX property?

This is a complicated answer. We did not invent the way contacts works. We are following the official vCard format. This format include a predefined set of properties that other applications/devices supports too (Android, iOS, Windows, Gnome...). Adding a custom property would just make it compatible with Nextcloud and will not be understood by any other clients and make it complicated for us to ensure its sustainability over time. Long story short, we suggest you use the Notes field to add your custom data :)

If you'd like to join, just go through the issue list and fix some. :)

Build the app

# set up and build for production
composer install
npm ci
npm run build

# install dependencies
composer install
npm ci

# build for dev and watch changes
npm run watch

# build for dev
npm run dev

# build for production with minification
npm run build

Running tests

You can run all front-end tests by using:

# run tests once
npm run test

# run tests continuously after every change
npm run test:watch

✌️ Code of conduct

The Nextcloud community has core values that are shared between all members during conferences, hackweeks and on all interactions in online platforms including Github and Forums. If you contribute, participate or interact with this community, please respect our shared values. 😌

❀️ How to create a pull request

This guide will help you get started:

contacts's People

Contributors

andyscherzinger avatar call-me-matt avatar christophwurst avatar daniellandau avatar deepdiver1975 avatar dependabot-preview[bot] avatar dependabot-support avatar dependabot[bot] avatar gretad avatar gvodyanov avatar hamza221 avatar hanzi avatar henni avatar irgendwie avatar jancborchardt avatar johannesgge avatar kesselb avatar miaulalala avatar morrisjobke avatar nextcloud-bot avatar nickvergessen avatar rakekniven avatar renovate[bot] avatar skjnldsv avatar sleepypioneer avatar st3iny avatar suntala avatar szaimen avatar valdnet avatar xh3n1 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

contacts's Issues

Improve the Contactlist by loading in Chunks

I have a small Idea for Speed Improvement in the Contact App. Loading my 200 Contacts on a Raspberry Pi takes some time. I think, it would be better to load them in Chunks. What do you think, if we load only 30 or 50 Contacts and load the rest if we scroll the list to the bottom and reach the end (next 30 entrys)?

Additionally, the Counter for all Contacts should always visible, not only at the end as last Contact, maybe this could be done, if the Contactlist ends above the Counter. Any chance to get this in a upcoming version?

BTW: The value for Chunk-Count should be configurable.

Contact image improvements

To improve the performance of the Nextcloud contacts, we should consider about the following:

  • Resize the Images when they are uploaded (for too large images)
  • Provide an editor to cut and resize images (see personal-settings)

Discussed with @schiessle and @nickvergessen

Β»makeΒ« command fails

Works for apps like Mail. Contacts fails with this:

jan@Rechenknecht:~/nextcloud/apps/contacts$ make
make npm
make[1] : on entre dans le répertoire « /home/jan/nextcloud/apps/contacts »
npm run build

> [email protected] prebuild /home/jan/nextcloud/apps/contacts
> npm install && npm update && node_modules/bower/bin/bower install && node_modules/bower/bin/bower update

npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@^1.0.0 (node_modules/chokidar/node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for [email protected]: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
- [email protected] node_modules/gulp-concat/node_modules/readable-stream
- [email protected] node_modules/gulp-concat/node_modules/through2
[email protected] /home/jan/nextcloud/apps/contacts
β”œβ”€β”€ [email protected] 
β”œβ”€β”€ [email protected] 
β”œβ”€β”€ [email protected] 
β”œβ”€β”€ [email protected] 
└── [email protected] 

npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@^1.0.0 (node_modules/chokidar/node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for [email protected]: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
bower ui-select#0.14.9          cached https://github.com/angular-ui/ui-select.git#0.14.9
bower ui-select#0.14.9        validate 0.14.9 against https://github.com/angular-ui/ui-select.git#0.14.9
bower vcard#1eb59e9b4406a3253bbb9295a1da776d22cdfe3a           cached https://github.com/Heymdall/vcard.git#1eb59e9b44
bower vcard#1eb59e9b4406a3253bbb9295a1da776d22cdfe3a         validate 1eb59e9b44 against https://github.com/Heymdall/vcard.git#1eb59e9b4406a3253bbb9295a1da776d22cdfe3a
bower underscore#^1.8.3                                        cached https://github.com/jashkenas/underscore.git#1.8.3
bower underscore#^1.8.3                                      validate 1.8.3 against https://github.com/jashkenas/underscore.git#^1.8.3
bower jquery-timepicker#883bb2cd94                             cached https://github.com/fgelinas/timepicker.git#883bb2cd94
bower jquery-timepicker#883bb2cd94                           validate 883bb2cd94 against https://github.com/fgelinas/timepicker.git#883bb2cd94
bower angular-sanitize#1.5.8                                   cached https://github.com/angular/bower-angular-sanitize.git#1.5.8
bower angular-sanitize#1.5.8                                 validate 1.5.8 against https://github.com/angular/bower-angular-sanitize.git#1.5.8
bower angular-uuid4#0.3.1                                      cached https://github.com/monicao/angular-uuid4.git#0.3.1
bower angular-uuid4#0.3.1                                    validate 0.3.1 against https://github.com/monicao/angular-uuid4.git#0.3.1
bower angular#1.5.8                                            cached https://github.com/angular/bower-angular.git#1.5.8
bower angular#1.5.8                                          validate 1.5.8 against https://github.com/angular/bower-angular.git#1.5.8
bower angular-bootstrap#1.1.2                                  cached https://github.com/angular-ui/bootstrap-bower.git#1.1.2
bower angular-bootstrap#1.1.2                                validate 1.1.2 against https://github.com/angular-ui/bootstrap-bower.git#1.1.2
bower angular-mocks#1.5.8                                      cached https://github.com/angular/bower-angular-mocks.git#1.5.8
bower angular-mocks#1.5.8                                    validate 1.5.8 against https://github.com/angular/bower-angular-mocks.git#1.5.8
bower angular-cache#4.6.0                                      cached https://github.com/jmdobry/angular-cache.git#4.6.0
bower angular-cache#4.6.0                                    validate 4.6.0 against https://github.com/jmdobry/angular-cache.git#4.6.0
bower angular-route#1.5.8                                      cached https://github.com/angular/bower-angular-route.git#1.5.8
bower angular-route#1.5.8                                    validate 1.5.8 against https://github.com/angular/bower-angular-route.git#1.5.8
bower jquery-timepicker#883bb2cd94                          short-sha Consider using longer commit SHA to avoid conflicts

> [email protected] build /home/jan/nextcloud/apps/contacts
> node node_modules/gulp-cli/bin/gulp.js

[17:27:25] Using gulpfile ~/nextcloud/apps/contacts/gulpfile.js
[17:27:25] Starting 'eslint'...
[17:27:28] 
/home/jan/nextcloud/apps/contacts/js/components/addressBook/addressBook_controller.js
  10:4   error  'a' is not defined  no-undef
  11:4   error  'b' is not defined  no-undef
  12:14  error  'a' is not defined  no-undef
  12:26  error  'b' is not defined  no-undef
  13:16  error  Missing semicolon   semi
  16:17  error  Missing semicolon   semi

/home/jan/nextcloud/apps/contacts/js/services/contact_service.js
   40:10  warning  Unexpected console statement        no-console
  111:21  warning  'e' is defined but never used       no-unused-vars
  132:46  warning  Don't make functions within a loop  no-loop-func

βœ– 9 problems (6 errors, 3 warnings)

[17:27:28] 'eslint' errored after 3.17 s
[17:27:28] ESLintError in plugin 'gulp-eslint'
Message:
    Failed with 6 errors

npm ERR! Linux 4.4.0-47-generic
npm ERR! argv "/usr/bin/nodejs" "/usr/bin/npm" "run" "build"
npm ERR! node v6.9.1
npm ERR! npm  v3.10.8
npm ERR! code ELIFECYCLE
npm ERR! [email protected] build: `node node_modules/gulp-cli/bin/gulp.js`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the [email protected] build script 'node node_modules/gulp-cli/bin/gulp.js'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the contacts package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     node node_modules/gulp-cli/bin/gulp.js
npm ERR! You can get information on how to open an issue for this project with:
npm ERR!     npm bugs contacts
npm ERR! Or if that isn't available, you can get their info via:
npm ERR!     npm owner ls contacts
npm ERR! There is likely additional logging output above.

npm ERR! Please include the following file with any support request:
npm ERR!     /home/jan/nextcloud/apps/contacts/npm-debug.log
Makefile:91 : la recette pour la cible « npm » a échouée
make[1]: *** [npm] Erreur 1
make[1] : on quitte le répertoire « /home/jan/nextcloud/apps/contacts »
Makefile:63 : la recette pour la cible « build » a échouée
make: *** [build] Erreur 2

cc @nextcloud/contacts

Contacts app doesn't show anything after Upgrade to NC 11.0

Since you state "migration issues belong in the server repo", but also ask for "Updated from an older Nextcloud or fresh install", I'm unsure if this should be here or in server. Please point me there if you feel it should be elsewhere.

I upgraded three NC installations from 10.0.2 to 11.0 and all went smooth. In two of them, all apps work flawless, in one the calendar app no longer works at all: It no longer shows any contacts in the web interface (idles, see screenshot), and clients (DAVdroid, CardDAV) show error "not found".

contacts

Any hint appreciated on how to recover from this (preferrably without loosing contact data), or how to reset.

These seem to be a similar issues:

Notes:

  • In the problematic installation, I use a user name that does not contain spaces (but a dot).
  • In one of the working installations, I use a username containing a space character but in that account, all contacts work fine.
  • Contacts in both installations contain pictures.

System parameters

OS: debian stable, Web server: apache2, Database: MySQL 5.5, PHP 5.6, Nextcloud 11.0.0.10, Contacts: 1.5.2, UPDATED FROM 10.0.0.2, Signing: No errors in Admin check, /settings/integrity/failed yields "No errors have been found.", NOT using external storage, encryption or external user-backend.

List of activated apps:
Enabled:

  • activity: 2.4.1
  • announcementcenter: 3.0.0
  • apporder: 0.3.3
  • bookmarks: 0.9.1
  • calendar: 1.4.1
  • comments: 1.1.0
  • contacts: 1.5.2
  • dav: 1.1.1
  • direct_menu: 0.9.3
  • federatedfilesharing: 1.1.1
  • federation: 1.1.1
  • files: 1.6.1
  • files_pdfviewer: 1.0.1
  • files_sharing: 1.1.1
  • files_texteditor: 2.2
  • files_trashbin: 1.1.0
  • files_versions: 1.4.0
  • files_videoplayer: 1.0.0
  • gallery: 16.0.0
  • keeweb: 0.3.0
  • logreader: 2.0.0
  • lookup_server_connector: 1.0.0
  • mail: 0.6.2
  • nextcloud_announcements: 1.0
  • notifications: 1.0.1
  • ownbackup: 16.11.0
  • ownpad: 0.5.7
  • password_policy: 1.1.0
  • provisioning_api: 1.1.0
  • serverinfo: 1.1.1
  • sharebymail: 1.0.1
  • systemtags: 1.1.3
  • tasks: 0.9.4
  • templateeditor: 0.2
  • theming: 1.1.1
  • twofactor_backupcodes: 1.0.0
  • twofactor_totp: 0.5.0
  • twofactor_u2f: 0.1.0
  • updatenotification: 1.1.1
  • workflowengine: 1.1.1

Disabled:

  • admin_audit
  • audioplayer
  • encryption
  • external
  • files_accesscontrol
  • files_automatedtagging
  • files_external
  • files_retention
  • firstrunwizard
  • richdocuments
  • spreed
  • spreedme
  • survey_client
  • user_external
  • user_ldap
  • user_saml

The content of config/config.php:
{
"system": {
"instanceid": "",
"trashbin_retention_obligation": "auto,90",
"versions_retention_obligation": "90,auto",
"memcache.local": "\OC\Memcache\APCu",
"memcache.locking": "\OC\Memcache\Redis",
"filelocking.enabled": "true",
"redis": {
"host": "localhost",
"port": 6379,
"timeout": 0
},
"passwordsalt": "REMOVED SENSITIVE VALUE",
"secret": "REMOVED SENSITIVE VALUE",
"trusted_domains": [
""
],
"datadirectory": "/",
"overwrite.cli.url": "https:///cloud",
"dbtype": "mysql",
"version": "11.0.0.10",
"dbname": "",
"dbhost": "localhost",
"dbport": "",
"dbtableprefix": "oc_",
"dbuser": "REMOVED SENSITIVE VALUE",
"dbpassword": "REMOVED SENSITIVE VALUE",
"logtimezone": "Europe/Berlin",
"installed": true,
"mail_from_address": "",
"mail_smtpmode": "php",
"mail_domain": "",
"defaultapp": "calendar",
"maintenance": false,
"loglevel": 2,
"theme": "",
"updater.release.channel": "stable"
}
}

Client configuration

Browser: Firefox 50, OS: ApricityOS, CardDAV-clients: DAVdroid, CardDAV.

Logs

Web server error log

- [25/Dec/2016:00:44:29 +0100] "PROPFIND /cloud/remote.php/webdav/ HTTP/1.1" 207 2231 "-" "Mozilla/5.0 (Linux) mirall/2.2.4"
- - [25/Dec/2016:00:44:34 +0100] "GET /cloud/ocs/v2.php/apps/notifications/api/v2/notifications HTTP/1.1" 200 913 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:50.0) Gecko/20100101 Firefox/50.0"

Nextcloud log (data/nextcloud.log)

{"reqId":"","remoteAddr":"","app":"core","message":"Login failed: '' (Remote IP: '')","level":2,"time":"2016-12-25T01:25:59+01:00","method":"PROPFIND","url":"/cloud/remote.php/webdav/","user":"--","version":"11.0.0.10"}
{"reqId":"","remoteAddr":"","app":"core","message":"Login failed: '' (Remote IP: '')","level":2,"time":"2016-12-25T01:25:59+01:00","method":"GET","url":"/cloud/ocs/v2.php/apps/notifications/api/v1/notifications?format=json","user":"--","version":"11.0.0.10"}

Browser JS log

Sending message that cannot be cloned. Are you trying to send an XPCOM object? MessageChannel.jsm:504:4
JQMIGRATE: Migrate is installed, version 1.4.0 jquery-migrate.min.js:2:542
Sending message that cannot be cloned. Are you trying to send an XPCOM object? MessageChannel.jsm:504:4

Contact app should handle field labels correctly also if written in lowercase

Expected behavior

The Contacts app should handle phone number or email labels correctly, independently if they're stored in one or multiple lines or written in lowercase.

Current behavior

The Contacts app doesn't handle phone number or email labels correctly if they're stored in one or multiple lines or written in lowercase. Instead strange labels will be displayed in a contact record.
Additionally it is not possible to correct these records using the web GUI. The field label will be kept unchanged. If you export a contact record to vcf-file, manually delete the X-ABLABEL field and reimport the vcf-file the field labels can be edited again using the web GUI.

Example:

20161225_nc_home_prefs
20161225_nc_cell_prefs

3V1RRX.TEL;TYPE=HOME\,VOICE:+49Β 2222Β 3333333
3V1RRX.X-ABLABEL:home\,pref

IX9FXH.TEL;TYPE=CELL:+49 2222 3333333
IX9FXH.X-ABLABEL:cell\,pref

KX0S98.TEL:+49 2222 3333333
KX0S98.X-ABLABEL:work,pref

Steps to reproduce

  1. Import a vcf file which contains the mentioned syntax.
  2. Try to change the field labels using the web GUI.

Environment

Server Configuration

OS: Linux 3.2.82
Web server: Apache2 2.4.25
Database: MariaDB 5.5.53
PHP version: 5.6.23
Nextcloud version: 10.0.2
Contacts app: 1.5.2

Client Configuration

Browser: Mozilla Firefox 50.1.0
Operating system: Windows 7

Update: Contacts and Groups not showing in one user account after update to 11.0.0 (Contacts 1.5.2)

UPDATE: Not that same as #53 -> this issue refers to Contacts 1.5.2

Steps to reproduce

  1. login with user that has the "not showing contact" issue
  2. click contacts
  3. list of people does not load (spinning circle
  4. none of the other user on my server has issues

Expected behaviour

List of people should show

Actual behaviour

list of people not showing, hour glass

Server configuration

Operating system:
Linux ... 3.16.0-4-amd64 #1 SMP Debian 3.16.36-1+deb8u2 (2016-10-19) x86_64 GNU/Linux

Web server:
Server version: Apache/2.4.23 (Debian)
Server built: 2016-11-19T23:33:13

Database:
mysql Ver 14.14 Distrib 5.5.53, for debian-linux-gnu (x86_64) using readline 6.3

PHP version:
PHP 5.6.27-0+deb8u1 (cli) (built: Oct 15 2016 15:53:28)

Nextcloud version: (see Nextcloud admin page)
11.0.0

Contacts version: (see Nextcloud apps page)
1.5.2

Updated from an older Nextcloud or fresh install:
Updated from 10.0.2

Signing status:

No errors have been found.

List of activated apps:

Enabled:
  - activity: 2.4.1
  - bookmarks: 0.9.1
  - calendar: 1.4.1
  - comments: 1.1.0
  - contacts: 1.5.2
  - dav: 1.1.1
  - external: 1.2
  - federatedfilesharing: 1.1.1
  - federation: 1.1.1
  - files: 1.6.1
  - files_external: 1.1.2
  - files_pdfviewer: 1.0.1
  - files_sharing: 1.1.1
  - files_texteditor: 2.2
  - files_trashbin: 1.1.0
  - files_versions: 1.4.0
  - files_videoplayer: 1.0.0
  - firstrunwizard: 2.0
  - gallery: 16.0.0
  - logreader: 2.0.0
  - lookup_server_connector: 1.0.0
  - mail: 0.6.2
  - nextcloud_announcements: 1.0
  - notifications: 1.0.1
  - password_policy: 1.1.0
  - provisioning_api: 1.1.0
  - serverinfo: 1.1.1
  - sharebymail: 1.0.1
  - survey_client: 0.1.5
  - systemtags: 1.1.3
  - templateeditor: 0.2
  - theming: 1.1.1
  - twofactor_backupcodes: 1.0.0
  - updatenotification: 1.1.1
  - workflowengine: 1.1.1
Disabled:
  - admin_audit
  - encryption
  - files_accesscontrol
  - files_automatedtagging
  - files_retention
  - user_external
  - user_ldap
  - user_saml

The content of config/config.php:

{
    "system": {
        "passwordsalt": "***REMOVED SENSITIVE VALUE***",
        "datadirectory": "***REMOVED SENSITIVE VALUE***",
        "dbtype": "mysql",
        "version": "11.0.0.10",
        "dbname": "owncloud",
        "dbhost": "localhost",
        "dbtableprefix": "oc_",
        "dbuser": "***REMOVED SENSITIVE VALUE***",
        "dbpassword": "***REMOVED SENSITIVE VALUE***",
        "installed": true,
        "instanceid": "***REMOVED SENSITIVE VALUE***",
        "loglevel": 3,
        "logtimezone": "***REMOVED SENSITIVE VALUE***",
        "mail_smtpmode": "smtp",
        "mail_smtphost": "***REMOVED SENSITIVE VALUE***",
        "mail_smtpport": "***REMOVED SENSITIVE VALUE***",
        "mail_smtpsecure": "***REMOVED SENSITIVE VALUE***",
        "mail_smtpauth": 1,
        "mail_smtpauthtype": "LOGIN",
        "mail_smtpname": "***REMOVED SENSITIVE VALUE***",
        "mail_smtppassword": "***REMOVED SENSITIVE VALUE***",
        "overwritehost": "",
        "maintenance": false,
        "maxZipInputSize": 838860800,
        "allowZipDownload": true,
        "theme": "",
        "trusted_domains": [
            "***REMOVED SENSITIVE VALUE***",
            "***REMOVED SENSITIVE VALUE***",
            "***REMOVED SENSITIVE VALUE***",
            "***REMOVED SENSITIVE VALUE***",
        ],
        "forcessl": true,
        "secret": "***REMOVED SENSITIVE VALUE***",
        "preview_max_scale_factor": 1,
        "enabledPreviewProviders": [
            "OC\\Preview\\Image",
            "OC\\Preview\\Illustrator",
            "OC\\Preview\\Postscript",
            "OC\\Preview\\Photoshop",
            "OC\\Preview\\TIFF"
        ],
        "mail_domain": "***REMOVED SENSITIVE VALUE***",
        "mail_from_address": "***REMOVED SENSITIVE VALUE***",
        "trashbin_retention_obligation": "auto",
        "memcache.local": "\\OC\\Memcache\\Redis",
        "filelocking.enabled": "true",
        "memcache.locking": "\\OC\\Memcache\\Redis",
        "redis": {
            "host": "***REMOVED SENSITIVE VALUE***",
            "port": "***REMOVED SENSITIVE VALUE***",
            "timeout": 0,
            "password": "***REMOVED SENSITIVE VALUE***"
        },
        "appstore.experimental.enabled": false,
        "updater.secret": "***REMOVED SENSITIVE VALUE***",
        "singleuser": false
    }
}

Are you using external storage, if yes which one: local/smb/sftp/...
yes, local

Are you using encryption: yes/no
no

Are you using an external user-backend, if yes which one: LDAP/ActiveDirectory/Webdav/...
no

Client configuration

Browser:
firefox 50.0.x

Operating system:
Win7

CardDAV-clients:
N/A

Logs

Web server error log

Fatal	webdav	Sabre\VObject\ParseException: Unsupported CHARSET: utf-8

    /var/www/nextcloud/3rdparty/sabre/vobject/lib/Parser/MimeDir.php - line 234: Sabre\VObject\Parser\MimeDir->readProperty('X-MS-OL-DESIGN;...')
    /var/www/nextcloud/3rdparty/sabre/vobject/lib/Parser/MimeDir.php - line 181: Sabre\VObject\Parser\MimeDir->parseLine('X-MS-OL-DESIGN;...')
    /var/www/nextcloud/3rdparty/sabre/vobject/lib/Parser/MimeDir.php - line 89: Sabre\VObject\Parser\MimeDir->parseDocument()
    /var/www/nextcloud/3rdparty/sabre/vobject/lib/Reader.php - line 46: Sabre\VObject\Parser\MimeDir->parse('BEGIN VCARD\r\nVE...', 0)
    /var/www/nextcloud/3rdparty/sabre/dav/lib/CardDAV/Plugin.php - line 855: Sabre\VObject\Reader read('BEGIN VCARD\r\nVE...')
    /var/www/nextcloud/3rdparty/sabre/dav/lib/CardDAV/Plugin.php - line 494: Sabre\CardDAV\Plugin->convertVCard('BEGIN VCARD\r\nVE...', 'vcard3')
    /var/www/nextcloud/3rdparty/sabre/dav/lib/CardDAV/Plugin.php - line 203: Sabre\CardDAV\Plugin->addressbookQueryReport(Object(Sabre\CardDAV\Xml\Request\AddressBookQueryReport))
    [internal function] Sabre\CardDAV\Plugin->report('{urn ietf param...', Object(Sabre\CardDAV\Xml\Request\AddressBookQueryReport), 'addressbooks/us...')
    /var/www/nextcloud/3rdparty/sabre/event/lib/EventEmitterTrait.php - line 105: call_user_func_array(Array, Array)
    /var/www/nextcloud/3rdparty/sabre/dav/lib/DAV/CorePlugin.php - line 718: Sabre\Event\EventEmitter->emit('report', Array)
    [internal function] Sabre\DAV\CorePlugin->httpReport(Object(Sabre\HTTP\Request), Object(Sabre\HTTP\Response))
    /var/www/nextcloud/3rdparty/sabre/event/lib/EventEmitterTrait.php - line 105: call_user_func_array(Array, Array)
    /var/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php - line 479: Sabre\Event\EventEmitter->emit('method REPORT', Array)
    /var/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php - line 254: Sabre\DAV\Server->invokeMethod(Object(Sabre\HTTP\Request), Object(Sabre\HTTP\Response))
    /var/www/nextcloud/apps/dav/lib/Server.php - line 227: Sabre\DAV\Server->exec()
    /var/www/nextcloud/apps/dav/appinfo/v2/remote.php - line 30: OCA\DAV\Server->exec()
    /var/www/nextcloud/remote.php - line 165: require_once('/var/www/nextcl...')
    {main}

Nextcloud log (data/nextcloud.log)

{"reqId":"8Akay+nHCkBr\/RFl4Rj5","remoteAddr":"***REMOVED SENSITIVE VALUE***","app":"webdav","message":"Exception: {\"Message\":\"Unsupported CHARSET: utf-8\",\"Exception\":\"Sabre\\\\VObject\\\\ParseException\",\"Code\":0,\"Trace\":\"#0 \\\/var\\\/www\\\/nextcloud\\\/3rdparty\\\/sabre\\\/vobject\\\/lib\\\/Parser\\\/MimeDir.php(234): Sabre\\\\VObject\\\\Parser\\\\MimeDir->readProperty('X-MS-OL-DESIGN;...')\\n#1 \\\/var\\\/www\\\/nextcloud\\\/3rdparty\\\/sabre\\\/vobject\\\/lib\\\/Parser\\\/MimeDir.php(181): Sabre\\\\VObject\\\\Parser\\\\MimeDir->parseLine('X-MS-OL-DESIGN;...')\\n#2 \\\/var\\\/www\\\/nextcloud\\\/3rdparty\\\/sabre\\\/vobject\\\/lib\\\/Parser\\\/MimeDir.php(89): Sabre\\\\VObject\\\\Parser\\\\MimeDir->parseDocument()\\n#3 \\\/var\\\/www\\\/nextcloud\\\/3rdparty\\\/sabre\\\/vobject\\\/lib\\\/Reader.php(46): Sabre\\\\VObject\\\\Parser\\\\MimeDir->parse('BEGIN:VCARD\\\\r\\\\nVE...', 0)\\n#4 \\\/var\\\/www\\\/nextcloud\\\/3rdparty\\\/sabre\\\/dav\\\/lib\\\/CardDAV\\\/Plugin.php(855): Sabre\\\\VObject\\\\Reader::read('BEGIN:VCARD\\\\r\\\\nVE...')\\n#5 \\\/var\\\/www\\\/nextcloud\\\/3rdparty\\\/sabre\\\/dav\\\/lib\\\/CardDAV\\\/Plugin.php(494): Sabre\\\\CardDAV\\\\Plugin->convertVCard('BEGIN:VCARD\\\\r\\\\nVE...', 'vcard3')\\n#6 \\\/var\\\/www\\\/nextcloud\\\/3rdparty\\\/sabre\\\/dav\\\/lib\\\/CardDAV\\\/Plugin.php(203): Sabre\\\\CardDAV\\\\Plugin->addressbookQueryReport(Object(Sabre\\\\CardDAV\\\\Xml\\\\Request\\\\AddressBookQueryReport))\\n#7 [internal function]: Sabre\\\\CardDAV\\\\Plugin->report('{urn:ietf:param...', Object(Sabre\\\\CardDAV\\\\Xml\\\\Request\\\\AddressBookQueryReport), 'addressbooks\\\/us...')\\n#8 \\\/var\\\/www\\\/nextcloud\\\/3rdparty\\\/sabre\\\/event\\\/lib\\\/EventEmitterTrait.php(105): call_user_func_array(Array, Array)\\n#9 \\\/var\\\/www\\\/nextcloud\\\/3rdparty\\\/sabre\\\/dav\\\/lib\\\/DAV\\\/CorePlugin.php(718): Sabre\\\\Event\\\\EventEmitter->emit('report', Array)\\n#10 [internal function]: Sabre\\\\DAV\\\\CorePlugin->httpReport(Object(Sabre\\\\HTTP\\\\Request), Object(Sabre\\\\HTTP\\\\Response))\\n#11 \\\/var\\\/www\\\/nextcloud\\\/3rdparty\\\/sabre\\\/event\\\/lib\\\/EventEmitterTrait.php(105): call_user_func_array(Array, Array)\\n#12 \\\/var\\\/www\\\/nextcloud\\\/3rdparty\\\/sabre\\\/dav\\\/lib\\\/DAV\\\/Server.php(479): Sabre\\\\Event\\\\EventEmitter->emit('method:REPORT', Array)\\n#13 \\\/var\\\/www\\\/nextcloud\\\/3rdparty\\\/sabre\\\/dav\\\/lib\\\/DAV\\\/Server.php(254): Sabre\\\\DAV\\\\Server->invokeMethod(Object(Sabre\\\\HTTP\\\\Request), Object(Sabre\\\\HTTP\\\\Response))\\n#14 \\\/var\\\/www\\\/nextcloud\\\/apps\\\/dav\\\/lib\\\/Server.php(227): Sabre\\\\DAV\\\\Server->exec()\\n#15 \\\/var\\\/www\\\/nextcloud\\\/apps\\\/dav\\\/appinfo\\\/v2\\\/remote.php(30): OCA\\\\DAV\\\\Server->exec()\\n#16 \\\/var\\\/www\\\/nextcloud\\\/remote.php(165): require_once('\\\/var\\\/www\\\/nextcl...')\\n#17 {main}\",\"File\":\"\\\/var\\\/www\\\/nextcloud\\\/3rdparty\\\/sabre\\\/vobject\\\/lib\\\/Parser\\\/MimeDir.php\",\"Line\":477,\"User\":\""***REMOVED SENSITIVE VALUE***"\"}","level":4,"time":"2016-12-13T17:36:57+01:00","method":"REPORT","url":"\/nextcloud\/remote.php\/dav\/addressbooks\/users\/"***REMOVED SENSITIVE VALUE***"\/contacts\/","user":"***REMOVED SENSITIVE VALUE***","version":"11.0.0.10"}

Browser log

N/A

Merge duplicate contacts

In the old contacts you were able to consolidate or merge two contact entries into one.

Example how this could work:

  • Alice is in the contact list twice
  • select both contacts for Alice
  • a β€œmerge” button appears
  • click on the β€œmerge” button
  • the two entries for Alice merge into one (if needed, user can be prompted regarding collisions)

This was particularly useful after importing contacts or syncing between several devices.

It would be great to have this option in the new contacts app as well.

As a bonus, a command to scan all your contacts for such duplicates and to consolidate them, would be awesome.


There is a $20 open bounty on this issue. Add to the bounty at Bountysource.

Ability to have custom labels

Expected behaviour

  • Be able to create custom vCardMeta (exemple: skype name, github name, etc...)
  • Be able to add custom vCardMeta options (exemple, for "tel": WORK,CELL)
  • Can be on the admin of contact app, or directly on the contact edit

Actual behaviour

  • We can only use pre-defined vCardMeta
  • We can only use pre-defined option for an new tel, email, or other

Unsupported media type vcard

Since I upgraded to nextcloud 11 beta 2 I can't sync my contacts because of this error:

Sabre\DAV\Exception\UnsupportedMediaType: HTTP/1.1 415 Validation error in vCard: REV MUST NOT appear more than once in a VCARD component

Steps to reproduce

  1. Update from NC 10 to NC 11 beta 2
  2. Install Android davdroid client and set it up
    3.try to sync

Expected behaviour

Actual behaviour

Can not sync

Server configuration

Operating system:
Ubuntu 16.04
Web server:
Apache
Database:
Mysql
PHP version:
7.0.13
Nextcloud version: (see Nextcloud admin page)

Contacts version: (see Nextcloud apps page)
1.5.2
Updated from an older Nextcloud or fresh install:
updated
Signing status:

Disabled because of modified ca-bundle.crt 

List of activated apps:

Enabled:
  - activity: 2.4.1
  - admin_audit: 1.1.0
  - bookmarks: 0.9.0
  - calendar: 1.4.1
  - comments: 1.1.0
  - contacts: 1.5.2
  - dav: 1.1.1
  - direct_menu: 0.9.3
  - federatedfilesharing: 1.1.1
  - federation: 1.1.1
  - files: 1.6.1
  - files_accesscontrol: 1.1.2
  - files_external: 1.1.2
  - files_pdfviewer: 1.0.1
  - files_sharing: 1.1.1
  - files_trashbin: 1.1.0
  - files_versions: 1.4.0
  - files_videoplayer: 1.0.0
  - firstrunwizard: 2.0
  - gallery: 16.0.0
  - logreader: 1.3.1
  - lookup_server_connector: 1.0.0
  - news: 10.0.0
  - nextcloud_announcements: 1.0
  - notes: 2.0.2
  - notifications: 1.0.1
  - ocdownloader: 1.5
  - password_policy: 1.1.0
  - passwords: 19
  - provisioning_api: 1.1.0
  - rainloop: true
  - richdocuments: 1.1.14
  - serverinfo: 1.1.1
  - sharebymail: 1.0.0
  - survey_client: 0.1.5
  - systemtags: 1.1.3
  - tasks: 0.9.3
  - theming: 1.1.1
  - twofactor_backupcodes: 1.0.0
  - updatenotification: 1.1.1
  - weather: 1.3.3
  - workflowengine: 1.1.1
Disabled:
  - encryption
  - external
  - fbsync
  - files_automatedtagging
  - files_retention
  - files_texteditor
  - mail
  - music
  - templateeditor
  - user_external
  - user_ldap
  - user_saml

The content of config/config.php:

{
    "system": {
        "instanceid": "oc5ly9kwuaz5",
        "passwordsalt": "***REMOVED SENSITIVE VALUE***",
        "secret": "***REMOVED SENSITIVE VALUE***",
        "trusted_domains": [
            "cloud.land-laeufer.de"
        ],
        "datadirectory": "\/var\/www\/vhosts\/land-laeufer.de\/cloud.land-laeufer.de\/data",
        "overwrite.cli.url": "https:\/\/cloud.land-laeufer.de",
        "dbtype": "mysql",
        "version": "11.0.0.5",
        "dbname": "nextcloud",
        "dbhost": "localhost",
        "dbport": "",
        "dbtableprefix": "oc_",
        "dbuser": "***REMOVED SENSITIVE VALUE***",
        "dbpassword": "***REMOVED SENSITIVE VALUE***",
        "logtimezone": "Europe\/Berlin",
        "installed": true,
        "maintenance": false,
        "filelocking.enabled": "true",
        "memcache.locking": "\\OC\\Memcache\\Redis",
        "memcache.local": "\\OC\\Memcache\\APCu",
        "file locking. enabled": "true",
        "redis": {
            "host": "localhost",
            "port": 6379
        },
        "loglevel": 3,
        "appstore.experimental.enabled": true,
        "updater.release.channel": "daily",
        "mail_domain": "land-laeufer.de",
        "mail_smtpmode": "php",
        "mail_from_address": "nextcloud",
        "theme": "",
        "integrity.check.disabled": true
    }
}

Are you using external storage, if yes which one: local/smb/sftp/...
No
Are you using encryption: yes/no.
No

Client configuration

Browser:
Chrome Browser
Operating system:
Ubuntu 16.04
CardDAV-clients:
Davdroid Android

Logs

Web server error log

Insert your webserver log here

Nextcloud log (data/nextcloud.log)

Sabre\DAV\Exception\UnsupportedMediaType: HTTP/1.1 415 Validation error in vCard: REV MUST NOT appear more than once in a VCARD component

davdroid Android og

SYNCHRONIZATION INFO
Synchronization phase: 4
Account name: [email protected]
Authority: com.android.contacts

HTTP REQUEST:
PUT /remote.php/dav/addressbooks/users/lars/Kontakte%20Telefon/e3c28fd9-2291-45fa-a4ec-8fabfe7607af.vcf
If-Match: "51ee05ba3c014f132cb390cad2c41770"

BEGIN:VCARD[CR][LF]
VERSION:4.0[CR][LF]
PRODID:+//IDN bitfire.at//DAVdroid/1.3.4.1-gplay vcard4android ez-vcard/0.1[CR][LF]
 0.0[CR][LF]
REV;VALUE=timestamp:2016-11-20T12:16:49.095Z[CR][LF]
davdroid1.X-ABLabel:Internet[CR][LF]
davdroid2.X-ABLabel:PROFILE[CR][LF]
UID:e3c28fd9-2291-45fa-a4ec-8fabfe7607af[CR][LF]
FN:Anja Krah[CR][LF]
N:Krah;Anja;;;[CR][LF]
TEL;TYPE=cell:01732387670[CR][LF]
davdroid1.EMAIL;TYPE=x-internet:[email protected][CR][LF]
davdroid2.URL;TYPE=X-PROFILE:http://www.google.com/xda /104183916085464[CR][LF]
 189577[CR][LF]
BDAY:19780705[CR][LF]
PHOTO:data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcGBQgHBw[CR][LF]
 [LF]
[some entry's more but removed]] 
 CiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooA//9k=[CR][LF]
REV:20161202T045318Z[CR][LF]
END:VCARD[CR][LF]


HTTP RESPONSE:
h2 415 
cache-control: no-store, no-cache, must-revalidate
content-security-policy: default-src 'none';
content-type: application/xml; charset=utf-8
date: Fri, 02 Dec 2016 04:53:56 GMT
expires: Thu, 19 Nov 1981 08:52:00 GMT
ms-author-via: DAV
pragma: no-cache
server: nginx
set-cookie: nc_username=deleted; expires=Thu, 01-Jan-1970 00:00:01 GMT; Max-Age=0; secure; HttpOnly
set-cookie: nc_token=deleted; expires=Thu, 01-Jan-1970 00:00:01 GMT; Max-Age=0; secure; HttpOnly
set-cookie: nc_session_id=deleted; expires=Thu, 01-Jan-1970 00:00:01 GMT; Max-Age=0; secure; HttpOnly
set-cookie: nc_username=deleted; expires=Thu, 01-Jan-1970 00:00:01 GMT; Max-Age=0; path=/; secure; HttpOnly
set-cookie: nc_token=deleted; expires=Thu, 01-Jan-1970 00:00:01 GMT; Max-Age=0; path=/; secure; HttpOnly
set-cookie: nc_session_id=deleted; expires=Thu, 01-Jan-1970 00:00:01 GMT; Max-Age=0; path=/; secure; HttpOnly
set-cookie: oc5ly9kwuaz5=cpekvjtm3i27acahd4b2a4eqg1; path=/; secure; HttpOnly
x-content-type-options: nosniff
x-download-options: noopen
x-frame-options: SAMEORIGIN
x-permitted-cross-domain-policies: none
x-powered-by: PHP/7.0.13
x-powered-by: PleskLin
x-robots-tag: none
x-xss-protection: 1; mode=block

<?xml version="1.0" encoding="utf-8"?>[LF]
<d:error xmlns:d="DAV:" xmlns:s="http://sabredav.org/ns">[LF]
  <s:exception>Sabre\DAV\Exception\UnsupportedMediaType</s:exception>[LF]
  <s:message>Validation error in vCard: REV MUST NOT appear more than once in a VCARD component</s:message>[LF]
</d:error>[LF]


EXCEPTION:
at.bitfire.dav4android.exception.HttpException: 415 
	at at.bitfire.dav4android.DavResource.checkStatus(DavResource.java:318)
	at at.bitfire.dav4android.DavResource.checkStatus(DavResource.java:291)
	at at.bitfire.dav4android.DavResource.put(DavResource.java:202)
	at at.bitfire.davdroid.syncadapter.SyncManager.uploadDirty(SyncManager.java:317)
	at at.bitfire.davdroid.syncadapter.SyncManager.performSync(SyncManager.java:147)
	at at.bitfire.davdroid.syncadapter.ContactsSyncAdapterService$ContactsSyncAdapter.sync(ContactsSyncAdapterService.java:64)
	at at.bitfire.davdroid.syncadapter.SyncAdapterService$SyncAdapter.onPerformSync(SyncAdapterService.java:85)
	at android.content.AbstractThreadedSyncAdapter$SyncThread.run(AbstractThreadedSyncAdapter.java)

SOFTWARE INFORMATION
Package: at.bitfire.davdroid
Version: 1.3.4.1-gplay (129) Mon Nov 14 19:39:42 GMT+01:00 2016
Installed from: com.google.android.feedback
JB Workaround installed: no

CONFIGURATION
System-wide synchronization: automatically
Account: [email protected]
  Address book sync. interval: 240 min
  Calendar     sync. interval: 240 min
  OpenTasks    sync. interval: 240 min
  WiFi only: false
  [CardDAV] Contact group method: CATEGORIES
  [CalDAV] Time range (past days): 90
           Manage calendar colors: true

SQLITE DUMP
android_metadata
	|  locale |
	|  de_DE |
----------
settings
	|  setting | value |
----------
services
	|  _id | accountName | service | principal |
	|  5 | [email protected] | carddav | https://cloud.domain. de/remote.php/dav/principals/users/lars/ |
	|  6 | [email protected] | caldav | https://cloud.domain.de/remote.php/dav/principals/users/lars/ |
----------
sqlite_sequence
	|  name | seq |
	|  services | 6 |
	|  homesets | 9 |
	|  collections | 33 |
----------
homesets
	|  _id | serviceID | url |
	|  8 | 6 | https://cloud.domain.de/remote.php/dav/calendars/lars/ |
	|  9 | 5 | https://cloud.domain.de/remote.php/dav/addressbooks/users/lars/ |
----------
collections
	|  _id | serviceID | url | readOnly | displayName | description | color | timezone | supportsVEVENT | supportsVTODO | sync |
	|  26 | 6 | https://://cloud.domain.de/remote.php/dav/calendars/lars/contact_birthdays/ | 1 | Geburtstage von Kontakten | <null> | -54 | <null> | 1 | 0 | 0 |
	|  27 | 6 | https://cloud.domain.de/remote.php/dav/calendars/lars/ist-stunden-arbeit/ | 0 | Ist-stunden Arbeit | <null> | -9115694 | <null> | 1 | 1 | 1 |
	|  28 | 6 | https://cloud.domain.de/remote.php/dav/calendars/lars/muell/ | 0 | Muell | <null> | -9139225 | <null> | 1 | 1 | 1 |
	|  29 | 6 | https://cloud.domain.de/remote.php/dav/calendars/lars/veranstaltungen/ | 0 | Veranstaltungen | <null> | -9122585 | <null> | 1 | 1 | 1 |
	|  30 | 6 | https://cloud.domain.de/remote.php/dav/calendars/lars/arbeit/ | 0 | Arbeit | <null> | -1605516 | <null> | 1 | 1 | 1 |
	|  31 | 6 | https://cloud.domain.de/remote.php/dav/calendars/lars/priavtes/ | 0 | Privates | <null> | -8853644 | <null> | 1 | 1 | 1 |
	|  32 | 6 | https://cloud.domain.de/remote.php/dav/calendars/lars/arbeit-anja/ | 0 | Arbeit anja | <null> | -9139225 | <null> | 1 | 1 | 1 |
	|  33 | 5 | https://cloud.cloud.domain.de/remote.php/dav/addressbooks/users/lars/Kontakte%20Telefon/ | 0 | Kontakte Telefon | <null> | <null> | <null> | <null> | <null> | 1 |
----------

SYSTEM INFORMATION
Android version: 6.0.1 (23.5.A.1.291)
Device: Sony D6603 (D6603)


Default contanct name should be selected after creating new contact

Steps to reproduce

  1. Create a new contact via web ui

Expected behaviour

The default contact name ("Neuer Kontakt" in German) should be selected, so the user can type her contacts name by overwriting the default contact name.

Actual behaviour

The cursor is placed behind the default contact name. This way when the user starts typing, the contact name will be appended to the default one.

Server configuration

Operating system: ?

Web server: ?

Database: mysql 5.1.73

PHP version: 7.0.13

Nextcloud version: 11.0 beta 2

Contacts version: 1.5.2

Updated from an older Nextcloud or fresh install: fresh install

Signing status:

No errors have been found.

Are you using an external user-backend, if yes which one: no

Client configuration

Browser: Firefox 50.0.2 and Chrome 54.0.2840.99 m (64-bit)

Operating system: Windows 10

Problems while import vcards

I had the following problems:

  1. comma where replaced with , -> I removed the replace command in vcard.js
  2. several problems with tel types while import vcard v2.1
  3. several problems with quoted-printable values while import vcard v2.1

To avoid 2. and 3. I converted all vcards to v3.0 with a little sed-script.

Address book data lost when any user receiving a share is deleted

Steps to reproduce

  1. Create user1 with an address book shared to group1
  2. Create user2 of group1 to view the address book
  3. Delete user2

Expected behaviour

User2 gets deleted but the shared address book of user1 remains intact.

Actual behaviour

The shared address book of user1 gets deleted. The tables oc_addressbooks and oc_cards are wiped of all information regarding this address book. If the given address book is the only one of user1, the "infinite loading bug" as described in #58 appears.

Server configuration

Operating system: ?

Web server: ?

Database: mysql 5.1.73

PHP version: 7.0.13

Nextcloud version: 11.0.0 (stable)

Contacts version: 1.5.2

Updated from an older Nextcloud or fresh install: fresh install

Signing status:

No errors have been found.

Are you using an external user-backend, if yes which one: no

Client configuration

Browser: Firefox 50.0.2 and Chrome 54.0.2840.99 m (64-bit)

Operating system: Windows 10

Possibility to sort by last name

Especially in a business use case, contacts are often sorted by last name.

Since this is a setting you are likely to set once and forget, it is fitting for the bottom left settings area. As a dropdown like so:

Sort by [First name β–Ύ]

Default to Β»First nameΒ«, with option for Β»Last nameΒ«.

cc @nextcloud/contacts @Bebef @palegrand

(@irgendwie do you consider this a starter issue maybe? :)

Contacts app should create human readable vcf-file names when exporting a contact record.

Expected behavior

The Contacts app should create a human readable vcf-file name when exporting a contact record.
E.g. if the full name of a contact is Tom Johnes the vcf-file name should be tom_johnes.vcf and not 6d9b3192-4eb4-4f6b-81d8-971ddcb6b28f.vcf.

Current behavior

The Contacts app uses the UID of a record to create the file name of the vcf-file, like 6d9b3192-4eb4-4f6b-81d8-971ddcb6b28f.vcf.

Steps to reproduce

  1. Open the Contacts app and export a contact record.
  2. Check-out the default vcf-file name.

Environment

Server Configuration

OS: Linux 3.2.82
Web server: Apache2 2.4.25
Database: MariaDB 5.5.53
PHP version: 5.6.23
Nextcloud version: 10.0.2
Contacts app: 1.5.2

Client Configuration

Browser: Mozilla Firefox 50.1.0
Operating system: Windows 7

Importing large contacts file is very heavy

What we should do:

  • Disable contact switching when importing contacts
  • Disable render of templates
  • Only show a progress with a nice animation
  • Show the first contact of the list when done

Can't view, remove, or download contact photo

User clicks on contact photo

Expected: User can view photo large, download photo, remove photo, or replace photo
With icons - down arrow, pencil, - sign, + sign

Actual: User can only change photo.

There is no obvious way to
a) delete photo (and leave contact with no photo)
b) view the photo large (often necessary or desirable)
c) download the photo (again, often desirable)

Group cannot be removed

It seems that you can only add more groups to a contact, but removing a group is not possible

Steps to reproduce

  1. Create a new contact
  2. Add contact to one (existing) group
  3. Add contact to a second (existing) group
  4. Try to remove contact from teh first group

Expected behaviour

There should be a trash bin icon next to each groupo label or any other obvious way to remove a group

Actual behaviour

The groups the contact belongs to are displayed. Clicking on a group name doesn't do anything. Clicking in the groups-field next to the contact labels brings up the drop down of all not selected groups. Clicking one of them add the group.

2016-12-30 21_54_35-kontakte - nextcloud

Server configuration

Operating system:
Raspbian

Web server:
Apache 2.4.10

Database:
MariaDB 10.0.28

PHP version:
5.6

Nextcloud version: (see Nextcloud admin page)
11.0.0.

Contacts version: (see Nextcloud apps page)
1.5.2
2016-12-30 21_54_30-apps - nextcloud

Updated from an older Nextcloud or fresh install:
Updated

Signing status:
No errors have been found.

List of activated apps:
Enabled:

  • activity: 2.4.1
  • bookmarks: 0.9.1
  • calendar: 1.4.1
  • contacts: 1.5.2
  • dav: 1.1.1
  • federatedfilesharing: 1.1.1
  • files: 1.6.1
  • files_external: 1.1.2
  • files_pdfviewer: 1.0.1
  • files_sharing: 1.1.1
  • files_texteditor: 2.2
  • files_trashbin: 1.1.0
  • files_versions: 1.4.0
  • files_videoplayer: 1.0.0
  • firstrunwizard: 2.0
  • gallery: 16.0.0
  • logreader: 2.0.0
  • lookup_server_connector: 1.0.0
  • mail: 0.6.2
  • nextcloud_announcements: 1.0
  • notifications: 1.0.1
  • password_policy: 1.1.0
  • provisioning_api: 1.1.0
  • serverinfo: 1.1.1
  • sharebymail: 1.0.1
  • survey_client: 0.1.5
  • theming: 1.1.1
  • twofactor_backupcodes: 1.0.0
  • updatenotification: 1.1.1
  • workflowengine: 1.1.1
    Disabled:
  • admin_audit
  • comments
  • encryption
  • external
  • federation
  • files_accesscontrol
  • files_automatedtagging
  • files_retention
  • systemtags
  • templateeditor
  • user_external
  • user_ldap
  • user_saml

The content of config/config.php:
{
"system": {
"instanceid": "XXXX",
"passwordsalt": "REMOVED SENSITIVE VALUE",
"secret": "REMOVED SENSITIVE VALUE",
"trusted_domains": [ XXX ],
"datadirectory": "/mnt/fancyDrive/nextcloud_data/",
"overwrite.cli.url": "XXXXX",
"dbtype": "mysql",
"version": "11.0.0.10",
"dbname": "nextcloud",
"dbhost": "localhost",
"dbport": "",
"dbtableprefix": "oc_",
"dbuser": "REMOVED SENSITIVE VALUE",
"dbpassword": "REMOVED SENSITIVE VALUE",
"logtimezone": "UTC",
"installed": true,
"memcache.local": "\OC\Memcache\APCu",
"mail_smtpmode": "smtp",
"mail_smtpsecure": "tls",
"mail_smtphost": "smtp.gmail.com",
"mail_smtpport": "587",
"mail_smtpauth": 1,
"mail_from_address": "XXXXXX",
"mail_domain": "gmail.com",
"mail_smtpauthtype": "PLAIN",
"mail_smtpname": "REMOVED SENSITIVE VALUE",
"mail_smtppassword": "REMOVED SENSITIVE VALUE",
"maintenance": false,
"appstore.experimental.enabled": true,
"loglevel": 2,
"theme": ""
}
}

Are you using external storage, if yes which one: local/smb/sftp/...
yes, local

Are you using encryption: yes/no
no

Are you using an external user-backend, if yes which one: LDAP/ActiveDirectory/Webdav/...
no

Client configuration

Browser:
Chrome 55.0.2883.87 m
or
Firefox 50.1.0

Operating system:
Windows 8.1

CardDAV-clients:
(also in use, but not showing this issue: ) Android (Davdroid)

Logs

I don't see any reason to supply logs right now. Tell me if they are necessary.

Support X-ABLabel and ITEM2.xxx properties

I copied this issue from the owncloud/contacts github issue list where it was issued by rfc2822.
I have a keen interest in this feature as well, as it would simplify creating address sticker for my mailings.
I even created the php code to create the address label already, but lack the skills to integrate them in the contacts app. but it would be very simple with the right skills to hook it up on import or address change! If one of the devs would like to do this or mentor me, that would be great.

Steps to reproduce

Create a contact with a home address. For instance, create a user "Alpha Beta" and use PO Box "1", street address "Street 2", postal code "333", city "Virtual", country "Schland" as address.
Download the VCard using CardDAV:

GET …/owncloud/remote.php/dav/addressbooks/users/test/default/bc2620f7-2ed3-4f5f-9404-b2bafd12ae16.vcf http/1.1 Accept: text/vcard;version=4.0, text/vcard;charset=utf-8;q=0.8, text/vcard;q=0.5

It will look like this:

BEGIN:VCARD
VERSION:4.0
PRODID:-//Sabre//Sabre VObject 3.5.0//EN
FN:Alpha Beta
UID:bc2620f7-2ed3-4f5f-9404-b2bafd12ae16
ADR;TYPE=HOME:1;;Street 2;Virtual;;333;Schland
END:VCARD

Note there's no LABEL in the ADR property, so that clients will generated the formatted address themselves.

When a client modifies the VCard (for instance, "street 2" is changed to "street 2a") and adds a LABEL for its representation, it will upload something like this:

PUT …
Content-Type: text/vcard;version=4.0

BEGIN:VCARD
VERSION:4.0
PRODID:+//IDN bitfire.at//DAVdroid/1.2.3-gplay vcard4android ez-vcard/0.9.1
1
UID:bc2620f7-2ed3-4f5f-9404-b2bafd12ae16
FN:Alpha Beta
N:Beta;Alpha;;;
ADR;LABEL=Street 2a^n1^nVirtual 333^nSchland;TYPE=home:1;;Street 2a;Virtual
;;333;Schland
REV:20160901T213222Z
END:VCARD

Here, the LABEL has been set (and RFC 6868 has been used for the line breaks).

Now, when you look in the OwnCloud Contacts again, everything is correct (street is "Street 2a").
However, if you then change "Street 2a" to "Street 3a", OwnCloud Contacts will update the formatted address, but not the LABEL:

BEGIN:VCARD
VERSION:4.0
PRODID:-//Sabre//Sabre VObject 3.5.0//EN
UID:bc2620f7-2ed3-4f5f-9404-b2bafd12ae16
FN:Alpha Beta
N:Beta;Alpha;;;
ADR;LABEL="Street 2a^n1^nVirtual 333^nSchland";TYPE=home:1;;Street 3a;Virtu
al;;333;Schland
REV:20160901T213222Z
END:VCARD

If you then synchronize this VCard to another client, it will be confused and show the LABEL address with the (incorrect) "Street 2a" as formatted address, but when editing the components, it will (correctly) show "Street 3a".

Expected behaviour

The LABEL parameter of the ADR property should be handled correctly. For instance, it could be dismissed when a change is done in the Web UI. However, an incorrect LABEL should never be sent.

Actual behaviour

LABEL is stored when received, and then sent without modification, even when the content of the address field has been modified in the OwnCloud Contacts app.

Required change.
the contacts app should be able to update the LABEL field when the address changes or fill it on importing an contact vcard with an empty LABEL field.

Since different countries have different address formats (some have postal code before the city, some city before the postal code, etc.) the contacts app has to be aware of the county that the address is refering to or if the country field empty default to a predefined default country. This default county can not be derived from the language; many people use a different language than the language of the country they live in. So it should be seperate setting, either in the contact app or overall in nextcloud.

Another potential challenge is that the country name in the vcard can be spelled in many differeny ways.
Detecting the destination for hte address formatting can be tricky because of this. Having the county be filled from a drop down box based on international standard country-codes might be the right solution (with a free format option for the exceptions, of course)

The address format can then be a simple lookup table from the country-code to the address format in that county.

Compatibility with Android CyanogenMod 14

I did some changes to get a compatibility with my smartphone.

  1. ..../js/public/script.js, tel options
    {id: 'HOME', name: t('contacts', 'Home')},
    {id: 'WORK', name: t('contacts', 'Work')},
    {id: 'CELL', name: t('contacts', 'Mobile')},
    {id: 'CELL,WORK', name: t('contacts', 'Mobile work')},
    {id: 'FAX', name: t('contacts', 'Fax')},
    {id: 'FAX,HOME', name: t('contacts', 'Fax home')},
    {id: 'FAX,WORK', name: t('contacts', 'Fax work')},
    {id: 'PAGER', name: t('contacts', 'Pager')},
    {id: 'VOICE', name: t('contacts', 'Voice')},
    {id: 'CAR', name: t('contacts', 'Car')},
    {id: '', name: t('contacts', 'Further')}
  2. the correspondending translations
    "Home" : "Privat",
    "Work" : "GeschΓ€ftlich",
    "Mobile" : "Handy (privat)",
    "Mobile work" : "Handy (geschΓ€ftl.)",
    "Fax" : "Fax",
    "Fax home" : "Fax (privat)",
    "Fax work" : "Fax (geschΓ€ftl.)",
    "Pager" : "Pager",
    "Voice" : "Anruf",
    "Car" : "Auto",
    "Further" : "Sonstige",

I don't know if these options are default (standard) values.

Contact groups messed up with upgrade toi 1.5.1

I upgraded the contacts app today from 1.4.0 to 1.5.1.
It seemed to have messed up my contact groups in a strange way.
Previously I had 2 groups: telephonebook and christmascard
now I have 4:
telephonebook
christmascard
telephonebook,christmascard
christmascard,telephonebook.

It seems the app is interpreting multiple Categories slightly differently.
This is likely due to escaping or not escaping the comma between the categories.

Tables aren’t (re)created when adding the Contacts app

Steps to reproduce

  1. disable Contacts app
  2. rm -r apps/contacts
  3. drop addressbooks and addressbookchanges tables
  4. re-enable Contacts app
  5. upload a vCard. (optional)

Expected behaviour

According to @enoch85, this should (re-)create the oc_addressbooks and oc_addressbookchanges tables and therefore the Contacts app should just work (with the fresh new tables).

Actual behaviour

The tables are not (re-)created and therefore the Contacts app doesn’t work.

Server configuration

Operating system:
Debian Jessie GNU/Linux

Web server:
Nginx 1.6.2-5+deb8u4

Database:
PostgreSQL 9.4+165+deb8u1

PHP version:
PHP-fpm 5.6.29+dfsg-0+deb8u1

Nextcloud version: (see Nextcloud admin page)
11.0

Contacts version: (see Nextcloud apps page)
1.5.2

Updated from an older Nextcloud or fresh install:
fresh install

Signing status:
No errors have been found.

List of activated apps:
Enabled:

  • activity: 2.4.1
  • calendar: 1.4.1
  • comments: 1.1.0
  • contacts: 1.5.2
  • dav: 1.1.1
  • federatedfilesharing: 1.1.1
  • federation: 1.1.1
  • files: 1.6.1
  • files_external: 1.1.2
  • files_markdown: 1.0.0
  • files_pdfviewer: 1.0.1
  • files_sharing: 1.1.1
  • files_texteditor: 2.2
  • files_trashbin: 1.1.0
  • files_versions: 1.4.0
  • files_videoplayer: 1.0.0
  • firstrunwizard: 2.0
  • gallery: 16.0.0
  • logreader: 2.0.0
  • lookup_server_connector: 1.0.0
  • mail: 0.6.2
  • news: 10.1.0
  • nextcloud_announcements: 1.0
  • notifications: 1.0.1
  • password_policy: 1.1.0
  • provisioning_api: 1.1.0
  • serverinfo: 1.1.1
  • sharebymail: 1.0.1
  • spreed: 1.1.2
  • survey_client: 0.1.5
  • systemtags: 1.1.3
  • theming: 1.1.1
  • twofactor_backupcodes: 1.0.0
  • updatenotification: 1.1.1
  • workflowengine: 1.1.1

The content of config/config.php:
{
"system": {
"instanceid": "oceto1l6yq0i",
"passwordsalt": "REMOVED SENSITIVE VALUE",
"secret": "REMOVED SENSITIVE VALUE",
"trusted_domains": [
"explorethe7seas.wheremymonkeyis.at"
],
"datadirectory": "/srv/nextcloud_data",
"overwrite.cli.url": "http://localhost",
"dbtype": "pgsql",
"version": "11.0.0.10",
"dbname": "nextcloud",
"dbhost": "localhost",
"dbport": "",
"dbtableprefix": "oc_",
"dbuser": "REMOVED SENSITIVE VALUE",
"dbpassword": "REMOVED SENSITIVE VALUE",
"logtimezone": "UTC",
"installed": true,
"updater.release.channel": "stable"
}
}

Are you using external storage, if yes which one: local/smb/sftp/...
no(t yet)

Are you using encryption:
no

Are you using an external user-backend, if yes which one:
no

Client configuration

Browser:
Firefox 45.6.0

Operating system:
Mageia 5 GNU/Linux

CardDAV-clients:

  • SailfishOS Calendar
  • Akonadi (currently not connected)

Logs

(seems irrelevant for now)

Address field escaped characters not showing

Hello all,

I ran into this little issue with a "missformatted" ADR field.
ADR;TYPE=HOME:;;IJweg 227, Z;Zwanenburg;;1161 EW;
The ", Z" part is not visible in the address field in the contact app, so I was not able to remove it.
In the end I had to download, edit and upload again. But I think this is a bug.
Attached is the complete Vcard.
010defb5-d436-4195-b7d6-4239766bca9c.vcf.zip

Kind regards,

Bert

make command fails

Running make in current git master results in the following error for me:

make npm
make[1]: Verzeichnis β€ž/srv/http/nextcloud-11.0.0/apps/contacts.gitβ€œ wird betreten
npm run build

> [email protected] prebuild /srv/http/nextcloud-11.0.0/apps/contacts.git
> npm install && npm update && node_modules/bower/bin/bower install && node_modules/bower/bin/bower update

npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@^1.0.0 (node_modules/chokidar/node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for [email protected]: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
bower cached        https://github.com/angular-ui/ui-select.git#0.14.9
bower validate      0.14.9 against https://github.com/angular-ui/ui-select.git#0.14.9
bower cached        https://github.com/angular/bower-angular.git#1.5.8
bower validate      1.5.8 against https://github.com/angular/bower-angular.git#1.5.8
bower cached        https://github.com/jmdobry/angular-cache.git#4.6.0
bower validate      4.6.0 against https://github.com/jmdobry/angular-cache.git#4.6.0
bower cached        https://github.com/angular/bower-angular-route.git#1.5.8
bower validate      1.5.8 against https://github.com/angular/bower-angular-route.git#1.5.8
bower cached        https://github.com/angular-ui/bootstrap-bower.git#1.1.2
bower validate      1.1.2 against https://github.com/angular-ui/bootstrap-bower.git#1.1.2
bower cached        https://github.com/angular/bower-angular-sanitize.git#1.5.8
bower validate      1.5.8 against https://github.com/angular/bower-angular-sanitize.git#1.5.8
bower cached        https://github.com/monicao/angular-uuid4.git#0.3.1
bower validate      0.3.1 against https://github.com/monicao/angular-uuid4.git#0.3.1
bower cached        https://github.com/Heymdall/vcard.git#0.2.7
bower validate      0.2.7 against https://github.com/Heymdall/vcard.git#0.2.7
bower cached        https://github.com/fgelinas/timepicker.git#883bb2cd94
bower validate      883bb2cd94 against https://github.com/fgelinas/timepicker.git#883bb2cd94
bower cached        https://github.com/angular/bower-angular-mocks.git#1.5.8
bower validate      1.5.8 against https://github.com/angular/bower-angular-mocks.git#1.5.8
bower cached        https://github.com/jashkenas/underscore.git#1.8.3
bower validate      1.8.3 against https://github.com/jashkenas/underscore.git#^1.8.3
bower short-sha     Consider using longer commit SHA to avoid conflicts

> [email protected] build /srv/http/nextcloud-11.0.0/apps/contacts.git
> node node_modules/gulp-cli/bin/gulp.js

[10:08:34] Using gulpfile ~/nextcloud-11.0.0/apps/contacts.git/gulpfile.js
[10:08:34] Starting 'eslint'...
[10:08:36]
/srv/http/nextcloud-11.0.0/apps/contacts.git/js/models/contact_model.js
  225:35  error  Strings must use singlequote  quotes

/srv/http/nextcloud-11.0.0/apps/contacts.git/js/services/contact_service.js
   40:10  warning  Unexpected console statement        no-console
  132:46  warning  Don't make functions within a loop  no-loop-func

βœ– 3 problems (1 error, 2 warnings)

[10:08:36] 'eslint' errored after 1.43 s
[10:08:36] ESLintError in plugin 'gulp-eslint'
Message:
    Failed with 1 error

npm ERR! Linux 4.8.13-1-ARCH
npm ERR! argv "/usr/bin/node" "/usr/bin/npm" "run" "build"
npm ERR! node v7.3.0
npm ERR! npm  v4.0.5
npm ERR! code ELIFECYCLE
npm ERR! [email protected] build: `node node_modules/gulp-cli/bin/gulp.js`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the [email protected] build script 'node node_modules/gulp-cli/bin/gulp.js'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the contacts package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     node node_modules/gulp-cli/bin/gulp.js
npm ERR! You can get information on how to open an issue for this project with:
npm ERR!     npm bugs contacts
npm ERR! Or if that isn't available, you can get their info via:
npm ERR!     npm owner ls contacts
npm ERR! There is likely additional logging output above.

npm ERR! Please include the following file with any support request:
npm ERR!     /srv/http/nextcloud-11.0.0/apps/contacts.git/npm-debug.log
make[1]: *** [Makefile:91: npm] Fehler 1
make[1]: Verzeichnis β€ž/srv/http/nextcloud-11.0.0/apps/contacts.gitβ€œ wird verlassen
make: *** [Makefile:63: build] Fehler 2

Fields should not cross over two columns

The group dropdown is cut in half as long as the input field stays on the left side.

If you have enough input fields on the left, like adress and the group input goes to right it's ok again.

Nextcloud version: 11 RC1
Contacts version: 1.5.2

chrome_2016-12-08_07-59-20


Want to back this issue? Post a bounty on it! We accept bounties via Bountysource.

Make fails

Steps to reproduce

  1. Setup Nextcloud
  2. Switch to apps directory
  3. Clone contacts repo
  4. Run make

Expected behaviour

make runs through and I can start hacking

Actual behaviour

NPM installation fails. See attached log.

Server configuration

Operating system:

$ uname -a
Linux vagrant-ubuntu-trusty-64 3.13.0-100-generic #147-Ubuntu SMP Tue Oct 18 16:48:51 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux

Web server:
Apache

Database:

$ mysql --version
mysql  Ver 14.14 Distrib 5.5.53, for debian-linux-gnu (x86_64) using readline 6.3

PHP version:

$ php --version
PHP 5.5.9-1ubuntu4.20 (cli) (built: Oct  3 2016 13:00:37) 
Copyright (c) 1997-2014 The PHP Group
Zend Engine v2.5.0, Copyright (c) 1998-2014 Zend Technologies
    with Zend OPcache v7.0.3, Copyright (c) 1999-2014, by Zend Technologies
    with Xdebug v2.2.3, Copyright (c) 2002-2013, by Derick Rethans

Nextcloud version: (see Nextcloud admin page)

Contacts version: (see Nextcloud apps page)
Cloned from master repo at commit 284499e

Updated from an older Nextcloud or fresh install:
Fresh install

Signing status:

No errors have been found.

List of activated apps:

$ sudo -u www-data php occ app:list
Cannot write into "config" directory!
This can usually be fixed by giving the webserver write access to the config directory

See https://docs.nextcloud.org/server/10/go.php?to=admin-dir_permissions
$ cat config/config.php 
<?php
$CONFIG = array (
  'instanceid' => 'ocqpfl35a4i0',
  'passwordsalt' => '<passwordsalt>',
  'secret' => '<secret>',
  'trusted_domains' => 
  array (
    0 => 'localhost:8888',
  ),
  'datadirectory' => '/vagrant/src/nextcloud/data',
  'overwrite.cli.url' => 'http://localhost:8888/nextcloud',
  'dbtype' => 'mysql',
  'version' => '9.1.1.5',
  'dbname' => 'nextcloud',
  'dbhost' => '127.0.0.1',
  'dbport' => '',
  'dbtableprefix' => 'oc_',
  'dbuser' => 'oc_administrator',
  'dbpassword' => '<dbpassword>',
  'logtimezone' => 'UTC',
  'installed' => true,
);

Are you using encryption: yes/no
No.

Are you using an external user-backend, if yes which one: LDAP/ActiveDirectory/Webdav/...
No.

Client configuration

Operating system:

$ uname -a
Linux vagrant-ubuntu-trusty-64 3.13.0-100-generic #147-Ubuntu SMP Tue Oct 18 16:48:51 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux

Logs

contacts-npm-debug.log.txt

Use common timestamp format for REV

Hello,

In 44b8edd, setting REV from JavaScript was introduced like this:

contact.rev(new Date().toISOString());

The format generated by new Date().toISOString() is 2016-11-27T16:53:30.027Z, which currently causes problems with VCard libraries like ez-vcard (mangstadt/ez-vcard#73). While the format seems to be correct according to ISO.8601.2004, it would reduce problems with CardDAV clients like DAVdroid if the timestamp could be printed in an easier format, like REV:19951031T222710Z (without milliseconds).

Also, VALUE=timestamp is redundant and could be removed.

Would that be possible? Currently, this change (released with nextcloud/contacts 1.5.2) breaks DAVdroid synchronization (more information here).

Contacts app should allow to remove an assigned contact picture from a contact record

Expected behavior

The Contacts app should allow to remove an assigned contact picture from a contacts record.

Current behavior

The Contacts app only allows to assign a contact picture to a contact record, but not to remove it.

Steps to reproduce

  1. Open the Contacts app and assign a picture to a contact record.
  2. Try to delete the assigned picture from the contact record.

Environment

Server Configuration

OS: Linux 3.2.82
Web server: Apache2 2.4.25
Database: MariaDB 5.5.53
PHP version: 5.6.23
Nextcloud version: 10.0.2
Contacts app: 1.5.2

Client Configuration

Browser: Mozilla Firefox 50.1.0
Operating system: Windows 7

[UX] Some contact card colours make contact name text unreadable

Steps to reproduce

  1. Create a contact, nextcloud automatically choses a colour for this contact
  2. Click on a contact card to see details

Expected behaviour

The contact name should be easy to read (and by extension edit), and all colour choices should provide a good contrast ratio between the randomly picked background colour and the text's font colour (white)

Actual behaviour

Some colours are very light (very pale yellow, very pale green, etc.) and make it nearly impossible to read the name of the contacts for many users, let alone edit it.

Server configuration

Operating system:
not relevant
Web server:
nginx (but not relevant really)
Database:
mysql (but not relevant really)
PHP version:
Version: 5.6.29+dfsg-0+deb8u1(but not relevant really)
Nextcloud version: (see Nextcloud admin page)
10.0.2 (first spotted on 9.0.54, the probme seems a little less worse on 10.0.2)
Contacts version: (see Nextcloud apps page)
1.5.1 (same, seemed a little worse on previous version)
Updated from an older Nextcloud or fresh install:
update from owncloud

Server version 9.2 or lower is required.

Steps to reproduce

  1. Click 'enable' in the app list.

Expected behaviour

The app should install.

Actual behaviour

The app throws the following exception:

App "Contacts" cannot be installed because the following dependencies are not fulfilled: Server version 9.2 or lower is required.

Server configuration

Operating system:
OpenSUSE Leap 42.1

Web server:
Apache

Database:
pgsql

PHP version:
7.0.14

Nextcloud version: (see Nextcloud admin page)
11.0.0 (stable)

Contacts version: (see Nextcloud apps page)
???

Updated from an older Nextcloud or fresh install:
Updated from older.

Signing status:
???

No errors have been found.

List of activated apps:

Enabled:
  - activity: 2.4.1
  - calendar: 1.4.1
  - comments: 1.1.0
  - dav: 1.1.1
  - federatedfilesharing: 1.1.1
  - federation: 1.1.1
  - files: 1.6.1
  - files_pdfviewer: 1.0.1
  - files_sharing: 1.1.1
  - files_texteditor: 2.2
  - files_trashbin: 1.1.0
  - files_versions: 1.4.0
  - files_videoplayer: 1.0.0
  - firstrunwizard: 2.0
  - gallery: 16.0.0
  - html5_videoplayer: 1.0
  - logreader: 2.0.0
  - lookup_server_connector: 1.0.0
  - nextcloud_announcements: 1.0
  - notifications: 1.0.1
  - password_policy: 1.1.0
  - provisioning_api: 1.1.0
  - serverinfo: 1.1.1
  - sharebymail: 1.0.1
  - survey_client: 0.1.5
  - systemtags: 1.1.3
  - theming: 1.1.1
  - twofactor_backupcodes: 1.0.0
  - updatenotification: 1.1.1
  - workflowengine: 1.1.1
Disabled:
  - admin_audit
  - bookmarks
  - contacts
  - documents
  - encryption
  - external
  - files_accesscontrol
  - files_automatedtagging
  - files_external
  - files_retention
  - music
  - notes
  - tasks
  - templateeditor
  - user_external
  - user_ldap
  - user_saml

The content of config/config.php:

{
    "system": {
        "instanceid": "oc7iufbqecql",
        "passwordsalt": "***REMOVED SENSITIVE VALUE***",
        "secret": "***REMOVED SENSITIVE VALUE***",
        "trusted_domains": [
            "45.23.233.219",
            "nextcloud.tmtvl.info",
            "104.238.188.156"
        ],
        "datadirectory": "\/srv\/www\/nextcloud\/data",
        "overwritehost": "nextcloud.tmtvl.info",
        "overwriteprotocol": "https",
        "overwritewebroot": "",
        "overwrite.cli.url": "http:\/\/104.238.188.156",
        "dbtype": "pgsql",
        "version": "11.0.0.10",
        "dbname": "nextcloud",
        "dbhost": "localhost",
        "dbport": "",
        "dbtableprefix": "oc_",
        "dbuser": "***REMOVED SENSITIVE VALUE***",
        "dbpassword": "***REMOVED SENSITIVE VALUE***",
        "logtimezone": "UTC",
        "installed": true,
        "maintenance": false,
        "updater.secret": "***REMOVED SENSITIVE VALUE***",
        "loglevel": 2,
        "mail_smtpmode": "php",
        "updater.release.channel": "stable"
    }
}

Are you using external storage, if yes which one: No

Are you using encryption: No

Are you using an external user-backend, if yes which one: No

Client configuration

Browser: Firefox

Operating system: OpenSUSE Tumbleweed

CardDAV-clients: Kontact

Logs

Web server error log

[Wed Dec 14 02:43:39.071416 2016] [authz_core:error] [pid 26268] [client 127.0.0.1:52298] AH01630: client denied by server configuration: /srv/www/nextcloud/data/htaccesstest.txt
[Wed Dec 14 02:44:54.347324 2016] [authz_core:error] [pid 26270] [client 127.0.0.1:52394] AH01630: client denied by server configuration: /srv/www/nextcloud/data/htaccesstest.txt
[Wed Dec 14 02:44:58.719924 2016] [authz_core:error] [pid 23724] [client 127.0.0.1:52420] AH01630: client denied by server configuration: /srv/www/nextcloud/data/htaccesstest.txt
[Wed Dec 14 02:45:03.623436 2016] [authz_core:error] [pid 26301] [client 127.0.0.1:52455] AH01630: client denied by server configuration: /srv/www/nextcloud/data/htaccesstest.txt
[Wed Dec 14 02:45:26.427661 2016] [authz_core:error] [pid 23724] [client 127.0.0.1:52488] AH01630: client denied by server configuration: /srv/www/nextcloud/data/htaccesstest.txt
[Wed Dec 14 02:45:28.911535 2016] [authz_core:error] [pid 26272] [client 127.0.0.1:52511] AH01630: client denied by server configuration: /srv/www/nextcloud/data/htaccesstest.txt
[Wed Dec 14 02:45:33.735471 2016] [authz_core:error] [pid 26270] [client 127.0.0.1:52541] AH01630: client denied by server configuration: /srv/www/nextcloud/data/htaccesstest.txt
[Wed Dec 14 02:45:35.947277 2016] [authz_core:error] [pid 23741] [client 127.0.0.1:52559] AH01630: client denied by server configuration: /srv/www/nextcloud/data/htaccesstest.txt
[Wed Dec 14 02:45:38.647410 2016] [authz_core:error] [pid 26295] [client 127.0.0.1:52583] AH01630: client denied by server configuration: /srv/www/nextcloud/data/htaccesstest.txt
[Wed Dec 14 02:45:41.359536 2016] [authz_core:error] [pid 26272] [client 127.0.0.1:52609] AH01630: client denied by server configuration: /srv/www/nextcloud/data/htaccesstest.txt
[Wed Dec 14 02:45:51.303593 2016] [authz_core:error] [pid 26301] [client 127.0.0.1:52633] AH01630: client denied by server configuration: /srv/www/nextcloud/data/htaccesstest.txt
[Wed Dec 14 02:45:53.811387 2016] [authz_core:error] [pid 26301] [client 127.0.0.1:52662] AH01630: client denied by server configuration: /srv/www/nextcloud/data/htaccesstest.txt
[Wed Dec 14 02:45:56.351461 2016] [authz_core:error] [pid 26272] [client 127.0.0.1:52686] AH01630: client denied by server configuration: /srv/www/nextcloud/data/htaccesstest.txt
[Wed Dec 14 02:46:10.487482 2016] [authz_core:error] [pid 23778] [client 127.0.0.1:52707] AH01630: client denied by server configuration: /srv/www/nextcloud/data/htaccesstest.txt
[Wed Dec 14 02:46:21.499442 2016] [authz_core:error] [pid 26269] [client 127.0.0.1:52732] AH01630: client denied by server configuration: /srv/www/nextcloud/data/htaccesstest.txt
[Wed Dec 14 02:46:24.531432 2016] [authz_core:error] [pid 26268] [client 127.0.0.1:52752] AH01630: client denied by server configuration: /srv/www/nextcloud/data/htaccesstest.txt
[Wed Dec 14 13:38:48.693233 2016] [php5:error] [pid 26270] [client 127.0.0.1:52864] script '/srv/www/nextcloud/command.php' not found or unable to stat
[Wed Dec 14 16:37:58.819828 2016] [mpm_prefork:notice] [pid 15854] AH00170: caught SIGWINCH, shutting down gracefully
[Wed Dec 14 16:37:59.277708 2016] [mpm_prefork:notice] [pid 31381] AH00163: Apache/2.4.16 (Linux/SUSE) configured -- resuming normal operations
[Wed Dec 14 16:37:59.278445 2016] [core:notice] [pid 31381] AH00094: Command line: '/usr/sbin/httpd-prefork -f /etc/apache2/httpd.conf -D SYSCONFIG -C PidFile /var/run/httpd.pid -C Include /etc/apache2/sysconfig.d/ -D SYSTEMD -D FOREGROUND'
[Wed Dec 14 16:42:30.773227 2016] [mpm_prefork:notice] [pid 31381] AH00170: caught SIGWINCH, shutting down gracefully
[Wed Dec 14 16:44:09.418336 2016] [mpm_prefork:notice] [pid 1283] AH00163: Apache/2.4.16 (Linux/SUSE) PHP/7.0.14 configured -- resuming normal operations
[Wed Dec 14 16:44:09.426190 2016] [core:notice] [pid 1283] AH00094: Command line: '/usr/sbin/httpd-prefork -f /etc/apache2/httpd.conf -D SYSCONFIG -C PidFile /var/run/httpd.pid -C Include /etc/apache2/sysconfig.d/ -D SYSTEMD -D FOREGROUND'
[Wed Dec 14 17:00:26.757874 2016] [authz_core:error] [pid 1393] [client 127.0.0.1:50302] AH01630: client denied by server configuration: /srv/www/nextcloud/data/.ocdata
[Wed Dec 14 17:00:36.261774 2016] [authz_core:error] [pid 1391] [client 127.0.0.1:50323] AH01630: client denied by server configuration: /srv/www/nextcloud/data/.ocdata
[Wed Dec 14 17:00:39.937271 2016] [authz_core:error] [pid 1392] [client 127.0.0.1:50347] AH01630: client denied by server configuration: /srv/www/nextcloud/data/.ocdata
[Wed Dec 14 17:00:42.593560 2016] [authz_core:error] [pid 1393] [client 127.0.0.1:50367] AH01630: client denied by server configuration: /srv/www/nextcloud/data/.ocdata
[Wed Dec 14 17:00:56.649934 2016] [authz_core:error] [pid 1394] [client 127.0.0.1:50384] AH01630: client denied by server configuration: /srv/www/nextcloud/data/.ocdata
[Wed Dec 14 17:00:59.729810 2016] [authz_core:error] [pid 1841] [client 127.0.0.1:50403] AH01630: client denied by server configuration: /srv/www/nextcloud/data/.ocdata
[Wed Dec 14 17:01:06.157803 2016] [authz_core:error] [pid 1393] [client 127.0.0.1:50425] AH01630: client denied by server configuration: /srv/www/nextcloud/data/.ocdata
[Wed Dec 14 17:01:09.393584 2016] [authz_core:error] [pid 1935] [client 127.0.0.1:50465] AH01630: client denied by server configuration: /srv/www/nextcloud/data/.ocdata
[Wed Dec 14 17:01:12.945526 2016] [authz_core:error] [pid 1394] [client 127.0.0.1:50488] AH01630: client denied by server configuration: /srv/www/nextcloud/data/.ocdata
[Wed Dec 14 17:01:17.665616 2016] [authz_core:error] [pid 1829] [client 127.0.0.1:50507] AH01630: client denied by server configuration: /srv/www/nextcloud/data/.ocdata
[Wed Dec 14 17:01:35.985562 2016] [authz_core:error] [pid 1935] [client 127.0.0.1:50532] AH01630: client denied by server configuration: /srv/www/nextcloud/data/.ocdata
[Wed Dec 14 17:02:34.430075 2016] [authz_core:error] [pid 2010] [client 127.0.0.1:50562] AH01630: client denied by server configuration: /srv/www/nextcloud/data/.ocdata
[Wed Dec 14 20:55:25.328032 2016] [:error] [pid 2036] [client 127.0.0.1:51276] script '/srv/www/nextcloud/testproxy.php' not found or unable to stat
[Thu Dec 15 18:10:10.346096 2016] [:error] [pid 1829] [client 127.0.0.1:52397] script '/srv/www/nextcloud/wp-login.php' not found or unable to stat
[Thu Dec 15 20:27:21.426524 2016] [:error] [pid 1963] [client 127.0.0.1:52405] script '/srv/www/nextcloud/xmlrpc.php' not found or unable to stat
[Thu Dec 15 23:38:02.348113 2016] [:error] [pid 2036] [client 127.0.0.1:52673] script '/srv/www/nextcloud/testproxy.php' not found or unable to stat
[Fri Dec 16 01:04:39.733812 2016] [authz_core:error] [pid 2036] [client 127.0.0.1:53365] AH01630: client denied by server configuration: /srv/www/nextcloud/data/.ocdata
[Fri Dec 16 01:04:57.837985 2016] [authz_core:error] [pid 1393] [client 127.0.0.1:53390] AH01630: client denied by server configuration: /srv/www/nextcloud/data/.ocdata
[Fri Dec 16 01:05:01.053183 2016] [authz_core:error] [pid 1392] [client 127.0.0.1:53415] AH01630: client denied by server configuration: /srv/www/nextcloud/data/.ocdata
[Fri Dec 16 01:05:03.165705 2016] [authz_core:error] [pid 1840] [client 127.0.0.1:53431] AH01630: client denied by server configuration: /srv/www/nextcloud/data/.ocdata
[Fri Dec 16 01:05:42.425720 2016] [authz_core:error] [pid 2010] [client 127.0.0.1:53451] AH01630: client denied by server configuration: /srv/www/nextcloud/data/.ocdata
[Fri Dec 16 01:05:43.957667 2016] [authz_core:error] [pid 1392] [client 127.0.0.1:53470] AH01630: client denied by server configuration: /srv/www/nextcloud/data/.ocdata
[Fri Dec 16 01:29:14.947590 2016] [mpm_prefork:notice] [pid 1283] AH00170: caught SIGWINCH, shutting down gracefully
[Fri Dec 16 01:29:15.140237 2016] [mpm_prefork:notice] [pid 9941] AH00163: Apache/2.4.16 (Linux/SUSE) PHP/7.0.14 configured -- resuming normal operations
[Fri Dec 16 01:29:15.140297 2016] [core:notice] [pid 9941] AH00094: Command line: '/usr/sbin/httpd-prefork -f /etc/apache2/httpd.conf -D SYSCONFIG -C PidFile /var/run/httpd.pid -C Include /etc/apache2/sysconfig.d/ -D SYSTEMD -D FOREGROUND'
[Fri Dec 16 01:32:11.265750 2016] [mpm_prefork:notice] [pid 9941] AH00170: caught SIGWINCH, shutting down gracefully
[Fri Dec 16 01:32:11.420725 2016] [mpm_prefork:notice] [pid 10019] AH00163: Apache/2.4.16 (Linux/SUSE) PHP/7.0.14 configured -- resuming normal operations
[Fri Dec 16 01:32:11.420791 2016] [core:notice] [pid 10019] AH00094: Command line: '/usr/sbin/httpd-prefork -f /etc/apache2/httpd.conf -D SYSCONFIG -C PidFile /var/run/httpd.pid -C Include /etc/apache2/sysconfig.d/ -D SYSTEMD -D FOREGROUND'
[Fri Dec 16 03:14:21.179321 2016] [:error] [pid 10027] [client 127.0.0.1:54269] script '/srv/www/nextcloud/xmlrpc.php' not found or unable to stat
[Fri Dec 16 11:14:31.779128 2016] [autoindex:error] [pid 10049] [client 127.0.0.1:54720] AH01276: Cannot serve directory /srv/www/nextcloud/core/doc/user/_static/: No matching DirectoryIndex (index.php,index.html) found, and server-generated directory index forbidden by Options directive, referer: https://nextcloud.tmtvl.info/core/doc/user/index.html
[Fri Dec 16 11:14:45.537585 2016] [authz_core:error] [pid 10025] [client 127.0.0.1:54800] AH01630: client denied by server configuration: /srv/www/nextcloud/data/.ocdata
[Fri Dec 16 11:14:52.689779 2016] [authz_core:error] [pid 29598] [client 127.0.0.1:54823] AH01630: client denied by server configuration: /srv/www/nextcloud/data/.ocdata
[Fri Dec 16 11:15:57.913649 2016] [authz_core:error] [pid 10058] [client 127.0.0.1:54971] AH01630: client denied by server configuration: /srv/www/nextcloud/data/.ocdata

Nextcloud log (data/nextcloud.log)

[...]
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/bn_IN.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/bs.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/ca.js): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/ca.json): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/ca.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/cs_CZ.js): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/cs_CZ.json): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/cs_CZ.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/cy_GB.js): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/cy_GB.json): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/cy_GB.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/da.js): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/da.json): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/da.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/de.js): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/de.json): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/de.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/de_AT.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/de_DE.js): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/de_DE.json): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/de_DE.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/el.js): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/el.json): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/el.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/en_GB.js): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/en_GB.json): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/en_GB.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/eo.js): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/eo.json): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/eo.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/es.js): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/es.json): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/es.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/es_AR.js): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/es_AR.json): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/es_AR.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/es_CL.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/es_MX.js): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/es_MX.json): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/es_MX.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/et_EE.js): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/et_EE.json): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/et_EE.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/eu.js): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/eu.json): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/eu.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/eu_ES.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/fa.js): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/fa.json): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/fa.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/fi.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/fi_FI.js): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/fi_FI.json): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/fi_FI.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/fr.js): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/fr.json): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/fr.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/gl.js): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/gl.json): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/gl.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/he.js): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/he.json): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/he.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/hi.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/hr.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/hu_HU.js): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/hu_HU.json): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/hu_HU.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/hy.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/ia.js): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/ia.json): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/ia.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/id.js): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/id.json): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/id.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/is.js): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/is.json): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/is.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/it.js): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/it.json): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/it.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/ja.js): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/ja.json): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/ja.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/jv.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/ka_GE.js): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/ka_GE.json): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/ka_GE.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/km.js): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/km.json): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/km.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/ko.js): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/ko.json): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/ko.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/ku_IQ.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/lb.js): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/lb.json): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/lb.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/lt_LT.js): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/lt_LT.json): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/lt_LT.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/lv.js): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/lv.json): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/lv.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/mk.js): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/mk.json): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/mk.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/ms_MY.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/my_MM.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/nb_NO.js): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/nb_NO.json): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/nb_NO.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/nl.js): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/nl.json): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/nl.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/nn_NO.js): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/nn_NO.json): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/nn_NO.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/oc.js): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/oc.json): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/oc.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/pa.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/pl.js): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/pl.json): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/pl.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/pl_PL.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/pt_BR.js): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/pt_BR.json): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/pt_BR.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/pt_PT.js): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/pt_PT.json): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/pt_PT.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/ro.js): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/ro.json): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/ro.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/ru.js): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/ru.json): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/ru.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/ru_RU.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/si_LK.js): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/si_LK.json): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/si_LK.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/sk_SK.js): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/sk_SK.json): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/sk_SK.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/sl.js): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/sl.json): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/sl.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/sq.js): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/sq.json): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/sq.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/sr.js): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/sr.json): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/sr.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/[email protected]): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/[email protected]): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/[email protected]): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/sv.js): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/sv.json): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/sv.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/ta_IN.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/ta_LK.js): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/ta_LK.json): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/ta_LK.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/te.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/th_TH.js): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/th_TH.json): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/th_TH.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/tr.js): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/tr.json): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/tr.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/ug.js): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/ug.json): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/ug.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/uk.js): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/uk.json): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/uk.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/ur_PK.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/vi.js): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/vi.json): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/vi.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/xgettextfiles): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/zh_CN.js): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/zh_CN.json): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/zh_CN.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/zh_HK.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/zh_TW.js): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/zh_TW.json): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n\/zh_TW.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"rmdir(\/srv\/www\/nextcloud\/apps\/bookmarks\/l10n): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#213","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/templates\/addBookmarklet.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/templates\/js_tpl.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/templates\/main.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"unlink(\/srv\/www\/nextcloud\/apps\/bookmarks\/templates\/settings.php): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#215","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"rmdir(\/srv\/www\/nextcloud\/apps\/bookmarks\/templates): Permission denied at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#213","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"UHMT\/uz1pondv3VZHJiT","remoteAddr":"127.0.0.1","app":"PHP","message":"rmdir(\/srv\/www\/nextcloud\/apps\/bookmarks): Directory not empty at \/srv\/www\/nextcloud\/lib\/private\/legacy\/helper.php#219","level":3,"time":"2016-12-16T00:00:15+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/uninstallapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"+TnF\/g0pOYOUJgwcQa7u","remoteAddr":"127.0.0.1","app":"core","message":"App \"Notes\" cannot be installed because the following dependencies are not fulfilled: Server version 9.2 or lower is required.","level":3,"time":"2016-12-16T00:00:32+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/enableapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"SpbOieLpSXqb6Ol\/S6ZD","remoteAddr":"127.0.0.1","app":"core","message":"App \"Contacts\" cannot be installed because the following dependencies are not fulfilled: Server version 9.2 or lower is required.","level":3,"time":"2016-12-16T00:00:58+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/enableapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"h\/TKI4S2RDkDlouWaiT5","remoteAddr":"127.0.0.1","app":"core","message":"App \"Contacts\" cannot be installed because the following dependencies are not fulfilled: Server version 9.2 or lower is required.","level":3,"time":"2016-12-16T00:04:13+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/enableapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"P8MljR1MP5hUrRuZYkdD","remoteAddr":"127.0.0.1","app":"core","message":"App \"Contacts\" cannot be installed because the following dependencies are not fulfilled: Server version 9.2 or lower is required.","level":3,"time":"2016-12-16T00:14:55+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/enableapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"HLKAcVilcM4NBHc\/v7m+","remoteAddr":"127.0.0.1","app":"core","message":"App \"Contacts\" cannot be installed because the following dependencies are not fulfilled: Server version 9.2 or lower is required.","level":3,"time":"2016-12-16T00:18:11+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/enableapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"jz2C7QGrIu5O\/BgFEzzM","remoteAddr":"127.0.0.1","app":"core","message":"App \"Contacts\" cannot be installed because the following dependencies are not fulfilled: Server version 9.2 or lower is required.","level":3,"time":"2016-12-16T00:19:03+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/enableapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"CLLKafRWI2gZn5KqJMi+","remoteAddr":"127.0.0.1","app":"core","message":"App \"Contacts\" cannot be installed because the following dependencies are not fulfilled: Server version 9.2 or lower is required.","level":3,"time":"2016-12-16T00:24:25+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/enableapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"M7Lp\/PA2AE8anDVFG3Su","remoteAddr":"127.0.0.1","app":"core","message":"App \"Contacts\" cannot be installed because the following dependencies are not fulfilled: Server version 9.2 or lower is required.","level":3,"time":"2016-12-16T00:29:35+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/enableapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"Qm97LMYOzQASbbB0f0w2","remoteAddr":"127.0.0.1","app":"core","message":"App \"Contacts\" cannot be installed because the following dependencies are not fulfilled: Server version 9.2 or lower is required.","level":3,"time":"2016-12-16T00:32:50+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/enableapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"xXWs2jV0Pk856Fq3PkX7","remoteAddr":"127.0.0.1","app":"core","message":"App \"Contacts\" cannot be installed because the following dependencies are not fulfilled: Server version 9.2 or lower is required.","level":3,"time":"2016-12-16T10:10:22+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/enableapp.php","user":"admin","version":"11.0.0.10"}
{"reqId":"Nzry09ScRdOzP+dhjpPY","remoteAddr":"127.0.0.1","app":"core","message":"App \"Contacts\" cannot be installed because the following dependencies are not fulfilled: Server version 9.2 or lower is required.","level":3,"time":"2016-12-16T10:16:41+00:00","method":"POST","url":"\/index.php\/settings\/ajax\/enableapp.php","user":"admin","version":"11.0.0.10"}

Browser log

All logs empty

Allow vCard importing into custom AddressBook

Steps to reproduce

  1. Create a new AddressBook.
  2. Import a .vcf file.
  3. Note that the AddressBook of all of the contacts is the default Contacts addressbook.

Expected behaviour

There should be a field or other option to import into a custom AddressBook

Actual behaviour

There is no such option.

Server configuration

Nextcloud version: (see Nextcloud admin page)
10.0.1

Contacts version: (see Nextcloud apps page)
1.4.0.0

Updated from an older Nextcloud or fresh install:
Fresh install

Prevention of fields straddling two columns

It is highly undesirable for a field (such as address) to straddle two columns:
a) aesthetically unappealing and cluttered
b) visually difficult to read and assess data

Expected:
A field such as an address appears in the first or second column, depending on space.

Actual:
A field, such as an address, crosses over two columns - which is unwieldy hard to read and unsightly.

Currently not possible to download group of contacts.

At the moment it is not possible to select a single group of contacts and export/download it as a vcard file.
This used to be possible with the older contact app (last year)
Can this feature be re-added again?

Regards,

Bert

Handle line-breaks in address field

This may affect not only the address field. However, this is the field, where it is annoying. Furthermore, this issue was also reported in owncloud/contacts#519 (without a fix at the moment).

Steps to reproduce

  1. Add a line-break to the value of the address field using an external client (e.g. on your Android mobile phone). Example:
Part1
Part2
  1. Sync the client with Nextcloud (e.g. using DAVdroid)
  2. Open the contact with Nextcloud Contacts.

Expected behaviour

The address field should contain the line-break between Part1 and Part2.

Actual behaviour

The value of the address field is Part1Part2, i.e. the line-break is removed. However, the database (oc_cards and oc_cards_properties) contains the correct value for ADR: ;;Part1\nPart2;;;;.

Server configuration

Operating system: Debian jessie
Web server: Apache 2.4.10
Database: MySQL 5.5.53
PHP version: 5.6.29
Nextcloud version: 10.0.2
Contacts version: 1.5.2

Client configuration

Browser: Firefox ESR 45.6.0
Operating system: Debian jessie
CardDAV-clients: DAVdroid / Android

spinning wheel when selecting 'all contacts' after upgrade to 1.5.1

Steps to reproduce

  1. Upgrade to 1.5.1
  2. Open the contacts ;-)
  3. Click on 'all Contacts'

Expected behaviour

All contacts are shown

Actual behaviour

No contacts are shown, the spinning wheel does not stop.
When selecting a group, the contacts for the group are shown.
When using a differen account, contacts are shown as well.

Server configuration

Operating system:
Debian Jessie

Web server:
Apache 2.4.10-10+deb8u5

Database:
Postgres 9.4+165+deb8u1

PHP version:
PHP 5.6.27-0+deb8u1

Nextcloud version: (see Nextcloud admin page)
10.1

Contacts version: (see Nextcloud apps page)
1.5.1

Updated from an older Nextcloud or fresh install:
Contacts upgraded

Signing status:

No errors have been found.

List of activated apps:

Enabled:
  - activity: 2.3.2
  - bookmarks: 0.9.0
  - calendar: 1.4.1
  - comments: 1.0.0
  - contacts: 1.5.1
  - conversations: 0.2.3
  - dashboard: 1.9.1 beta
  - dav: 1.0.1
  - documents: 0.13.1
  - federatedfilesharing: 1.0.1
  - federation: 1.0.1
  - files: 1.5.2
  - files_pdfviewer: 0.8.1
  - files_sharing: 1.0.0
  - files_texteditor: 2.1
  - files_trashbin: 1.0.0
  - files_versions: 1.3.0
  - files_videoplayer: 0.9.8
  - firstrunwizard: 1.1
  - gallery: 15.0.0
  - music: 0.3.12
  - notifications: 0.3.0
  - ocsms: 1.10.1
  - ownbackup: 16.11.0
  - ownnote: true
  - password_policy: 1.0.0
  - provisioning_api: 1.0.0
  - qownnotesapi: 16.09.0
  - rainloop: 4.16
  - serverinfo: 1.1.1
  - survey_client: 0.1.5
  - systemtags: 1.0.2
  - tasks: 0.9.3
  - templateeditor: 0.1
  - theming: 1.0.1
  - updatenotification: 1.0.1
  - user_ldap: 1.0.1
  - workflowengine: 1.0.1
Disabled:
  - admin_audit
  - encryption
  - external
  - files_accesscontrol
  - files_automatedtagging
  - files_external
  - files_retention
  - roundcube
  - user_external
  - user_saml

The content of config/config.php:

{
    "system": {
        "dbtype": "pgsql",
        "dbname": "owncloud",
        "dbuser": "***REMOVED SENSITIVE VALUE***",
        "dbpassword": "***REMOVED SENSITIVE VALUE***",
        "dbhost": "localhost",
        "dbtableprefix": "oc_",
        "defaultapp": "dashboard",
        "instanceid": "ocxlo1ff38g5",
        "passwordsalt": "***REMOVED SENSITIVE VALUE***",
        "secret": "***REMOVED SENSITIVE VALUE***",
        "trusted_domains": [
            "info.modserver.de",
            "www.modserver.de",
            "owncloud.dehnhardt.org",
            "nextcloud.dehnhardt.org"
        ],
        "datadirectory": "\/data\/cloud",
        "version": "9.1.1.5",
        "logtimezone": "UTC",
        "installed": true,
        "maintenance": false,
        "theme": "",
        "loglevel": 2,
        "ldapIgnoreNamingRules": false,
        "trashbin_retention_obligation": "auto, auto",
        "updatechecker": true,
        "updater.server.url": "https:\/\/updates.nextcloud.org\/updater_server\/",
        "appcodechecker": false,
        "htaccess.RewriteBase": "\/",
        "memcache.local": "\\OC\\Memcache\\Redis",
        "redis": {
            "host": "localhost",
            "port": 6379
        },
        "mail_from_address": "holger",
        "mail_smtpmode": "php",
        "mail_domain": "dehnhardt.org",
        "updater.release.channel": "stable",
        "appstore.experimental.enabled": true
    }
}

Are you using external storage, if yes which one: local/smb/sftp/...
No

Are you using encryption: yes/no
No

Are you using an external user-backend, if yes which one: LDAP/ActiveDirectory/Webdav/...

LDAP configuration (delete this part if not used)

+-------------------------------+--------------------------------------------+
| Configuration                 |                                            |
+-------------------------------+--------------------------------------------+
| hasMemberOfFilterSupport      |                                            |
| hasPagedResultSupport         |                                            |
| homeFolderNamingRule          | uid                                        |
| lastJpegPhotoLookup           | 0                                          |
| ldapAgentName                 | cn=***,dc=***,dc=org               |
| ldapAgentPassword             | ***                                        |
| ldapAttributesForGroupSearch  |                                            |
| ldapAttributesForUserSearch   |                                            |
| ldapBackupHost                |                                            |
| ldapBackupPort                |                                            |
| ldapBase                      | dc=***,dc=org                        |
| ldapBaseGroups                | ou=***,dc=***,dc=org                  |
| ldapBaseUsers                 | ou=***,dc=***,dc=org                    |
| ldapCacheTTL                  | 600                                        |
| ldapConfigurationActive       | 1                                          |
| ldapDynamicGroupMemberURL     |                                            |
| ldapEmailAttribute            | mail                                       |
| ldapExperiencedAdmin          | 0                                          |
| ldapExpertUUIDGroupAttr       |                                            |
| ldapExpertUUIDUserAttr        | uid                                        |
| ldapExpertUsernameAttr        | uid                                        |
| ldapGroupDisplayName          | cn                                         |
| ldapGroupFilter               | (&(|(objectclass=posixGroup)))             |
| ldapGroupFilterGroups         |                                            |
| ldapGroupFilterMode           | 0                                          |
| ldapGroupFilterObjectclass    | posixGroup                                 |
| ldapGroupMemberAssocAttr      | memberUid                                  |
| ldapHost                      | ***                                     |
| ldapIgnoreNamingRules         |                                            |
| ldapLoginFilter               | (&(|(objectclass=posixAccount))(uid=%uid)) |
| ldapLoginFilterAttributes     |                                            |
| ldapLoginFilterEmail          | 0                                          |
| ldapLoginFilterMode           | 0                                          |
| ldapLoginFilterUsername       | 1                                          |
| ldapNestedGroups              | 0                                          |
| ldapOverrideMainServer        | 0                                          |
| ldapPagingSize                | 500                                        |
| ldapPort                      | 389                                        |
| ldapQuotaAttribute            |                                            |
| ldapQuotaDefault              |                                            |
| ldapTLS                       | 0                                          |
| ldapUserDisplayName           | cn                                         |
| ldapUserDisplayName2          |                                            |
| ldapUserFilter                | (|(objectclass=posixAccount))              |
| ldapUserFilterGroups          |                                            |
| ldapUserFilterMode            | 0                                          |
| ldapUserFilterObjectclass     | posixAccount                               |
| ldapUuidGroupAttribute        | auto                                       |
| ldapUuidUserAttribute         | auto                                       |
| turnOffCertCheck              | 0                                          |
| useMemberOfToDetectMembership | 1                                          |
+-------------------------------+--------------------------------------------+

Eventually replace sensitive data as the name/IP-address of your LDAP server or groups.

Client configuration

Browser:
Chrome 54.0.2840.98 (64-bit)

Operating system:
Mac

CardDAV-clients:

Logs

Web server error log

empty error log

Nextcloud log (data/nextcloud.log)

no owncloud errors

Browser log

no errors here

Not able to install

Steps to reproduce

  1. download via NextCloud AppStore
  2. getting error Message (not installable)
  3. What I found when checking:
    Technical information
    =====================
    The following list covers which files have failed the integrity check. Please read
    the previous linked documentation to learn more about the errors and how to fix
    them.

Results

  • contacts
    • EXCEPTION
      • OC\IntegrityCheck\Exceptions\InvalidSignatureException
      • Signature data not found.

Raw output

Array
(
[contacts] => Array
(
[EXCEPTION] => Array
(
[class] => OC\IntegrityCheck\Exceptions\InvalidSignatureException
[message] => Signature data not found.
)

    )

)

Expected behaviour

The Applet should install ;-)

Actual behaviour

Installation failed

Server configuration

Operating system: Ubuntu Server 16.04 LTS

Web server: Apache

Database: mysql 10.0.27

PHP version: 7.0.8

Nextcloud version: (see Nextcloud admin page) 10.0.1 (stable)

Contacts version: (see Nextcloud apps page) -/- tried install via Store and it fails (Ver 1.5.0)

Updated from an older Nextcloud or fresh install: fresh install

Signing status:
Technical information

The following list covers which files have failed the integrity check. Please read
the previous linked documentation to learn more about the errors and how to fix
them.

Results

  • contacts
    • EXCEPTION
      • OC\IntegrityCheck\Exceptions\InvalidSignatureException
      • Signature data not found.

Raw output

Array
(
[contacts] => Array
(
[EXCEPTION] => Array
(
[class] => OC\IntegrityCheck\Exceptions\InvalidSignatureException
[message] => Signature data not found.
)

    )

)

Login as admin user into your Nextcloud and access 
http://example.com/index.php/settings/integrity/failed 
paste the results here.

List of activated apps:
Calendar LDAP

If you have access to your command line run e.g.:
sudo -u www-data php occ app:list
from within your Nextcloud installation folder

The content of config/config.php:

If you have access to your command line run e.g.:
sudo -u www-data php occ config:list system
from within your Nextcloud installation folder

or 

Insert your config.php content here
(Without the database password, passwordsalt and secret)

Are you using external storage, if yes which one: local/smb/sftp/...
Not yet ;-)

Are you using encryption: yes

Are you using an external user-backend, if yes which one: ActiveDirectory (also happens with local nextcloud user)

LDAP configuration (delete this part if not used)

With access to your command line run e.g.:
sudo -u www-data php occ ldap:show-config
from within your Nextcloud installation folder

Without access to your command line download the data/owncloud.db to your local
computer or access your SQL server remotely and run the select query:
SELECT * FROM `oc_appconfig` WHERE `appid` = 'user_ldap';


Eventually replace sensitive data as the name/IP-address of your LDAP server or groups.

Client configuration

Browser: tried with latest Chrome IE 11 and Edge (all different configurations)

Operating system: Win7 / Win 10 / Ubuntu 14.04 Desktop

CardDAV-clients:

Logs

Web server error log

Insert your webserver log here

Nextcloud log (data/nextcloud.log)

Insert your Nextcloud log here

Browser log

Insert your browser log here, this could for example include:

a) The javascript console log
b) The network log 
c) ...

Wrong assignment of fields while syncing contacts

Hi,

testet on several equipments, so I think the contacts app has the "bug" ...

while creating a new contact in NC 10.01 with two phone numbers (one private at home, and one at office for work), I sync them with the latest davdroid to my Android-System, both phone numbers are shown in the same category "main" ... that's not good ...

Similar problem appeared on iOs ... Known bugs there anywhere??

Regards,

kangaroo72

Tested on "Samsung Galaxy Note 5 running 6.01", "Samsung Galaxy S7 running 6.01" and now also on "Samsung Galaxy S5 Mini running 5.1.1" - with CardDav-Clients "davdroid" (a very good premium app, but also with other CardDav Apps

Possibility to filter by account

It would be very useful to be able to only display contacts from a certain address book in Nextcloud's UI.

In our setup, each user has his own address book plus access to a organization-wide address book (shared from a user created just for sharing organization-wide filed, appointments, contacts, etc.).
One of the use cases is to review contacts from the personal address book and move them to the company-wide because mobile devices that cannot distinguish between the two address books will just put contacts created on the device into the personal address book.

Currently we do this work using Thunderbird's address book with the SoGo connector. Both personal and org-wide address books are set up and they can be accessed independently and contacts moved around.


Want to back this issue? Post a bounty on it! We accept bounties via Bountysource.

Translation issue for 'Anniversary' in french

Steps to reproduce

  1. Use the contact app in french
  2. Create a new contact
  3. Add a new field: birtday ("Anniversaire" in french)

Expected behaviour

To have a single field "Anniversaire" corresponding to the birthday of the contact

Actual behaviour

There are two fields "Anniversaire", one for the birthday, one for another anniversary. But in french we only have one word for those two terms, "Anniversaire". It should correspond only to "birthday". The "Anniversary" field should be translated something else (see some proposition below).

Server configuration

Contacts version: 1.5.2

Fresh install

Translation proposition

Android translated the "Anniversary" field like this: "FΓͺte". That correspond to the name day.
But actually, I prefer the more generic translation of Microsoft in the windows 10 contacts app: "Autre date" that correspond to "Another date".

Are there some french guys that could give their opinion in there?
Otherwise if everyone agree I'll submit a pull request with "Autre date" instead of "Anniversaire" for the "Anniversary" field.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.