ILIAS  trunk Revision v11.0_alpha-2638-g80c1d007f79
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 ()
 
 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 $target_id, int $copy_id=0, bool $omit_tree=false)
 Clone course (no member data) More...
 
 cloneDependencies (int $target_id, int $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 return true if all object data were removed; false if only a references were removed More...
 
 update ()
 
 updateSettings ()
 
 cloneSettings (ilObject $new_obj)
 
 __createDefaultSettings ()
 
 __readSettings ()
 
 initWaitingList ()
 
 getMemberObject ()
 
 getMembersObject ()
 
 initDefaultRoles ()
 
 setParentRolePermissions (int $parent_ref_id)
 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 (?Translations $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, int $new_obj_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 int CAL_REG_START = 1
 
const int CAL_REG_END = 2
 
const int CAL_ACTIVATION_START = 3
 
const int CAL_ACTIVATION_END = 4
 
const int CAL_COURSE_START = 5
 
const int CAL_COURSE_END = 6
 
const int CAL_COURSE_TIMING_START = 7
 
const int CAL_COURSE_TIMING_END = 8
 
const int STATUS_DETERMINATION_LP = 1
 
const int 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
 
Translations $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:26
__construct(Container $dic, ilPlugin $plugin)
+ Here is the call graph for this function:

Member Function Documentation

◆ __createDefaultSettings()

ilObjCourse::__createDefaultSettings ( )

Definition at line 1100 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().

1100  : void
1101  {
1103 
1104  $query = "INSERT INTO crs_settings (obj_id,syllabus,contact_name,contact_responsibility," .
1105  "contact_phone,contact_email,contact_consultation," .
1106  "sub_limitation_type,sub_start,sub_end,sub_type,sub_password,sub_mem_limit," .
1107  "sub_max_members,sub_notify,view_mode,timing_mode,abo," .
1108  "latitude,longitude,location_zoom,enable_course_map,waiting_list,show_members,show_members_export, " .
1109  "session_limit,session_prev,session_next, reg_ac_enabled, reg_ac, auto_notification, status_dt, " .
1110  "mail_members_type, tutorial_support_block) " .
1111  "VALUES( " .
1112  $this->db->quote($this->getId(), 'integer') . ", " .
1113  $this->db->quote($this->getSyllabus(), 'text') . ", " .
1114  $this->db->quote($this->getContactName(), 'text') . ", " .
1115  $this->db->quote($this->getContactResponsibility(), 'text') . ", " .
1116  $this->db->quote($this->getContactPhone(), 'text') . ", " .
1117  $this->db->quote($this->getContactEmail(), 'text') . ", " .
1118  $this->db->quote($this->getContactConsultation(), 'text') . ", " .
1119  $this->db->quote(ilCourseConstants::IL_CRS_SUBSCRIPTION_DEACTIVATED, 'integer') . ", " .
1120  $this->db->quote($this->getSubscriptionStart(), 'integer') . ", " .
1121  $this->db->quote($this->getSubscriptionEnd(), 'integer') . ", " .
1122  $this->db->quote(ilCourseConstants::IL_CRS_SUBSCRIPTION_DIRECT, 'integer') . ", " .
1123  $this->db->quote($this->getSubscriptionPassword(), 'text') . ", " .
1124  "0, " .
1125  $this->db->quote($this->getSubscriptionMaxMembers(), 'integer') . ", " .
1126  "1, " .
1127  "0, " .
1128  $this->db->quote(ilCourseConstants::IL_CRS_VIEW_TIMING_ABSOLUTE, 'integer') . ', ' .
1129  $this->db->quote($this->getAboStatus(), 'integer') . ", " .
1130  $this->db->quote($this->getLatitude(), 'text') . ", " .
1131  $this->db->quote($this->getLongitude(), 'text') . ", " .
1132  $this->db->quote($this->getLocationZoom(), 'integer') . ", " .
1133  $this->db->quote($this->getEnableCourseMap(), 'integer') . ", " .
1134  #"objective_view = '0', ".
1135  "1, " .
1136  "1," .
1137  '0,' .
1138  $this->db->quote($this->isSessionLimitEnabled(), 'integer') . ', ' .
1139  $this->db->quote($this->getNumberOfPreviousSessions(), 'integer') . ', ' .
1140  $this->db->quote($this->getNumberOfPreviousSessions(), 'integer') . ', ' .
1141  $this->db->quote($this->isRegistrationAccessCodeEnabled(), 'integer') . ', ' .
1142  $this->db->quote($this->getRegistrationAccessCode(), 'text') . ', ' .
1143  $this->db->quote((int) $this->getAutoNotification(), 'integer') . ', ' .
1144  $this->db->quote($this->getStatusDetermination(), 'integer') . ', ' .
1145  $this->db->quote($this->getMailToMembersType(), 'integer') . ', ' .
1146  $this->db->quote($this->getTutorialSupportBlockSettingValue(), 'integer') . ' ' .
1147  ")";
1148 
1149  $res = $this->db->manipulate($query);
1150  $this->__readSettings();
1151 
1152  $sorting = new ilContainerSortingSettings($this->getId());
1153  $sorting->setSortMode(ilContainer::SORT_MANUAL);
1154  $sorting->update();
1155  }
$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 1411 of file class.ilObjCourse.php.

References ilObject\getId().

Referenced by delete().

1411  : void
1412  {
1413  $query = "DELETE FROM crs_settings " .
1414  "WHERE obj_id = " . $this->db->quote($this->getId(), 'integer') . " ";
1415  $this->db->manipulate($query);
1416  }
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ __getCrsNonMemberTemplateId()

ilObjCourse::__getCrsNonMemberTemplateId ( )

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

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

Referenced by setParentRolePermissions().

1311  : int
1312  {
1313  $q = "SELECT obj_id FROM object_data WHERE type='rolt' AND title='il_crs_non_member'";
1314  $res = $this->ilias->db->query($q);
1315  $row = $res->fetchRow(ilDBConstants::FETCHMODE_ASSOC);
1316  return (int) $row["obj_id"];
1317  }
$res
Definition: ltiservices.php:66
Class ilObjForumAdministration.
$q
Definition: shib_logout.php:23
+ Here is the caller graph for this function:

◆ __getLocalRoles()

ilObjCourse::__getLocalRoles ( )
Returns
int[]

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

References ilObject\getRefId().

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

1406  : array
1407  {
1408  return $this->rbac_review->getRolesOfRoleFolder($this->getRefId(), false);
1409  }
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ __readSettings()

ilObjCourse::__readSettings ( )

Definition at line 1157 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().

1157  : void
1158  {
1159  $query = "SELECT * FROM crs_settings WHERE obj_id = " . $this->db->quote($this->getId(), 'integer');
1160  $res = $this->db->query($query);
1161  while ($row = $res->fetchRow(ilDBConstants::FETCHMODE_OBJECT)) {
1162  $this->setTutorialSupportBlockSettingValue((int) $row->tutorial_support_block);
1163  $this->setSyllabus((string) $row->syllabus);
1164  $this->setTargetGroup($row->target_group);
1165  $this->setContactName((string) $row->contact_name);
1166  $this->setContactResponsibility((string) $row->contact_responsibility);
1167  $this->setContactPhone((string) $row->contact_phone);
1168  $this->setContactEmail((string) $row->contact_email);
1169  $this->setContactConsultation((string) $row->contact_consultation);
1170  $this->setSubscriptionLimitationType((int) $row->sub_limitation_type);
1171  $this->setSubscriptionStart((int) $row->sub_start);
1172  $this->setSubscriptionEnd((int) $row->sub_end);
1173  $this->setSubscriptionType((int) $row->sub_type);
1174  $this->setSubscriptionPassword((string) $row->sub_password);
1175  $this->enableSubscriptionMembershipLimitation((bool) $row->sub_mem_limit);
1176  $this->setSubscriptionMaxMembers((int) $row->sub_max_members);
1177  $this->setViewMode((int) $row->view_mode);
1178  $this->setTimingMode((int) $row->timing_mode);
1179  $this->setAboStatus((bool) $row->abo);
1180  $this->enableWaitingList((bool) $row->waiting_list);
1181  $this->setImportantInformation((string) $row->important);
1182  $this->setShowMembers((bool) $row->show_members);
1183 
1184  if (\ilPrivacySettings::getInstance()->participantsListInCoursesEnabled()) {
1185  $this->setShowMembersExport((bool) $row->show_members_export);
1186  } else {
1187  $this->setShowMembersExport(false);
1188  }
1189  $this->setLatitude((string) $row->latitude);
1190  $this->setLongitude((string) $row->longitude);
1191  $this->setLocationZoom((int) $row->location_zoom);
1192  $this->setEnableCourseMap((bool) $row->enable_course_map);
1193  $this->enableSessionLimit((int) $row->session_limit);
1194  $this->setNumberOfPreviousSessions((int) $row->session_prev);
1195  $this->setNumberOfNextSessions((int) $row->session_next);
1196  $this->enableRegistrationAccessCode((bool) $row->reg_ac_enabled);
1197  $this->setRegistrationAccessCode((string) $row->reg_ac);
1198  $this->setAutoNotification((bool) $row->auto_notification);
1199  $this->setStatusDetermination((int) $row->status_dt);
1200  $this->setMailToMembersType((int) $row->mail_members_type);
1201 
1202  if ($row->period_time_indication) {
1203  $this->setCoursePeriod(
1204  new \ilDateTime($row->period_start, IL_CAL_DATETIME, \ilTimeZone::UTC),
1205  new \ilDateTime($row->period_end, IL_CAL_DATETIME, \ilTimeZone::UTC)
1206  );
1207  } elseif (!is_null($row->period_start) && !is_null($row->period_end)) {
1208  $this->setCoursePeriod(
1209  new \ilDate($row->period_start, IL_CAL_DATE),
1210  new \ilDate($row->period_end, IL_CAL_DATE)
1211  );
1212  }
1213  $this->toggleCourseStartTimeIndication((bool) $row->period_time_indication);
1214  $this->setCancellationEnd($row->leave_end ? new ilDate($row->leave_end, IL_CAL_UNIX) : null);
1215  $this->setWaitingListAutoFill((bool) $row->auto_wait);
1216  $this->setSubscriptionMinMembers((int) $row->min_members);
1217  }
1218 
1219  // moved activation to ilObjectActivation
1220  if ($this->ref_id ?? false) {
1221  $activation = ilObjectActivation::getItem($this->ref_id);
1222  switch ($activation["timing_type"]) {
1224  $this->setActivationStart((int) $activation["timing_start"]);
1225  $this->setActivationEnd((int) $activation["timing_end"]);
1226  $this->setActivationVisibility((bool) $activation["visible"]);
1227  break;
1228  }
1229  }
1230  }
$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 1456 of file class.ilObjCourse.php.

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

Referenced by ilObjUser\delete().

1456  : void
1457  {
1458  ilCourseLMHistory::_deleteUser($a_usr_id);
1461  }
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:26

◆ _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:26
+ 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:26
+ 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 1474 of file class.ilObjCourse.php.

References ilObjectActivation\addAdditionalSubItemInformation().

1474  : void
1475  {
1477  }
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 1740 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().

1740  : void
1741  {
1742  // #11113
1745  // #13811 - we need to suppress creation if status entry
1746  $has_completed = (ilLPStatus::_lookupStatus(
1747  $this->getId(),
1748  $a_member_id,
1749  false
1751  $this->getMembersObject()->updatePassed($a_member_id, $has_completed, false, true);
1752  }
1753  }
const LP_STATUS_COMPLETED_NUM
getStatusDetermination()
Get status determination mode.
const int 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 810 of file class.ilObjCourse.php.

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

Referenced by cloneObject().

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

◆ cloneDependencies()

ilObjCourse::cloneDependencies ( int  $target_id,
int  $copy_id 
)

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

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

780  : bool
781  {
782  parent::cloneDependencies($target_id, $copy_id);
783 
784  // Clone course start objects
785  $start = new ilContainerStartObjects($this->getRefId(), $this->getId());
786  $start->cloneDependencies($target_id, $copy_id);
787 
788  // Clone course item settings
789  ilObjectActivation::cloneDependencies($this->getRefId(), $target_id, $copy_id);
790 
791  // clone objective settings
792  ilLOSettings::cloneSettings($copy_id, $this->getId(), ilObject::_lookupObjId($target_id));
793 
794  // Clone course learning objectives
795  $crs_objective = new ilCourseObjective($this);
796  $crs_objective->ilClone($target_id, $copy_id);
797 
798  // clone membership limitation
799  foreach (\ilObjCourseGrouping::_getGroupings($this->getId()) as $grouping_id) {
800  $this->course_logger->info('Handling grouping id: ' . $grouping_id);
801  $grouping = new \ilObjCourseGrouping($grouping_id);
802  $grouping->cloneGrouping($target_id, $copy_id);
803  }
804  return true;
805  }
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  $target_id,
int  $copy_id = 0,
bool  $omit_tree = false 
)

Clone course (no member data)

Definition at line 732 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().

732  : ?ilObject
733  {
734  global $DIC;
735 
736  $new_obj = parent::cloneObject($target_id, $copy_id, $omit_tree);
737 
738  $this->cloneAutoGeneratedRoles($new_obj);
739  $this->cloneMetaData($new_obj);
740 
741  $new_obj->getMemberObject()->add($this->user->getId(), ilParticipants::IL_CRS_ADMIN);
742  $new_obj->getMemberObject()->updateContact($this->user->getId(), 1);
743 
744  $cwo = ilCopyWizardOptions::_getInstance($copy_id);
745  if ($cwo->isRootNode($this->getRefId())) {
746  $this->setOfflineStatus(true);
747  }
748 
749  $this->cloneSettings($new_obj);
750  ilCourseDefinedFieldDefinition::_clone($this->getId(), $new_obj->getId());
751  ilCourseFile::_cloneFiles($this->getId(), $new_obj->getId());
752  $obj_settings = new ilLPObjSettings($this->getId());
753  $obj_settings->cloneSettings($new_obj->getId());
754  unset($obj_settings);
755  $pathFactory = new ilCertificatePathFactory();
756  $templateRepository = new ilCertificateTemplateDatabaseRepository($this->db);
757 
758  $cloneAction = new ilCertificateCloneAction(
759  $this->db,
760  $pathFactory,
761  $templateRepository,
763  );
764  $cloneAction->cloneCertificate($this, $new_obj);
765 
766  $book_service = new ilBookingService();
767  $book_service->cloneSettings($this->getId(), $new_obj->getId());
768 
769  $badges = ilBadge::getInstancesByParentId($this->getId());
770  foreach ($badges as $badge) {
771  $badge->clone($new_obj->getId());
772  }
773 
774  return $new_obj;
775  }
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:26
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 1044 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().

1044  : void
1045  {
1046  $new_obj->setTutorialSupportBlockSettingValue($this->getTutorialSupportBlockSettingValue());
1047  $new_obj->setSyllabus($this->getSyllabus());
1048  $new_obj->setContactName($this->getContactName());
1049  $new_obj->setContactResponsibility($this->getContactResponsibility());
1050  $new_obj->setContactPhone($this->getContactPhone());
1051  $new_obj->setContactEmail($this->getContactEmail());
1052  $new_obj->setContactConsultation($this->getContactConsultation());
1053  $new_obj->setOfflineStatus($this->getOfflineStatus()); // #9914
1054  $new_obj->setActivationStart($this->getActivationStart());
1055  $new_obj->setActivationEnd($this->getActivationEnd());
1056  $new_obj->setActivationVisibility($this->getActivationVisibility());
1057  $new_obj->setSubscriptionLimitationType($this->getSubscriptionLimitationType());
1058  $new_obj->setSubscriptionStart($this->getSubscriptionStart());
1059  $new_obj->setSubscriptionEnd($this->getSubscriptionEnd());
1060  $new_obj->setSubscriptionType($this->getSubscriptionType());
1061  $new_obj->setSubscriptionPassword($this->getSubscriptionPassword());
1062  $new_obj->enableSubscriptionMembershipLimitation($this->isSubscriptionMembershipLimited());
1063  $new_obj->setSubscriptionMaxMembers($this->getSubscriptionMaxMembers());
1064  $new_obj->setViewMode($this->getViewMode());
1065  $new_obj->setTimingMode($this->getTimingMode());
1066  $new_obj->setOrderType($this->getOrderType());
1067  $new_obj->setAboStatus($this->getAboStatus());
1068  $new_obj->enableWaitingList($this->enabledWaitingList());
1069  $new_obj->setImportantInformation($this->getImportantInformation());
1070  $new_obj->setTargetGroup($this->getTargetGroup());
1071  $new_obj->setShowMembers($this->getShowMembers());
1072  // patch mem_exp
1073  $new_obj->setShowMembersExport($this->getShowMembersExport());
1074  // patch mem_exp
1075  $new_obj->enableSessionLimit($this->isSessionLimitEnabled());
1076  $new_obj->setNumberOfPreviousSessions($this->getNumberOfPreviousSessions());
1077  $new_obj->setNumberOfNextSessions($this->getNumberOfNextSessions());
1078  $new_obj->setAutoNotification($this->getAutoNotification());
1079  $new_obj->enableRegistrationAccessCode($this->isRegistrationAccessCodeEnabled());
1080  $new_obj->setRegistrationAccessCode(ilMembershipRegistrationCodeUtils::generateCode());
1081  $new_obj->setStatusDetermination($this->getStatusDetermination());
1082  $new_obj->setMailToMembersType($this->getMailToMembersType());
1083  $new_obj->setCoursePeriod(
1084  $this->getCourseStart(),
1085  $this->getCourseEnd()
1086  );
1087  $new_obj->setCancellationEnd($this->getCancellationEnd());
1088  $new_obj->setWaitingListAutoFill($this->hasWaitingListAutoFill());
1089  $new_obj->setSubscriptionMinMembers($this->getSubscriptionMinMembers());
1090 
1091  // #10271
1092  $new_obj->setEnableCourseMap($this->getEnableCourseMap());
1093  $new_obj->setLatitude($this->getLatitude());
1094  $new_obj->setLongitude($this->getLongitude());
1095  $new_obj->setLocationZoom($this->getLocationZoom());
1096 
1097  $new_obj->update();
1098  }
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 ( )

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();
588 
589  $this->createMetaData();
590  $this->__createDefaultSettings();
591  $this->app_event_handler->raise(
592  'components/ILIAS/Course',
593  'create',
594  array('object' => $this,
595  'obj_id' => $this->getId(),
596  'appointments' => $this->prepareAppointments('create')
597  )
598  );
599 
600  return $id;
601  }
prepareAppointments(string $a_mode='create')
Prepare calendar appointments.
global $DIC
Definition: shib_login.php:26
$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 return true if all object data were removed; false if only a references were removed

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

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

898  : bool
899  {
900  // always call parent delete function first!!
901  if (!parent::delete()) {
902  return false;
903  }
904 
905  // delete meta data
906  $this->deleteMetaData();
907 
908  // put here course specific stuff
909 
910  $this->__deleteSettings();
911 
913 
915 
917 
919 
921 
922  $this->app_event_handler->raise(
923  'components/ILIAS/Course',
924  'delete',
925  array('object' => $this,
926  'obj_id' => $this->getId(),
927  'appointments' => $this->prepareAppointments('delete')
928  )
929  );
930  return true;
931  }
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 1463 of file class.ilObjCourse.php.

1463  : void
1464  {
1465  switch ($a_element) {
1466  case 'General':
1467  // Update ecs content
1468  $ecs = new ilECSCourseSettings($this);
1469  $ecs->handleContentUpdate();
1470  break;
1471  }
1472  }
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 1836 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().

1836  : array
1837  {
1838  $ilDB = $GLOBALS['DIC']->database();
1839  $tree = $GLOBALS['DIC']->repositoryTree();
1840 
1841  $res = array();
1842 
1843  $before = new ilDateTime(time(), IL_CAL_UNIX);
1844  $now = $before->get(IL_CAL_UNIX);
1845  $now_dt = $before->get(IL_CAL_DATETIME, '', ilTimeZone::UTC);
1846 
1847  $set = $ilDB->query("SELECT obj_id, min_members" .
1848  " FROM crs_settings" .
1849  " WHERE min_members > " . $ilDB->quote(0, "integer") .
1850  " AND sub_mem_limit = " . $ilDB->quote(1, "integer") . // #17206
1851  " AND ((leave_end IS NOT NULL" .
1852  " AND leave_end < " . $ilDB->quote($now, "text") . ")" .
1853  " OR (leave_end IS NULL" .
1854  " AND sub_end IS NOT NULL" .
1855  " AND sub_end < " . $ilDB->quote($now, "text") . "))" .
1856  " AND (period_start IS NULL OR period_start > " . $ilDB->quote($now_dt, ilDBConstants::T_TEXT) . ")");
1857  while ($row = $ilDB->fetchAssoc($set)) {
1858  $refs = ilObject::_getAllReferences((int) $row['obj_id']);
1859  $ref = end($refs);
1860 
1861  if ($tree->isDeleted($ref)) {
1862  continue;
1863  }
1864 
1865  $part = new ilCourseParticipants((int) $row["obj_id"]);
1866  $reci = $part->getNotificationRecipients();
1867  if ($reci !== []) {
1868  $missing = (int) $row["min_members"] - $part->getCountMembers();
1869  if ($missing > 0) {
1870  $res[(int) $row["obj_id"]] = array($missing, $reci);
1871  }
1872  }
1873  }
1874 
1875  return $res;
1876  }
$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 1689 of file class.ilObjCourse.php.

References $auto_notification.

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

1689  : bool
1690  {
1691  return $this->auto_notification;
1692  }
+ Here is the caller graph for this function:

◆ getCancellationEnd()

ilObjCourse::getCancellationEnd ( )

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

References $leave_end.

Referenced by cloneSettings(), and updateSettings().

701  : ?ilDate
702  {
703  return $this->leave_end;
704  }
+ 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 691 of file class.ilObjCourse.php.

References $crs_end.

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

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

◆ getCourseStart()

ilObjCourse::getCourseStart ( )

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

References $crs_start.

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

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

◆ getCourseStartTimeIndication()

ilObjCourse::getCourseStartTimeIndication ( )

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

References $course_start_time_indication.

Referenced by prepareAppointments(), and updateSettings().

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

◆ getDefaultAdminRole()

ilObjCourse::getDefaultAdminRole ( )

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

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

Referenced by cloneAutoGeneratedRoles().

1443  : int
1444  {
1445  $local_roles = $this->__getLocalRoles();
1446  foreach ($local_roles as $role_id) {
1447  if ($tmp_role = ilObjectFactory::getInstanceByObjId($role_id, false)) {
1448  if (!strcmp($tmp_role->getTitle(), "il_crs_admin_" . $this->getRefId())) {
1449  return $role_id;
1450  }
1451  }
1452  }
1453  return 0;
1454  }
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 1369 of file class.ilObjCourse.php.

References ilObject\getRefId().

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

◆ getDefaultMemberRole()

ilObjCourse::getDefaultMemberRole ( )

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

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

Referenced by cloneAutoGeneratedRoles().

1418  : int
1419  {
1420  $local_roles = $this->__getLocalRoles();
1421  foreach ($local_roles as $role_id) {
1422  $title = ilObject::_lookupTitle($role_id);
1423  if (substr($title, 0, 8) == 'il_crs_m') {
1424  return $role_id;
1425  }
1426  }
1427  return 0;
1428  }
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 1430 of file class.ilObjCourse.php.

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

Referenced by cloneAutoGeneratedRoles().

1430  : int
1431  {
1432  $local_roles = $this->__getLocalRoles();
1433  foreach ($local_roles as $role_id) {
1434  if ($tmp_role = ilObjectFactory::getInstanceByObjId($role_id, false)) {
1435  if (!strcmp($tmp_role->getTitle(), "il_crs_tutor_" . $this->getRefId())) {
1436  return $role_id;
1437  }
1438  }
1439  }
1440  return 0;
1441  }
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 643 of file class.ilObjCourse.php.

References $enablemap.

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

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

◆ getEnableMap()

ilObjCourse::getEnableMap ( )

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

References getEnableCourseMap().

638  : bool
639  {
640  return $this->getEnableCourseMap();
641  }
+ 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 608 of file class.ilObjCourse.php.

References $latitude.

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

608  : string
609  {
610  return $this->latitude;
611  }
+ 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 1340 of file class.ilObjCourse.php.

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

1340  : array
1341  {
1342  if (empty($this->local_roles)) {
1343  $this->local_roles = array();
1344  $role_arr = $this->rbac_review->getRolesOfRoleFolder($this->getRefId());
1345 
1346  foreach ($role_arr as $role_id) {
1347  if ($this->rbac_review->isAssignable($role_id, $this->getRefId())) {
1348  $role_Obj = ilObjectFactory::getInstanceByObjId($role_id);
1349  if ($a_translate) {
1350  $role_name = ilObjRole::_getTranslation($role_Obj->getTitle());
1351  } else {
1352  $role_name = $role_Obj->getTitle();
1353  }
1354  $this->local_roles[$role_name] = $role_Obj->getId();
1355  }
1356  }
1357  }
1358  return $this->local_roles;
1359  }
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 628 of file class.ilObjCourse.php.

References $locationzoom.

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

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

◆ getLongitude()

ilObjCourse::getLongitude ( )

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

References $longitude.

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

618  : string
619  {
620  return $this->longitude;
621  }
+ 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 1249 of file class.ilObjCourse.php.

References $member_obj, and initCourseMemberObject().

1250  {
1251  if (!$this->member_obj instanceof ilCourseParticipant) {
1252  $this->initCourseMemberObject();
1253  }
1254  return $this->member_obj;
1255  }
ilCourseParticipant $member_obj
+ Here is the call graph for this function:

◆ getMembersObject()

ilObjCourse::getMembersObject ( )

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

References $members_obj, and initCourseMembersObject().

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

1258  {
1259  if (!$this->members_obj instanceof ilCourseParticipants) {
1260  $this->initCourseMembersObject();
1261  }
1262  return $this->members_obj;
1263  }
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 1755 of file class.ilObjCourse.php.

References enabledObjectiveView(), and ilContainer\SORT_MANUAL.

Referenced by cloneSettings(), and update().

1755  : int
1756  {
1757  if ($this->enabledObjectiveView()) {
1758  return ilContainer::SORT_MANUAL;
1759  }
1760  return parent::getOrderType();
1761  }
+ 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 1723 of file class.ilObjCourse.php.

References $status_dt.

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

1723  : int
1724  {
1725  return $this->status_dt;
1726  }
+ 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 714 of file class.ilObjCourse.php.

References $min_members.

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

714  : int
715  {
716  return $this->min_members;
717  }
+ 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 1766 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.

1766  : void
1767  {
1768  if (
1769  !$this->enabledWaitingList() || !$this->hasWaitingListAutoFill()
1770  ) {
1771  $this->course_logger->debug('Waiting list or auto fill disabled.');
1772  return;
1773  }
1774 
1775  $max = $this->getSubscriptionMaxMembers();
1777 
1778  $this->course_logger->debug('Max members: ' . $max);
1779  $this->course_logger->debug('Current members: ' . $now);
1780 
1781  if ($max <= $now) {
1782  return;
1783  }
1784 
1785  // see assignFromWaitingListObject()
1786  $waiting_list = new ilCourseWaitingList($this->getId());
1787 
1788  foreach ($waiting_list->getUserIds() as $user_id) {
1789  if (!$tmp_obj = ilObjectFactory::getInstanceByObjId($user_id, false)) {
1790  $this->course_logger->warning('Cannot create user instance for id: ' . $user_id);
1791  continue;
1792  }
1793  if ($this->getMembersObject()->isAssigned($user_id)) {
1794  $this->course_logger->warning('User is already assigned to course. uid: ' . $user_id . ' course_id: ' . $this->getRefId());
1795  continue;
1796  }
1799  $waiting_list->removeFromList($user_id);
1800  $this->checkLPStatusSync($user_id);
1801 
1802  $this->course_logger->info('Assigned user from waiting list to course: ' . $this->getTitle());
1803  $now++;
1804  if ($now >= $max) {
1805  break;
1806  }
1807  }
1808  }
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 889 of file class.ilObjCourse.php.

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

889  : bool
890  {
891  return strlen($this->getContactName()) || strlen($this->getContactResponsibility()) || strlen($this->getContactEmail()) || strlen($this->getContactPhone()) || strlen($this->getContactConsultation());
892  }
+ Here is the call graph for this function:

◆ hasWaitingListAutoFill()

ilObjCourse::hasWaitingListAutoFill ( )

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

References $auto_fill_from_waiting.

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

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

◆ initCourseMemberObject()

ilObjCourse::initCourseMemberObject ( )
protected

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

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

Referenced by getMemberObject().

1239  : void
1240  {
1241  $this->member_obj = ilCourseParticipant::_getInstanceByObjId($this->getId(), $this->user->getId());
1242  }
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 1244 of file class.ilObjCourse.php.

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

Referenced by getMembersObject().

1244  : void
1245  {
1246  $this->members_obj = ilCourseParticipants::_getInstanceByObjId($this->getId());
1247  }
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 1267 of file class.ilObjCourse.php.

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

1267  : void
1268  {
1270  'il_crs_admin_' . $this->getRefId(),
1271  "Admin of crs obj_no." . $this->getId(),
1272  'il_crs_admin',
1273  $this->getRefId()
1274  );
1276  'il_crs_tutor_' . $this->getRefId(),
1277  "Tutor of crs obj_no." . $this->getId(),
1278  'il_crs_tutor',
1279  $this->getRefId()
1280  );
1282  'il_crs_member_' . $this->getRefId(),
1283  "Member of crs obj_no." . $this->getId(),
1284  'il_crs_member',
1285  $this->getRefId()
1286  );
1287  }
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 1232 of file class.ilObjCourse.php.

