x

Main chapters

  1. LimeSurvey Cloud vs LimeSurvey CE
  2. LimeSurvey Cloud - Quick start guide
  3. LimeSurvey CE - Installation
  4. How to design a good survey (Guide)
  5. Getting started
  6. LimeSurvey configuration
  7. Introduction - Surveys
  8. View survey settings
  9. View survey menu
  10. View survey structure
  11. Introduction - Questions
  12. Introduction - Question Groups
  13. Introduction - Surveys - Management
  14. Survey toolbar options
  15. Multilingual survey
  16. Quick start guide - ExpressionScript
  17. Advanced features
  18. General FAQ
  19. Troubleshooting
  20. Workarounds
  21. License
  22. Version change log
  23. Plugins - Advanced
 Actions

Plugin events: Difference between revisions

From LimeSurvey Manual

No edit summary
Global Events: beforeProcessFileUpload
 
(88 intermediate revisions by 15 users not shown)
Line 1: Line 1:
At version 2.05RC1 the following events are available for plugins to subscribe to:
As of version 5 the following events are available for plugins to subscribe to:
*[[Authentication plugins|afterLoginFormSubmit]]
 
*[[Authentication plugins|afterLogout]]
== Global Events ==
*afterPluginLoad
 
*afterSurveyComplete
*[[afterFindSurvey]]
*beforeActivate
*[[afterGenerateToken]]
*beforeDeactivate
*[[afterPluginLoad]]
*[[Authentication plugins|beforeLogin]]
*[[afterQuickMenuLoad]]
*[[Authentication plugins|beforeLogout]]
*[[afterSurveyActivate]]
*beforePermissionSetSave
*[[afterSurveyComplete]]
*[[afterSurveyDeactivate]]
*[[afterSurveyQuestionAssessment]]
*[[afterSurveyQuota]]
*[[afterSurveySettingsSave]]
*[[beforeActivate]]
*[[beforeAdminMenuRender]]
*[[beforeCloseHtml]]
*[[beforeControllerAction]]
*[[beforeDeactivate]]
*[[beforeHasPermission]]
*[[beforeLoadResponse]]
*[[beforePermissionSetSave]]
*[[beforeProcessFileUpload]]
*[[beforePluginManagerMenuRender]]
*[[beforeQuestionRender]]
*[[beforeRegister]]
*[[beforeRegisterForm]]
*[[beforeSideMenuRender]]
*[[beforeSurveyAdminView]]
*[[beforeSurveyActivate]]
*[[beforeSurveyBarRender]]
*[[beforeSurveyDeactivate]]
*[[beforeSurveyPage]]
*[[beforeSurveyPage]]
*beforeSurveySettings
*[[beforeSurveySettings]]
*listExportOptions
*[[beforeSurveysStartpageRender]]{{DeprecatedIn|v=3.0.0}}
*listExportPlugins
*[[beforeTwigRenderTemplate]]
*listQuestionPlugins
*[[beforeToolsMenuRender]]
*newDirectRequest
*[[beforeUrlCheck]]
*newExport
*[[beforeWelcomePageRender]]
*[[Authentication plugins|newLoginForm]]
*[[createNewUser]]
*newSurveySettings
*[[createRandomPassword]]
*[[Authentication plugins|newUserSession]]
*[[checkPasswordRequirement]]
*[[ExpressionManagerStart]]
*[[getGlobalBasePermissions]]
*[[getPluginTwigPath]]
*[[getValidScreenFiles]]
*[[listExportOptions]]
*[[listExportPlugins]]
*[[listQuestionPlugins]]
*[[newDirectRequest]]
*[[newExport]]
*[[NewQuestionAttributes|newQuestionAttributes]]
*[[newSurveySettings]]
*[[newUnsecureRequest|NewUnsecureRequest]]
*[[onSurveyDenied]]
*[[setVariableExpressionEnd]]
*[[saveSurveyForm]]{{NewIn|v=5.3.8}}
 
== CLI Events ==
 
This events needs to be called with php cli command.
 
*[[cron (command)|cron]]
*[[direct (command)|direct]]
 
== Authentification related events ==
 
*[[newLoginForm]]
*[[Authentication plugin development#afterLoginFormSubmit|afterLoginFormSubmit]]
*[[afterSuccessfulLogin]]
*[[newUserLogin]]
*[[newUserSession]]
*[[Authentication plugin development#afterLogout|afterLogout]]
*[[afterFailedLoginAttempt]]
*[[Authentication plugin development#remoteControlLogin|remoteControlLogin]]
 
== Email related events ==
 
*[[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|Specific Model events]] ===
 
These include model-specific events (example for Survey model):
 
* beforeSurveyDelete
* beforeSurveySave
* afterSurveyDelete
* afterSurveySave
 
[https://github.com/LimeSurvey/LimeSurvey/tree/master/application/models Available model in application/models/.]
 
=== [[Dynamic model events]]{{NewIn|v=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:
 
* [[beforeModelDelete]]
* [[beforeModelSave]]
* [[afterModelDelete]]
* [[afterModelSave]]
* [[beforeModelDeleteMany]]
 
In all of the above events, the associated model object is available as part of event data:
 
<code>$model = $this->event->get('model');</code>
 


[[Category:Development]]
[[Category:Development]]
[[Category:Plugins]]
[[Category:Plugins]]

Latest revision as of 12:18, 14 November 2024

As of version 5 the following events are available for plugins to subscribe to:

Global Events

CLI Events

This events needs to be called with php cli command.

Authentification related events

Email related events

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');