nextcloud / calendar

📆 Calendar app for Nextcloud
https://apps.nextcloud.com/apps/calendar
GNU Affero General Public License v3.0
985 stars 241 forks source link

Add contact groups as attendees for an event [$50] #167

Open tcitworld opened 8 years ago

tcitworld commented 8 years ago

The participant event module should suggest contacts groups from the contacts app.

Related issues

tcitworld commented 8 years ago

Maybe linked to #163

georgehrke commented 7 years ago

I'm actually not sure if we can query for contact groups via the contacts php api.

Also, how to show if some users of a group have no e-mail address

tcitworld commented 7 years ago

Also, how to show if some users of a group have no e-mail address

Just don't show them. :-) I'll look if the groups are available.

maksemuz commented 5 years ago

I'd offer the following: 1 - use access groups, especially synced LDAP groups, not groups from contacts. You can parse LDAP groups with standard LDAP tools. 2 - if some participant account has no email, you can just add event to its calendar but do not send invitation by email.

pwFoo commented 5 years ago

Should groups expand to members / contacts and add the "person" to the event or just added as group of persons?

Expand the groups to users / contacts / persons would be flexible (add / remove single persons from event). Save group to event would add / remove users / contacts if groups modified (maybe not wanted for fix planned events).

georgehrke commented 5 years ago

Expand the groups to users / contacts / persons would be flexible (add / remove single persons from event).

This would be my choice for a first implementation. That should be fairly easy and doesn't require modifications to the Nextcloud server itself.

dieter-wilhelm commented 4 years ago

Added 50 € on Bountysource for this indespensible calendar feature. But for the sake of privacy there should be an option to hide the list of invitees!

Thanks for the calendar app.

flozi00 commented 4 years ago

Expand the groups to users / contacts / persons would be flexible (add / remove single persons from event).

This would be my choice for a first implementation. That should be fairly easy and doesn't require modifications to the Nextcloud server itself.

Any updates about implementing this feature as temporary solution ?

georgehrke commented 4 years ago

Nope, as always: This is a free-software project. Pull-requests are very much appreciated.

flozi00 commented 4 years ago

Where can I find the relevant code part ?

georgehrke commented 4 years ago

To implement this, you would have to alter the ContactsController: https://github.com/nextcloud/calendar/blob/master/lib/Controller/ContactController.php Preferably one endpoint that allows the lookup of groups and another endpoint that returns chunks of contacts in this group.

We have an InviteesListSearch component.

In the search method (findAttendees), start looking for groups. When the user selects a group, start loading the contacts of that group in the addAttendee method. Please load them in chunks of 50 to 100.

flozi00 commented 4 years ago

My PHP knowledge is too basic for that and never worked with vue before. I tried it two days without success, can you implement this feature please?

jakobroehrl commented 4 years ago

What do you think about adding the talk room participants as attendees? Similar function as sharing a file to a talk room

wiswedel commented 4 years ago

This discussion and the related issues that have been closed for being duplicates takes some wild directions in my opinion.

Some are talking about contact groups (from the Contacts app), some are talking about User groups (from the user management / LDAP). Even Talk rooms have been brought up. Additionally, Circles should not be forgotten since they're also a way of grouping people plus you can already share a calendar with a circle, but not an event.

tl;dr: We have the request to share with

  1. Contact groups (from address books in the Contacts app)
  2. User groups (from the user management, including LDAP groups)
  3. Circles
  4. Talk rooms (i.e. their members)

If you, @tcitworld (as issue initiator) agree with me, would you mind changing the issue title?

pierreozoux commented 4 years ago

This is a feature we'd be interested to. And we could even fincance it, if somebody tells me how much he'd need to develop it (my email is in github if you want to contact me and make me an offer, for us it would be about User groups)

@wiswedel, you are right, it is currently too broad. I think there is a initiative in Nc to rationalize this "grouping" thing.

micheledimeo commented 3 years ago

This is a feature we'd be interested to. And we could even fincance it, if somebody tells me how much he'd need to develop it (my email is in github if you want to contact me and make me an offer, for us it would be about User groups)

@wiswedel, you are right, it is currently too broad. I think there is a initiative in Nc to rationalize this "grouping" thing.

I am interested in contributing to the financing of the issue.

julian70400 commented 3 years ago

Any news about this ?