References ilObject\getId().

1232  : void
1233  {
1234  if (!$this->waiting_list_obj instanceof ilCourseWaitingList) {
1235  $this->waiting_list_obj = new ilCourseWaitingList($this->getId());
1236  }
1237  }
+ 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 1319 of file class.ilObjCourse.php.

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

Referenced by ilRbacAdmin\adjustMovedObjectPermissions().

1319  : int
1320  {
1321  global $DIC;
1322 
1323  $ilDB = $DIC->database();
1324 
1325  $query = 'SELECT obj_id FROM object_data WHERE type = ' . $ilDB->quote(
1326  'rolt',
1327  'text'
1328  ) . ' AND title = ' . $ilDB->quote('il_crs_non_member', 'text');
1329  $res = $ilDB->query($query);
1330  $row = $res->fetchRow(ilDBConstants::FETCHMODE_ASSOC);
1331  return (int) $row['obj_id'];
1332  }
$res
Definition: ltiservices.php:66
global $DIC
Definition: shib_login.php:26
+ 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 1581 of file class.ilObjCourse.php.

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

Referenced by ilMembershipRegistrationCodeUtils\lookupObjectsByCode().

1581  : array
1582  {
1583  global $DIC;
1584 
1585  $ilDB = $DIC->database();
1586 
1587  $query = "SELECT obj_id FROM crs_settings " .
1588  "WHERE reg_ac_enabled = " . $ilDB->quote(1, 'integer') . " " .
1589  "AND reg_ac = " . $ilDB->quote($a_code, 'text');
1590  $res = $ilDB->query($query);
1591 
1592  $obj_ids = array();
1593  while ($row = $res->fetchRow(ilDBConstants::FETCHMODE_OBJECT)) {
1594  $obj_ids[] = (int) $row->obj_id;
1595  }
1596  return $obj_ids;
1597  }
$res
Definition: ltiservices.php:66
global $DIC
Definition: shib_login.php:26
+ 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:26
+ 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 1810 of file class.ilObjCourse.php.

