ILIAS  trunk Revision v11.0_alpha-1715-g7fc467680fb
All Data Structures Namespaces Files Functions Variables Enumerations Enumerator Modules Pages
ilObjCourse Class Reference

This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Learning e.V. More...

+ Inheritance diagram for ilObjCourse:
+ Collaboration diagram for ilObjCourse:

Public Member Functions

 __construct (int $a_id=0, bool $a_call_by_reference=true)
 
 getShowMembersExport ()
 
 setShowMembersExport (bool $a_mem_export)
 
 getRegistrationAccessCode ()
 
 setRegistrationAccessCode (string $a_code)
 
 isRegistrationAccessCodeEnabled ()
 
 enableRegistrationAccessCode (bool $a_status)
 
 getImportantInformation ()
 
 setImportantInformation (string $a_info)
 
 getSyllabus ()
 
 setSyllabus (string $a_syllabus)
 
 getTargetGroup ()
 
 setTargetGroup (?string $a_tg)
 
 getContactName ()
 
 setContactName (string $a_cn)
 
 getContactConsultation ()
 
 setContactConsultation (string $a_value)
 
 getContactPhone ()
 
 setContactPhone (string $a_value)
 
 getContactEmail ()
 
 setContactEmail (string $a_value)
 
 getContactResponsibility ()
 
 setContactResponsibility (string $a_value)
 
 getActivationUnlimitedStatus ()
 
 getActivationStart ()
 
 setActivationStart (int $a_value)
 
 getActivationEnd ()
 
 setActivationEnd (int $a_value)
 
 setActivationVisibility (bool $a_value)
 
 getActivationVisibility ()
 
 getSubscriptionLimitationType ()
 
 setSubscriptionLimitationType (int $a_type)
 
 getSubscriptionUnlimitedStatus ()
 
 getSubscriptionStart ()
 
 setSubscriptionStart (int $a_value)
 
 getSubscriptionEnd ()
 
 setSubscriptionEnd (int $a_value)
 
 getSubscriptionType ()
 
 setSubscriptionType (int $a_value)
 
 getSubscriptionPassword ()
 
 setSubscriptionPassword (string $a_value)
 
 enabledObjectiveView ()
 
 enabledWaitingList ()
 
 enableWaitingList (bool $a_status)
 
 inSubscriptionTime ()
 
 enableSessionLimit (int $a_status)
 
 isSessionLimitEnabled ()
 
 enableSubscriptionMembershipLimitation (bool $a_status)
 
 setNumberOfPreviousSessions (int $a_num)
 
 getNumberOfPreviousSessions ()
 
 setNumberOfNextSessions (int $a_num)
 
 getNumberOfNextSessions ()
 
 isSubscriptionMembershipLimited ()
 
 getSubscriptionMaxMembers ()
 
 setSubscriptionMaxMembers (int $a_value)
 
 getSubscriptionNotify ()
 
 setViewMode (int $a_mode)
 
 getViewMode ()
 
 setTimingMode (int $a_mode)
 
 getTimingMode ()
 
 setTutorialSupportBlockSettingValue (int $value)
 
 getTutorialSupportBlockSettingValue ()
 
 setAboStatus (bool $a_status)
 
 getAboStatus ()
 
 setShowMembers (bool $a_status)
 
 getShowMembers ()
 
 setMailToMembersType (int $a_type)
 
 getMailToMembersType ()
 
 getMessage ()
 
 setMessage (string $a_message)
 
 appendMessage (string $a_message)
 
 isActivated ()
 
 read ()
 
 create ($a_upload=false)
 
 setLatitude (string $a_latitude)
 
 getLatitude ()
 
 setLongitude (string $a_longitude)
 
 getLongitude ()
 
 setLocationZoom (int $a_locationzoom)
 
 getLocationZoom ()
 
 setEnableCourseMap (bool $a_enablemap)
 
 getEnableMap ()
 
 getEnableCourseMap ()
 
 setCoursePeriod (?ilDateTime $start=null, ?ilDateTime $end=null)
 
 getCourseStartTimeIndication ()
 
 getCourseStart ()
 
 getCourseEnd ()
 
 setCancellationEnd (?ilDate $a_value=null)
 
 getCancellationEnd ()
 
 setSubscriptionMinMembers (int $a_value)
 
 getSubscriptionMinMembers ()
 
 setWaitingListAutoFill (bool $a_value)
 
 hasWaitingListAutoFill ()
 
 cloneObject (int $a_target_id, int $a_copy_id=0, bool $a_omit_tree=false)
 Clone course (no member data) More...
 
 cloneDependencies (int $a_target_id, int $a_copy_id)
 
 cloneAutoGeneratedRoles (ilObject $new_obj)
 Clone automatic genrated roles (permissions and template permissions) More...
 
 validate ()
 
 validateInfoSettings ()
 
 hasContactData ()
 
 delete ()
 delete course and all related data More...
 
 update ()
 
 updateSettings ()
 
 cloneSettings (ilObject $new_obj)
 
 __createDefaultSettings ()
 
 __readSettings ()
 
 initWaitingList ()
 
 getMemberObject ()
 
 getMembersObject ()
 
 initDefaultRoles ()
 
 setParentRolePermissions (int $a_parent_ref)
 This method is called before "initDefaultRoles". More...
 
 __getCrsNonMemberTemplateId ()
 
 getLocalCourseRoles ($a_translate=false)
 get ALL local roles of course, also those created and defined afterwards only fetch data once from database. More...
 
 getDefaultCourseRoles (string $a_crs_id="")
 get default course roles, returns the defaultlike create roles il_crs_tutor, il_crs_admin and il_crs_member Returns the obj_ids of course specific roles in an associative array. More...
 
 __getLocalRoles ()
 
 __deleteSettings ()
 
 getDefaultMemberRole ()
 
 getDefaultTutorRole ()
 
 getDefaultAdminRole ()
 
 addAdditionalSubItemInformation (array &$object)
 
 register (int $a_user_id, int $a_role=ilCourseConstants::CRS_MEMBER, bool $a_force_registration=false)
 
 getAutoNotification ()
 Returns automatic notification status from $this->auto_notification. More...
 
 setAutoNotification (bool $value)
 Sets automatic notification status in $this->auto_notification, using given $status. More...
 
 setStatusDetermination (int $a_value)
 Set status determination mode. More...
 
 getStatusDetermination ()
 Get status determination mode. More...
 
 syncMembersStatusWithLP ()
 
 checkLPStatusSync (int $a_member_id)
 sync course status from lp as lp data is not deleted on course exit new members may already have lp completed More...
 
 getOrderType ()
 
 handleAutoFill ()
 Handle course auto fill. More...
 
- Public Member Functions inherited from ilContainer
 getTileSizes ()
 
 getObjectTranslation ()
 
 setObjectTranslation (?ilObjectTranslation $obj_trans)
 
 createContainerDirectory ()
 
 getContainerDirectory ()
 
 setHiddenFilesFound (bool $a_hiddenfilesfound)
 
 getHiddenFilesFound ()
 
 getStyleSheetId ()
 
 setStyleSheetId (int $a_style_id)
 
 setNewsTimeline (bool $a_val)
 
 getNewsTimeline ()
 
 setNewsTimelineAutoEntries (bool $a_val)
 
 getNewsTimelineAutoEntries ()
 
 setNewsTimelineLandingPage (bool $a_val)
 
 getNewsTimelineLandingPage ()
 
 isNewsTimelineEffective ()
 
 isNewsTimelineLandingPageEffective ()
 
 setNewsBlockActivated (bool $a_val)
 
 getNewsBlockActivated ()
 
 setUseNews (bool $a_val)
 
 getUseNews ()
 
 cloneDependencies (int $target_id, int $copy_id)
 Clone object dependencies (container sorting) More...
 
 cloneAllObject (string $session_id, string $client_id, string $new_type, int $ref_id, int $clone_source, array $options, bool $soap_call=false, int $a_submode=1)
 
 delete ()
 delete category and all related data More...
 
 getViewMode ()
 
 getOrderType ()
 
 setOrderType (int $a_value)
 
 isClassificationFilterActive ()
 
 filteredSubtree ()
 Note grp/crs currently allow to filter in their whole subtrees Catetories only their direct childs. More...
 
 getSubItems (bool $a_admin_panel_enabled=false, bool $a_include_side_block=false, int $a_get_single=0, ?ilContainerUserFilter $container_user_filter=null)
 
 gotItems ()
 
 addAdditionalSubItemInformation (array &$object)
 Add additional information to sub item, e.g. More...
 
 getGroupedObjTypes ()
 
 enablePageEditing ()
 
 create ()
 
 putInTree (int $parent_ref_id)
 
 update ()
 
 read ()
 
 readContainerSettings ()
 
 removeTranslations ()
 
 deleteTranslation (string $a_lang)
 
 addTranslation (string $a_title, string $a_desc, string $a_lang, string $a_lang_default)
 
- Public Member Functions inherited from ilObject
 getObjectProperties ()
 
 flushObjectProperties ()
 
 withReferences ()
 determines whether objects are referenced or not (got ref ids or not) More...
 
 processAutoRating ()
 
 read ()
 
 getId ()
 
 setId (int $id)
 
 setRefId (int $ref_id)
 
 getRefId ()
 
 getType ()
 
 setType (string $type)
 
 getPresentationTitle ()
 get presentation title Normally same as title Overwritten for sessions More...
 
 getTitle ()
 
 getUntranslatedTitle ()
 Get untranslated object title WebDAV needs to access the untranslated title of an object. More...
 
 setTitle (string $title)
 
 getDescription ()
 
 setDescription (string $description)
 
 getLongDescription ()
 get object long description (stored in object_description) More...
 
 getImportId ()
 
 setImportId (string $import_id)
 
 setOfflineStatus (bool $status)
 
 getOfflineStatus ()
 
 supportsOfflineHandling ()
 
 getOwner ()
 
 getOwnerName ()
 get full name of object owner More...
 
 setOwner (int $usr_id)
 
 getCreateDate ()
 Get create date in YYYY-MM-DD HH-MM-SS format. More...
 
 getLastUpdateDate ()
 Get last update date in YYYY-MM-DD HH-MM-SS format. More...
 
 create ()
 note: title, description and type should be set when this function is called More...
 
 update ()
 
 MDUpdateListener (string $element)
 Metadata update listener. More...
 
 createMetaData ()
 
 updateMetaData ()
 
 deleteMetaData ()
 
 updateOwner ()
 update owner of object in db More...
 
 putInTree (int $parent_ref_id)
 maybe this method should be in tree object!? More...
 
 setPermissions (int $parent_ref_id)
 
 setParentRolePermissions (int $parent_ref_id)
 Initialize the permissions of parent roles (local roles of categories, global roles...) This method is overwritten in e.g. More...
 
 createReference ()
 creates reference for object More...
 
 countReferences ()
 
 delete ()
 delete object or referenced object (in the case of a referenced object, object data is only deleted if last reference is deleted) This function removes an object entirely from system!! More...
 
 initDefaultRoles ()
 init default roles settings Purpose of this function is to create a local role folder and local roles, that are needed depending on the object type. More...
 
 applyDidacticTemplate (int $tpl_id)
 
 getXMLZip ()
 
 getHTMLDirectory ()
 
 appendCopyInfo (int $target_id, int $copy_id)
 Prepend Copy info if object with same name exists in that container. More...
 
 cloneDependencies (int $target_id, int $copy_id)
 Clone object dependencies. More...
 
 cloneMetaData (ilObject $target_obj)
 Copy meta data. More...
 
 selfOrParentWithRatingEnabled ()
 
 getPossibleSubObjects (bool $filter=true)
 get all possible sub objects of this type the object can decide which types of sub objects are possible jut in time overwrite if the decision distinguish from standard model More...
 
- Public Member Functions inherited from ilMembershipRegistrationCodes
 register (int $a_user_id)
 Register an user. More...
 

Static Public Member Functions

static lookupTutorialBlockSettingEabled (int $a_obj_id)
 
static lookupShowMembersEnabled (int $a_obj_id)
 
static _isSubscriptionNotificationEnabled (int $a_course_id)
 
static lookupTimingMode (int $a_obj_id)
 
static _lookupViewMode (int $a_id)
 
static _lookupAboStatus (int $a_id)
 
static _isActivated (int $a_obj_id)
 Is activated. More...
 
static _registrationEnabled (int $a_obj_id)
 Registration enabled? Method is in Access class, since it is needed by Access/ListGUI. More...
 
static lookupCourseNonMemberTemplatesId ()
 
static _deleteUser (int $a_usr_id)
 
static lookupObjectsByCode (string $a_code)
 
static mayLeave (int $a_course_id, int $a_user_id=0, &$a_date=null)
 
static findCoursesWithNotEnoughMembers ()
 
- Static Public Member Functions inherited from ilContainer
static _getContainerDirectory (int $a_id)
 
static _lookupContainerSetting (int $a_id, string $a_keyword, ?string $a_default_value=null)
 
static _hasContainerSetting (int $a_id, string $a_keyword)
 
static _writeContainerSetting (int $a_id, string $a_keyword, string $a_value)
 
static _getContainerSettings (int $a_id)
 
static _deleteContainerSettings (int $a_id, string $a_keyword="", bool $a_keyword_like=false)
 
static _exportContainerSettings (ilXmlWriter $a_xml, int $a_obj_id)
 
static getCompleteDescriptions (array $objects)
 overwrites description fields to long or short description in an assoc array keys needed (obj_id and description) More...
 
- Static Public Member Functions inherited from ilObject
static _lookupObjIdByImportId (string $import_id)
 Get (latest) object id for an import id. More...
 
static _lookupImportId (int $obj_id)
 
static _lookupOwnerName (int $owner_id)
 Lookup owner name for owner id. More...
 
static _getIdForImportId (string $import_id)
 
static _getAllReferences (int $id)
 get all reference ids for object ID More...
 
static _lookupTitle (int $obj_id)
 
static lookupOfflineStatus (int $obj_id)
 Lookup offline status using objectDataCache. More...
 
static _lookupOwner (int $obj_id)
 Lookup owner user ID for object ID. More...
 
static _getIdsForTitle (string $title, string $type='', bool $partial_match=false)
 
static _lookupDescription (int $obj_id)
 
static _lookupLastUpdate (int $obj_id, bool $formatted=false)
 
static _getLastUpdateOfObjects (array $obj_ids)
 
static _lookupObjId (int $ref_id)
 
static _setDeletedDate (int $ref_id, int $deleted_by)
 
static setDeletedDates (array $ref_ids, int $user_id)
 
static _resetDeletedDate (int $ref_id)
 
static _lookupDeletedDate (int $ref_id)
 
static _writeTitle (int $obj_id, string $title)
 write title to db (static) More...
 
static _writeDescription (int $obj_id, string $desc)
 write description to db (static) More...
 
static _writeImportId (int $obj_id, string $import_id)
 write import id to db (static) More...
 
static _lookupType (int $id, bool $reference=false)
 
static _isInTrash (int $ref_id)
 
static _hasUntrashedReference (int $obj_id)
 checks whether an object has at least one reference that is not in trash More...
 
static _lookupObjectId (int $ref_id)
 
static _getObjectsDataForType (string $type, bool $omit_trash=false)
 get all objects of a certain type More...
 
static _exists (int $id, bool $reference=false, ?string $type=null)
 checks if an object exists in object_data More...
 
static _getObjectsByType (string $obj_type="", ?int $owner=null)
 
static _prepareCloneSelection (array $ref_ids, string $new_type, bool $show_path=true)
 Prepare copy wizard object selection. More...
 
static getIconForType (string $type)
 
static _getIcon (int $obj_id=0, string $size="big", string $type="", bool $offline=false)
 Get icon for repository item. More...
 
static collectDeletionDependencies (array &$deps, int $ref_id, int $obj_id, string $type, int $depth=0)
 Collect deletion dependencies. More...
 
static getDeletionDependencies (int $obj_id)
 Get deletion dependencies. More...
 
static getLongDescriptions (array $obj_ids)
 
static getAllOwnedRepositoryObjects (int $user_id)
 
static fixMissingTitles ($type, array &$obj_title_map)
 Try to fix missing object titles. More...
 
static _lookupCreationDate (int $obj_id)
 
static _getObjectTypeIdByTitle (string $type, ?\ilDBInterface $ilDB=null)
 

Data Fields

const CAL_REG_START = 1
 
const CAL_REG_END = 2
 
const CAL_ACTIVATION_START = 3
 
const CAL_ACTIVATION_END = 4
 
const CAL_COURSE_START = 5
 
const CAL_COURSE_END = 6
 
const CAL_COURSE_TIMING_START = 7
 
const CAL_COURSE_TIMING_END = 8
 
const STATUS_DETERMINATION_LP = 1
 
const STATUS_DETERMINATION_MANUAL = 2
 
- Data Fields inherited from ilContainer
const VIEW_SESSIONS = 0
 
const VIEW_OBJECTIVE = 1
 
const VIEW_TIMING = 2
 
const VIEW_ARCHIVE = 3
 
const VIEW_SIMPLE = 4
 
const VIEW_BY_TYPE = 5
 
const VIEW_INHERIT = 6
 
const VIEW_DEFAULT = self::VIEW_BY_TYPE
 
const SORT_TITLE = 0
 
const SORT_MANUAL = 1
 
const SORT_ACTIVATION = 2
 
const SORT_INHERIT = 3
 
const SORT_CREATION = 4
 
const SORT_DIRECTION_ASC = 0
 
const SORT_DIRECTION_DESC = 1
 
const SORT_NEW_ITEMS_POSITION_TOP = 0
 
const SORT_NEW_ITEMS_POSITION_BOTTOM = 1
 
const SORT_NEW_ITEMS_ORDER_TITLE = 0
 
const SORT_NEW_ITEMS_ORDER_CREATION = 1
 
const SORT_NEW_ITEMS_ORDER_ACTIVATION = 2
 
const TILE_NORMAL = 0
 
const TILE_SMALL = 1
 
const TILE_LARGE = 2
 
const TILE_EXTRA_LARGE = 3
 
const TILE_FULL = 4
 
array $items = []
 
- Data Fields inherited from ilObject
const TITLE_LENGTH = 255
 
const DESC_LENGTH = 128
 
const LONG_DESC_LENGTH = 4000
 
const TABLE_OBJECT_DATA = "object_data"
 
array $objectList
 
string $untranslatedTitle
 

Protected Member Functions

 toggleCourseStartTimeIndication (bool $time_indication)
 
 setCourseStart (?ilDateTime $a_value=null)
 
 setCourseEnd (?ilDateTime $a_value=null)
 
 initCourseMemberObject ()
 
 initCourseMembersObject ()
 
 doMDUpdateListener (string $a_element)
 
 prepareAppointments (string $a_mode='create')
 Prepare calendar appointments. More...
 
