ILIAS  release_8 Revision v8.19
All Data Structures Namespaces Files Functions Variables Modules Pages
ilObjCourse Class Reference

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

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

Public Member Functions

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

Static Public Member Functions

static 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 _getIcon (int $obj_id=0, string $size="big", string $type="", bool $offline=false)
 Get icon for repository item. More...
 
static collectDeletionDependencies (array &$deps, int $ref_id, int $obj_id, string $type, int $depth=0)
 Collect deletion dependencies. More...
 
static getDeletionDependencies (int $obj_id)
 Get deletion dependencies. More...
 
static getLongDescriptions (array $obj_ids)
 
static getAllOwnedRepositoryObjects (int $user_id)
 
static fixMissingTitles ($type, array &$obj_title_map)
 Try to fix missing object titles. More...
 
static _lookupCreationDate (int $obj_id)
 
static _getObjectTypeIdByTitle (string $type, \ilDBInterface $ilDB=null)
 

Data Fields

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

Protected Member Functions

 toggleCourseStartTimeIndication (bool $time_indication)
 
 setCourseStart (?ilDateTime $a_value=null)
 
 setCourseEnd (?ilDateTime $a_value=null)
 
 initCourseMemberObject ()
 
 initCourseMembersObject ()
 
 doMDUpdateListener (string $a_element)
 
 prepareAppointments (string $a_mode='create')
 Prepare calendar appointments. More...
 
- Protected Member Functions inherited from ilContainer
 getInitialSubitems ()
 
 applyContainerUserFilter (array $objects, ilContainerUserFilter $container_user_filter=null)
 Apply container user filter on objects. More...
 
 filterObjIdsByCopyright (array $obj_ids, string $copyright_id)
 
 filterObjIdsByDefaultCopyright (array $obj_ids, string $default_identifier)
 
 legacyOnlineFilter (array $obj_ids, array $objects, int $val)
 Legacy online filter. More...
 
- 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
 
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
 

Additional Inherited Members

- Static Public Attributes inherited from ilContainer
static bool $data_preloaded = false
 
- Protected Attributes inherited from ilContainer
ILIAS Style Content DomainService $content_style_domain
 
ilNewsService $news
 
ilAccessHandler $access
 
ilRbacSystem $rbacsystem
 
ilObjUser $user
 
ilObjectDefinition $obj_definition
 
int $order_type = 0
 
bool $hiddenfilesfound = false
 
bool $news_timeline = false
 
bool $news_timeline_auto_entries = false
 
ilSetting $setting
 
ilObjectTranslation $obj_trans = null
 
int $style_id = 0
 
bool $news_timeline_landing_page = false
 
bool $news_block_activated = false
 
bool $use_news = false
 
ilRecommendedContentManager $recommended_content_manager
 
- 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
 
int $id
 
bool $referenced
 
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 = ""
 
bool $offline = false
 
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
Version
$Id$

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

Constructor & Destructor Documentation

◆ __construct()

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

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

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

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

Member Function Documentation

◆ __createDefaultSettings()

ilObjCourse::__createDefaultSettings ( )

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

References $query, $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(), 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().

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

References $query, and ilObject\getId().

Referenced by delete().

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

◆ __getCrsNonMemberTemplateId()

ilObjCourse::__getCrsNonMemberTemplateId ( )

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

References $res, and ilDBConstants\FETCHMODE_ASSOC.

Referenced by setParentRolePermissions().

1317  : int
1318  {
1319  $q = "SELECT obj_id FROM object_data WHERE type='rolt' AND title='il_crs_non_member'";
1320  $res = $this->ilias->db->query($q);
1321  $row = $res->fetchRow(ilDBConstants::FETCHMODE_ASSOC);
1322  return (int) $row["obj_id"];
1323  }
$res
Definition: ltiservices.php:69
header include for all ilias files.
+ Here is the caller graph for this function:

◆ __getLocalRoles()

ilObjCourse::__getLocalRoles ( )
Returns
int[]

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

References ilObject\getRefId().

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

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

◆ __readSettings()

ilObjCourse::__readSettings ( )

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

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

Referenced by __createDefaultSettings(), and read().

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

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

Referenced by ilObjUser\delete().

1462  : void
1463  {
1464  ilCourseLMHistory::_deleteUser($a_usr_id);
1467  }
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 560 of file class.ilObjCourse.php.

References ilObjCourseAccess\_isActivated().

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

560  : bool
561  {
562  return ilObjCourseAccess::_isActivated($a_obj_id);
563  }
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 391 of file class.ilObjCourse.php.

References $DIC, $ilDB, $query, and $res.

391  : bool
392  {
393  global $DIC;
394 
395  $ilDB = $DIC->database();
396  $query = "SELECT * FROM crs_settings " .
397  "WHERE obj_id = " . $ilDB->quote($a_course_id, 'integer') . " " .
398  "AND sub_notify = 1";
399  $res = $ilDB->query($query);
400  return (bool) $res->numRows();
401  }
$res
Definition: ltiservices.php:69
global $DIC
Definition: feed.php:28
$query

◆ _lookupAboStatus()

static ilObjCourse::_lookupAboStatus ( int  $a_id)
static

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

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

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

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

◆ _lookupViewMode()

static ilObjCourse::_lookupViewMode ( int  $a_id)
static

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

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

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

466  : int
467  {
468  global $DIC;
469 
470  $ilDB = $DIC['ilDB'];
471 
472  $query = "SELECT view_mode FROM crs_settings WHERE obj_id = " . $ilDB->quote($a_id, 'integer') . " ";
473  $res = $ilDB->query($query);
474  while ($row = $res->fetchRow(ilDBConstants::FETCHMODE_OBJECT)) {
475  return $row->view_mode;
476  }
477  return false;
478  }
$res
Definition: ltiservices.php:69
global $DIC
Definition: feed.php:28
$query
+ 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 568 of file class.ilObjCourse.php.

References ilObjCourseAccess\_registrationEnabled().

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

568  : bool
569  {
570  return ilObjCourseAccess::_registrationEnabled($a_obj_id);
571  }
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 1480 of file class.ilObjCourse.php.

References ilObjectActivation\addAdditionalSubItemInformation().

1480  : void
1481  {
1483  }
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 534 of file class.ilObjCourse.php.

References getMessage().

Referenced by validate().

534  : void
535  {
536  if ($this->getMessage()) {
537  $this->message .= "<br /> ";
538  }
539  $this->message .= $a_message;
540  }
+ 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 1746 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().

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

◆ cloneAutoGeneratedRoles()

ilObjCourse::cloneAutoGeneratedRoles ( ilObject  $new_obj)

Clone automatic genrated roles (permissions and template permissions)

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

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

Referenced by cloneObject().

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

◆ cloneDependencies()

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

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

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

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

