Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
deck-web
Composite Form
Commits
ad36e832
Commit
ad36e832
authored
8 months ago
by
Ильнур Табулдин
Browse files
Options
Download
Email Patches
Plain Diff
s
parent
81d8f83a
master
1.4.2.3
1.4.2.2
1.4.2.1
No related merge requests found
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
src/Form.php
+12
-2
src/Form.php
src/FormContainer.php
+5
-0
src/FormContainer.php
with
17 additions
and
2 deletions
+17
-2
src/Form.php
+
12
-
2
View file @
ad36e832
...
...
@@ -8,6 +8,12 @@ use yii\helpers\ArrayHelper;
abstract
class
Form
extends
Model
{
/**
* Для контейнера форм, необходимо ли оставить порядок для форм, которые пришли
* @var bool $keepOrder
*/
protected
$keepOrder
=
false
;
public
function
load
(
$data
,
$formName
=
null
):
bool
{
$formData
=
$data
;
...
...
@@ -51,8 +57,12 @@ abstract class Form extends Model
}
if
(
count
(
array_filter
(
array_keys
(
$data
[
$name
]),
'is_string'
))
===
0
)
{
$this
->
$name
=
[];
foreach
(
$data
[
$name
]
as
$ignored
)
{
$this
->
$name
[]
=
new
$form
->
className
();
foreach
(
$data
[
$name
]
as
$key
=>
$ignored
)
{
if
(
$this
->
keepOrder
)
{
$this
->
$name
[
$key
]
=
new
$form
->
className
();
}
else
{
$this
->
$name
[]
=
new
$form
->
className
();
}
}
$success
=
Model
::
loadMultiple
(
$this
->
$name
,
$data
[
$name
],
''
)
||
$success
;
}
else
{
...
...
This diff is collapsed.
Click to expand it.
src/FormContainer.php
+
5
-
0
View file @
ad36e832
...
...
@@ -7,6 +7,11 @@ abstract class FormContainer extends Form
protected
$internalForms
;
public
$forms
=
[];
public
function
__construct
(
bool
$keepOrder
=
false
,
array
$config
=
[])
{
$this
->
keepOrder
=
$keepOrder
;
}
public
function
load
(
$data
,
$formName
=
null
):
bool
{
$data
=
[
'forms'
=>
$data
];
...
...
This diff is collapsed.
Click to expand it.
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment
Menu
Projects
Groups
Snippets
Help