Stud.IP  4.0
 All Data Structures Namespaces Files Functions Variables Groups
AdmissionRule Class Reference
Inheritance diagram for AdmissionRule:
ConditionalAdmission CourseMemberAdmission LimitedAdmission LockedAdmission ParticipantRestrictedAdmission PasswordAdmission PreferentialAdmission TermsAdmission TimedAdmission

Public Member Functions

 __construct ($ruleId= '', $courseSetId= '')
 
 afterSeatDistribution ($courseset)
 
 checkTimeFrame ()
 
 delete ()
 
 generateId ($tableName)
 
 getAffectedUsers ()
 
 getEndTime ()
 
 getInput ()
 
 getId ()
 
 getMessage ()
 
 getStartTime ()
 
 getTemplate ()
 
 load ()
 
 beforeSeatDistribution ($courseset)
 
 ruleApplies ($userId, $courseId)
 
 setAllData ($data)
 
 setEndTime ($newEndTime)
 
 setMessage ($newMessage)
 
 setStartTime ($newStartTime)
 
 store ()
 
 toString ()
 
 validate ($data)
 
 __toString ()
 
 loadSiblings ()
 
 getSiblings ()
 
 setSiblings ($siblings=[])
 
 isCombinationAllowed ($admission_rule)
 
 __clone ()
 

Static Public Member Functions

static getAvailableAdmissionRules ($activeOnly=true)
 
static getInputFrame ()
 
static getDescription ()
 
static getName ()
 

Data Fields

 $endTime = 0
 
 $id = ''
 
 $message = ''
 
 $default_message = ''
 
 $startTime = 0
 
 $courseSetId = ''
 
 $siblings = []
 
 $siblings_override = false
 

Constructor & Destructor Documentation

__construct (   $ruleId = '',
  $courseSetId = '' 
)

Member Function Documentation

__clone ( )
__toString ( )

Standard string representation of this object.

Returns
String
afterSeatDistribution (   $courseset)

Hook that can be called after the seat distribution on the courseset has completed.

Parameters
CourseSet$coursesetCurrent courseset.
beforeSeatDistribution (   $courseset)

Hook that can be called when the seat distribution on the courseset starts.

Parameters
CourseSetThe courseset this rule belongs to.
checkTimeFrame ( )

Checks if we are in the rule validity time frame.

Returns
True if the rule is valid because the time frame applies, otherwise false.
delete ( )

Deletes the admission rule and all associated data.

generateId (   $tableName)

Generate a new unique ID.

Parameters
StringtableName
getAffectedUsers ( )

Gets all users that are matched by thís rule.

Returns
Array An array containing IDs of users who are matched by this rule.
static getAvailableAdmissionRules (   $activeOnly = true)
static

Reads all available AdmissionRule subclasses and loads their definitions.

Parameters
bool$activeOnlyShow only active rules.
Returns
Array
static getDescription ( )
static

Gets some text that describes what this AdmissionRule (or respective subclass) does.

getEndTime ( )

Get end of validity.

Returns
Integer
getId ( )

Gets the rule ID.

Returns
String This rule's ID.
getInput ( )
static getInputFrame ( )
staticfinal

Subclasses of AdmissionRule can require additional data to be entered on admission (like PasswordAdmission which needs a password for course access). Their corresponding method getInput only returns a HTML form fragment as the output can be concatenated with output from other rules. This static method provides the frame for rendering a full HTML form around the fragments from subclasses.

Returns
Array Start and end templates which wrap input form fragments from subclasses.
getMessage ( )

Gets the message that is shown to users rejected by this rule.

Returns
String The message.
static getName ( )
static

Return this rule's name.

getSiblings ( )

get sibling rules

getStartTime ( )

Gets start of validity.

Returns
Integer
getTemplate ( )

Gets the template that provides a configuration GUI for this rule.

Returns
String
isCombinationAllowed (   $admission_rule)

checks if given admission rule is allowed to be combined with this rule

Parameters
AdmissionRule | string$admission_rule
Returns
boolean
load ( )

Internal helper function for loading rule definition from database.

loadSiblings ( )

load sibling rules

ruleApplies (   $userId,
  $courseId 
)

Does the current rule allow the given user to register as participant in the given course?

Parameters
StringuserId
StringcourseId
Returns
Array
setAllData (   $data)

Uses the given data to fill the object values. This can be used as a generic function for storing data if the concrete rule type isn't known in advance.

Parameters
Array$data
Returns
AdmissionRule This object.
setEndTime (   $newEndTime)

Sets a new end time for condition validity.

Parameters
IntegernewEndTime
Returns
UserFilter
setMessage (   $newMessage)

Sets a new message to show to users.

Parameters
StringnewMessage A new message text.
Returns
AdmissionRule This object
setSiblings (   $siblings = [])

set sibling rules

setStartTime (   $newStartTime)

Sets a new start time for condition validity.

Parameters
IntegernewStartTime
Returns
UserFilter
store ( )

Helper function for storing rule definition to database.

toString ( )

A textual description of the current rule.

Returns
String
validate (   $data)

Validates if the given request data is sufficient to configure this rule (e.g. if required values are present).

Parameters
ArrayRequest data
Returns
Array Error messages.

Field Documentation

$courseSetId = ''

ID of the CourseSet this admission rule belongs to (is stored here for performance reasons).

$default_message = ''

default message that is shown to users that are rejected for admission because of the current rule.

$endTime = 0

When does the validity end?

$id = ''

A unique identifier for this rule.

$message = ''

A customizable message that is shown to users that are rejected for admission because of the current rule.

$siblings = []

courseset siblings of this rule

$siblings_override = false

Are siblings set manually?

$startTime = 0

When does the validity start?


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