Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

several problems with birthday without a year #161

Closed
tessus opened this issue Mar 12, 2017 · 16 comments · Fixed by #1248
Closed

several problems with birthday without a year #161

tessus opened this issue Mar 12, 2017 · 16 comments · Fixed by #1248
Labels
1. to develop Accepted and waiting to be taken care of bug Something isn't working low Low priority
Milestone

Comments

@tessus
Copy link

tessus commented Mar 12, 2017

Please note that I do not know, whether this is is a problem with the contacts app, the CardDaV core implementation, or a combination of both.

Steps to reproduce

  1. In the contacts app, try to enter a Birthday without a year
  2. Create a contact on your device without a year. Sync.
  3. Create a contact on the MacOSX Contacts app. Sync.

Expected behaviour

  1. The date picker should allow you to check a box omit year or you should be able to enter the Birthday without a year manually.
  2. The date should be synced without a year.
  3. The date should be synced without a year.

Actual behaviour

  1. I cannot enter a birthday without a year manually. The birthday is never saved in the database. The datepicker forces you choose a year.
  2. The birthday is missing from the VCARD on the server. Never shows up in the nextcloud contacts app.
BEGIN:VCARD
VERSION:4.0
PRODID:+//IDN bitfire.at//DAVdroid/1.4.0.3-ose vcard4android ez-vcard/0.10.
 1
UID:88e64a5b-c154-4d21-82f1-3800f9ff063b
FN:Birthday Without-Year
N:Without-Year;Birthday;;;
EMAIL;TYPE=home:no@birthday.com
REV:20170312T223956Z
END:VCARD
  1. The year 1604 is shown in the nextcloud contacts app.
BEGIN:VCARD
VERSION:3.0
PRODID:-//Apple Inc.//Mac OS X 10.11.6//EN
N:Without-Year-OSX;Birthday;;;
FN:Birthday Without-Year-OSX
EMAIL;type=INTERNET;type=HOME;type=pref:no@birthday.com
BDAY;X-APPLE-OMIT-YEAR=1604:1604-06-20
REV:2017-03-12T22:42:30Z
UID:00eefa1d-32d2-4a61-bd6f-e127c2e69024
END:VCARD

In all three cases the VCARD should contain the correct BDAY format for a birthday without a year. In the specifications for vcard 3.0 and 4.0, there are options to do so.

Server configuration

Operating system: Linux

Web server: Apache 2.4.25

Database: MySQL 5.6.25

PHP version: 5.6.30

Nextcloud version: 11.0.2

Contacts version: 1.5.3

Updated from an older Nextcloud or fresh install: updated: oc 8.2.9 -> nc 9.0.57 -> 10.0.4 -> 11.0.2

Signing status:

No errors have been found.

List of activated apps:

Enabled:
  - activity: 2.4.1
  - activitylog: 0.0.1
  - admin_audit: 1.1.0
  - announcementcenter: 3.0.0
  - apporder: 0.3.3
  - bookmarks: 0.9.1
  - calendar: 1.5.1
  - comments: 1.1.0
  - contacts: 1.5.3
  - dav: 1.1.1
  - direct_menu: 0.10.0
  - external: 1.2
  - federatedfilesharing: 1.1.1
  - federation: 1.1.1
  - files: 1.6.1
  - files_external: 1.1.2
  - files_markdown: 1.0.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
  - 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
  - systemtags: 1.1.3
  - tasks: 0.9.5
  - templateeditor: 0.2
  - theming: 1.1.1
  - twofactor_backupcodes: 1.0.0
  - updatenotification: 1.1.1
  - user_external: 0.4
  - workflowengine: 1.1.1
Disabled:
  - encryption
  - files_accesscontrol
  - files_automatedtagging
  - files_retention
  - survey_client
  - user_ldap
  - user_saml

The content of config/config.php:

{
    "system": {
        "instanceid": "oc2352d53521",
        "passwordsalt": "***REMOVED SENSITIVE VALUE***",
        "datadirectory": "\/data\/nextcloud\/data",
        "dbtype": "mysql",
        "version": "11.0.2.7",
        "installed": true,
        "forcessl": true,
        "loglevel": 2,
        "maintenance": false,
        "trusted_domains": [
            "cloud.evermeet.cx"
        ],
        "share_folder": "\/Shared",
        "dbname": "nextcloud",
        "dbhost": "localhost",
        "dbuser": "***REMOVED SENSITIVE VALUE***",
        "dbpassword": "***REMOVED SENSITIVE VALUE***",
        "logdateformat": "Y-m-d H:i:s O",
        "logtimezone": "Europe\/Vienna",
        "secret": "***REMOVED SENSITIVE VALUE***",
        "mail_smtpmode": "php",
        "mail_from_address": "evercloud",
        "mail_domain": "evermeet.cx",
        "mail_smtpsecure": "tls",
        "memcache.local": "\\OC\\Memcache\\Redis",
        "memcache.locking": "\\OC\\Memcache\\Redis",
        "redis": {
            "host": "\/data\/redis\/redis.sock",
            "port": 0,
            "timeout": 0
        },
        "appstore.experimental.enabled": true,
        "trashbin_retention_obligation": "auto",
        "updater.release.channel": "stable",
        "htaccess.RewriteBase": "\/",
        "overwrite.cli.url": "https:\/\/cloud.evermeet.cx",
        "auth.bruteforce.protection.enabled": false
    }
}

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 52, Chrome 57.0.2987.98