- Protected Member Functions inherited from ilContainer
 getInitialSubitems ()
 
 applyContainerUserFilter (array $objects, ?ilContainerUserFilter $container_user_filter=null)
 
- Protected Member Functions inherited from ilObject
 doMDUpdateListener (string $a_element)
 
 beforeMDUpdateListener (string $a_element)
 
 doCreateMetaData ()
 
 beforeCreateMetaData ()
 
 doUpdateMetaData ()
 
 beforeUpdateMetaData ()
 
 doDeleteMetaData ()
 
 beforeDeleteMetaData ()
 
 handleAutoRating ()
 
 hasAutoRating ()
 

Private Attributes

string $contact_consultation = ''
 
string $contact_phone = ''
 
string $contact_email = ''
 
string $contact_name = ''
 
string $contact_responsibility = ''
 
int $subscription_limitation_type = 0
 
int $subscription_start = 0
 
int $subscription_end = 0
 
int $subscription_type = 0
 
string $subscription_password = ''
 
int $view_mode = 0
 
bool $waiting_list = false
 
bool $subscription_membership_limitation = false
 
int $subscription_max_members = 0
 
bool $abo = true
 
bool $show_members = true
 
string $message = ''
 
bool $course_start_time_indication = true
 
ilCourseWaitingList $waiting_list_obj = null
 
string $important = ''
 
string $syllabus = ''
 
ilLogger $course_logger
 
string $latitude = ''
 
string $longitude = ''
 
int $locationzoom = 0
 
bool $enablemap = false
 
int $session_limit = 0
 
int $session_prev = -1
 
int $session_next = -1
 
string $reg_access_code = ''
 
bool $reg_access_code_enabled = false
 
int $status_dt = 0
 
int $mail_members = ilCourseConstants::MAIL_ALLOWED_ALL
 
bool $crs_start_time_indication = false
 
ilDateTime $crs_start = null
 
ilDateTime $crs_end = null
 
ilDate $leave_end = null
 
int $min_members = 0
 
bool $auto_fill_from_waiting = false
 
bool $member_export = false
 
int $timing_mode = ilCourseConstants::IL_CRS_VIEW_TIMING_ABSOLUTE
 
int $tutorial_support_block_setting_value = 0
 
bool $auto_notification = true
 
string $target_group = null
 
int $activation_start = 0
 
int $activation_end = 0
 
bool $activation_visibility = false
 
ilCourseParticipant $member_obj = null
 
ilCourseParticipants $members_obj = null
 
array $local_roles = []
 

Additional Inherited Members

- Static Public Attributes inherited from ilContainer
static bool $data_preloaded = false
 
- Protected Attributes inherited from ilContainer
News $news
 
ILIAS Style Content DomainService $content_style_domain
 
ILIAS Container InternalDomainService $domain
 
ilAccessHandler $access
 
ilRbacSystem $rbacsystem
 
ilObjUser $user
 
ilObjectDefinition $obj_definition
 
int $order_type = 0
 
bool $hiddenfilesfound = false
 
bool $news_timeline = false
 
bool $news_timeline_auto_entries = false
 
ilSetting $setting
 
ilObjectTranslation $obj_trans = null
 
int $style_id = 0
 
bool $news_timeline_landing_page = false
 
bool $news_block_activated = false
 
bool $use_news = false
 
ilRecommendedContentManager $recommended_content_manager
 
array $type_grps = null
 
- Protected Attributes inherited from ilObject
ilLogger $obj_log
 
ILIAS $ilias
 
ilObjectDefinition $obj_definition
 
ilDBInterface $db
 
ilLogger $log
 
ilErrorHandling $error
 
ilTree $tree
 
ilAppEventHandler $app_event_handler
 
ilRbacAdmin $rbac_admin
 
ilRbacReview $rbac_review
 
ilObjUser $user
 
ilLanguage $lng
 
LOMServices $lom_services
 
bool $call_by_reference
 
int $max_title = self::TITLE_LENGTH
 
int $max_desc = self::DESC_LENGTH
 
bool $add_dots = true
 
int $ref_id = null
 
string $type = ""
 
string $title = ""
 
string $desc = ""
 
string $long_desc = ""
 
int $owner = 0
 
string $create_date = ""
 
string $last_update = ""
 
string $import_id = ""
 
bool $register = false
 

Detailed Description

This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Learning e.V.

ILIAS is licensed with the GPL-3.0, see https://www.gnu.org/licenses/gpl-3.0.en.html You should have received a copy of said license along with the source code, too.

If this is not the case or you just want to try ILIAS, you'll find us at: https://www.ilias.de https://github.com/ILIAS-eLearning Class ilObjCourse

Author
Stefan Meyer meyer.nosp@m.@lei.nosp@m.fos.c.nosp@m.om

Definition at line 23 of file class.ilObjCourse.php.

Constructor & Destructor Documentation

◆ __construct()

ilObjCourse::__construct ( int  $a_id = 0,
bool  $a_call_by_reference = true 
)

Definition at line 95 of file class.ilObjCourse.php.

References $DIC, ILIAS\GlobalScreen\Provider\__construct(), and setStatusDetermination().

96  {
97  global $DIC;
98 
99  $this->setStatusDetermination(self::STATUS_DETERMINATION_LP);
100 
101  $this->type = "crs";
102  $this->course_logger = $DIC->logger()->crs();
103  parent::__construct($a_id, $a_call_by_reference);
104  }
setStatusDetermination(int $a_value)
Set status determination mode.
global $DIC
Definition: shib_login.php:22
__construct(Container $dic, ilPlugin $plugin)
+ Here is the call graph for this function:

Member Function Documentation

◆ __createDefaultSettings()

ilObjCourse::__createDefaultSettings ( )

Definition at line 1109 of file class.ilObjCourse.php.

References $res, __readSettings(), ilMembershipRegistrationCodeUtils\generateCode(), getAboStatus(), getAutoNotification(), getContactConsultation(), getContactEmail(), getContactName(), getContactPhone(), getContactResponsibility(), getEnableCourseMap(), ilObject\getId(), getLatitude(), getLocationZoom(), getLongitude(), getMailToMembersType(), getNumberOfPreviousSessions(), getRegistrationAccessCode(), getStatusDetermination(), getSubscriptionEnd(), getSubscriptionMaxMembers(), getSubscriptionPassword(), getSubscriptionStart(), getSyllabus(), getTutorialSupportBlockSettingValue(), ilCourseConstants\IL_CRS_SUBSCRIPTION_DEACTIVATED, ilCourseConstants\IL_CRS_SUBSCRIPTION_DIRECT, ilCourseConstants\IL_CRS_VIEW_TIMING_ABSOLUTE, isRegistrationAccessCodeEnabled(), isSessionLimitEnabled(), setRegistrationAccessCode(), and ilContainer\SORT_MANUAL.

Referenced by create(), and updateSettings().

1109  : void
1110  {
1112 
1113  $query = "INSERT INTO crs_settings (obj_id,syllabus,contact_name,contact_responsibility," .
1114  "contact_phone,contact_email,contact_consultation," .
1115  "sub_limitation_type,sub_start,sub_end,sub_type,sub_password,sub_mem_limit," .
1116  "sub_max_members,sub_notify,view_mode,timing_mode,abo," .
1117  "latitude,longitude,location_zoom,enable_course_map,waiting_list,show_members,show_members_export, " .
1118  "session_limit,session_prev,session_next, reg_ac_enabled, reg_ac, auto_notification, status_dt, " .
1119  "mail_members_type, tutorial_support_block) " .
1120  "VALUES( " .
1121  $this->db->quote($this->getId(), 'integer') . ", " .
1122  $this->db->quote($this->getSyllabus(), 'text') . ", " .
1123  $this->db->quote($this->getContactName(), 'text') . ", " .
1124  $this->db->quote($this->getContactResponsibility(), 'text') . ", " .
1125  $this->db->quote($this->getContactPhone(), 'text') . ", " .
1126  $this->db->quote($this->getContactEmail(), 'text') . ", " .
1127  $this->db->quote($this->getContactConsultation(), 'text') . ", " .
1128  $this->db->quote(ilCourseConstants::IL_CRS_SUBSCRIPTION_DEACTIVATED, 'integer') . ", " .
1129  $this->db->quote($this->getSubscriptionStart(), 'integer') . ", " .
1130  $this->db->quote($this->getSubscriptionEnd(), 'integer') . ", " .
1131  $this->db->quote(ilCourseConstants::IL_CRS_SUBSCRIPTION_DIRECT, 'integer') . ", " .
1132  $this->db->quote($this->getSubscriptionPassword(), 'text') . ", " .
1133  "0, " .
1134  $this->db->quote($this->getSubscriptionMaxMembers(), 'integer') . ", " .
1135  "1, " .
1136  "0, " .
1137  $this->db->quote(ilCourseConstants::IL_CRS_VIEW_TIMING_ABSOLUTE, 'integer') . ', ' .
1138  $this->db->quote($this->getAboStatus(), 'integer') . ", " .
1139  $this->db->quote($this->getLatitude(), 'text') . ", " .
1140  $this->db->quote($this->getLongitude(), 'text') . ", " .
1141  $this->db->quote($this->getLocationZoom(), 'integer') . ", " .
1142  $this->db->quote($this->getEnableCourseMap(), 'integer') . ", " .
1143  #"objective_view = '0', ".
1144  "1, " .
1145  "1," .
1146  '0,' .
1147  $this->db->quote($this->isSessionLimitEnabled(), 'integer') . ', ' .
1148  $this->db->quote($this->getNumberOfPreviousSessions(), 'integer') . ', ' .
1149  $this->db->quote($this->getNumberOfPreviousSessions(), 'integer') . ', ' .
1150  $this->db->quote($this->isRegistrationAccessCodeEnabled(), 'integer') . ', ' .
1151  $this->db->quote($this->getRegistrationAccessCode(), 'text') . ', ' .
1152  $this->db->quote((int) $this->getAutoNotification(), 'integer') . ', ' .
1153  $this->db->quote($this->getStatusDetermination(), 'integer') . ', ' .
1154  $this->db->quote($this->getMailToMembersType(), 'integer') . ', ' .
1155  $this->db->quote($this->getTutorialSupportBlockSettingValue(), 'integer') . ' ' .
1156  ")";
1157 
1158  $res = $this->db->manipulate($query);
1159  $this->__readSettings();
1160 
1161  $sorting = new ilContainerSortingSettings($this->getId());
1162  $sorting->setSortMode(ilContainer::SORT_MANUAL);
1163  $sorting->update();
1164  }
$res
Definition: ltiservices.php:66
getStatusDetermination()
Get status determination mode.
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
getTutorialSupportBlockSettingValue()
getAutoNotification()
Returns automatic notification status from $this->auto_notification.
static generateCode()
Generate new registration key.
setRegistrationAccessCode(string $a_code)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ __deleteSettings()

ilObjCourse::__deleteSettings ( )

Definition at line 1420 of file class.ilObjCourse.php.

References ilObject\getId().

Referenced by delete().

1420  : void
1421  {
1422  $query = "DELETE FROM crs_settings " .
1423  "WHERE obj_id = " . $this->db->quote($this->getId(), 'integer') . " ";
1424  $this->db->manipulate($query);
1425  }
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ __getCrsNonMemberTemplateId()

ilObjCourse::__getCrsNonMemberTemplateId ( )

Definition at line 1320 of file class.ilObjCourse.php.

References $q, $res, and ilDBConstants\FETCHMODE_ASSOC.

Referenced by setParentRolePermissions().

1320  : int
1321  {
1322  $q = "SELECT obj_id FROM object_data WHERE type='rolt' AND title='il_crs_non_member'";
1323  $res = $this->ilias->db->query($q);
1324  $row = $res->fetchRow(ilDBConstants::FETCHMODE_ASSOC);
1325  return (int) $row["obj_id"];
1326  }
$res
Definition: ltiservices.php:66
Class ilObjForumAdministration.
$q
Definition: shib_logout.php:21
+ Here is the caller graph for this function:

◆ __getLocalRoles()

ilObjCourse::__getLocalRoles ( )
Returns
int[]

Definition at line 1415 of file class.ilObjCourse.php.

References ilObject\getRefId().

Referenced by getDefaultAdminRole(), getDefaultMemberRole(), and getDefaultTutorRole().

1415  : array
1416  {
1417  return $this->rbac_review->getRolesOfRoleFolder($this->getRefId(), false);
1418  }
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ __readSettings()

ilObjCourse::__readSettings ( )

Definition at line 1166 of file class.ilObjCourse.php.

References $res, enableRegistrationAccessCode(), enableSessionLimit(), enableSubscriptionMembershipLimitation(), enableWaitingList(), ilDBConstants\FETCHMODE_OBJECT, ilObject\getId(), ilPrivacySettings\getInstance(), ilObjectActivation\getItem(), IL_CAL_DATE, IL_CAL_DATETIME, IL_CAL_UNIX, null, setAboStatus(), setActivationEnd(), setActivationStart(), setActivationVisibility(), setAutoNotification(), setCancellationEnd(), setContactConsultation(), setContactEmail(), setContactName(), setContactPhone(), setContactResponsibility(), setCoursePeriod(), setEnableCourseMap(), setImportantInformation(), setLatitude(), setLocationZoom(), setLongitude(), setMailToMembersType(), setNumberOfNextSessions(), setNumberOfPreviousSessions(), setRegistrationAccessCode(), setShowMembers(), setShowMembersExport(), setStatusDetermination(), setSubscriptionEnd(), setSubscriptionLimitationType(), setSubscriptionMaxMembers(), setSubscriptionMinMembers(), setSubscriptionPassword(), setSubscriptionStart(), setSubscriptionType(), setSyllabus(), setTargetGroup(), setTimingMode(), setTutorialSupportBlockSettingValue(), setViewMode(), setWaitingListAutoFill(), ilObjectActivation\TIMINGS_ACTIVATION, toggleCourseStartTimeIndication(), and ilTimeZone\UTC.

Referenced by __createDefaultSettings(), and read().

1166  : void
1167  {
1168  $query = "SELECT * FROM crs_settings WHERE obj_id = " . $this->db->quote($this->getId(), 'integer');
1169  $res = $this->db->query($query);
1170  while ($row = $res->fetchRow(ilDBConstants::FETCHMODE_OBJECT)) {
1171  $this->setTutorialSupportBlockSettingValue((int) $row->tutorial_support_block);
1172  $this->setSyllabus((string) $row->syllabus);
1173  $this->setTargetGroup($row->target_group);
1174  $this->setContactName((string) $row->contact_name);
1175  $this->setContactResponsibility((string) $row->contact_responsibility);
1176  $this->setContactPhone((string) $row->contact_phone);
1177  $this->setContactEmail((string) $row->contact_email);
1178  $this->setContactConsultation((string) $row->contact_consultation);
1179  $this->setSubscriptionLimitationType((int) $row->sub_limitation_type);
1180  $this->setSubscriptionStart((int) $row->sub_start);
1181  $this->setSubscriptionEnd((int) $row->sub_end);
1182  $this->setSubscriptionType((int) $row->sub_type);
1183  $this->setSubscriptionPassword((string) $row->sub_password);
1184  $this->enableSubscriptionMembershipLimitation((bool) $row->sub_mem_limit);
1185  $this->setSubscriptionMaxMembers((int) $row->sub_max_members);
1186  $this->setViewMode((int) $row->view_mode);
1187  $this->setTimingMode((int) $row->timing_mode);
1188  $this->setAboStatus((bool) $row->abo);
1189  $this->enableWaitingList((bool) $row->waiting_list);
1190  $this->setImportantInformation((string) $row->important);
1191  $this->setShowMembers((bool) $row->show_members);
1192 
1193  if (\ilPrivacySettings::getInstance()->participantsListInCoursesEnabled()) {
1194  $this->setShowMembersExport((bool) $row->show_members_export);
1195  } else {
1196  $this->setShowMembersExport(false);
1197  }
1198  $this->setLatitude((string) $row->latitude);
1199  $this->setLongitude((string) $row->longitude);
1200  $this->setLocationZoom((int) $row->location_zoom);
1201  $this->setEnableCourseMap((bool) $row->enable_course_map);
1202  $this->enableSessionLimit((int) $row->session_limit);
1203  $this->setNumberOfPreviousSessions((int) $row->session_prev);
1204  $this->setNumberOfNextSessions((int) $row->session_next);
1205  $this->enableRegistrationAccessCode((bool) $row->reg_ac_enabled);
1206  $this->setRegistrationAccessCode((string) $row->reg_ac);
1207  $this->setAutoNotification((bool) $row->auto_notification);
1208  $this->setStatusDetermination((int) $row->status_dt);
1209  $this->setMailToMembersType((int) $row->mail_members_type);
1210 
1211  if ($row->period_time_indication) {
1212  $this->setCoursePeriod(
1213  new \ilDateTime($row->period_start, IL_CAL_DATETIME, \ilTimeZone::UTC),
1214  new \ilDateTime($row->period_end, IL_CAL_DATETIME, \ilTimeZone::UTC)
1215  );
1216  } elseif (!is_null($row->period_start) && !is_null($row->period_end)) {
1217  $this->setCoursePeriod(
1218  new \ilDate($row->period_start, IL_CAL_DATE),
1219  new \ilDate($row->period_end, IL_CAL_DATE)
1220  );
1221  }
1222  $this->toggleCourseStartTimeIndication((bool) $row->period_time_indication);
1223  $this->setCancellationEnd($row->leave_end ? new ilDate($row->leave_end, IL_CAL_UNIX) : null);
1224  $this->setWaitingListAutoFill((bool) $row->auto_wait);
1225  $this->setSubscriptionMinMembers((int) $row->min_members);
1226  }
1227 
1228  // moved activation to ilObjectActivation
1229  if ($this->ref_id ?? false) {
1230  $activation = ilObjectActivation::getItem($this->ref_id);
1231  switch ($activation["timing_type"]) {
1233  $this->setActivationStart((int) $activation["timing_start"]);
1234  $this->setActivationEnd((int) $activation["timing_end"]);
1235  $this->setActivationVisibility((bool) $activation["visible"]);
1236  break;
1237  }
1238  }
1239  }
$res
Definition: ltiservices.php:66
setSubscriptionLimitationType(int $a_type)
setSubscriptionStart(int $a_value)
setLongitude(string $a_longitude)
const IL_CAL_DATETIME
setActivationEnd(int $a_value)
setAboStatus(bool $a_status)
setActivationVisibility(bool $a_value)
setContactResponsibility(string $a_value)
setCoursePeriod(?ilDateTime $start=null, ?ilDateTime $end=null)
setNumberOfNextSessions(int $a_num)
enableRegistrationAccessCode(bool $a_status)
setNumberOfPreviousSessions(int $a_num)
setSubscriptionMinMembers(int $a_value)
setShowMembers(bool $a_status)
setViewMode(int $a_mode)
setTimingMode(int $a_mode)
setLocationZoom(int $a_locationzoom)
setActivationStart(int $a_value)
setStatusDetermination(int $a_value)
Set status determination mode.
const IL_CAL_UNIX
setCancellationEnd(?ilDate $a_value=null)
setEnableCourseMap(bool $a_enablemap)
setSubscriptionMaxMembers(int $a_value)
while($session_entry=$r->fetchRow(ilDBConstants::FETCHMODE_ASSOC)) return null
setSyllabus(string $a_syllabus)
setContactConsultation(string $a_value)
setSubscriptionType(int $a_value)
enableSessionLimit(int $a_status)
enableSubscriptionMembershipLimitation(bool $a_status)
setSubscriptionEnd(int $a_value)
setContactEmail(string $a_value)
setImportantInformation(string $a_info)
setMailToMembersType(int $a_type)
setTutorialSupportBlockSettingValue(int $value)
setWaitingListAutoFill(bool $a_value)
setSubscriptionPassword(string $a_value)
setTargetGroup(?string $a_tg)
setContactName(string $a_cn)
const IL_CAL_DATE
static getItem(int $ref_id)
enableWaitingList(bool $a_status)
toggleCourseStartTimeIndication(bool $time_indication)
setRegistrationAccessCode(string $a_code)
setShowMembersExport(bool $a_mem_export)
setContactPhone(string $a_value)
setLatitude(string $a_latitude)
setAutoNotification(bool $value)
Sets automatic notification status in $this->auto_notification, using given $status.
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ _deleteUser()

