1
0
mirror of https://github.com/processwire/processwire.git synced 2025-08-24 07:13:08 +02:00

Add feature request processwire/processwire-requests#346 - add support for Inputfield::collapsedNoLocked and add a separate collapsedBlankLocked constant

This commit is contained in:
Ryan Cramer
2022-03-25 13:58:05 -04:00
parent 415969e8bf
commit af451350a4
7 changed files with 32 additions and 12 deletions

View File

@@ -344,7 +344,7 @@ class InputfieldPage extends Inputfield implements ConfigurableModule {
public function ___getSelectablePages(Page $page) {
$pages = $this->wire()->pages;
$lockedModes = array(Inputfield::collapsedNoLocked, Inputfield::collapsedYesLocked);
$lockedModes = array(Inputfield::collapsedNoLocked, Inputfield::collapsedYesLocked, Inputfield::collapsedBlankLocked);
$statusUnder = $this->allowUnpub ? Page::statusTrash : Page::statusUnpublished;
$children = null;
$templateIDs = $this->getTemplateIDs(true);

View File

@@ -135,7 +135,7 @@ class InputfieldText extends Inputfield {
}
if($this->initValue) {
if(!strlen($attrs['value'])) {
if(!strlen("$attrs[value]")) {
$attrs['value'] = $this->initValue;
}
}

View File

@@ -829,6 +829,8 @@ class ProcessPageAdd extends Process implements ConfigurableModule, WirePageEdit
$pages = $this->wire()->pages;
$fields = $this->wire()->fields;
$user = $this->wire()->user;
$lockedStates = array(Inputfield::collapsedNoLocked, Inputfield::collapsedYesLocked, Inputfield::collapsedBlankLocked);
/** @var InputfieldForm $form */
$form = $modules->get('InputfieldForm');
@@ -847,7 +849,7 @@ class ProcessPageAdd extends Process implements ConfigurableModule, WirePageEdit
$_field = $this->template->fieldgroup->getField($field->id, true); // get in context of fieldgroup
if($_field) $field = $_field;
}
if(in_array($field->collapsed, array(Inputfield::collapsedNoLocked, Inputfield::collapsedYesLocked))) continue;
if(in_array($field->collapsed, $lockedStates)) continue;
$inputfield = $field->getInputfield($page);
if($inputfield) {
if($this->template && $this->template->noLang) $inputfield->useLanguages = false;
@@ -861,7 +863,7 @@ class ProcessPageAdd extends Process implements ConfigurableModule, WirePageEdit
/** @var Field $field */
$field = $this->template->fieldgroup->getField('title', true);
if($field) {
if(in_array($field->collapsed, array(Inputfield::collapsedNoLocked, Inputfield::collapsedYesLocked))) {
if(in_array($field->collapsed, $lockedStates)) {
// skip it
} else {
$inputfield = $field->getInputfield($page);

View File

@@ -912,6 +912,7 @@ class ProcessPageEdit extends Process implements WirePageEditor, ConfigurableMod
$skipCollapsed = array(
Inputfield::collapsedHidden,
Inputfield::collapsedNoLocked,
Inputfield::collapsedBlankLocked,
Inputfield::collapsedYesLocked,
);
$collapsed = $inputfield->getSetting('collapsed');