References $DIC, $ilDB, and IL_CAL_DATE.

Referenced by ilObjCourseAccess\_checkAccess().

1810  : bool
1811  {
1812  global $DIC;
1813 
1814  $ilUser = $DIC['ilUser'];
1815  $ilDB = $DIC['ilDB'];
1816 
1817  if (!$a_user_id) {
1818  $a_user_id = $ilUser->getId();
1819  }
1820 
1821  $set = $ilDB->query("SELECT leave_end" .
1822  " FROM crs_settings" .
1823  " WHERE obj_id = " . $ilDB->quote($a_course_id, "integer"));
1824  $row = $ilDB->fetchAssoc($set);
1825  if ($row && $row["leave_end"]) {
1826  // timestamp to date
1827  $limit = date("Ymd", $row["leave_end"]);
1828  if ($limit < date("Ymd")) {
1829  $a_date = new ilDate(date("Y-m-d", $row["leave_end"]), IL_CAL_DATE);
1830  return false;
1831  }
1832  }
1833  return true;
1834  }
global $DIC
Definition: shib_login.php:26
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 1482 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().

1482  : array
1483  {
1484  switch ($a_mode) {
1485  case 'create':
1486  case 'update':
1487  $apps = [];
1488  if (!$this->getActivationUnlimitedStatus() && !$this->getOfflineStatus()) {
1489  $app = new ilCalendarAppointmentTemplate(self::CAL_ACTIVATION_START);
1490  $app->setTitle($this->getTitle());
1491  $app->setSubtitle('crs_cal_activation_start');
1492  $app->setTranslationType(ilCalendarEntry::TRANSLATION_SYSTEM);
1493  $app->setDescription($this->getLongDescription());
1494  $app->setStart(new ilDateTime($this->getActivationStart(), IL_CAL_UNIX));
1495  $apps[] = $app;
1496 
1497  $app = new ilCalendarAppointmentTemplate(self::CAL_ACTIVATION_END);
1498  $app->setTitle($this->getTitle());
1499  $app->setSubtitle('crs_cal_activation_end');
1500  $app->setTranslationType(ilCalendarEntry::TRANSLATION_SYSTEM);
1501  $app->setDescription($this->getLongDescription());
1502  $app->setStart(new ilDateTime($this->getActivationEnd(), IL_CAL_UNIX));
1503  $apps[] = $app;
1504  }
1506  $app = new ilCalendarAppointmentTemplate(self::CAL_REG_START);
1507  $app->setTitle($this->getTitle());
1508  $app->setSubtitle('crs_cal_reg_start');
1509  $app->setTranslationType(ilCalendarEntry::TRANSLATION_SYSTEM);
1510  $app->setDescription($this->getLongDescription());
1511  $app->setStart(new ilDateTime($this->getSubscriptionStart(), IL_CAL_UNIX));
1512  $apps[] = $app;
1513 
1514  $app = new ilCalendarAppointmentTemplate(self::CAL_REG_END);
1515  $app->setTitle($this->getTitle());
1516  $app->setSubtitle('crs_cal_reg_end');
1517  $app->setTranslationType(ilCalendarEntry::TRANSLATION_SYSTEM);
1518  $app->setDescription($this->getLongDescription());
1519  $app->setStart(new ilDateTime($this->getSubscriptionEnd(), IL_CAL_UNIX));
1520  $apps[] = $app;
1521  }
1522  if ($this->getCourseStart() && $this->getCourseEnd()) {
1523  $app = new ilCalendarAppointmentTemplate(self::CAL_COURSE_START);
1524  $app->setTitle($this->getTitle());
1525  $app->setSubtitle('crs_cal_start');
1526  $app->setTranslationType(ilCalendarEntry::TRANSLATION_SYSTEM);
1527  $app->setDescription($this->getLongDescription());
1528  $app->setStart($this->getCourseStart());
1529  $app->setFullday(!$this->getCourseStartTimeIndication());
1530  $apps[] = $app;
1531 
1532  $app = new ilCalendarAppointmentTemplate(self::CAL_COURSE_END);
1533  $app->setTitle($this->getTitle());
1534  $app->setSubtitle('crs_cal_end');
1535  $app->setTranslationType(ilCalendarEntry::TRANSLATION_SYSTEM);
1536  $app->setDescription($this->getLongDescription());
1537  $app->setStart($this->getCourseEnd());
1538  $app->setFullday(!$this->getCourseStartTimeIndication());
1539  $apps[] = $app;
1540  }
1541  if (
1543  ) {
1544  $active = ilObjectActivation::getTimingsItems($this->getRefId());
1545  foreach ($active as $null => $item) {
1546  if ($item['timing_type'] == ilObjectActivation::TIMINGS_PRESETTING) {
1547  // create calendar entry for fixed types
1548  $app = new ilCalendarAppointmentTemplate(self::CAL_COURSE_TIMING_START);
1549  $app->setContextInfo($item['ref_id']);
1550  $app->setTitle($item['title']);
1551  $app->setSubtitle('cal_crs_timing_start');
1552  $app->setTranslationType(ilCalendarEntry::TRANSLATION_SYSTEM);
1553  $app->setStart(new ilDate($item['suggestion_start'], IL_CAL_UNIX));
1554  $app->setFullday(true);
1555  $apps[] = $app;
1556 
1557  $app = new ilCalendarAppointmentTemplate(self::CAL_COURSE_TIMING_END);
1558  $app->setContextInfo($item['ref_id']);
1559  $app->setTitle($item['title']);
1560  $app->setSubtitle('cal_crs_timing_end');
1561  $app->setTranslationType(ilCalendarEntry::TRANSLATION_SYSTEM);
1562  $app->setStart(new ilDate($item['suggestion_end'], IL_CAL_UNIX));
1563  $app->setFullday(true);
1564  $apps[] = $app;
1565  }
1566  }
1567  }
1568  return $apps;
1569 
1570  case 'delete':
1571  // Nothing to do: The category and all assigned appointments will be deleted.
1572  return array();
1573  }
1574  return [];
1575  }
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 1603 of file class.ilObjCourse.php.