Operating system: Mac OSX 10.11.6

CardDAV-clients: DAVdroid 1.4.0.3-ose, OSX Contacts Sync (from the OS)

Logs

Web server error log

no errors (empty)

Nextcloud log (data/nextcloud.log)

no errors (empty)

Browser log

no errors (empty)

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

@skjnldsv skjnldsv added 1. to develop Accepted and waiting to be taken care of bug Something isn't working low Low priority good first issue Good for newcomers labels Mar 17, 2017
@norbusan
Copy link

norbusan commented Apr 4, 2017

Thanks for posting this issue which I realized recently, too. Would be nice to see year-less birthdays supported. Thanks

@tessus
Copy link
Author

tessus commented Apr 4, 2017

Several years back I posted this issue with owncloud...

I truly hope this will be implemented soon. All my birthdays w/o a year are gone and labelling this as priority low is wrong. This bug results in data loss.

@tessus
Copy link
Author

tessus commented Apr 10, 2017

@skjnldsv Can you please give this a higher priority? It results in data loss after all.

@Henni
Copy link
Member

Henni commented Apr 10, 2017

@tessus problems 2 and 3 sound to me like core issues with the CardDAV implementation as the Contacts app should never touch files which have just been synced from a different app.

@schiessle @rullzer @nickvergessen you seem to have worked on the DAV backend. Could you take a look? And should we create a server issue for this?

@rullzer
Copy link
Member

rullzer commented Apr 10, 2017

@Henni please do.

So a birthday without a year should look like --MMDD right? (https://tools.ietf.org/html/rfc6350#section-6.2.5)

Becaus the X-APPLE-OMIT-YEAR is not a standard as far as I know...

@tessus
Copy link
Author

tessus commented Apr 10, 2017

@rullzer afaik, yes. but I believe there are 2 different specs. v3 and v4 are different in that regard. at least that is what I remember.

true, the Apple thing is not a vcard standard. I was rather puzzled when I first saw that.

@tessus
Copy link
Author

tessus commented Apr 10, 2017

@Henni what shall I do about issue 2 and 3? somehow I believe all 3 are somehow related -> because the field is not recognized as a valid field on the server, it is dropped.

@Henni
Copy link
Member

Henni commented Apr 10, 2017

Problem 1 is a Frontend issue in the contacts app.
The other two look like back end issues and should be fixed in the server repository. Would you mind opening a separate issue in the server repo?

@tessus
Copy link
Author

tessus commented Oct 3, 2017

any update on this? it has been 6 months...

@tessus
Copy link
Author

tessus commented Oct 14, 2017

Hello everybody. Do you have any update on this?

@skjnldsv
Copy link
Member

Unfortunately it's not a priority here! :(
You can try posting a bounty on it to attract new devs (or motivate current ones) if you really want this. I'm adding the hacktoberfest label to see if new people are interested.

@tessus
Copy link
Author

tessus commented Oct 15, 2017

thanks, maybe the label helps. I just don't understand why it is not a priority.

IMO having the possility to add a birthday to a contact is one of the primary features. But one does not always know the year, so right now there's no way to enter a birthday (unless one makes one up). How does the current behaviour even make sense to anyone? If it doesn't, it should be a priority.

I can't be the only one who has this problem.

@skjnldsv
Copy link
Member

Because the app isn't perfect, and some issues are just more important. :/
#220 is clearly more a priority for example. Data loss is a serious issue.

@tessus
Copy link
Author

tessus commented Oct 16, 2017

I agree that it shouldn't be the top priority, but a priority. There's a difference.

Btw, the current situation causes data loss, too. Although this is more of a backend thing rather than the contacts app itself.

This needs to be tackled at the backend nextcloud/server#4287 and in the app.

@radoeka
Copy link

radoeka commented Oct 22, 2017

To be able for someone to work on the this, what is needed to get it solved (not that I'll get involved though).

Does comment #161 (comment) provide the desired solution? Is --MMDD or is ----MMDD what needs to be added?

@norbusan
Copy link

norbusan commented Sep 4, 2019

@skjnldsv Thanks a lot!

@skjnldsv skjnldsv modified the milestones: next minor, 3.1.4 Sep 4, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
1. to develop Accepted and waiting to be taken care of bug Something isn't working low Low priority
Projects
None yet
Development

Successfully merging a pull request may close this issue.

7 participants