◆ cloneObject()

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

Clone course (no member data)

public

Parameters
inttarget ref_id
intcopy id

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

738  : ?ilObject
739  {
740  global $DIC;
741 
742  $new_obj = parent::cloneObject($a_target_id, $a_copy_id, $a_omit_tree);
743 
744  $this->cloneAutoGeneratedRoles($new_obj);
745  $this->cloneMetaData($new_obj);
746 
747  $new_obj->getMemberObject()->add($this->user->getId(), ilParticipants::IL_CRS_ADMIN);
748  $new_obj->getMemberObject()->updateContact($this->user->getId(), 1);
749 
750  $cwo = ilCopyWizardOptions::_getInstance($a_copy_id);
751  if ($cwo->isRootNode($this->getRefId())) {
752  $this->setOfflineStatus(true);
753  }
754 
755  $this->cloneSettings($new_obj);
756  ilCourseDefinedFieldDefinition::_clone($this->getId(), $new_obj->getId());
757  ilCourseFile::_cloneFiles($this->getId(), $new_obj->getId());
758  $obj_settings = new ilLPObjSettings($this->getId());
759  $obj_settings->cloneSettings($new_obj->getId());
760  unset($obj_settings);
761  $pathFactory = new ilCertificatePathFactory();
762  $templateRepository = new ilCertificateTemplateDatabaseRepository($this->db);
763 
764  $cloneAction = new ilCertificateCloneAction(
765  $this->db,
766  $pathFactory,
767  $templateRepository,
768  $DIC->filesystem()->web(),
769  null,
771  );
772  $cloneAction->cloneCertificate($this, $new_obj);
773 
774  $book_service = new ilBookingService();
775  $book_service->cloneSettings($this->getId(), $new_obj->getId());
776 
777  $badges = ilBadge::getInstancesByParentId($this->getId());
778  foreach ($badges as $badge) {
779  $badge->clone($new_obj->getId());
780  }
781 
782  return $new_obj;
783  }
global $DIC
Definition: feed.php:28
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)
static getInstancesByParentId(int $a_parent_id, array $a_filter=null)
setOfflineStatus(bool $status)
static _cloneFiles(int $a_source_id, int $a_target_id)
static _getInstance(int $a_copy_id)
cloneAutoGeneratedRoles(ilObject $new_obj)
Clone automatic genrated roles (permissions and template permissions)
+ Here is the call graph for this function:

◆ cloneSettings()

ilObjCourse::cloneSettings ( ilObject  $new_obj)

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

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

Referenced by cloneObject().

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

◆ create()

ilObjCourse::create (   $a_upload = false)

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

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

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

◆ delete()

ilObjCourse::delete ( )

delete course and all related data

public

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

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

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

908  : bool
909  {
910  // always call parent delete function first!!
911  if (!parent::delete()) {
912  return false;
913  }
914 
915  // delete meta data
916  $this->deleteMetaData();
917 
918  // put here course specific stuff
919 
920  $this->__deleteSettings();
921 
923 
925 
927 
929 
931 
932  $this->app_event_handler->raise(
933  'Modules/Course',
934  'delete',
935  array('object' => $this,
936  'obj_id' => $this->getId(),
937  'appointments' => $this->prepareAppointments('delete')
938  )
939  );
940  return true;
941  }
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 1469 of file class.ilObjCourse.php.

1469  : void
1470  {
1471  switch ($a_element) {
1472  case 'General':
1473  // Update ecs content
1474  $ecs = new ilECSCourseSettings($this);
1475  $ecs->handleContentUpdate();
1476  break;
1477  }
1478  }
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...

◆ enabledObjectiveView()

ilObjCourse::enabledObjectiveView ( )

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

References ilCourseConstants\IL_CRS_VIEW_OBJECTIVE.

Referenced by getOrderType().

315  : bool
316  {
317  return $this->view_mode == ilCourseConstants::IL_CRS_VIEW_OBJECTIVE;
318  }
+ Here is the caller graph for this function:

◆ enabledWaitingList()

ilObjCourse::enabledWaitingList ( )

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

References $waiting_list.

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

320  : bool
321  {
322  return $this->waiting_list;
323  }
+ Here is the caller graph for this function:

◆ enableRegistrationAccessCode()

ilObjCourse::enableRegistrationAccessCode ( bool  $a_status)

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

Referenced by __readSettings().

140  : void
141  {
142  $this->reg_access_code_enabled = $a_status;
143  }
+ Here is the caller graph for this function:

◆ enableSessionLimit()

ilObjCourse::enableSessionLimit ( int  $a_status)

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

Referenced by __readSettings().

341  : void
342  {
343  $this->session_limit = $a_status;
344  }
+ Here is the caller graph for this function:

◆ enableSubscriptionMembershipLimitation()

ilObjCourse::enableSubscriptionMembershipLimitation ( bool  $a_status)

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

Referenced by __readSettings().

351  : void
352  {
353  $this->subscription_membership_limitation = $a_status;
354  }
+ Here is the caller graph for this function:

◆ enableWaitingList()

ilObjCourse::enableWaitingList ( bool  $a_status)

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

Referenced by __readSettings().

325  : void
326  {
327  $this->waiting_list = $a_status;
328  }
+ Here is the caller graph for this function:

◆ findCoursesWithNotEnoughMembers()

static ilObjCourse::findCoursesWithNotEnoughMembers ( )
static

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

1842  : array
1843  {
1844  $ilDB = $GLOBALS['DIC']->database();
1845  $tree = $GLOBALS['DIC']->repositoryTree();
1846 
1847  $res = array();
1848 
1849  $before = new ilDateTime(time(), IL_CAL_UNIX);
1850  $now = $before->get(IL_CAL_UNIX);
1851  $now_dt = $before->get(IL_CAL_DATETIME, '', ilTimeZone::UTC);
1852 
1853  $set = $ilDB->query("SELECT obj_id, min_members" .
1854  " FROM crs_settings" .
1855  " WHERE min_members > " . $ilDB->quote(0, "integer") .
1856  " AND sub_mem_limit = " . $ilDB->quote(1, "integer") . // #17206
1857  " AND ((leave_end IS NOT NULL" .
1858  " AND leave_end < " . $ilDB->quote($now, "text") . ")" .
1859  " OR (leave_end IS NULL" .
1860  " AND sub_end IS NOT NULL" .
1861  " AND sub_end < " . $ilDB->quote($now, "text") . "))" .
1862  " AND (period_start IS NULL OR period_start > " . $ilDB->quote($now_dt, ilDBConstants::T_TEXT) . ")");
1863  while ($row = $ilDB->fetchAssoc($set)) {
1864  $refs = ilObject::_getAllReferences((int) $row['obj_id']);
1865  $ref = end($refs);
1866 
1867  if ($tree->isDeleted($ref)) {
1868  continue;
1869  }
1870 
1871  $part = new ilCourseParticipants((int) $row["obj_id"]);
1872  $reci = $part->getNotificationRecipients();
1873  if ($reci !== []) {
1874  $missing = (int) $row["min_members"] - $part->getCountMembers();
1875  if ($missing > 0) {
1876  $res[(int) $row["obj_id"]] = array($missing, $reci);
1877  }
1878  }
1879  }
1880 
1881  return $res;
1882  }
$res
Definition: ltiservices.php:69
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
if(!defined('PATH_SEPARATOR')) $GLOBALS['_PEAR_default_error_mode']
Definition: PEAR.php:64
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getAboStatus()

