5include_once 
'./Services/Membership/classes/class.ilMembershipGUI.php';
 
   35        return $GLOBALS[
'DIC']->access()->filterUserIdsByRbacOrPositionOfCurrentUser(
 
   59        return $context_options;
 
   72        $table->setParticipants($participants);
 
   75        $this->tpl->setContent($table->getHTML());
 
   86        $ilAccess = 
$DIC[
'ilAccess'];
 
   88        $participants = (array) 
$_POST[
'participants'];
 
   90        if (!is_array($participants) or !count($participants)) {
 
   92            $this->ctrl->redirect($this, 
'participants');
 
   98            !$ilAccess->checkAccess(
'edit_permission', 
'', $this->getParentObject()->getRefId()) &&
 
   99            !$this->getMembersObject()->isAdmin(
$GLOBALS[
'DIC'][
'ilUser']->getId())
 
  101            foreach ($participants as $part) {
 
  104                    $this->ctrl->redirect($this, 
'participants');
 
  111            $this->ctrl->redirect($this, 
'participants');
 
  113            foreach ((array) 
$_POST[
"participants"] as $usr_id) {
 
  125        if (count((array) 
$_POST[
'refs'])) {
 
  126            foreach (
$_POST[
'refs'] as $usr_id => $usr_info) {
 
  127                foreach ((array) $usr_info as $course_ref_id => $tmp) {
 
  129                    $part->delete($usr_id);
 
  134        ilUtil::sendSuccess($this->lng->txt($this->getParentObject()->getType() . 
"_members_deleted"), 
true);
 
  135        $this->ctrl->redirect($this, 
"participants");
 
  152        $rbacsystem = 
$DIC[
'rbacsystem'];
 
  156            $ilErr->raiseError($this->lng->txt(
"msg_no_perm_read"), 
$ilErr->FATAL);
 
  159        if (!count($a_usr_ids)) {
 
  167        foreach ($a_usr_ids as $user_id) {
 
  185                    if (in_array($a_type, $this->
getParentObject()->getLocalCourseRoles(
true))) {
 
  187                        $this->
getMembersObject()->updateRoleAssignments($user_id, (array) $a_type);
 
  202            ilUtil::sendSuccess($this->lng->txt(
"crs_users_added"), 
true);
 
  203            $this->ctrl->redirect($this, 
'participants');
 
  216        $ilAccess = 
$DIC[
'ilAccess'];
 
  219        $rbacadmin = 
$DIC[
'rbacadmin'];
 
  221        $visible_members = (array) 
$_POST[
'visible_member_ids'];
 
  222        $passed = (array) 
$_POST[
'passed'];
 
  223        $blocked = (array) 
$_POST[
'blocked'];
 
  224        $contact = (array) 
$_POST[
'contact'];
 
  225        $notification = (array) 
$_POST[
'notification'];
 
  227        foreach ($visible_members as $member_id) {
 
  228            if ($ilAccess->checkAccess(
"grade", 
"", $this->getParentObject()->getRefId())) {
 
  229                $this->
getMembersObject()->updatePassed($member_id, in_array($member_id, $passed), 
true);
 
  236                $this->
getMembersObject()->updateNotification($member_id, in_array($member_id, $notification));
 
  237                $this->
getMembersObject()->updateContact($member_id, in_array($member_id, $contact));
 
  240                if ($this->
getMembersObject()->isBlocked($member_id) && !in_array($member_id, $blocked)) {
 
  244                if (!$this->
getMembersObject()->isBlocked($member_id) && in_array($member_id, $blocked)) {
 
  251                $this->
getMembersObject()->updateBlocked($member_id, in_array($member_id, $blocked));
 
  256        ilUtil::sendSuccess($this->lng->txt(
'settings_saved'), 
true);
 
  257        $this->ctrl->redirect($this, 
'participants');
 
  266        include_once 
'./Services/Tracking/classes/class.ilObjUserTracking.php';
 
  270        if ($show_tracking) {
 
  271            include_once(
'./Services/Object/classes/class.ilObjectLP.php');
 
  273            $show_tracking = $olp->isActive();
 
  276        include_once(
'./Services/Object/classes/class.ilObjectActivation.php');
 
  282        include_once 
'./Modules/Course/classes/class.ilCourseParticipantsTableGUI.php';
 
  299        include_once 
'./Modules/Course/classes/class.ilCourseEditParticipantsTableGUI.php';
 
  301        $table->setTitle($this->lng->txt($this->getParentObject()->getType() . 
'_header_edit_members'));
 
  312        $this->tpl->addBlockFile(
'ADM_CONTENT', 
'adm_content', 
'tpl.crs_edit_members.html', 
'Modules/Course');
 
  333        return $this->
getParentGUI()->updateLPFromStatus($a_member_id, $a_passed);
 
  342        include_once 
'./Modules/Course/classes/class.ilCourseWaitingList.php';
 
  352        return $this->
getParentGUI()->object->getDefaultMemberRole();
 
  361        return $this->
getParentGUI()->deliverCertificateObject();
 
  372        $ilAccess = 
$DIC[
'ilAccess'];
 
  375        $lng->loadLanguageModule(
'trac');
 
  378        include_once(
'./Services/PrivacySecurity/classes/class.ilPrivacySettings.php');
 
  381        if ($privacy->enabledCourseAccessTimes()) {
 
  382            include_once(
'./Services/Tracking/classes/class.ilLearningProgress.php');
 
  386        include_once 
'./Services/Tracking/classes/class.ilObjUserTracking.php';
 
  389        if ($show_tracking) {
 
  390            include_once(
'./Services/Object/classes/class.ilObjectLP.php');
 
  392            $show_tracking = $olp->isActive();
 
  395        if ($show_tracking) {
 
  396            include_once 
'Services/Tracking/classes/class.ilLPStatusWrapper.php';
 
  405        include_once(
'Modules/Course/classes/Export/class.ilCourseUserData.php');
 
  409        foreach ($a_members as $member_id) {
 
  413                include_once 
'./Services/User/classes/class.ilUserDefinedData.php';
 
  415                foreach ($udf_data->getAll() as $field => $value) {
 
  416                    list(
$f, $field_id) = explode(
'_', $field);
 
  417                    $print_member[$member_id][
'udf_' . $field_id] = (string) $value;
 
  420                foreach ((array) $cdfs[$member_id] as $cdf_field => $cdf_value) {
 
  421                    $print_member[$member_id][
'cdf_' . $cdf_field] = (string) $cdf_value;
 
  424                foreach ((array) $profile_data[$member_id] as $field => $value) {
 
  425                    $print_member[$member_id][$field] = $value;
 
  428                $print_member[$member_id][
'login'] = $tmp_obj->getLogin();
 
  429                $print_member[$member_id][
'name'] = $tmp_obj->getLastname() . 
', ' . $tmp_obj->getFirstname();
 
  432                    $print_member[$member_id][
'role'] = $this->lng->txt(
"il_crs_admin");
 
  434                    $print_member[$member_id][
'role'] = $this->lng->txt(
"il_crs_tutor");
 
  436                    $print_member[$member_id][
'role'] = $this->lng->txt(
"il_crs_member");
 
  440                        $print_member[$member_id][
'status'] = $this->lng->txt(
"crs_notify");
 
  442                        $print_member[$member_id][
'status'] = $this->lng->txt(
"crs_no_notify");
 
  446                        $print_member[$member_id][
'status'] = $this->lng->txt(
"crs_blocked");
 
  448                        $print_member[$member_id][
'status'] = $this->lng->txt(
"crs_unblocked");
 
  453                    $print_member[$member_id][
'passed'] = $this->
getMembersObject()->hasPassed($member_id) ?
 
  454                                      $this->lng->txt(
'crs_member_passed') :
 
  455                                      $this->lng->txt(
'crs_member_not_passed');
 
  457                if ($privacy->enabledCourseAccessTimes()) {
 
  458                    if (isset($progress[$member_id][
'ts']) and $progress[$member_id][
'ts']) {
 
  463                        $print_member[$member_id][
'access'] = $this->lng->txt(
'no_date');
 
  466                if ($show_tracking) {
 
  467                    if (in_array($member_id, $completed)) {
 
  469                    } elseif (in_array($member_id, $in_progress)) {
 
  471                    } elseif (in_array($member_id, 
$failed)) {
 
  488        if (is_array($this->member_data) && array_key_exists($a_user_id, $this->member_data)) {
 
  489            return $this->member_data[$a_user_id];
 
if(!defined('PATH_SEPARATOR')) $GLOBALS['_PEAR_default_error_mode']
An exception for terminatinating execution or to throw for unit testing.
const IL_CRS_ADMIN
Base class for course and group participants.
static _lookupContainerSetting($a_id, $a_keyword, $a_default_value=null)
Lookup a container setting.
deleteParticipantsWithLinkedCourses()
readMemberData(array $usr_ids, array $columns, bool $skip_names=false)
showDeleteParticipantsConfirmationWithLinkedCourses($participants)
Show deletion confirmation with linked courses.
getAttendanceListUserData($a_user_id)
Callback from attendance list.
getMailContextOptions()
array
filterUserIdsByRbacOrPositionOfCurrentUser($a_user_ids)
Filter user ids by access.
getPrintMemberData($a_members)
Get print member data.
initParticipantTemplate()
Init participant view template.
deliverCertificate()
Deliver certificate for an user on the member list.
initParticipantTableGUI()
updateParticipantsStatus()
=> save button in member table
initEditParticipantTableGUI(array $participants)
init edit participants table gui
initWaitingList()
init waiting list
getLocalTypeRole($a_translation=false)
assignMembers(array $a_usr_ids, $a_type)
callback from repository search gui @global ilRbacSystem $rbacsystem
updateLPFromStatus($a_member_id, $a_passed)
Update lp from status.
Class ilCourseReferencePathInfo.
static _getValuesByObjId($a_obj_id)
Get values by obj_id (for all users)
static formatDate(ilDateTime $date, $a_skip_day=false, $a_include_wd=false, $include_seconds=false)
Format a date @access public.
static setUseRelativeDates($a_status)
set use relative dates
@classDescription Date and time handling
static _lookupCompletedForObject($a_obj_id, $a_user_ids=null)
Get completed users for object.
static _lookupFailedForObject($a_obj_id, $a_user_ids=null)
Get failed users for object.
static _lookupInProgressForObject($a_obj_id, $a_user_ids=null)
Get in progress users for object.
const LP_STATUS_COMPLETED
const LP_STATUS_NOT_ATTEMPTED
const LP_STATUS_IN_PROGRESS
static _lookupProgressByObjId($a_obj_id)
lookup progress for a specific object
static getLogger($a_component_id)
Get component logger.
Class ilMailMemberCourseRoles.
const PROP_CONTEXT_SUBJECT_PREFIX
Base class for member tab content.
getParentGUI()
Get parent gui.
checkRbacOrPositionAccessBool($a_rbac_perm, $a_pos_perm, $a_ref_id=0)
Check if rbac or position access is granted.
getParentObject()
Get parent object.
getMembersObject()
Get member object.
const STATUS_DETERMINATION_LP
static _enabledLearningProgress()
check wether learing progress is enabled or not
static _enabledUserRelatedData()
check wether user related tracking is enabled or not
static _readUsersProfileData($a_user_ids)
STATIC METHOD get user data of selected users.
static hasTimings($a_ref_id)
Check if there is any active timing (in subtree)
static getInstanceByObjId($a_obj_id, $stop_on_error=true)
get an instance of an Ilias object by object id
static getInstance($a_obj_id)
const EXTERNAL_MAIL_PREFIX
static getInstance($a_ref_id)
Get instance by ref_id.
static _getInstance()
Get instance of ilPrivacySettings.
static sortArray( $array, $a_array_sortby, $a_array_sortorder=0, $a_numeric=false, $a_keep_keys=false)
sortArray
static sendQuestion($a_info="", $a_keep=false)
Send Question to Screen.
static sendFailure($a_info="", $a_keep=false)
Send Failure Message to Screen.