Skip to content

Releases: vigoren/foundryvtt-simple-calendar

v1.3.39 - Season Changes, QoL Improvements, API Changes and Bug Fixing

09 Sep 04:10
9ad67f1
Compare
Choose a tag to compare

Season Changes

  • Updated the Starting Month and Starting Day fields to be one field "Starting Date" that uses the built-in Date Selector to choose a month and day.
  • Added the ability to set the Sunrise and Sunset times for the first day of the season:
    • The setting of the times uses the built-in Time Selector to ensure that only times that work with your calendar can be chosen and that the sunset is always after the sunrise.
  • Sunrise and sunset times slowly change as days progress to meet the sunrise/sunset time of the next season. This is to add a smooth transition between seasons sunrise and sunset times.
  • Added buttons to the time control to advance to the next dawn, midday, dusk or midnight.
    • Dawn will advance to the next sunrise.
    • Midday will advance to the next middle of the day. The midday is calculated as the exact middle of the day, for most calendars this will be 12:00pm but for calendars with different hours per day it will calculate correctly.
    • Dusk will advance to the next sunset.
    • Midnight will advance to the next beginning of the day, time 00:00.
  • Set up default sunrise/sunset times for predefined calendars. Where information was available used that otherwise they will default to a 6am sunrise and a 6pm sunset.

Quality of Life Improvements

  • Added a new time setting to specify how long a round of combat lasts in seconds. This is to address the issue where the clock did not advance as combat rounds passed when using systems that do not increment time during combat.
  • Removed the Import/Export dialog for about-time and Calendar/Weather that appears on the first load of a world. This dialog was causing issues for some users and is no longer needed as these options can be reached through the calendar configuration dialog.

API Changes

  • Functions that return season information (SimpleCalendar.api.getCurrentSeason, SimpleCalendar.api.getAllSeasons and SimpleCalendar.api.timstampToDate) now includes the sunrise and sunset times for the season, as set through the new season options. The times are represented as seconds passed for that day eg. 3600 would be 1:00am in a Gregorian calendar.
  • The function SimpleCalendar.api.timestampToDate has 2 new properties, sunrise and sunset. These values represent the timestamps for the sunrise and sunset times parsed from the passed in timestamp.
  • Fixed a bug with the SimpleCalendar.api.timestampToDate function where the display time was always returning as the current time not the time from the passed in timestamp.

Bug Fixes

  • Fixed a bug with seasons always showing the last season for all, or most months. Seasons were expecting to be in order, now order does not matter.
  • Improvements to the built-in date/time selector to ensure a better user experience.
  • Fixed a bug where setting a different hours per day could cause the clock to not advance days properly.

Foundry 0.8.9

  • Made sure that Simple Calendar works as expected with Foundry version 0.8.9!

Translations

  • I am happy to say that Simple Calendar has been translated to French thanks to JDR-Ninja with input from Julien Stébenne!
  • Updates to the Spanish translation thanks to lozalojo!

v1.3.28 - API Changes

12 Aug 00:18
a2681e0
Compare
Choose a tag to compare
  • Updated the DateTimeChange hook to have a new property in its returned value called "date". This property contains the same contents as the API timestampToDate function with the current timestamp passed in. This is to have the exact same data available in the hook as the API function. As a result some existing properties will be removed as stated below:
    • Future Breaking: The property "year" will be removed when Foundry v10 Stable is released. Please use the year information from the new "date" property.
    • Future Breaking: The property "month" will be removed when Foundry v10 Stable is released. Please use the month information from the new "date" property.
    • Future Breaking: The property "day" will be removed when Foundry v10 Stable is released. Please use the day information from the new "date" property.
    • Future Breaking: The property "time" will be removed when Foundry v10 Stable is released. Please use the time information from the new "date" property.
    • Future Breaking: The property "season" will be removed when Foundry v10 Stable is released. Please use the season information from the new "date" property.
  • Updated the Clock Start/Stop hook so that it uses the same function as the API clockStatus function. No change to returned values, this is to keep consistency between those functions.
  • Updated the PrimaryGM hook so that it uses the same function as the API isPrimaryGM function. No change to returned values, this is to keep consistency between those functions.
  • Changed when the DateTimeChange hook is fired to include every tick of the clock.
  • Added the "isLeapYear" property to the Date Object returned by timeStampToDate API function that indicates if the date falls on a leap year or not.

v1.3.23 - Note Reminders, API Changes, Bug Fixing and Translations

07 Aug 07:42
1405436
Compare
Choose a tag to compare

Note Reminders