ilObjCourse::getAboStatus ( )

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

References $abo.

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

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

◆ getActivationEnd()

ilObjCourse::getActivationEnd ( )

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

References $activation_end.

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

240  : int
241  {
242  return $this->activation_end;
243  }
+ Here is the caller graph for this function:

◆ getActivationStart()

ilObjCourse::getActivationStart ( )

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

References $activation_start.

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

230  : int
231  {
233  }
+ Here is the caller graph for this function:

◆ getActivationUnlimitedStatus()

ilObjCourse::getActivationUnlimitedStatus ( )

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

References getActivationEnd(), and getActivationStart().

Referenced by isActivated(), and prepareAppointments().

225  : bool
226  {
227  return !$this->getActivationStart() || !$this->getActivationEnd();
228  }
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getActivationVisibility()

ilObjCourse::getActivationVisibility ( )

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

References $activation_visibility.

Referenced by cloneSettings(), and updateSettings().

255  : bool
256  {
258  }
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 1695 of file class.ilObjCourse.php.

References $auto_notification.

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

1695  : bool
1696  {
1697  return $this->auto_notification;
1698  }
+ Here is the caller graph for this function:

◆ getCancellationEnd()

ilObjCourse::getCancellationEnd ( )

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

References $leave_end.

Referenced by cloneSettings(), and updateSettings().

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

◆ getContactConsultation()

ilObjCourse::getContactConsultation ( )

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

References $contact_consultation.

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

185  : string
186  {
188  }
string $contact_consultation
+ Here is the caller graph for this function:

◆ getContactEmail()

ilObjCourse::getContactEmail ( )

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

References $contact_email.

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

205  : string
206  {
207  return $this->contact_email;
208  }
+ Here is the caller graph for this function:

◆ getContactName()

ilObjCourse::getContactName ( )

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

References $contact_name.

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

175  : string
176  {
177  return $this->contact_name;
178  }
+ Here is the caller graph for this function:

◆ getContactPhone()

ilObjCourse::getContactPhone ( )

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

References $contact_phone.

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

195  : string
196  {
197  return $this->contact_phone;
198  }
+ Here is the caller graph for this function:

◆ getContactResponsibility()

ilObjCourse::getContactResponsibility ( )

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

References $contact_responsibility.

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

215  : string
216  {
218  }
string $contact_responsibility
+ Here is the caller graph for this function:

◆ getCourseEnd()

ilObjCourse::getCourseEnd ( )

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

References $crs_end.

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

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

◆ getCourseStart()

ilObjCourse::getCourseStart ( )

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

References $crs_start.

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

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

◆ getCourseStartTimeIndication()

ilObjCourse::getCourseStartTimeIndication ( )

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

References $course_start_time_indication.

Referenced by prepareAppointments(), and updateSettings().

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

◆ getDefaultAdminRole()

ilObjCourse::getDefaultAdminRole ( )

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

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

Referenced by cloneAutoGeneratedRoles().

1449  : int
1450  {
1451  $local_roles = $this->__getLocalRoles();
1452  foreach ($local_roles as $role_id) {
1453  if ($tmp_role = ilObjectFactory::getInstanceByObjId($role_id, false)) {
1454  if (!strcmp($tmp_role->getTitle(), "il_crs_admin_" . $this->getRefId())) {
1455  return $role_id;
1456  }
1457  }
1458  }
1459  return 0;
1460  }
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 1375 of file class.ilObjCourse.php.

References ilObject\getRefId().

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

◆ getDefaultMemberRole()

ilObjCourse::getDefaultMemberRole ( )

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

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

Referenced by cloneAutoGeneratedRoles().

1424  : int
1425  {
1426  $local_roles = $this->__getLocalRoles();
1427  foreach ($local_roles as $role_id) {
1428  $title = ilObject::_lookupTitle($role_id);
1429  if (substr($title, 0, 8) == 'il_crs_m') {
1430  return $role_id;
1431  }
1432  }
1433  return 0;
1434  }
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 1436 of file class.ilObjCourse.php.

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

Referenced by cloneAutoGeneratedRoles().

1436  : int
1437  {
1438  $local_roles = $this->__getLocalRoles();
1439  foreach ($local_roles as $role_id) {
1440  if ($tmp_role = ilObjectFactory::getInstanceByObjId($role_id, false)) {
1441  if (!strcmp($tmp_role->getTitle(), "il_crs_tutor_" . $this->getRefId())) {
1442  return $role_id;
1443  }
1444  }
1445  }
1446  return 0;
1447  }
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 644 of file class.ilObjCourse.php.

References $enablemap.

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

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

◆ getEnableMap()

ilObjCourse::getEnableMap ( )

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

References getEnableCourseMap().

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

◆ getImportantInformation()

ilObjCourse::getImportantInformation ( )

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

References $important.

Referenced by cloneSettings(), and updateSettings().

145  : string
146  {
147  return $this->important;
148  }
+ Here is the caller graph for this function:

◆ getLatitude()

ilObjCourse::getLatitude ( )

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

References $latitude.

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

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

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

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

References $locationzoom.

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

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

◆ getLongitude()

ilObjCourse::getLongitude ( )

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

References $longitude.

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

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

◆ getMailToMembersType()

ilObjCourse::getMailToMembersType ( )

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

References $mail_members.

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

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

◆ getMemberObject()

ilObjCourse::getMemberObject ( )

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

References $member_obj, and initCourseMemberObject().

1256  {
1257  if (!$this->member_obj instanceof ilCourseParticipant) {
1258  $this->initCourseMemberObject();
1259  }
1260  return $this->member_obj;
1261  }
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
ilCourseParticipant $member_obj
+ Here is the call graph for this function:

◆ getMembersObject()

ilObjCourse::getMembersObject ( )

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

References $members_obj, and initCourseMembersObject().

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

1264  {
1265  if (!$this->members_obj instanceof ilCourseParticipants) {
1266  $this->initCourseMembersObject();
1267  }
1268  return $this->members_obj;
1269  }
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 524 of file class.ilObjCourse.php.

References $message.

Referenced by appendMessage(), and validate().

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

