diff options
Diffstat (limited to 'lib/models/InstituteMember.class.php')
| -rw-r--r-- | lib/models/InstituteMember.class.php | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/lib/models/InstituteMember.class.php b/lib/models/InstituteMember.class.php index a501c61..d7d7daa 100644 --- a/lib/models/InstituteMember.class.php +++ b/lib/models/InstituteMember.class.php @@ -85,6 +85,21 @@ class InstituteMember extends SimpleORMap implements PrivacyObject if ($institute) { $institute->status_groups->removeUser($user_id, true); + + AutoInsert::instance()->saveUser($user_id, $member->inst_perms, 'institute', + $member->institut_id); + } + }; + + $config['registered_callbacks']['after_create'][] = function ($member) { + AutoInsert::instance()->saveUser($member->user_id, $member->inst_perms, 'institute', + $member->institut_id); + }; + + $config['registered_callbacks']['before_update'][] = function ($member) { + if ($member->isFieldDirty('inst_perms')) { + AutoInsert::instance()->saveUser($member->user_id, $member->inst_perms, 'institute', + $member->institut_id); } }; |
