Difference between revisions of "RatingsTest"
From Sega Retro
Line 3: | Line 3: | ||
:So it's not really a variable at all I guess. I can't... vary. -[[User:Black Squirrel|Black Squirrel]] ([[User talk:Black Squirrel|talk]]) 11:52, 2 July 2015 (CDT) | :So it's not really a variable at all I guess. I can't... vary. -[[User:Black Squirrel|Black Squirrel]] ([[User talk:Black Squirrel|talk]]) 11:52, 2 July 2015 (CDT) | ||
+ | |||
+ | |||
+ | ::I'm thinking the best plan might be to introduce loops: https://www.mediawiki.org/wiki/Extension:Loops | ||
+ | |||
+ | <pre> | ||
+ | {{#vardefine: totalReviews|0}} | ||
+ | {{#vardefine: cumulativeScore|0}} | ||
+ | |||
+ | |||
+ | {{#vardefine: finished|false}} | ||
+ | {{#vardefine: oneLoop|false}} | ||
+ | |||
+ | <!-- while not done --> | ||
+ | {{#while:| {{#ifeq: {{#var: finished}}|false}} | | ||
+ | |||
+ | {{#ifeq: {{#var: oneLoop}}|true| | ||
+ | <!-- if looped once --> | ||
+ | {{#vardefine: average|{{#expr: {{#var: cumulativeScore}} / ({{#var: totalReviews}} * 100) }} }} | ||
+ | {{#vardefine: finished|true}} <!-- exit after this loop --> | ||
+ | | }} | ||
+ | |||
+ | <!-- add up scores (this gets done twice) --> | ||
+ | ... | ||
+ | {{#vardefine: totalReviews|{{#var: totalReviews}} + 1}} | ||
+ | {{#vardefine: cumulativeScore|{{#var: cumulativeScore}} + score}} | ||
+ | ... | ||
+ | |||
+ | {{#vardefine:oneLoop|true}} | ||
+ | }} | ||
+ | </pre> | ||
+ | |||
+ | no idea if the syntax works but yeah. | ||
+ | |||
+ | -[[User:Black Squirrel|Black Squirrel]] ([[User talk:Black Squirrel|talk]]) 13:29, 2 July 2015 (CDT) |
Revision as of 13:29, 2 July 2015
Seems like trying to use expr with var_final causes an error. Any thoughts? - Hivebrain (talk) 16:22, 1 July 2015 (CDT)
- From the two minutes I've taken to look into this, I think var_final is created at the very last minute, i.e. after all the standard wiki parsing has been done.
- So it's not really a variable at all I guess. I can't... vary. -Black Squirrel (talk) 11:52, 2 July 2015 (CDT)
- I'm thinking the best plan might be to introduce loops: https://www.mediawiki.org/wiki/Extension:Loops
{{#vardefine: totalReviews|0}} {{#vardefine: cumulativeScore|0}} {{#vardefine: finished|false}} {{#vardefine: oneLoop|false}} <!-- while not done --> {{#while:| {{#ifeq: {{#var: finished}}|false}} | {{#ifeq: {{#var: oneLoop}}|true| <!-- if looped once --> {{#vardefine: average|{{#expr: {{#var: cumulativeScore}} / ({{#var: totalReviews}} * 100) }} }} {{#vardefine: finished|true}} <!-- exit after this loop --> | }} <!-- add up scores (this gets done twice) --> ... {{#vardefine: totalReviews|{{#var: totalReviews}} + 1}} {{#vardefine: cumulativeScore|{{#var: cumulativeScore}} + score}} ... {{#vardefine:oneLoop|true}} }}
no idea if the syntax works but yeah.
-Black Squirrel (talk) 13:29, 2 July 2015 (CDT)