def tableRowButtons(self, node): if node.get('system.key') == node.get('key'): # user has permission -> use users language return tal.getTAL("workflow/workflow.html", {'node': node, 'wfstep': self, 'lang': node.get('system.wflanguage')}, macro="workflow_buttons", language=node.get('system.wflanguage')) else: # use standard language of request return tal.getTAL("workflow/workflow.html", {'node': node, 'wfstep': self, 'lang': getDefaultLanguage()}, macro="workflow_buttons", language=getDefaultLanguage())
def getEditorHTML(self, field, value="", width=40, lock=0, language=None, required=None): try: values = field.valuelist.split(';') except AttributeError: values = field.split('\r\n') while len(values) < 3: values.append(u'') return tal.getTAL("metadata/hlist.html", { "lock": lock, "startnode": values[0], "attrname": values[1], "onlylast": values[2], "value": value, "width": width, "name": field.getName(), "field": field, "required": self.is_required(required) }, macro="editorfield", language=language)
def getAdminFieldsHTML(self, values={}): return tal.getTAL("metadata/url.html", {"valuelist": values["valuelist"], "icons": m_url.icons, "url_targets": m_url.targets}, macro="fieldeditor", language=values["language"])
def getEditorHTML(self, field, value="", width=400, lock=0, language=None, required=None): context = Context(field, value=value, width=width, name=field.getName(), lock=lock, language=language) return tal.getTAL("metadata/list.html", {"context": context, "valuelist": filter(lambda x: x != "", self.formatValues(context)), "required": self.is_required(required)}, macro="editorfield", language=language)
def getMaskEditorHTML(self, field, metadatatype=None, language=None, attr_dict={}): try: value = field.getValues() except: value = "" #value = "" # if field: # value = field.getValues() context = { "value": value, "additional_attrs": ",".join(self.additional_attrs), } for attr_name in self.additional_attrs: context[attr_name] = '' context.update(attr_dict) return tal.getTAL("metadata/memo.html", context, macro="maskeditor", language=language)
def getSearchHTML(self, context): return tal.getTAL("metadata/mlist.html", { "context": context, "valuelist": self.formatValues(context) }, macro="searchfield", language=context.language)
def getEditorHTML(self, field, value="", width=400, lock=0, language=None, required=None): fielddef = field.getValues().split("\r\n") if len(fielddef) != 3: fielddef = ("", "", "") # separate url and urltext val = value.split(";") if len(val) == 1: # only url given val = [val[0], ""] elif len(val) > 2: val = val[0:2] return tal.getTAL("metadata/url.html", { "lock": lock, "value": val, "fielddef": fielddef, "width": width, "name": field.getName(), "field": field, "required": self.is_required(required) }, macro="editorfield", language=language)
def getSearchHTML(self, context): return tal.getTAL("metadata/dlist.html", {"context": context, "valuelist": filter(lambda x: x != "", self.formatValues(context))}, macro="searchfield", language=context.language)
def render_template(self, req, context): if self.template.endswith((".j2.jade", ".j2.html")): template_path = os.path.join("styles", self.template) return render_template(template_path, **context) else: template_path = os.path.join(self.path, self.template) return tal.getTAL(template_path, context, request=req)
def getEditorHTML(self, field, value="", width=400, lock=0, language=None, required=None): fielddef = field.getValues().split("\r\n") if len(fielddef) != 3: fielddef = ("", "", "") val = value.split(";") # XXX: ??? if len(val) != 2: val = ("", "") return tal.getTAL("metadata/url.html", { "lock": lock, "value": val, "fielddef": fielddef, "width": width, "name": field.getName(), "field": field, "required": self.is_required(required) }, macro="editorfield", language=language)
def html(self, req): paths = "" stylebig = self.getContentStyles() liststyle = req.session.get("style-" + self.node.getContentType(), "") if not self.node.isContainer(): plist = getPaths(self.node, AccessData(req)) paths = tal.getTAL(theme.getTemplate("content_nav.html"), {"paths": plist}, macro="paths", language=lang(req)) # render style of node for nodebig if len(stylebig) > 1: # more than on style found for item in stylebig: if liststyle: if item.getName() == liststyle.getName(): return getFormatedString( self.node.show_node_big( req, template=item.getTemplate())) + paths else: if item.isDefaultStyle(): return getFormatedString( self.node.show_node_big( req, template=item.getTemplate())) + paths elif len(stylebig) == 1: return getFormatedString( self.node.show_node_big( req, template=stylebig[0].getTemplate())) + paths return getFormatedString(self.node.show_node_big(req)) + paths
def getEditorHTML(self, field, value="", width=40, lock=0, language=None, required=None): check_context() try: fieldname = field.name except: fieldname = None try: warning = [ t[1] for t in self.labels[language] if t[0] == 'upload_notarget_warning' ][0] except: logg.exception( "exception in getEditorHTML, using default language") warning = [ t[1] for t in self.labels[getDefaultLanguage()] if t[0] == 'upload_notarget_warning' ][0] context = { "lock": lock, "value": value, "width": width, "name": field.getName(), "field": field, "language": language, "warning": warning, "system_lock": 0, "required": self.is_required(required) } if lock: context['system_lock'] = 1 try: if field.get("system.lock"): context['system_lock'] = 1 except: pass s = tal.getTAL("metadata/upload.html", context, macro="editorfield", language=language) if field.getName(): s = s.replace("____FIELDNAME____", "%s" % field.getName()) elif fieldname: s = s.replace("____FIELDNAME____", "%s" % fieldname) else: logg.warn("metadata: m_upload: no fieldname found") return s
def getEditorHTML(self, field, value="", width=400, name="", lock=0, language=None, required=None): fielddef = field.getValues().split( "\r\n") # url(source), type, name variable, value variable if name == "": name = field.getName() while len(fielddef) < 5: fielddef.append("") valuelist = [] with suppress(ValueError, warn=False): # enables the field to be added without fields filled in without throwing an exception if fielddef[1] == 'json': opener = urllib2.build_opener() f = opener.open(urllib2.Request(fielddef[0], None, {})) data = json.load(f) data.sort(lambda x, y: cmp(x[fielddef[2]], y[fielddef[2]])) for item in data: valuelist.append({ 'select_text': fielddef[4].replace(fielddef[2], item[fielddef[2]]).replace( fielddef[3], item[fielddef[3]]), 'select_value': item[fielddef[3]] }) f.close() elif fielddef[1] == 'list': opener = urllib2.build_opener() f = opener.open(urllib2.Request(fielddef[0], None, {})) for item in f.read().split("\n"): if not item.startswith("#"): if ";" in item: _v, _t = item.split(";") else: _v = _t = item valuelist.append({ 'select_text': _t.strip(), 'select_value': _v.strip() }) f.close() return tal.getTAL("metadata/dlist.html", { "lock": lock, "name": name, "width": width, "value": value, "valuelist": valuelist, "fielddef": fielddef, "required": self.is_required(required) }, macro="editorfield", language=language)
def getEditorHTML(self, field, value="", width=400, lock=0, language=None, required=None): # field may not be persisted as tree.Node and therefore may not have # an attribute "get" if hasattr(field, "get"): enable_multilang = bool(field.get('multilang')) else: enable_multilang = False if not language: language = getDefaultLanguage() try: field_node_name = field.name except: field_node_name = None context = { "lock": lock, "value": value, "width": width, "name": field_node_name, "field": field, "t": t, "ident": str(field.id), "current_lang": language, "defaultlang": language, # not the systems default language "languages": [], "langdict": {language: value}, "language_snipper": self.language_snipper, "value_is_multilang": 'single', "multilang_display": 'display: none', "enable_multilang": enable_multilang, "expand_multilang": False, "required": self.is_required(required) } if enable_multilang: languages = config_languages lang = [l for l in languages if l != language] langdict = self.str2dict(value) context.update( { "languages": lang, "langdict": langdict, "value_is_multilang": {True: 'multi', False: 'single'}[self.has_language_cutter(value)], "multilang_display": {True: '', False: 'display: none'}[self.has_language_cutter(value)], }) if enable_multilang and self.has_language_cutter(value): context["expand_multilang"] = True else: context["expand_multilang"] = False return tal.getTAL("metadata/memo.html", context, macro="editorfield", language=language)
def getEditorHTML(self, field, value="", width=40, lock=0, language=None, required=None): return tal.getTAL("metadata/label.html", {"lock": lock, "value": value, "width": width, "name": field.getName(), "field": field}, macro="editorfield", language=language)
def getMaskEditorHTML(self, field, metadatatype=None, language=None): try: multilingual = field.getValues() except: multilingual = "" return tal.getTAL("metadata/text.html", {"multilingual": multilingual}, macro="maskeditor", language=language)
def tableRowButtons(self, node): if node.get("system.key") == node.get("key"): # user has permission -> use users language return tal.getTAL( "workflow/workflow.html", {"node": node, "wfstep": self, "lang": node.get("system.wflanguage")}, macro="workflow_buttons", language=node.get("system.wflanguage"), ) else: # use standard language of request return tal.getTAL( "workflow/workflow.html", {"node": node, "wfstep": self, "lang": getDefaultLanguage()}, macro="workflow_buttons", language=getDefaultLanguage(), )
def getMaskEditorHTML(self, field, metadatatype=None, language=None): value = "" try: if field: value = field.getValues() except AttributeError: value = field return tal.getTAL("metadata/mlist.html", {"value": value}, macro="maskeditor", language=language)
def getEditorHTML(self, field, value="", width=40, lock=0, language=None, required=None): try: values = field.get("valuelist").split(';') except AttributeError: values = field.split('\r\n') while len(values) < 3: values.append(u'') return tal.getTAL("metadata/hlist.html", {"lock": lock, "startnode": values[0], "attrname": values[1], "onlylast": values[2], "value": value, "width": width, "name": field.getName(), "field": field, "required": self.is_required(required)}, macro="editorfield", language=language)
def getEditorHTML(self, field, value="", width=400, lock=0, language=None, required=None): return tal.getTAL("metadata/meta.html", {"lock": lock, "value": value, "width": width, "name": field.getName(), "field": field}, macro="editorfield", language=language)
def getAdminFieldsHTML(self, values={}): return tal.getTAL("metadata/url.html", { "valuelist": values["valuelist"], "icons": m_url.icons, "url_targets": m_url.targets }, macro="fieldeditor", language=values["language"])
def getSearchHTML(self, context): n = context.collection valuelist = n.getAllAttributeValues(context.field.getName(), context.access) locale.setlocale(locale.LC_COLLATE, '') v = [] for key in sorted(valuelist.keys(), cmp=locale.strcoll): v.append((key, valuelist[key])) return tal.getTAL("metadata/ilist.html", {"context": context, "valuelist": v}, macro="searchfield", language=context.language)
def getMaskEditorHTML(self, field, metadatatype=None, language=None): try: value = field.getValues() except: value = "" #value = "" # if field: # value = field.getValues() return tal.getTAL("metadata/date.html", {"value": value, "dateoption": dateoption}, macro="maskeditor", language=language)
def getSearchHTML(self, context): return tal.getTAL( "metadata/dlist.html", { "context": context, "valuelist": filter(lambda x: x != "", self.formatValues(context)) }, macro="searchfield", language=context.language)
def getEditorHTML(self, metafield, value="", width=40, lock=0, language=None, required=None): return tal.getTAL("metadata/treeselect.html", {"lock": lock, "value": value, "width": width, "name": metafield.getName(), "metafield": metafield, "required": self.is_required(required)}, macro="editorfield", language=language)
def getMaskEditorHTML(self, field, metadatatype=None, language=None): try: value = field.getValues().split("\r\n") except: value = [] while len(value) < 5: value.append("") # url(source), name variable, value variable return tal.getTAL( "metadata/dlist.html", {"value": value, "types": ["json", "list"]}, macro="maskeditor", language=language )
def getEditorHTML(self, field, value="", width=400, lock=0, language=None, required=None): return tal.getTAL("metadata/number.html", {"lock": lock, "value": value, "width": width, "name": field.getName(), "field": field, "pattern": self.get_input_pattern(), "title": self.get_input_title(), "placeholder": self.get_input_placeholder(), "required": self.is_required(required)}, macro="editorfield", language=language)
def render_macro(self, template_name, macro_name, context): if template_name.endswith((".j2.jade", ".j2.html")): # caller wants a jinja template return render_macro(template_name, macro_name, **context) elif template_name.endswith(".html"): # caller wants a TAL template tal_template = self.get_tal_template_path(template_name) return tal.getTAL(tal_template, context, macro=macro_name) else: raise TemplateNotFound( "invalid template name (must end with .j2.jade, .j2.html or .html): " + template_name)
def getEditorHTML(self, field, value="", width=400, lock=0, language=None, required=None): value = value.split(";") if len(value) < 2: value = ["", 0, "black", 0] return tal.getTAL("metadata/message.html", {"lock": lock, "value": value, "width": width, "name": field.getName(), "field": field, "required": self.is_required(required)}, macro="editorfield", language=language)
def getMaskEditorHTML(self, field, metadatatype=None, language=None, required=None): try: values = field.get("valuelist").split(u';') except AttributeError: try: values = field.split(u'\r\n') except AttributeError: values = [] while len(values) < 3: values.append(u'') return tal.getTAL("metadata/hlist.html", {"value": dict(parentnode=values[0], attrname=values[1], onlylast=values[2])}, macro="maskeditor", language=language)
def getEditorHTML(self, field, value="", width=400, name="", lock=0, language=None, required=None): fielddef = field.getValues().split("\r\n") # url(source), type, name variable, value variable if name == "": name = field.getName() while len(fielddef) < 5: fielddef.append("") valuelist = [] try: if fielddef[1] == "json": opener = urllib2.build_opener() f = opener.open(urllib2.Request(fielddef[0], None, {})) data = json.load(f) data.sort(lambda x, y: cmp(x[fielddef[2]], y[fielddef[2]])) for item in data: valuelist.append( { "select_text": fielddef[4] .replace(fielddef[2], item[fielddef[2]]) .replace(fielddef[3], item[fielddef[3]]), "select_value": item[fielddef[3]], } ) f.close() elif fielddef[1] == "list": opener = urllib2.build_opener() f = opener.open(urllib2.Request(fielddef[0], None, {})) for item in f.read().split("\n"): if not item.startswith("#"): if ";" in item: _v, _t = item.split(";") else: _v = _t = item valuelist.append({"select_text": _t.strip(), "select_value": _v.strip()}) f.close() except: # enables the field to be added without fields filled in without throwing an exception pass return tal.getTAL( "metadata/dlist.html", { "lock": lock, "name": name, "width": width, "value": value, "valuelist": valuelist, "fielddef": fielddef, "required": self.is_required(required), }, macro="editorfield", language=language, )
def getMaskEditorHTML(self, field, metadatatype=None, language=None): try: value = field.getValues().split("\r\n") except AttributeError: value = [] while len(value) < 5: value.append("") # url(source), name variable, value variable return tal.getTAL("metadata/dlist.html", { "value": value, "types": ['json', 'list'] }, macro="maskeditor", language=language)
def getMaskEditorHTML(self, field, metadatatype=None, language=None): try: value = field.getValues().split("\r\n") except AttributeError: value = [] while len(value) < 4: value.append("") return tal.getTAL("metadata/url.html", {"value": value, "icons": m_url.icons, "url_targets": m_url.targets}, macro="maskeditor", language=language)
def getSearchHTML(self, context): n = context.collection valuelist = n.getAllAttributeValues(context.field.getName(), context.access) locale.setlocale(locale.LC_COLLATE, '') v = [] for key in sorted(valuelist.keys(), cmp=locale.strcoll): v.append((key, valuelist[key])) return tal.getTAL("metadata/ilist.html", { "context": context, "valuelist": v }, macro="searchfield", language=context.language)
def getMaskEditorHTML(self, field, metadatatype=None, language=None): try: value = field.getValues().split("\r\n") except AttributeError: value = [] while len(value) < 4: value.append("") return tal.getTAL("metadata/url.html", { "value": value, "icons": m_url.icons, "url_targets": m_url.targets }, macro="maskeditor", language=language)
def getMaskEditorHTML(self, field, metadatatype=None, language=None): try: value = field.getValues().split("\r\n") except: value = [] while len(value) < 2: value.append('') attr = {} if metadatatype: for t in metadatatype.getDatatypes(): node = tree.Node(type=t) attr.update(node.getTechnAttributes()) attr['IPTC'] = IPTC.get_wanted_iptc_tags() return tal.getTAL("metadata/meta.html", {"value": value, "t_attrs": attr}, macro="maskeditor", language=language)
def getMaskEditorHTML(self, field, metadatatype=None, language=None, attr_dict={}): try: value = field.getValues() except AttributeError: value = u"" context = { "value": value, "additional_attrs": ",".join(self.additional_attrs), } for attr_name in self.additional_attrs: context[attr_name] = '' context.update(attr_dict) return tal.getTAL("metadata/htmlmemo.html", context, macro="maskeditor", language=language)
def getEditorHTML(self, field, value="", width=40, lock=0, language=None, required=None): check_context() try: fieldid = field.id except: fieldid = None try: fieldname = field.name except: fieldname = None try: warning = [t[1] for t in self.labels[language] if t[0] == 'upload_notarget_warning'][0] except: warning = [t[1] for t in self.labels[getDefaultLanguage()] if t[0] == 'upload_notarget_warning'][0] context = { "lock": lock, "value": value, "width": width, "name": field.getName(), "field": field, "language": language, "warning": warning, "system_lock": 0, "required": self.is_required(required) } if lock: context['system_lock'] = 1 try: if field.get("system.lock"): context['system_lock'] = 1 except: pass s = tal.getTAL("metadata/upload.html", context, macro="editorfield", language=language) if field.getName(): s = s.replace("____FIELDNAME____", "%s" % field.getName()) elif fieldname: s = s.replace("____FIELDNAME____", "%s" % fieldname) else: logging.getLogger('backend').warning("metadata: m_upload: no fieldname found") return s
def getMaskEditorHTML(self, field, metadatatype=None, language=None): try: value = field.getValues() except: value = "" attr = {} if metadatatype: for t in metadatatype.getDatatypes(): node = tree.Node(type=t) attr.update(node.getTechnAttributes()) return tal.getTAL("metadata/meta.html", { "value": value, "t_attrs": attr }, macro="maskeditor", language=language)
def getMaskEditorHTML(self, field, metadatatype=None, language=None): value = "" filename = "" multiple_list = "" try: if field: value = field.getValues() if field.id and len(field.getFiles()) > 0: filename = os.path.basename(field.getFiles()[0].retrieveFile()) multiple_list = field.get("multiple") except AttributeError: value = field return tal.getTAL( "metadata/list.html", {"value": value, "filename": filename, "multiple_list": multiple_list}, macro="maskeditor", language=language, )
def getEditorHTML(self, field, value="", width=400, lock=0, language=None, required=None): fielddef = field.getValues().split("\r\n") if len(fielddef) != 3: fielddef = ("", "", "") val = value.split(";") # XXX: ??? if len(val) != 2: val = ("", "") return tal.getTAL("metadata/url.html", {"lock": lock, "value": val, "fielddef": fielddef, "width": width, "name": field.getName(), "field": field, "required": self.is_required(required)}, macro="editorfield", language=language)
def getEditorHTML(self, field, value="", width=400, lock=0, language=None, required=None): d = field.getSystemFormat(field.getValues()) if value == "?": value = date.format_date(date.now(), d.getValue()) with suppress(Exception, warn=False): value = date.format_date(date.parse_date(value), d.getValue()) return tal.getTAL("metadata/date.html", {"lock": lock, "value": value, "width": width, "name": field.getName(), "field": field, "pattern": self.get_input_pattern(field), "title": self.get_input_title(field), "placeholder": self.get_input_placeholder(field), "required": self.is_required(required)}, macro="editorfield", language=language)
def getMaskEditorHTML(self, field, metadatatype=None, language=None): value = u"" filename = u"" multiple_list = u"" try: if field: value = field.getValues() if field.id and len(field.files) > 0: filename = os.path.basename(field.files[0].abspath) multiple_list = field.get('multiple') except AttributeError: value = field return tal.getTAL("metadata/list.html", { "value": value, "filename": filename, "multiple_list": multiple_list }, macro="maskeditor", language=language)
def getEditorHTML(self, field, value="", width=400, lock=0, language=None, required=None): context = Context(field, value=value, width=width, name=field.getName(), lock=lock, language=language) return tal.getTAL("metadata/mlist.html", { "context": context, "valuelist": self.formatValues(context), "required": self.is_required(required) }, macro="editorfield", language=language)
def getSearchHTML(self, context): # `value_and_count` contains a list of options, # each option is represented by a tuple of its name and its count. value_and_count = count_list_values_for_all_content_children( context.collection.id, context.field.getName()) # We build three iterators here: # `value` contains all option names, properly escaped for HTML. # `count` contains the respective count of each option (i.e. its number of occurrences). # `ifselected` contains (in the end) empty strings for each option, # but the special string 'selected="selected"' for the one and only selected option. # It is constructed by comparing each value name with the context value # (this leads to many "False" values and one "True" value), # then turning the result into an int (that is 0 or 1), # then multiplying the int with the special string. # Note: tee created three iterators that all contain the entries of `value_and_count`. ifselected, value, count = _itertools.tee(value_and_count, 3) count = _itertools.imap(_operator.itemgetter(1), count) value = _itertools.imap(_operator.itemgetter(0), value) value = _itertools.imap(_html.escape, value) ifselected = _itertools.imap(_operator.itemgetter(0), ifselected) ifselected = _itertools.imap( _functools.partial(_operator.eq, context.value), ifselected) ifselected = _itertools.imap(int, ifselected) ifselected = _itertools.imap( _functools.partial(_operator.mul, 'selected="selected" '), ifselected) # Now we apply all iterators to the format function # and create the long HTML option list. format_option = u'<option {0}value="{1}">{1} ({2})</option>\n'.format option_list = u"".join( _itertools.starmap(format_option, _itertools.izip(ifselected, value, count))) return tal.getTAL("metadata/ilist.html", { "context": context, "option_list": option_list, }, macro="searchfield", language=context.language)
def getEditorHTML(self, field, value="", width=40, lock=0, language=None, required=None): lang = None languages = config.get("i18n.languages") if language is None: language = languages.split(",")[0].strip() if field.getValues() and "multilingual" in field.getValues(): lang = [l.strip() for l in languages.split(',') if (l != language)] valueList = value.split("\n") values = dict() i = 0 while i + 1 < len(valueList): values[valueList[i] + "__" + field.getName()] = valueList[i + 1] i = i + 2 if language: defaultlang = language elif lang: defaultlang = lang[0] else: defaultlang = "" try: field_node_name = field.name except: field_node_name = None context = { "lock": lock, "values": values, "value": value, "width": width, "name": field_node_name, "field": field, "ident": field.id if field.id else "", "languages": lang, "defaultlang": defaultlang, "expand_multilang": True if value.find('\n') != -1 else False, "required": self.is_required(required), "required_multilang": True if value.find('\n') != -1 and self.is_required(required) else None, } return tal.getTAL("metadata/text.html", context, macro="editorfield", language=language)
def html(self, req): paths = "" stylebig = self.getContentStyles() liststyle = req.session.get("style-" + self.node.getContentType(), "") if not self.node.isContainer(): plist = getPaths(self.node, AccessData(req)) paths = tal.getTAL(theme.getTemplate("content_nav.html"), {"paths": plist}, macro="paths", language=lang(req)) # render style of node for nodebig if len(stylebig) > 1: # more than on style found for item in stylebig: if liststyle: if item.getName() == liststyle.getName(): return getFormatedString(self.node.show_node_big(req, template=item.getTemplate())) + paths else: if item.isDefaultStyle(): return getFormatedString(self.node.show_node_big(req, template=item.getTemplate())) + paths elif len(stylebig) == 1: return getFormatedString(self.node.show_node_big(req, template=stylebig[0].getTemplate())) + paths return getFormatedString(self.node.show_node_big(req)) + paths
def getEditorHTML(self, field, value="", width=400, lock=0, language=None, required=None): fielddef = field.getValues().split("\r\n") if len(fielddef) != 3: fielddef = ("", "", "") # separate url and urltext val = value.split(";") if len(val) == 1: # only url given val = [val[0], ""] elif len(val) > 2: val = val[0:2] return tal.getTAL("metadata/url.html", {"lock": lock, "value": val, "fielddef": fielddef, "width": width, "name": field.getName(), "field": field, "required": self.is_required(required)}, macro="editorfield", language=language)
def mkfilelist(targetnode, files, deletebutton=0, language=None, request=None, macro="m_upload_filelist"): if request: return request.getTAL("metadata/upload.html", { "files": files, "node": targetnode, "delbutton": deletebutton }, macro=macro) else: return tal.getTAL("metadata/upload.html", { "files": files, "node": targetnode, "delbutton": deletebutton }, macro=macro, language=language)
def getEditorHTML(self, field, value="", width=400, lock=0, language=None, required=None): d = field.getSystemFormat(str(field.getValues())) if value == "?": value = date.format_date(date.now(), d.getValue()) try: value = date.format_date(date.parse_date(value), d.getValue()) except: pass return tal.getTAL("metadata/date.html", {"lock": lock, "value": value, "width": width, "name": field.getName(), "field": field, "pattern": self.get_input_pattern(field), "title": self.get_input_title(field), "placeholder": self.get_input_placeholder(field), "required": self.is_required(required)}, macro="editorfield", language=language)
def getMaskEditorHTML(self, field, metadatatype=None, language=None): try: value = field.getValues().split("\r\n") except AttributeError: #value = u"" value = [] while len(value) < 2: value.append('') attr = {} if metadatatype: for t in metadatatype.getDatatypes(): content_class = Node.get_class_for_typestring(t) node = content_class(name=u'') try: attr.update(node.getTechnAttributes()) attr['IPTC'] = get_wanted_iptc_tags() except AttributeError: logg.exception("attribute error in getMaskEditorHTML, continue") continue return tal.getTAL("metadata/meta.html", {"value": value, "t_attrs": attr}, macro="maskeditor", language=language)
def talpizza(): piz = Pizza() return getTAL("templates/pizza_tal.html", dict(pizza=piz))
def getSearchHTML(self, context): return tal.getTAL("metadata/meta.html", {"context": context}, macro="searchfield", language=context.language)