◆ getNumberOfNextSessions()

ilObjCourse::getNumberOfNextSessions ( )

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

References $session_next.

Referenced by cloneSettings(), and updateSettings().

371  : int
372  {
373  return $this->session_next;
374  }
+ Here is the caller graph for this function:

◆ getNumberOfPreviousSessions()

ilObjCourse::getNumberOfPreviousSessions ( )

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

References $session_prev.

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

361  : int
362  {
363  return $this->session_prev;
364  }
+ Here is the caller graph for this function:

◆ getOrderType()

ilObjCourse::getOrderType ( )

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

References enabledObjectiveView(), and ilContainer\SORT_MANUAL.

Referenced by cloneSettings(), and update().

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

◆ getRegistrationAccessCode()

ilObjCourse::getRegistrationAccessCode ( )

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

References $reg_access_code.

Referenced by __createDefaultSettings(), and updateSettings().

125  : string
126  {
127  return $this->reg_access_code;
128  }
string $reg_access_code
+ Here is the caller graph for this function:

◆ getShowMembers()

ilObjCourse::getShowMembers ( )

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

References $show_members.

Referenced by cloneSettings(), and updateSettings().

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

◆ getShowMembersExport()

ilObjCourse::getShowMembersExport ( )

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

References $member_export.

Referenced by cloneSettings(), and updateSettings().

115  : bool
116  {
117  return $this->member_export;
118  }
+ Here is the caller graph for this function:

◆ getStatusDetermination()

ilObjCourse::getStatusDetermination ( )

Get status determination mode.

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

References $status_dt.

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

1729  : int
1730  {
1731  return $this->status_dt;
1732  }
+ Here is the caller graph for this function:

◆ getSubItems()

ilObjCourse::getSubItems ( bool  $a_admin_panel_enabled = false,
bool  $a_include_side_block = false,
int  $a_get_single = 0,
\ilContainerUserFilter  $container_user_filter = null 
)

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

References ILIAS\Repository\int().

408  : array {
409  // Caching
410  if (isset($this->items[(int) $a_admin_panel_enabled][(int) $a_include_side_block])) {
411  return $this->items[(int) $a_admin_panel_enabled][(int) $a_include_side_block];
412  }
413 
414  // Results are stored in $this->items
415  parent::getSubItems($a_admin_panel_enabled, $a_include_side_block, $a_get_single);
416  $this->items = ilContainerSessionsContentGUI::prepareSessionPresentationLimitation(
417  $this->items,
418  $this,
419  $a_admin_panel_enabled,
420  $a_include_side_block
421  );
422  return $this->items[(int) $a_admin_panel_enabled][(int) $a_include_side_block];
423  }
+ Here is the call graph for this function:

◆ getSubscriptionEnd()

ilObjCourse::getSubscriptionEnd ( )

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

References $subscription_end.

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

285  : int
286  {
288  }
+ Here is the caller graph for this function:

◆ getSubscriptionLimitationType()

ilObjCourse::getSubscriptionLimitationType ( )

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

References $subscription_limitation_type.

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

260  : int
261  {
263  }
int $subscription_limitation_type
+ Here is the caller graph for this function:

◆ getSubscriptionMaxMembers()

ilObjCourse::getSubscriptionMaxMembers ( )

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

References $subscription_max_members.

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

381  : int
382  {
384  }
int $subscription_max_members
+ Here is the caller graph for this function:

◆ getSubscriptionMinMembers()

ilObjCourse::getSubscriptionMinMembers ( )

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

References $min_members.

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

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

◆ getSubscriptionNotify()

ilObjCourse::getSubscriptionNotify ( )

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

Referenced by updateSettings().

425  : bool
426  {
427  return true;
428  }
+ Here is the caller graph for this function:

◆ getSubscriptionPassword()

ilObjCourse::getSubscriptionPassword ( )

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

References $subscription_password.

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

305  : string
306  {
308  }
string $subscription_password
+ Here is the caller graph for this function:

◆ getSubscriptionStart()

ilObjCourse::getSubscriptionStart ( )

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

References $subscription_start.

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

275  : int
276  {
278  }
+ Here is the caller graph for this function:

◆ getSubscriptionType()

ilObjCourse::getSubscriptionType ( )

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

References ilCourseConstants\IL_CRS_SUBSCRIPTION_DIRECT.

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

295  : int
296  {
297  return $this->subscription_type ?: ilCourseConstants::IL_CRS_SUBSCRIPTION_DIRECT;
298  }
+ Here is the caller graph for this function:

◆ getSubscriptionUnlimitedStatus()

ilObjCourse::getSubscriptionUnlimitedStatus ( )

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

References ilCourseConstants\IL_CRS_SUBSCRIPTION_UNLIMITED.

Referenced by inSubscriptionTime().

270  : bool
271  {
272  return $this->subscription_limitation_type == ilCourseConstants::IL_CRS_SUBSCRIPTION_UNLIMITED;
273  }
+ Here is the caller graph for this function:

◆ getSyllabus()

ilObjCourse::getSyllabus ( )

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

References $syllabus.

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

155  : string
156  {
157  return $this->syllabus;
158  }
+ Here is the caller graph for this function:

◆ getTargetGroup()

ilObjCourse::getTargetGroup ( )

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

References $target_group.

Referenced by cloneSettings(), and updateSettings().

165  : ?string
166  {
167  return $this->target_group;
168  }
+ Here is the caller graph for this function:

◆ getTimingMode()

ilObjCourse::getTimingMode ( )

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

References $timing_mode.

Referenced by cloneSettings(), and updateSettings().

461  : int
462  {
463  return $this->timing_mode;
464  }
+ Here is the caller graph for this function:

◆ getViewMode()

ilObjCourse::getViewMode ( )

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

References $view_mode.

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

435  : int
436  {
437  return $this->view_mode;
438  }
+ Here is the caller graph for this function:

◆ handleAutoFill()

ilObjCourse::handleAutoFill ( )

Handle course auto fill.

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

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