static ilObjCourse::_deleteUser ( int  $a_usr_id)
static

Definition at line 1465 of file class.ilObjCourse.php.

References ilCourseLMHistory\_deleteUser(), ilParticipants\_deleteUser(), and ilLOUserResults\deleteResultsForUser().

Referenced by ilObjUser\delete().

1465  : void
1466  {
1467  ilCourseLMHistory::_deleteUser($a_usr_id);
1470  }
static _deleteUser(int $a_usr_id)
Delete user data.
static deleteResultsForUser(int $a_user_id)
static _deleteUser(int $a_usr_id)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ _isActivated()

static ilObjCourse::_isActivated ( int  $a_obj_id)
static

Is activated.

Method is in Access class, since it is needed by Access/ListGUI.

Definition at line 561 of file class.ilObjCourse.php.

References ilObjCourseAccess\_isActivated().

Referenced by ilObjCourseGUI\executeCommand(), and ilStartUpGUI\processIndexPHP().

561  : bool
562  {
563  return ilObjCourseAccess::_isActivated($a_obj_id);
564  }
static _isActivated(int $a_obj_id, ?bool &$a_visible_flag=null, bool $a_mind_member_view=true)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ _isSubscriptionNotificationEnabled()

static ilObjCourse::_isSubscriptionNotificationEnabled ( int  $a_course_id)
static

Definition at line 404 of file class.ilObjCourse.php.

References $DIC, $ilDB, and $res.

404  : bool
405  {
406  global $DIC;
407 
408  $ilDB = $DIC->database();
409  $query = "SELECT * FROM crs_settings " .
410  "WHERE obj_id = " . $ilDB->quote($a_course_id, 'integer') . " " .
411  "AND sub_notify = 1";
412  $res = $ilDB->query($query);
413  return (bool) $res->numRows();
414  }
$res
Definition: ltiservices.php:66
global $DIC
Definition: shib_login.php:22

◆ _lookupAboStatus()

static ilObjCourse::_lookupAboStatus ( int  $a_id)
static

Definition at line 481 of file class.ilObjCourse.php.

References $DIC, $ilDB, $res, and ilDBConstants\FETCHMODE_OBJECT.

Referenced by ilObjGroupGUI\modifyItemGUI(), and ilObjFolderGUI\modifyItemGUI().

481  : bool
482  {
483  global $DIC;
484 
485  $ilDB = $DIC['ilDB'];
486 
487  $query = "SELECT abo FROM crs_settings WHERE obj_id = " . $ilDB->quote($a_id, 'integer') . " ";
488  $res = $ilDB->query($query);
489  while ($row = $res->fetchRow(ilDBConstants::FETCHMODE_OBJECT)) {
490  return $row->abo;
491  }
492  return false;
493  }
$res
Definition: ltiservices.php:66
global $DIC
Definition: shib_login.php:22
+ Here is the caller graph for this function:

◆ _lookupViewMode()

static ilObjCourse::_lookupViewMode ( int  $a_id)
static

Definition at line 467 of file class.ilObjCourse.php.

References $DIC, $ilDB, $res, and ilDBConstants\FETCHMODE_OBJECT.

Referenced by ilObjCourseGUI\_modifyItemGUI(), ilCourseLP\checkObjectives(), ilCalendarScheduleFilterTimings\enabledCourseTimings(), ilObjFolderGUI\forwardToTimingsView(), ilPortfolioPageGUI\getCoursesOfUser(), and ilObjGroup\translateViewMode().

467  : int
468  {
469  global $DIC;
470 
471  $ilDB = $DIC['ilDB'];
472 
473  $query = "SELECT view_mode FROM crs_settings WHERE obj_id = " . $ilDB->quote($a_id, 'integer') . " ";
474  $res = $ilDB->query($query);
475  while ($row = $res->fetchRow(ilDBConstants::FETCHMODE_OBJECT)) {
476  return $row->view_mode;
477  }
478  return false;
479  }
$res
Definition: ltiservices.php:66
global $DIC
Definition: shib_login.php:22
+ Here is the caller graph for this function:

◆ _registrationEnabled()

static ilObjCourse::_registrationEnabled ( int  $a_obj_id)
static

Registration enabled? Method is in Access class, since it is needed by Access/ListGUI.

Definition at line 569 of file class.ilObjCourse.php.

References ilObjCourseAccess\_registrationEnabled().

Referenced by ilObjCourseGUI\executeCommand(), and ilStartUpGUI\processIndexPHP().

569  : bool
570  {
571  return ilObjCourseAccess::_registrationEnabled($a_obj_id);
572  }
static _registrationEnabled(int $a_obj_id)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ addAdditionalSubItemInformation()

ilObjCourse::addAdditionalSubItemInformation ( array &  $object)

Definition at line 1483 of file class.ilObjCourse.php.

References ilObjectActivation\addAdditionalSubItemInformation().

1483  : void
1484  {
1486  }
static addAdditionalSubItemInformation(array &$item)
Parse item data for list entries.
+ Here is the call graph for this function:

◆ appendMessage()

ilObjCourse::appendMessage ( string  $a_message)

Definition at line 535 of file class.ilObjCourse.php.

References getMessage().

Referenced by validate().

535  : void
536  {
537  if ($this->getMessage()) {
538  $this->message .= "<br /> ";
539  }
540  $this->message .= $a_message;
541  }
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ checkLPStatusSync()

ilObjCourse::checkLPStatusSync ( int  $a_member_id)

sync course status from lp as lp data is not deleted on course exit new members may already have lp completed

Definition at line 1749 of file class.ilObjCourse.php.

References ilObjUserTracking\_enabledLearningProgress(), ilLPStatus\_lookupStatus(), ilObject\getId(), getMembersObject(), getStatusDetermination(), ilLPStatus\LP_STATUS_COMPLETED_NUM, and STATUS_DETERMINATION_LP.

Referenced by handleAutoFill().

