LimeSurvey: master a9f4a84b

Author Committer Branch Timestamp Parent
Gabriel Jenik GitHub master 2023-03-27 15:18:56 master a127aaea
Affected Issues  18100: Custom question attributes not available in some twig files
 18453: Missing 8.1 compatibility
Changeset

Fixed issue 18453: Add PHP 8.1 compatibility (#2878)

  • Upgrade Twig from 1.0 to 3.0
  • Replace yiiext/twig-renderer with vintagesucks/twig-renderer
  • Fix calls to string related functions that no longer accept null values
  • Fix "includes" in question theme templates to include the whole context, to solve issue 18100 in a compatible way.
  • Update vendor/vintagesucks to version 3.0.2
  • Fix DbStorage
  • Apply Rector's NullToStrictStringFuncCallArgRector rule
  • Update Twig to version 3.5.1
  • Fix rules using Yii's filter validator
  • Update GitHub worflow to use PHP 8.1
  • Updated deps

Co-authored-by: lapiudevgit <devgit@lapiu.biz>
Co-authored-by: Olle Härstedt <olleharstedt@yahoo.com>

mod - .github/workflows/main.yml Diff File
mod - application/commands/DemomodeCommand.php Diff File
mod - application/commands/InstallCommand.php Diff File
mod - application/commands/InstallFromConfigCommand.php Diff File
mod - application/commands/TwigCommand.php Diff File
mod - application/commands/WipeCommand.php Diff File
mod - application/config/internal.php Diff File
mod - application/controllers/FailedEmailController.php Diff File
mod - application/controllers/InstallerController.php Diff File
mod - application/controllers/LimereplacementfieldsController.php Diff File
mod - application/controllers/OptinController.php Diff File
mod - application/controllers/OptoutController.php Diff File
mod - application/controllers/PrintanswersController.php Diff File
mod - application/controllers/QuestionAdministrationController.php Diff File
mod - application/controllers/QuestionGroupsAdministrationController.php Diff File
mod - application/controllers/QuickTranslationController.php Diff File
mod - application/controllers/QuotasController.php Diff File
mod - application/controllers/RegisterController.php Diff File
mod - application/controllers/ResponsesController.php Diff File
mod - application/controllers/SurveyAdministrationController.php Diff File
mod - application/controllers/SurveysController.php Diff File
mod - application/controllers/ThemeOptionsController.php Diff File
mod - application/controllers/UploaderController.php Diff File
mod - application/controllers/UserManagementController.php Diff File
mod - application/controllers/UserRoleController.php Diff File
mod - application/controllers/admin/Authentication.php Diff File
mod - application/controllers/admin/CheckIntegrity.php Diff File
mod - application/controllers/admin/ConditionsAction.php Diff File
mod - application/controllers/admin/DataEntry.php Diff File
mod - application/controllers/admin/Database.php Diff File
mod - application/controllers/admin/EmailTemplates.php Diff File
mod - application/controllers/admin/Export.php Diff File
mod - application/controllers/admin/ExpressionValidate.php Diff File
mod - application/controllers/admin/Labels.php Diff File
mod - application/controllers/admin/ParticipantsAction.php Diff File
mod - application/controllers/admin/PluginManagerController.php Diff File
mod - application/controllers/admin/PrintableSurvey.php Diff File
mod - application/controllers/admin/RemoteControl.php Diff File
mod - application/controllers/admin/Statistics.php Diff File
mod - application/controllers/admin/SurveymenuController.php Diff File
mod - application/controllers/admin/SurveymenuEntryController.php Diff File
mod - application/controllers/admin/Themes.php Diff File
mod - application/controllers/admin/Tokens.php Diff File
mod - application/controllers/admin/Update.php Diff File
mod - application/controllers/admin/globalsettings.php Diff File
mod - application/controllers/survey/index.php Diff File
mod - application/core/LSETwigViewRenderer.php Diff File
add - application/core/LSGettextMoFile.php Diff File
mod - application/core/LSHttpRequest.php Diff File
mod - application/core/LSMessageSource.php Diff File
mod - application/core/LSSodium.php Diff File
mod - application/core/LSYii_Application.php Diff File
mod - application/core/LSYii_AssetManager.php Diff File
mod - application/core/LSYii_CaseValidator.php Diff File
mod - application/core/LSYii_ClientScript.php Diff File
mod - application/core/LSYii_CompareInsensitiveValidator.php Diff File
mod - application/core/LSYii_Controller.php Diff File
mod - application/core/LSYii_EmailIDNAValidator.php Diff File
add - application/core/LSYii_FilterValidator.php Diff File
mod - application/core/LSYii_ImageValidator.php Diff File
mod - application/core/LSYii_Validators.php Diff File
mod - application/core/LS_Twig_Extension.php Diff File
mod - application/core/LimeMailer.php Diff File
mod - application/core/QuestionTypes/ArrayFlexibleRow/RenderArrayFlexibleRow.php Diff File
mod - application/core/QuestionTypes/ArrayMultiscale/RenderArrayMultiscale.php Diff File
mod - application/core/QuestionTypes/Date/RenderDate.php Diff File
mod - application/core/QuestionTypes/Equation/RenderEquation.php Diff File
mod - application/core/QuestionTypes/HugeFreeText/RenderHugeFreeText.php Diff File
mod - application/core/QuestionTypes/ListDropdown/RenderListDropdown.php Diff File
mod - application/core/QuestionTypes/ListRadio/RenderListRadio.php Diff File
mod - application/core/QuestionTypes/ListWithComment/RenderListComment.php Diff File
mod - application/core/QuestionTypes/LongFreeText/RenderLongFreeText.php Diff File
mod - application/core/QuestionTypes/MultipleChoice/RenderMultipleChoice.php Diff File
mod - application/core/QuestionTypes/MultipleChoiceWithComments/RenderMultipleChoiceWithComments.php Diff File
mod - application/core/QuestionTypes/MultipleNumericalQuestion/RenderMultipleNumerical.php Diff File
mod - application/core/QuestionTypes/MultipleShortText/RenderMultipleShortText.php Diff File
mod - application/core/QuestionTypes/Numerical/RenderNumerical.php Diff File
mod - application/core/QuestionTypes/RankingStyle/RenderRanking.php Diff File
mod - application/core/QuestionTypes/ShortFreeText/RenderShortFreeText.php Diff File
mod - application/core/SurveyCommonAction.php Diff File
mod - application/core/db/DbConnection.php Diff File
mod - application/core/db/MssqlSchema.php Diff File
mod - application/core/db/MysqlSchema.php Diff File
mod - application/core/db/PgsqlSchema.php Diff File
mod - application/core/plugins/AuditLog/AuditLog.php Diff File
mod - application/core/plugins/Authwebserver/Authwebserver.php Diff File
mod - application/core/plugins/ExportR/RDataWriter.php Diff File
mod - application/core/plugins/ExportR/RSyntaxWriter.php Diff File
mod - application/core/plugins/ExportSPSSsav/SPSSWriter.php Diff File
mod - application/core/plugins/ExportSTATAxml/STATAxmlWriter.php Diff File
mod - application/core/plugins/TwoFactorAdminLogin/helper/phpqrcode.php Diff File
mod - application/core/plugins/TwoFactorAdminLogin/vendor/composer/ClassLoader.php Diff File
mod - application/core/plugins/TwoFactorAdminLogin/vendor/robthree/twofactorauth/demo/demo.php Diff File
mod - application/core/plugins/TwoFactorAdminLogin/vendor/robthree/twofactorauth/demo/loader.php Diff File
mod - application/core/plugins/TwoFactorAdminLogin/vendor/robthree/twofactorauth/lib/Providers/Qr/GoogleQRCodeProvider.php Diff File
mod - application/core/plugins/TwoFactorAdminLogin/vendor/robthree/twofactorauth/lib/Providers/Qr/QRServerProvider.php Diff File
mod - application/core/plugins/TwoFactorAdminLogin/vendor/robthree/twofactorauth/lib/Providers/Qr/QRicketProvider.php Diff File
mod - application/core/plugins/TwoFactorAdminLogin/vendor/robthree/twofactorauth/lib/Providers/Rng/HashRNGProvider.php Diff File
mod - application/core/plugins/TwoFactorAdminLogin/vendor/robthree/twofactorauth/lib/Providers/Time/HttpTimeProvider.php Diff File
mod - application/core/plugins/TwoFactorAdminLogin/vendor/robthree/twofactorauth/lib/Providers/Time/NTPTimeProvider.php Diff File
mod - application/core/plugins/TwoFactorAdminLogin/vendor/robthree/twofactorauth/lib/TwoFactorAuth.php Diff File
mod - application/core/plugins/TwoFactorAdminLogin/vendor/robthree/twofactorauth/tests/TwoFactorAuthTest.php Diff File
mod - application/core/plugins/customToken/customToken.php Diff File
mod - application/extensions/AdvancedSettingWidget/AdvancedSettingWidget.php Diff File
mod - application/extensions/AdvancedSettingWidget/views/layout.php Diff File
mod - application/extensions/AdvancedSettingWidget/views/switch.php Diff File
mod - application/extensions/BreadcrumbWidget/BreadcrumbWidget.php Diff File
mod - application/extensions/CustomFormatter.php Diff File
mod - application/extensions/DateTimePickerWidget/DateTimePicker.php Diff File
mod - application/extensions/GeneralOptionWidget/views/layout.php Diff File
mod - application/extensions/LimeScript/LimeScript.php Diff File
mod - application/extensions/PanelBoxWidget/PanelBoxWidget.php Diff File
mod - application/extensions/PanelBoxWidget/views/box.php Diff File
mod - application/extensions/SettingsWidget/SettingsWidget.php Diff File
mod - application/extensions/admin/PreviewModalWidget/views/grouped_select_modal.php Diff File
mod - application/extensions/admin/PreviewModalWidget/views/select_modal.php Diff File
mod - application/extensions/admin/TextDisplaySwitch/TextDisplaySwitch.php Diff File
mod - application/extensions/bootstrap5/helpers/TbHtml.php Diff File
mod - application/extensions/bootstrap5/widgets/TbDataColumn.php Diff File
mod - application/extensions/bootstrap5/widgets/TbGridView.php Diff File
mod - application/extensions/captchaExtended/CaptchaExtendedAction.php Diff File
mod - application/extensions/captchaExtended/CaptchaExtendedValidator.php Diff File
mod - application/extensions/yiiwheels/widgets/box/WhBox.php Diff File
mod - application/extensions/yiiwheels/widgets/datetimepicker/WhDateTimePicker.php Diff File
mod - application/extensions/yiiwheels/widgets/grid/WhGridView.php Diff File
mod - application/extensions/yiiwheels/widgets/grid/WhToggleColumn.php Diff File
mod - application/extensions/yiiwheels/widgets/grid/operations/WhCountOfTypeOperation.php Diff File
mod - application/extensions/yiiwheels/widgets/grid/operations/WhSumOperation.php Diff File
mod - application/extensions/yiiwheels/widgets/rangeslider/WhRangeSlider.php Diff File
mod - application/extensions/yiiwheels/widgets/timeago/WhTimeAgoFormatter.php Diff File
mod - application/helpers/ClassFactory.php Diff File
mod - application/helpers/Hash.php Diff File
mod - application/helpers/SurveyRuntimeHelper.php Diff File
mod - application/helpers/SurveyThemeHelper.php Diff File
mod - application/helpers/Zend/Http/Client.php Diff File
mod - application/helpers/Zend/Http/Client/Adapter/Curl.php Diff File
mod - application/helpers/Zend/Http/Client/Adapter/Proxy.php Diff File
mod - application/helpers/Zend/Http/Client/Adapter/Socket.php Diff File
mod - application/helpers/Zend/Http/Client/Adapter/Test.php Diff File
mod - application/helpers/Zend/Http/CookieJar.php Diff File
mod - application/helpers/Zend/Http/Cookies.php Diff File
mod - application/helpers/Zend/Http/Header/AbstractAccept.php Diff File
mod - application/helpers/Zend/Http/Header/Allow.php Diff File
mod - application/helpers/Zend/Http/Header/CacheControl.php Diff File
mod - application/helpers/Zend/Http/Header/ContentType.php Diff File
mod - application/helpers/Zend/Http/Header/Cookie.php Diff File
mod - application/helpers/Zend/Http/Header/SetCookie.php Diff File
mod - application/helpers/Zend/Http/Headers.php Diff File
mod - application/helpers/Zend/Http/PhpEnvironment/RemoteAddress.php Diff File
mod - application/helpers/Zend/Http/PhpEnvironment/Request.php Diff File
mod - application/helpers/Zend/Http/Response.php Diff File
mod - application/helpers/Zend/Http/UserAgent.php Diff File
mod - application/helpers/Zend/Http/UserAgent/AbstractDevice.php Diff File
mod - application/helpers/Zend/Http/UserAgent/Mobile.php Diff File
mod - application/helpers/Zend/Loader.php Diff File
mod - application/helpers/Zend/Server/Reflection/Function/Abstract.php Diff File
mod - application/helpers/Zend/Validate/Abstract.php Diff File
mod - application/helpers/Zend/Validate/Ccnum.php Diff File
mod - application/helpers/Zend/Validate/CreditCard.php Diff File
mod - application/helpers/Zend/Validate/EmailAddress.php Diff File
mod - application/helpers/Zend/Validate/File/ExcludeExtension.php Diff File
mod - application/helpers/Zend/Validate/File/ExcludeMimeType.php Diff File
mod - application/helpers/Zend/Validate/File/Extension.php Diff File
mod - application/helpers/Zend/Validate/File/MimeType.php Diff File
mod - application/helpers/Zend/Validate/Iban.php Diff File
mod - application/helpers/Zend/Validate/Isbn.php Diff File
mod - application/helpers/Zend/XmlRpc/Value/Base64.php Diff File
mod - application/helpers/admin/activate_helper.php Diff File
mod - application/helpers/admin/backupdb_helper.php Diff File
mod - application/helpers/admin/export/ExcelWriter.php Diff File
mod - application/helpers/admin/export/Writer.php Diff File
mod - application/helpers/admin/htmleditor_helper.php Diff File
mod - application/helpers/admin/import_helper.php Diff File
mod - application/helpers/admin/label_helper.php Diff File
mod - application/helpers/admin/statistics_helper.php Diff File
mod - application/helpers/admin/template_helper.php Diff File
mod - application/helpers/admin/token_helper.php Diff File
mod - application/helpers/adodb/adodb-time.inc_helper.php Diff File
mod - application/helpers/common_helper.php Diff File
mod - application/helpers/export_helper.php Diff File
mod - application/helpers/expressions/em_core_helper.php Diff File
mod - application/helpers/expressions/em_manager_helper.php Diff File
mod - application/helpers/expressions/emcache/em_cache_helper.php Diff File
mod - application/helpers/frontend_helper.php Diff File
mod - application/helpers/globals.php Diff File
mod - application/helpers/ldap_helper.php Diff File
mod - application/helpers/qanda_helper.php Diff File
mod - application/helpers/remotecontrol/remotecontrol_handle.php Diff File
mod - application/helpers/replacements_helper.php Diff File
mod - application/helpers/sanitize_helper.php Diff File
mod - application/helpers/surveytranslator_helper.php Diff File
mod - application/helpers/update/update_helper.php Diff File
mod - application/helpers/update/updatedb_helper.php Diff File
mod - application/helpers/update/updates/Update_363.php Diff File
mod - application/helpers/update/updates/Update_447.php Diff File
mod - application/helpers/update/updates/Update_476.php Diff File
mod - application/helpers/userstatistics_helper.php Diff File
mod - application/helpers/viewHelper.php Diff File
mod - application/libraries/Date_Time_Converter.php Diff File
mod - application/libraries/ExtensionInstaller/FileFetcherUploadZip.php Diff File
mod - application/libraries/ExtensionInstaller/QuestionThemeInstaller.php Diff File
mod - application/libraries/LSjsonRPCServer.php Diff File
mod - application/libraries/PluginManager/EventDocumentor.php Diff File
mod - application/libraries/PluginManager/LimesurveyApi.php Diff File
mod - application/libraries/PluginManager/PluginBase.php Diff File
mod - application/libraries/PluginManager/PluginManager.php Diff File
mod - application/libraries/PluginManager/Storage/DbStorage.php Diff File
mod - application/libraries/Save.php Diff File
mod - application/libraries/admin/pdf.php Diff File
mod - application/libraries/admin/quexmlpdf.php Diff File
mod - application/libraries/simpletester.php Diff File
mod - application/models/Condition.php Diff File
mod - application/models/ExtensionConfig.php Diff File
mod - application/models/FailedLoginAttempt.php Diff File
mod - application/models/InstallerConfigForm.php Diff File
mod - application/models/Participant.php Diff File
mod - application/models/ParticipantAttributeName.php Diff File
mod - application/models/ParticipantAttributeNameLang.php Diff File
mod - application/models/ParticipantShare.php Diff File
mod - application/models/Permission.php Diff File
mod - application/models/Question.php Diff File
mod - application/models/QuestionAttribute.php Diff File
mod - application/models/QuestionBaseRenderer.php Diff File
mod - application/models/QuestionCreate.php Diff File
mod - application/models/QuestionGroup.php Diff File
mod - application/models/QuestionTheme.php Diff File
mod - application/models/QuotaLanguageSetting.php Diff File
mod - application/models/Response.php Diff File
mod - application/models/SettingGlobal.php Diff File
mod - application/models/Survey.php Diff File
mod - application/models/SurveyActivator.php Diff File
mod - application/models/SurveyDynamic.php Diff File
mod - application/models/SurveyLanguageSetting.php Diff File
mod - application/models/SurveyTimingDynamic.php Diff File
mod - application/models/SurveymenuEntries.php Diff File
mod - application/models/SurveymenuEntryData.php Diff File
mod - application/models/SurveysGroupsettings.php Diff File
mod - application/models/TemplateConfig.php Diff File
mod - application/models/TemplateConfiguration.php Diff File
mod - application/models/TemplateManifest.php Diff File
mod - application/models/Token.php Diff File
mod - application/models/UpdateForm.php Diff File
mod - application/models/User.php Diff File
mod - application/models/UserGroup.php Diff File
mod - application/models/UserParser.php Diff File
mod - application/models/services/PasswordManagement.php Diff File
mod - application/models/services/QuestionAttributeHelper.php Diff File
mod - application/models/services/QuickTranslation.php Diff File
mod - application/models/services/Quotas.php Diff File
mod - application/tests/unit/ExpressionManagerTest.php Diff File
mod - application/views/admin/authentication/ajaxLogin.php Diff File
mod - application/views/admin/authentication/login.php Diff File
mod - application/views/admin/authentication/newPassword.php Diff File
mod - application/views/admin/conditions/includes/condition.php Diff File
mod - application/views/admin/conditions/includes/form_editconditions_header.php Diff File
mod - application/views/admin/conditions/includes/quickAddConditionForm.php Diff File
mod - application/views/admin/dataentry/content_view.php Diff File
mod - application/views/admin/export/exportresult_panels/_single-value.php Diff File
mod - application/views/admin/export/generatestats/_statisticsoutput_footer.php Diff File
mod - application/views/admin/export/generatestats/_statisticsoutput_graphs.php Diff File
mod - application/views/admin/export/statistics_subviews/_question.php Diff File
mod - application/views/admin/globalsettings/_bounce.php Diff File
mod - application/views/admin/globalsettings/_email.php Diff File
mod - application/views/admin/globalsettings/_general.php Diff File
mod - application/views/admin/globalsettings/_presentation.php Diff File
mod - application/views/admin/globalsettings/_security.php Diff File
mod - application/views/admin/globalsettings/_useradministration.php Diff File
mod - application/views/admin/participants/uploadSummary_view.php Diff File
mod - application/views/admin/pluginmanager/uploadConfirm.php Diff File
mod - application/views/admin/super/header.php Diff File
mod - application/views/admin/super/welcome.php Diff File
mod - application/views/admin/survey/editLocalSettings_view.php Diff File
mod - application/views/admin/survey/newSurveyBrowserMessage.php Diff File
mod - application/views/admin/survey/subview/_template_carousel.php Diff File
mod - application/views/admin/survey/subview/accordion/_generaloptions_panel.php Diff File
mod - application/views/admin/survey/subview/accordion/_notification_panel.php Diff File
mod - application/views/admin/survey/subview/accordion/_presentation_panel.php Diff File
mod - application/views/admin/survey/subview/accordion/_publication_panel.php Diff File
mod - application/views/admin/survey/subview/accordion/_tokens_panel.php Diff File
mod - application/views/admin/survey/subview/tab_edit_view.php Diff File
mod - application/views/admin/survey/surveybar_displayexport.php Diff File
mod - application/views/admin/survey/topbar/topbar_view.php Diff File
mod - application/views/admin/themes/templatesummary_view.php Diff File
mod - application/views/admin/token/bounce.php Diff File
mod - application/views/admin/token/browse.php Diff File
mod - application/views/admin/token/dummytokenform.php Diff File
mod - application/views/admin/token/emailwarning.php Diff File
mod - application/views/admin/token/invite.php Diff File
mod - application/views/admin/token/ldapform.php Diff File
mod - application/views/admin/token/managetokenattributes.php Diff File
mod - application/views/admin/token/remind.php Diff File
mod - application/views/admin/token/tokenform.php Diff File
mod - application/views/admin/update/_ajaxVariables.php Diff File
mod - application/views/admin/update/updater/steps/textaeras/_existingfiles.php Diff File
mod - application/views/admin/update/updater/steps/textaeras/_modifiedfiles.php Diff File
mod - application/views/admin/update/updater/steps/textaeras/_readonlyfiles.php Diff File
mod - application/views/admin/user/personalsettings.php Diff File
mod - application/views/admin/user/setuserpermissions.php Diff File
mod - application/views/failedEmail/notification_message/_notification_message.php Diff File
mod - application/views/layouts/adminmenu.php Diff File