References $info, 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.

1607  : void {
1608  if ($this->getMembersObject()->isAssigned($a_user_id)) {
1609  return;
1610  }
1611 
1612  if (!$a_force_registration) {
1613  // offline
1614  if (ilObjCourseAccess::_isOffline($this->getId())) {
1616  "Can't register to course, course is offline.",
1618  );
1619  }
1620  // activation
1621  if (!ilObjCourseAccess::_isActivated($this->getId())) {
1623  "Can't register to course, course is not activated.",
1625  );
1626  }
1627 
1631  'Cant registrate to course ' . $this->getId() .
1632  ', course subscription is deactivated.',
1634  );
1635  }
1636  }
1637 
1638  // Time Limitation
1640  if (!$this->inSubscriptionTime()) {
1642  'Cant registrate to course ' . $this->getId() .
1643  ', course is out of registration time.',
1645  );
1646  }
1647  }
1648 
1649  // Max members
1650  if ($this->isSubscriptionMembershipLimited()) {
1651  $free = max(0, $this->getSubscriptionMaxMembers() - $this->getMembersObject()->getCountMembers());
1652  $waiting_list = new ilCourseWaitingList($this->getId());
1653  if ($this->enabledWaitingList() && (!$free || $waiting_list->getCountUsers())) {
1654  $waiting_list->addToList($a_user_id);
1655  $this->lng->loadLanguageModule("crs");
1656  $info = sprintf(
1657  $this->lng->txt('crs_added_to_list'),
1658  $waiting_list->getPosition($a_user_id)
1659  );
1660  $participants = ilCourseParticipants::_getInstanceByObjId($this->getId());
1661  $participants->sendNotification(
1663  $a_user_id
1664  );
1665 
1667  $info,
1669  );
1670  }
1671 
1672  if (!$this->enabledWaitingList() && !$free) {
1673  throw new ilMembershipRegistrationException('Cant registrate to course ' . $this->getId() .
1674  ', membership is limited.', ilMembershipRegistrationException::OBJECT_IS_FULL);
1675  }
1676  }
1677  }
1678 
1679  $this->getMembersObject()->add($a_user_id, $a_role);
1680  $this->getMembersObject()->sendNotification(ilCourseMembershipMailNotification::TYPE_ADMISSION_MEMBER, $a_user_id);
1683  }
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)
$info
Definition: entry_point.php:21
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 1698 of file class.ilObjCourse.php.