1749  : void
1750  {
1751  // #11113
1754  // #13811 - we need to suppress creation if status entry
1755  $has_completed = (ilLPStatus::_lookupStatus(
1756  $this->getId(),
1757  $a_member_id,
1758  false
1760  $this->getMembersObject()->updatePassed($a_member_id, $has_completed, false, true);
1761  }
1762  }
const LP_STATUS_COMPLETED_NUM
getStatusDetermination()
Get status determination mode.
const STATUS_DETERMINATION_LP
static _lookupStatus(int $a_obj_id, int $a_user_id, bool $a_create=true)
Lookup status.
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ cloneAutoGeneratedRoles()

ilObjCourse::cloneAutoGeneratedRoles ( ilObject  $new_obj)

Clone automatic genrated roles (permissions and template permissions)

Definition at line 817 of file class.ilObjCourse.php.

References getDefaultAdminRole(), getDefaultMemberRole(), getDefaultTutorRole(), and ilObject\getRefId().

Referenced by cloneObject().

817  : void
818  {
819  $admin = $this->getDefaultAdminRole();
820  $new_admin = $new_obj->getDefaultAdminRole();
821 
822  if (!$admin || !$new_admin || !$this->getRefId() || !$new_obj->getRefId()) {
823  $this->course_logger->debug('Error cloning auto generated role: il_crs_admin');
824  }
825  $this->rbac_admin->copyRolePermissions($admin, $this->getRefId(), $new_obj->getRefId(), $new_admin, true);
826  $this->course_logger->debug('Finished copying of role crs_admin.');
827 
828  $tutor = $this->getDefaultTutorRole();
829  $new_tutor = $new_obj->getDefaultTutorRole();
830  if (!$tutor || !$new_tutor) {
831  $this->course_logger->info('Error cloning auto generated role: il_crs_tutor');
832  }
833  $this->rbac_admin->copyRolePermissions($tutor, $this->getRefId(), $new_obj->getRefId(), $new_tutor, true);
834  $this->course_logger->info('Finished copying of role crs_tutor.');
835 
836  $member = $this->getDefaultMemberRole();
837  $new_member = $new_obj->getDefaultMemberRole();
838  if (!$member || !$new_member) {
839  $this->course_logger->debug('Error cloning auto generated role: il_crs_member');
840  }
841  $this->rbac_admin->copyRolePermissions($member, $this->getRefId(), $new_obj->getRefId(), $new_member, true);
842  $this->course_logger->debug('Finished copying of role crs_member.');
843  }
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ cloneDependencies()

ilObjCourse::cloneDependencies ( int  $a_target_id,
int  $a_copy_id 
)

Definition at line 787 of file class.ilObjCourse.php.

References ilObjCourseGrouping\_getGroupings(), ilObject\_lookupObjId(), ilObjectActivation\cloneDependencies(), ilLOSettings\cloneSettings(), ilObject\getId(), and ilObject\getRefId().

787  : bool
788  {
789  parent::cloneDependencies($a_target_id, $a_copy_id);
790 
791  // Clone course start objects
792  $start = new ilContainerStartObjects($this->getRefId(), $this->getId());
793  $start->cloneDependencies($a_target_id, $a_copy_id);
794 
795  // Clone course item settings
796  ilObjectActivation::cloneDependencies($this->getRefId(), $a_target_id, $a_copy_id);
797 
798  // clone objective settings
799  ilLOSettings::cloneSettings($a_copy_id, $this->getId(), ilObject::_lookupObjId($a_target_id));
800 
801  // Clone course learning objectives
802  $crs_objective = new ilCourseObjective($this);
803  $crs_objective->ilClone($a_target_id, $a_copy_id);
804 
805  // clone membership limitation
806  foreach (\ilObjCourseGrouping::_getGroupings($this->getId()) as $grouping_id) {
807  $this->course_logger->info('Handling grouping id: ' . $grouping_id);
808  $grouping = new \ilObjCourseGrouping($grouping_id);
809  $grouping->cloneGrouping($a_target_id, $a_copy_id);
810  }
811  return true;
812  }
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
static cloneDependencies(int $ref_id, int $target_id, int $copy_id)
static _lookupObjId(int $ref_id)
class ilcourseobjective
static _getGroupings(int $a_course_id)
static cloneSettings(int $a_copy_id, int $a_container_id, int $a_new_container_id)
+ Here is the call graph for this function:

◆ cloneObject()

ilObjCourse::cloneObject ( int  $a_target_id,
int  $a_copy_id = 0,
bool  $a_omit_tree = false 
)

Clone course (no member data)

public

Parameters
inttarget ref_id
intcopy id

Definition at line 739 of file class.ilObjCourse.php.

References $DIC, ilCourseDefinedFieldDefinition\_clone(), ilCourseFile\_cloneFiles(), ilCopyWizardOptions\_getInstance(), cloneAutoGeneratedRoles(), ilObject\cloneMetaData(), cloneSettings(), ilObject\getId(), ilBadge\getInstancesByParentId(), ilParticipants\IL_CRS_ADMIN, ilObject\setOfflineStatus(), and ILIAS\Repository\user().

739  : ?ilObject
740  {
741  global $DIC;
742 
743  $new_obj = parent::cloneObject($a_target_id, $a_copy_id, $a_omit_tree);
744 
745  $this->cloneAutoGeneratedRoles($new_obj);
746  $this->cloneMetaData($new_obj);
747 
748  $new_obj->getMemberObject()->add($this->user->getId(), ilParticipants::IL_CRS_ADMIN);
749  $new_obj->getMemberObject()->updateContact($this->user->getId(), 1);
750 
751  $cwo = ilCopyWizardOptions::_getInstance($a_copy_id);
752  if ($cwo->isRootNode($this->getRefId())) {
753  $this->setOfflineStatus(true);
754  }
755 
756  $this->cloneSettings($new_obj);
757  ilCourseDefinedFieldDefinition::_clone($this->getId(), $new_obj->getId());
758  ilCourseFile::_cloneFiles($this->getId(), $new_obj->getId());
759  $obj_settings = new ilLPObjSettings($this->getId());
760  $obj_settings->cloneSettings($new_obj->getId());
761  unset($obj_settings);
762  $pathFactory = new ilCertificatePathFactory();
763  $templateRepository = new ilCertificateTemplateDatabaseRepository($this->db);
764 
765  $cloneAction = new ilCertificateCloneAction(
766  $this->db,
767  $pathFactory,
768  $templateRepository,
770  );
771  $cloneAction->cloneCertificate($this, $new_obj);
772 
773  $book_service = new ilBookingService();
774  $book_service->cloneSettings($this->getId(), $new_obj->getId());
775 
776  $badges = ilBadge::getInstancesByParentId($this->getId());
777  foreach ($badges as $badge) {
778  $badge->clone($new_obj->getId());
779  }
780 
781  return $new_obj;
782  }
static getInstancesByParentId(int $a_parent_id, ?array $a_filter=null)
cloneMetaData(ilObject $target_obj)
Copy meta data.
cloneSettings(ilObject $new_obj)
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
static _clone(int $a_source_id, int $a_target_id)
global $DIC
Definition: shib_login.php:22
setOfflineStatus(bool $status)
static _cloneFiles(int $a_source_id, int $a_target_id)
static _getInstance(int $a_copy_id)
cloneAutoGeneratedRoles(ilObject $new_obj)
Clone automatic genrated roles (permissions and template permissions)
+ Here is the call graph for this function:

◆ cloneSettings()

ilObjCourse::cloneSettings ( ilObject  $new_obj)

Definition at line 1053 of file class.ilObjCourse.php.

References enabledWaitingList(), ilMembershipRegistrationCodeUtils\generateCode(), getAboStatus(), getActivationEnd(), getActivationStart(), getActivationVisibility(), getAutoNotification(), getCancellationEnd(), getContactConsultation(), getContactEmail(), getContactName(), getContactPhone(), getContactResponsibility(), getCourseEnd(), getCourseStart(), getEnableCourseMap(), getImportantInformation(), getLatitude(), getLocationZoom(), getLongitude(), getMailToMembersType(), getNumberOfNextSessions(), getNumberOfPreviousSessions(), ilObject\getOfflineStatus(), getOrderType(), getShowMembers(), getShowMembersExport(), getStatusDetermination(), getSubscriptionEnd(), getSubscriptionLimitationType(), getSubscriptionMaxMembers(), getSubscriptionMinMembers(), getSubscriptionPassword(), getSubscriptionStart(), getSubscriptionType(), getSyllabus(), getTargetGroup(), getTimingMode(), getTutorialSupportBlockSettingValue(), getViewMode(), hasWaitingListAutoFill(), isRegistrationAccessCodeEnabled(), isSessionLimitEnabled(), isSubscriptionMembershipLimited(), ilObject\setOfflineStatus(), and ilObject\update().

Referenced by cloneObject().

1053  : void
1054  {
1055  $new_obj->setTutorialSupportBlockSettingValue($this->getTutorialSupportBlockSettingValue());
1056  $new_obj->setSyllabus($this->getSyllabus());
1057  $new_obj->setContactName($this->getContactName());
1058  $new_obj->setContactResponsibility($this->getContactResponsibility());
1059  $new_obj->setContactPhone($this->getContactPhone());
1060  $new_obj->setContactEmail($this->getContactEmail());
1061  $new_obj->setContactConsultation($this->getContactConsultation());
1062  $new_obj->setOfflineStatus($this->getOfflineStatus()); // #9914
1063  $new_obj->setActivationStart($this->getActivationStart());
1064  $new_obj->setActivationEnd($this->getActivationEnd());
1065  $new_obj->setActivationVisibility($this->getActivationVisibility());
1066  $new_obj->setSubscriptionLimitationType($this->getSubscriptionLimitationType());
1067  $new_obj->setSubscriptionStart($this->getSubscriptionStart());
1068  $new_obj->setSubscriptionEnd($this->getSubscriptionEnd());
1069  $new_obj->setSubscriptionType($this->getSubscriptionType());
1070  $new_obj->setSubscriptionPassword($this->getSubscriptionPassword());
1071  $new_obj->enableSubscriptionMembershipLimitation($this->isSubscriptionMembershipLimited());
1072  $new_obj->setSubscriptionMaxMembers($this->getSubscriptionMaxMembers());
1073  $new_obj->setViewMode($this->getViewMode());
1074  $new_obj->setTimingMode($this->getTimingMode());
1075  $new_obj->setOrderType($this->getOrderType());
1076  $new_obj->setAboStatus($this->getAboStatus());
1077  $new_obj->enableWaitingList($this->enabledWaitingList());
1078  $new_obj->setImportantInformation($this->getImportantInformation());
1079  $new_obj->setTargetGroup($this->getTargetGroup());
1080  $new_obj->setShowMembers($this->getShowMembers());
1081  // patch mem_exp
1082  $new_obj->setShowMembersExport($this->getShowMembersExport());
1083  // patch mem_exp
1084  $new_obj->enableSessionLimit($this->isSessionLimitEnabled());
1085  $new_obj->setNumberOfPreviousSessions($this->getNumberOfPreviousSessions());
1086  $new_obj->setNumberOfNextSessions($this->getNumberOfNextSessions());
1087  $new_obj->setAutoNotification($this->getAutoNotification());
1088  $new_obj->enableRegistrationAccessCode($this->isRegistrationAccessCodeEnabled());
1089  $new_obj->setRegistrationAccessCode(ilMembershipRegistrationCodeUtils::generateCode());
1090  $new_obj->setStatusDetermination($this->getStatusDetermination());
1091  $new_obj->setMailToMembersType($this->getMailToMembersType());
1092  $new_obj->setCoursePeriod(
1093  $this->getCourseStart(),
1094  $this->getCourseEnd()
1095  );
1096  $new_obj->setCancellationEnd($this->getCancellationEnd());
1097  $new_obj->setWaitingListAutoFill($this->hasWaitingListAutoFill());
1098  $new_obj->setSubscriptionMinMembers($this->getSubscriptionMinMembers());
1099 
1100  // #10271
1101  $new_obj->setEnableCourseMap($this->getEnableCourseMap());
1102  $new_obj->setLatitude($this->getLatitude());
1103  $new_obj->setLongitude($this->getLongitude());
1104  $new_obj->setLocationZoom($this->getLocationZoom());
1105 
1106  $new_obj->update();
1107  }
getStatusDetermination()
Get status determination mode.
getTutorialSupportBlockSettingValue()
setOfflineStatus(bool $status)
getAutoNotification()
Returns automatic notification status from $this->auto_notification.
static generateCode()
Generate new registration key.
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ create()

ilObjCourse::create (   $a_upload = false)

Definition at line 581 of file class.ilObjCourse.php.

References $DIC, $id, __createDefaultSettings(), ilObject\createMetaData(), ilObject\getId(), and prepareAppointments().

581  : int
582  {
583  global $DIC;
584 
585  $ilAppEventHandler = $DIC['ilAppEventHandler'];
586 
587  $id = parent::create($a_upload);
588 
589  if (!$a_upload) {
590  $this->createMetaData();
591  }
592  $this->__createDefaultSettings();
593  $this->app_event_handler->raise(
594  'components/ILIAS/Course',
595  'create',
596  array('object' => $this,
597  'obj_id' => $this->getId(),
598  'appointments' => $this->prepareAppointments('create')
599  )
600  );
601 
602  return $id;
603  }
prepareAppointments(string $a_mode='create')
Prepare calendar appointments.
global $DIC
Definition: shib_login.php:22
$id
plugin.php for ilComponentBuildPluginInfoObjectiveTest::testAddPlugins
Definition: plugin.php:23
+ Here is the call graph for this function:

◆ delete()

ilObjCourse::delete ( )

delete course and all related data

public

Returns
boolean true if all object data were removed; false if only a references were removed

Definition at line 907 of file class.ilObjCourse.php.

References __deleteSettings(), ilObjCourseGrouping\_deleteAll(), ilCourseObjective\_deleteAll(), ilParticipants\_deleteAllEntries(), ilCourseDefinedFieldDefinition\_deleteByContainer(), ilCourseFile\_deleteByCourse(), ilObject\deleteMetaData(), ilObject\getId(), and prepareAppointments().

907  : bool
908  {
909  // always call parent delete function first!!
910  if (!parent::delete()) {
911  return false;
912  }
913 
914  // delete meta data
915  $this->deleteMetaData();
916 
917  // put here course specific stuff
918 
919  $this->__deleteSettings();
920 
922 
924 
926 
928 
930 
931  $this->app_event_handler->raise(
932  'components/ILIAS/Course',
933  'delete',
934  array('object' => $this,
935  'obj_id' => $this->getId(),
936  'appointments' => $this->prepareAppointments('delete')
937  )
938  );
939  return true;
940  }
prepareAppointments(string $a_mode='create')
Prepare calendar appointments.
static _deleteAll(int $course_id)
static _deleteByCourse(int $a_course_id)
static _deleteAll(int $a_course_id)
static _deleteAllEntries(int $a_obj_id)
Delete all entries Normally called in case of object deletion.
+ Here is the call graph for this function:

◆ doMDUpdateListener()

ilObjCourse::doMDUpdateListener ( string  $a_element)
protected

Definition at line 1472 of file class.ilObjCourse.php.

1472  : void
1473  {
1474  switch ($a_element) {
1475  case 'General':
1476  // Update ecs content
1477  $ecs = new ilECSCourseSettings($this);
1478  $ecs->handleContentUpdate();
1479  break;
1480  }
1481  }
Class ilECSCourseSettings.

◆ enabledObjectiveView()

ilObjCourse::enabledObjectiveView ( )

Definition at line 328 of file class.ilObjCourse.php.

References ilCourseConstants\IL_CRS_VIEW_OBJECTIVE.

Referenced by getOrderType().

328  : bool
329  {
330  return $this->view_mode == ilCourseConstants::IL_CRS_VIEW_OBJECTIVE;
331  }
+ Here is the caller graph for this function:

◆ enabledWaitingList()

ilObjCourse::enabledWaitingList ( )

Definition at line 333 of file class.ilObjCourse.php.

References $waiting_list.

Referenced by cloneSettings(), handleAutoFill(), register(), updateSettings(), and validate().

333  : bool
334  {
335  return $this->waiting_list;
336  }
+ Here is the caller graph for this function:

◆ enableRegistrationAccessCode()

ilObjCourse::enableRegistrationAccessCode ( bool  $a_status)

Definition at line 153 of file class.ilObjCourse.php.

Referenced by __readSettings().

153  : void
154  {
155  $this->reg_access_code_enabled = $a_status;
156  }
+ Here is the caller graph for this function:

◆ enableSessionLimit()

ilObjCourse::enableSessionLimit ( int  $a_status)

Definition at line 354 of file class.ilObjCourse.php.

Referenced by __readSettings().

354  : void
355  {
356  $this->session_limit = $a_status;
357  }
+ Here is the caller graph for this function:

◆ enableSubscriptionMembershipLimitation()

ilObjCourse::enableSubscriptionMembershipLimitation ( bool  $a_status)

Definition at line 364 of file class.ilObjCourse.php.

Referenced by __readSettings().

364  : void
365  {
366  $this->subscription_membership_limitation = $a_status;
367  }
+ Here is the caller graph for this function:

◆ enableWaitingList()

ilObjCourse::enableWaitingList ( bool  $a_status)

Definition at line 338 of file class.ilObjCourse.php.

Referenced by __readSettings().

338  : void
339  {
340  $this->waiting_list = $a_status;
341  }
+ Here is the caller graph for this function:

◆ findCoursesWithNotEnoughMembers()

static ilObjCourse::findCoursesWithNotEnoughMembers ( )
static

Definition at line 1845 of file class.ilObjCourse.php.

References $GLOBALS, $ilDB, $res, ilObject\$tree, ilObject\_getAllReferences(), IL_CAL_DATETIME, IL_CAL_UNIX, ILIAS\Repository\int(), ilTree\isDeleted(), ilDBConstants\T_TEXT, and ilTimeZone\UTC.

Referenced by ilMembershipCronMinMembers\getCourses().

1845  : array
1846  {
1847  $ilDB = $GLOBALS['DIC']->database();
1848  $tree = $GLOBALS['DIC']->repositoryTree();
1849 
1850  $res = array();
1851 
1852  $before = new ilDateTime(time(), IL_CAL_UNIX);
1853  $now = $before->get(IL_CAL_UNIX);
1854  $now_dt = $before->get(IL_CAL_DATETIME, '', ilTimeZone::UTC);
1855 
1856  $set = $ilDB->query("SELECT obj_id, min_members" .
1857  " FROM crs_settings" .
1858  " WHERE min_members > " . $ilDB->quote(0, "integer") .
1859  " AND sub_mem_limit = " . $ilDB->quote(1, "integer") . // #17206
1860  " AND ((leave_end IS NOT NULL" .
1861  " AND leave_end < " . $ilDB->quote($now, "text") . ")" .
1862  " OR (leave_end IS NULL" .
1863  " AND sub_end IS NOT NULL" .
1864  " AND sub_end < " . $ilDB->quote($now, "text") . "))" .
1865  " AND (period_start IS NULL OR period_start > " . $ilDB->quote($now_dt, ilDBConstants::T_TEXT) . ")");
1866  while ($row = $ilDB->fetchAssoc($set)) {
1867  $refs = ilObject::_getAllReferences((int) $row['obj_id']);
1868  $ref = end($refs);
1869 
1870  if ($tree->isDeleted($ref)) {
1871  continue;
1872  }
1873 
1874  $part = new ilCourseParticipants((int) $row["obj_id"]);
1875  $reci = $part->getNotificationRecipients();
1876  if ($reci !== []) {
1877  $missing = (int) $row["min_members"] - $part->getCountMembers();
1878  if ($missing > 0) {
1879  $res[(int) $row["obj_id"]] = array($missing, $reci);
1880  }
1881  }
1882  }
1883 
1884  return $res;
1885  }
$res
Definition: ltiservices.php:66
const IL_CAL_DATETIME
static _getAllReferences(int $id)
get all reference ids for object ID
ilTree $tree
isDeleted(int $a_node_id)
This is a wrapper for isSaved() with a more useful name.
const IL_CAL_UNIX
$GLOBALS["DIC"]
Definition: wac.php:53
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getAboStatus()

ilObjCourse::getAboStatus ( )

Definition at line 500 of file class.ilObjCourse.php.

References $abo.

Referenced by __createDefaultSettings(), cloneSettings(), and updateSettings().

500  : bool
501  {
502  return $this->abo;
503  }
+ Here is the caller graph for this function:

◆ getActivationEnd()

ilObjCourse::getActivationEnd ( )

Definition at line 253 of file class.ilObjCourse.php.

References $activation_end.

Referenced by cloneSettings(), getActivationUnlimitedStatus(), isActivated(), prepareAppointments(), and updateSettings().

253  : int
254  {
255  return $this->activation_end;
256  }
+ Here is the caller graph for this function:

◆ getActivationStart()

ilObjCourse::getActivationStart ( )

Definition at line 243 of file class.ilObjCourse.php.

References $activation_start.

Referenced by cloneSettings(), getActivationUnlimitedStatus(), isActivated(), prepareAppointments(), and updateSettings().

243  : int
244  {
246  }
+ Here is the caller graph for this function:

◆ getActivationUnlimitedStatus()

ilObjCourse::getActivationUnlimitedStatus ( )

Definition at line 238 of file class.ilObjCourse.php.

References getActivationEnd(), and getActivationStart().

Referenced by isActivated(), and prepareAppointments().

238  : bool
239  {
240  return !$this->getActivationStart() || !$this->getActivationEnd();
241  }
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getActivationVisibility()

ilObjCourse::getActivationVisibility ( )

Definition at line 268 of file class.ilObjCourse.php.

References $activation_visibility.

Referenced by cloneSettings(), and updateSettings().

268  : bool
269  {
271  }
bool $activation_visibility
+ Here is the caller graph for this function:

◆ getAutoNotification()

ilObjCourse::getAutoNotification ( )

Returns automatic notification status from $this->auto_notification.

Definition at line 1698 of file class.ilObjCourse.php.

References $auto_notification.

Referenced by __createDefaultSettings(), cloneSettings(), and updateSettings().

1698  : bool
1699  {
1700  return $this->auto_notification;
1701  }
+ Here is the caller graph for this function:

◆ getCancellationEnd()

ilObjCourse::getCancellationEnd ( )

Definition at line 703 of file class.ilObjCourse.php.

References $leave_end.

Referenced by cloneSettings(), and updateSettings().

703  : ?ilDate
704  {
705  return $this->leave_end;
706  }
+ Here is the caller graph for this function:

◆ getContactConsultation()

ilObjCourse::getContactConsultation ( )

Definition at line 198 of file class.ilObjCourse.php.

References $contact_consultation.

Referenced by __createDefaultSettings(), cloneSettings(), hasContactData(), and updateSettings().

198  : string
199  {
201  }
string $contact_consultation
+ Here is the caller graph for this function:

◆ getContactEmail()

ilObjCourse::getContactEmail ( )

Definition at line 218 of file class.ilObjCourse.php.

References $contact_email.

Referenced by __createDefaultSettings(), cloneSettings(), hasContactData(), updateSettings(), and validateInfoSettings().

218  : string
219  {
220  return $this->contact_email;
221  }
+ Here is the caller graph for this function:

◆ getContactName()

ilObjCourse::getContactName ( )

Definition at line 188 of file class.ilObjCourse.php.

References $contact_name.

Referenced by __createDefaultSettings(), cloneSettings(), hasContactData(), and updateSettings().

188  : string
189  {
190  return $this->contact_name;
191  }
+ Here is the caller graph for this function:

◆ getContactPhone()

ilObjCourse::getContactPhone ( )

Definition at line 208 of file class.ilObjCourse.php.

References $contact_phone.

Referenced by __createDefaultSettings(), cloneSettings(), hasContactData(), and updateSettings().

208  : string
209  {
210  return $this->contact_phone;
211  }
+ Here is the caller graph for this function:

◆ getContactResponsibility()

ilObjCourse::getContactResponsibility ( )

Definition at line 228 of file class.ilObjCourse.php.

References $contact_responsibility.

Referenced by __createDefaultSettings(), cloneSettings(), hasContactData(), and updateSettings().

228  : string
229  {
231  }
string $contact_responsibility
+ Here is the caller graph for this function:

◆ getCourseEnd()

ilObjCourse::getCourseEnd ( )

Definition at line 693 of file class.ilObjCourse.php.

References $crs_end.

Referenced by cloneSettings(), prepareAppointments(), updateSettings(), and validate().

693  : ?ilDateTime
694  {
695  return $this->crs_end;
696  }
ilDateTime $crs_end
+ Here is the caller graph for this function:

◆ getCourseStart()

ilObjCourse::getCourseStart ( )

Definition at line 683 of file class.ilObjCourse.php.

References $crs_start.

Referenced by cloneSettings(), prepareAppointments(), updateSettings(), and validate().

683  : ?ilDateTime
684  {
685  return $this->crs_start;
686  }
ilDateTime $crs_start
+ Here is the caller graph for this function:

◆ getCourseStartTimeIndication()

ilObjCourse::getCourseStartTimeIndication ( )

Definition at line 673 of file class.ilObjCourse.php.

References $course_start_time_indication.

Referenced by prepareAppointments(), and updateSettings().

673  : bool
674  {
676  }
bool $course_start_time_indication
+ Here is the caller graph for this function:

◆ getDefaultAdminRole()

ilObjCourse::getDefaultAdminRole ( )

Definition at line 1452 of file class.ilObjCourse.php.

References __getLocalRoles(), ilObjectFactory\getInstanceByObjId(), and ilObject\getRefId().

Referenced by cloneAutoGeneratedRoles().

1452  : int
1453  {
1454  $local_roles = $this->__getLocalRoles();
1455  foreach ($local_roles as $role_id) {
1456  if ($tmp_role = ilObjectFactory::getInstanceByObjId($role_id, false)) {
1457  if (!strcmp($tmp_role->getTitle(), "il_crs_admin_" . $this->getRefId())) {
1458  return $role_id;
1459  }
1460  }
1461  }
1462  return 0;
1463  }
static getInstanceByObjId(?int $obj_id, bool $stop_on_error=true)
get an instance of an Ilias object by object id
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getDefaultCourseRoles()

ilObjCourse::getDefaultCourseRoles ( string  $a_crs_id = "")

get default course roles, returns the defaultlike create roles il_crs_tutor, il_crs_admin and il_crs_member Returns the obj_ids of course specific roles in an associative array.

key=descripiton of the role (i.e. "il_crs_tutor", "il_crs_admin", "il_crs_member". value=obj_id of the role

Definition at line 1378 of file class.ilObjCourse.php.

References ilObject\getRefId().

1378  : array
1379  {
1380  if (strlen($a_crs_id) > 0) {
1381  $crs_id = $a_crs_id;
1382  } else {
1383  $crs_id = $this->getRefId();
1384  }
1385 
1386  $role_arr = $this->rbac_review->getRolesOfRoleFolder($crs_id);
1387 
1388  $arr_crsDefaultRoles = [];
1389  foreach ($role_arr as $role_id) {
1390  $role_Obj = &$this->ilias->obj_factory->getInstanceByObjId($role_id);
1391 
1392  $crs_Member = "il_crs_member_" . $crs_id;
1393  $crs_Admin = "il_crs_admin_" . $crs_id;
1394  $crs_Tutor = "il_crs_tutor_" . $crs_id;
1395 
1396  if (strcmp($role_Obj->getTitle(), $crs_Member) == 0) {
1397  $arr_crsDefaultRoles["crs_member_role"] = $role_Obj->getId();
1398  }
1399 
1400  if (strcmp($role_Obj->getTitle(), $crs_Admin) == 0) {
1401  $arr_crsDefaultRoles["crs_admin_role"] = $role_Obj->getId();
1402  }
1403 
1404  if (strcmp($role_Obj->getTitle(), $crs_Tutor) == 0) {
1405  $arr_crsDefaultRoles["crs_tutor_role"] = $role_Obj->getId();
1406  }
1407  }
1408 
1409  return $arr_crsDefaultRoles;
1410  }
Class ilObjForumAdministration.
+ Here is the call graph for this function:

◆ getDefaultMemberRole()

ilObjCourse::getDefaultMemberRole ( )

Definition at line 1427 of file class.ilObjCourse.php.

References ilObject\$title, __getLocalRoles(), and ilObject\_lookupTitle().

Referenced by cloneAutoGeneratedRoles().

1427  : int
1428  {
1429  $local_roles = $this->__getLocalRoles();
1430  foreach ($local_roles as $role_id) {
1431  $title = ilObject::_lookupTitle($role_id);
1432  if (substr($title, 0, 8) == 'il_crs_m') {
1433  return $role_id;
1434  }
1435  }
1436  return 0;
1437  }
string $title
static _lookupTitle(int $obj_id)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getDefaultTutorRole()

ilObjCourse::getDefaultTutorRole ( )

Definition at line 1439 of file class.ilObjCourse.php.

References __getLocalRoles(), ilObjectFactory\getInstanceByObjId(), and ilObject\getRefId().

Referenced by cloneAutoGeneratedRoles().

1439  : int
1440  {
1441  $local_roles = $this->__getLocalRoles();
1442  foreach ($local_roles as $role_id) {
1443  if ($tmp_role = ilObjectFactory::getInstanceByObjId($role_id, false)) {
1444  if (!strcmp($tmp_role->getTitle(), "il_crs_tutor_" . $this->getRefId())) {
1445  return $role_id;
1446  }
1447  }
1448  }
1449  return 0;
1450  }
static getInstanceByObjId(?int $obj_id, bool $stop_on_error=true)
get an instance of an Ilias object by object id
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getEnableCourseMap()

ilObjCourse::getEnableCourseMap ( )

Definition at line 645 of file class.ilObjCourse.php.

References $enablemap.

Referenced by __createDefaultSettings(), cloneSettings(), getEnableMap(), and updateSettings().

645  : bool
646  {
647  return $this->enablemap;
648  }
+ Here is the caller graph for this function:

◆ getEnableMap()

ilObjCourse::getEnableMap ( )

Definition at line 640 of file class.ilObjCourse.php.

References getEnableCourseMap().

640  : bool
641  {
642  return $this->getEnableCourseMap();
643  }
+ Here is the call graph for this function:

◆ getImportantInformation()

ilObjCourse::getImportantInformation ( )

Definition at line 158 of file class.ilObjCourse.php.

References $important.

Referenced by cloneSettings(), and updateSettings().

158  : string
159  {
160  return $this->important;
161  }
+ Here is the caller graph for this function:

◆ getLatitude()

ilObjCourse::getLatitude ( )

Definition at line 610 of file class.ilObjCourse.php.

References $latitude.

Referenced by __createDefaultSettings(), cloneSettings(), and updateSettings().

610  : string
611  {
612  return $this->latitude;
613  }
+ Here is the caller graph for this function:

◆ getLocalCourseRoles()

ilObjCourse::getLocalCourseRoles (   $a_translate = false)

get ALL local roles of course, also those created and defined afterwards only fetch data once from database.

info is stored in object variable public

Returns
array [title|id] of roles...

Definition at line 1349 of file class.ilObjCourse.php.

References $local_roles, ilObjRole\_getTranslation(), ilObjectFactory\getInstanceByObjId(), and ilObject\getRefId().

1349  : array
1350  {
1351  if (empty($this->local_roles)) {
1352  $this->local_roles = array();
1353  $role_arr = $this->rbac_review->getRolesOfRoleFolder($this->getRefId());
1354 
1355  foreach ($role_arr as $role_id) {
1356  if ($this->rbac_review->isAssignable($role_id, $this->getRefId()) == true) {
1357  $role_Obj = ilObjectFactory::getInstanceByObjId($role_id);
1358  if ($a_translate) {
1359  $role_name = ilObjRole::_getTranslation($role_Obj->getTitle());
1360  } else {
1361  $role_name = $role_Obj->getTitle();
1362  }
1363  $this->local_roles[$role_name] = $role_Obj->getId();
1364  }
1365  }
1366  }
1367  return $this->local_roles;
1368  }
static _getTranslation(string $a_role_title)
static getInstanceByObjId(?int $obj_id, bool $stop_on_error=true)
get an instance of an Ilias object by object id
+ Here is the call graph for this function:

◆ getLocationZoom()

ilObjCourse::getLocationZoom ( )

Definition at line 630 of file class.ilObjCourse.php.

References $locationzoom.

Referenced by __createDefaultSettings(), cloneSettings(), and updateSettings().

630  : int
631  {
632  return $this->locationzoom;
633  }
+ Here is the caller graph for this function:

◆ getLongitude()

ilObjCourse::getLongitude ( )

Definition at line 620 of file class.ilObjCourse.php.

References $longitude.

Referenced by __createDefaultSettings(), cloneSettings(), and updateSettings().

620  : string
621  {
622  return $this->longitude;
623  }
+ Here is the caller graph for this function:

◆ getMailToMembersType()

ilObjCourse::getMailToMembersType ( )

Definition at line 520 of file class.ilObjCourse.php.

References $mail_members.

Referenced by __createDefaultSettings(), cloneSettings(), and updateSettings().

520  : int
521  {
522  return $this->mail_members;
523  }
+ Here is the caller graph for this function:

◆ getMemberObject()

ilObjCourse::getMemberObject ( )

Definition at line 1258 of file class.ilObjCourse.php.

References $member_obj, and initCourseMemberObject().

1259  {
1260  if (!$this->member_obj instanceof ilCourseParticipant) {
1261  $this->initCourseMemberObject();
1262  }
1263  return $this->member_obj;
1264  }
ilCourseParticipant $member_obj
+ Here is the call graph for this function:

◆ getMembersObject()

ilObjCourse::getMembersObject ( )

Definition at line 1266 of file class.ilObjCourse.php.

References $members_obj, and initCourseMembersObject().

Referenced by checkLPStatusSync(), handleAutoFill(), register(), and syncMembersStatusWithLP().

1267  {
1268  if (!$this->members_obj instanceof ilCourseParticipants) {
1269  $this->initCourseMembersObject();
1270  }
1271  return $this->members_obj;
1272  }
ilCourseParticipants $members_obj
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getMessage()

ilObjCourse::getMessage ( )

Definition at line 525 of file class.ilObjCourse.php.

References $message.

Referenced by appendMessage(), and validate().

525  : string
526  {
527  return $this->message;
528  }
+ Here is the caller graph for this function:

◆ getNumberOfNextSessions()

ilObjCourse::getNumberOfNextSessions ( )

Definition at line 384 of file class.ilObjCourse.php.

References $session_next.

Referenced by cloneSettings(), and updateSettings().

384  : int
385  {
386  return $this->session_next;
387  }
+ Here is the caller graph for this function:

◆ getNumberOfPreviousSessions()

ilObjCourse::getNumberOfPreviousSessions ( )

Definition at line 374 of file class.ilObjCourse.php.

References $session_prev.

Referenced by __createDefaultSettings(), cloneSettings(), and updateSettings().

374  : int
375  {
376  return $this->session_prev;
377  }
+ Here is the caller graph for this function:

◆ getOrderType()

ilObjCourse::getOrderType ( )

Definition at line 1764 of file class.ilObjCourse.php.

References enabledObjectiveView(), and ilContainer\SORT_MANUAL.

Referenced by cloneSettings(), and update().

1764  : int
1765  {
1766  if ($this->enabledObjectiveView()) {
1767  return ilContainer::SORT_MANUAL;
1768  }
1769  return parent::getOrderType();
1770  }
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getRegistrationAccessCode()

ilObjCourse::getRegistrationAccessCode ( )

Definition at line 138 of file class.ilObjCourse.php.

References $reg_access_code.

Referenced by __createDefaultSettings(), and updateSettings().

138  : string
139  {
140  return $this->reg_access_code;
141  }
string $reg_access_code
+ Here is the caller graph for this function:

◆ getShowMembers()

ilObjCourse::getShowMembers ( )

Definition at line 510 of file class.ilObjCourse.php.

References $show_members.

Referenced by cloneSettings(), and updateSettings().

510  : bool
511  {
512  return $this->show_members;
513  }
+ Here is the caller graph for this function:

◆ getShowMembersExport()

ilObjCourse::getShowMembersExport ( )

Definition at line 128 of file class.ilObjCourse.php.

References $member_export.

Referenced by cloneSettings(), and updateSettings().

128  : bool
129  {
130  return $this->member_export;
131  }
+ Here is the caller graph for this function:

◆ getStatusDetermination()

ilObjCourse::getStatusDetermination ( )

Get status determination mode.

Definition at line 1732 of file class.ilObjCourse.php.

References $status_dt.

Referenced by __createDefaultSettings(), checkLPStatusSync(), cloneSettings(), updateSettings(), and validate().

1732  : int
1733  {
1734  return $this->status_dt;
1735  }
+ Here is the caller graph for this function:

◆ getSubscriptionEnd()

ilObjCourse::getSubscriptionEnd ( )

Definition at line 298 of file class.ilObjCourse.php.

References $subscription_end.

Referenced by __createDefaultSettings(), cloneSettings(), inSubscriptionTime(), prepareAppointments(), updateSettings(), and validate().

298  : int
299  {
301  }
+ Here is the caller graph for this function:

◆ getSubscriptionLimitationType()

ilObjCourse::getSubscriptionLimitationType ( )

Definition at line 273 of file class.ilObjCourse.php.

References $subscription_limitation_type.

Referenced by cloneSettings(), prepareAppointments(), register(), updateSettings(), and validate().

273  : int
274  {
276  }
int $subscription_limitation_type
+ Here is the caller graph for this function:

◆ getSubscriptionMaxMembers()

ilObjCourse::getSubscriptionMaxMembers ( )

Definition at line 394 of file class.ilObjCourse.php.

References $subscription_max_members.

Referenced by __createDefaultSettings(), cloneSettings(), handleAutoFill(), register(), updateSettings(), and validate().

394  : int
395  {
397  }
int $subscription_max_members
+ Here is the caller graph for this function:

◆ getSubscriptionMinMembers()

ilObjCourse::getSubscriptionMinMembers ( )

Definition at line 716 of file class.ilObjCourse.php.

References $min_members.

Referenced by cloneSettings(), updateSettings(), and validate().

716  : int
717  {
718  return $this->min_members;
719  }
+ Here is the caller graph for this function:

◆ getSubscriptionNotify()

ilObjCourse::getSubscriptionNotify ( )

Definition at line 416 of file class.ilObjCourse.php.

Referenced by updateSettings().

416  : bool
417  {
418  return true;
419  }
+ Here is the caller graph for this function:

◆ getSubscriptionPassword()

ilObjCourse::getSubscriptionPassword ( )

Definition at line 318 of file class.ilObjCourse.php.

References $subscription_password.

Referenced by __createDefaultSettings(), cloneSettings(), updateSettings(), and validate().

318  : string
319  {
321  }
string $subscription_password
+ Here is the caller graph for this function:

◆ getSubscriptionStart()

ilObjCourse::getSubscriptionStart ( )

Definition at line 288 of file class.ilObjCourse.php.

References $subscription_start.

Referenced by __createDefaultSettings(), cloneSettings(), inSubscriptionTime(), prepareAppointments(), updateSettings(), and validate().

288  : int
289  {
291  }
+ Here is the caller graph for this function:

◆ getSubscriptionType()

ilObjCourse::getSubscriptionType ( )

Definition at line 308 of file class.ilObjCourse.php.

References ilCourseConstants\IL_CRS_SUBSCRIPTION_DIRECT.

Referenced by cloneSettings(), updateSettings(), and validate().

308  : int
309  {
310  return $this->subscription_type ?: ilCourseConstants::IL_CRS_SUBSCRIPTION_DIRECT;
311  }
+ Here is the caller graph for this function:

◆ getSubscriptionUnlimitedStatus()

ilObjCourse::getSubscriptionUnlimitedStatus ( )

Definition at line 283 of file class.ilObjCourse.php.

References ilCourseConstants\IL_CRS_SUBSCRIPTION_UNLIMITED.

Referenced by inSubscriptionTime().

283  : bool
284  {
285  return $this->subscription_limitation_type == ilCourseConstants::IL_CRS_SUBSCRIPTION_UNLIMITED;
286  }
+ Here is the caller graph for this function:

◆ getSyllabus()

ilObjCourse::getSyllabus ( )

Definition at line 168 of file class.ilObjCourse.php.

References $syllabus.

Referenced by __createDefaultSettings(), cloneSettings(), and updateSettings().

168  : string
169  {
170  return $this->syllabus;
171  }
+ Here is the caller graph for this function:

◆ getTargetGroup()

ilObjCourse::getTargetGroup ( )

Definition at line 178 of file class.ilObjCourse.php.

References $target_group.

Referenced by cloneSettings(), and updateSettings().

178  : ?string
179  {
180  return $this->target_group;
181  }
+ Here is the caller graph for this function:

◆ getTimingMode()

ilObjCourse::getTimingMode ( )

Definition at line 452 of file class.ilObjCourse.php.

References $timing_mode.

Referenced by cloneSettings(), and updateSettings().

452  : int
453  {
454  return $this->timing_mode;
455  }
+ Here is the caller graph for this function:

◆ getTutorialSupportBlockSettingValue()

ilObjCourse::getTutorialSupportBlockSettingValue ( )

Definition at line 462 of file class.ilObjCourse.php.

References $tutorial_support_block_setting_value.

Referenced by __createDefaultSettings(), cloneSettings(), and updateSettings().

462  : int
463  {
465  }
int $tutorial_support_block_setting_value
+ Here is the caller graph for this function:

◆ getViewMode()

ilObjCourse::getViewMode ( )

Definition at line 426 of file class.ilObjCourse.php.

References $view_mode.

Referenced by cloneSettings(), prepareAppointments(), and updateSettings().

426  : int
427  {
428  return $this->view_mode;
429  }
+ Here is the caller graph for this function:

◆ handleAutoFill()

ilObjCourse::handleAutoFill ( )

Handle course auto fill.

Definition at line 1775 of file class.ilObjCourse.php.

References $user_id, checkLPStatusSync(), enabledWaitingList(), ilObject\getId(), ilObjectFactory\getInstanceByObjId(), getMembersObject(), ilObject\getRefId(), getSubscriptionMaxMembers(), ilObject\getTitle(), hasWaitingListAutoFill(), ilParticipants\IL_CRS_MEMBER, ilParticipants\lookupNumberOfMembers(), and ilCourseMembershipMailNotification\TYPE_ADMISSION_MEMBER.

1775  : void
1776  {
1777  if (
1778  !$this->enabledWaitingList() || !$this->hasWaitingListAutoFill()
1779  ) {
1780  $this->course_logger->debug('Waiting list or auto fill disabled.');
1781  return;
1782  }
1783 
1784  $max = $this->getSubscriptionMaxMembers();
1786 
1787  $this->course_logger->debug('Max members: ' . $max);
1788  $this->course_logger->debug('Current members: ' . $now);
1789 
1790  if ($max <= $now) {
1791  return;
1792  }
1793 
1794  // see assignFromWaitingListObject()
1795  $waiting_list = new ilCourseWaitingList($this->getId());
1796 
1797  foreach ($waiting_list->getUserIds() as $user_id) {
1798  if (!$tmp_obj = ilObjectFactory::getInstanceByObjId($user_id, false)) {
1799  $this->course_logger->warning('Cannot create user instance for id: ' . $user_id);
1800  continue;
1801  }
1802  if ($this->getMembersObject()->isAssigned($user_id)) {
1803  $this->course_logger->warning('User is already assigned to course. uid: ' . $user_id . ' course_id: ' . $this->getRefId());
1804  continue;
1805  }
1808  $waiting_list->removeFromList($user_id);
1809  $this->checkLPStatusSync($user_id);
1810 
1811  $this->course_logger->info('Assigned user from waiting list to course: ' . $this->getTitle());
1812  $now++;
1813  if ($now >= $max) {
1814  break;
1815  }
1816  }
1817  }
checkLPStatusSync(int $a_member_id)
sync course status from lp as lp data is not deleted on course exit new members may already have lp c...
static getInstanceByObjId(?int $obj_id, bool $stop_on_error=true)
get an instance of an Ilias object by object id
static lookupNumberOfMembers(int $a_ref_id)
Lookup number of members.
+ Here is the call graph for this function:

◆ hasContactData()

ilObjCourse::hasContactData ( )

Definition at line 896 of file class.ilObjCourse.php.

References getContactConsultation(), getContactEmail(), getContactName(), getContactPhone(), and getContactResponsibility().

896  : bool
897  {
898  return strlen($this->getContactName()) || strlen($this->getContactResponsibility()) || strlen($this->getContactEmail()) || strlen($this->getContactPhone()) || strlen($this->getContactConsultation());
899  }
+ Here is the call graph for this function:

◆ hasWaitingListAutoFill()

ilObjCourse::hasWaitingListAutoFill ( )

Definition at line 726 of file class.ilObjCourse.php.

References $auto_fill_from_waiting.

Referenced by cloneSettings(), handleAutoFill(), and updateSettings().

726  : bool
727  {
729  }
bool $auto_fill_from_waiting
+ Here is the caller graph for this function:

◆ initCourseMemberObject()

ilObjCourse::initCourseMemberObject ( )
protected

Definition at line 1248 of file class.ilObjCourse.php.

References ilCourseParticipant\_getInstanceByObjId(), ilObject\getId(), and ILIAS\Repository\user().

Referenced by getMemberObject().

1248  : void
1249  {
1250  $this->member_obj = ilCourseParticipant::_getInstanceByObjId($this->getId(), $this->user->getId());
1251  }
static _getInstanceByObjId(int $a_obj_id, int $a_usr_id)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ initCourseMembersObject()

ilObjCourse::initCourseMembersObject ( )
protected

Definition at line 1253 of file class.ilObjCourse.php.

References ilCourseParticipants\_getInstanceByObjId(), and ilObject\getId().

Referenced by getMembersObject().

1253  : void
1254  {
1255  $this->members_obj = ilCourseParticipants::_getInstanceByObjId($this->getId());
1256  }
static _getInstanceByObjId(int $a_obj_id)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ initDefaultRoles()

ilObjCourse::initDefaultRoles ( )

Definition at line 1276 of file class.ilObjCourse.php.

References ilObjRole\createDefaultRole(), ilObject\getId(), and ilObject\getRefId().

1276  : void
1277  {
1279  'il_crs_admin_' . $this->getRefId(),
1280  "Admin of crs obj_no." . $this->getId(),
1281  'il_crs_admin',
1282  $this->getRefId()
1283  );
1285  'il_crs_tutor_' . $this->getRefId(),
1286  "Tutor of crs obj_no." . $this->getId(),
1287  'il_crs_tutor',
1288  $this->getRefId()
1289  );
1291  'il_crs_member_' . $this->getRefId(),
1292  "Member of crs obj_no." . $this->getId(),
1293  'il_crs_member',
1294  $this->getRefId()
1295  );
1296  }
static createDefaultRole(string $a_title, string $a_description, string $a_tpl_name, int $a_ref_id)
+ Here is the call graph for this function:

