- Fix has_unique flag reading from field definition (was scanning fragment fields) - Implement duplicate validation in CLI and TUI backends - Add item counter update in Web backend after add/delete operations - Refactor Web JavaScript: remove global constants, use closure-based state per group - Store repeating group config in data-* attributes instead of global variables - Update documentation and examples with unique = true attribute - All backends now enforce unique items validation consistently
99 lines
2.1 KiB
TOML
99 lines
2.1 KiB
TOML
name = "Tracker Configuration with Arrays"
|
|
description = "Example showing RepeatingGroup arrays for multiple trackers"
|
|
display_mode = "complete"
|
|
|
|
# Header
|
|
[[elements]]
|
|
name = "main_header"
|
|
type = "section_header"
|
|
title = "🎯 Tracker Configuration"
|
|
border_top = true
|
|
border_bottom = true
|
|
|
|
# Introduction
|
|
[[elements]]
|
|
name = "intro"
|
|
type = "section"
|
|
content = "Configure multiple UDP and HTTP tracker listeners. You can add, edit, or delete trackers as needed."
|
|
|
|
# Tracker mode selection
|
|
[[elements]]
|
|
name = "tracker_mode"
|
|
type = "select"
|
|
prompt = "Tracker Mode"
|
|
required = true
|
|
options = [
|
|
{ value = "public", label = "Public Tracker" },
|
|
{ value = "private", label = "Private Tracker" },
|
|
]
|
|
default = "public"
|
|
order = 1
|
|
|
|
# UDP Trackers array
|
|
[[elements]]
|
|
name = "udp_trackers"
|
|
type = "repeatinggroup"
|
|
prompt = "UDP Tracker Listeners"
|
|
fragment = "fragments/tracker-udp-item.toml"
|
|
min_items = 0
|
|
max_items = 10
|
|
default_items = 1
|
|
unique = true
|
|
required = false
|
|
help = "Add UDP tracker listener addresses (must be unique). Standard BitTorrent port is 6969."
|
|
order = 2
|
|
|
|
# HTTP Trackers array
|
|
[[elements]]
|
|
name = "http_trackers"
|
|
type = "repeatinggroup"
|
|
prompt = "HTTP Tracker Listeners"
|
|
fragment = "fragments/tracker-http-item.toml"
|
|
min_items = 0
|
|
max_items = 10
|
|
default_items = 1
|
|
unique = true
|
|
required = false
|
|
help = "Add HTTP tracker listener addresses (must be unique). Standard HTTP port is 80, HTTPS is 443."
|
|
order = 3
|
|
|
|
# API Configuration section
|
|
[[elements]]
|
|
name = "api_header"
|
|
type = "section_header"
|
|
title = "📡 API Configuration"
|
|
border_top = true
|
|
border_bottom = true
|
|
|
|
# API Token
|
|
[[elements]]
|
|
name = "api_token"
|
|
type = "password"
|
|
prompt = "Admin API Token"
|
|
required = true
|
|
help = "Secure token for API authentication"
|
|
order = 4
|
|
|
|
# API Port
|
|
[[elements]]
|
|
name = "api_port"
|
|
type = "text"
|
|
prompt = "API Port"
|
|
placeholder = "1212"
|
|
default = "1212"
|
|
required = true
|
|
order = 5
|
|
|
|
# Summary
|
|
[[elements]]
|
|
name = "summary_header"
|
|
type = "section_header"
|
|
title = "✅ Configuration Summary"
|
|
border_top = true
|
|
|
|
[[elements]]
|
|
name = "summary"
|
|
type = "section"
|
|
content = "Review your tracker configuration above. Click submit to save settings."
|
|
order = 6
|