Question attributes redesign: Difference between revisions
From LimeSurvey Manual
DenisChenu (talk | contribs) (→Notes) |
|||
Line 24: | Line 24: | ||
* Load question attributes for question type/question id for a single language (for qanda/QuestionTheme and SurveyTheme) | * Load question attributes for question type/question id for a single language (for qanda/QuestionTheme and SurveyTheme) | ||
* … | * … | ||
--- | |||
> Load question attributes for question type/question id for a single language (for qanda/QuestionTheme and SurveyTheme) | |||
If you already can load for ''all'' languages, you don't have to load for ''one'' language, IMO. Unless the number of languages are > 20, which I don't think happens very often...? Also, this is done via lazy loading through the ORM. I think. (Unless explicitly loading it eagerly.) | |||
[[User:Olle|Olle]] ([[User talk:Olle|talk]]) 17:31, 3 February 2020 (CET) | |||
== Notes == | == Notes == |
Revision as of 18:31, 3 February 2020
Question attribute code saw a rise in complexity between LS3 and LS4. This page will take a step back and analyze if it can be simplified.
Domain diagram
Class diagram
TODO
Database design
TODO.
Will not change.
Scenarios
- Get potential question attribute from core
- Import question attribute from XML/question theme
- Add (replace ?) question attribute from plugins
- Save question attribute value (for all language or not)
- Load question attributes for question type/question id
- Load question attributes for question type/question id for a single language (for qanda/QuestionTheme and SurveyTheme)
- …
---
> Load question attributes for question type/question id for a single language (for qanda/QuestionTheme and SurveyTheme)
If you already can load for all languages, you don't have to load for one language, IMO. Unless the number of languages are > 20, which I don't think happens very often...? Also, this is done via lazy loading through the ORM. I think. (Unless explicitly loading it eagerly.)
Olle (talk) 17:31, 3 February 2020 (CET)
Notes
TODO
Future evolution and remark
- Question class is clearly a Theme related attribute. Not linked to specific question DenisChenu (talk)
- Can we remove timer attribute from core please ! https://manual.limesurvey.org/Question_type_-_Short_free_text#Timer : remind : Not only for on,e question, didn't update any HTML/CSS part (only js) DenisChenu (talk)
- All expression part (min value , max number) are done in LimeExpressionManager : totally unrelated to QuestionTheme DenisChenu (talk)