◆ initWaitingList()

ilObjCourse::initWaitingList ( )

Definition at line 1241 of file class.ilObjCourse.php.

References ilObject\getId().

1241  : void
1242  {
1243  if (!$this->waiting_list_obj instanceof ilCourseWaitingList) {
1244  $this->waiting_list_obj = new ilCourseWaitingList($this->getId());
1245  }
1246  }
+ Here is the call graph for this function:

◆ inSubscriptionTime()

ilObjCourse::inSubscriptionTime ( )

Definition at line 343 of file class.ilObjCourse.php.

References getSubscriptionEnd(), getSubscriptionStart(), and getSubscriptionUnlimitedStatus().

Referenced by register().

343  : bool
344  {
345  if ($this->getSubscriptionUnlimitedStatus()) {
346  return true;
347  }
348  if (time() > $this->getSubscriptionStart() and time() < $this->getSubscriptionEnd()) {
349  return true;
350  }
351  return false;
352  }
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ isActivated()

ilObjCourse::isActivated ( )

Definition at line 543 of file class.ilObjCourse.php.

References getActivationEnd(), getActivationStart(), getActivationUnlimitedStatus(), and ilObject\getOfflineStatus().

543  : bool
544  {
545  if ($this->getOfflineStatus()) {
546  return false;
547  }
548  if ($this->getActivationUnlimitedStatus()) {
549  return true;
550  }
551  if (time() < $this->getActivationStart() or
552  time() > $this->getActivationEnd()) {
553  return false;
554  }
555  return true;
556  }
+ Here is the call graph for this function:

◆ isRegistrationAccessCodeEnabled()

ilObjCourse::isRegistrationAccessCodeEnabled ( )

