Stud.IP  4.0
 All Data Structures Namespaces Files Functions Variables Groups
Course Class Reference
Inheritance diagram for Course:
SimpleORMap Range PrivacyObject StudipItem FeedbackRange

Public Member Functions

 getEnd_Time ()
 
 setEnd_Time ($value)
 
 _set_semester ($field, $value)
 
 setStartSemester (Semester $semester)
 
 setEndSemester (?Semester $semester)
 
 getStartSemester ()
 
 getEndSemester ()
 
 getTextualSemester ()
 
 isOpenEnded ()
 
 isInSemester (Semester $semester)
 
 getFreeSeats ()
 
 isWaitlistAvailable ()
 
 getMembersWithStatus ($status, $as_collection=false)
 
 countMembersWithStatus ($status)
 
 getNumParticipants ()
 
 getNumPrelimParticipants ()
 
 getNumWaiting ()
 
 getParticipantStatus ($user_id)
 
 getSemType ()
 
 getSemClass ()
 
 getFullname ($format= 'default')
 
 getDatesWithExdates ($range_begin=0, $range_end=0)
 
 setStudyAreas ($ids)
 
 isVisibleForUser ($user_id=null)
 
 describeRange ()
 
 getRangeType ()
 
 getRangeId ()
 
 getConfiguration ()
 
 isAccessibleToUser ($user_id=null)
 
 isEditableByUser ($user_id=null)
 
 getCompletionIcon ()
 
 cbSetStartAndDurationTime ()
 
 getItemName ($long_format=true)
 
 getItemURL ()
 
 getItemAvatarURL ()
 
 getRangeName ()
 
 getRangeIcon ($role)
 
 getRangeUrl ()
 
 getRangeCourseId ()
 
 isRangeAccessible (string $user_id=null)
 
 getLink ()
 
 isStudygroup ()
 
 setDefaultTools ()
 
 isToolActive ($name)
 
 getActivatedTools ()
 
 __toString ()
 
- Public Member Functions inherited from SimpleORMap
 __construct ($id=null)
 
 __clone ()
 
 getRelationOptions ($relation)
 
 getTableMetadata ()
 
 hasAutoIncrementColumn ()
 
 setId ($id)
 
 getId ()
 
 getNewId ()
 
 toArray ($only_these_fields=null)
 
 toRawArray ($only_these_fields=null)
 
 toArrayRecursive ($only_these_fields=null)
 
 getValue ($field)
 
 getRelationValue ($relation, $field)
 
 getDefaultValue ($field)
 
 setValue ($field, $value)
 
 __get ($field)
 
 __set ($field, $value)
 
 __isset ($field)
 
 offsetExists ($offset)
 
 offsetGet ($offset)
 
 offsetSet ($offset, $value)
 
 offsetUnset ($offset)
 
 getIterator ()
 
 count ()
 
 isField ($field)
 
 isAdditionalField ($field)
 
 isAliasField ($field)
 
 isI18nField ($field)
 
 setData ($data, $reset=false)
 
 isNew ()
 
 isDeleted ()
 
 setNew ($is_new)
 
 getWhereQuery ()
 
 restore ()
 
 store ()
 
 triggerChdate ()
 
 delete ()
 
 isDirty ()
 
 isFieldDirty ($field)
 
 revertValue ($field)
 
 getPristineValue ($field)
 
 initRelation ($relation)
 
 resetRelation ($relation)
 
 cleanup ()
 

Static Public Member Functions

static findCurrent ()
 
static exportUserData (StoredUserData $storage)
 
static findByUser ($user_id, $perms=[], $with_deputies=true)
 
- Static Public Member Functions inherited from SimpleORMap
static tableScheme ($db_table)
 
static expireTableScheme ()
 
static exists ($id)
 
static countBySql ($sql= '1', $params=[])
 
static create ($data)
 
static buildExisting ($data)
 
static import ($data)
 
static findBySQL ($sql, $params=[])
 
static findOneBySQL ($where, $params=[])
 
static findThru ($foreign_key_value, $options)
 
static findEachBySQL ($callable, $sql, $params=[])
 
static findMany ($pks=[], $order= '', $order_params=[])
 
static findEachMany ($callable, $pks=[], $order= '', $order_params=[])
 
static findAndMapBySQL ($callable, $where, $params=[])
 
static findAndMapMany ($callable, $pks=[], $order= '', $order_params=[])
 
static deleteBySQL ($where, $params=[])
 
static toObject ($id_or_object)
 
static __callStatic ($name, $arguments)
 

Protected Member Functions

 logStore ()
 
