It appears that when adding images via paragraphs, these do not show up in the media browser when filtered by a particular space. The issue causing this seems to be that views is generating an inner join when filtering:
SELECT file_managed.timestamp AS file_managed_timestamp, file_managed.fid AS fid, SUM(file_usage.count) AS file_usage_count
FROM
{file_managed} file_managed
LEFT JOIN {field_data_field_oa_media} field_data_field_oa_media ON file_managed.fid = field_data_field_oa_media.field_oa_media_fid AND field_data_field_oa_media.entity_type = 'node'
LEFT JOIN {node} field_oa_media_file_managed ON field_data_field_oa_media.entity_id = field_oa_media_file_managed.nid
INNER JOIN {og_membership} field_oa_media_file_managed__og_membership ON field_oa_media_file_managed.nid = field_oa_media_file_managed__og_membership.etid AND (field_oa_media_file_managed__og_membership.entity_type = 'node' AND field_oa_media_file_managed__og_membership.entity_type = 'node')
######## THE ISSUE ^^^^^. This filters out all paragraphs since they are not node entity types, and nothing below can join. #################
LEFT JOIN {file_usage} file_usage ON file_managed.fid = file_usage.fid
LEFT JOIN {field_data_field_oa_media} paragraph_media ON file_managed.fid = paragraph_media.field_oa_media_fid AND paragraph_media.entity_type = 'paragraphs_item'
LEFT JOIN {field_data_field_oa_related} related_node ON paragraph_media.entity_id = related_node.field_oa_related_value AND related_node.entity_type = 'node'
LEFT JOIN {og_membership} related_node__og_membership ON related_node.entity_id = related_node__og_membership.etid AND related_node__og_membership.entity_type = 'node'
LEFT JOIN {field_data_field_oa_related} related_comment ON paragraph_media.entity_id = related_comment.field_oa_related_value AND related_comment.entity_type = 'comment'
LEFT JOIN {comment} comment_node ON related_comment.entity_id = comment_node.cid
LEFT JOIN {og_membership} comment_node__og_membership ON comment_node.nid = comment_node__og_membership.etid AND comment_node__og_membership.entity_type = 'node'
WHERE (( (file_managed.status IN ('1')) )AND(( (field_oa_media_file_managed__og_membership.gid = '1') OR (related_node__og_membership.gid = '1') OR (comment_node__og_membership.gid = '1') )))
GROUP BY file_managed_timestamp, fid
ORDER BY file_managed_timestamp DESC
LIMIT 25 OFFSET 0
I believe the solution is to force this to always be a left join, so the paragraph handling in oa_media_views_query_alter() below the first og_membership join will work.
| Comment | File | Size | Author |
|---|---|---|---|
| #2 | media_browswer_paragraphs-2758885-2.patch | 689 bytes | bkildow |
Comments
Comment #2
bkildow commentedComment #3
mpotter commentedCommitted to c438722 in oa_media dev.