Definition at line 148 of file class.ilObjCourse.php.

References $reg_access_code_enabled.

Referenced by __createDefaultSettings(), cloneSettings(), and updateSettings().

148  : bool
149  {
151  }
bool $reg_access_code_enabled
+ Here is the caller graph for this function:

◆ isSessionLimitEnabled()

ilObjCourse::isSessionLimitEnabled ( )

Definition at line 359 of file class.ilObjCourse.php.

References $session_limit.

Referenced by __createDefaultSettings(), cloneSettings(), and updateSettings().

359  : bool
360  {
361  return (bool) $this->session_limit;
362  }
+ Here is the caller graph for this function:

◆ isSubscriptionMembershipLimited()

ilObjCourse::isSubscriptionMembershipLimited ( )

Definition at line 389 of file class.ilObjCourse.php.

References $subscription_membership_limitation.

Referenced by cloneSettings(), register(), updateSettings(), and validate().

389  : bool
390  {
392  }
bool $subscription_membership_limitation
+ Here is the caller graph for this function:

◆ lookupCourseNonMemberTemplatesId()

static ilObjCourse::lookupCourseNonMemberTemplatesId ( )
static

Definition at line 1328 of file class.ilObjCourse.php.

References $DIC, $ilDB, $res, and ilDBConstants\FETCHMODE_ASSOC.

Referenced by ilRbacAdmin\adjustMovedObjectPermissions().

1328  : int
1329  {
1330  global $DIC;
1331 
1332  $ilDB = $DIC->database();
1333 
1334  $query = 'SELECT obj_id FROM object_data WHERE type = ' . $ilDB->quote(
1335  'rolt',
1336  'text'
1337  ) . ' AND title = ' . $ilDB->quote('il_crs_non_member', 'text');
1338  $res = $ilDB->query($query);
1339  $row = $res->fetchRow(ilDBConstants::FETCHMODE_ASSOC);
1340  return (int) $row['obj_id'];
1341  }
$res
Definition: ltiservices.php:66
global $DIC
Definition: shib_login.php:22
+ Here is the caller graph for this function:

◆ lookupObjectsByCode()

static ilObjCourse::lookupObjectsByCode ( string  $a_code)
static
See also
interface.ilMembershipRegistrationCodes
Returns
int[]

Implements ilMembershipRegistrationCodes.

Definition at line 1590 of file class.ilObjCourse.php.

References $DIC, $ilDB, $res, ilDBConstants\FETCHMODE_OBJECT, and ILIAS\Repository\int().

Referenced by ilMembershipRegistrationCodeUtils\lookupObjectsByCode().

1590  : array
1591  {
1592  global $DIC;
1593 
1594  $ilDB = $DIC->database();
1595 
1596  $query = "SELECT obj_id FROM crs_settings " .
1597  "WHERE reg_ac_enabled = " . $ilDB->quote(1, 'integer') . " " .
1598  "AND reg_ac = " . $ilDB->quote($a_code, 'text');
1599  $res = $ilDB->query($query);
1600 
1601  $obj_ids = array();
1602  while ($row = $res->fetchRow(ilDBConstants::FETCHMODE_OBJECT)) {
1603  $obj_ids[] = (int) $row->obj_id;
1604  }
1605  return $obj_ids;
1606  }
$res
Definition: ltiservices.php:66
global $DIC
Definition: shib_login.php:22
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ lookupShowMembersEnabled()

static ilObjCourse::lookupShowMembersEnabled ( int  $a_obj_id)
static

Definition at line 117 of file class.ilObjCourse.php.

References $GLOBALS, $res, and ilDBConstants\FETCHMODE_OBJECT.

Referenced by ceLTIc\LTI\User\ProviderCurrentCourse\getInitialUserSet(), and ilParticipants\hasParticipantListAccess().

117  : bool
118  {
119  $query = 'SELECT show_members FROM crs_settings ' .
120  'WHERE obj_id = ' . $GLOBALS['DIC']['ilDB']->quote($a_obj_id, 'integer');
121  $res = $GLOBALS['DIC']['ilDB']->query($query);
122  while ($row = $res->fetchRow(ilDBConstants::FETCHMODE_OBJECT)) {
123  return (bool) $row->show_members;
124  }
125  return false;
126  }
$res
Definition: ltiservices.php:66
$GLOBALS["DIC"]
Definition: wac.php:53
+ Here is the caller graph for this function:

◆ lookupTimingMode()

static ilObjCourse::lookupTimingMode ( int  $a_obj_id)
static

Definition at line 431 of file class.ilObjCourse.php.

References $DIC, $ilDB, $res, ilDBConstants\FETCHMODE_OBJECT, and ilCourseConstants\IL_CRS_VIEW_TIMING_ABSOLUTE.

Referenced by ilObjectActivation\addAdditionalSubItemInformation(), ilCalendarScheduleFilterTimings\addCustomEvents(), ilCourseAppEventListener\initializeTimings(), and ilCalendarScheduleFilterTimings\modifyEvent().

431  : int
432  {
433  global $DIC;
434 
435  $ilDB = $DIC['ilDB'];
436 
437  $query = 'SELECT timing_mode FROM crs_settings ' .
438  'WHERE obj_id = ' . $ilDB->quote($a_obj_id, 'integer');
439  $res = $ilDB->query($query);
440 
441  while ($row = $res->fetchRow(ilDBConstants::FETCHMODE_OBJECT)) {
442  return (int) $row->timing_mode;
443  }
445  }
$res
Definition: ltiservices.php:66
global $DIC
Definition: shib_login.php:22
+ Here is the caller graph for this function:

◆ lookupTutorialBlockSettingEabled()

static ilObjCourse::lookupTutorialBlockSettingEabled ( int  $a_obj_id)
static

Definition at line 106 of file class.ilObjCourse.php.

References $GLOBALS, $res, and ilDBConstants\FETCHMODE_OBJECT.

Referenced by ilColumnGUI\isGloballyActivated().

106  : bool
107  {
108  $query = 'SELECT tutorial_support_block FROM crs_settings'
109  . ' WHERE obj_id = ' . $GLOBALS['DIC']['ilDB']->quote($a_obj_id, 'integer');
110  $res = $GLOBALS['DIC']['ilDB']->query($query);
111  while ($row = $res->fetchRow(ilDBConstants::FETCHMODE_OBJECT)) {
112  return (bool) $row->tutorial_support_block;
113  }
114  return false;
115  }
$res
Definition: ltiservices.php:66
$GLOBALS["DIC"]
Definition: wac.php:53
+ Here is the caller graph for this function:

◆ mayLeave()

static ilObjCourse::mayLeave ( int  $a_course_id,
int  $a_user_id = 0,
$a_date = null 
)
static

Definition at line 1819 of file class.ilObjCourse.php.

References $DIC, $ilDB, and IL_CAL_DATE.

Referenced by ilObjCourseAccess\_checkAccess().

1819  : bool
1820  {
1821  global $DIC;
1822 
1823  $ilUser = $DIC['ilUser'];
1824  $ilDB = $DIC['ilDB'];
1825 
1826  if (!$a_user_id) {
1827  $a_user_id = $ilUser->getId();
1828  }
1829 
1830  $set = $ilDB->query("SELECT leave_end" .
1831  " FROM crs_settings" .
1832  " WHERE obj_id = " . $ilDB->quote($a_course_id, "integer"));
1833  $row = $ilDB->fetchAssoc($set);
1834  if ($row && $row["leave_end"]) {
1835  // timestamp to date
1836  $limit = date("Ymd", $row["leave_end"]);
1837  if ($limit < date("Ymd")) {
1838  $a_date = new ilDate(date("Y-m-d", $row["leave_end"]), IL_CAL_DATE);
1839  return false;
1840  }
1841  }
1842  return true;
1843  }
global $DIC
Definition: shib_login.php:22
const IL_CAL_DATE
+ Here is the caller graph for this function:

◆ prepareAppointments()

ilObjCourse::prepareAppointments ( string  $a_mode = 'create')
protected

Prepare calendar appointments.

Definition at line 1491 of file class.ilObjCourse.php.

References getActivationEnd(), getActivationStart(), getActivationUnlimitedStatus(), getCourseEnd(), getCourseStart(), getCourseStartTimeIndication(), ilObject\getLongDescription(), ilObject\getOfflineStatus(), ilObject\getRefId(), getSubscriptionEnd(), getSubscriptionLimitationType(), getSubscriptionStart(), ilObjectActivation\getTimingsItems(), ilObject\getTitle(), getViewMode(), IL_CAL_UNIX, ilCourseConstants\IL_CRS_SUBSCRIPTION_LIMITED, ilCourseConstants\IL_CRS_VIEW_TIMING, ilObjectActivation\TIMINGS_PRESETTING, and ilCalendarEntry\TRANSLATION_SYSTEM.

Referenced by create(), delete(), and update().

1491  : array
1492  {
1493  switch ($a_mode) {
1494  case 'create':
1495  case 'update':
1496  $apps = [];
1497  if (!$this->getActivationUnlimitedStatus() && !$this->getOfflineStatus()) {
1498  $app = new ilCalendarAppointmentTemplate(self::CAL_ACTIVATION_START);
1499  $app->setTitle($this->getTitle());
1500  $app->setSubtitle('crs_cal_activation_start');
1501  $app->setTranslationType(ilCalendarEntry::TRANSLATION_SYSTEM);
1502  $app->setDescription($this->getLongDescription());
1503  $app->setStart(new ilDateTime($this->getActivationStart(), IL_CAL_UNIX));
1504  $apps[] = $app;
1505 
1506  $app = new ilCalendarAppointmentTemplate(self::CAL_ACTIVATION_END);
1507  $app->setTitle($this->getTitle());
1508  $app->setSubtitle('crs_cal_activation_end');
1509  $app->setTranslationType(ilCalendarEntry::TRANSLATION_SYSTEM);
1510  $app->setDescription($this->getLongDescription());
1511  $app->setStart(new ilDateTime($this->getActivationEnd(), IL_CAL_UNIX));
1512  $apps[] = $app;
1513  }
1515  $app = new ilCalendarAppointmentTemplate(self::CAL_REG_START);
1516  $app->setTitle($this->getTitle());
1517  $app->setSubtitle('crs_cal_reg_start');
1518  $app->setTranslationType(ilCalendarEntry::TRANSLATION_SYSTEM);
1519  $app->setDescription($this->getLongDescription());
1520  $app->setStart(new ilDateTime($this->getSubscriptionStart(), IL_CAL_UNIX));
1521  $apps[] = $app;
1522 
1523  $app = new ilCalendarAppointmentTemplate(self::CAL_REG_END);
1524  $app->setTitle($this->getTitle());
1525  $app->setSubtitle('crs_cal_reg_end');
1526  $app->setTranslationType(ilCalendarEntry::TRANSLATION_SYSTEM);
1527  $app->setDescription($this->getLongDescription());
1528  $app->setStart(new ilDateTime($this->getSubscriptionEnd(), IL_CAL_UNIX));
1529  $apps[] = $app;
1530  }
1531  if ($this->getCourseStart() && $this->getCourseEnd()) {
1532  $app = new ilCalendarAppointmentTemplate(self::CAL_COURSE_START);
1533  $app->setTitle($this->getTitle());
1534  $app->setSubtitle('crs_cal_start');
1535  $app->setTranslationType(ilCalendarEntry::TRANSLATION_SYSTEM);
1536  $app->setDescription($this->getLongDescription());
1537  $app->setStart($this->getCourseStart());
1538  $app->setFullday(!$this->getCourseStartTimeIndication());
1539  $apps[] = $app;
1540 
1541  $app = new ilCalendarAppointmentTemplate(self::CAL_COURSE_END);
1542  $app->setTitle($this->getTitle());
1543  $app->setSubtitle('crs_cal_end');
1544  $app->setTranslationType(ilCalendarEntry::TRANSLATION_SYSTEM);
1545  $app->setDescription($this->getLongDescription());
1546  $app->setStart($this->getCourseEnd());
1547  $app->setFullday(!$this->getCourseStartTimeIndication());
1548  $apps[] = $app;
1549  }
1550  if (
1552  ) {
1553  $active = ilObjectActivation::getTimingsItems($this->getRefId());
1554  foreach ($active as $null => $item) {
1555  if ($item['timing_type'] == ilObjectActivation::TIMINGS_PRESETTING) {
1556  // create calendar entry for fixed types
1557  $app = new ilCalendarAppointmentTemplate(self::CAL_COURSE_TIMING_START);
1558  $app->setContextInfo($item['ref_id']);
1559  $app->setTitle($item['title']);
1560  $app->setSubtitle('cal_crs_timing_start');
1561  $app->setTranslationType(ilCalendarEntry::TRANSLATION_SYSTEM);
1562  $app->setStart(new ilDate($item['suggestion_start'], IL_CAL_UNIX));
1563  $app->setFullday(true);
1564  $apps[] = $app;
1565 
1566  $app = new ilCalendarAppointmentTemplate(self::CAL_COURSE_TIMING_END);
1567  $app->setContextInfo($item['ref_id']);
1568  $app->setTitle($item['title']);
1569  $app->setSubtitle('cal_crs_timing_end');
1570  $app->setTranslationType(ilCalendarEntry::TRANSLATION_SYSTEM);
1571  $app->setStart(new ilDate($item['suggestion_end'], IL_CAL_UNIX));
1572  $app->setFullday(true);
1573  $apps[] = $app;
1574  }
1575  }
1576  }
1577  return $apps;
1578 
1579  case 'delete':
1580  // Nothing to do: The category and all assigned appointments will be deleted.
1581  return array();
1582  }
1583  return [];
1584  }
Apointment templates are used for automatic generated apointments.
const IL_CAL_UNIX
static getTimingsItems(int $container_ref_id)
Get (sub) item data for timings view (no session material, no side blocks)
getLongDescription()
get object long description (stored in object_description)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ read()

ilObjCourse::read ( )

Definition at line 574 of file class.ilObjCourse.php.

References __readSettings(), ilContainerSortingSettings\_lookupSortMode(), ilObject\getId(), and ilContainer\setOrderType().

574  : void
575  {
576  parent::read();
578  $this->__readSettings();
579  }
setOrderType(int $a_value)
+ Here is the call graph for this function:

◆ register()

ilObjCourse::register ( int  $a_user_id,
int  $a_role = ilCourseConstants::CRS_MEMBER,
bool  $a_force_registration = false 
)
Exceptions
ilMembershipRegistrationException
See also
ilMembershipRegistrationCodes::register()

Definition at line 1612 of file class.ilObjCourse.php.

References ilCourseParticipants\_getInstanceByObjId(), ilObjCourseAccess\_isActivated(), ilObjCourseAccess\_isOffline(), ilObjCourseAccess\_usingRegistrationCode(), ilMembershipRegistrationException\ADDED_TO_WAITINGLIST, ilForumNotification\checkForumsExistsInsert(), enabledWaitingList(), ilObject\getId(), getMembersObject(), ilObject\getRefId(), getSubscriptionLimitationType(), getSubscriptionMaxMembers(), ilCourseConstants\IL_CRS_SUBSCRIPTION_DEACTIVATED, ilCourseConstants\IL_CRS_SUBSCRIPTION_LIMITED, inSubscriptionTime(), isSubscriptionMembershipLimited(), ILIAS\Repository\lng(), ilMembershipRegistrationException\OBJECT_IS_FULL, ilMembershipRegistrationException\OUT_OF_REGISTRATION_PERIOD, ilMembershipRegistrationException\REGISTRATION_CODE_DISABLED, ilMembershipRegistrationException\REGISTRATION_INVALID_AVAILABILITY, ilMembershipRegistrationException\REGISTRATION_INVALID_OFFLINE, ilCourseMembershipMailNotification\TYPE_ADMISSION_MEMBER, ilCourseMembershipMailNotification\TYPE_NOTIFICATION_ADMINS, and ilCourseMembershipMailNotification\TYPE_WAITING_LIST_MEMBER.

1616  : void {
1617  if ($this->getMembersObject()->isAssigned($a_user_id)) {
1618  return;
1619  }
1620 
1621  if (!$a_force_registration) {
1622  // offline
1623  if (ilObjCourseAccess::_isOffline($this->getId())) {
1625  "Can't register to course, course is offline.",
1627  );
1628  }
1629  // activation
1630  if (!ilObjCourseAccess::_isActivated($this->getId())) {
1632  "Can't register to course, course is not activated.",
1634  );
1635  }
1636 
1640  'Cant registrate to course ' . $this->getId() .
1641  ', course subscription is deactivated.',
1643  );
1644  }
1645  }
1646 
1647  // Time Limitation
1649  if (!$this->inSubscriptionTime()) {
1651  'Cant registrate to course ' . $this->getId() .
1652  ', course is out of registration time.',
1654  );
1655  }
1656  }
1657 
1658  // Max members
1659  if ($this->isSubscriptionMembershipLimited()) {
1660  $free = max(0, $this->getSubscriptionMaxMembers() - $this->getMembersObject()->getCountMembers());
1661  $waiting_list = new ilCourseWaitingList($this->getId());
1662  if ($this->enabledWaitingList() && (!$free || $waiting_list->getCountUsers())) {
1663  $waiting_list->addToList($a_user_id);
1664  $this->lng->loadLanguageModule("crs");
1665  $info = sprintf(
1666  $this->lng->txt('crs_added_to_list'),
1667  $waiting_list->getPosition($a_user_id)
1668  );
1669  $participants = ilCourseParticipants::_getInstanceByObjId($this->getId());
1670  $participants->sendNotification(
1672  $a_user_id
1673  );
1674 
1676  $info,
1678  );
1679  }
1680 
1681  if (!$this->enabledWaitingList() && !$free) {
1682  throw new ilMembershipRegistrationException('Cant registrate to course ' . $this->getId() .
1683  ', membership is limited.', ilMembershipRegistrationException::OBJECT_IS_FULL);
1684  }
1685  }
1686  }
1687 
1688  $this->getMembersObject()->add($a_user_id, $a_role);
1689  $this->getMembersObject()->sendNotification(ilCourseMembershipMailNotification::TYPE_ADMISSION_MEMBER, $a_user_id);
1692  }
static _getInstanceByObjId(int $a_obj_id)
static _isOffline(int $obj_id)
static _isActivated(int $a_obj_id, ?bool &$a_visible_flag=null, bool $a_mind_member_view=true)
static checkForumsExistsInsert(int $ref_id, int $user_id)
+ Here is the call graph for this function:

◆ setAboStatus()

ilObjCourse::setAboStatus ( bool  $a_status)

Definition at line 495 of file class.ilObjCourse.php.

Referenced by __readSettings().

495  : void
496  {
497  $this->abo = $a_status;
498  }
+ Here is the caller graph for this function:

◆ setActivationEnd()

ilObjCourse::setActivationEnd ( int  $a_value)