Referenced by __readSettings().

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

◆ setCancellationEnd()

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

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

Referenced by __readSettings().

696  : void
697  {
698  $this->leave_end = $a_value;
699  }
+ 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 686 of file class.ilObjCourse.php.

Referenced by setCoursePeriod().

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

◆ setCoursePeriod()

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

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

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

Referenced by __readSettings().

648  : void
649  {
650  if (
651  ($start instanceof \ilDate && !$end instanceof ilDate) ||
652  ($end instanceof \ilDate && !$start instanceof ilDate)
653  ) {
654  throw new InvalidArgumentException('Different date types not supported.');
655  }
656 
657  if ($start instanceof \ilDate) {
658  $this->toggleCourseStartTimeIndication(false);
659  } else {
660  $this->toggleCourseStartTimeIndication(true);
661  }
662  $this->setCourseStart($start);
663  $this->setCourseEnd($end);
664  }
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 676 of file class.ilObjCourse.php.

Referenced by setCoursePeriod().

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

◆ setEnableCourseMap()

ilObjCourse::setEnableCourseMap ( bool  $a_enablemap)

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

Referenced by __readSettings().

633  : void
634  {
635  $this->enablemap = $a_enablemap;
636  }
+ 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 603 of file class.ilObjCourse.php.

Referenced by __readSettings().

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