m4us1ne commented 3 years ago

we are interested in a solution that includes circles. should we post a bounty on this issue or create another issue directly mentioning circles? @micheledimeo and @pierreozoux : bountysource was a good solution for supporting an issue and worked for us in the past.

micheledimeo commented 3 years ago

@m4us1ne , I felt that my offer was too low and then bountysource is at the centre of too much controversy for my liking. Since this issue was included in the "approved improvements" of calendar, I'm waiting for version 2.2 to use this feature. In the meantime I'm using a calendar external to NC.

tcitworld commented 3 years ago

tl;dr: We have the request to share with

  1. Contact groups (from address books in the Contacts app)
  2. User groups (from the user management, including LDAP groups)
  3. Circles
  4. Talk rooms (i.e. their members)

If you, @tcitworld (as issue initiator) agree with me, would you mind changing the issue title?

Done and splitted the issue into several (see the updated first message).

DJaeger commented 3 years ago

Bounty-URL: https://www.bountysource.com/issues/39038806-add-contact-groups-as-attendees-for-an-event

pierreozoux commented 3 years ago

Looks like bountysource is no longer the default. https://help.nextcloud.com/t/dont-use-bountysource-anymore/84943

@tcitworld do you plan to develop this feature? If yes, you could as well donate to https://framasoft.org/en/ (he is part of this association)

julian70400 commented 3 years ago

Hello, any news ?

This feature is absoluelty essential and is a basic for every groupware. How can we help ? What is actually blocking this feature ?

jpubb commented 3 years ago

I'm actually not sure if we can query for contact groups via the contacts php api.

Also, how to show if some users of a group have no e-mail address

This is what people want to use...

image

People are simply trying to replicate MS Exchange Distribution Lists functionality here (used for decades). That is:

System Account users > groups of users > email/calendar

Every big enterprise with MS Exchange has some kind of lists set up that email/calendaring can access so they can email communications to _DL_ALL_INTERNAL_EMPLOYEEES and _DL_ALL_EXTERNAL_CONTRACTORS

Nobody wants to have to onesie twosie manually add recips, especially when you're emailing "all". The nextcloud calendar app already ignores atendee results where the nextcloud user does not have an email field populated, right? So we're at least able to get a list of users and see their email field. Ok, that's a start.

Why not just do something like:

Option 1:

Keep it simple. Admins will know what to do from there (add an email address for the user, or remove the user from the group)

Option 2:

Option 3: Worst option, but I think people will take what they can get here because manually adding people sucks to the point of nothing nice to say. If you're saying you have no access to read Nextcloud groups. Then would it be possible for this option 3 to just create a Calendar Distribution List - CDL within Calendar app that can be maintained? Worst option, because everyone who wants "groups for calendar" already has these department/group lists created once in Nextcloud User Groups. But if it's the only option, we'll all be "happy" to maintain 2 lists I'm sure.

jpubb commented 3 years ago

I'd offer the following: 1 - use access groups, especially synced LDAP groups, not groups from contacts. You can parse LDAP groups with standard LDAP tools. > 2 - if some participant account has no email, you can just add event to its calendar but do not send invitation by email.

That's a good idea. I'd also include a notification for the user so they know it was added. But that's all extra code. If I were the app author/maintainer, I'd just "no soup for you" if someone in the group doesn't have an email address for version 1 of this. "Email adress for group member $username is missing. Stopping."

jpubb commented 3 years ago

Nope, as always: This is a free-software project. Pull-requests are very much appreciated.

Btw, if anyone is interested in DIY instant bounties but you don't know how to code, you can always post the project for a fixed price at some place like Upwork, and make sending a pull request to the maintainer (in addition to sending the patch & instructions to you immediately) as part of the deliverable.

barbuslex commented 3 years ago

+1 need +++

msharp1 commented 2 years ago

Hi @tcitworld, So, if I understand correctly you (framasoft?) don't aim to work on this feature anytime soon even with a bounty ?

tcitworld commented 2 years ago

I never committed to work on it, the bounty label was just dropped because Nextcloud doesn't use Bountysource anymore.

DFC1990 commented 1 year ago

Will this function still be implemented?

mightynico commented 1 year ago

Will this function still be implemented?

+1

julian70400 commented 1 year ago

Same here.. don't understand what's wrong with this feature.