1772  : void
1773  {
1774  if (
1775  !$this->enabledWaitingList() || !$this->hasWaitingListAutoFill()
1776  ) {
1777  $this->course_logger->debug('Waiting list or auto fill disabled.');
1778  return;
1779  }
1780 
1781  $max = $this->getSubscriptionMaxMembers();
1783 
1784  $this->course_logger->debug('Max members: ' . $max);
1785  $this->course_logger->debug('Current members: ' . $now);
1786 
1787  if ($max <= $now) {
1788  return;
1789  }
1790 
1791  // see assignFromWaitingListObject()
1792  $waiting_list = new ilCourseWaitingList($this->getId());
1793 
1794  foreach ($waiting_list->getUserIds() as $user_id) {
1795  if (!$tmp_obj = ilObjectFactory::getInstanceByObjId($user_id, false)) {
1796  $this->course_logger->warning('Cannot create user instance for id: ' . $user_id);
1797  continue;
1798  }
1799  if ($this->getMembersObject()->isAssigned($user_id)) {
1800  $this->course_logger->warning('User is already assigned to course. uid: ' . $user_id . ' course_id: ' . $this->getRefId());
1801  continue;
1802  }
1803  $this->getMembersObject()->add($user_id, ilParticipants::IL_CRS_MEMBER);
1804  $this->getMembersObject()->sendNotification(ilCourseMembershipMailNotification::TYPE_ADMISSION_MEMBER, $user_id, true);
1805  $waiting_list->removeFromList($user_id);
1806  $this->checkLPStatusSync($user_id);
1807 
1808  $this->course_logger->info('Assigned user from waiting list to course: ' . $this->getTitle());
1809  $now++;
1810  if ($now >= $max) {
1811  break;
1812  }
1813  }
1814  }
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
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 897 of file class.ilObjCourse.php.

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

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

◆ hasWaitingListAutoFill()

ilObjCourse::hasWaitingListAutoFill ( )

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

References $auto_fill_from_waiting.

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

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

◆ initCourseMemberObject()

ilObjCourse::initCourseMemberObject ( )
protected

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

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

Referenced by getMemberObject().

1245  : void
1246  {
1247  $this->member_obj = ilCourseParticipant::_getInstanceByObjId($this->getId(), $this->user->getId());
1248  }
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 1250 of file class.ilObjCourse.php.

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

Referenced by getMembersObject().

1250  : void
1251  {
1252  $this->members_obj = ilCourseParticipants::_getInstanceByObjId($this->getId());
1253  }
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 1273 of file class.ilObjCourse.php.

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

1273  : void
1274  {
1276  'il_crs_admin_' . $this->getRefId(),
1277  "Admin of crs obj_no." . $this->getId(),
1278  'il_crs_admin',
1279  $this->getRefId()
1280  );
1282  'il_crs_tutor_' . $this->getRefId(),
1283  "Tutor of crs obj_no." . $this->getId(),
1284  'il_crs_tutor',
1285  $this->getRefId()
1286  );
1288  'il_crs_member_' . $this->getRefId(),
1289  "Member of crs obj_no." . $this->getId(),
1290  'il_crs_member',
1291  $this->getRefId()
1292  );
1293  }
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 1238 of file class.ilObjCourse.php.

References ilObject\getId().

1238  : void
1239  {
1240  if (!$this->waiting_list_obj instanceof ilCourseWaitingList) {
1241  $this->waiting_list_obj = new ilCourseWaitingList($this->getId());
1242  }
1243  }
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:

◆ inSubscriptionTime()

ilObjCourse::inSubscriptionTime ( )

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

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

Referenced by register().

330  : bool
331  {
332  if ($this->getSubscriptionUnlimitedStatus()) {
333  return true;
334  }
335  if (time() > $this->getSubscriptionStart() and time() < $this->getSubscriptionEnd()) {
336  return true;
337  }
338  return false;
339  }
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ isActivated()

ilObjCourse::isActivated ( )

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

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

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

◆ isRegistrationAccessCodeEnabled()

ilObjCourse::isRegistrationAccessCodeEnabled ( )

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

References $reg_access_code_enabled.

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

135  : bool
136  {
138  }
bool $reg_access_code_enabled
+ Here is the caller graph for this function:

◆ isSessionLimitEnabled()

ilObjCourse::isSessionLimitEnabled ( )

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

References $session_limit.

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

346  : bool
347  {
348  return (bool) $this->session_limit;
349  }
+ Here is the caller graph for this function:

◆ isSubscriptionMembershipLimited()

ilObjCourse::isSubscriptionMembershipLimited ( )

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

References $subscription_membership_limitation.

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

376  : bool
377  {
379  }
bool $subscription_membership_limitation
+ Here is the caller graph for this function:

◆ lookupCourseNonMemberTemplatesId()

static ilObjCourse::lookupCourseNonMemberTemplatesId ( )
static

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

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

Referenced by ilRbacAdmin\adjustMovedObjectPermissions().

1325  : int
1326  {
1327  global $DIC;
1328 
1329  $ilDB = $DIC->database();
1330 
1331  $query = 'SELECT obj_id FROM object_data WHERE type = ' . $ilDB->quote(
1332  'rolt',
1333  'text'
1334  ) . ' AND title = ' . $ilDB->quote('il_crs_non_member', 'text');
1335  $res = $ilDB->query($query);
1336  $row = $res->fetchRow(ilDBConstants::FETCHMODE_ASSOC);
1337  return (int) $row['obj_id'];
1338  }
$res
Definition: ltiservices.php:69
global $DIC
Definition: feed.php:28
$query
+ 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 1587 of file class.ilObjCourse.php.

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

Referenced by ilMembershipRegistrationCodeUtils\lookupObjectsByCode().

1587  : array
1588  {
1589  global $DIC;
1590 
1591  $ilDB = $DIC->database();
1592 
1593  $query = "SELECT obj_id FROM crs_settings " .
1594  "WHERE reg_ac_enabled = " . $ilDB->quote(1, 'integer') . " " .
1595  "AND reg_ac = " . $ilDB->quote($a_code, 'text');
1596  $res = $ilDB->query($query);
1597 
1598  $obj_ids = array();
1599  while ($row = $res->fetchRow(ilDBConstants::FETCHMODE_OBJECT)) {
1600  $obj_ids[] = (int) $row->obj_id;
1601  }
1602  return $obj_ids;
1603  }
$res
Definition: ltiservices.php:69
global $DIC
Definition: feed.php:28
$query
+ 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 104 of file class.ilObjCourse.php.

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

Referenced by ILIAS\Awareness\User\ProviderCurrentCourse\getInitialUserSet(), and ilParticipants\hasParticipantListAccess().

104  : bool
105  {
106  $query = 'SELECT show_members FROM crs_settings ' .
107  'WHERE obj_id = ' . $GLOBALS['DIC']['ilDB']->quote($a_obj_id, 'integer');
108  $res = $GLOBALS['DIC']['ilDB']->query($query);
109  while ($row = $res->fetchRow(ilDBConstants::FETCHMODE_OBJECT)) {
110  return (bool) $row->show_members;
111  }
112  return false;
113  }
$res
Definition: ltiservices.php:69
if(!defined('PATH_SEPARATOR')) $GLOBALS['_PEAR_default_error_mode']
Definition: PEAR.php:64
$query
+ Here is the caller graph for this function:

◆ lookupTimingMode()

static ilObjCourse::lookupTimingMode ( int  $a_obj_id)
static

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

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