Definition at line 258 of file class.ilObjCourse.php.

Referenced by __readSettings().

258  : void
259  {
260  $this->activation_end = $a_value;
261  }
+ Here is the caller graph for this function:

◆ setActivationStart()

ilObjCourse::setActivationStart ( int  $a_value)

Definition at line 248 of file class.ilObjCourse.php.

Referenced by __readSettings().

248  : void
249  {
250  $this->activation_start = $a_value;
251  }
+ Here is the caller graph for this function:

◆ setActivationVisibility()

ilObjCourse::setActivationVisibility ( bool  $a_value)

Definition at line 263 of file class.ilObjCourse.php.

Referenced by __readSettings().

263  : void
264  {
265  $this->activation_visibility = $a_value;
266  }
+ Here is the caller graph for this function:

◆ setAutoNotification()

ilObjCourse::setAutoNotification ( bool  $value)

Sets automatic notification status in $this->auto_notification, using given $status.

Definition at line 1707 of file class.ilObjCourse.php.

Referenced by __readSettings().

1707  : void
1708  {
1709  $this->auto_notification = $value;
1710  }
+ Here is the caller graph for this function:

◆ setCancellationEnd()

ilObjCourse::setCancellationEnd ( ?ilDate  $a_value = null)

Definition at line 698 of file class.ilObjCourse.php.

Referenced by __readSettings().

698  : void
699  {
700  $this->leave_end = $a_value;
701  }
+ Here is the caller graph for this function:

◆ setContactConsultation()

ilObjCourse::setContactConsultation ( string  $a_value)

Definition at line 203 of file class.ilObjCourse.php.

Referenced by __readSettings().

203  : void
204  {
205  $this->contact_consultation = $a_value;
206  }
+ Here is the caller graph for this function:

◆ setContactEmail()

ilObjCourse::setContactEmail ( string  $a_value)

Definition at line 223 of file class.ilObjCourse.php.

Referenced by __readSettings().

223  : void
224  {
225  $this->contact_email = $a_value;
226  }
+ Here is the caller graph for this function:

◆ setContactName()

ilObjCourse::setContactName ( string  $a_cn)

Definition at line 193 of file class.ilObjCourse.php.

Referenced by __readSettings().

193  : void
194  {
195  $this->contact_name = $a_cn;
196  }
+ Here is the caller graph for this function:

◆ setContactPhone()

ilObjCourse::setContactPhone ( string  $a_value)

Definition at line 213 of file class.ilObjCourse.php.

Referenced by __readSettings().

213  : void
214  {
215  $this->contact_phone = $a_value;
216  }
+ Here is the caller graph for this function:

◆ setContactResponsibility()

ilObjCourse::setContactResponsibility ( string  $a_value)

Definition at line 233 of file class.ilObjCourse.php.

Referenced by __readSettings().

233  : void
234  {
235  $this->contact_responsibility = $a_value;
236  }
+ Here is the caller graph for this function:

◆ setCourseEnd()

ilObjCourse::setCourseEnd ( ?ilDateTime  $a_value = null)
protected

Definition at line 688 of file class.ilObjCourse.php.

Referenced by setCoursePeriod().

688  : void
689  {
690  $this->crs_end = $a_value;
691  }
+ Here is the caller graph for this function:

◆ setCoursePeriod()

ilObjCourse::setCoursePeriod ( ?ilDateTime  $start = null,
?ilDateTime  $end = null 
)

Definition at line 650 of file class.ilObjCourse.php.

References setCourseEnd(), setCourseStart(), and toggleCourseStartTimeIndication().

Referenced by __readSettings().

650  : void
651  {
652  if (
653  ($start instanceof \ilDate && !$end instanceof ilDate) ||
654  ($end instanceof \ilDate && !$start instanceof ilDate)
655  ) {
656  throw new InvalidArgumentException('Different date types not supported.');
657  }
658 
659  if ($start instanceof \ilDate) {
660  $this->toggleCourseStartTimeIndication(false);
661  } else {
662  $this->toggleCourseStartTimeIndication(true);
663  }
664  $this->setCourseStart($start);
665  $this->setCourseEnd($end);
666  }
setCourseStart(?ilDateTime $a_value=null)
setCourseEnd(?ilDateTime $a_value=null)
toggleCourseStartTimeIndication(bool $time_indication)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ setCourseStart()

ilObjCourse::setCourseStart ( ?ilDateTime  $a_value = null)
protected

Definition at line 678 of file class.ilObjCourse.php.

Referenced by setCoursePeriod().

678  : void
679  {
680  $this->crs_start = $a_value;
681  }
+ Here is the caller graph for this function:

◆ setEnableCourseMap()

ilObjCourse::setEnableCourseMap ( bool  $a_enablemap)

Definition at line 635 of file class.ilObjCourse.php.

Referenced by __readSettings().

635  : void
636  {
637  $this->enablemap = $a_enablemap;
638  }
+ Here is the caller graph for this function:

◆ setImportantInformation()

ilObjCourse::setImportantInformation ( string  $a_info)

Definition at line 163 of file class.ilObjCourse.php.

Referenced by __readSettings().

163  : void
164  {
165  $this->important = $a_info;
166  }
+ Here is the caller graph for this function:

◆ setLatitude()

ilObjCourse::setLatitude ( string  $a_latitude)

Definition at line 605 of file class.ilObjCourse.php.

Referenced by __readSettings().

605  : void
606  {
607  $this->latitude = $a_latitude;
608  }
+ Here is the caller graph for this function:

◆ setLocationZoom()

ilObjCourse::setLocationZoom ( int  $a_locationzoom)

Definition at line 625 of file class.ilObjCourse.php.

Referenced by __readSettings().

625  : void
626  {
627  $this->locationzoom = $a_locationzoom;
628  }
+ Here is the caller graph for this function:

◆ setLongitude()

ilObjCourse::setLongitude ( string  $a_longitude)

Definition at line 615 of file class.ilObjCourse.php.

Referenced by __readSettings().

615  : void
616  {
617  $this->longitude = $a_longitude;
618  }
+ Here is the caller graph for this function:

◆ setMailToMembersType()

ilObjCourse::setMailToMembersType ( int  $a_type)

Definition at line 515 of file class.ilObjCourse.php.

Referenced by __readSettings().

515  : void
516  {
517  $this->mail_members = $a_type;
518  }
+ Here is the caller graph for this function:

◆ setMessage()

ilObjCourse::setMessage ( string  $a_message)

Definition at line 530 of file class.ilObjCourse.php.

Referenced by validate().

530  : void
531  {
532  $this->message = $a_message;
533  }
+ Here is the caller graph for this function:

◆ setNumberOfNextSessions()

ilObjCourse::setNumberOfNextSessions ( int  $a_num)

Definition at line 379 of file class.ilObjCourse.php.

Referenced by __readSettings().

379  : void
380  {
381  $this->session_next = $a_num;
382  }
+ Here is the caller graph for this function:

◆ setNumberOfPreviousSessions()

ilObjCourse::setNumberOfPreviousSessions ( int  $a_num)

Definition at line 369 of file class.ilObjCourse.php.

Referenced by __readSettings().

369  : void
370  {
371  $this->session_prev = $a_num;
372  }
+ Here is the caller graph for this function:

◆ setParentRolePermissions()

ilObjCourse::setParentRolePermissions ( int  $a_parent_ref)

This method is called before "initDefaultRoles".

Therefore now local course roles are created. Grants permissions on the course object for all parent roles. Each permission is granted by computing the intersection of the template il_crs_non_member and the permission template of the parent role.

Definition at line 1305 of file class.ilObjCourse.php.

References __getCrsNonMemberTemplateId(), ilObject\getRefId(), and ROLE_FOLDER_ID.

1305  : bool
1306  {
1307  $parent_roles = $this->rbac_review->getParentRoleIds($a_parent_ref);
1308  foreach ($parent_roles as $parent_role) {
1309  $this->rbac_admin->initIntersectionPermissions(
1310  $this->getRefId(),
1311  $parent_role['obj_id'],
1312  $parent_role['parent'],
1313  $this->__getCrsNonMemberTemplateId(),
1315  );
1316  }
1317  return true;
1318  }
const ROLE_FOLDER_ID
Definition: constants.php:34
+ Here is the call graph for this function:

◆ setRegistrationAccessCode()

ilObjCourse::setRegistrationAccessCode ( string  $a_code)

Definition at line 143 of file class.ilObjCourse.php.

Referenced by __createDefaultSettings(), and __readSettings().

143  : void
144  {
145  $this->reg_access_code = $a_code;
146  }
+ Here is the caller graph for this function:

◆ setShowMembers()

ilObjCourse::setShowMembers ( bool  $a_status)

Definition at line 505 of file class.ilObjCourse.php.

Referenced by __readSettings().

505  : void
506  {
507  $this->show_members = $a_status;
508  }
+ Here is the caller graph for this function:

◆ setShowMembersExport()

ilObjCourse::setShowMembersExport ( bool  $a_mem_export)

Definition at line 133 of file class.ilObjCourse.php.

Referenced by __readSettings().

133  : void
134  {
135  $this->member_export = $a_mem_export;
136  }
+ Here is the caller graph for this function:

◆ setStatusDetermination()

ilObjCourse::setStatusDetermination ( int  $a_value)

Set status determination mode.

Definition at line 1715 of file class.ilObjCourse.php.

References ilObjUserTracking\_enabledLearningProgress().

Referenced by __construct(), and __readSettings().

1715  : void
1716  {
1717  $a_value = $a_value;
1718 
1719  // #13905
1720  if ($a_value == self::STATUS_DETERMINATION_LP) {
1722  $a_value = self::STATUS_DETERMINATION_MANUAL;
1723  }
1724  }
1725 
1726  $this->status_dt = $a_value;
1727  }
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ setSubscriptionEnd()

ilObjCourse::setSubscriptionEnd ( int  $a_value)

Definition at line 303 of file class.ilObjCourse.php.

Referenced by __readSettings().

303  : void
304  {
305  $this->subscription_end = $a_value;
306  }
+ Here is the caller graph for this function:

◆ setSubscriptionLimitationType()

ilObjCourse::setSubscriptionLimitationType ( int  $a_type)

Definition at line 278 of file class.ilObjCourse.php.

Referenced by __readSettings().

278  : void
279  {
280  $this->subscription_limitation_type = $a_type;
281  }
+ Here is the caller graph for this function:

◆ setSubscriptionMaxMembers()

ilObjCourse::setSubscriptionMaxMembers ( int  $a_value)

Definition at line 399 of file class.ilObjCourse.php.

Referenced by __readSettings().

399  : void
400  {
401  $this->subscription_max_members = $a_value;
402  }
+ Here is the caller graph for this function:

◆ setSubscriptionMinMembers()

ilObjCourse::setSubscriptionMinMembers ( int  $a_value)

Definition at line 708 of file class.ilObjCourse.php.

References null.

Referenced by __readSettings().

708  : void
709  {
710  if ($a_value !== null) {
711  $a_value = $a_value;
712  }
713  $this->min_members = $a_value;
714  }
while($session_entry=$r->fetchRow(ilDBConstants::FETCHMODE_ASSOC)) return null
+ Here is the caller graph for this function:

◆ setSubscriptionPassword()

ilObjCourse::setSubscriptionPassword ( string  $a_value)

Definition at line 323 of file class.ilObjCourse.php.

Referenced by __readSettings().

323  : void
324  {
325  $this->subscription_password = $a_value;
326  }
+ Here is the caller graph for this function:

◆ setSubscriptionStart()

ilObjCourse::setSubscriptionStart ( int  $a_value)

Definition at line 293 of file class.ilObjCourse.php.

Referenced by __readSettings().

293  : void
294  {
295  $this->subscription_start = $a_value;
296  }
+ Here is the caller graph for this function:

◆ setSubscriptionType()

ilObjCourse::setSubscriptionType ( int  $a_value)

Definition at line 313 of file class.ilObjCourse.php.

Referenced by __readSettings().

313  : void
314  {
315  $this->subscription_type = $a_value;
316  }
+ Here is the caller graph for this function:

◆ setSyllabus()

ilObjCourse::setSyllabus ( string  $a_syllabus)

Definition at line 173 of file class.ilObjCourse.php.

Referenced by __readSettings().

173  : void
174  {
175  $this->syllabus = $a_syllabus;
176  }
+ Here is the caller graph for this function:

◆ setTargetGroup()

ilObjCourse::setTargetGroup ( ?string  $a_tg)

Definition at line 183 of file class.ilObjCourse.php.

Referenced by __readSettings().

183  : void
184  {
185  $this->target_group = $a_tg;
186  }
+ Here is the caller graph for this function:

◆ setTimingMode()

ilObjCourse::setTimingMode ( int  $a_mode)

Definition at line 447 of file class.ilObjCourse.php.

Referenced by __readSettings().

447  : void
448  {
449  $this->timing_mode = $a_mode;
450  }
+ Here is the caller graph for this function:

◆ setTutorialSupportBlockSettingValue()

ilObjCourse::setTutorialSupportBlockSettingValue ( int  $value)

Definition at line 457 of file class.ilObjCourse.php.

Referenced by __readSettings().

457  : void
458  {
459  $this->tutorial_support_block_setting_value = $value;
460  }
+ Here is the caller graph for this function:

◆ setViewMode()

ilObjCourse::setViewMode ( int  $a_mode)

Definition at line 421 of file class.ilObjCourse.php.

Referenced by __readSettings().

421  : void
422  {
423  $this->view_mode = $a_mode;
424  }
+ Here is the caller graph for this function:

◆ setWaitingListAutoFill()

ilObjCourse::setWaitingListAutoFill ( bool  $a_value)

Definition at line 721 of file class.ilObjCourse.php.

Referenced by __readSettings().

721  : void
722  {
723  $this->auto_fill_from_waiting = $a_value;
724  }
+ Here is the caller graph for this function:

◆ syncMembersStatusWithLP()

ilObjCourse::syncMembersStatusWithLP ( )

Definition at line 1737 of file class.ilObjCourse.php.

References $user_id, ilLPStatusWrapper\_updateStatus(), ilObject\getId(), getMembersObject(), and null.

1737  : void
1738  {
1739  foreach ($this->getMembersObject()->getParticipants() as $user_id) {
1740  // #15529 - force raise on sync
1741  ilLPStatusWrapper::_updateStatus($this->getId(), $user_id, null, false, true);
1742  }
1743  }
while($session_entry=$r->fetchRow(ilDBConstants::FETCHMODE_ASSOC)) return null
static _updateStatus(int $a_obj_id, int $a_usr_id, ?object $a_obj=null, bool $a_percentage=false, bool $a_force_raise=false)
+ Here is the call graph for this function:

◆ toggleCourseStartTimeIndication()

ilObjCourse::toggleCourseStartTimeIndication ( bool  $time_indication)
protected

Definition at line 668 of file class.ilObjCourse.php.

Referenced by __readSettings(), and setCoursePeriod().

668  : void
669  {
670  $this->course_start_time_indication = $time_indication;
671  }
+ Here is the caller graph for this function:

◆ update()

ilObjCourse::update ( )

Definition at line 945 of file class.ilObjCourse.php.

References ilObject\getId(), getOrderType(), prepareAppointments(), ilObject\updateMetaData(), and updateSettings().

945  : bool
946  {
947  $sorting = new ilContainerSortingSettings($this->getId());
948  $sorting->setSortMode($this->getOrderType());
949  $sorting->update();
950 
951  $this->updateMetaData();
952  $this->updateSettings();
953  parent::update();
954 
955  $this->app_event_handler->raise(
956  'components/ILIAS/Course',
957  'update',
958  array('object' => $this,
959  'obj_id' => $this->getId(),
960  'appointments' => $this->prepareAppointments('update')
961  )
962  );
963  return true;
964  }
prepareAppointments(string $a_mode='create')
Prepare calendar appointments.
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
+ Here is the call graph for this function:

◆ updateSettings()

ilObjCourse::updateSettings ( )

Definition at line 968 of file class.ilObjCourse.php.

References $res, __createDefaultSettings(), ilCalendarUtil\convertDateToUtcDBTimestamp(), enabledWaitingList(), getAboStatus(), getActivationEnd(), getActivationStart(), getActivationVisibility(), getAutoNotification(), getCancellationEnd(), getContactConsultation(), getContactEmail(), getContactName(), getContactPhone(), getContactResponsibility(), getCourseEnd(), getCourseStart(), getCourseStartTimeIndication(), getEnableCourseMap(), ilObject\getId(), getImportantInformation(), ilObjectActivation\getItem(), getLatitude(), getLocationZoom(), getLongitude(), getMailToMembersType(), getNumberOfNextSessions(), getNumberOfPreviousSessions(), ilObject\getOfflineStatus(), getRegistrationAccessCode(), getShowMembers(), getShowMembersExport(), getStatusDetermination(), getSubscriptionEnd(), getSubscriptionLimitationType(), getSubscriptionMaxMembers(), getSubscriptionMinMembers(), getSubscriptionNotify(), getSubscriptionPassword(), getSubscriptionStart(), getSubscriptionType(), getSyllabus(), getTargetGroup(), getTimingMode(), getTutorialSupportBlockSettingValue(), getViewMode(), hasWaitingListAutoFill(), IL_CAL_UNIX, isRegistrationAccessCodeEnabled(), isSessionLimitEnabled(), isSubscriptionMembershipLimited(), null, ilDBConstants\T_INTEGER, ilDBConstants\T_TEXT, ilDBConstants\T_TIMESTAMP, ilObjectActivation\TIMINGS_ACTIVATION, and ilObjectActivation\TIMINGS_DEACTIVATED.

Referenced by update().

