mirror of
https://github.com/processwire/processwire.git
synced 2025-08-13 18:24:57 +02:00
Fix issue processwire/processwire-issues#1011
This commit is contained in:
@@ -783,9 +783,10 @@ class InputfieldWrapper extends Inputfield implements \Countable, \IteratorAggre
|
|||||||
*/
|
*/
|
||||||
public function ___renderInputfield(Inputfield $inputfield, $renderValueMode = false) {
|
public function ___renderInputfield(Inputfield $inputfield, $renderValueMode = false) {
|
||||||
|
|
||||||
|
$inputfieldID = $inputfield->attr('id');
|
||||||
$collapsed = $inputfield->getSetting('collapsed');
|
$collapsed = $inputfield->getSetting('collapsed');
|
||||||
$ajaxInputfield = $collapsed == Inputfield::collapsedYesAjax ||
|
$ajaxInputfield = $collapsed == Inputfield::collapsedYesAjax || ($collapsed == Inputfield::collapsedBlankAjax && $inputfield->isEmpty());
|
||||||
($collapsed == Inputfield::collapsedBlankAjax && $inputfield->isEmpty());
|
$ajaxHiddenInput = "<input type='hidden' name='processInputfieldAjax[]' value='$inputfieldID' />";
|
||||||
$ajaxID = $this->wire('config')->ajax ? $this->wire('input')->get('renderInputfieldAjax') : '';
|
$ajaxID = $this->wire('config')->ajax ? $this->wire('input')->get('renderInputfieldAjax') : '';
|
||||||
$required = $inputfield->getSetting('required');
|
$required = $inputfield->getSetting('required');
|
||||||
|
|
||||||
@@ -795,6 +796,8 @@ class InputfieldWrapper extends Inputfield implements \Countable, \IteratorAggre
|
|||||||
$ajaxInputfield = false;
|
$ajaxInputfield = false;
|
||||||
if($collapsed == Inputfield::collapsedYesAjax) $inputfield->collapsed = Inputfield::collapsedYes;
|
if($collapsed == Inputfield::collapsedYesAjax) $inputfield->collapsed = Inputfield::collapsedYes;
|
||||||
if($collapsed == Inputfield::collapsedBlankAjax) $inputfield->collapsed = Inputfield::collapsedBlank;
|
if($collapsed == Inputfield::collapsedBlankAjax) $inputfield->collapsed = Inputfield::collapsedBlank;
|
||||||
|
// indicate to next processInput that this field can be processed
|
||||||
|
$inputfield->appendMarkup .= $ajaxHiddenInput;
|
||||||
}
|
}
|
||||||
|
|
||||||
$restoreValue = null; // value to restore, if we happen to modify it before render (renderValueMode only)
|
$restoreValue = null; // value to restore, if we happen to modify it before render (renderValueMode only)
|
||||||
@@ -824,8 +827,6 @@ class InputfieldWrapper extends Inputfield implements \Countable, \IteratorAggre
|
|||||||
|
|
||||||
if($ajaxInputfield) {
|
if($ajaxInputfield) {
|
||||||
|
|
||||||
$inputfieldID = $inputfield->attr('id');
|
|
||||||
|
|
||||||
if($ajaxID && $ajaxID == $inputfieldID) {
|
if($ajaxID && $ajaxID == $inputfieldID) {
|
||||||
// render ajax inputfield
|
// render ajax inputfield
|
||||||
$editable = $inputfield->editable();
|
$editable = $inputfield->editable();
|
||||||
@@ -833,7 +834,7 @@ class InputfieldWrapper extends Inputfield implements \Countable, \IteratorAggre
|
|||||||
echo $inputfield->renderValue();
|
echo $inputfield->renderValue();
|
||||||
} else {
|
} else {
|
||||||
echo $inputfield->render();
|
echo $inputfield->render();
|
||||||
echo "<input type='hidden' name='processInputfieldAjax[]' value='$inputfieldID' />";
|
echo $ajaxHiddenInput;
|
||||||
}
|
}
|
||||||
exit;
|
exit;
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user