When a user creates a (calendar) meeting for another users behalf (eg a PA), an invite is send - it should not. #5350

Open
opened 2026-02-20 17:00:01 -05:00 by deekerman · 2 comments
Owner

Originally created by @jobst on GitHub (Nov 5, 2025).

Issue

We regulary create calendar entries for other users on their behalf, much like a PA entering some MEETING/CALL into another persons/users calendar to save time.

No matter what we do

  • remove all reminders
  • untick "email all invitees"
  • under scheduling remove OWN account (the user creating it)
  • press SAVE
  • press SAVE AND SEND INVITES
  • small form
  • big form

an INVITE is still send to the person the meeting/call/calendarentry was created FOR.

If ANYTHING a NOTE should be send to the person to say "calendar entry was created", but not with an attached ICS.

Possible Fix

I checked the code, there's a lot of javascript involved not just simple button clicks.
I got lost a bit ... so no fix from me.

Steps to Reproduce the Issue

1. log in as a user
2. create a meeting for another user
3. untick everything and delete yourself below scheduling
4. save the event (do not click save and send invites)
5. an invite is still saend to the person - it should not

Context

It's rather annoying.

The calendar entry SHOULD be created but a NOTE only should be send saying "this user has created a meeting/call for you".

Version

7.14.4

What browser are you currently using?

Chrome

Browser Version

It's NOT appicable

Environment Information

m 8.0.41, p 8.2.29

Operating System and Version

alamlinux 8.X

Originally created by @jobst on GitHub (Nov 5, 2025). ### Issue We regulary create calendar entries for other users on their behalf, much like a PA entering some MEETING/CALL into another persons/users calendar to save time. No matter what we do - remove all reminders - untick "email all invitees" - under scheduling remove OWN account (the user creating it) - press SAVE - press SAVE AND SEND INVITES - small form - big form an INVITE is still send to the person the meeting/call/calendarentry was created FOR. If ANYTHING a NOTE should be send to the person to say "calendar entry was created", but not with an attached ICS. ### Possible Fix I checked the code, there's a lot of javascript involved not just simple button clicks. I got lost a bit ... so no fix from me. ### Steps to Reproduce the Issue ```bash 1. log in as a user 2. create a meeting for another user 3. untick everything and delete yourself below scheduling 4. save the event (do not click save and send invites) 5. an invite is still saend to the person - it should not ``` ### Context It's rather annoying. The calendar entry SHOULD be created but a NOTE only should be send saying "this user has created a meeting/call for you". ### Version 7.14.4 ### What browser are you currently using? Chrome ### Browser Version It's NOT appicable ### Environment Information m 8.0.41, p 8.2.29 ### Operating System and Version alamlinux 8.X
Author
Owner

@jobst commented on GitHub (Nov 5, 2025):

Adding some extra information.
The problem exists in "modules/Meetings/Meeting.php" on line 197

 $check_notify =(!empty($_REQUEST['send_invites']) && $_REQUEST['send_invites'] == '1') ? true : false;
        if (empty($_REQUEST['send_invites'])) {
            if (!empty($this->id)) {
                $old_record = BeanFactory::newBean('Meetings');
                $old_record->retrieve($this->id);
                $old_assigned_user_id = $old_record->assigned_user_id;
            }
            if ((empty($this->id) && isset($_REQUEST['assigned_user_id']) && !empty($_REQUEST['assigned_user_id']) && $GLOBALS['current_user']->id != $_REQUEST['assigned_user_id']) || (isset($old_assigned_user_id) && !empty($old_assigned_user_id) && isset($_REQUEST['assigned_user_id']) && !empty($_REQUEST['assigned_user_id']) && $old_assigned_user_id != $_REQUEST['assigned_user_id'])) {
                $this->special_notification = true;
                $check_notify = true;
                if (isset($_REQUEST['assigned_user_name'])) {
                    $this->new_assigned_user_name = $_REQUEST['assigned_user_name'];
                }
            }
        }

So basically when below is true which is part of the long if statement above

$GLOBALS['current_user']->id != $_REQUEST['assigned_user_id'])

then the person RECEIVING the calendar entry (assigned_user_id) will also receive a notification which has an ICS attached.

While I understand the notification there should be NOTHING clickable in the email.

@jobst commented on GitHub (Nov 5, 2025): Adding some extra information. The problem exists in "modules/Meetings/Meeting.php" on line 197 ``` $check_notify =(!empty($_REQUEST['send_invites']) && $_REQUEST['send_invites'] == '1') ? true : false; if (empty($_REQUEST['send_invites'])) { if (!empty($this->id)) { $old_record = BeanFactory::newBean('Meetings'); $old_record->retrieve($this->id); $old_assigned_user_id = $old_record->assigned_user_id; } if ((empty($this->id) && isset($_REQUEST['assigned_user_id']) && !empty($_REQUEST['assigned_user_id']) && $GLOBALS['current_user']->id != $_REQUEST['assigned_user_id']) || (isset($old_assigned_user_id) && !empty($old_assigned_user_id) && isset($_REQUEST['assigned_user_id']) && !empty($_REQUEST['assigned_user_id']) && $old_assigned_user_id != $_REQUEST['assigned_user_id'])) { $this->special_notification = true; $check_notify = true; if (isset($_REQUEST['assigned_user_name'])) { $this->new_assigned_user_name = $_REQUEST['assigned_user_name']; } } } ``` So basically when below is true which is part of the long if statement above ``` $GLOBALS['current_user']->id != $_REQUEST['assigned_user_id']) ``` then the person RECEIVING the calendar entry (assigned_user_id) will also receive a notification which has an ICS attached. While I understand the notification there should be NOTHING clickable in the email.
Author
Owner

@evolvomind commented on GitHub (Feb 19, 2026):

Hi, @johnM2401
May I work on this issue?

@evolvomind commented on GitHub (Feb 19, 2026): Hi, @johnM2401 May I work on this issue?
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/SuiteCRM-SuiteCRM#5350
No description provided.