0001-misc-strip-html-from-field-labels-when-displayed-in-.patch
wcs/admin/fields.py | ||
---|---|---|
42 | 42 |
raise errors.TraversalError() |
43 | 43 |
if not self.field.label: |
44 | 44 |
self.field.label = _('None') |
45 |
self.unhtmled_label = re.sub('<.*?>', ' ', self.field.label) |
|
46 |
label = misc.ellipsize(self.unhtmled_label, 40) |
|
45 |
label = misc.ellipsize(self.field.unhtmled_label, 40) |
|
47 | 46 |
get_response().breadcrumb.append((field_id + '/', label)) |
48 | 47 | |
49 | 48 |
def form(self): |
... | ... | |
80 | 79 |
if redo or not form.get_submit() == 'submit': |
81 | 80 |
self.html_top('%s - %s' % (_('Form'), self.objectdef.name)) |
82 | 81 |
r = TemplateIO(html=True) |
83 |
r += htmltext('<h2>%s - %s</h2>') % (self.objectdef.name, self.unhtmled_label) |
|
82 |
r += htmltext('<h2>%s - %s</h2>') % (self.objectdef.name, self.field.unhtmled_label)
|
|
84 | 83 |
r += form.render() |
85 | 84 |
return r.getvalue() |
86 | 85 |
else: |
... | ... | |
113 | 112 |
get_response().breadcrumb.append(('delete', _('Delete'))) |
114 | 113 |
self.html_top(title = _('Delete Field')) |
115 | 114 |
r = TemplateIO(html=True) |
116 |
r += htmltext('<h2>%s %s</h2>') % (_('Deleting Field:'), self.unhtmled_label) |
|
115 |
r += htmltext('<h2>%s %s</h2>') % (_('Deleting Field:'), self.field.unhtmled_label)
|
|
117 | 116 |
r += form.render() |
118 | 117 |
return r.getvalue() |
119 | 118 |
else: |
... | ... | |
230 | 229 |
except IndexError: |
231 | 230 |
type_label = _('Unknown') |
232 | 231 |
if field.type in ('subtitle', 'title', 'comment'): |
233 |
label = misc.ellipsize(field.label, 60) |
|
232 |
label = misc.ellipsize(field.unhtmled_label, 60)
|
|
234 | 233 |
if field.type in ('subtitle', 'title'): |
235 | 234 |
r += htmltext('<strong id="label%s">%s</strong>') % (field.id, label) |
236 | 235 |
else: |
wcs/admin/forms.py | ||
---|---|---|
939 | 939 |
r += htmltext('<div id="form-diff">') |
940 | 940 |
r += htmltext('<div>') |
941 | 941 |
r += htmltext('<table id="table-diff">') |
942 |
def ellipsize_html(label): |
|
943 |
unhtmled_label = re.sub('<.*?>', ' ', label) |
|
944 |
return misc.ellipsize(unhtmled_label, 60) |
|
942 |
def ellipsize_html(field): |
|
943 |
return misc.ellipsize(field.unhtmled_label, 60) |
|
945 | 944 | |
946 | 945 |
for diffinfo in difflib.ndiff(current_fields_list, new_fields_list): |
947 | 946 |
if diffinfo[0] == '?': |
... | ... | |
950 | 949 |
field_id = diffinfo[2:].split()[0] |
951 | 950 |
if diffinfo[0] == ' ': |
952 | 951 |
# unchanged line |
953 |
label1 = ellipsize_html(current_fields.get(field_id).label)
|
|
954 |
label2 = ellipsize_html(new_fields.get(field_id).label)
|
|
952 |
label1 = ellipsize_html(current_fields.get(field_id)) |
|
953 |
label2 = ellipsize_html(new_fields.get(field_id)) |
|
955 | 954 |
if current_fields.get(field_id) and new_fields.get(field_id) and \ |
956 | 955 |
current_fields.get(field_id).type != new_fields.get(field_id).type: |
957 | 956 |
r += htmltext('<tr class="type-change"><td class="indicator">!</td>') |
... | ... | |
964 | 963 |
r += htmltext('<td>%s</td> <td>%s</td></tr>') % (label1, label2) |
965 | 964 |
elif diffinfo[0] == '-': |
966 | 965 |
# removed field |
967 |
label1 = ellipsize_html(current_fields.get(field_id).label)
|
|
966 |
label1 = ellipsize_html(current_fields.get(field_id)) |
|
968 | 967 |
if current_fields.get(field_id) and new_fields.get(field_id) and \ |
969 | 968 |
current_fields.get(field_id).type != new_fields.get(field_id).type: |
970 | 969 |
r += htmltext('<tr class="type-change"><td class="indicator">!</td>') |
... | ... | |
973 | 972 |
r += htmltext('<td>%s</td> <td></td></tr>') % label1 |
974 | 973 |
elif diffinfo[0] == '+': |
975 | 974 |
# added field |
976 |
label2 = ellipsize_html(new_fields.get(field_id).label)
|
|
975 |
label2 = ellipsize_html(new_fields.get(field_id)) |
|
977 | 976 |
if current_fields.get(field_id) and new_fields.get(field_id) and \ |
978 | 977 |
current_fields.get(field_id).type != new_fields.get(field_id).type: |
979 | 978 |
r += htmltext('<tr class="type-change"><td class="indicator">!</td>') |
wcs/fields.py | ||
---|---|---|
155 | 155 |
pass |
156 | 156 |
init = classmethod(init) |
157 | 157 | |
158 |
@property |
|
159 |
def unhtmled_label(self): |
|
160 |
return re.sub('<.*?>', ' ', self.label) |
|
161 | ||
158 | 162 |
def get_admin_attributes(self): |
159 | 163 |
return ['label', 'type'] |
160 | 164 | |
161 |
- |