Step engine that can select any previous round for begin date and any round for calculating the end date.
package | Gems |
---|---|
subpackage | Tracker |
copyright | Copyright (c) 2011 Erasmus MC |
license | New BSD License |
since | Class available since version 1.4 |
inherited_from | \Gems_Tracker_Engine_StepEngineAbstract |
__construct(array $trackData)
inherited_from | \Gems_Tracker_Engine_TrackEngineInterface::__construct() |
---|
array
array containing track record
addFieldsToModel(\MUtil_Model_ModelAbstract $model, boolean $addDependency= true
, $respTrackId= false
) : \Gems_Tracker_Engine_TrackEngineAbstract
inherited_from | \Gems_Tracker_Engine_TrackEngineInterface::addFieldsToModel() |
---|
\MUtil_Model_ModelAbstract
boolean
True when editing, can be false in all other cases
Optional Database column name where Respondent Track Id is set
\Gems_Tracker_Engine_TrackEngineAbstract
afterRegistry() : void
applyToMenuSource(\Gems_Menu_ParameterSource $source) : \Gems_Tracker_Engine_TrackEngineInterface
inherited_from | \Gems_Tracker_Engine_TrackEngineInterface::applyToMenuSource() |
---|
\Gems_Menu_ParameterSource
\Gems_Tracker_Engine_TrackEngineInterface
(continuation pattern)calculateFieldsInfo(array $data) : string
inherited_from | \Gems_Tracker_Engine_TrackEngineInterface::calculateFieldsInfo() |
---|
array
The values to save
string
The description to save as track_infocalculateRoundCount() : integer
inherited_from | \Gems_Tracker_Engine_TrackEngineInterface::calculateRoundCount() |
---|
integer
The number of rounds in this track.checkRegistryRequestsAnswers() : boolean
boolean
False if required are missing.checkRoundsFor(\Gems_Tracker_RespondentTrack $respTrack, integer $userId, \Gems_Task_TaskRunnerBatch $batch = null
)
inherited_from | \Gems_Tracker_Engine_TrackEngineInterface::checkRoundsFor() |
---|
\Gems_Tracker_RespondentTrack
The respondent track to check
integer
Id of the user who takes the action (for logging)
checkTokensFrom(\Gems_Tracker_RespondentTrack $respTrack, \Gems_Tracker_Token $startToken, integer $userId, \Gems_Tracker_Token $skipToken = null
) : integer
inherited_from | \Gems_Tracker_Engine_StepEngineAbstract::checkTokensFrom() |
---|
\Gems_Tracker_RespondentTrack
The respondent track to check
\Gems_Tracker_Token
The token to start at
integer
Id of the user who takes the action (for logging)
\Gems_Tracker_Token
Optional token to skip in the recalculation
integer
The number of tokens changed by this codecheckTokensFrom(\Gems_Tracker_RespondentTrack $respTrack, \Gems_Tracker_Token $startToken, integer $userId, \Gems_Tracker_Token $skipToken = null
) : integer
\Gems_Tracker_RespondentTrack
The respondent track to check
\Gems_Tracker_Token
The token to start at
integer
Id of the user who takes the action (for logging)
\Gems_Tracker_Token
Optional token to skip in the recalculation
integer
The number of tokens changed by this codecheckTokensFromStart(\Gems_Tracker_RespondentTrack $respTrack, integer $userId) : integer
\Gems_Tracker_RespondentTrack
The respondent track to check
integer
Id of the user who takes the action (for logging)
integer
The number of tokens changed by this codeconvertTo(\type $conversionTargetClass)
copyTrack(\inte $oldTrackId) : integer
inherited_from | \Gems_Tracker_Engine_TrackEngineInterface::copyTrack() |
---|
\inte
The id of the track to copy
integer
The id of the copied trackdisplayDateCalculation(mixed $value, $new, string $name, array $context = array()
) : string
mixed
The value being saved
string
The name of the current field
array
Optional, the other values being saved
string
The value to usedisplayRoundId(mixed $value, $new, string $name, array $context = array()
) : string
Makes it empty when not applicable
mixed
The value being saved
string
The name of the current field
array
Optional, the other values being saved
string
The value to usegetAnswerSnippetNames() : array
array
if string snippet namesgetConversionTargets(array $options) : array
Should always contain at least the class itself.
see | |
---|---|
inherited_from | \Gems_Tracker_Engine_TrackEngineInterface::getConversionTargets() |
array
The track engine class options available in as a "track engine class names" => "descriptions" array
array
Filter or adaptation of $optionsgetDescription() : string
string
NamegetFieldNames() : array
inherited_from | \Gems_Tracker_Engine_TrackEngineInterface::getFieldNames() |
---|
array
fieldid => fieldcodegetFieldUpdateEvent() : \Gems_TrackFieldUpdateEventInterface
inherited_from | \Gems_Tracker_Engine_TrackEngineInterface::getFieldUpdateEvent() |
---|
\Gems_TrackFieldUpdateEventInterface
| nullgetFields() : array
array
fieldid => fieldcodegetFieldsData(integer $respTrackId) : array
inherited_from | \Gems_Tracker_Engine_TrackEngineInterface::getFieldsData() |
---|
integer
Gems respondent track id or null when new
array
of the existing field values for this respondent trackgetFieldsDataStorageModel() : \Gems\Tracker\Model\FieldDataModel
inherited_from | \Gems_Tracker_Engine_TrackEngineInterface::getFieldsDataStorageModel() |
---|
\Gems\Tracker\Model\FieldDataModel
getFieldsDefinition() : \Gems\Tracker\Engine\FieldsDefinition;
inherited_from | \Gems_Tracker_Engine_TrackEngineInterface::getFieldsDefinition() |
---|
\Gems\Tracker\Engine\FieldsDefinition;
getFieldsMaintenanceModel(boolean $detailed= false
, string $action= 'index'
) : \Gems\Tracker\Model\FieldMaintenanceModel
inherited_from | \Gems_Tracker_Engine_TrackEngineInterface::getFieldsMaintenanceModel() |
---|
boolean
Create a model for the display of detailed item data or just a browse table
string
The current action
\Gems\Tracker\Model\FieldMaintenanceModel
getFieldsOfType(string $fieldType) : array
inherited_from | \Gems_Tracker_Engine_TrackEngineInterface::getFieldsOfType() |
---|
string
array
name => codegetFirstRoundId() : integer
inherited_from | \Gems_Tracker_Engine_TrackEngineInterface::getFirstRoundId() |
---|
integer
Gems id of first roundgetName() : string
string
NamegetNextRoundId(integer $roundId) : integer
inherited_from | \Gems_Tracker_Engine_TrackEngineInterface::getNextRoundId() |
---|
integer
Gems round id
integer
Gems round idgetPreviousRoundId(integer $roundId, integer $roundOrder = null
) : integer
inherited_from | \Gems_Tracker_Engine_TrackEngineInterface::getPreviousRoundId() |
---|
integer
Gems round id
integer
Optional extra round order, for when the current round may have changed.
integer
Gems round idgetRespondentRelationFields() : array
Returns an array of field id => field name
array
getRound(integer $roundId) : \Gems\Tracker\Round
inherited_from | \Gems_Tracker_Engine_TrackEngineInterface::getRound() |
---|
integer
Gems round id
\Gems\Tracker\Round
getRoundAnswerSnippets(\Gems_Tracker_Token $token) : array
inherited_from | \Gems_Tracker_Engine_TrackEngineInterface::getRoundAnswerSnippets() |
---|
\Gems_Tracker_Token
array
Of snippet namesgetRoundChangedEvent(integer $roundId) : \Gems_Event_RoundChangedEventInterface
inherited_from | \Gems_Tracker_Engine_TrackEngineInterface::getRoundChangedEvent() |
---|
integer
\Gems_Event_RoundChangedEventInterface
event instance or nullgetRoundDefaults() : array
array
Of fieldname => defaultgetRoundDefaults() : array
inherited_from | \Gems_Tracker_Engine_TrackEngineInterface::getRoundDefaults() |
---|
array
Of fieldname => defaultgetRoundDescriptions() : array
inherited_from | \Gems_Tracker_Engine_TrackEngineInterface::getRoundDescriptions() |
---|
array
roundId => stringgetRoundEditSnippetNames() : array
inherited_from | \Gems_Tracker_Engine_TrackEngineInterface::getRoundEditSnippetNames() |
---|
array
of string snippet namesgetRoundModel(boolean $detailed, string $action) : \MUtil_Model_ModelAbstract
inherited_from | \Gems_Tracker_Engine_StepEngineAbstract::getRoundModel() |
---|
boolean
Create a model for the display of detailed item data or just a browse table
string
The current action
\MUtil_Model_ModelAbstract
getRoundModel(boolean $detailed, string $action) : \MUtil_Model_ModelAbstract
inherited_from | \Gems_Tracker_Engine_TrackEngineInterface::getRoundModel() |
---|
boolean
Create a model for the display of detailed item data or just a browse table
string
The current action
\MUtil_Model_ModelAbstract
getRoundShowSnippetNames() : array
inherited_from | \Gems_Tracker_Engine_TrackEngineInterface::getRoundShowSnippetNames() |
---|
array
of string snippet namesgetRounds() : array
inherited_from | \Gems_Tracker_Engine_TrackEngineInterface::getRounds() |
---|
array
of roundId => \Gems\Tracker\RoundgetTokenDeleteSnippetNames(\Gems_Tracker_Token $token) : array
\Gems_Tracker_Token
Allows token status dependent delete snippets
array
of string snippet namesgetTokenEditSnippetNames(\Gems_Tracker_Token $token) : array
\Gems_Tracker_Token
Allows token status dependent edit snippets
array
of string snippet namesgetTokenModel() : \Gems_Tracker_Model_StandardTokenModel
inherited_from | \Gems_Tracker_Engine_TrackEngineInterface::getTokenModel() |
---|
\Gems_Tracker_Model_StandardTokenModel
getTokenShowSnippetNames(\Gems_Tracker_Token $token) : array
\Gems_Tracker_Token
Allows token status dependent show snippets
array
of string snippet namesgetTrackCalculationEvent() : \Gems_Event_TrackCalculationEventInterface
inherited_from | \Gems_Tracker_Engine_TrackEngineInterface::getTrackCalculationEvent() |
---|
\Gems_Event_TrackCalculationEventInterface
| nullgetTrackCompletionEvent() : \Gems_Event_TrackCompletedEventInterface | null
inherited_from | \Gems_Tracker_Engine_TrackEngineInterface::getTrackCompletionEvent() |
---|
\Gems_Event_TrackCompletedEventInterface
null
getTrackCreateSnippetNames() : array
deprecated | since version 1.7.1 Snippets defined TrackAction |
---|
array
of string snippet namesgetTrackDeleteSnippetNames(\Gems_Tracker_RespondentTrack $respTrack) : array
deprecated | since version 1.7.1 Snippets defined TrackAction |
---|
\Gems_Tracker_RespondentTrack
Allows track status dependent edit snippets
array
of string snippet namesgetTrackEditSnippetNames(\Gems_Tracker_RespondentTrack $respTrack) : array
deprecated | since version 1.7.1 Snippets defined TrackAction |
---|
\Gems_Tracker_RespondentTrack
Allows track status dependent edit snippets
array
of string snippet namesgetTrackId() : integer
inherited_from | \Gems_Tracker_Engine_TrackEngineInterface::getTrackId() |
---|
integer
The track idgetTrackName() : string
inherited_from | \Gems_Tracker_Engine_TrackEngineInterface::getTrackName() |
---|
string
The gems track namegetTrackType() : string
string
'T' or 'S'isAppointmentField(string $fieldName) : boolean
inherited_from | \Gems_Tracker_Engine_TrackEngineInterface::isAppointmentField() |
---|
string
boolean
isUserCreatable() : boolean
False if this type of track is created by specialized user interface actions.
Engine level function, should be the same for each class instance.
boolean
updateRoundCount(integer $userId) : integer
inherited_from | \Gems_Tracker_Engine_TrackEngineInterface::updateRoundCount() |
---|
integer
The current user
integer
1 if data changed, 0 otherwiseupdateRoundModelToItem(\MUtil_Model_ModelAbstract $model, array $itemData, string $language)
\MUtil_Model_ModelAbstract
The round model
array
The current items data
string
(ISO) language string
_applyOptions(\MUtil_Model_ModelAbstract $model, string $fieldName, array $options, array $itemData)
\MUtil_Model_ModelAbstract
string
array
array
The current items data
_ensureRounds()
Can be overruled by sub classes.
_getAvailableIcons() : array<mixed,string>
array<mixed,string>
_sourceUsesSurvey(string $source) : boolean
string
The current source
boolean
addNewTokens(\Gems_Tracker_RespondentTrack $respTrack, integer $userId) : integer
NOTE: When overruling this function you should not create tokens because they were deleted by the user
\Gems_Tracker_RespondentTrack
The respondent track to check
integer
Id of the user who takes the action (for logging)
integer
The number of tokens created by this codeapplyDatesValidAfter(\MUtil_Model_ModelAbstract $model, array $itemData, string $language)
\MUtil_Model_ModelAbstract
The round model
array
The current items data
string
(ISO) language string
applyDatesValidFor(\MUtil_Model_ModelAbstract $model, array $itemData, string $language)
\MUtil_Model_ModelAbstract
The round model
array
The current items data
string
(ISO) language string
applyRespondentRelation(\MUtil_Model_ModelAbstract $model, array $itemData) : boolean
For respondent surveys, we allow to set a relation, with possible choices:
null => the respondent 0 => undefined (specifiy when assigning)
0 => the id of the track field of type relation to use
\MUtil_Model_ModelAbstract
The round model
array
The current items data
boolean
True if the update changed values (usually by changed selection lists).applySurveyListValidAfter(\MUtil_Model_ModelAbstract $model, array $itemData)
inherited_from | \Gems_Tracker_Engine_StepEngineAbstract::applySurveyListValidAfter() |
---|
\MUtil_Model_ModelAbstract
The round model
array
The current items data
applySurveyListValidAfter(\MUtil_Model_ModelAbstract $model, array $itemData)
\MUtil_Model_ModelAbstract
The round model
array
The current items data
applySurveyListValidFor(\MUtil_Model_ModelAbstract $model, array $itemData)
inherited_from | \Gems_Tracker_Engine_StepEngineAbstract::applySurveyListValidFor() |
---|
\MUtil_Model_ModelAbstract
The round model
array
The current items data
applySurveyListValidFor(\MUtil_Model_ModelAbstract $model, array $itemData)
\MUtil_Model_ModelAbstract
The round model
array
The current items data
calculateFromDate(\MUtil_Date $startDate, string $type, integer $period) : \MUtil_Date
\MUtil_Date
string
integer
\MUtil_Date
calculateUntilDate(\MUtil_Date $startDate, string $type, integer $period) : \MUtil_Date
\MUtil_Date
string
integer
\MUtil_Date
checkExistingRoundsFor(\Gems_Tracker_RespondentTrack $respTrack, integer $userId) : integer
\Gems_Tracker_RespondentTrack
The respondent track to check
integer
Id of the user who takes the action (for logging)
integer
The number of tokens changed by this codecreateRoundModel() : \Gems_Model_JoinModel
\Gems_Model_JoinModel
getDateOptionsFor($sourceType, integer $roundId, string $language, boolean $validAfter) : \type
integer
Gems round id
string
(ISO) language string
boolean
True if it concenrs _valid_after_ dates
\type
getRoundTranslations() : array
array
roundId => display stringgetSourceList(boolean $validAfter, boolean $firstRound, boolean $detailed = true
) : array
boolean
True if it concerns _valid_after_ dates
boolean
List for first round
boolean
Return extended info
array
source_name => labelgetSurveyId(integer $roundId) : integer
integer
Gems round id
integer
Gems survey idgetValidFromDate(string $fieldSource, string $fieldName, integer $prevRoundId, \Gems_Tracker_Token $token, \Gems_Tracker_RespondentTrack $respTrack) : \MUtil_Date
inherited_from | \Gems_Tracker_Engine_StepEngineAbstract::getValidFromDate() |
---|
string
Source for field from round
string
Name from round
integer
Id from round
\Gems_Tracker_Token
\Gems_Tracker_RespondentTrack
\MUtil_Date
date time or nullgetValidFromDate(string $fieldSource, string $fieldName, integer $prevRoundId, \Gems_Tracker_Token $token, \Gems_Tracker_RespondentTrack $respTrack) : \MUtil_Date
string
Source for field from round
string
Name from round
integer
Id from round
\Gems_Tracker_Token
\Gems_Tracker_RespondentTrack
\MUtil_Date
date time or nullgetValidUntilDate(string $fieldSource, string $fieldName, integer $prevRoundId, \Gems_Tracker_Token $token, \Gems_Tracker_RespondentTrack $respTrack, \MUtil_Date $validFrom) : \MUtil_Date
inherited_from | \Gems_Tracker_Engine_StepEngineAbstract::getValidUntilDate() |
---|
string
Source for field from round
string
Name from round
integer
Id from round
\Gems_Tracker_Token
\Gems_Tracker_RespondentTrack
\MUtil_Date
The calculated new valid from value
\MUtil_Date
date time or nullgetValidUntilDate(string $fieldSource, string $fieldName, integer $prevRoundId, \Gems_Tracker_Token $token, \Gems_Tracker_RespondentTrack $respTrack, \MUtil_Date $validFrom) : \MUtil_Date
string
Source for field from round
string
Name from round
integer
Id from round
\Gems_Tracker_Token
\Gems_Tracker_RespondentTrack
\MUtil_Date
The calculated new valid from value
\MUtil_Date
date time or nullremoveInactiveRounds(\Gems_Tracker_RespondentTrack $respTrack, integer $userId) : integer
\Gems_Tracker_RespondentTrack
The respondent track to check
integer
Id of the user who takes the action (for logging)
integer
The number of tokens changed by this codesetDateListFor(\MUtil_Model_ModelAbstract $model, string $fieldName, string $source, integer $roundId, string $language, boolean $validAfter)
\MUtil_Model_ModelAbstract
The round model
string
The valid_X_field to set
string
The date list source as defined by this object
integer
Optional a round id
string
(ISO) language string
boolean
True if it concerns _valid_after_ dates
_update(array $values, integer $userId) : integer
array
The values that this token should be set to
integer
The current user
integer
1 if data changed, 0 otherwise$_fieldsDefinition : \Gems\Tracker\Engine\FieldsDefinition;
$_roundModelClass : string
'MUtil_Model_TableModel'
$_roundObjects : array
$_rounds : array
$_trackData : array
$_trackId : integer
$db : \Zend_Db_Adapter_Abstract
$events : \Gems_Events
$loader : \Gems_Loader
$locale : \Zend_Locale
$project : \Gems_Project_ProjectSettings
$tracker : \Gems_Tracker
$util : \Gems_Util
$view : \Zend_View
ANSWER_TABLE = 'ans'
APPOINTMENT_TABLE = 'app'
NO_TABLE = 'nul'
RESPONDENT_TRACK_TABLE = 'rtr'
TOKEN_TABLE = 'tok'