https://en.wikipedia.org/w/index.php?action=history&feed=atom&title=Module%3AService_award_progress%2Fsandbox Module:Service award progress/sandbox - Revision history 2025-06-14T12:40:22Z Revision history for this page on the wiki MediaWiki 1.45.0-wmf.5 https://en.wikipedia.org/w/index.php?title=Module:Service_award_progress/sandbox&diff=1287782472&oldid=prev ZandDev: minor fixes 2025-04-28T12:47:43Z <p>minor fixes</p> <table style="background-color: #fff; color: #202122;" data-mw="interface"> <col class="diff-marker" /> <col class="diff-content" /> <col class="diff-marker" /> <col class="diff-content" /> <tr class="diff-title" lang="en"> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Previous revision</td> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Revision as of 12:47, 28 April 2025</td> </tr><tr> <td colspan="2" class="diff-lineno">Line 58:</td> <td colspan="2" class="diff-lineno">Line 58:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>}</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>}</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>function p.serviceLevel(args)</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>function p.serviceLevel(args)</div></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div> --Inputs</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div> --<ins style="font-weight: bold; text-decoration: none;"> </ins>Inputs</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> local editorTime = tonumber(stripToNil(args.editorTime))</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> local editorTime = tonumber(stripToNil(args.editorTime))</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> local edits = tonumber(stripToNil(args.edits))</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> local edits = tonumber(stripToNil(args.edits))</div></td> </tr> <tr> <td colspan="2" class="diff-lineno">Line 65:</td> <td colspan="2" class="diff-lineno">Line 65:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> local url = stripToNil(args.url)</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> local url = stripToNil(args.url)</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> </div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> </div></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div> -- Other <del style="font-weight: bold; text-decoration: none;">Variables</del></div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div> -- Other <ins style="font-weight: bold; text-decoration: none;">variables</ins></div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> local timeLevel = '' -- Level associated with time</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> local timeLevel = '' -- Level associated with time</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> local editLevel = '' -- Level associated with edits</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> local editLevel = '' -- Level associated with edits</div></td> </tr> <tr> <td colspan="2" class="diff-lineno">Line 74:</td> <td colspan="2" class="diff-lineno">Line 74:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> local highTime = '' -- Max amount of time for current user level</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> local highTime = '' -- Max amount of time for current user level</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> local nextLevel = '' -- Full name of next user level</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> local nextLevel = '' -- Full name of next user level</div></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div> local fullMessage = '<del style="font-weight: bold; text-decoration: none;">&lt;div style="</del>' -- Output seed</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div> local fullMessage = '' -- Output seed</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> local topLevel = false</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> local topLevel = false</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> local needsEdits = false</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> local needsEdits = false</div></td> </tr> <tr> <td colspan="2" class="diff-lineno">Line 133:</td> <td colspan="2" class="diff-lineno">Line 133:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> -- Build notice</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> -- Build notice</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> -- First paragraph</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> -- First paragraph</div></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div> fullMessage = <del style="font-weight: bold; text-decoration: none;">fullMessage</del> .. styleoverride .. '"&gt;' ..</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div> fullMessage = <ins style="font-weight: bold; text-decoration: none;">'&lt;div style="'</ins> .. styleoverride .. '"&gt;' ..</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> navbar({"Template:Service award progress",style="float:right",mini=1}) ..</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> navbar({"Template:Service award progress",style="float:right",mini=1}) ..</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> 'Currently, this editor has earned the &lt;b&gt;' .. userLevel .. '&lt;/b&gt; service award.&lt;br&gt;&lt;br&gt;'</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> 'Currently, this editor has earned the &lt;b&gt;' .. userLevel .. '&lt;/b&gt; service award.&lt;br&gt;&lt;br&gt;'</div></td> </tr> <tr> <td colspan="2" class="diff-lineno">Line 148:</td> <td colspan="2" class="diff-lineno">Line 148:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> end</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> end</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> </div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> </div></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div> -- Second <del style="font-weight: bold; text-decoration: none;">paragra</del> / progress bars</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div> -- Second <ins style="font-weight: bold; text-decoration: none;">paragraph</ins> / progress bars</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> if displayall or needsBoth or needsEdits then</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> if displayall or needsBoth or needsEdits then</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> fullMessage = fullMessage .. 'Progress towards the next level (by edits): [&amp;nbsp;' ..</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> fullMessage = fullMessage .. 'Progress towards the next level (by edits): [&amp;nbsp;' ..</div></td> </tr> </table> ZandDev https://en.wikipedia.org/w/index.php?title=Module:Service_award_progress/sandbox&diff=1287780136&oldid=prev ZandDev: change color for the remaining part of the progress bar only in dark mode: indistinguishable from the background 2025-04-28T12:25:24Z <p>change color for the remaining part of the progress bar only in dark mode: indistinguishable from the background</p> <table style="background-color: #fff; color: #202122;" data-mw="interface"> <col class="diff-marker" /> <col class="diff-content" /> <col class="diff-marker" /> <col class="diff-content" /> <tr class="diff-title" lang="en"> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Previous revision</td> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Revision as of 12:25, 28 April 2025</td> </tr><tr> <td colspan="2" class="diff-lineno">Line 19:</td> <td colspan="2" class="diff-lineno">Line 19:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> '&lt;p style="border:1px solid #c8ccd1; padding:1px; overflow:hidden;"&gt;' ..</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> '&lt;p style="border:1px solid #c8ccd1; padding:1px; overflow:hidden;"&gt;' ..</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> '&lt;span style="width: ' .. barLength .. '%; height: 2px; background-color:#00af32; color:inherit; float:left;"&gt;&amp;nbsp;&lt;/span&gt;' ..</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> '&lt;span style="width: ' .. barLength .. '%; height: 2px; background-color:#00af32; color:inherit; float:left;"&gt;&amp;nbsp;&lt;/span&gt;' ..</div></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div> '&lt;span style="width: calc(100% - ' .. barLength .. '%); height: 2px; background-color:<del style="font-weight: bold; text-decoration: none;">var(--</del>background-color-<del style="font-weight: bold; text-decoration: none;">neutral</del>, #<del style="font-weight: bold; text-decoration: none;">eaecf0</del>); color:inherit; float:left;"&gt;&amp;nbsp;&lt;/span&gt;' ..</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div> '&lt;span style="width: calc(100% - ' .. barLength .. '%); height: 2px; background-color:<ins style="font-weight: bold; text-decoration: none;">#eaecf0; </ins>background-color<ins style="font-weight: bold; text-decoration: none;">:light</ins>-<ins style="font-weight: bold; text-decoration: none;">dark(#eaecf0</ins>, #<ins style="font-weight: bold; text-decoration: none;">505050</ins>); color:inherit; float:left;"&gt;&amp;nbsp;&lt;/span&gt;' ..</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> '&lt;/p&gt;&lt;/div&gt;'</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> '&lt;/p&gt;&lt;/div&gt;'</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> return progBarText</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> return progBarText</div></td> </tr> </table> ZandDev https://en.wikipedia.org/w/index.php?title=Module:Service_award_progress/sandbox&diff=1287779978&oldid=prev ZandDev: use CSS token for the remaining part of the progress bar 2025-04-28T12:23:59Z <p>use CSS token for the remaining part of the progress bar</p> <table style="background-color: #fff; color: #202122;" data-mw="interface"> <col class="diff-marker" /> <col class="diff-content" /> <col class="diff-marker" /> <col class="diff-content" /> <tr class="diff-title" lang="en"> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Previous revision</td> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Revision as of 12:23, 28 April 2025</td> </tr><tr> <td colspan="2" class="diff-lineno">Line 18:</td> <td colspan="2" class="diff-lineno">Line 18:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> '&lt;p&gt;&lt;span style="font-size: 120%;"&gt;&lt;b&gt;' .. percentDone .. '%&lt;/b&gt;&lt;/span&gt; completed&lt;/p&gt;' ..</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> '&lt;p&gt;&lt;span style="font-size: 120%;"&gt;&lt;b&gt;' .. percentDone .. '%&lt;/b&gt;&lt;/span&gt; completed&lt;/p&gt;' ..</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> '&lt;p style="border:1px solid #c8ccd1; padding:1px; overflow:hidden;"&gt;' ..</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> '&lt;p style="border:1px solid #c8ccd1; padding:1px; overflow:hidden;"&gt;' ..</div></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div> '&lt;span style="width: ' .. barLength .. '%; height: 2px; background:#00af32; color:inherit; float:left;"&gt;&amp;nbsp;&lt;/span&gt;' ..</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div> '&lt;span style="width: ' .. barLength .. '%; height: 2px; background<ins style="font-weight: bold; text-decoration: none;">-color</ins>:#00af32; color:inherit; float:left;"&gt;&amp;nbsp;&lt;/span&gt;' ..</div></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div> '&lt;span style="width: calc(100% - ' .. barLength .. '%); height: 2px; background:#eaecf0; color:inherit; float:left;"&gt;&amp;nbsp;&lt;/span&gt;' ..</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div> '&lt;span style="width: calc(100% - ' .. barLength .. '%); height: 2px; background<ins style="font-weight: bold; text-decoration: none;">-color</ins>:<ins style="font-weight: bold; text-decoration: none;">var(--background-color-neutral, </ins>#eaecf0<ins style="font-weight: bold; text-decoration: none;">)</ins>; color:inherit; float:left;"&gt;&amp;nbsp;&lt;/span&gt;' ..</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> '&lt;/p&gt;&lt;/div&gt;'</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> '&lt;/p&gt;&lt;/div&gt;'</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> return progBarText</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> return progBarText</div></td> </tr> </table> ZandDev https://en.wikipedia.org/w/index.php?title=Module:Service_award_progress/sandbox&diff=1287776032&oldid=prev ZandDev: rewrite formula that calculates the length of the leftBar (now called barLength) 2025-04-28T11:42:59Z <p>rewrite formula that calculates the length of the leftBar (now called barLength)</p> <table style="background-color: #fff; color: #202122;" data-mw="interface"> <col class="diff-marker" /> <col class="diff-content" /> <col class="diff-marker" /> <col class="diff-content" /> <tr class="diff-title" lang="en"> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Previous revision</td> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Revision as of 11:42, 28 April 2025</td> </tr><tr> <td colspan="2" class="diff-lineno">Line 13:</td> <td colspan="2" class="diff-lineno">Line 13:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>local function progressBar(current, total)</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>local function progressBar(current, total)</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> local percentDone = mm._round(current / total * 100, 1)</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> local percentDone = mm._round(current / total * 100, 1)</div></td> </tr> <tr> <td colspan="2" class="diff-empty diff-side-deleted"></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div> local barLength = (percentDone &gt;= 100) and 100 or (current / total * 100)</div></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div> local leftBar = ''</div></td> <td colspan="2" class="diff-empty diff-side-added"></td> </tr> <tr> <td colspan="2" class="diff-empty diff-side-deleted"></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div> if percentDone &gt;= 100 then</div></td> <td colspan="2" class="diff-empty diff-side-added"></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div> else</div></td> <td colspan="2" class="diff-empty diff-side-added"></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div> leftBar = current / total * 100</div></td> <td colspan="2" class="diff-empty diff-side-added"></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div> end</div></td> <td colspan="2" class="diff-empty diff-side-added"></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> local progBarText = '&lt;div style="width:75%; margin:auto; text-align:center;"&gt;' ..</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> local progBarText = '&lt;div style="width:75%; margin:auto; text-align:center;"&gt;' ..</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> '&lt;p&gt;&lt;span style="font-size: 120%;"&gt;&lt;b&gt;' .. percentDone .. '%&lt;/b&gt;&lt;/span&gt; completed&lt;/p&gt;' ..</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> '&lt;p&gt;&lt;span style="font-size: 120%;"&gt;&lt;b&gt;' .. percentDone .. '%&lt;/b&gt;&lt;/span&gt; completed&lt;/p&gt;' ..</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> '&lt;p style="border:1px solid #c8ccd1; padding:1px; overflow:hidden;"&gt;' ..</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> '&lt;p style="border:1px solid #c8ccd1; padding:1px; overflow:hidden;"&gt;' ..</div></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div> '&lt;span style="width: ' .. <del style="font-weight: bold; text-decoration: none;">leftBar</del> .. '%; height: 2px; background:#00af32; color:inherit; float:left;"&gt;&amp;nbsp;&lt;/span&gt;' ..</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div> '&lt;span style="width: ' .. <ins style="font-weight: bold; text-decoration: none;">barLength</ins> .. '%; height: 2px; background:#00af32; color:inherit; float:left;"&gt;&amp;nbsp;&lt;/span&gt;' ..</div></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div> '&lt;span style="width: calc(100% - ' .. <del style="font-weight: bold; text-decoration: none;">leftBar</del> .. '%); height: 2px; background:#eaecf0; color:inherit; float:left;"&gt;&amp;nbsp;&lt;/span&gt;' ..</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div> '&lt;span style="width: calc(100% - ' .. <ins style="font-weight: bold; text-decoration: none;">barLength</ins> .. '%); height: 2px; background:#eaecf0; color:inherit; float:left;"&gt;&amp;nbsp;&lt;/span&gt;' ..</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> '&lt;/p&gt;&lt;/div&gt;'</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> '&lt;/p&gt;&lt;/div&gt;'</div></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div> </div></td> <td colspan="2" class="diff-empty diff-side-added"></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> return progBarText</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> return progBarText</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>end</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>end</div></td> </tr> </table> ZandDev https://en.wikipedia.org/w/index.php?title=Module:Service_award_progress/sandbox&diff=1287775739&oldid=prev ZandDev: -rightBar code 2025-04-28T11:39:17Z <p>-rightBar code</p> <table style="background-color: #fff; color: #202122;" data-mw="interface"> <col class="diff-marker" /> <col class="diff-content" /> <col class="diff-marker" /> <col class="diff-content" /> <tr class="diff-title" lang="en"> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Previous revision</td> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Revision as of 11:39, 28 April 2025</td> </tr><tr> <td colspan="2" class="diff-lineno">Line 14:</td> <td colspan="2" class="diff-lineno">Line 14:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> local percentDone = mm._round(current / total * 100, 1)</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> local percentDone = mm._round(current / total * 100, 1)</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> local leftBar = ''</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> local leftBar = ''</div></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div> local rightBar = ''</div></td> <td colspan="2" class="diff-empty diff-side-added"></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> if percentDone &gt;= 100 then</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> if percentDone &gt;= 100 then</div></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div> leftBar = 100</div></td> <td colspan="2" class="diff-empty diff-side-added"></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div> rightBar = 0</div></td> <td colspan="2" class="diff-empty diff-side-added"></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> else</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> else</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> leftBar = current / total * 100</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> leftBar = current / total * 100</div></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div> rightBar = (100-current) / total * 100</div></td> <td colspan="2" class="diff-empty diff-side-added"></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> end</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> end</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> local progBarText = '&lt;div style="width:75%; margin:auto; text-align:center;"&gt;' ..</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> local progBarText = '&lt;div style="width:75%; margin:auto; text-align:center;"&gt;' ..</div></td> </tr> </table> ZandDev https://en.wikipedia.org/w/index.php?title=Module:Service_award_progress/sandbox&diff=1287775619&oldid=prev ZandDev: try to fix rightBar (which is gray) length with CSS calc keyword 2025-04-28T11:37:57Z <p>try to fix rightBar (which is gray) length with CSS calc keyword</p> <table style="background-color: #fff; color: #202122;" data-mw="interface"> <col class="diff-marker" /> <col class="diff-content" /> <col class="diff-marker" /> <col class="diff-content" /> <tr class="diff-title" lang="en"> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Previous revision</td> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Revision as of 11:37, 28 April 2025</td> </tr><tr> <td colspan="2" class="diff-lineno">Line 26:</td> <td colspan="2" class="diff-lineno">Line 26:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> '&lt;p style="border:1px solid #c8ccd1; padding:1px; overflow:hidden;"&gt;' ..</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> '&lt;p style="border:1px solid #c8ccd1; padding:1px; overflow:hidden;"&gt;' ..</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> '&lt;span style="width: ' .. leftBar .. '%; height: 2px; background:#00af32; color:inherit; float:left;"&gt;&amp;nbsp;&lt;/span&gt;' ..</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> '&lt;span style="width: ' .. leftBar .. '%; height: 2px; background:#00af32; color:inherit; float:left;"&gt;&amp;nbsp;&lt;/span&gt;' ..</div></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div> '&lt;span style="width: ' .. <del style="font-weight: bold; text-decoration: none;">rightBar</del> .. '%; height: 2px; background:#eaecf0; color:inherit; float:left;"&gt;&amp;nbsp;&lt;/span&gt;' ..</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div> '&lt;span style="width:<ins style="font-weight: bold; text-decoration: none;"> calc(100% -</ins> ' .. <ins style="font-weight: bold; text-decoration: none;">leftBar</ins> .. '%<ins style="font-weight: bold; text-decoration: none;">)</ins>; height: 2px; background:#eaecf0; color:inherit; float:left;"&gt;&amp;nbsp;&lt;/span&gt;' ..</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> '&lt;/p&gt;&lt;/div&gt;'</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> '&lt;/p&gt;&lt;/div&gt;'</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> </div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> </div></td> </tr> </table> ZandDev https://en.wikipedia.org/w/index.php?title=Module:Service_award_progress/sandbox&diff=1287772612&oldid=prev ZandDev: Create sandbox version of Module:Service award progress 2025-04-28T11:05:20Z <p>Create sandbox version of <a href="/wiki/Module:Service_award_progress" title="Module:Service award progress">Module:Service award progress</a></p> <p><b>New page</b></p><div>local navbar = require(&#039;Module:Navbar&#039;)._navbar<br /> local mm = require(&#039;Module:Math&#039;)<br /> local p = {}<br /> <br /> local function stripToNil(text)<br /> -- If text is a string, return its trimmed content, or nil if empty.<br /> -- Otherwise return text (which may, for example, be nil).<br /> if type(text) == &#039;string&#039; then<br /> text = text:match(&#039;(%S.-)%s*$&#039;)<br /> end<br /> return text<br /> end<br /> local function progressBar(current, total)<br /> local percentDone = mm._round(current / total * 100, 1)<br /> local leftBar = &#039;&#039;<br /> local rightBar = &#039;&#039;<br /> if percentDone &gt;= 100 then<br /> leftBar = 100<br /> rightBar = 0<br /> else<br /> leftBar = current / total * 100<br /> rightBar = (100-current) / total * 100<br /> end<br /> local progBarText = &#039;&lt;div style=&quot;width:75%; margin:auto; text-align:center;&quot;&gt;&#039; ..<br /> &#039;&lt;p&gt;&lt;span style=&quot;font-size: 120%;&quot;&gt;&lt;b&gt;&#039; .. percentDone .. &#039;%&lt;/b&gt;&lt;/span&gt; completed&lt;/p&gt;&#039; ..<br /> &#039;&lt;p style=&quot;border:1px solid #c8ccd1; padding:1px; overflow:hidden;&quot;&gt;&#039; ..<br /> &#039;&lt;span style=&quot;width: &#039; .. leftBar .. &#039;%; height: 2px; background:#00af32; color:inherit; float:left;&quot;&gt;&amp;nbsp;&lt;/span&gt;&#039; ..<br /> &#039;&lt;span style=&quot;width: &#039; .. rightBar .. &#039;%; height: 2px; background:#eaecf0; color:inherit; float:left;&quot;&gt;&amp;nbsp;&lt;/span&gt;&#039; ..<br /> &#039;&lt;/p&gt;&lt;/div&gt;&#039;<br /> <br /> return progBarText<br /> end<br /> local levelNames = {<br /> &#039;[[Wikipedia:Service awards#Sagacious Editor (or Ephoros of the Encyclopedia)|Sagacious Editor]]&#039;,<br /> &#039;[[Wikipedia:Service awards#Ultimate Vanguard Editor (or Cardinal Gom, the August Togneme of the Encyclopedia)|Ultimate Vanguard Editor]]&#039;,<br /> &#039;[[Wikipedia:Service awards#Senior Vanguard Editor (or Supreme Gom, the Most Exalted Togneme of the Encyclopedia)|Senior Vanguard Editor]]&#039;,<br /> &#039;[[Wikipedia:Service awards#Vanguard Editor (or Lord Gom, the Highest Togneme of the Encyclopedia)|Vanguard Editor]]&#039;,<br /> &#039;[[Wikipedia:Service awards#Grandmaster Editor First-Class (or Lord High Togneme Laureate)|Grandmaster Editor First-Class]]&#039;,<br /> &#039;[[Wikipedia:Service awards#Grandmaster Editor (or Lord High Togneme Vicarus)|Grandmaster Editor]]&#039;,<br /> &#039;[[Wikipedia:Service awards#Master Editor IV (or Looshpah Laureate of the Encyclopedia)|Master Editor IV]]&#039;,<br /> &#039;[[Wikipedia:Service awards#Master Editor III (or Most Plusquamperfect Looshpah Laureate)|Master Editor III]]&#039;,<br /> &#039;[[Wikipedia:Service awards#Master Editor II (or Auspicious Looshpah)|Master Editor II]]&#039;,<br /> &#039;[[Wikipedia:Service awards#Master Editor (or Illustrious Looshpah)|Master Editor]]&#039;,<br /> &#039;[[Wikipedia:Service awards#Senior Editor III (or Labutnum of the Encyclopedia)|Senior Editor III]]&#039;,<br /> &#039;[[Wikipedia:Service awards#Senior Editor II (or Most Pluperfect Labutnum)|Senior Editor II]]&#039;,<br /> &#039;[[Wikipedia:Service awards#Senior Editor (or Labutnum)|Senior Editor]]&#039;,<br /> &#039;[[Wikipedia:Service awards#Veteran Editor IV (or Tutnum of the Encyclopedia)|Veteran Editor IV]]&#039;,<br /> &#039;[[Wikipedia:Service awards#Veteran Editor III (or Most Perfect Tutnum)|Veteran Editor III]]&#039;,<br /> &#039;[[Wikipedia:Service awards#Veteran Editor II (or Grand Tutnum)|Veteran Editor II]]&#039;,<br /> &#039;[[Wikipedia:Service awards#Veteran Editor (or Tutnum)|Veteran Editor]]&#039;,<br /> &#039;[[Wikipedia:Service awards#Experienced Editor (or Grognard Mirabilaire)|Experienced Editor]]&#039;,<br /> &#039;[[Wikipedia:Service awards#Yeoman Editor (or Grognard Extraordinaire)|Yeoman Editor]]&#039;,<br /> &#039;[[Wikipedia:Service awards#Journeyman Editor (or Grognard)|Journeyman Editor]]&#039;,<br /> &#039;[[Wikipedia:Service awards#Apprentice Editor (or Novato)|Apprentice Editor]]&#039;,<br /> &#039;[[Wikipedia:Service awards#Novice Editor (or Burba)|Novice Editor]]&#039;,<br /> &#039;[[Wikipedia:Service awards#Registered Editor (or Signator)|Registered Editor]]&#039;,<br /> &#039;Wikipedian&#039;,<br /> }<br /> local levelTime = {<br /> 8035.5, 7305, 6574.5, 5844, 5113.5, 4383, 3652.4, 2922, 2556.7, 2191.5, 1826.2, 1643.6, <br /> 1461, 1278.4, 1095.7, 913.1, 730.5, 547.9, 365.25, 182.6, 91.3, 30.5, 1, 0,<br /> }<br /> local levelEdits = {<br /> 205000, 175000, 150000, 132000, 114000, 96000, 78000, 60000, 51000, 42000, 33000, 28500,<br /> 24000, 20000, 16000, 12000, 8000, 6000, 4000, 2000, 1000, 200, 1, 0,<br /> }<br /> function p.serviceLevel(args)<br /> --Inputs<br /> local editorTime = tonumber(stripToNil(args.editorTime))<br /> local edits = tonumber(stripToNil(args.edits))<br /> local styleoverride = stripToNil(args.styleoverride)<br /> local genderoverride = stripToNil(args.genderoverride)<br /> local url = stripToNil(args.url)<br /> <br /> -- Other Variables<br /> local timeLevel = &#039;&#039; -- Level associated with time<br /> local editLevel = &#039;&#039; -- Level associated with edits<br /> local userLevel = &#039;&#039; -- Full name of current user level<br /> local lowEdits = &#039;&#039; -- Minimum number of edits for current user level<br /> local lowTime = &#039;&#039; -- Minimum amount of time for current user level<br /> local highEdits = &#039;&#039; -- Max number of edits for current user level<br /> local highTime = &#039;&#039; -- Max amount of time for current user level<br /> local nextLevel = &#039;&#039; -- Full name of next user level<br /> local fullMessage = &#039;&lt;div style=&quot;&#039; -- Output seed<br /> local topLevel = false<br /> local needsEdits = false<br /> local needsTime = false<br /> local needsBoth = false<br /> local displayall = false<br /> if stripToNil(args.displayall) == &#039;yes&#039; then<br /> displayall = true<br /> end<br /> <br /> -- Find &quot;level&quot; of editor based on time<br /> for x = 1, 24, 1 do<br /> if editorTime &gt;= levelTime[x] then<br /> timeLevel = x<br /> break<br /> end<br /> end<br /> -- Fine &quot;level&quot; of editor based on edits<br /> for y = 1, 24, 1 do<br /> if edits &gt;= levelEdits[y] then<br /> editLevel = y<br /> break<br /> end<br /> end<br /> <br /> -- Set user level and the next level up<br /> if timeLevel == editLevel then<br /> if timeLevel == 1 then<br /> userLevel = levelNames[1]<br /> topLevel = true<br /> else<br /> userLevel = levelNames[editLevel]<br /> nextLevel = levelNames[editLevel-1]<br /> lowEdits = levelEdits[editLevel]<br /> highEdits = levelEdits[editLevel-1]<br /> lowTime = levelTime[editLevel]<br /> highTime = levelTime[editLevel-1]<br /> needsBoth = true<br /> end<br /> elseif timeLevel &lt; editLevel then<br /> userLevel = levelNames[editLevel]<br /> nextLevel = levelNames[editLevel-1]<br /> lowEdits = levelEdits[editLevel]<br /> highEdits = levelEdits[editLevel-1]<br /> lowTime = levelTime[editLevel]<br /> highTime = levelTime[editLevel-1]<br /> needsEdits = true<br /> else<br /> userLevel = levelNames[timeLevel]<br /> nextLevel = levelNames[timeLevel-1]<br /> lowEdits = levelEdits[timeLevel]<br /> highEdits = levelEdits[timeLevel-1]<br /> lowTime = levelTime[timeLevel]<br /> highTime = levelTime[timeLevel-1]<br /> needsTime = true<br /> end<br /> <br /> -- Build notice<br /> -- First paragraph<br /> fullMessage = fullMessage .. styleoverride .. &#039;&quot;&gt;&#039; ..<br /> navbar({&quot;Template:Service award progress&quot;,style=&quot;float:right&quot;,mini=1}) ..<br /> &#039;Currently, this editor has earned the &lt;b&gt;&#039; .. userLevel .. &#039;&lt;/b&gt; service award.&lt;br&gt;&lt;br&gt;&#039;<br /> if topLevel then<br /> fullMessage = fullMessage .. &#039;&lt;div&gt;This is the highest level achievable by an editor!&lt;/div&gt;&#039;<br /> else<br /> fullMessage = fullMessage .. &#039;&lt;div&gt;To get to the next level, &#039; .. nextLevel .. &#039;, &#039; .. genderoverride .. &#039; to meet the &#039;<br /> if needsBoth then<br /> fullMessage = fullMessage .. &#039;&lt;b&gt;editing&lt;/b&gt; and the &lt;b&gt;time&lt;/b&gt; requirement.&lt;/div&gt;&#039;<br /> elseif needsEdits then<br /> fullMessage = fullMessage .. &#039;&lt;b&gt;editing&lt;/b&gt; requirement.&lt;/div&gt;&#039;<br /> else<br /> fullMessage = fullMessage .. &#039;&lt;b&gt;time&lt;/b&gt; requirement.&lt;/div&gt;&#039;<br /> end<br /> <br /> -- Second paragra / progress bars<br /> if displayall or needsBoth or needsEdits then<br /> fullMessage = fullMessage .. &#039;Progress towards the next level (by edits): [&amp;nbsp;&#039; ..<br /> &#039;&lt;span class=&quot;plainlinks&quot;&gt;[&#039; .. url .. &#039; &#039; ..<br /> (edits - lowEdits) .. &#039;]&lt;/span&gt;&amp;nbsp;/&amp;nbsp;&#039; ..<br /> (highEdits - lowEdits) .. &#039;&amp;nbsp;]&#039;<br /> fullMessage = fullMessage .. progressBar(edits - lowEdits, highEdits - lowEdits)<br /> end<br /> if displayall or needsBoth or needsTime then<br /> fullMessage = fullMessage .. &#039;Progress towards the next level (by time): [&amp;nbsp;&#039; ..<br /> (editorTime - lowTime) .. &#039;&amp;nbsp;days&amp;nbsp;/&amp;nbsp;&#039; ..<br /> (highTime - lowTime) .. &#039;&amp;nbsp;days&amp;nbsp;]&#039;<br /> fullMessage = fullMessage .. progressBar(editorTime - lowTime, highTime - lowTime)<br /> end<br /> fullMessage = fullMessage .. &#039;&lt;/div&gt;&#039;<br /> end<br /> return fullMessage<br /> end<br /> <br /> function p.main(frame)<br /> return p.serviceLevel(frame.args)<br /> end<br /> <br /> return p</div> ZandDev