<link rel="next" href="../validation_data/">
<link rel="icon" href="../../../../assets/default.favicon.ico">
- <meta name="generator" content="mkdocs-1.4.2, mkdocs-material-9.0.3">
+ <meta name="generator" content="mkdocs-1.4.3, mkdocs-material-9.1.15">
- <link rel="stylesheet" href="../../../../assets/stylesheets/main.6b71719e.min.css">
+ <link rel="stylesheet" href="../../../../assets/stylesheets/main.26e3688c.min.css">
- <link rel="stylesheet" href="../../../../assets/stylesheets/palette.2505c338.min.css">
+ <link rel="stylesheet" href="../../../../assets/stylesheets/palette.ecc896b0.min.css">
- <body dir="ltr" data-md-color-scheme="default" data-md-color-primary="teal" data-md-color-accent="">
+ <body dir="ltr" data-md-color-scheme="default" data-md-color-primary="teal" data-md-color-accent="indigo">
</div>
- <div data-md-component="outdated" hidden>
+ <div data-md-color-scheme="default" data-md-component="outdated" hidden>
</div>
-<header class="md-header" data-md-component="header">
+
+
+<header class="md-header md-header--shadow" data-md-component="header">
<nav class="md-header__inner md-grid" aria-label="Header">
<a href="../../../.." title="WoltLab Suite Documentation" class="md-header__button md-logo" aria-label="WoltLab Suite Documentation" data-md-component="logo">
</div>
</div>
+
+
<label class="md-header__button md-icon" for="__search">
<div class="md-search-result__meta">
Initializing search
</div>
- <ol class="md-search-result__list"></ol>
+ <ol class="md-search-result__list" role="presentation"></ol>
</div>
</div>
</div>
<a href="https://github.com/WoltLab/docs.woltlab.com/" title="Go to repository" class="md-source" data-md-component="source">
<div class="md-source__icon md-icon">
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Free 6.2.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2022 Fonticons, Inc.--><path d="M439.55 236.05 244 40.45a28.87 28.87 0 0 0-40.81 0l-40.66 40.63 51.52 51.52c27.06-9.14 52.68 16.77 43.39 43.68l49.66 49.66c34.23-11.8 61.18 31 35.47 56.69-26.49 26.49-70.21-2.87-56-37.34L240.22 199v121.85c25.3 12.54 22.26 41.85 9.08 55a34.34 34.34 0 0 1-48.55 0c-17.57-17.6-11.07-46.91 11.25-56v-123c-20.8-8.51-24.6-30.74-18.64-45L142.57 101 8.45 235.14a28.86 28.86 0 0 0 0 40.81l195.61 195.6a28.86 28.86 0 0 0 40.8 0l194.69-194.69a28.86 28.86 0 0 0 0-40.81z"/></svg>
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Free 6.4.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2023 Fonticons, Inc.--><path d="M439.55 236.05 244 40.45a28.87 28.87 0 0 0-40.81 0l-40.66 40.63 51.52 51.52c27.06-9.14 52.68 16.77 43.39 43.68l49.66 49.66c34.23-11.8 61.18 31 35.47 56.69-26.49 26.49-70.21-2.87-56-37.34L240.22 199v121.85c25.3 12.54 22.26 41.85 9.08 55a34.34 34.34 0 0 1-48.55 0c-17.57-17.6-11.07-46.91 11.25-56v-123c-20.8-8.51-24.6-30.74-18.64-45L142.57 101 8.45 235.14a28.86 28.86 0 0 0 0 40.81l195.61 195.6a28.86 28.86 0 0 0 40.8 0l194.69-194.69a28.86 28.86 0 0 0 0-40.81z"/></svg>
</div>
<div class="md-source__repository">
GitHub
<a href="https://github.com/WoltLab/docs.woltlab.com/" title="Go to repository" class="md-source" data-md-component="source">
<div class="md-source__icon md-icon">
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Free 6.2.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2022 Fonticons, Inc.--><path d="M439.55 236.05 244 40.45a28.87 28.87 0 0 0-40.81 0l-40.66 40.63 51.52 51.52c27.06-9.14 52.68 16.77 43.39 43.68l49.66 49.66c34.23-11.8 61.18 31 35.47 56.69-26.49 26.49-70.21-2.87-56-37.34L240.22 199v121.85c25.3 12.54 22.26 41.85 9.08 55a34.34 34.34 0 0 1-48.55 0c-17.57-17.6-11.07-46.91 11.25-56v-123c-20.8-8.51-24.6-30.74-18.64-45L142.57 101 8.45 235.14a28.86 28.86 0 0 0 0 40.81l195.61 195.6a28.86 28.86 0 0 0 40.8 0l194.69-194.69a28.86 28.86 0 0 0 0-40.81z"/></svg>
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Free 6.4.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2023 Fonticons, Inc.--><path d="M439.55 236.05 244 40.45a28.87 28.87 0 0 0-40.81 0l-40.66 40.63 51.52 51.52c27.06-9.14 52.68 16.77 43.39 43.68l49.66 49.66c34.23-11.8 61.18 31 35.47 56.69-26.49 26.49-70.21-2.87-56-37.34L240.22 199v121.85c25.3 12.54 22.26 41.85 9.08 55a34.34 34.34 0 0 1-48.55 0c-17.57-17.6-11.07-46.91 11.25-56v-123c-20.8-8.51-24.6-30.74-18.64-45L142.57 101 8.45 235.14a28.86 28.86 0 0 0 0 40.81l195.61 195.6a28.86 28.86 0 0 0 40.8 0l194.69-194.69a28.86 28.86 0 0 0 0-40.81z"/></svg>
</div>
<div class="md-source__repository">
GitHub
- <input class="md-nav__toggle md-toggle " data-md-toggle="__nav_2" type="checkbox" id="__nav_2" checked>
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2" checked>
- <label class="md-nav__link" for="__nav_2" tabindex="0" aria-expanded="true">
+ <label class="md-nav__link" for="__nav_2" id="__nav_2_label" tabindex="0">
PHP API
<span class="md-nav__icon md-icon"></span>
</label>
- <nav class="md-nav" aria-label="PHP API" data-md-level="1">
+ <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_2_label" aria-expanded="true">
<label class="md-nav__title" for="__nav_2">
<span class="md-nav__icon md-icon"></span>
PHP API
- <input class="md-nav__toggle md-toggle " data-md-toggle="__nav_2_5" type="checkbox" id="__nav_2_5" checked>
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_5" checked>
- <label class="md-nav__link" for="__nav_2_5" tabindex="0" aria-expanded="true">
+ <label class="md-nav__link" for="__nav_2_5" id="__nav_2_5_label" tabindex="0">
API
<span class="md-nav__icon md-icon"></span>
</label>
- <nav class="md-nav" aria-label="API" data-md-level="2">
+ <nav class="md-nav" data-md-level="2" aria-labelledby="__nav_2_5_label" aria-expanded="true">
<label class="md-nav__title" for="__nav_2_5">
<span class="md-nav__icon md-icon"></span>
API
- <input class="md-nav__toggle md-toggle " data-md-toggle="__nav_2_5_1" type="checkbox" id="__nav_2_5_1" >
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_5_1" >
- <label class="md-nav__link" for="__nav_2_5_1" tabindex="0" aria-expanded="false">
+ <label class="md-nav__link" for="__nav_2_5_1" id="__nav_2_5_1_label" tabindex="0">
Caches
<span class="md-nav__icon md-icon"></span>
</label>
- <nav class="md-nav" aria-label="Caches" data-md-level="3">
+ <nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_5_1_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_2_5_1">
<span class="md-nav__icon md-icon"></span>
Caches
- <input class="md-nav__toggle md-toggle " data-md-toggle="__nav_2_5_5" type="checkbox" id="__nav_2_5_5" checked>
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_5_5" checked>
- <label class="md-nav__link" for="__nav_2_5_5" tabindex="0" aria-expanded="true">
+ <label class="md-nav__link" for="__nav_2_5_5" id="__nav_2_5_5_label" tabindex="0">
Form Builder
<span class="md-nav__icon md-icon"></span>
</label>
- <nav class="md-nav" aria-label="Form Builder" data-md-level="3">
+ <nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_5_5_label" aria-expanded="true">
<label class="md-nav__title" for="__nav_2_5_5">
<span class="md-nav__icon md-icon"></span>
Form Builder
<li class="md-nav__item md-nav__item--active">
- <input class="md-nav__toggle md-toggle" data-md-toggle="toc" type="checkbox" id="__toc">
+ <input class="md-nav__toggle md-toggle" type="checkbox" id="__toc">
- <input class="md-nav__toggle md-toggle " data-md-toggle="__nav_3" type="checkbox" id="__nav_3" >
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_3" >
- <label class="md-nav__link" for="__nav_3" tabindex="0" aria-expanded="false">
+ <label class="md-nav__link" for="__nav_3" id="__nav_3_label" tabindex="0">
Languages, Templates & CSS
<span class="md-nav__icon md-icon"></span>
</label>
- <nav class="md-nav" aria-label="Languages, Templates & CSS" data-md-level="1">
+ <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_3_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_3">
<span class="md-nav__icon md-icon"></span>
Languages, Templates & CSS
+ <li class="md-nav__item">
+ <a href="../../../../view/template-modifiers/" class="md-nav__link">
+ Template Modifiers
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
<li class="md-nav__item">
<a href="../../../../view/template-plugins/" class="md-nav__link">
Template Plugins
- <input class="md-nav__toggle md-toggle " data-md-toggle="__nav_4" type="checkbox" id="__nav_4" >
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_4" >
- <label class="md-nav__link" for="__nav_4" tabindex="0" aria-expanded="false">
+ <label class="md-nav__link" for="__nav_4" id="__nav_4_label" tabindex="0">
TypeScript and JavaScript API
<span class="md-nav__icon md-icon"></span>
</label>
- <nav class="md-nav" aria-label="TypeScript and JavaScript API" data-md-level="1">
+ <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_4_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_4">
<span class="md-nav__icon md-icon"></span>
TypeScript and JavaScript API
- <input class="md-nav__toggle md-toggle " data-md-toggle="__nav_4_3" type="checkbox" id="__nav_4_3" >
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_4_3" >
- <label class="md-nav__link" for="__nav_4_3" tabindex="0" aria-expanded="false">
+ <label class="md-nav__link" for="__nav_4_3" id="__nav_4_3_label" tabindex="0">
Components
<span class="md-nav__icon md-icon"></span>
</label>
- <nav class="md-nav" aria-label="Components" data-md-level="2">
+ <nav class="md-nav" data-md-level="2" aria-labelledby="__nav_4_3_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_4_3">
<span class="md-nav__icon md-icon"></span>
Components
- <input class="md-nav__toggle md-toggle " data-md-toggle="__nav_4_4" type="checkbox" id="__nav_4_4" >
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_4_4" >
- <label class="md-nav__link" for="__nav_4_4" tabindex="0" aria-expanded="false">
+ <label class="md-nav__link" for="__nav_4_4" id="__nav_4_4_label" tabindex="0">
New API
<span class="md-nav__icon md-icon"></span>
</label>
- <nav class="md-nav" aria-label="New API" data-md-level="2">
+ <nav class="md-nav" data-md-level="2" aria-labelledby="__nav_4_4_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_4_4">
<span class="md-nav__icon md-icon"></span>
New API
- <input class="md-nav__toggle md-toggle " data-md-toggle="__nav_5" type="checkbox" id="__nav_5" >
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_5" >
- <label class="md-nav__link" for="__nav_5" tabindex="0" aria-expanded="false">
+ <label class="md-nav__link" for="__nav_5" id="__nav_5_label" tabindex="0">
Package Components
<span class="md-nav__icon md-icon"></span>
</label>
- <nav class="md-nav" aria-label="Package Components" data-md-level="1">
+ <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_5_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_5">
<span class="md-nav__icon md-icon"></span>
Package Components
- <input class="md-nav__toggle md-toggle " data-md-toggle="__nav_5_2" type="checkbox" id="__nav_5_2" >
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_5_2" >
- <label class="md-nav__link" for="__nav_5_2" tabindex="0" aria-expanded="false">
+ <label class="md-nav__link" for="__nav_5_2" id="__nav_5_2_label" tabindex="0">
PIPs
<span class="md-nav__icon md-icon"></span>
</label>
- <nav class="md-nav" aria-label="PIPs" data-md-level="2">
+ <nav class="md-nav" data-md-level="2" aria-labelledby="__nav_5_2_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_5_2">
<span class="md-nav__icon md-icon"></span>
PIPs
- <input class="md-nav__toggle md-toggle " data-md-toggle="__nav_6" type="checkbox" id="__nav_6" >
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_6" >
- <label class="md-nav__link" for="__nav_6" tabindex="0" aria-expanded="false">
+ <label class="md-nav__link" for="__nav_6" id="__nav_6_label" tabindex="0">
Migration
<span class="md-nav__icon md-icon"></span>
</label>
- <nav class="md-nav" aria-label="Migration" data-md-level="1">
+ <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_6_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_6">
<span class="md-nav__icon md-icon"></span>
Migration
- <input class="md-nav__toggle md-toggle " data-md-toggle="__nav_6_1" type="checkbox" id="__nav_6_1" >
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_6_1" >
- <label class="md-nav__link" for="__nav_6_1" tabindex="0" aria-expanded="false">
+ <label class="md-nav__link" for="__nav_6_1" id="__nav_6_1_label" tabindex="0">
From WoltLab Suite 5.5
<span class="md-nav__icon md-icon"></span>
</label>
- <nav class="md-nav" aria-label="From WoltLab Suite 5.5" data-md-level="2">
+ <nav class="md-nav" data-md-level="2" aria-labelledby="__nav_6_1_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_6_1">
<span class="md-nav__icon md-icon"></span>
From WoltLab Suite 5.5
- <input class="md-nav__toggle md-toggle " data-md-toggle="__nav_6_2" type="checkbox" id="__nav_6_2" >
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_6_2" >
- <label class="md-nav__link" for="__nav_6_2" tabindex="0" aria-expanded="false">
+ <label class="md-nav__link" for="__nav_6_2" id="__nav_6_2_label" tabindex="0">
From WoltLab Suite 5.4
<span class="md-nav__icon md-icon"></span>
</label>
- <nav class="md-nav" aria-label="From WoltLab Suite 5.4" data-md-level="2">
+ <nav class="md-nav" data-md-level="2" aria-labelledby="__nav_6_2_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_6_2">
<span class="md-nav__icon md-icon"></span>
From WoltLab Suite 5.4
- <input class="md-nav__toggle md-toggle " data-md-toggle="__nav_6_3" type="checkbox" id="__nav_6_3" >
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_6_3" >
- <label class="md-nav__link" for="__nav_6_3" tabindex="0" aria-expanded="false">
+ <label class="md-nav__link" for="__nav_6_3" id="__nav_6_3_label" tabindex="0">
From WoltLab Suite 5.3
<span class="md-nav__icon md-icon"></span>
</label>
- <nav class="md-nav" aria-label="From WoltLab Suite 5.3" data-md-level="2">
+ <nav class="md-nav" data-md-level="2" aria-labelledby="__nav_6_3_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_6_3">
<span class="md-nav__icon md-icon"></span>
From WoltLab Suite 5.3
- <input class="md-nav__toggle md-toggle " data-md-toggle="__nav_6_4" type="checkbox" id="__nav_6_4" >
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_6_4" >
- <label class="md-nav__link" for="__nav_6_4" tabindex="0" aria-expanded="false">
+ <label class="md-nav__link" for="__nav_6_4" id="__nav_6_4_label" tabindex="0">
From WoltLab Suite 5.2
<span class="md-nav__icon md-icon"></span>
</label>
- <nav class="md-nav" aria-label="From WoltLab Suite 5.2" data-md-level="2">
+ <nav class="md-nav" data-md-level="2" aria-labelledby="__nav_6_4_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_6_4">
<span class="md-nav__icon md-icon"></span>
From WoltLab Suite 5.2
- <input class="md-nav__toggle md-toggle " data-md-toggle="__nav_6_5" type="checkbox" id="__nav_6_5" >
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_6_5" >
- <label class="md-nav__link" for="__nav_6_5" tabindex="0" aria-expanded="false">
+ <label class="md-nav__link" for="__nav_6_5" id="__nav_6_5_label" tabindex="0">
From WoltLab Suite 3.1
<span class="md-nav__icon md-icon"></span>
</label>
- <nav class="md-nav" aria-label="From WoltLab Suite 3.1" data-md-level="2">
+ <nav class="md-nav" data-md-level="2" aria-labelledby="__nav_6_5_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_6_5">
<span class="md-nav__icon md-icon"></span>
From WoltLab Suite 3.1
- <input class="md-nav__toggle md-toggle " data-md-toggle="__nav_6_6" type="checkbox" id="__nav_6_6" >
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_6_6" >
- <label class="md-nav__link" for="__nav_6_6" tabindex="0" aria-expanded="false">
+ <label class="md-nav__link" for="__nav_6_6" id="__nav_6_6_label" tabindex="0">
From WoltLab Suite 3.0
<span class="md-nav__icon md-icon"></span>
</label>
- <nav class="md-nav" aria-label="From WoltLab Suite 3.0" data-md-level="2">
+ <nav class="md-nav" data-md-level="2" aria-labelledby="__nav_6_6_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_6_6">
<span class="md-nav__icon md-icon"></span>
From WoltLab Suite 3.0
- <input class="md-nav__toggle md-toggle " data-md-toggle="__nav_6_7" type="checkbox" id="__nav_6_7" >
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_6_7" >
- <label class="md-nav__link" for="__nav_6_7" tabindex="0" aria-expanded="false">
+ <label class="md-nav__link" for="__nav_6_7" id="__nav_6_7_label" tabindex="0">
From WCF 2.1
<span class="md-nav__icon md-icon"></span>
</label>
- <nav class="md-nav" aria-label="From WCF 2.1" data-md-level="2">
+ <nav class="md-nav" data-md-level="2" aria-labelledby="__nav_6_7_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_6_7">
<span class="md-nav__icon md-icon"></span>
From WCF 2.1
- <input class="md-nav__toggle md-toggle " data-md-toggle="__nav_7" type="checkbox" id="__nav_7" >
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_7" >
- <label class="md-nav__link" for="__nav_7" tabindex="0" aria-expanded="false">
+ <label class="md-nav__link" for="__nav_7" id="__nav_7_label" tabindex="0">
Tutorials
<span class="md-nav__icon md-icon"></span>
</label>
- <nav class="md-nav" aria-label="Tutorials" data-md-level="1">
+ <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_7_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_7">
<span class="md-nav__icon md-icon"></span>
Tutorials
- <input class="md-nav__toggle md-toggle " data-md-toggle="__nav_7_1" type="checkbox" id="__nav_7_1" >
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_7_1" >
- <label class="md-nav__link" for="__nav_7_1" tabindex="0" aria-expanded="false">
+ <label class="md-nav__link" for="__nav_7_1" id="__nav_7_1_label" tabindex="0">
Tutorial Series
<span class="md-nav__icon md-icon"></span>
</label>
- <nav class="md-nav" aria-label="Tutorial Series" data-md-level="2">
+ <nav class="md-nav" data-md-level="2" aria-labelledby="__nav_7_1_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_7_1">
<span class="md-nav__icon md-icon"></span>
Tutorial Series
-
<h1 id="form-builder-fields">Form Builder Fields<a class="headerlink" href="#form-builder-fields" title="Permanent link">#</a></h1>
<h2 id="abstract-form-fields">Abstract Form Fields<a class="headerlink" href="#abstract-form-fields" title="Permanent link">#</a></h2>
<p>The following form field classes cannot be instantiated directly because they are abstract, but they can/must be used when creating own form field classes. </p>
These methods do <strong>not</strong>, however, restrict the number of text rows that can be entered.</p>
<h3 id="multipleselectionformfield"><code>MultipleSelectionFormField</code><a class="headerlink" href="#multipleselectionformfield" title="Permanent link">#</a></h3>
<p><code>MultipleSelectionFormField</code> is a form fields that allows the selection of multiple options out of a predefined list of available options.
-The class implements <code>IAttributeFormField</code>, <code>ICssClassFormField</code>, <code>IFilterableSelectionFormField</code>, <code>IImmutableFormField</code>, and <code>INullableFormField</code>.
-If the field is nullable and no option is selected, <code>null</code> is returned as the save value.</p>
+The class implements <code>IAttributeFormField</code>, <code>ICssClassFormField</code>, <code>IFilterableSelectionFormField</code>, and <code>IImmutableFormField</code>.</p>
<h3 id="radiobuttonformfield"><code>RadioButtonFormField</code><a class="headerlink" href="#radiobuttonformfield" title="Permanent link">#</a></h3>
<p><code>RadioButtonFormField</code> is a form fields that allows the selection of a single option out of a predefined list of available options using radiobuttons.
The class implements <code>IAttributeFormField</code>, <code>ICssClassFormField</code>, <code>IImmutableFormField</code>, and <code>ISelectionFormField</code>.</p>
<h3 id="uploadformfield"><code>UploadFormField</code><a class="headerlink" href="#uploadformfield" title="Permanent link">#</a></h3>
<p><code>UploadFormField</code> is a form field that allows uploading files by the user.</p>
<p><code>UploadFormField</code> objects register a <a href="../validation_data/#customformfielddataprocessor">custom form field data processor</a> to add the array of <code>wcf\system\file\upload\UploadFile\UploadFile</code> into the <code>$parameters</code> array directly using the object property as the array key. Also it registers the removed files as an array of <code>wcf\system\file\upload\UploadFile\UploadFile</code> into the <code>$parameters</code> array directly using the object property with the suffix <code>_removedFiles</code> as the array key. </p>
-<p>The field supports additional settings:
-- <code>imageOnly($imageOnly = true)</code> and <code>isImageOnly()</code> can be used to ensure that the uploaded files are only images.
-- <code>allowSvgImage($allowSvgImages = true)</code> and <code>svgImageAllowed()</code> can be used to allow SVG images, if the image only mode is enabled (otherwise, the method will throw an exception). By default, SVG images are not allowed.</p>
+<p>The field supports additional settings:</p>
+<ul>
+<li><code>imageOnly($imageOnly = true)</code> and <code>isImageOnly()</code> can be used to ensure that the uploaded files are only images.</li>
+<li><code>allowSvgImage($allowSvgImages = true)</code> and <code>svgImageAllowed()</code> can be used to allow SVG images, if the image only mode is enabled (otherwise, the method will throw an exception). By default, SVG images are not allowed.</li>
+</ul>
<h4 id="provide-value-from-database-object">Provide value from database object<a class="headerlink" href="#provide-value-from-database-object" title="Permanent link">#</a></h4>
<p>To provide values from a database object, you should implement the method <code>get{$objectProperty}UploadFileLocations()</code> to your database object class. This method must return an array of strings with the locations of the files.</p>
<h4 id="process-files">Process files<a class="headerlink" href="#process-files" title="Permanent link">#</a></h4>
<small>
Last update:
- 2022-10-10
+ 2023-03-06
</small>
</div>
<div class="md-dialog__inner md-typeset"></div>
</div>
- <script id="__config" type="application/json">{"base": "../../../..", "features": ["navigation.tracking"], "search": "../../../../assets/javascripts/workers/search.e5c33ebb.min.js", "translations": {"clipboard.copied": "Copied to clipboard", "clipboard.copy": "Copy to clipboard", "search.result.more.one": "1 more on this page", "search.result.more.other": "# more on this page", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents", "search.result.placeholder": "Type to start searching", "search.result.term.missing": "Missing", "select.version": "Select version"}, "version": {"provider": "mike"}}</script>
+ <script id="__config" type="application/json">{"base": "../../../..", "features": ["navigation.tracking"], "search": "../../../../assets/javascripts/workers/search.208ed371.min.js", "translations": {"clipboard.copied": "Copied to clipboard", "clipboard.copy": "Copy to clipboard", "search.result.more.one": "1 more on this page", "search.result.more.other": "# more on this page", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents", "search.result.placeholder": "Type to start searching", "search.result.term.missing": "Missing", "select.version": "Select version"}, "version": {"provider": "mike"}}</script>
- <script src="../../../../assets/javascripts/bundle.ba449ae6.min.js"></script>
+ <script src="../../../../assets/javascripts/bundle.b4d07000.min.js"></script>
</body>