968  : void
969  {
970  $query = "SELECT * FROM crs_settings WHERE obj_id = " . $this->db->quote($this->getId(), 'integer') . " ";
971  $res = $this->db->query($query);
972 
973  if (!$res->numRows()) {
974  $this->__createDefaultSettings();
975  }
976 
977  $query = "UPDATE crs_settings SET " .
978  'tutorial_support_block = ' . $this->db->quote($this->getTutorialSupportBlockSettingValue(), 'integer') . ", " .
979  "syllabus = " . $this->db->quote($this->getSyllabus(), 'text') . ", " .
980  "contact_name = " . $this->db->quote($this->getContactName(), 'text') . ", " .
981  "contact_responsibility = " . $this->db->quote($this->getContactResponsibility(), 'text') . ", " .
982  "contact_phone = " . $this->db->quote($this->getContactPhone(), 'text') . ", " .
983  "contact_email = " . $this->db->quote($this->getContactEmail(), 'text') . ", " .
984  "contact_consultation = " . $this->db->quote($this->getContactConsultation(), 'text') . ", " .
985  "activation_type = " . $this->db->quote(!$this->getOfflineStatus(), 'integer') . ", " .
986  "sub_limitation_type = " . $this->db->quote($this->getSubscriptionLimitationType(), 'integer') . ", " .
987  "sub_start = " . $this->db->quote($this->getSubscriptionStart(), 'integer') . ", " .
988  "sub_end = " . $this->db->quote($this->getSubscriptionEnd(), 'integer') . ", " .
989  "sub_type = " . $this->db->quote($this->getSubscriptionType(), 'integer') . ", " .
990  "sub_password = " . $this->db->quote($this->getSubscriptionPassword(), 'text') . ", " .
991  "sub_mem_limit = " . $this->db->quote((int) $this->isSubscriptionMembershipLimited(), 'integer') . ", " .
992  "sub_max_members = " . $this->db->quote($this->getSubscriptionMaxMembers(), 'integer') . ", " .
993  "sub_notify = " . $this->db->quote($this->getSubscriptionNotify(), 'integer') . ", " .
994  "view_mode = " . $this->db->quote($this->getViewMode(), 'integer') . ", " .
995  'timing_mode = ' . $this->db->quote($this->getTimingMode(), 'integer') . ', ' .
996  "abo = " . $this->db->quote($this->getAboStatus(), 'integer') . ", " .
997  "waiting_list = " . $this->db->quote($this->enabledWaitingList(), 'integer') . ", " .
998  "important = " . $this->db->quote($this->getImportantInformation(), 'text') . ", " .
999  'target_group = ' . $this->db->quote($this->getTargetGroup(), \ilDBConstants::T_TEXT) . ', ' .
1000  "show_members = " . $this->db->quote($this->getShowMembers(), 'integer') . ", " .
1001  "show_members_export = " . $this->db->quote($this->getShowMembersExport(), 'integer') . ", " .
1002  "latitude = " . $this->db->quote($this->getLatitude(), 'text') . ", " .
1003  "longitude = " . $this->db->quote($this->getLongitude(), 'text') . ", " .
1004  "location_zoom = " . $this->db->quote($this->getLocationZoom(), 'integer') . ", " .
1005  "enable_course_map = " . $this->db->quote((int) $this->getEnableCourseMap(), 'integer') . ", " .
1006  'session_limit = ' . $this->db->quote($this->isSessionLimitEnabled(), 'integer') . ', ' .
1007  'session_prev = ' . $this->db->quote($this->getNumberOfPreviousSessions(), 'integer') . ', ' .
1008  'session_next = ' . $this->db->quote($this->getNumberOfNextSessions(), 'integer') . ', ' .
1009  'reg_ac_enabled = ' . $this->db->quote($this->isRegistrationAccessCodeEnabled(), 'integer') . ', ' .
1010  'reg_ac = ' . $this->db->quote($this->getRegistrationAccessCode(), 'text') . ', ' .
1011  'auto_notification = ' . $this->db->quote((int) $this->getAutoNotification(), 'integer') . ', ' .
1012  'status_dt = ' . $this->db->quote($this->getStatusDetermination(), ilDBConstants::T_INTEGER) . ', ' .
1013  'mail_members_type = ' . $this->db->quote($this->getMailToMembersType(), 'integer') . ', ' .
1014  'period_start = ' . $this->db->quote(
1017  ) . ', ' .
1018  'period_end = ' . $this->db->quote(
1021  ) . ', ' .
1022  'period_time_indication = ' . $this->db->quote(
1023  $this->getCourseStartTimeIndication() ? 1 : 0,
1025  ) . ', ' .
1026  'auto_wait = ' . $this->db->quote((int) $this->hasWaitingListAutoFill(), 'integer') . ', ' .
1027  'leave_end = ' . $this->db->quote(
1028  ($this->getCancellationEnd() && !$this->getCancellationEnd()->isNull()) ? $this->getCancellationEnd()->get(IL_CAL_UNIX) : null,
1029  'integer'
1030  ) . ', ' .
1031  'min_members = ' . $this->db->quote($this->getSubscriptionMinMembers(), 'integer') . ' ' .
1032  "WHERE obj_id = " . $this->db->quote($this->getId(), 'integer') . "";
1033 
1034  $res = $this->db->manipulate($query);
1035 
1036  // moved activation to ilObjectActivation
1037  if ($this->ref_id ?? false) {
1038  ilObjectActivation::getItem($this->ref_id);
1039 
1040  $item = new ilObjectActivation();
1041  if (!$this->getActivationStart() || !$this->getActivationEnd()) {
1042  $item->setTimingType(ilObjectActivation::TIMINGS_DEACTIVATED);
1043  } else {
1044  $item->setTimingType(ilObjectActivation::TIMINGS_ACTIVATION);
1045  $item->setTimingStart($this->getActivationStart());
1046  $item->setTimingEnd($this->getActivationEnd());
1047  $item->toggleVisible($this->getActivationVisibility());
1048  }
1049  $item->update($this->ref_id);
1050  }
1051  }
$res
Definition: ltiservices.php:66
getStatusDetermination()
Get status determination mode.
const IL_CAL_UNIX
while($session_entry=$r->fetchRow(ilDBConstants::FETCHMODE_ASSOC)) return null
static convertDateToUtcDBTimestamp(?\ilDateTime $date=null)
getTutorialSupportBlockSettingValue()
getAutoNotification()
Returns automatic notification status from $this->auto_notification.
static getItem(int $ref_id)
Class ilObjectActivation.
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ validate()

ilObjCourse::validate ( )

Definition at line 845 of file class.ilObjCourse.php.

References appendMessage(), enabledWaitingList(), getCourseEnd(), getCourseStart(), getMessage(), getStatusDetermination(), getSubscriptionEnd(), getSubscriptionLimitationType(), getSubscriptionMaxMembers(), getSubscriptionMinMembers(), getSubscriptionPassword(), getSubscriptionStart(), getSubscriptionType(), ilObject\getTitle(), IL_CAL_UNIX, ilCourseConstants\IL_CRS_SUBSCRIPTION_LIMITED, ilCourseConstants\IL_CRS_SUBSCRIPTION_PASSWORD, isSubscriptionMembershipLimited(), ILIAS\Repository\lng(), and setMessage().

845  : bool
846  {
847  $this->setMessage('');
848 
850  $this->getSubscriptionStart() > $this->getSubscriptionEnd()) {
851  $this->appendMessage($this->lng->txt("subscription_times_not_valid"));
852  }
854  $this->appendMessage($this->lng->txt("crs_password_required"));
855  }
856  if ($this->isSubscriptionMembershipLimited()) {
857  if ($this->getSubscriptionMinMembers() <= 0 && $this->getSubscriptionMaxMembers() <= 0) {
858  $this->appendMessage($this->lng->txt("crs_max_and_min_members_needed"));
859  }
860  if ($this->getSubscriptionMaxMembers() <= 0 && $this->enabledWaitingList()) {
861  $this->appendMessage($this->lng->txt("crs_max_members_needed"));
862  }
863  if ($this->getSubscriptionMaxMembers() > 0 && $this->getSubscriptionMinMembers() > $this->getSubscriptionMaxMembers()) {
864  $this->appendMessage($this->lng->txt("crs_max_and_min_members_invalid"));
865  }
866  }
867  if (!$this->getTitle() || !$this->getStatusDetermination()) {
868  $this->appendMessage($this->lng->txt('err_check_input'));
869  }
870  if (($this->getCourseStart() && !$this->getCourseEnd()) ||
871  (!$this->getCourseStart() && $this->getCourseEnd()) ||
872  ($this->getCourseStart() && $this->getCourseEnd() && $this->getCourseStart()->get(IL_CAL_UNIX) > $this->getCourseEnd()->get(IL_CAL_UNIX))) {
873  $this->appendMessage($this->lng->txt("crs_course_period_not_valid"));
874  }
875 
876  return strlen($this->getMessage()) > 0;
877  }
appendMessage(string $a_message)
getStatusDetermination()
Get status determination mode.
const IL_CAL_UNIX
setMessage(string $a_message)
+ Here is the call graph for this function:

◆ validateInfoSettings()

ilObjCourse::validateInfoSettings ( )

Definition at line 879 of file class.ilObjCourse.php.

References ilObject\$error, getContactEmail(), ilObjUser\getUserIdByLogin(), ilUtil\is_email(), and ILIAS\Repository\lng().

879  : bool
880  {
881  $error = false;
882  if ($this->getContactEmail()) {
883  $emails = explode(",", $this->getContactEmail());
884 
885  foreach ($emails as $email) {
886  $email = trim($email);
887  if (!ilUtil::is_email($email) && !ilObjUser::getUserIdByLogin($email)) {
888  $this->error->appendMessage($this->lng->txt('contact_email_not_valid') . " '" . $email . "'");
889  $error = true;
890  }
891  }
892  }
893  return !$error;
894  }
static is_email(string $a_email, ?ilMailRfc822AddressParserFactory $mailAddressParserFactory=null)
This preg-based function checks whether an e-mail address is formally valid.
static getUserIdByLogin(string $a_login)
ilErrorHandling $error
+ Here is the call graph for this function:

Field Documentation

◆ $abo

bool ilObjCourse::$abo = true
private

Definition at line 51 of file class.ilObjCourse.php.

Referenced by getAboStatus().

◆ $activation_end

int ilObjCourse::$activation_end = 0
private

Definition at line 87 of file class.ilObjCourse.php.

Referenced by getActivationEnd().

◆ $activation_start

int ilObjCourse::$activation_start = 0
private

Definition at line 86 of file class.ilObjCourse.php.

Referenced by getActivationStart().

◆ $activation_visibility

bool ilObjCourse::$activation_visibility = false
private

Definition at line 88 of file class.ilObjCourse.php.

Referenced by getActivationVisibility().

◆ $auto_fill_from_waiting

bool ilObjCourse::$auto_fill_from_waiting = false
private

Definition at line 80 of file class.ilObjCourse.php.

Referenced by hasWaitingListAutoFill().

◆ $auto_notification

bool ilObjCourse::$auto_notification = true
private

Definition at line 84 of file class.ilObjCourse.php.

Referenced by getAutoNotification().

◆ $contact_consultation

string ilObjCourse::$contact_consultation = ''
private

Definition at line 37 of file class.ilObjCourse.php.

Referenced by getContactConsultation().

◆ $contact_email

string ilObjCourse::$contact_email = ''
private

Definition at line 39 of file class.ilObjCourse.php.

Referenced by getContactEmail().

◆ $contact_name

string ilObjCourse::$contact_name = ''
private

Definition at line 40 of file class.ilObjCourse.php.

Referenced by getContactName().

◆ $contact_phone

string ilObjCourse::$contact_phone = ''
private

Definition at line 38 of file class.ilObjCourse.php.

Referenced by getContactPhone().

◆ $contact_responsibility

string ilObjCourse::$contact_responsibility = ''
private

Definition at line 41 of file class.ilObjCourse.php.

Referenced by getContactResponsibility().

◆ $course_logger

ilLogger ilObjCourse::$course_logger
private

Definition at line 58 of file class.ilObjCourse.php.

◆ $course_start_time_indication

bool ilObjCourse::$course_start_time_indication = true
private

Definition at line 54 of file class.ilObjCourse.php.

Referenced by getCourseStartTimeIndication().

◆ $crs_end

ilDateTime ilObjCourse::$crs_end = null
private

Definition at line 77 of file class.ilObjCourse.php.

Referenced by getCourseEnd().

◆ $crs_start

ilDateTime ilObjCourse::$crs_start = null
private

Definition at line 76 of file class.ilObjCourse.php.

Referenced by getCourseStart().

◆ $crs_start_time_indication

bool ilObjCourse::$crs_start_time_indication = false
private

Definition at line 74 of file class.ilObjCourse.php.

◆ $enablemap

bool ilObjCourse::$enablemap = false
private

Definition at line 62 of file class.ilObjCourse.php.

Referenced by getEnableCourseMap().

◆ $important

string ilObjCourse::$important = ''
private

Definition at line 56 of file class.ilObjCourse.php.

Referenced by getImportantInformation().

◆ $latitude

string ilObjCourse::$latitude = ''
private

Definition at line 59 of file class.ilObjCourse.php.

Referenced by getLatitude().

◆ $leave_end

ilDate ilObjCourse::$leave_end = null
private

Definition at line 78 of file class.ilObjCourse.php.

Referenced by getCancellationEnd().

◆ $local_roles

array ilObjCourse::$local_roles = []
private

Definition at line 93 of file class.ilObjCourse.php.

Referenced by getLocalCourseRoles().

◆ $locationzoom

int ilObjCourse::$locationzoom = 0
private

Definition at line 61 of file class.ilObjCourse.php.

Referenced by getLocationZoom().

◆ $longitude

string ilObjCourse::$longitude = ''
private

Definition at line 60 of file class.ilObjCourse.php.

Referenced by getLongitude().

◆ $mail_members

int ilObjCourse::$mail_members = ilCourseConstants::MAIL_ALLOWED_ALL
private

Definition at line 72 of file class.ilObjCourse.php.

Referenced by getMailToMembersType().

◆ $member_export

bool ilObjCourse::$member_export = false
private

Definition at line 81 of file class.ilObjCourse.php.

Referenced by getShowMembersExport().

◆ $member_obj

ilCourseParticipant ilObjCourse::$member_obj = null
private

Definition at line 90 of file class.ilObjCourse.php.

Referenced by getMemberObject().

◆ $members_obj

ilCourseParticipants ilObjCourse::$members_obj = null
private

Definition at line 91 of file class.ilObjCourse.php.

Referenced by getMembersObject().

◆ $message

string ilObjCourse::$message = ''
private

Definition at line 53 of file class.ilObjCourse.php.

Referenced by getMessage().

◆ $min_members

int ilObjCourse::$min_members = 0
private

Definition at line 79 of file class.ilObjCourse.php.

Referenced by getSubscriptionMinMembers().

◆ $reg_access_code

string ilObjCourse::$reg_access_code = ''
private

Definition at line 68 of file class.ilObjCourse.php.

Referenced by getRegistrationAccessCode().

◆ $reg_access_code_enabled

bool ilObjCourse::$reg_access_code_enabled = false
private

Definition at line 69 of file class.ilObjCourse.php.

Referenced by isRegistrationAccessCodeEnabled().

◆ $session_limit

int ilObjCourse::$session_limit = 0
private

Definition at line 64 of file class.ilObjCourse.php.

Referenced by isSessionLimitEnabled().

◆ $session_next

int ilObjCourse::$session_next = -1
private

Definition at line 66 of file class.ilObjCourse.php.

Referenced by getNumberOfNextSessions().

◆ $session_prev

int ilObjCourse::$session_prev = -1
private

Definition at line 65 of file class.ilObjCourse.php.

Referenced by getNumberOfPreviousSessions().

◆ $show_members

bool ilObjCourse::$show_members = true
private

Definition at line 52 of file class.ilObjCourse.php.

Referenced by getShowMembers().

◆ $status_dt

int ilObjCourse::$status_dt = 0
private

Definition at line 70 of file class.ilObjCourse.php.

Referenced by getStatusDetermination().

◆ $subscription_end

int ilObjCourse::$subscription_end = 0
private

Definition at line 44 of file class.ilObjCourse.php.

Referenced by getSubscriptionEnd().

◆ $subscription_limitation_type

int ilObjCourse::$subscription_limitation_type = 0
private

Definition at line 42 of file class.ilObjCourse.php.

Referenced by getSubscriptionLimitationType().

◆ $subscription_max_members

int ilObjCourse::$subscription_max_members = 0
private

Definition at line 50 of file class.ilObjCourse.php.

Referenced by getSubscriptionMaxMembers().

◆ $subscription_membership_limitation

bool ilObjCourse::$subscription_membership_limitation = false
private

Definition at line 49 of file class.ilObjCourse.php.

Referenced by isSubscriptionMembershipLimited().

◆ $subscription_password

string ilObjCourse::$subscription_password = ''
private

Definition at line 46 of file class.ilObjCourse.php.

Referenced by getSubscriptionPassword().

◆ $subscription_start

int ilObjCourse::$subscription_start = 0
private

Definition at line 43 of file class.ilObjCourse.php.

Referenced by getSubscriptionStart().

◆ $subscription_type

int ilObjCourse::$subscription_type = 0
private

Definition at line 45 of file class.ilObjCourse.php.

◆ $syllabus

string ilObjCourse::$syllabus = ''
private

Definition at line 57 of file class.ilObjCourse.php.

Referenced by getSyllabus().

◆ $target_group

string ilObjCourse::$target_group = null
private

Definition at line 85 of file class.ilObjCourse.php.

Referenced by getTargetGroup().

◆ $timing_mode

int ilObjCourse::$timing_mode = ilCourseConstants::IL_CRS_VIEW_TIMING_ABSOLUTE
private

Definition at line 82 of file class.ilObjCourse.php.

Referenced by getTimingMode().

◆ $tutorial_support_block_setting_value

int ilObjCourse::$tutorial_support_block_setting_value = 0
private

Definition at line 83 of file class.ilObjCourse.php.

Referenced by getTutorialSupportBlockSettingValue().

◆ $view_mode

int ilObjCourse::$view_mode = 0
private

Definition at line 47 of file class.ilObjCourse.php.

Referenced by getViewMode().

◆ $waiting_list

bool ilObjCourse::$waiting_list = false
private

Definition at line 48 of file class.ilObjCourse.php.

Referenced by enabledWaitingList().

◆ $waiting_list_obj

ilCourseWaitingList ilObjCourse::$waiting_list_obj = null
private

Definition at line 55 of file class.ilObjCourse.php.

◆ CAL_ACTIVATION_END

const ilObjCourse::CAL_ACTIVATION_END = 4

Definition at line 28 of file class.ilObjCourse.php.

◆ CAL_ACTIVATION_START

const ilObjCourse::CAL_ACTIVATION_START = 3

Definition at line 27 of file class.ilObjCourse.php.

◆ CAL_COURSE_END

const ilObjCourse::CAL_COURSE_END = 6

Definition at line 30 of file class.ilObjCourse.php.

◆ CAL_COURSE_START

const ilObjCourse::CAL_COURSE_START = 5

Definition at line 29 of file class.ilObjCourse.php.

◆ CAL_COURSE_TIMING_END

◆ CAL_COURSE_TIMING_START

◆ CAL_REG_END

const ilObjCourse::CAL_REG_END = 2

Definition at line 26 of file class.ilObjCourse.php.

◆ CAL_REG_START

const ilObjCourse::CAL_REG_START = 1

Definition at line 25 of file class.ilObjCourse.php.

◆ STATUS_DETERMINATION_LP

◆ STATUS_DETERMINATION_MANUAL

const ilObjCourse::STATUS_DETERMINATION_MANUAL = 2

Definition at line 35 of file class.ilObjCourse.php.

Referenced by ilObjCourseGUI\initEditForm().


The documentation for this class was generated from the following file: