Skip to content

fix: allways allow duplicaiton - #8689

Open
SebastianKrupinski wants to merge 1 commit into
mainfrom
fix/always-allow-duplication
Open

fix: allways allow duplicaiton#8689
SebastianKrupinski wants to merge 1 commit into
mainfrom
fix/always-allow-duplication

Conversation

@SebastianKrupinski

Copy link
Copy Markdown
Contributor

Summary

  • Resolves: Allow to copy events #8608
  • Removed the isReadOnly (User should be able to duplicate any event, this is no different then exporting then importing)
  • Removed the canCreateRecurrenceException (This is used to control changing recurring events, so it makes no sense on duplication)

Signed-off-by: SebastianKrupinski <krupinskis05@gmail.com>
@codecov

codecov Bot commented Aug 6, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

Comment thread src/views/EditSimple.vue
</template>
{{ $t('calendar', 'Export') }}
</ActionLink>
<ActionButton v-if="!canCreateRecurrenceException && !isReadOnly" @click="duplicateEvent()">

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

issue: copying events with recurrence doesn't work

It is unexpected input for copyCalendarObjectInstanceIntoEventComponent.
See #8606

[ERROR] calendar: [Vue error]: Error in component event handler: Error: Illegal argument: Event objects has recurrence related property RRULE. 

@odzhychko odzhychko Aug 6, 2026

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The reason, I didn't just implemented it in #8606 was, that I didn't know what the expected behavior should be.

Like, should we:

  • Copy one occurrence?
  • Copy the whole series?
  • Copy the occurrence and all future instances?
  • Or have some UI for the user to choose?

Comment thread src/views/EditFull.vue
{{ $t('calendar', 'Export') }}
</NcActionLink>
<NcActionButton v-if="!canCreateRecurrenceException && !isReadOnly && !isNew" @click="duplicateEvent()">
<NcActionButton v-if="!isNew" @click="duplicateEvent()">

@odzhychko odzhychko Aug 6, 2026

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

issue: This now makes the button also available when user is not logged in.
e.g. apps/calendar/embed/... or public links

Comment thread src/views/EditFull.vue
{{ $t('calendar', 'Export') }}
</NcActionLink>
<NcActionButton v-if="!canCreateRecurrenceException && !isReadOnly && !isNew" @click="duplicateEvent()">
<NcActionButton v-if="!isNew" @click="duplicateEvent()">

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

issue: Doesn't work with shared calendars, because after duplicating the target calendar is still the original calendar and cannot be changed.

Screencast.From.2026-08-06.08-12-50.mp4

@odzhychko odzhychko added Feature: Editor enhancement New feature request labels Aug 6, 2026
@odzhychko

Copy link
Copy Markdown
Contributor

Found #8421 that implements duplication for read-only events.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

3. to review Waiting for reviews enhancement New feature request Feature: Editor

Projects

Status: 🏗️ In progress

Development

Successfully merging this pull request may close these issues.

Allow to copy events

2 participants