Annotation of kupuMPIWG/plone/kupu_plone_layer/contentUsesKupu.py, revision 1.1
1.1 ! dwinter 1: ## Script (Python) "contentUsesKupu"
! 2: ##title=Allow graceful degradation if content is not text/html
! 3: ##bind container=container
! 4: ##bind context=context
! 5: ##bind namespace=
! 6: ##bind script=script
! 7: ##bind subpath=traverse_subpath
! 8: ##parameters=fieldname
! 9: from Products.CMFCore.utils import getToolByName
! 10:
! 11: from Products.CMFCore.utils import getToolByName
! 12: tool = getToolByName(context, 'kupu_library_tool')
! 13: REQUEST = context.REQUEST
! 14:
! 15: # If the user doesn't have kupu configured then we can't use it.
! 16: if not tool.isKupuEnabled(REQUEST=REQUEST):
! 17: return False
! 18:
! 19: if not fieldname:
! 20: return True # Non AT content always tries to use kupu
! 21:
! 22: if fieldname == REQUEST.form.get('kupu.convert', ''):
! 23: return True
! 24: if fieldname == REQUEST.form.get('kupu.suppress', ''):
! 25: return False
! 26:
! 27: if not hasattr(context, 'getField'):
! 28: return True
! 29:
! 30: field = context.getField(fieldname)
! 31: if not field:
! 32: return True
! 33: text_format = REQUEST.get('%s_text_format' % fieldname, context.getContentType(fieldname))
! 34: content = field.getEditAccessor(context)()
! 35:
! 36: return len(content)==0 or 'html' in text_format.lower()
! 37:
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>