From 8fd3d78e57b2a2c0389cd78b6e0af934585264d8 Mon Sep 17 00:00:00 2001 From: Matt Westcott Date: Thu, 12 Feb 2015 16:20:47 +0000 Subject: [PATCH] Capitalize name nicely when using it as a fallback label. This stops Multiple_words_with_underscores from creeping into the output, and eliminates the need for CSS text-transforms that Capitalize Every Word Like This. --- wagtail/wagtailadmin/blocks.py | 10 +++++----- .../static/wagtailadmin/scss/layouts/page-editor.scss | 5 ++--- 2 files changed, 7 insertions(+), 8 deletions(-) diff --git a/wagtail/wagtailadmin/blocks.py b/wagtail/wagtailadmin/blocks.py index 97878fddd..c752f1a59 100644 --- a/wagtail/wagtailadmin/blocks.py +++ b/wagtail/wagtailadmin/blocks.py @@ -110,12 +110,12 @@ class Block(six.with_metaclass(BaseBlock, object)): Block.creation_counter += 1 self.definition_prefix = 'blockdef-%d' % self.creation_counter + self.label = self.meta.label or '' + def set_name(self, name): self.name = name - - @property - def label(self): - return self.meta.label or self.name + if not self.meta.label: + self.label = capfirst(name.replace('_', ' ')) @property def media(self): @@ -301,7 +301,7 @@ class FieldBlock(Block): else: label_html = '' - widget_attrs = {'id': prefix, 'placeholder': self.label.title()} + widget_attrs = {'id': prefix, 'placeholder': self.label} if hasattr(widget, 'render_with_errors'): widget_html = widget.render_with_errors(prefix, value, attrs=widget_attrs, errors=errors) diff --git a/wagtail/wagtailadmin/static/wagtailadmin/scss/layouts/page-editor.scss b/wagtail/wagtailadmin/static/wagtailadmin/scss/layouts/page-editor.scss index bf42743da..62324bcb4 100644 --- a/wagtail/wagtailadmin/static/wagtailadmin/scss/layouts/page-editor.scss +++ b/wagtail/wagtailadmin/static/wagtailadmin/scss/layouts/page-editor.scss @@ -182,7 +182,7 @@ padding:0; label{ - text-transform:capitalize; + white-space: nowrap; } &.required .field > label:after{ @@ -239,7 +239,6 @@ padding:0; color:$color-grey-2; line-height:2.2em; - text-transform:capitalize; } } @@ -412,7 +411,7 @@ outline:$color-teal; span{ - text-transform:capitalize; + text-transform:none; white-space: pre-wrap; width:100%; display:block;