Skip to content

Commit

Permalink
Merge branch 'master' into Teaser-block-image-resize-#4653
Browse files Browse the repository at this point in the history
  • Loading branch information
erral authored Apr 20, 2023
2 parents 2994b29 + 0e62195 commit d0db84f
Show file tree
Hide file tree
Showing 8 changed files with 51 additions and 49 deletions.
4 changes: 2 additions & 2 deletions docs/source/blocks/ssr.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,10 +21,10 @@ configuration, pointing to a function that returns a list of promises.
For example:

```js
export default ({ dispatch, data, path }) => {
export default ({ dispatch, id, data, path }) => {
return [
dispatch(
getQueryStringResults(path, { ...data, fullobjects: 1 }, data.block),
getQueryStringResults(path, { ...data, fullobjects: 1 }, id),
),
];
};
Expand Down
34 changes: 17 additions & 17 deletions locales/de/LC_MESSAGES/volto.po
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,7 @@ msgstr "Aktionen"
#: components/manage/Controlpanels/AddonsControlpanel
# defaultMessage: Activate and deactivate add-ons in the lists below.
msgid "Activate and deactivate"
msgstr "Aktiviern und Deaktivieren"
msgstr "Aktivieren und Deaktivieren"

#: components/manage/Rules/Rules
# defaultMessage: Active
Expand Down Expand Up @@ -92,7 +92,7 @@ msgstr "Hinzufügen"
#: components/manage/Controlpanels/AddonsControlpanel
# defaultMessage: To make new add-ons show up here, add them to your configuration, build, and restart the server process. For detailed instructions see
msgid "Add Addons"
msgstr "Add-on hinzufügen"
msgstr "Hier werden verfügbare und installierte Backend-Add-ons gezeigt. Informationen wie Weitere hinzugefügt werden können, finden sich hier:"

#: components/manage/Toolbar/Types
# defaultMessage: Add Content…
Expand Down Expand Up @@ -232,7 +232,7 @@ msgstr "Erweiterungen"
#: components/manage/Controlpanels/AddonsControlpanel
# defaultMessage: Add-ons Settings
msgid "Add-ons Settings"
msgstr "Einstellungen Add-ons"
msgstr "Add-ons"

#: components/manage/Rules/Rules
# defaultMessage: Added
Expand All @@ -247,12 +247,12 @@ msgstr "Zusätzliches Datum"
#: components/manage/Controlpanels/AddonsControlpanel
# defaultMessage: Addon could not be installed
msgid "Addon could not be installed"
msgstr "Erweiterung konnte nicht installiert werden"
msgstr "Erweiterung konnte nicht aktiviert werden"

#: components/manage/Controlpanels/AddonsControlpanel
# defaultMessage: Addon could not be uninstalled
msgid "Addon could not be uninstalled"
msgstr "Erweiterung konnte nicht deinstalliert werden"
msgstr "Erweiterung konnte nicht deaktiviert werden"

#: components/manage/Controlpanels/AddonsControlpanel
# defaultMessage: Addon could not be upgraded
Expand All @@ -262,12 +262,12 @@ msgstr "Erweiterung konnte nicht aktualisiert werden"
#: components/manage/Controlpanels/AddonsControlpanel
# defaultMessage: Addon installed succesfuly
msgid "Addon installed succesfuly"
msgstr "Erweiterungen erfolgreich installiert"
msgstr "Erweiterungen erfolgreich aktiviert"

#: components/manage/Controlpanels/AddonsControlpanel
# defaultMessage: Addon uninstalled succesfuly
msgid "Addon uninstalled succesfuly"
msgstr "Erweiterung erfolgreich deinstalliert"
msgstr "Erweiterung erfolgreich deaktiviert"

#: components/manage/Controlpanels/AddonsControlpanel
# defaultMessage: Addon upgraded succesfuly
Expand Down Expand Up @@ -1693,22 +1693,22 @@ msgstr "Zeile davor einfügen"
#: components/manage/Controlpanels/AddonsControlpanel
# defaultMessage: Install
msgid "Install"
msgstr "Installieren"
msgstr "aktivieren"

#: components/manage/Controlpanels/AddonsControlpanel
# defaultMessage: Installed
msgid "Installed"
msgstr "Installiert"
msgstr "aktiviert"

#: components/manage/Controlpanels/AddonsControlpanel
# defaultMessage: Installed version
msgid "Installed version"
msgstr "Installierte Version"
msgstr "Aktivierte Version"

#: components/manage/Controlpanels/AddonsControlpanel
# defaultMessage: Installing a third party add-on
msgid "Installing a third party add-on"
msgstr "Eine Erweiterung installieren"
msgstr "Eine Erweiterung aktivieren"

#: components/manage/Widgets/RecurrenceWidget/RecurrenceWidget
# defaultMessage: days
Expand Down Expand Up @@ -1831,7 +1831,7 @@ msgstr "Letzte verfügbare Konfiguration"
#: components/manage/Controlpanels/AddonsControlpanel
# defaultMessage: Latest version
msgid "Latest version"
msgstr "Letzte Version"
msgstr "Verfügbare Version"

#: components/manage/Controlpanels/ContentTypesActions
# defaultMessage: Layout
Expand Down Expand Up @@ -2243,7 +2243,7 @@ msgstr "Keine Auswahl"
#: components/manage/Controlpanels/AddonsControlpanel
# defaultMessage: This addon does not provide an uninstall profile.
msgid "No uninstall profile"
msgstr "Kein Deinstallationsprofil"
msgstr "Kein Deaktivierungsprofil"

#: helpers/MessageLabels/MessageLabels
# defaultMessage: No user found
Expand Down Expand Up @@ -3626,7 +3626,7 @@ msgstr "Vereinigt"
#: components/manage/Controlpanels/AddonsControlpanel
# defaultMessage: Uninstall
msgid "Uninstall"
msgstr "Deinstallieren"
msgstr "deaktivieren"

#: components/manage/Blocks/Block/DefaultView
#: components/manage/Blocks/Block/Edit
Expand Down Expand Up @@ -3658,12 +3658,12 @@ msgstr "Update"
#: components/manage/Controlpanels/AddonsControlpanel
# defaultMessage: Update installed addons
msgid "Update installed addons"
msgstr "Installierte Erweiterungen aktualisieren"
msgstr "Aktivierte Erweiterungen aktualisieren"

#: components/manage/Controlpanels/AddonsControlpanel
# defaultMessage: Update installed addons:
msgid "Update installed addons:"
msgstr "Installierte Erweiterungen:"
msgstr "Aktivierte Erweiterungen:"

#: components/manage/Controlpanels/AddonsControlpanel
# defaultMessage: Updates available
Expand Down Expand Up @@ -4531,7 +4531,7 @@ msgstr "Toggle"
#: components/manage/Controlpanels/AddonsControlpanel
# defaultMessage: Update from version {origin} to {destination}
msgid "upgradeVersions"
msgstr "Aktualisieren von Version {origin} zu Version {destination}"
msgstr "Von Version {origin} zu Version {destination} aktualisieren"

#: helpers/MessageLabels/MessageLabels
# defaultMessage: Input must be valid url (www.something.com or http(s)://www.something.com)
Expand Down
1 change: 1 addition & 0 deletions news/4234.bugfix
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Fix duplicating listing block by removing block uid from blocks data. @ksuess
1 change: 1 addition & 0 deletions news/4582.bugfix
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Update add-on control panel tranlsations: install -> activate. @ksuess
14 changes: 0 additions & 14 deletions src/components/manage/Blocks/Listing/Edit.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -26,21 +26,7 @@ const messages = defineMessages({
const Edit = React.memo(
(props) => {
const { data, onChangeBlock, block, selected, pathname } = props;

const intl = useIntl();

// componentDidMount
React.useEffect(() => {
if (!data.query) {
onChangeBlock(block, {
...data,
query: [],
block,
});
}
/* eslint-disable react-hooks/exhaustive-deps */
}, []);

const placeholder =
data.placeholder ||
(data?.querystring?.query?.length
Expand Down
12 changes: 10 additions & 2 deletions src/components/manage/Blocks/Listing/getAsyncData.js
Original file line number Diff line number Diff line change
@@ -1,7 +1,13 @@
import { getQueryStringResults } from '@plone/volto/actions';
import { resolveBlockExtensions } from '@plone/volto/helpers';

export default ({ dispatch, data, path, blocksConfig }) => {
const getListingBlockAsyncData = ({
dispatch,
id,
data,
path,
blocksConfig,
}) => {
const { resolvedExtensions } = resolveBlockExtensions(data, blocksConfig);

return [
Expand All @@ -14,8 +20,10 @@ export default ({ dispatch, data, path, blocksConfig }) => {
? { fullobjects: 1 }
: { metadata_fields: '_all' }),
},
data.block,
id,
),
),
];
};

export default getListingBlockAsyncData;
31 changes: 18 additions & 13 deletions src/components/manage/Blocks/Listing/withQuerystringResults.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -14,11 +14,16 @@ function getDisplayName(WrappedComponent) {

export default function withQuerystringResults(WrappedComponent) {
function WithQuerystringResults(props) {
const { data = {}, properties: content, path, variation } = props;
const {
data = {},
id = data.block,
properties: content,
path,
variation,
} = props;
const { settings } = config;
const querystring = data.querystring || data; // For backwards compat with data saved before Blocks schema. Note, this is also how the Search block passes data to ListingBody

const { block } = data;
const { b_size = settings.defaultPageSize } = querystring; // batchsize

// save the path so it won't trigger dispatch on eager router location change
Expand All @@ -45,32 +50,32 @@ export default function withQuerystringResults(WrappedComponent) {

const folderItems = content?.is_folderish ? content.items : [];
const hasQuery = querystring?.query?.length > 0;
const hasLoaded = hasQuery ? !querystringResults?.[block]?.loading : true;
const hasLoaded = hasQuery ? !querystringResults?.[id]?.loading : true;

const listingItems =
querystring?.query?.length > 0 && querystringResults?.[block]
? querystringResults?.[block]?.items || []
querystring?.query?.length > 0 && querystringResults?.[id]
? querystringResults?.[id]?.items || []
: folderItems;

const showAsFolderListing = !hasQuery && content?.items_total > b_size;
const showAsQueryListing =
hasQuery && querystringResults?.[block]?.total > b_size;
hasQuery && querystringResults?.[id]?.total > b_size;

const totalPages = showAsFolderListing
? Math.ceil(content.items_total / b_size)
: showAsQueryListing
? Math.ceil(querystringResults[block].total / b_size)
? Math.ceil(querystringResults[id].total / b_size)
: 0;

const prevBatch = showAsFolderListing
? content.batching?.prev
: showAsQueryListing
? querystringResults[block].batching?.prev
? querystringResults[id].batching?.prev
: null;
const nextBatch = showAsFolderListing
? content.batching?.next
: showAsQueryListing
? querystringResults[block].batching?.next
? querystringResults[id].batching?.next
: null;

const isImageGallery =
Expand All @@ -80,7 +85,7 @@ export default function withQuerystringResults(WrappedComponent) {
useDeepCompareEffect(() => {
if (hasQuery) {
dispatch(
getQueryStringResults(initialPath, adaptedQuery, block, currentPage),
getQueryStringResults(initialPath, adaptedQuery, id, currentPage),
);
} else if (isImageGallery && !hasQuery) {
// when used as image gallery, it doesn't need a query to list children
Expand All @@ -98,14 +103,14 @@ export default function withQuerystringResults(WrappedComponent) {
},
],
},
block,
id,
),
);
} else {
dispatch(getContent(initialPath, null, null, currentPage));
}
}, [
block,
id,
isImageGallery,
adaptedQuery,
hasQuery,
Expand All @@ -118,7 +123,7 @@ export default function withQuerystringResults(WrappedComponent) {
<WrappedComponent
{...props}
onPaginationChange={(e, { activePage }) => setCurrentPage(activePage)}
total={querystringResults?.[block]?.total}
total={querystringResults?.[id]?.total}
batch_size={b_size}
currentPage={currentPage}
totalPages={totalPages}
Expand Down
3 changes: 2 additions & 1 deletion src/components/manage/Blocks/Search/SearchBlockView.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@ const applyDefaults = (data, root) => {
};

const SearchBlockView = (props) => {
const { data, searchData, mode = 'view', variation } = props;
const { id, data, searchData, mode = 'view', variation } = props;

const Layout = variation.view;

Expand Down Expand Up @@ -89,6 +89,7 @@ const SearchBlockView = (props) => {
setSelectedView={setSelectedView}
>
<ListingBody
id={id}
variation={{ ...data, ...listingBodyVariation }}
data={listingBodyData}
path={props.path}
Expand Down

0 comments on commit d0db84f

Please sign in to comment.