◆ setLocationZoom()

ilObjCourse::setLocationZoom ( int  $a_locationzoom)

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

Referenced by __readSettings().

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

◆ setLongitude()

ilObjCourse::setLongitude ( string  $a_longitude)

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

Referenced by __readSettings().

613  : void
614  {
615  $this->longitude = $a_longitude;
616  }
+ 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  $parent_ref_id)

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 1296 of file class.ilObjCourse.php.

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

1296  : bool
1297  {
1298  $parent_roles = $this->rbac_review->getParentRoleIds($parent_ref_id);
1299  foreach ($parent_roles as $parent_role) {
1300  $this->rbac_admin->initIntersectionPermissions(
1301  $this->getRefId(),
1302  $parent_role['obj_id'],
1303  $parent_role['parent'],
1304  $this->__getCrsNonMemberTemplateId(),
1306  );
1307  }
1308  return true;
1309  }
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 1706 of file class.ilObjCourse.php.

References ilObjUserTracking\_enabledLearningProgress().

Referenced by __construct(), and __readSettings().

1706  : void
1707  {
1708  $a_value = $a_value;
1709 
1710  // #13905
1711  if ($a_value == self::STATUS_DETERMINATION_LP) {
1713  $a_value = self::STATUS_DETERMINATION_MANUAL;
1714  }
1715  }
1716 
1717  $this->status_dt = $a_value;
1718  }
+ 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 706 of file class.ilObjCourse.php.

