MediaWiki:Common.js: Difference between revisions
Added Skill Calculator Logic |
Switched to use CSS class for passing arguments |
||
| (2 intermediate revisions by the same user not shown) | |||
| Line 5: | Line 5: | ||
}); | }); | ||
// Skill Calculator logic to be embedded in MediaWiki:Common.js | // Skill Calculator logic to be embedded in MediaWiki:Common.js | ||
(function() { | mw.hook('wikipage.content').add(function($content) { | ||
// Only run if the page contains a calculator container | // Only run if the page contains a calculator container | ||
const calcContainer = | const calcContainer = $content.find('#wiki-skill-calc')[0]; | ||
if (!calcContainer) return; | if (!calcContainer) return; | ||
if (calcContainer.dataset.initialized) return; | |||
calcContainer.dataset.initialized = 'true'; | |||
const | const skillClass = Array.from(calcContainer.classList).find(c => c.startsWith('skill-')); | ||
if (!skillClass) { | |||
calcContainer.innerHTML = "<p style='color:red;'>Error: No skill class found on container.</p>"; | |||
return; | |||
} | |||
const currentSkill = skillClass.replace('skill-', ''); // e.g., "Mining" | |||
// Raw XP Table (Level 1 to 99) | // Raw XP Table (Level 1 to 99) | ||
| Line 228: | Line 235: | ||
// Render initially | // Render initially | ||
renderCalculator(); | renderCalculator(); | ||
} | }); | ||