Referenced by ilCalendarScheduleFilterTimings\addCustomEvents(), ilCourseAppEventListener\initializeTimings(), ilObjectActivationGUI\initTimingMode(), and ilCalendarScheduleFilterTimings\modifyEvent().

440  : int
441  {
442  global $DIC;
443 
444  $ilDB = $DIC['ilDB'];
445 
446  $query = 'SELECT timing_mode FROM crs_settings ' .
447  'WHERE obj_id = ' . $ilDB->quote($a_obj_id, 'integer');
448  $res = $ilDB->query($query);
449 
450  while ($row = $res->fetchRow(ilDBConstants::FETCHMODE_OBJECT)) {
451  return (int) $row->timing_mode;
452  }
454  }
$res
Definition: ltiservices.php:69
global $DIC
Definition: feed.php:28
$query
+ 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 1816 of file class.ilObjCourse.php.

References $DIC, $ilDB, $ilUser, and IL_CAL_DATE.

Referenced by ilObjCourseAccess\_checkAccess().

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

◆ prepareAppointments()

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

Prepare calendar appointments.

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

References $app, 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().

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

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

573  : void
574  {
575  parent::read();
577  $this->__readSettings();
578  }
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 1609 of file class.ilObjCourse.php.

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

1613  : void {
1614  if ($this->getMembersObject()->isAssigned($a_user_id)) {
1615  return;
1616  }
1617 
1618  if (!$a_force_registration) {
1619  // offline
1620  if (ilObjCourseAccess::_isOffline($this->getId())) {
1622  "Can't register to course, course is offline.",
1624  );
1625  }
1626  // activation
1627  if (!ilObjCourseAccess::_isActivated($this->getId())) {
1629  "Can't register to course, course is not activated.",
1631  );
1632  }
1633 
1637  'Cant registrate to course ' . $this->getId() .
1638  ', course subscription is deactivated.',
1640  );
1641  }
1642  }
1643 
1644  // Time Limitation
1646  if (!$this->inSubscriptionTime()) {
1648  'Cant registrate to course ' . $this->getId() .
1649  ', course is out of registration time.',
1651  );
1652  }
1653  }
1654 
1655  // Max members
1656  if ($this->isSubscriptionMembershipLimited()) {
1657  $free = max(0, $this->getSubscriptionMaxMembers() - $this->getMembersObject()->getCountMembers());
1658  $waiting_list = new ilCourseWaitingList($this->getId());
1659  if ($this->enabledWaitingList() && (!$free || $waiting_list->getCountUsers())) {
1660  $waiting_list->addToList($a_user_id);
1661  $this->lng->loadLanguageModule("crs");
1662  $info = sprintf(
1663  $this->lng->txt('crs_added_to_list'),
1664  $waiting_list->getPosition($a_user_id)
1665  );
1666  $participants = ilCourseParticipants::_getInstanceByObjId($this->getId());
1667  $participants->sendNotification(
1669  $a_user_id
1670  );
1671 
1673  $info,
1675  );
1676  }
1677 
1678  if (!$this->enabledWaitingList() && !$free) {
1679  throw new ilMembershipRegistrationException('Cant registrate to course ' . $this->getId() .
1680  ', membership is limited.', ilMembershipRegistrationException::OBJECT_IS_FULL);
1681  }
1682  }
1683  }
1684 
1685  $this->getMembersObject()->add($a_user_id, $a_role);
1686  $this->getMembersObject()->sendNotification(ilCourseMembershipMailNotification::TYPE_ADMISSION_MEMBER, $a_user_id);
1689  }
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
static _getInstanceByObjId(int $a_obj_id)
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
static _isOffline(int $obj_id)
static _isActivated(int $a_obj_id, ?bool &$a_visible_flag=null, bool $a_mind_member_view=true)
static checkForumsExistsInsert(int $ref_id, int $user_id)
+ Here is the call graph for this function:

◆ setAboStatus()

ilObjCourse::setAboStatus ( bool  $a_status)

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

Referenced by __readSettings().

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

◆ setActivationEnd()

ilObjCourse::setActivationEnd ( int  $a_value)

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

Referenced by __readSettings().

245  : void
246  {
247  $this->activation_end = $a_value;
248  }
+ Here is the caller graph for this function:

◆ setActivationStart()

ilObjCourse::setActivationStart ( int  $a_value)

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

Referenced by __readSettings().

235  : void
236  {
237  $this->activation_start = $a_value;
238  }
+ Here is the caller graph for this function:

◆ setActivationVisibility()

ilObjCourse::setActivationVisibility ( bool  $a_value)

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

Referenced by __readSettings().

250  : void
251  {
252  $this->activation_visibility = $a_value;
253  }
+ 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 1704 of file class.ilObjCourse.php.

Referenced by __readSettings().

1704  : void
1705  {
1706  $this->auto_notification = $value;
1707  }
+ Here is the caller graph for this function:

◆ setCancellationEnd()

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

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

Referenced by __readSettings().

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

◆ setContactConsultation()

ilObjCourse::setContactConsultation ( string  $a_value)

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

Referenced by __readSettings().

190  : void
191  {
192  $this->contact_consultation = $a_value;
193  }
+ Here is the caller graph for this function:

◆ setContactEmail()

ilObjCourse::setContactEmail ( string  $a_value)

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

Referenced by __readSettings().

210  : void
211  {
212  $this->contact_email = $a_value;
213  }
+ Here is the caller graph for this function:

◆ setContactName()

ilObjCourse::setContactName ( string  $a_cn)

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

Referenced by __readSettings().

180  : void
181  {
182  $this->contact_name = $a_cn;
183  }
+ Here is the caller graph for this function:

◆ setContactPhone()

ilObjCourse::setContactPhone ( string  $a_value)

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

Referenced by __readSettings().

200  : void
201  {
202  $this->contact_phone = $a_value;
203  }
+ Here is the caller graph for this function:

◆ setContactResponsibility()

ilObjCourse::setContactResponsibility ( string  $a_value)

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

Referenced by __readSettings().

220  : void
221  {
222  $this->contact_responsibility = $a_value;
223  }
+ Here is the caller graph for this function:

◆ setCourseEnd()

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

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

Referenced by setCoursePeriod().

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

◆ setCoursePeriod()

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

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

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

Referenced by __readSettings().

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

Referenced by setCoursePeriod().

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

◆ setEnableCourseMap()

ilObjCourse::setEnableCourseMap ( bool  $a_enablemap)

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

Referenced by __readSettings().

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

◆ setImportantInformation()

ilObjCourse::setImportantInformation ( string  $a_info)

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

Referenced by __readSettings().

150  : void
151  {
152  $this->important = $a_info;
153  }
+ Here is the caller graph for this function:

◆ setLatitude()

ilObjCourse::setLatitude ( string  $a_latitude)

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

Referenced by __readSettings().

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

