FIX accepting draft pages in parcours pages list in the optionSelectcontrol

This commit is contained in:
Nonimart 2026-04-03 11:26:19 +02:00
parent 6d33265a01
commit ef64310b51
4 changed files with 28 additions and 32 deletions

View File

@ -1 +1 @@
<?php return array('dependencies' => array('wp-block-editor', 'wp-blocks', 'wp-components', 'wp-data', 'wp-element', 'wp-html-entities', 'wp-i18n'), 'version' => '62bbe4b1522ccd65faf8');
<?php return array('dependencies' => array('wp-block-editor', 'wp-blocks', 'wp-components', 'wp-data', 'wp-element', 'wp-html-entities', 'wp-i18n'), 'version' => 'e574e62cbddff5258e34');

View File

@ -41,14 +41,14 @@ function OptionsSelectControl({
relatedPostId
}) {
let [postOptions, setPostOptions] = (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.useState)(null);
const lang = (0,_utilities_js__WEBPACK_IMPORTED_MODULE_5__.getAdminLanguageFromCookie)("wp-wpml_current_language");
const lang = (0,_utilities_js__WEBPACK_IMPORTED_MODULE_5__.getAdminLanguageFromCookie)('wp-wpml_current_language');
const optionPages = (0,_wordpress_data__WEBPACK_IMPORTED_MODULE_6__.useSelect)(select => {
let query = {
status: "publish",
status: ['draft', 'publish'],
per_page: -1,
lang: lang
};
return select("core").getEntityRecords("postType", "parcours", query);
return select('core').getEntityRecords('postType', 'parcours', query);
}, [lang]);
const editUrl = relatedPostId ? `${window.location.origin}/wp-admin/post.php?post=${relatedPostId}&action=edit` : null;
function handleRelatedPostChange(postId) {
@ -61,7 +61,7 @@ function OptionsSelectControl({
if (optionPages && optionPages.length > 0) {
options.push({
value: 0,
label: "Selectionnez une page"
label: 'Selectionnez une page'
});
optionPages.forEach(page => {
options.push({
@ -72,7 +72,7 @@ function OptionsSelectControl({
} else {
options.push({
value: 0,
label: "Pas encore de questions..."
label: 'Pas encore de questions...'
});
}
return options;
@ -83,15 +83,15 @@ function OptionsSelectControl({
setPostOptions(buildSelectOptions(optionPages));
}
}, [optionPages]);
let panelTitle = "Post Parcours Reliée";
let panelTitle = 'Post Parcours Reliée';
return (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)(_wordpress_block_editor__WEBPACK_IMPORTED_MODULE_2__.InspectorControls, null, (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)(_wordpress_components__WEBPACK_IMPORTED_MODULE_3__.PanelBody, {
title: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)("Étape parcours", "homegrade-blocks")
title: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Étape parcours', 'homegrade-blocks')
}, postOptions && (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)(_wordpress_components__WEBPACK_IMPORTED_MODULE_3__.ComboboxControl, {
label: panelTitle,
value: relatedPostId,
options: postOptions,
onChange: e => handleRelatedPostChange(e)
}), relatedPostId && (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)(_wordpress_components__WEBPACK_IMPORTED_MODULE_3__.Tip, null, (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)("Pour modifier le contenu de la question affichée ici, rendez-vous dans la fiche question correspondante.", "homegrade-blocks")), relatedPostId && editUrl && (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)("a", {
}), relatedPostId && (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)(_wordpress_components__WEBPACK_IMPORTED_MODULE_3__.Tip, null, (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Pour modifier le contenu de la question affichée ici, rendez-vous dans la fiche question correspondante.', 'homegrade-blocks')), relatedPostId && editUrl && (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)("a", {
href: editUrl,
className: "edit-question-button"
}, "\xC9diter le post")));

File diff suppressed because one or more lines are too long

View File

@ -1,29 +1,25 @@
import { __ } from "@wordpress/i18n";
import { InspectorControls } from "@wordpress/block-editor";
import {
PanelBody,
SelectControl,
ComboboxControl,
} from "@wordpress/components";
import "./editor.scss";
import { Tip } from "@wordpress/components";
import { getAdminLanguageFromCookie } from "../../utilities.js";
import { useSelect } from "@wordpress/data";
import { useEffect, useState } from "@wordpress/element";
import { decodeEntities } from "@wordpress/html-entities";
import { __ } from '@wordpress/i18n';
import { InspectorControls } from '@wordpress/block-editor';
import { PanelBody, SelectControl, ComboboxControl } from '@wordpress/components';
import './editor.scss';
import { Tip } from '@wordpress/components';
import { getAdminLanguageFromCookie } from '../../utilities.js';
import { useSelect } from '@wordpress/data';
import { useEffect, useState } from '@wordpress/element';
import { decodeEntities } from '@wordpress/html-entities';
export default function OptionsSelectControl({ setAttributes, relatedPostId }) {
let [postOptions, setPostOptions] = useState(null);
const lang = getAdminLanguageFromCookie("wp-wpml_current_language");
const lang = getAdminLanguageFromCookie('wp-wpml_current_language');
const optionPages = useSelect(
(select) => {
let query = {
status: "publish",
status: ['draft', 'publish'],
per_page: -1,
lang: lang,
};
return select("core").getEntityRecords("postType", "parcours", query);
return select('core').getEntityRecords('postType', 'parcours', query);
},
[lang]
);
@ -38,7 +34,7 @@ export default function OptionsSelectControl({ setAttributes, relatedPostId }) {
function buildSelectOptions(optionPages) {
let options = [];
if (optionPages && optionPages.length > 0) {
options.push({ value: 0, label: "Selectionnez une page" });
options.push({ value: 0, label: 'Selectionnez une page' });
optionPages.forEach((page) => {
options.push({
value: page.id,
@ -46,7 +42,7 @@ export default function OptionsSelectControl({ setAttributes, relatedPostId }) {
});
});
} else {
options.push({ value: 0, label: "Pas encore de questions..." });
options.push({ value: 0, label: 'Pas encore de questions...' });
}
return options;
}
@ -58,11 +54,11 @@ export default function OptionsSelectControl({ setAttributes, relatedPostId }) {
}
}, [optionPages]);
let panelTitle = "Post Parcours Reliée";
let panelTitle = 'Post Parcours Reliée';
return (
<InspectorControls>
<PanelBody title={__("Étape parcours", "homegrade-blocks")}>
<PanelBody title={__('Étape parcours', 'homegrade-blocks')}>
{postOptions && (
<ComboboxControl
label={panelTitle}
@ -74,8 +70,8 @@ export default function OptionsSelectControl({ setAttributes, relatedPostId }) {
{relatedPostId && (
<Tip>
{__(
"Pour modifier le contenu de la question affichée ici, rendez-vous dans la fiche question correspondante.",
"homegrade-blocks"
'Pour modifier le contenu de la question affichée ici, rendez-vous dans la fiche question correspondante.',
'homegrade-blocks'
)}
</Tip>
)}