AskiaExt 5.3.5
- Fix for possible data loss if SetIdentity is not received after a reload
- Added NowUTC in scripts
- Action=ReadMail link doesn't set HTTP headers correctly
- Open-ended tableau working in AskiaScript 2.0
- Allow XML verification
- Faster "has"
- Added keywords for localization of dates
- Possible crash in CResponseBlockPane::CreateVirtualElements
- Make sure the interview is marked as 'not modified' after reading it from disk/sql
- Load balancing issue: extra parameters are lost when restarting an interview triggers a change in servers on SetIdentity
- Problems with HTTPS
- Improved the quick-sort algorithm by picking a random pivot on each iteration (instead of the first element)
- Always try to keep the original URL
- Action=EndInterview wasn't working with post/redirect/get enabled
- Sub-form problem when chapter and sub questions
- Fixed UCase, LCase, ToUpperCase and ToLowerCase which were dependent on setlocale
- Interview on WebProd not always updated when modifying interview on Cca/Supervisor
- Improved error handling in case loading of survey fails
- Make sure the interview has the correct survey ID set
- Possible crash when synchronizing dat-files from disk to database
- Updated default error messages
- StartInterview UTC offset is incorrect
- FromStart wasn't working with post/redirect/get
- Import link parameters again when restarting panel interview with post/redirect/get
- Fixed an issue with Question tables
- Added procedure import 'link parameters' again upon restarting 'panel interview' when using 'POST', 'REDIRECT', 'GET'
- Fixed an issue where 'FromStart' wasn't working when using 'POST', 'REDIRECT', 'GET'
- Fixed an issue with 'Push' in 'AskiaScript'
- Added a way to reload an 'ADC' if it hadn't been properly loaded
- Fixed an issue where a Computer name of '15* characters' wasn't read correctly
- Improved 'ADC' extraction in cases where 'IIS' has the file in use
- Fixed an infinite loop which could occur when no screens were defined
- Fixed an issue with 'Goto and mark as incomplete' routings
- Fixed an issue with 'Len' in 'AskiaScript'
- Fixed an issue where Test interviews could be saved after reloading
- Fixed an issue where Panel data was not imported when using 'POST', 'REDIRECT', 'GET'
- Added validation to ensure the 'X-Forwarded-For' header is only used to override an 'IP address' if the 'LoadBalancer' header is present; and to only use the last address listed in the 'X-Forwarded-For' header
- Added an option to try to generate the same Survey 'key-16' value when restarting an interview using the original URL link, for 'POST', 'REDIRECT', 'GET'
- Fixed an issue when using back button for a 'StartSurvey' interview using 'POST', 'REDIRECT', 'GET'
- Fixed an issue where 'Unicode ODBC import' wasn't working
- Fixed an issue with 'HMAC-SHA1' when changing servers on 'SetIdentity'
- Fixed an issue where an Interview 'POST', 'REDIRECT', 'GET' couldn't be started when 'JavaScript' was disabled
- Fixed an issue with a corrupted 'UTC offset' when no 'JavaScript' available
- Fixed an issue where an Interview 'POST', 'REDIRECT', 'GET' couldn't be started when 'JavaScript' was disabled
- Fixed an issue with 'Unicode' on 'Send email'
- Fixed an issue where the 'Interview type' was incorrectly set when restarting a Panel interview using 'DoInterview/SetIdentity'
- Added support for 'X-Forwarded-For' header to override the IP address
- Set 'Always save interview' 'ON' upon creation
- Fixed an issue when changing servers on 'SetIdentity' for existing interview
- Fixed an issue when using same 'Broker' &'BrokerPanelId' for multiple surveys
- Added support for changing servers between the first request and 'SetIdentity'
- Added multiple attempts to extract file when reading 'ADC'
- Increased 'mutex' timeout to reduce chances of multiple instances during recycling
- Fixed an error when adding field(s) to the 'WebInterviews' table when the Survey's name contained a '-' (dash)
- Fixed an issue with simulating interview(s) when using 'POST', 'REDIRECT', 'GET'
- Fixed a possible crash due to incorrect Interview locking
- Fixed an issue with full logging when the 'application pool' was recycled
- Fixed an issue where simultaneous identical 'DoPanel' requests could create two new interviews
- Added further logging in case an interview can't be opened in 'CommitScreen'
- Added a check for seed overflow (maximum '26^5')
- Added further error-handling to log unhandled exceptions
- Added a check to refuse 'Set online' if 'non-ASCII characters' are used in the Survey's name
- Increased the 'lock' timeout to '5s' when opening an Interview
- Fixed an issue with 'AskiaScript' keyword 'Order' when used with Linked responses
- Fixed an 'XSS' vulnerability
- Improved Load balancing, by adding the Interview parameter in the URL for 'POST', 'REDIRECT', 'GET'
- Improved Logs for 'CEnqueteInternet::GetResourceUrl'
- Improved 'SyncData' with:
- Extra filters:
- 'Broker=XXX'
- 'Seed=123' (for a single Interview)
- 'Seed=123-456' (for a range)
- Added 'SQLToDisk' and 'DiskToSQL' options to 'Direction' as alternative to 'FromSQL' and 'ToSQL' respectively
- 'Sync QEX' now only happens when no filter is active, or when explicitely asked by using 'Qex=Yes/True/1'
- Fixed an issue where Count failed files was incorrect when using 'DiskToSQL' 'Direction'
- Extra filters:
- Release 'mutex' earlier to reduce the chance of multiple instance detection
- Fixed a possible crash when multiple instances are detected
- Fixed a possible crash when failing to establish a connection with the Interview database
- Fixed an 'AskiaScript' isse with 'AvailableResponses.InputValue'
- New: the 'Already completed' page is displayed when restarting a completed Interview using 'Action=EndInterview'
- Added test interview warnings, displayed on each screen using 'POST', 'REDIRECT', 'GET'
- Increased Panel data timeout to '10s'
- Removed 'VLC detection' from 'detection.js' because it could trigger unintended consequences
- Fixed several issues with final pages when using 'POST', 'REDIRECT', 'GET'
- Fixed an issue where the 'Content type' for browser detection page wasn't set, which could cause problems on some servers
- Fixed an issue where Panel imports weren't working for test interviews when using 'POST', 'REDIRECT', 'GET'
- Fixed an infinite loop which occurred when recycling the 'application pool' with Interviews in memory when using 'POST', 'REDIRECT', 'GET'
- Fixed an issue where the browser back button gave an error when 'POST', 'REDIRECT', 'GET' was disabled because browser caching was disabled
- Fixed an issue with 'LiveRoutings', 'GetChapters', 'GoTo' when using 'POST', 'REDIRECT', 'GET'
- Fixed an issue with Interview simulation when using 'POST', 'REDIRECT', 'GET'
- Added ability to prettify URLs, eg.:
- 'StartSurvey' - https://example.com/WebProd/Start/SURVEY
- 'DoPanel' - https://example.com/WebProd/Start/SURVEY/PANELID
- 'DoExternalPanel' - https://example.com/WebProd/Start/SURVEY/BROKER/BROKERPANELID
- Added an option to encrypt links, and as these are shorter than regular links, they can also serve as 'URL shortener':
- Encryption format link: https://example.com/WebProd/EncryptLink/DATA_TO_ENCRYPT
- Encryption link example: https://example.com/WebProd/EncryptLink/Action=StartSurvey&SurveyName=MySurvey
- Output format: https://example.com/WebProd/~ENCRYPTION_RESULT~
- Note: Only the data after '?' in the original link should be encrypted, eg.: