Version: 4.7 (using KDE 4.7.0) OS: Linux I received an invitation as an ICS file and in order to not cofuse everybody by clicking on "accept" inside the email and KDE PIM sending out obscure emails, I exported the ICS file, and imported it manually in KOrganizer. After adding the appointment, however, I had to move it to the proper time (see my other bug on TZ handling) and KOrganizer happily sent around emails to the entire audience. However, my settings in "group planning" are all *unchecked*, e.g., "use group ware communication" and "send a copy of the appointment email" (German translation, may not fit 100%) However, there was an SMTP server noted. Reproducible: Didn't try Steps to Reproduce: Receive an (Outlook) event invitation, export the ICS file, import it, merge into existing calendar. Move the appointment (to correct time). Actual Results: KOrganizer sends out an email, containing the entire original invite. Expected Results: Korganizer < 4.7.0 used to ask whether I wanted to send out a "synchronisation" message, given that I was not the organiser. KOrganiser 4.7 should honour my setting of not using groupware communication and not just send out embarrassing emails without my consent.
Just inspecting the email that got send: it is not the original email, but rather is a text rending of the appointment and the attached ICS file.
Digging through the code, and using GDB, I confirmed the following flow of code (on 4.7.0): bool IncidenceChanger::Private::performChange ( Change *change ) at calendarsupport/incidencechanger.cpp:99 CalendarSupport::IncidenceChanger::Private::changeIncidenceFinished (this=0xc81910,) at calendarsupport/incidencechanger.cpp:233 CalendarSupport::InvitationHandler::sendIncidenceModifiedMessage (this=0x7fffffffcfc0, method=KCalCore::iTIPRequest, incidence=..., attendeeStatusChanged=false) at calendarsupport/next/invitationhandler.cpp:374 Interestingly, IncidenceChanger::Private::performChange (calendarsupport/incidencechanger.cpp) contains all the proper logic: it checks KCalPrefs::instance()->mUseGroupwareCommunication and then displays a message box, if I am not the organiser of an event, via InvitationHandler::handleIncidenceAboutToBeModified (calendarsupport/next/invitationhandler.cpp) However, it seems the logic has been duplicated and split to handle asynchronous Akonadi interaction through new Akonadi::ItemModifyJob(...) and then void IncidenceChanger::Private::changeIncidenceFinished( KJob *j ). That function does not check for the mUseGroupwareCommunication flag, nor does it present the user with a dialog box when he is not the organiser. Through handler.sendIncidenceModifiedMessage(...) which eventually ends up calling ... } else { return d->sentInvitation( KMessageBox::Yes, incidence, method ); } sending out invitations, although the user is not the organiser nor has group- communication enabled and never has a chance to intercept. Adding an additional check for the groupware flag and asking the user in changeIncidenceFinished once again would b straight-forward. Any preference?
This has been caused by commit d75ba75aea478f754b12f4a1c245dab2d4eb50d9 Author: Sergio Martins <iamsergio@gmail.com> Date: Sun Mar 13 21:10:36 2011 +0000 and commit d5b228631ecf89df4b9e3c9e3c4e8d866e72a11d Author: Sergio Martins <iamsergio@gmail.com> Date: Sun Mar 13 21:04:35 2011 +0000
Adding Sergio, since his changes seem to introduce the regression.
Git commit 441d81e5aaa3eb5d47586afc1a368a13ce557789 by Sergio Martins. Committed on 09/11/2011 at 21:45. Pushed by smartins into branch 'master'. Don't send iTip messages if groupware is turned off. Debugged by Stephan Diestelhorst. BUG: 282346 M +15 -14 calendarsupport/incidencechanger.cpp http://commits.kde.org/kdepim/441d81e5aaa3eb5d47586afc1a368a13ce557789
Git commit 1ecd90656cdd4a1774ad30c56baed5fccafeb244 by Sergio Martins. Committed on 09/11/2011 at 21:45. Pushed by smartins into branch 'KDE/4.7'. Don't send iTip messages if groupware is turned off. Debugged by Stephan Diestelhorst. BUG: 282346 (cherry picked from commit 441d81e5aaa3eb5d47586afc1a368a13ce557789) Conflicts: calendarsupport/incidencechanger.cpp M +15 -12 calendarsupport/incidencechanger.cpp http://commits.kde.org/kdepim/1ecd90656cdd4a1774ad30c56baed5fccafeb244