Skip to content

Commit 6466053

Browse files
committed
Merge branch '8.x' into 8.x-2.x
* 8.x: Formatting and PHPDoc MOC-813-85849 Issue with SBSYS component Added parallel composer install plugin Added more memory for Travis
2 parents be49857 + 197c833 commit 6466053

File tree

2 files changed

+31
-2
lines changed

2 files changed

+31
-2
lines changed

.travis.yml

+4
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,11 @@ sudo: false
55
php:
66
- 7.2
77

8+
before_install:
9+
- echo "memory_limit=2G" >> ~/.phpenv/versions/$(phpenv version-name)/etc/conf.d/travis.ini
10+
811
install:
12+
- composer global require hirak/prestissimo
913
- composer global require drush/drush:8.x-dev drupal/coder mglaman/drupal-check friendsoftwig/twigcs
1014
- export PATH="$HOME/.config/composer/vendor/bin:$PATH"
1115
- phpcs --config-set installed_paths ../../drupal/coder/coder_sniffer

modules/os2forms_sbsys/src/Element/WebformAttachmentSbsysXml.php

+27-2
Original file line numberDiff line numberDiff line change
@@ -179,14 +179,39 @@ protected static function getFirstValueByType($type, WebformSubmissionInterface
179179
$webform = $webform_submission->getWebform();
180180
$webform_elements = $webform->getElementsDecoded();
181181
foreach ($webform_elements as $key => $webform_element) {
182-
if ($webform_element['#type'] == $type) {
183-
$value = $webform_submission->getElementData($key);
182+
if ($el_key = self::getElementKeyByType($webform_element, $type, $key)) {
183+
$value = $webform_submission->getElementData($el_key);
184184
break;
185185
}
186186
}
187187
return $value;
188188
}
189189

190+
/**
191+
* Gets key of first element by field type.
192+
*
193+
* @param array $webform_element
194+
* The element of the webform.
195+
* @param string $type
196+
* Element value type.
197+
* @param string $el_key
198+
* Current element key.
199+
*
200+
* @return mixed
201+
* Element key.
202+
*/
203+
protected static function getElementKeyByType(array $webform_element, $type, $el_key) {
204+
foreach ($webform_element as $key => $value) {
205+
if ($key == '#type' && $value == $type) {
206+
return $el_key;
207+
}
208+
elseif (is_array($value)) {
209+
return self::getElementKeyByType($value, $type, $key);
210+
}
211+
}
212+
return FALSE;
213+
}
214+
190215
/**
191216
* Helper function the returns the list of the fields + values as an array.
192217
*

0 commit comments

Comments
 (0)