A new page category is to be created, at "adult:". All works judged to contain adult and/or sexual content are to be moved into this category, and splash pages are to be created at the previous locations of each page. Pages will be moved to preserve their edit history, votes and discussion.
All adult: pages will be restricted to site members, rather than any Wikidot user. As the threshold age for site membership is being raised to 18+, this is the most effective and reliable way to ensure that underage users do not view adult content. This is a more intensive restriction that initially proposed, but follows the spirit of said proposal. Members who are not on the site or logged in will not be able to view any such page.
A page will be created at the adult:_public category with the following content. This will modify the page that displays when a user attempts to access such a page when they are not a member of the site:
[[module CSS]]
#page-title {
display: none;
}
[[/module]]
[[div id="adult-warning"]]
[[div id="adult-header"]]
ADULT CONTENT
[[/div]]
This article contains content of an adult nature.
Only logged-in site members above the age of 18 may access this page.
[[/div]]
Here is a test page with the above message displayed. It is what an adult: page will look like to a user who is not logged in.
Additionally, a page will be created at the adult:_template location. This page will consist of the following, which will create a short standardized warning for all adult content on the site and create a redirect to the splash page. Creating the page at a _template location causes it to appear on every page in a category, so users will not need to put this code on their own pages. The splash page will have a link to the adult: page.
[[module CSS]]
#page-title {
display: none;
}
[[/module]]
[[div id="adult-warning"]]
[[div id="adult-header"]]
ADULT CONTENT
[[/div]]
The following article contains content of an adult nature.
Do not proceed if you are not over the age of 18 or are not willing to see such content.
[[module Redirect destination="https://www.scp-wiki.wikidot.com/%%name%%"]]
[[/div]]
[[div class="meta-title"]]
%%title%%
[[/div]]
%%content%%
Each existing adult: page will have a splash page created at the original location. These splash pages will contain a short content warning, displayed below, as well as a link to the adult page. If the page is an SCP, it will include a copy of the Wikiwalk footer, so that browsing with the Wikiwalk footer is not interrupted for users who are not logged in or do not wish to view adult content. (This will need to be put on all the splash pages, it will not happen automatically.)
[[module ListPages range="." limit="1"]]
This article contains adult content that may not be suitable for all readers. If you are above the age of 18+ and wish to read such content, then you may click [[[adult:%%name%%/noredirect/true | HERE]]] to view said content.
[[/module]]
Splash pages will be tagged with "adult" and "splash". Additionally, whenever possible links should lead to the splash page, rather than the adult: page. If these pages are not created by the user who created the adult: category page, their attribution metadata will need to be changed to that author.
Commenting and editing for all such splash pages should be locked.
This splash page ensures that original location of the tale is reserved (so that another SCP is not made with the same number, or another tale with the same url), and allows older, outdated links to still function. It is a technical requirement to using adult: category. Additionally, it allows for an additional buffer between normal browsing and the adult content, as it always forces users to confirm click onto the page with adult content.
The following will be added to Sigma-9, in order to support the new classes used for the banners:
div#u-adult-warning {
width: fit-content;
margin: 0 auto 20px;
padding: .5rem 1rem;
border: 3px solid #333;
background: #e4e4e4;
color: #333;
text-align: center;
font-weight: bold;
}
div#u-adult-warning > div#u-adult-header {
font-size: 300%;
text-shadow: 1px 2px 3px rgba(0,0,0,.5);
color: #901;
}
div#u-adult-warning > div#u-adult-header p {
margin: 0;
}
div#u-adult-warning > .error-block {
color: unset;
padding: unset;
margin: unset;
border: unset;
margin-bottom: 1em;
}