def _renderReSTTag(self, ctx, content, key, readonly): namer = self._namer(key) tag=T.invisible() ta=T.textarea(name=namer('content'), id=keytocssid(namer('content')), cols=self.cols, rows=self.rows)[content or ''] if readonly: ta(class_='readonly', readonly='readonly') tag[ta] if not readonly: try: import docutils except ImportError: raise else: form = iforms.IForm( ctx ) srcId = keytocssid(namer('content')) previewDiv = srcId + ['-preview-div'] frameId = srcId + ['-preview-frame'] targetURL = widgetResourceURLFromContext(ctx, form.name).child(key).child( srcId ) tag[T.br()] tag[T.button(onClick=["return Forms.Util.previewShow('",previewDiv,"', '",frameId,"', '",targetURL,"');"] )['Preview ...']] if self.withImagePicker: tag[T.button(onclick=["return Cms.Forms.ImagePicker.popup('",srcId,"','tag')"])['Choose image ...']] if self.withItemSelection: if self.itemSelectionTemplates: itemSelectionTemplates = ','.join(self.itemSelectionTemplates) else: itemSelectionTemplates = '' if self.itemSelectionTypes: itemSelectionTypes = encodeTypes(self.itemSelectionTypes) else: itemSelectionTypes = '' tag[T.button(onclick=["return Cms.Forms.ItemSelection.popupForReST('",srcId,"', '",itemSelectionTypes,"', 'rest')"])['Choose items ...']] tag[T.div(id=previewDiv, class_="preview-hidden")[ T.iframe(class_="preview-frame", name=frameId, id=frameId), T.br(), T.button(onClick="return Forms.Util.previewHide('%s');"%(previewDiv))['Close'] ] ] return tag
def _renderTag(self, ctx, tparser, tvalue, namer, readonly): tag=T.invisible() if len(self.parsers) > 1: tp = T.select(name=namer('tparser'),id=render_cssid(namer('tparser'))) if readonly: tp(class_='disabled', disabled='disabled') for k,v in self.parsers: if k == tparser: tp[T.option(selected='selected',value=k)[ v ]] else: tp[T.option(value=k)[ v ]] else: tp = T.input(type='hidden',name=namer('tparser'),id=render_cssid(namer('tparser')),value=self.parsers[0][0]) tag[tp] if self.itemTypes is not None: tag[ T.input(type='hidden',class_="itemTypes",name=namer('itemTypes'),id=render_cssid(namer('itemTypes')),value=encodeTypes(self.itemTypes)) ] if self.itemTemplates is not None: tag[ T.input(type='hidden',class_="itemTemplates",name=namer('itemTemplates'),id=render_cssid(namer('itemTemplates')),value=','.join(self.itemTemplates)) ] ta=T.textarea(name=namer('tvalue'), id=render_cssid(namer('tvalue')), cols=self.cols, rows=self.rows)[tvalue or ''] if readonly: ta(class_='readonly', readonly='readonly') tag[ [T.br,ta ]] return tag