Plugin events
From LimeSurvey Manual
As of version 5 the following events are available for plugins to subscribe to:
Global Events
- afterFindSurvey
- afterGenerateToken
- afterPluginLoad
- afterQuickMenuLoad
- afterSurveyActivate
- afterSurveyComplete
- afterSurveyDeactivate
- afterSurveyQuestionAssessment
- afterSurveyQuota
- afterSurveySettingsSave
- beforeActivate
- beforeAdminMenuRender
- beforeCloseHtml
- beforeControllerAction
- beforeDeactivate
- beforeHasPermission
- beforeLoadResponse
- beforePermissionSetSave
- beforeProcessFileUpload
- beforePluginManagerMenuRender
- beforeQuestionRender
- beforeRegister
- beforeRegisterForm
- beforeSideMenuRender
- beforeSurveyAdminView
- beforeSurveyActivate
- beforeSurveyBarRender
- beforeSurveyDeactivate
- beforeSurveyPage
- beforeSurveySettings
- beforeSurveysStartpageRender (Deprectaed from 3.0.0 )
- beforeTwigRenderTemplate
- beforeToolsMenuRender
- beforeUrlCheck
- beforeWelcomePageRender
- createNewUser
- createRandomPassword
- checkPasswordRequirement
- ExpressionManagerStart
- getGlobalBasePermissions
- getPluginTwigPath
- getValidScreenFiles
- listExportOptions
- listExportPlugins
- listQuestionPlugins
- newDirectRequest
- newExport
- newQuestionAttributes
- newSurveySettings
- NewUnsecureRequest
- onSurveyDenied
- setVariableExpressionEnd
- saveSurveyForm (New in 5.3.8 )
CLI Events
This events needs to be called with php cli command.
- newLoginForm
- afterLoginFormSubmit
- afterSuccessfulLogin
- newUserLogin
- newUserSession
- afterLogout
- afterFailedLoginAttempt
- remoteControlLogin
- afterReceiveOAuthResponse
- afterSelectEmailPlugin
- beforeEmail
- beforeSurveyEmail
- beforeTokenEmail
- beforeEmailDispatch
- beforePrepareRedirectToAuthPage
- beforeRedirectToAuthPage
- listEmailPlugins
- MailerConstruct
Model Events
All models (Survey, Question, etc.) support a series of before & after events.
Specific Model events
These include model-specific events (example for Survey model):
- beforeSurveyDelete
- beforeSurveySave
- afterSurveyDelete
- afterSurveySave
Available model in application/models/.
Dynamic model events (New in 3.15.1 )
- beforeTokenDelete
- beforeTokenSave
- afterTokenDelete
- afterTokenSave
- beforeResponseDelete
- beforeResponseSave
- afterResponseDelete
- afterResponseSave
- beforeTokenDynamicDelete
- beforeTokenDynamicSave
- afterTokenDynamicDelete
- afterTokenDynamicSave
- beforeSurveyDynamicDelete
- beforeSurveyDynamicSave
- afterSurveyDynamicDelete
- afterSurveyDynamicSave
Generic events
As well as generic events independent of the model's name:
In all of the above events, the associated model object is available as part of event data:
$model = $this->event->get('model');