Please select a group first, before you mention a user!

Infos:

  • Used Zammad version: 4.0.x
  • Used Zammad installation type: package
  • Operating system: Debian Buster
  • Browser + version: Chrome 91.0.4472.77 and Firefox 89.0

Expected behavior:

  • When I type @@ I get a list of users that I can mention.

Actual behavior:

  • When I try to mention someone I get a message that says “Please select a group first, before you mention a user!”.

  • I used to have multiple groups, but then I deactivated them, I still got the message.

  • I now have deleted all the groups, except the default one, and I can’t select a group, but it still displays the message.

  • I tried to update the Attribute in the ObjectManager to set the default group to users, but still the same behaviour.

ObjectManager::Attribute.find_by(name:“group_id”).update(data_option: {“default”=>“users”, “relation”=>“Group”, “relation_condition”=>{“access”=>“full”}, “nulloption”=>true, “multiple”=>false, “null”=>false, “translate”=>false, “only_shown_if_selectable”=>true, “permission”=>[“ticket.agent”, “ticket.customer”], “maxlength”=>255})

Here screenshot of my view and the message:

Steps to reproduce the behavior:

  • Perhaps create groups, add some users to them and then deactivate them. Then try to mention someone in a ticket.

If you reloaded and ensured you only have access to one group (which you obviously can’t touch / change via UI) then this would be a bug.

By reload do you mean restart the zammad service and the server itself? If so, then my answer is yes to both. Note: It isn’t a fresh install. I upgraded from Zammad 3.6.

I also added a field to the ticket object, so that I could get the option to update the scheme of the database. After updating it I restarted the service and in a second step the server, but the behaviour still remains.

Here’s my view of the webinterface:

Here’s my user with private information redacted. I’m only part of the group_ids 1:

irb(main):002:0> User.find_by(lastname: “xxx”)
=> #<User id: xxx, organization_id: xxx, login: “xxx”, firstname: “xxx”, lastname: “xxx”, email: “xxx”, image: “4556b477cdde2e9e262afc742dcd0342”, image_source: nil, web: “”, password: “xxx”, phone: “xxx”, fax: “”, mobile: “”, department: “”, street: “”, zip: “”, city: “”, country: “”, address: “”, vip: false, verified: true, active: true, note: “”, last_login: “2021-06-07 07:08:40”, source: nil, login_failed: 0, out_of_office: false, out_of_office_start_at: nil, out_of_office_end_at: nil, out_of_office_replacement_id: nil, preferences: {“notification_config”=>{“matrix”=>{“create”=>{“criteria”=>{“owned_by_me”=>true, “owned_by_nobody”=>true, “subscribed”=>true}, “channel”=>{“email”=>true, “online”=>true}}, “update”=>{“criteria”=>{“owned_by_me”=>true, “owned_by_nobody”=>true, “subscribed”=>true}, “channel”=>{“email”=>true, “online”=>true}}, “reminder_reached”=>{“criteria”=>{“owned_by_me”=>true, “subscribed”=>false}, “channel”=>{“email”=>true, “online”=>true}}, “escalation”=>{“criteria”=>{“owned_by_me”=>true, “subscribed”=>false}, “channel”=>{“email”=>true, “online”=>true}}}, “group_ids”=>[“1”]}, “locale”=>“de-de”, “intro”=>true, “tickets_closed”=>10, “tickets_open”=>1, “notification_sound”=>{“file”=>“Xylo.mp3”, “enabled”=>false}}, updated_by_id: 1, created_by_id: 1, created_at: “2021-02-11 14:05:50”, updated_at: “2021-06-07 09:34:13”>

Ok so I found out something. I don’t know if it’s intended to work like that, but for me the issue is resolved with that workaround.

When I use the mention function on a ticket that has already been created, then it works. Meaning, when I reply to a ticket I can select another user. When creating a new ticket, I can’t mention someone else, as I get the error, that I mentionned before.