Welcome to CiviCRM StackExchange Daniel!
The CiviCRM relationships functionality will work perfectly for your use case scenario -
You can have different relationship types (roles) and they can be linked between individuals and organisations. A contact can also have multiple ...
Actually you'll need to start with a CiviCRM Relationships View.
If you start with a view of CiviCRM Cases, you may get bad data if they have multiple open case types with different case managers.
So create a new view of CiviCRM Relationships, then in the advanced section add the Case ID relationship, then add the Contact A (the client) relationship and ...
In CiviCRM versions 4.5 and above, you can add case roles by navigating to Administer -> CiviCase -> Case Types and clicking "Add Role"
Note that roles and relationships are not precisely the same. A case client can have any relationships, but within the case, only the roles you have defined will be available.
Smart Groups could be a pain in the ass in CiviCRM. They are a powerful feature but when it does not work it is hard to get it working again.
There are some alternatives to smart groups. The SQL Tasks Extension or CiviRules can add contacts to a regular group based on a Query (with SQL Tasks) or on a Trigger (with CiviRules). You can then setup this regular ...
You say you want to change 'Edit Contact' - but if you mean, you want a way for a logged in user to be able to be directed 'somewhere' to update their details, then here is one non-coding solution suitable for just a couple of different roles that i hope others can improve on. (The more I wrote this out the more convoluted it seemed
- one ...
IMHO it seems like you really need a consultant for this stuff. Hopefully an organization of your size (400 chapters with an unknown # of people per chatper) has budget for help.
But let me offer a few bits of advice:
the "corresponded Organisation Group" as you put it CAN be a smart group, thus people (not admins) can self-select their own groups when ...
I don't know if this feature will be released one day but I would find it pretty useful.
You could select a role list base on an event type or template.
However this extension just came out a few days after my question, and it could help if anyone is in the same situation.
You can try following:
Go to Administer-> Customize data and Screens-> Navigation Menu and select Mailing.
From mailing option, do right click and edit on 'From Email Address'.
In the next window, you can choose permission to that particular menu under 'Mailing'.
After choosing permission for menu, assign that permission to the role you want.
With this ...
We have found that this is a bug.
If you're a developer the function which isn't working properly is in: -
Line 199 was checking whether $relationshipTypeXML->manager was set, as opposed to whether $relationshipTypeXML->manager == 1
I write a first approach extension to achieve this question. Needs more test and go further but I think it's a good start. We already have the extension running in our production environment.
Feel free to try it.
So it turned out that the "Contact edit" capability was turned on for the "Authenticated User" role. One needs to remember that Drupal "ORs" the permissions for logged in users in any custom role with the permissions in the "Authenticated User" role.
Always check the defaults before blaming the software!
I believe the only way at this time to do this at this time without using (Drupal) Webform is to write custom code.
For custom code, there are a wide variety of approaches - you can write an extension that uses hook_civicrm_buildForm (or hook_civicrm_alterContent or hook_civicrm_alterTemplateFile, but IMO these are less elegant). Or you can put a .extra....
I did testing today on this and from what I can tell, when setting a second user role in WP CiviCRM will read the security settings from both roles. It is optimistic security in that if one of the user roles has 'administer CiviCRM' and the other does not, the user can administer CiviCRM.
This is a good idea - but one that's not currently implemented in CiviCRM. If you have access to a developer you could write an extension to achieve this. You might also submit it to the CiviCRM paid issue queue.
What you've found is that the error appears whenever your sync runsTwo things:
This is a PHP notice, which is a very low-importance message to receive. Nothing is breaking; this is just something to say that something mildly improper is going on in the code. Notices like this are actually something you should suppress on a production site: in the Drupal ...
We often find that for most Drupal users who don't really 'need' access to civicrm, it is less painful for them to 'access' the data they should be able to get to via a Drupal View (which can be set with Role-based permissions). If you are not familiar with Drupal Views for Civi Contacts or CiviMemberships you may find something in our 'treasure trove' aka ...
Try using webform_civicrm!
make different webforms exposing different contact fields
you can do that for multiple contacts (i.e. make it into a batch update screen!)
set the webform permissions such that different roles can submit the different forms
One solution would be to rejig your roles so that the outcome you need can be delivered by letting Members have one Role and people in the Group have another Role. It seems like a 'cumulative' approach to permissions and roles could work for you.
From what I understand CiviMember Role sync and CiviGroup Role sync auto-mapping - are evaluated at the time the User logs in.
Login -> is user in a specific Group -> ah yes -> so assign role x
So there really is no need to hit the sync button - I don't think; all is well on login.
In case anyone needs this we ended up doing this with a simple drupal rule -
Event = Content is viewed
Conditions = AND user has role authenticated user, NOT user has role current member
Action = Show a message "your membership has expired", repeat message = false
WordPress does not require that a role be given to users who only visit your site (e.g. to read posts) so long as it is public - roles are only required when logging in. However, for a WordPress client using the MailChimp sync, we found that we needed to create an Anonymous User role with the webhook permissions assigned - once you do this, pasting the ...
Welcome to SE! The place to start is in the documentation about roles and permissions at https://docs.civicrm.org/user/en/latest/initial-set-up/permissions-and-access-control/
It does depend on the CMS as Jaap says, but they are all covered here. You will see who is assigned to which role in the CMS (Its under Users in WordPress) but then you need to ...
You can go one better than syncing to roles using the CiviCRM Groups Sync plugin instead. It keeps Contacts in CiviCRM Groups in sync with WordPress Users in groups provided by the Groups plugin. That way you are free to adjust your users' roles without affecting the sets of permissions that they have which are related to CiviCRM or member-only content.
I don't think you can do this in a platform-independent way since "admin role" means different things in different CMS's. What you can do that is platform-independent is check specific CiviCRM permissions, e.g. CRM_Core_Permission::check('administer CiviCRM', $contact_id)
You can leave out $contact_id to check for the currently logged-in user.