(Grav GitSync) Automatic Commit from GitSync

This commit is contained in:
GitSync
2026-06-14 00:27:27 +00:00
parent a2920f812d
commit 3c1bfda80f
2933 changed files with 491625 additions and 0 deletions
+437
View File
@@ -0,0 +1,437 @@
name: Form
slug: form
type: plugin
version: 9.1.5
description: Enables forms handling and processing
icon: check-square
author:
name: Team Grav
email: devs@getgrav.org
url: https://getgrav.org
keywords: plugin, form
homepage: https://github.com/getgrav/grav-plugin-form
bugs: https://github.com/getgrav/grav-plugin-form/issues
license: MIT
compatibility:
grav: ['1.7', '2.0']
dependencies:
- { name: grav, version: ">=1.7.51" }
- { name: php, version: ">=8.1" }
form:
validation: strict
fields:
enabled:
type: hidden
label: PLUGIN_ADMIN.PLUGIN_STATUS
highlight: 1
default: 0
options:
1: PLUGIN_ADMIN.ENABLED
0: PLUGIN_ADMIN.DISABLED
validate:
type: bool
general:
type: section
title: PLUGIN_FORM.GENERAL
fields:
debug:
type: toggle
label: Debug
highlight: 1
default: 0
options:
1: PLUGIN_ADMIN.ENABLED
0: PLUGIN_ADMIN.DISABLED
validate:
type: bool
built_in_css:
type: toggle
label: PLUGIN_FORM.USE_BUILT_IN_CSS
highlight: 1
default: 1
options:
1: PLUGIN_ADMIN.ENABLED
0: PLUGIN_ADMIN.DISABLED
validate:
type: bool
inline_css:
type: toggle
label: PLUGIN_FORM.USE_INLINE_CSS
highlight: 1
default: 1
options:
1: PLUGIN_ADMIN.ENABLED
0: PLUGIN_ADMIN.DISABLED
validate:
type: bool
refresh_prevention:
type: toggle
label: PLUGIN_FORM.REFRESH_PREVENTION
help: PLUGIN_FORM.REFRESH_PREVENTION_HELP
highlight: 1
default: 0
options:
1: PLUGIN_ADMIN.ENABLED
0: PLUGIN_ADMIN.DISABLED
validate:
type: bool
client_side_validation:
type: toggle
label: PLUGIN_FORM.CLIENT_SIDE_VALIDATION
help: PLUGIN_FORM.CLIENT_SIDE_VALIDATION_HELP
highlight: 1
default: 1
options:
1: PLUGIN_ADMIN.ENABLED
0: PLUGIN_ADMIN.DISABLED
validate:
type: bool
inline_errors:
type: toggle
label: PLUGIN_FORM.INLINE_ERRORS
help: PLUGIN_FORM.INLINE_ERRORS_HELP
highlight: 0
default: 0
options:
1: PLUGIN_ADMIN.ENABLED
0: PLUGIN_ADMIN.DISABLED
validate:
type: bool
modular_form_fix:
type: toggle
label: PLUGIN_FORM.MODULAR_FORM_FIX
help: PLUGIN_FORM.MODULAR_FORM_FIX_HELP
highlight: 1
default: 1
options:
1: PLUGIN_ADMIN.ENABLED
0: PLUGIN_ADMIN.DISABLED
validate:
type: bool
files:
type: section
title: PLUGIN_FORM.FILES
fields:
files.multiple:
type: toggle
label: PLUGIN_FORM.ALLOW_MULTIPLE
help: PLUGIN_FORM.ALLOW_MULTIPLE_HELP
highlight: 1
default: 0
options:
1: PLUGIN_ADMIN.ENABLED
0: PLUGIN_ADMIN.DISABLED
validate:
type: bool
files.limit:
type: text
size: x-small
label: PLUGIN_FORM.LIMIT
help: PLUGIN_FORM.LIMIT_HELP
default: 10
validate:
type: number
min: 1
files.destination:
type: text
size: large
label: PLUGIN_FORM.DESTINATION
help: PLUGIN_FORM.DESTINATION_HELP
default: "@self"
files.accept:
type: selectize
size: large
label: PLUGIN_FORM.ACCEPT
help: PLUGIN_FORM.ACCEPT_HELP
classes: fancy
default:
- image/*
validate:
type: commalist
files.filesize:
type: text
label: PLUGIN_FORM.FILESIZE
help: PLUGIN_FORM.FILESIZE_HELP
size: x-small
default: 5
validate:
type: number
min: 0
files.avoid_overwriting:
type: toggle
label: PLUGIN_FORM.AVOID_OVERWRITING
help: PLUGIN_FORM.AVOID_OVERWRITING_HELP
highlight: 0
default: 0
options:
1: PLUGIN_ADMIN.ENABLED
0: PLUGIN_ADMIN.DISABLED
validate:
type: bool
files.random_name:
type: toggle
label: PLUGIN_FORM.RANDOM_NAME
help: PLUGIN_FORM.RANDOM_NAME_HELP
highlight: 0
default: 0
options:
1: PLUGIN_ADMIN.ENABLED
0: PLUGIN_ADMIN.DISABLED
validate:
type: bool
recaptcha:
type: section
title: PLUGIN_FORM.RECAPTCHA
fields:
recaptcha.version:
type: select
label: PLUGIN_FORM.RECAPTCHA_VERSION
default: 2-checkbox
options:
2-checkbox: PLUGIN_FORM.RECAPTCHA_VERSION_V2_CHECKBOX
2-invisible: PLUGIN_FORM.RECAPTCHA_VERSION_V2_INVISIBLE
3: PLUGIN_FORM.RECAPTCHA_VERSION_V3_LATEST
recaptcha.theme:
type: select
label: PLUGIN_FORM.RECAPTCHA_THEME
default: light
options:
light: PLUGIN_FORM.RECAPTCHA_THEME_LIGHT
dark: PLUGIN_FORM.RECAPTCHA_THEME_DARK
recaptcha.site_key:
recaptcha.site_key:
type: text
label: PLUGIN_FORM.RECAPTCHA_SITE_KEY
help: PLUGIN_FORM.RECAPTCHA_SITE_KEY_HELP
default: ""
recaptcha.secret_key:
type: text
label: PLUGIN_FORM.RECAPTCHA_SECRET_KEY
help: PLUGIN_FORM.RECAPTCHA_SECRET_KEY_HELP
default: ""
turnstile_captcha:
type: section
title: PLUGIN_FORM.TURNSTILE_CAPTCHA
fields:
turnstile.theme:
type: select
label: PLUGIN_FORM.RECAPTCHA_THEME
default: light
options:
light: PLUGIN_FORM.RECAPTCHA_THEME_LIGHT
dark: PLUGIN_FORM.RECAPTCHA_THEME_DARK
turnstile.site_key:
type: text
label: PLUGIN_FORM.RECAPTCHA_SITE_KEY
help: PLUGIN_FORM.RECAPTCHA_SITE_KEY_HELP
default: ""
turnstile.secret_key:
type: text
label: PLUGIN_FORM.RECAPTCHA_SECRET_KEY
help: PLUGIN_FORM.RECAPTCHA_SECRET_KEY_HELP
default: ""
cap_captcha:
type: section
title: Cap (Proof-of-Work) Captcha
fields:
cap.mode:
type: select
label: Default Mode
help: "Invisible solves proof-of-work in the background on submit. Checkbox shows the cap.js widget and requires a user click."
default: invisible
options:
invisible: Invisible (auto-solve on submit)
checkbox: Checkbox widget
cap.storage:
type: select
label: Token Storage Backend
help: "Where to persist outstanding challenges and issued tokens. Grav cache is recommended for production."
default: grav-cache
options:
grav-cache: Grav Cache (PSR-16)
filesystem: Filesystem (user/data/cap)
cap.challenge_count:
type: number
label: Challenge Count
help: "Number of sub-challenges per captcha. Higher = more work for client."
default: 50
size: small
validate:
min: 1
max: 200
type: number
cap.challenge_size:
type: number
label: Salt Size
help: "Length of each sub-challenge salt in hex characters."
default: 32
size: small
validate:
min: 8
max: 64
type: number
cap.challenge_difficulty:
type: number
label: Difficulty
help: "Target hex-prefix length each SHA-256 solution must match. Higher = slower solve."
default: 4
size: small
validate:
min: 1
max: 8
type: number
cap.expires_ms:
type: number
label: Challenge TTL (ms)
help: "How long an issued challenge remains redeemable."
default: 600000
size: small
validate:
min: 30000
type: number
basic_captcha:
type: section
title: PLUGIN_FORM.BASIC_CAPTCHA
fields:
basic_captcha.image.width:
type: number
label: PLUGIN_FORM.BASIC_CAPTCHA_BOX_WIDTH
default: 135
append: px
size: small
validate:
min: 100
max: 500
type: number
basic_captcha.image.height:
type: number
label: PLUGIN_FORM.BASIC_CAPTCHA_BOX_HEIGHT
default: 40
append: px
size: small
validate:
min: 30
max: 200
type: number
basic_captcha.chars.font:
type: select
label: PLUGIN_FORM.BASIC_CAPTCHA_FONT
default: zxx-noise.ttf
options:
"zxx-noise.ttf": zxx-Noise
"zxx-xed.ttf": zxx-Xed
"zxx-camo.ttf": zxx-Camo
"zxx-sans.ttf": zxx-Sans
basic_captcha.chars.size:
type: range
label: PLUGIN_FORM.BASIC_CAPTCHA_SIZE
default: 24
append: px
validate:
min: 12
max: 32
step: 2
basic_captcha.chars.bg:
type: colorpicker
size: small
label: PLUGIN_FORM.BASIC_CAPTCHA_BG_COLOR
default: "#ffffff"
basic_captcha.chars.text:
type: colorpicker
size: small
label: PLUGIN_FORM.BASIC_CAPTCHA_TEXT_COLOR
default: "#000000"
basic_captcha.chars.start_x:
type: number
label: PLUGIN_FORM.BASIC_CAPTCHA_START_X
default: 5
append: px
size: small
validate:
min: 0
type: number
basic_captcha.chars.start_y:
type: number
label: PLUGIN_FORM.BASIC_CAPTCHA_START_Y
default: 30
append: px
size: small
validate:
min: 0
type: number
basic_captcha.type:
type: elements
label: PLUGIN_FORM.BASIC_CAPTCHA_TYPE
default: "characters"
size: medium
options:
characters: Random Characters
math: Math Puzzle
fields:
characters:
type: element
fields:
basic_captcha.chars.length:
type: range
label: PLUGIN_FORM.BASIC_CAPTCHA_LENGTH
default: 6
validate:
min: 4
max: 12
append: characters
math:
type: element
fields:
basic_captcha.math.min:
type: number
label: PLUGIN_FORM.BASIC_CAPTCHA_MATH_MIN
default: 1
size: small
validate:
min: 0
type: number
basic_captcha.math.max:
type: number
label: PLUGIN_FORM.BASIC_CAPTCHA_MATH_MAX
default: 10
size: small
validate:
min: 1
type: number
basic_captcha.math.operators:
type: selectize
selectize:
options:
- value: "+"
text: "+ Addition"
- value: "-"
text: "- Subtraction"
- value: "*"
text: "x Multiplication"
- value: "/"
text: "/ Division"
label: PLUGIN_FORM.BASIC_CAPTCHA_MATH_OPERATORS
validate:
type: commalist