GMs and players can select notes to be reminded of when the current calendar date and time read the date and time of the note.

  • When viewing or adding a new note there is a "Remind Me!" button in the top right of the dialog. Clicking that will register you to be reminded about this note (the button will change green when registered).
  • In the note list a green bell icon will appear next to the note(s) that you will be reminded of on that day.
  • Days that have reminder notes for the player will have an additional blue indicator showing the number of notes they wanted to be reminded of on that day.
  • When the current date changes to a day with a note reminder, all users who have registered to be reminded will receive a whispered chat message with the date, title of the note and the content of the note.
    • For notes with a set time they will be sent when the current time equals or is greater than the notes start time.
    • When a user first logs in any notes on the current day will be whispered to them.
    • These whispers are only sent once so if you move the day forward, whispers will be sent out then if you move back to that date whispers will not be re-sent.
      • This setting on persists per session, so if you re-load the page the whispers will be resent.
      • This is set up so that if the time is advanced past the starting time note reminders will still be sent but will not be continually sent as time changes.
    • If you skip a day with reminders those days reminders are not sent.
      • This is to prevent advancing the clock by a year and getting a year's worth of reminders all in one go.

Quality of Life Improvements

  • Added the Forbidden Lands calendar as a predefined calendar.

API Changes

  • Added a new enum SimpleCalendar.api.Calendars. This enum contains a list of all available predefined calendars in Simple Calendar.
  • Added a new enum SimpleCalendar.api.LeapYearRules. This enum contains a list of all rules that can be used when calculating leap years.
  • Added a new enum SimpleCalendar.api.MoonIcons. This enum contains a list of all available moon icons.
  • Added a new enum SimpleCalendar.api.MoonYearResetOptions. This is an enum that contains the options for when a moons first new moon year should be reset.
  • Added a new enum SimpleCalendar.api.YearNamingRules. This enum contains a list of all rules that can be used when determining what name a given year gets.
  • Added a new function SimpleCalendar.api.configureCalendar. This function will set up the calendar configuration to be one of the predefined calendars (if an option from the new Calendars enum is passed in) or can take in a JSON object to configure the calendar in a custom way. The JSON object will look the same as the contents of a configuration export file.

Bug Fixes

  • Updated the styling around the note list to work better on systems with darker backgrounds.
  • Changed the rules of determining the initial size of the note dialog to have a minimum height and a maximum width.
  • Fixed a bug where calendars would get a scrollbar in Firefox when a moon icon was visible on the last week of that month.

Translations

  • Simple Calendar has been translated to Portuguese thanks to castanhocorreia, thank you!
  • Simple Calendar has been translated to Czech thanks to robertjunek, thank you!
  • Updates to the German translation thanks to Fallayn!
  • Updates to the Korean translation thanks to drdwing!

v1.3.8 - Bug Fixes

16 Jul 03:39
2118d3c
Compare
Choose a tag to compare

Quality of Life Improvements

  • Changed the moon icons to a new set of SVG's. This will make the creation of Calendar themes easier in the future.

Bug Fixes

  • Fixed a bug for the DSA5 system where the save configuration button would float in the middle of the content.
  • Fixed a bug where linked items (Journals, Tables, Macros, etc...) in notes were not linking properly.
  • Fixed a bug where you were unable to set a note end time to be less than the start time for notes that spanned multiple days.
  • Fixed a bug when converting seconds to a date where months with 0 days for that year were not skipped.
  • Fixed a bug when calculating the seconds for a date for calendars with a "Leap Month" (A month with 0 days normally but days during a leap year) that had more than one day. The calendar would incorrectly advance by the number of days in that leap month.
  • Fixed a bug where months were unable to have 0 leap year days.
  • Fixed a bug where the moon calculation could occasionally say every day of a month was the same moon phase.

v1.3.0 - Note Improvements

14 Jul 06:43
b690cad
Compare
Choose a tag to compare

Notes

This update is mainly around notes and improving the experience around adding, editing and viewing them. The notable improvements/changes to notes are:

Functional Changes

  • Notes can now span more than 1 day.
  • Notes can now have a start and end time associated with them.
  • Added a built-in Date/Time selector. This is a new input type that will show a calendar where you can choose a day, or range of days for the note a well as add a start/end time for the note.
  • Notes can now be ordered on a day. By default, notes are ordered by starting time but can be adjusted for a custom order.

New Configuration Options

  • Added a new setting to allow players to order notes on a day or not.
  • Added the ability to specify note categories with unique labels and colors. These can be applied to a note to help distinguish different types of notes.

Visual Changes

  • Refreshed the look of the note list.
    • Added an indicator to the note list for GMs if the note is visible to the players or not.
    • Added a label to the note list for the time the note takes place at.
    • Added a label to the note list for who wrote the note.
    • Any custom note categories associated with the note will also be shown.
  • Changed the dialog's behaviour so that it will attempt to size itself to fit the content of the note appropriately.

Quality of Life Changes

  • Added a button to the module settings list that will open Simple Calendars configuration window.
  • Changed the default "Show Clock" option so that new installs will show the clock right away. The clock can still be disabled by unchecking that option.
  • Changed the default for the "Game World Integration" from None to Mixed. This only affects new installs of the module.

