Dynamic Page Extension

The Dynamic Page Extension will filter the contents of Wikia pages. Through a side-panel, the viewer can choose what type of information they want, and the level of detail. As they make changes to the controls on the side-panel, the page will add or remove information in real time.

Why
The main goal is to only show the viewer the information they need. By removing unnecessary content that does not pertain to the viewer, it reduces time spent skimming through pages.

If enough information can be filtered out leaving only the most important details, viewers could easily read our Wikia guides and play through a dungeon at the same time. If they make a mistake somewhere and don't understand why, they can increase the detail level.

In contrast, removing too many details can make a page too specific to a single viewer's needs, and could be irrelevant to another. Because viewers have different needs, the pages themselves need to be dynamic – be able to add or remove content. This is where the extension is needed.

How
The extension cannot work alone. There is no substitution to good writing practice, and this is the backbone of the workload. The content itself needs to include the widest amount of relevant information, be uniform across each page, and must be written as short as possible.

This "origin page" is the parent of all viewer-specific pages and will meet the needs of each viewer. From the origin pages, viewers can filter down information for their purposes creating a viewer-specific page. At which point the extension and tagging will take place.

Coding

 * 1) The extension will first draw the side-panel and all the controls inside, as described from another Wikia page.
 * 2) Within each control, the DOM event onclick will call a function.
 * 3) The function receives both a class, and a state.
 * 4) *The class tells which element(s) of the page it needs to change.
 * 5) *The state tells whether to hide or unhide the targeted element.
 * 6) The function searches the page for all occurrences of the class and toggles visibility by changing display to none or block.
 * 7) After the function toggles an element, if the class belongs with multiple categories, the function will redisplay those it hid. If the page contains any nested tags, the lower tag could be hidden because the higher tag was toggled. This is fine if a video is describing how to kill trash, and the higher tag, trash, is hidden. So the video is unnecessary. However, content can belong with multiple categories. An instruction could be given to both a healer and support. Inside the pages, this will be marked-up as nested tags.

Editors
This section describes how to make the pages dynamic.
 * 1) Invoke the extension.
 * 2) Tag your content. The tags we will be using are:
 * 3) *High, Med, and Low – different priorties of information
 * 4) *Tank, Healer, DPS, Support – if multiple roles apply, nest them inside.
 * 5) *Quest
 * 6) *Videos
 * 7) *Map
 * 8) *Trash