References null.

Referenced by __readSettings().

706  : void
707  {
708  if ($a_value !== null) {
709  $a_value = $a_value;
710  }
711  $this->min_members = $a_value;
712  }
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 719 of file class.ilObjCourse.php.

Referenced by __readSettings().

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

◆ syncMembersStatusWithLP()

ilObjCourse::syncMembersStatusWithLP ( )

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

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

1728  : void
1729  {
1730  foreach ($this->getMembersObject()->getParticipants() as $user_id) {
1731  // #15529 - force raise on sync
1732  ilLPStatusWrapper::_updateStatus($this->getId(), $user_id, null, false, true);
1733  }
1734  }
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 666 of file class.ilObjCourse.php.

Referenced by __readSettings(), and setCoursePeriod().

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

◆ update()

ilObjCourse::update ( )

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

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

936  : bool
937  {
938  $sorting = new ilContainerSortingSettings($this->getId());
939  $sorting->setSortMode($this->getOrderType());
940  $sorting->update();
941 
942  $this->updateMetaData();
943  $this->updateSettings();
944  parent::update();
945 
946  $this->app_event_handler->raise(
947  'components/ILIAS/Course',
948  'update',
949  array('object' => $this,
950  'obj_id' => $this->getId(),
951  'appointments' => $this->prepareAppointments('update')
952  )
953  );
954  return true;
955  }
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 959 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().