◆ setLocationZoom()

ilObjCourse::setLocationZoom ( int  $a_locationzoom)

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

Referenced by __readSettings().

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

◆ setLongitude()

ilObjCourse::setLongitude ( string  $a_longitude)

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

Referenced by __readSettings().

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

◆ setMailToMembersType()

ilObjCourse::setMailToMembersType ( int  $a_type)

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

Referenced by __readSettings().

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

◆ setMessage()

ilObjCourse::setMessage ( string  $a_message)

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

Referenced by validate().

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

◆ setNumberOfNextSessions()

ilObjCourse::setNumberOfNextSessions ( int  $a_num)

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

Referenced by __readSettings().

366  : void
367  {
368  $this->session_next = $a_num;
369  }
+ Here is the caller graph for this function:

◆ setNumberOfPreviousSessions()

ilObjCourse::setNumberOfPreviousSessions ( int  $a_num)

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

Referenced by __readSettings().

356  : void
357  {
358  $this->session_prev = $a_num;
359  }
+ Here is the caller graph for this function:

◆ setParentRolePermissions()

ilObjCourse::setParentRolePermissions ( int  $a_parent_ref)

This method is called before "initDefaultRoles".

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

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

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

1302  : bool
1303  {
1304  $parent_roles = $this->rbac_review->getParentRoleIds($a_parent_ref);
1305  foreach ($parent_roles as $parent_role) {
1306  $this->rbac_admin->initIntersectionPermissions(
1307  $this->getRefId(),
1308  $parent_role['obj_id'],
1309  $parent_role['parent'],
1310  $this->__getCrsNonMemberTemplateId(),
1312  );
1313  }
1314  return true;
1315  }
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 130 of file class.ilObjCourse.php.

Referenced by __createDefaultSettings(), and __readSettings().

130  : void
131  {
132  $this->reg_access_code = $a_code;
133  }
+ Here is the caller graph for this function:

◆ setShowMembers()

ilObjCourse::setShowMembers ( bool  $a_status)

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

Referenced by __readSettings().

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

◆ setShowMembersExport()

ilObjCourse::setShowMembersExport ( bool  $a_mem_export)

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

Referenced by __readSettings().

120  : void
121  {
122  $this->member_export = $a_mem_export;
123  }
+ Here is the caller graph for this function:

◆ setStatusDetermination()

ilObjCourse::setStatusDetermination ( int  $a_value)

Set status determination mode.

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

References ilObjUserTracking\_enabledLearningProgress().

Referenced by __construct(), and __readSettings().

1712  : void
1713  {
1714  $a_value = $a_value;
1715 
1716  // #13905
1717  if ($a_value == self::STATUS_DETERMINATION_LP) {
1719  $a_value = self::STATUS_DETERMINATION_MANUAL;
1720  }
1721  }
1722 
1723  $this->status_dt = $a_value;
1724  }
+ 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 290 of file class.ilObjCourse.php.

Referenced by __readSettings().

290  : void
291  {
292  $this->subscription_end = $a_value;
293  }
+ Here is the caller graph for this function:

◆ setSubscriptionLimitationType()

ilObjCourse::setSubscriptionLimitationType ( int  $a_type)

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

Referenced by __readSettings().

265  : void
266  {
267  $this->subscription_limitation_type = $a_type;
268  }
+ Here is the caller graph for this function:

◆ setSubscriptionMaxMembers()

ilObjCourse::setSubscriptionMaxMembers ( int  $a_value)

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

Referenced by __readSettings().

386  : void
387  {
388  $this->subscription_max_members = $a_value;
389  }
+ Here is the caller graph for this function:

◆ setSubscriptionMinMembers()

ilObjCourse::setSubscriptionMinMembers ( int  $a_value)

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

Referenced by __readSettings().

707  : void
708  {
709  if ($a_value !== null) {
710  $a_value = $a_value;
711  }
712  $this->min_members = $a_value;
713  }
+ Here is the caller graph for this function:

◆ setSubscriptionPassword()

ilObjCourse::setSubscriptionPassword ( string  $a_value)

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

Referenced by __readSettings().

310  : void
311  {
312  $this->subscription_password = $a_value;
313  }
+ Here is the caller graph for this function:

◆ setSubscriptionStart()

ilObjCourse::setSubscriptionStart ( int  $a_value)

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

Referenced by __readSettings().

280  : void
281  {
282  $this->subscription_start = $a_value;
283  }
+ Here is the caller graph for this function:

◆ setSubscriptionType()

ilObjCourse::setSubscriptionType ( int  $a_value)

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

Referenced by __readSettings().

300  : void
301  {
302  $this->subscription_type = $a_value;
303  }
+ Here is the caller graph for this function:

◆ setSyllabus()

ilObjCourse::setSyllabus ( string  $a_syllabus)

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

Referenced by __readSettings().

160  : void
161  {
162  $this->syllabus = $a_syllabus;
163  }
+ Here is the caller graph for this function:

◆ setTargetGroup()

ilObjCourse::setTargetGroup ( ?string  $a_tg)

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

Referenced by __readSettings().

170  : void
171  {
172  $this->target_group = $a_tg;
173  }
+ Here is the caller graph for this function:

◆ setTimingMode()

ilObjCourse::setTimingMode ( int  $a_mode)

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

Referenced by __readSettings().

456  : void
457  {
458  $this->timing_mode = $a_mode;
459  }
+ Here is the caller graph for this function:

◆ setViewMode()

ilObjCourse::setViewMode ( int  $a_mode)

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

Referenced by __readSettings().

430  : void
431  {
432  $this->view_mode = $a_mode;
433  }
+ Here is the caller graph for this function:

◆ setWaitingListAutoFill()

ilObjCourse::setWaitingListAutoFill ( bool  $a_value)

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

Referenced by __readSettings().

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

◆ syncMembersStatusWithLP()

ilObjCourse::syncMembersStatusWithLP ( )

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

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

1734  : void
1735  {
1736  foreach ($this->getMembersObject()->getParticipants() as $user_id) {
1737  // #15529 - force raise on sync
1738  ilLPStatusWrapper::_updateStatus($this->getId(), $user_id, null, false, true);
1739  }
1740  }
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 667 of file class.ilObjCourse.php.

Referenced by __readSettings(), and setCoursePeriod().

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

◆ update()

ilObjCourse::update ( )

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

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

946  : bool
947  {
948  $sorting = new ilContainerSortingSettings($this->getId());
949  $sorting->setSortMode($this->getOrderType());
950  $sorting->update();
951 
952  $this->updateMetaData();
953  $this->updateSettings();
954  parent::update();
955 
956  $this->app_event_handler->raise(
957  'Modules/Course',
958  'update',
959  array('object' => $this,
960  'obj_id' => $this->getId(),
961  'appointments' => $this->prepareAppointments('update')
962  )
963  );
964  return true;
965  }
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 969 of file class.ilObjCourse.php.

