Question about sync_external_user behavior in block_panopto_moodle310_2020121100
Hello,
I’m currently using the block_panopto_moodle310_2020121100
version in Moodle.
I have a question regarding the sync_external_user
function in /blocks/panopto/lib/panopto_user_soap_client.php
.
The function has the following comment:
* Syncs a user with all of the listed groups, the user will be removed from any unlisted groups
**
@param@param string $firstname user first name
*
@param@param string $lastname user last name
*
@param@param string $email user email address
*
@param@param array $externalgroupids array of group ids the user needs to be in
*
@param@param boolean $sendemailnotifications whether user gets emails from Panopto updates
I would like to clarify what this comment means.
- Does this mean that if a user is not included in the
$externalgroupids
, they will be removed from all existing groups?
For example, if a user is currently registered as a viewer in around 50 Moodle courses, and by mistake, I only pass one course group ID in$externalgroupids
, will the user automatically be removed from the other 49? - Does this mean the user will also be removed from other roles (e.g., creator or publisher) in the folder/content associated with those groups?
For example, if the user is a viewer in about 50 Moodle courses and I mistakenly pass only one course's viewer group in$externalgroupids
, will they be removed from creator or publisher roles in that folder/content?
will the user's other course group permissions (in the remaining 49 courses) stay unchanged?
As far as I understand, the sync_external_user
function in /blocks/panopto/lib/panopto_data.php
gathers all courses the user is enrolled in and creates a group array (viewer, creator) based on the user's role (teacher, student).
Then it calls the sync_external_user
function in /blocks/panopto/lib/panopto_user_soap_client.php
.
If interpretation (1) is correct,
Could you please let me know where in the code the user is removed from the other 49 course groups?
Thank you.
Answers
https://support.panopto.com/resource/APIDocumentation/Help/html/922f471b-b3e6-d46a-8157-b7a73fc607c1.htm
"Based on the above API, I have confirmed that it is number 1. Thank you."