Git Product home page Git Product logo

Comments (5)

auricgoldfinger avatar auricgoldfinger commented on August 21, 2024

I think this is some change that isn't finished yet, but which is already pushed to the develop branch :-)
The reason why I bumped into this, is because I was planning to integrate other dates as well. Anniversaries for one, but also custom dates. Not to celebrate at all - I'm keeping dates of deceive as well - but I'd like to get reminded about those dates as well to be able to ease the pain on the anniversary date of a lost one.

So what I see is that you especially introduced a birthday class which I'd like to convert to a more general "ContactEvent" ;-) (I know, you came from that one)
But since the birthdays are fetched in BirthdayDatabaseRefresher, in order to require only one iteration over the contacts, I'd like to retrieve other dates there as well - meaning it isn't only a BirthdayDatabaseRefresher...

from memento-calendar.

alexstyl avatar alexstyl commented on August 21, 2024

How did that one slipped through? πŸ˜…

That is indeed be the problem as you mention. I'll work and get it done asap

The Birthday class is not new. It is used to represent the date of Birth rather than the celebration (the name is indeed misleading). The is in fact a ContactEvent class which represents the actual celebration of an event. For Birthdays you need both the contact's year of birth and their upcoming birthday so that you can calculate the age.

As you mentioned the BirthdayDatabaseRefresher could be changed so that it fetches and handles all events from the device rather than just contacts.

I really like the feature(s) you mentioned, and once again thank you so much for your contributions to the project :)

from memento-calendar.

alexstyl avatar alexstyl commented on August 21, 2024

I am working on a PR that reduces all the different variations of date classes down to one, in an attempt to simplify things.

In my PR I have removed Birthday, AnnualDate, ParsedDate and renamed DayDate to Date which is the single date class to handle dates, even if that has a year or not. No more weird Date interfaces and multiple date classes. Also, since the Birthday class is getting ditched, the date of birth will be represented as an Optional<Date> field in the Contact class.

I hope this clear out things a lot. I am planning of pushing this branch later in the day

from memento-calendar.

auricgoldfinger avatar auricgoldfinger commented on August 21, 2024

Great! I guess the Optional<Date> will probably have to become a List<Optional<Date>> if we want to keep multiple dates for a contact. But I'm going to wait for the update anyway. No rush, I'll be busy on other stuff anyway (daytime job, family, you know ;-) )

from memento-calendar.

alexstyl avatar alexstyl commented on August 21, 2024

It is probably even simpler than that :)
There is no place of the app that cases the Birthdays of any contact right now. All data are stored in the database and queried from there when needed. The Birthday object was not the celebration event itself, but a date of when the contact was born, so that we can get their age for the running year.

Anyhow, I'm closing this as it was fixed as part of #55

from memento-calendar.

Related Issues (20)

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.