type: 'grid', //"text", "grid" or "google". If using google, make sure your CSP header in nginx config allows the google domain.
type: 'grid', //"text", "grid", "hcaptcha" or "google". If using google/hcaptcha, make sure your CSP header in nginx config allows the google/hcaptcha domain.
generateLimit: 1000, //max number of captchas to have generated at any time, prevent mass unsolved captcha spam, especially on TOR.
google: { //options for google captcha, when captcha type is google
| . Tripcode and capcode are optional components. Tripcodes and capcodes may not contain "##" and the whitespace before capcodes is significant.
| . Tripcode and capcode are optional components. Tripcodes and capcodes may not contain "#" and the whitespace before capcodes is significant.
p Valid examples:
ol.mv-0
li Name
li Name##tripcode
li Name## capcode
li Name##tripcode## capcode
li ##tripcode## capcode
li name
li #tripcode
li ##tripcode
li ## capcode
p The capcode can also be left blank to display just your role.
p From the examples, you can see that all components can be used in combination or independently. In a post number 4 would look like:
li name#tripcode
li name##tripcode
li name## capcode
li name#tripcode## capcode
li name##tripcode## capcode
li #tripcode## capcode
li ##tripcode## capcode
li ##
p The last example is considered a blank capcode and can be used as a shortcut to display your role.
p Each component can be used in combination or independently. In a post number 9 would look like:
-
const examplePost = {
"date" : new Date("2019-08-02T09:48:44.180Z"),
"name" : "Name",
"name" : "name",
"board" : "example",
"tripcode" : "!!X8NXmAS44=",
"capcode" : "##Board Owner capcode",
@ -103,7 +109,7 @@ block content
p The name is simply what name you want to be shown alongside your post. Other users can post with the same name so there is nothing preventing impersonation. This is not related to your username (for registered users).
b Tripcode
p A tripcode is a password of sorts, which users can provide in the tripcode component of their name. This tripcode is used in conjunction with a server-known secret to generate a unique* tripcode portion of the name. Long, unique tripcodes can be used as a form of identity. It is important that you keep tripcodes secret if you use them for some form of identity. A compromised tripcode can be used for impersonation and cannot be revoked in any way.
p A tripcode is a password of sorts, which users can provide in the tripcode component of their name. This tripcode is used in conjunction with a server-known secret to generate a unique* tripcode portion of the name. Long, unique tripcodes can be used as a form of identity. It is important that you keep tripcodes secret if you use them for some form of identity. A compromised tripcode can be used for impersonation and cannot be revoked in any way. Single # before tripcodes will use the traditional (what is now sometimes known as "insecure") tripcode algorithm shared by many imageboard softwares and websites. Double # before tripcodes will use a sha256 hash with server-side secret for a more secure, non-portable tripcode.
b Capcode
p A capcode is a component of the name field only available to authenticated users. This includes admins, global staff, board owners and board moderators. If there is no text after the ##, the role will be displayed alone. Leaving a space and putting custom text will be prefixed by the role name. This way, the role is always shown to prevent role impersonation.
@ -174,17 +180,29 @@ block content
span.mono inline monospace
tr
td
| ```language
| [code]language
br
| code block
| int main() {...}
br
| ```
| [/code]
td
span.code int main() {...}
tr
td
pre
| [code]aa
| ∧_∧
| ( ・ω・) Let's try that again.
| [/code]
td
span.code code block
pre.aa
| ∧_∧
| ( ・ω・) Let's try that again.
tr
td(colspan=2)
| The "language" of code blocks is optional. Without it, automatic language detection is used.
| If the language is "plain", highlighting is disabled for the code block. Not all languages are supported, a subset of popular languages is used.
| If the language is "plain", highlighting is disabled for the code block. If "aa" is used, the font will be adjusted for Japanese Shift JIS art.
| Not all programming languages are supported, a subset of popular languages is used.
| If the language is not in the supported list, the code block will be rendered like "plain" with no highlighting.
| Languages supported: #{codeLanguages.join(', ')}
.table-container.flex-center.mv-5
@ -262,9 +280,32 @@ block content
li Board moderator: All below, move/merge, ban, delete-by-ip, sticky/sage/lock/cycle
li Regular user: Reports, and post spoiler/delete/unlink if the board has them enabled
| Administrators have the ability to assign a permission level directly to users through the global management page. Typically a user is level 4 (regular user), 1 (global staff) or 0 (administrator).
| Level 2 and 3 are usually only aplicable to users when on a board they are owner or moderator. However, level 2 or 3 can be assigned manually to create global board owners or global board moderators
| who have board owner or moderation permissions on all boards, but without access to the global moderation interfaces. If assigning global boad owners (level 2), they will have access to the board settings
| Level 2 and 3 are usually only applicable to users when on a board they are owner or moderator. However, level 2 or 3 can be assigned manually to create global board owners or global board moderators
| who have board owner or moderation permissions on all boards, but without access to the global moderation interfaces. If assigning global board owners (level 2), they will have access to the board settings
| and the ability to reassign board owners.
.table-container.flex-center.mv-5
.anchor#antispam
table
tr
th: a(href='#antispam') What do the board settings for antispam do?
tr
td
p Lock Mode: Choose to lock posting new threads or all posts.
p Captcha Mode: Choose to enforce captchas for posting threads or all posts.
p PPH Trigger Threshold: Trigger an action after a certain amount of PPH.
p PPH Trigger Action: The action to trigger.
p TPH Trigger Threshold: Trigger an action after a certain amount of TPH.
p TPH Trigger Action: The action to trigger.
p Trigger Reset Lock Mode: If a trigger threshold was reached, reset the lock mode to this at the end of the hour.
p Trigger Reset Captcha Mode: If a trigger threshold was reached, reset the captcha mode to this at the end of the hour.
p Early 404: When a new thread is posted, delete any existing threads with less than #{early404Replies} replies beyond the first 1/#{early404Fraction} of threads.
p Disable .onion file posting: Prevent users posting through a .onion hidden service posting images.
p Blocked Countries: Block country codes (based on geo Ip data) from posting.
p Filters: Newline separated list of words or phrases to match in posts. Checks name, message, filenames, subject, and filenames.
p Strict Filtering: More aggressively match filters, by normalising the input compared against the filters.
p Filter Mode: What to do when a post matches a filter.
p Filter Auto Ban Duration: How long to automatically ban for when filter mode is set to ban. Input the duration in time format described in the #[a(href='#moderation') moderation section].