- Protected Member Functions inherited from SimpleORMap
 _getId ($field)
 
 _setId ($field, $value)
 
 _getAdditionalValueFromRelation ($field)
 
 _setAdditionalValueFromRelation ($field, $value)
 
 _getAdditionalValue ($field)
 
 _setAdditionalValue ($field, $value)
 
 parseRelationOptions ($type, $name, $options)
 
 storeRelations ($only_these=null)
 
 deleteRelations ()
 
 initializeContent ()
 
 applyCallbacks ($type)
 
 registerCallback ($types, $cb)
 
 unregisterCallback ($types, $cb)
 
 cbAutoIncrementColumn ($type)
 
 cbAutoKeyCreation ()
 
 cbNotificationMapper ($cb_type)
 
 cbAfterInitialize ($cb_type)
 
 setSerializedValue ($field, $value)
 
 setI18nValue ($field, $value)
 
 cbI18N ($type)
 

Static Protected Member Functions

static configure ($config=[])
 
- Static Protected Member Functions inherited from SimpleORMap
static configure ($config=[])
 
static config ($key)
 

Additional Inherited Members

- Data Fields inherited from SimpleORMap
const ID_SEPARATOR = '_'
 
- Static Public Attributes inherited from SimpleORMap
static $schemes = null
 
- Protected Attributes inherited from SimpleORMap
 $content = []
 
 $content_db = []
 
 $is_new = true
 
 $is_deleted = false
 
 $db_table = ''
 
 $db_fields = null
 
 $pk = null
 
 $default_values = []
 
 $serialized_fields = []
 
 $alias_fields = []
 
 $i18n_fields = []
 
 $additional_fields = []
 
 $relations = []
 
 $has_many = []
 
 $has_one = []
 
 $belongs_to = []
 
 $has_and_belongs_to_many = []
 
 $registered_callbacks = []
 
 $known_slots = []
 
 $notification_map = []
 
 $additional_data = []
 
 $getter_setter_map = []
 
- Static Protected Attributes inherited from SimpleORMap
static $config = []
 
static $reserved_slots = ['value','newid','iterator','tablemetadata', 'relationvalue','wherequery','relationoptions','data','new','id']
 
static $performs_batch_operation = false
 

Member Function Documentation

__toString ( )
See Also
Range::__toString()

Implements Range.

_set_semester (   $field,
  $value 
)
cbSetStartAndDurationTime ( )

Called directly before storing the object to edit the columns start_time and duration_time which are both deprecated but are still in use for older plugins.

static configure (   $config = [])
staticprotected
countMembersWithStatus (   $status)

Retrieves the number of all members of a status

Parameters
String | Array$statusthe status to filter with
Returns
int the number of all those members.
describeRange ( )

Returns a descriptive text for the range type.

Returns
string

Implements Range.

static exportUserData ( StoredUserData  $storage)
static

Export available data of a given user into a storage object (an instance of the StoredUserData class) for that user.

Parameters
StoredUserData$storageobject to store data into

Implements PrivacyObject.

static findByUser (   $user_id,
  $perms = [],
  $with_deputies = true 
)
static

Returns a list of courses for the specified user. Permission levels may be supplied to limit the course list.

Parameters
string$user_idThe ID of the user whose courses shall be retrieved.
string[]$perms The permission levels of the user that shall be regarded when retrieving courses.
bool$with_deputiesWhether to include courses where the user is a deputy (true) or not (false). Defaults to true.
Returns
Course[] A list of courses.
static findCurrent ( )
static

Returns the currently active course or false if none is active.

Returns
Course object of currently active course, null otherwise
Since
3.0
getActivatedTools ( )

returns all activated plugins/modules for this course

Returns
StudipModule[]
getCompletionIcon ( )

Returns the appropriate icon for the completion status.

Mapping (completion -> icon role):

  • 0 => status-red
  • 1 => status-yellow
  • 2 => status-green
Returns
Icon class
getConfiguration ( )

{Returns the configuration object for this range.

Returns
RangeConfig
}

Implements Range.

getDatesWithExdates (   $range_begin = 0,
  $range_end = 0 
)

Retrieves the course dates including cancelled dates ("ex-dates"). The dates can be filtered by an optional time range. By default, all dates are retrieved.

Parameters
int$range_beginThe begin timestamp of the time range.
int$range_endThe end timestamp of the time range.
Returns
SimpleCollection A collection of all retrieved dates and cancelled dates.
getEnd_Time ( )
getEndSemester ( )

Retrieves the last semester of a course, if applicable.

Returns
Semester|null Either the last semester of the course or null, if no semester could be found.
getFreeSeats ( )
getFullname (   $format = 'default')