959  : void
960  {
961  $query = "SELECT * FROM crs_settings WHERE obj_id = " . $this->db->quote($this->getId(), 'integer') . " ";
962  $res = $this->db->query($query);
963 
964  if (!$res->numRows()) {
965  $this->__createDefaultSettings();
966  }
967 
968  $query = "UPDATE crs_settings SET " .
969  'tutorial_support_block = ' . $this->db->quote($this->getTutorialSupportBlockSettingValue(), 'integer') . ", " .
970  "syllabus = " . $this->db->quote($this->getSyllabus(), 'text') . ", " .
971  "contact_name = " . $this->db->quote($this->getContactName(), 'text') . ", " .
972  "contact_responsibility = " . $this->db->quote($this->getContactResponsibility(), 'text') . ", " .
973  "contact_phone = " . $this->db->quote($this->getContactPhone(), 'text') . ", " .
974  "contact_email = " . $this->db->quote($this->getContactEmail(), 'text') . ", " .
975  "contact_consultation = " . $this->db->quote($this->getContactConsultation(), 'text') . ", " .
976  "activation_type = " . $this->db->quote(!$this->getOfflineStatus(), 'integer') . ", " .
977  "sub_limitation_type = " . $this->db->quote($this->getSubscriptionLimitationType(), 'integer') . ", " .
978  "sub_start = " . $this->db->quote($this->getSubscriptionStart(), 'integer') . ", " .
979  "sub_end = " . $this->db->quote($this->getSubscriptionEnd(), 'integer') . ", " .
980  "sub_type = " . $this->db->quote($this->getSubscriptionType(), 'integer') . ", " .
981  "sub_password = " . $this->db->quote($this->getSubscriptionPassword(), 'text') . ", " .
982  "sub_mem_limit = " . $this->db->quote((int) $this->isSubscriptionMembershipLimited(), 'integer') . ", " .
983  "sub_max_members = " . $this->db->quote($this->getSubscriptionMaxMembers(), 'integer') . ", " .
984  "sub_notify = " . $this->db->quote($this->getSubscriptionNotify(), 'integer') . ", " .
985  "view_mode = " . $this->db->quote($this->getViewMode(), 'integer') . ", " .
986  'timing_mode = ' . $this->db->quote($this->getTimingMode(), 'integer') . ', ' .
987  "abo = " . $this->db->quote($this->getAboStatus(), 'integer') . ", " .
988  "waiting_list = " . $this->db->quote($this->enabledWaitingList(), 'integer') . ", " .
989  "important = " . $this->db->quote($this->getImportantInformation(), 'text') . ", " .
990  'target_group = ' . $this->db->quote($this->getTargetGroup(), \ilDBConstants::T_TEXT) . ', ' .
991  "show_members = " . $this->db->quote($this->getShowMembers(), 'integer') . ", " .
992  "show_members_export = " . $this->db->quote($this->getShowMembersExport(), 'integer') . ", " .
993  "latitude = " . $this->db->quote($this->getLatitude(), 'text') . ", " .
994  "longitude = " . $this->db->quote($this->getLongitude(), 'text') . ", " .
995  "location_zoom = " . $this->db->quote($this->getLocationZoom(), 'integer') . ", " .
996  "enable_course_map = " . $this->db->quote((int) $this->getEnableCourseMap(), 'integer') . ", " .
997  'session_limit = ' . $this->db->quote($this->isSessionLimitEnabled(), 'integer') . ', ' .
998  'session_prev = ' . $this->db->quote($this->getNumberOfPreviousSessions(), 'integer') . ', ' .
999  'session_next = ' . $this->db->quote($this->getNumberOfNextSessions(), 'integer') . ', ' .
1000  'reg_ac_enabled = ' . $this->db->quote($this->isRegistrationAccessCodeEnabled(), 'integer') . ', ' .
1001  'reg_ac = ' . $this->db->quote($this->getRegistrationAccessCode(), 'text') . ', ' .
1002  'auto_notification = ' . $this->db->quote((int) $this->getAutoNotification(), 'integer') . ', ' .
1003  'status_dt = ' . $this->db->quote($this->getStatusDetermination(), ilDBConstants::T_INTEGER) . ', ' .
1004  'mail_members_type = ' . $this->db->quote($this->getMailToMembersType(), 'integer') . ', ' .
1005  'period_start = ' . $this->db->quote(
1008  ) . ', ' .
1009  'period_end = ' . $this->db->quote(
1012  ) . ', ' .
1013  'period_time_indication = ' . $this->db->quote(
1014  $this->getCourseStartTimeIndication() ? 1 : 0,
1016  ) . ', ' .
1017  'auto_wait = ' . $this->db->quote((int) $this->hasWaitingListAutoFill(), 'integer') . ', ' .
1018  'leave_end = ' . $this->db->quote(
1019  ($this->getCancellationEnd() && !$this->getCancellationEnd()->isNull()) ? $this->getCancellationEnd()->get(IL_CAL_UNIX) : null,
1020  'integer'
1021  ) . ', ' .
1022  'min_members = ' . $this->db->quote($this->getSubscriptionMinMembers(), 'integer') . ' ' .
1023  "WHERE obj_id = " . $this->db->quote($this->getId(), 'integer');
1024 
1025  $res = $this->db->manipulate($query);
1026 
1027  // moved activation to ilObjectActivation
1028  if ($this->ref_id ?? false) {
1029  ilObjectActivation::getItem($this->ref_id);
1030 
1031  $item = new ilObjectActivation();
1032  if (!$this->getActivationStart() || !$this->getActivationEnd()) {
1033  $item->setTimingType(ilObjectActivation::TIMINGS_DEACTIVATED);
1034  } else {
1035  $item->setTimingType(ilObjectActivation::TIMINGS_ACTIVATION);
1036  $item->setTimingStart($this->getActivationStart());
1037  $item->setTimingEnd($this->getActivationEnd());
1038  $item->toggleVisible($this->getActivationVisibility());
1039  }
1040  $item->update($this->ref_id);
1041  }
1042  }
$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 838 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().

838  : bool
839  {
840  $this->setMessage('');
841 
843  $this->getSubscriptionStart() > $this->getSubscriptionEnd()) {
844  $this->appendMessage($this->lng->txt("subscription_times_not_valid"));
845  }
847  $this->appendMessage($this->lng->txt("crs_password_required"));
848  }
849  if ($this->isSubscriptionMembershipLimited()) {
850  if ($this->getSubscriptionMinMembers() <= 0 && $this->getSubscriptionMaxMembers() <= 0) {
851  $this->appendMessage($this->lng->txt("crs_max_and_min_members_needed"));
852  }
853  if ($this->getSubscriptionMaxMembers() <= 0 && $this->enabledWaitingList()) {
854  $this->appendMessage($this->lng->txt("crs_max_members_needed"));
855  }
856  if ($this->getSubscriptionMaxMembers() > 0 && $this->getSubscriptionMinMembers() > $this->getSubscriptionMaxMembers()) {
857  $this->appendMessage($this->lng->txt("crs_max_and_min_members_invalid"));
858  }
859  }
860  if (!$this->getTitle() || !$this->getStatusDetermination()) {
861  $this->appendMessage($this->lng->txt('err_check_input'));
862  }
863  if (($this->getCourseStart() && !$this->getCourseEnd()) ||
864  (!$this->getCourseStart() && $this->getCourseEnd()) ||
865  ($this->getCourseStart() && $this->getCourseEnd() && $this->getCourseStart()->get(IL_CAL_UNIX) > $this->getCourseEnd()->get(IL_CAL_UNIX))) {
866  $this->appendMessage($this->lng->txt("crs_course_period_not_valid"));
867  }
868 
869  return strlen($this->getMessage()) > 0;
870  }
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 872 of file class.ilObjCourse.php.

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

872  : bool
873  {
874  $error = false;
875  if ($this->getContactEmail()) {
876  $emails = explode(",", $this->getContactEmail());
877 
878  foreach ($emails as $email) {
879  $email = trim($email);
880  if (!ilUtil::is_email($email) && !ilObjUser::getUserIdByLogin($email)) {
881  $this->error->appendMessage($this->lng->txt('contact_email_not_valid') . " '" . $email . "'");
882  $error = true;
883  }
884  }
885  }
886  return !$error;
887  }
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 int ilObjCourse::CAL_ACTIVATION_END = 4

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

◆ CAL_ACTIVATION_START

const int ilObjCourse::CAL_ACTIVATION_START = 3

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

◆ CAL_COURSE_END

const int ilObjCourse::CAL_COURSE_END = 6

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

◆ CAL_COURSE_START

const int 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 int ilObjCourse::CAL_REG_END = 2

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

◆ CAL_REG_START

const int ilObjCourse::CAL_REG_START = 1

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

◆ STATUS_DETERMINATION_LP

◆ STATUS_DETERMINATION_MANUAL

const int 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: