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
ask whether to edit a single occurrence or all occurrences #454
Conversation
@georgehrke, thanks for your PR! By analyzing the history of the files in this pull request, we identified @jbtbnl, @raghunayyar and @skjnldsv to be potential reviewers. |
<div> | ||
<form class="events" ng-submit=""> | ||
<fieldset class="events--fieldset"> | ||
<h2><?php p($l->t('Do you want to change only this or this and all future occurrences?')); ?></h2> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What about 'Do you want to change this only or this and all future occurrences'?
Think the 'this or this', is a little confusing when reading it fast.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
good point, let's change that :)
I updated my calendar-app to this pr, but there is no question. Neither after drag&drop nor when you click on the event and save changes. Is this PR WIP? |
@slideup-benni Yes, see the 2 - developing tag |
3c4cdaf
to
4d1e432
Compare
4d1e432
to
e7a5c63
Compare
b651e79
to
d15a464
Compare
Signed-off-by: Georg Ehrke <developer@georgehrke.com>
Signed-off-by: Georg Ehrke <developer@georgehrke.com>
d15a464
to
7e56a3c
Compare
Thanks for finally releasing the alpha @georgehrke ! Editing a single event seems to work, but the dialog does not appear when dragging an event - instead the entire series is moved without asking, which seems counter-intuitive. To move a single event, one has to open the editor dialog for it. |
Yes, it only works for the editor as of now. But the way its implemented it should be rather easy to reuse the same code for drag & drop, but one step after the other :) |
Okay, i think i've hit a couple of bugs :) Issue 1
vevents attached - the exception's DTSTART and DTEND are saved correctly, but apparently ignored. Issue 2 |
Thx for testing! Especially issue 2 is confusing me, should have been fixed by #754 already. I will look into it :) |
const fcEvent = FcEvent(iface, singleVEvent, dtstart, dtend); | ||
const dtstart = context.convertTz(rawDtstart, timezone.jCal); | ||
const dtend = context.convertTz(rawDtend, timezone.jCal); | ||
const fcEvent = FcEvent(iface, vevent, dtstart, dtend, { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is supposed to be const fcEvent = FcEvent(iface, singleVEvent, dtstart, dtend, {
instead of const fcEvent = FcEvent(iface, vevent, dtstart, dtend);
Mistake while rebasing
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
When this is fixed, Issue 2 of @a14a should be fixed
The solution for issue 1 should be pretty straight forward:
|
Hi, for now it is just working for editing, which seems to work pretty good for me. Another "problem" is with recurring events made by other software like Thunderbird. If I make a series in Thunderbird with the recurrence let's say every third Wednesday and click on it in the Nextcloud calendar, I got asked if I want to open All, only this or this and future, but inside the event there is just "Die Wiederholungsregel dieses Ereignisses wird noch nicht unterstützt." (German, in english something like "The rule for this repeating event ist not yet implemented). Will this be a problem for future releases, as I sometimes need such events and until now created them one by one, or is it just a problem for now? Nevertheless, thanks for this alpha which seems to fix some parts of the calendar I hardly missed for a long time (years). Well done!! Greets, Jürgen |
That's actually supposed to work. Was it an existing event or did you create the event in Nextcloud just for testing?
Yes, that's related to #10 :) |
OK, got it. It was an existing recurring event which didn't work. Just made a new recurring event and tried to delete one out of the series and no problem. Seems that I have to reenter some of my events, but thats no problem. Maybe it is an event which I created outside of the calendar app with Thunderbird oder Davdroid and there was something wrong. I even tried o create an repeating event in Thunderbird and then deleted one out of the series in the calendar without problem, so all is good. For the second part thats not that big problem. Until now I had to create single events for such events so there is no change for me and I can live with that. Maybe I will create weekly events and then delete those who are "out of the row" via webif and all is good for now. :-) Thanks a lot. |
@ZZMajor Is there any chance you can share that old event with me? This feature should obviously work on any recurring event, no matter whether its an old or a new event. |
Finally got around today to give this a try. Unfortunately I cannot report much on recurring events, because of some odd error:
The browser developer tools showed that (some?) data for the corresponding "REPORT" request was loaded and I could not spot any difference there to the other calendars. Stopped nginx, php-fpm, mysql; replaced app with previous version, started everything, went back to the browser, reloaded - et voilà - everything back to normal: the problematic calendar showed up just fine. Tried the whole process once again: same problem. Then back again to the previous app version and everything working fine again. Browser console is overflowing with data in both cases. Only notable (to me) difference is that 1.6.2-ALPHA additionally showed ad if (iterator.complete) {
lastFcEvent.recurrenceDetails.lastOccurrence = true;
} Hope that helps in tracking down the problem. |
One more bug. Obvious but I should mention it: Database looks fine, might be caching issue in JS/PHP? |
To Issue 1 of @a14a : |
@georgehrke Sorry, I deleted that event totally and created a new series in the calendar directly. Since then no problem with it, but the old one is gone, no backup. |
I just downloaded it, and added a new event, made it repeat 5 times. Then I realised that I had set the ending time and wanted to change it. So I did - on the question I chose "This and all in the future", I believe (sorry...) and changed the edning time, after that the dialog whether this, all or all in the future persists on the page. It just doesn't go away. there may be a need to add a cancel button... Edit: I couldn't reproduce the problem, so maybe it was just an initial problem caused by some cached stuff or so. |
Hey guys. I was looking for the mentioned function on the web, found this pull and tried it. Not very successfully. I expected the bug, that you can't delete one out of some dates. But after syncing the calendar with a smartphone, the (not) deleted entries were gone on the Android Phone. Strange stuff. At Nextcloud, it's still there. May the modification is correct, but the handling of multiple occurances from the app/nextcloud-core is maybe wrong? In Addition: How could your pull be able to modify single/all occurances when the NC-core can't interpret the rule correctly? |
The prompt to modify the event should be shown when the user clicks on update not when the editor is opened as they may not know at the time of opening if they want to change all or just one event. The user may just want to view the details of the event so having to click this prompt each time is not ideal. |
I can confirm. I just tested and I was thankful for this essential functionality being added. Just I find it really uncomfortable that every time I want to preview a repeating event I have to face the dialog. |
This doesn't seem to be working anymore after updating to the latest NC release. I've tried replacing the calendar with these files again and nothing. When I click "This Only" and try to delete it, the event is still there. Making changes to the event name or time still works as it had. |
I have found it is much better to prompt the user before calling updateEvent and then if the user selects to save the event as a single instance to create the recurrence-id there and update the event. This way the user is only prompted when saving and not when opening the event in the editor. |
Any news on this one? |
isn't this covered by #7 ? |
Is this compatible with Nextcloud 15? |
I will close because this pull-request is against Calendar v1 (angular), which will no longer receive new features. In #926, when clicking an event it won't open the first occurrence but properly open the occurrence you clicked. Instead of being asked upfront, you can first modify the event and will be asked on saving whether to edit this or this and all future events. |
fixes #7