I would like to have the lead image as a portlet, instead of the viewlet.
Have someone already made this?
PS: Would be nice if the lead image viewlet did not render (at all) if the portlet is enabled (without using CSS or Diazo)
I would like to have the lead image as a portlet, instead of the viewlet.
Have someone already made this?
PS: Would be nice if the lead image viewlet did not render (at all) if the portlet is enabled (without using CSS or Diazo)
OK, so I am making this as part of 'medialog.leadimagesize'.
Since the leadimage is sometimes displayed in viewlets and sometimes in templates, I wonder:
Is it possible from a viewlet or/and a view to check if a certain portlet is present (in this case the leadimage portlet)?
Is there a check that works for 'inherited portlet', 'content type portlet assignment etc' ?
Update (for reference later):
Looks like one needs to loop through all of them.
Note: if you have more portlet managers it will not 'work'.
class NewsItemView(BrowserView):
""" A browser view """
def has_portlet(self):
for column in ["plone.leftcolumn", "plone.rightcolumn"]:
manager = getUtility(IPortletManager, name=column)
retriever = getMultiAdapter((self.context, manager), IPortletRetriever)
portlets = retriever.getPortlets()
for portlet in portlets:
if ILeadimagePortlet.providedBy(portlet["assignment"]):
return True
return False
Made it part of medialog.leadimagesize.
Note: there is no update profile yet (uninstall and reinstall).
In core Plone where are lead images still hardcoded in the (I assume you mean content type) templates?
There is a lead image viewlet (for 'lead image behavior')
For News Items it is hardcoded.
note: For 'unknown reasons': You can not use the same view for Page and News Item.
If you look at the video, this is what the add on does: It adds a field to change the lead image size.
I have chosen to show both the viewlet and the 'image in the template' for News Items, and hide them with CSS (or Diazo).
That's < Plone 5.1 , Plone.app.contenttype 1.0.X for Plone 5.0 still has it hard coded in the template.
Plone 5.1 has it hard-coded, I think (I think it is hardcoded for every version that is installed with Universal Installer)