Returns the full name of a course. If the important course numbers (IMPORTANT_SEMNUMBER) is set in global configs it will also display the coursenumber

Parameters
stringformatting template name
Returns
string Fullname

Implements Range.

getItemAvatarURL ( )

Returns the URL to the avatar image or icon of the object, if applicable.

Returns
string|null Either the URL to the object's avatar or icon or null, if the object does not have an avatar.

Implements StudipItem.

getItemName (   $long_format = true)

Returns a human-readable name of the object.

Parameters
bool$long_formatIf set to true, a long format that has the object type as a prefix (course, room etc.) is returned. Otherwise only the name is returned.
Returns
string A human-readable string of the object's name.

Implements StudipItem.

getItemURL ( )

Returns an URL that points to a page describing or displaying the object.

Returns
string|null Either the URL to a descriptive page for the object or null, if the object does not have such an URL.

Implements StudipItem.

getLink ( )

Creates a StudipLink object that links to a page with information about the StudipItem object.

Returns
StudipLink A StudipLink object for the information page of the StudipItem object.

Implements StudipItem.

getMembersWithStatus (   $status,
  $as_collection = false 
)

Retrieves all members of a status

Parameters
String | Array$statusthe status to filter with
bool$as_collectionreturn collection instead of array?
Returns
Array|SimpleCollection an array of all those members.
getNumParticipants ( )
getNumPrelimParticipants ( )
getNumWaiting ( )
getParticipantStatus (   $user_id)
getRangeCourseId ( )

Returns the course id of FeedbackRange object instance

Returns
string course_id

Implements FeedbackRange.

getRangeIcon (   $role)

Returns the icon object that shall be used with the FeedbackRange object instance.

Parameters
string$rolerole of icon
Returns
Icon icon for the FeedbackRange object instance.

Implements FeedbackRange.

getRangeId ( )

Returns the id of the current range

Returns
string

Implements Range.

getRangeName ( )

Returns a human-friendly representation of the FeedbackRange object instance's name.

Returns
string A human-friendly name for the FeedbackRange object instance.

Implements FeedbackRange.

getRangeType ( )

Returns a unique identificator for the range type.

Returns
string

Implements Range.

getRangeUrl ( )

Returns the URL of FeedbackRange view, where the object instance is visible together with the related feedback element(s).

Returns
string Path that is usable with the url_for and link_for methods.

Implements FeedbackRange.

getSemClass ( )

Returns the SemClass object that is defined for the course

Returns
SemClass The SemClassObject for the course
getSemType ( )

Returns the semType object that is defined for the course

Returns
SemType The semTypeObject for the course
getStartSemester ( )

Retrieves the first semester of a course, if applicable.

Returns
Semester|null Either the first semester of the course or null, if no semester could be found.
getTextualSemester ( )

Returns the readable semester duration as as string

Returns
string : readable semester
isAccessibleToUser (   $user_id = null)

Decides whether the user may access the range.

Parameters
string | null$user_idOptional id of a user, defaults to current user
Returns
bool

Implements Range.

isEditableByUser (   $user_id = null)

Decides whether the user may edit/alter the range.

Parameters
string | null$user_idOptional id of a user, defaults to current user
Returns
bool

Implements Range.

isInSemester ( Semester  $semester)

Returns if this course is in the given semester

Parameters
Semester$semester: instance of the given semester
Returns
bool : true if this course is part of this semester
isOpenEnded ( )

Returns true if this course has no end-semester. Else false.

Returns
bool : true if there is no end-semester
isRangeAccessible ( string  $user_id = null)

Returns the accessebility of FeedbackRange object instance for current active user

Parameters
string$user_idoptional; use this ID instead of $GLOBALS['user']->id
Returns
bool range object accessebility

Implements FeedbackRange.

isStudygroup ( )

Returns whether this course is a studygroup

Returns
bool
isToolActive (   $name)
Parameters
$namestring name of tool / plugin
Returns
bool
isVisibleForUser (   $user_id = null)

Is the current course visible for the current user?

Parameters
string$user_id
Returns
bool Visible?
isWaitlistAvailable ( )
logStore ( )
protected

Generates a general log entry if the course were changed. Furthermore, this method emits notifications when the start and/or the end semester has/have changed.

setDefaultTools ( )
setEnd_Time (   $value)
setEndSemester ( ?Semester  $semester)
Parameters
Semester | null$semester
setStartSemester ( Semester  $semester)
Parameters
Semester$semester
setStudyAreas (   $ids)

Sets this courses study areas to the given values.

Parameters
array$idsthe new study areas
Returns
bool Changes successfully saved?

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