API Changes

  • Fixed a bug with the API getCurrentSeason function where the last season would always be returned.
  • Additional information about the Season is returned for the api functions getCurrentSeason, getAllSeasons and timestampToDate:
    • startingMonth: The month index the season starts on.
    • startingDay: The day index of the starting month the season starts on.
  • Fixed a bug with the API function timestampPlusInterval where in PF2E systems the returned value would be ahead by 1 day.

Bug Fixes

  • Fixed a bug where the Moerills Expandable Markdown Editor would not load properly when adding/editing notes.
  • Fixed a bug where on new installs the default month and weekday names would not load correctly.
  • Added a temporary "fix" to help with the weirdness that happens when running the latest version of Calendar/Weather. This "fix" will go away once Calendar/Weather has finished their integration with Simple Calendar. Some things to note about the changes:
    • Any updates to the calendar structure (changing or months, season or moons) done within the Calendar/Weather interface will now require you to go into Simple Calendars configuration and re-import the calendar to have the changes reflected there.
    • I have run tests with PF2E worlds and everything should stay in sync with that systems world clock.
    • Calendar/Weather, about-time and Simple Calendar play better together but they will be their best when Calendar/Weather has finished its rewrite to properly utilize Simple Calendars API.
  • Fixed an issued with importing events from Calendar/Weather.
    • In some instances Calendar/Weather Events don't have their month saved properly, in these instances the month is set to the first month of the year.

Translations

v1.2.113 - API Changes

02 Jul 22:55
c1e6895
Compare
Choose a tag to compare
  • Updated the timestampToDate function's return values. The result now contains a display object that contains all the different display strings for the passed in timestamp.
  • Fixed a bug with the timestampToDate function where months with day offsets would return the incorrect day of the week for days in that month.
  • Fixed a bug with the timestampToDate function where the "showWeekdayHeadings" property would be incorrectly set.
  • Added a function SimpleCalendar.api.getCurrentSeason() that returns details about the season for the current date.
  • Added a function SimpleCalendar.api.getAllSeasons() that returns details for every configured season in Simple Calendar.
  • Fixed a bug when importing from Calendar/weather where the hours per day would end up being undefined.

v1.2.107 - Calendar Configuration Import/Export, API Changes, Bug Fixes

26 Jun 23:08
d2a7883
Compare
Choose a tag to compare

Import/Export

You can now export and import calendar configurations for Simple Calendar. Under the general settings tab in the configuration window there is an Import/Export section with these options:

  • Export Button: when clicked you will be prompted to download a json file that contains all of the configuration data.
  • Import Button/ File Selector: Next to the import button is a file selected where you choose the exported json file to import then click the import button for the contents to be set for the current calendar.

Important: This import and export is just for the calendar configuration, notes are not exported or imported through this process! Note exporting is planned, just not ready yet.

API Changes

  • Updated the timestampToDate function to return some additional information:
    • dayOffset: The number of days the months days are offset by.
    • dayDisplay: How the day is displayed, generally its number on the calendar.

Bug Fixes

  • Fixed a bug where months with day offsets set, the calculated timestamp would include the skipped days.
    • If you use calendars that have months with day offsets, you will need to "toggle" (move the day forward 1 then back) the date to update the timestamp properly.
  • Renamed the "Include Intercalary Month in Total Day Count" to "Include Intercalary Month in Day Calculations" to better explain what the setting actually does.

v1.2.103 - API Changes, Module Import/Export Changes and Bug Fixes

24 Jun 22:34
292555c
Compare
Choose a tag to compare

API Changes

  • The timestampToDate function now returns additional information about the date: year prefix, year postfix, the current season and if to show the weekday headings.
  • The calendar/weather import function has been temporarily exposed in the API to assist in the transition for calendar/weather from using about-time to using Simple Calendar. Once this transition has taken place, this functionality will be removed from the API.

Module Import/Export Changes

  • The calendar/weather export now saves the custom calendar setting directly rather than using about-times save function. This is to support the upcoming changes to about-time.
  • Fixed up the calendar/weather import so that it works better with the most recent version of Calendar/weather.
    • Important: Calendar/Weather and Simple Calendar calculate moon phases differently so imported moons will not match cycles exactly.
  • If the about time version is 1.0.0 or greater the "Export To about-time" option will not be available. This is because about-time will be using Simple Calendar as its calendar source so the export will not be needed.

Bug Fixes

  • Fixed a bug where months with day offsets would not advance the days correctly.

v1.2.97 - API Bug Fixes

16 Jun 06:21
437d7e0
Compare
Choose a tag to compare
  • Fixed a bug with the API function timestampPlusInterval where adding just a year would increment to the first day of the year not by the number of years.
  • Fixed a bug with the API function timestampPlusInterval where if very large values for the different intervals were passed in an error would be thrown

v1.2.95 - Translations & Foundry 0.8.7

15 Jun 18:01
5dc1df5
Compare
Choose a tag to compare
  • Ensured that Simple Calendar works in foundry version 0.8.7.
  • The addition of a Korean translation thanks to drdwing!