References $query, $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(), getViewMode(), hasWaitingListAutoFill(), IL_CAL_UNIX, isRegistrationAccessCodeEnabled(), isSessionLimitEnabled(), isSubscriptionMembershipLimited(), ilDBConstants\T_INTEGER, ilDBConstants\T_TEXT, ilDBConstants\T_TIMESTAMP, ilObjectActivation\TIMINGS_ACTIVATION, and ilObjectActivation\TIMINGS_DEACTIVATED.

Referenced by update().

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

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

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

880  : bool
881  {
882  $error = false;
883  if ($this->getContactEmail()) {
884  $emails = explode(",", $this->getContactEmail());
885 
886  foreach ($emails as $email) {
887  $email = trim($email);
888  if (!ilUtil::is_email($email) && !ilObjUser::getUserIdByLogin($email)) {
889  $this->error->appendMessage($this->lng->txt('contact_email_not_valid') . " '" . $email . "'");
890  $error = true;
891  }
892  }
893  }
894  return !$error;
895  }
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)
if($orgName !==null) if($spconfig->hasValue('contacts')) $email
Definition: metadata.php:302
ilErrorHandling $error
+ Here is the call graph for this function:

Field Documentation

◆ $abo

bool ilObjCourse::$abo = true
private

Definition at line 52 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 81 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 38 of file class.ilObjCourse.php.

Referenced by getContactConsultation().

◆ $contact_email

string ilObjCourse::$contact_email = ''
private

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

Referenced by getContactEmail().

◆ $contact_name

string ilObjCourse::$contact_name = ''
private

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

Referenced by getContactName().

◆ $contact_phone

string ilObjCourse::$contact_phone = ''
private

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

Referenced by getContactPhone().

◆ $contact_responsibility

string ilObjCourse::$contact_responsibility = ''
private

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

Referenced by getContactResponsibility().

◆ $course_logger

ilLogger ilObjCourse::$course_logger
private

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

◆ $course_start_time_indication

bool ilObjCourse::$course_start_time_indication = true
private

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

Referenced by getCourseStartTimeIndication().

◆ $crs_end

ilDateTime ilObjCourse::$crs_end = null
private

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

Referenced by getCourseEnd().

◆ $crs_start

ilDateTime ilObjCourse::$crs_start = null
private

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

Referenced by getCourseStart().

◆ $crs_start_time_indication

bool ilObjCourse::$crs_start_time_indication = false
private

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

◆ $enablemap

bool ilObjCourse::$enablemap = false
private

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

Referenced by getEnableCourseMap().

◆ $important

string ilObjCourse::$important = ''
private

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

Referenced by getImportantInformation().

◆ $latitude

string ilObjCourse::$latitude = ''
private

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

Referenced by getLatitude().

◆ $leave_end

ilDate ilObjCourse::$leave_end = null
private

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

Referenced by getCancellationEnd().

◆ $locationzoom

int ilObjCourse::$locationzoom = 0
private

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

Referenced by getLocationZoom().

◆ $longitude

string ilObjCourse::$longitude = ''
private

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

Referenced by getLongitude().

◆ $mail_members

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

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

Referenced by getMailToMembersType().

◆ $member_export

bool ilObjCourse::$member_export = false
private

Definition at line 82 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 54 of file class.ilObjCourse.php.

Referenced by getMessage().

◆ $min_members

int ilObjCourse::$min_members = 0
private

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

Referenced by getSubscriptionMinMembers().

◆ $reg_access_code

string ilObjCourse::$reg_access_code = ''
private

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

Referenced by getRegistrationAccessCode().

◆ $reg_access_code_enabled

bool ilObjCourse::$reg_access_code_enabled = false
private

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

Referenced by isRegistrationAccessCodeEnabled().

◆ $session_limit

int ilObjCourse::$session_limit = 0
private

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

Referenced by isSessionLimitEnabled().

◆ $session_next

int ilObjCourse::$session_next = -1
private

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

Referenced by getNumberOfNextSessions().

◆ $session_prev

int ilObjCourse::$session_prev = -1
private

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

Referenced by getNumberOfPreviousSessions().

◆ $show_members

bool ilObjCourse::$show_members = true
private

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

Referenced by getShowMembers().

◆ $status_dt

int ilObjCourse::$status_dt = 0
private

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

Referenced by getStatusDetermination().

◆ $subscription_end

int ilObjCourse::$subscription_end = 0
private

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

Referenced by getSubscriptionEnd().

◆ $subscription_limitation_type

int ilObjCourse::$subscription_limitation_type = 0
private

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

Referenced by getSubscriptionLimitationType().

◆ $subscription_max_members

int ilObjCourse::$subscription_max_members = 0
private

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

Referenced by getSubscriptionMaxMembers().

◆ $subscription_membership_limitation

bool ilObjCourse::$subscription_membership_limitation = false
private

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

Referenced by isSubscriptionMembershipLimited().

◆ $subscription_password

string ilObjCourse::$subscription_password = ''
private

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

Referenced by getSubscriptionPassword().

◆ $subscription_start

int ilObjCourse::$subscription_start = 0
private

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

Referenced by getSubscriptionStart().

◆ $subscription_type

int ilObjCourse::$subscription_type = 0
private

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

◆ $syllabus

string ilObjCourse::$syllabus = ''
private

Definition at line 58 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 83 of file class.ilObjCourse.php.

Referenced by getTimingMode().

◆ $view_mode

int ilObjCourse::$view_mode = 0
private

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

Referenced by getViewMode().

◆ $waiting_list

bool ilObjCourse::$waiting_list = false
private

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

Referenced by enabledWaitingList().

◆ $waiting_list_obj

ilCourseWaitingList ilObjCourse::$waiting_list_obj = null
private

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

◆ CAL_ACTIVATION_END

const ilObjCourse::CAL_ACTIVATION_END = 4

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

◆ CAL_ACTIVATION_START

const ilObjCourse::CAL_ACTIVATION_START = 3

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

◆ CAL_COURSE_END

const ilObjCourse::CAL_COURSE_END = 6

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

◆ CAL_COURSE_START

const ilObjCourse::CAL_COURSE_START = 5

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

◆ CAL_COURSE_TIMING_END

◆ CAL_COURSE_TIMING_START

◆ CAL_REG_END

const ilObjCourse::CAL_REG_END = 2

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

◆ CAL_REG_START

const ilObjCourse::CAL_REG_START = 1

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

◆ STATUS_DETERMINATION_LP

◆ STATUS_DETERMINATION_MANUAL

const ilObjCourse::STATUS_DETERMINATION_MANUAL = 2

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

Referenced by ilObjCourseGUI\initEditForm().


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