nextcloud / nextcloud/calendar

Reoccurring Events assume DTSTART Timezone and change DTEND Timezone

Open
#5,897 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug
Dominant language
JavaScript
Stars
1.2k
Forks
332
Avg merge
16h 13m
Merged PRs (30d)
137

Description

Steps to reproduce
  1. Create event starting in one timezone and ending in another.
    • TZs stored correctly (export or reopen edit to see)
    • Moving Event keeps TZs correct (export or reopen edit to see)
  2. Create new event or edit existing event to make it reoccurring (I tested daily/weekly)
    • Displayed TZ for start/end are both taken from DTSTART (export reveals ics stays correct/unchanged)
  3. Move reoccurring event (drag&drop single day or change start time in edit view)
    • Export reveals that the Timezone in DTEND has been overwritten with the TZ from DTSTART
Expected behavior

Timezones defined by DTSTART and DTEND in the ics should be treated separately

Actual behaviour

Timezone in DTEND is ignored when displaying/editing reoccurring events.
On an edit the timezone in DTEND is overwritten by the timezone set in DTSTART

Calendar app version

4.6.7

Empty fields
CalDAV-clients used

No response

Browser

No response

Client operating system

No response

Server operating system

No response

Web server

None

Database engine version

None

PHP engine version

None

Nextcloud version

No response

Updated from an older installed version or fresh install

Updated from an older version

List of activated apps

No response

Nextcloud configuration

No response

Web server error log

No response

Log file

No response

Browser log

No response

Additional info

Can try to add more info on request in case it's instance specific / can't be reproduced

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the issue with an event whose DTSTART and DTEND use different timezones, then trace the recurring-event display, edit, and move flows. Done means recurring events preserve the separate DTSTART and DTEND timezones in the interface and after export, including after an edit or move.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript
Domain
frontend
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.