move the default_content? method from the editable_element entity to the liquid drop class in order to deal with the current locale

did committed Nov 29, 2015
commit 1c938b3ef6e637dcee071b3ca76d8c6b407c4ed6
Showing 4 changed files with 10 additions and 10 deletions
locomotive/steam/entities/editable_element.rb b/lib/locomotive/steam/entities/editable_element.rb +0 -4
@@ @@ -23,10 +23,6 @@ module Locomotive::Steam
self[:format] || 'html' # only editable_text elements
end
- def default_content?
- self.content.blank?
- end
-
end
end
locomotive/steam/liquid/tags/editable/text.rb b/lib/locomotive/steam/liquid/tags/editable/text.rb +5 -1
@@ @@ -9,7 +9,7 @@ module Locomotive
def render_element(context, element)
with_inline_editing(context, element) do
- content = if element.default_content?
+ content = if default_content?(element)
render_default_content
else
element.content
@@ @@ -39,6 +39,10 @@ module Locomotive
!!context.registers[:live_editing] && element.inline_editing
end
+ def default_content?(element)
+ element.content.blank?
+ end
+
def default_element_attributes
super.merge(
content_from_default: self.render_default_content,
spec/integration/liquid/drops/page_spec.rb +1 -1
@@ @@ -26,7 +26,7 @@ describe Locomotive::Steam::Liquid::Drops::Page do
context 'content updated by an user' do
- let(:elements) { [instance_double('EditableText', block: 'content/header', slug: 'title', content: 'Bonjour le monde', :base_url= => nil, localized_attributes: [], default_content?: false, format: 'raw')] }
+ let(:elements) { [instance_double('EditableText', block: 'content/header', slug: 'title', content: 'Bonjour le monde', :base_url= => nil, localized_attributes: [], format: 'raw')] }
before do
services.locale = :en
spec/unit/liquid/tags/editable/text_spec.rb +4 -4
@@ @@ -75,7 +75,7 @@ describe Locomotive::Steam::Liquid::Tags::Editable::Text do
let(:element_editing) { true }
let(:child_page) { instance_double('Page', fullpath: 'child-page') }
- let(:element) { instance_double('EditableText', _id: 42, id: 42, default_content?: true, inline_editing?: element_editing, inline_editing: element_editing, format: 'html') }
+ let(:element) { instance_double('EditableText', _id: 42, id: 42, content: nil, inline_editing?: element_editing, inline_editing: element_editing, format: 'html') }
let(:services) { Locomotive::Steam::Services.build_instance(nil) }
let(:context) { ::Liquid::Context.new({}, {}, { page: child_page, services: services, live_editing: live_editing }) }
@@ @@ -102,7 +102,7 @@ describe Locomotive::Steam::Liquid::Tags::Editable::Text do
let(:layout) { instance_double('Page', fullpath: 'layout') }
let(:source) { "{% editable_text title, hint: 'Simple short text', fixed: true %}Hello world{% endeditable_text %}" }
let(:options) { { page: layout } }
- let(:element) { instance_double('EditableText', _id: 42, id: 42, default_content?: true, inline_editing?: element_editing, inline_editing: element_editing, format: 'html', fixed: true) }
+ let(:element) { instance_double('EditableText', _id: 42, id: 42, content: nil, inline_editing?: element_editing, inline_editing: element_editing, format: 'html', fixed: true) }
it 'fetches the related page in order to get the element' do
expect(services.page_finder).to receive(:find).with('layout').and_return(layout)
@@ @@ -113,7 +113,7 @@ describe Locomotive::Steam::Liquid::Tags::Editable::Text do
context 'modified content' do
- let(:element) { instance_double('EditableText', content: 'Hello world!', default_content?: false, format: 'html') }
+ let(:element) { instance_double('EditableText', content: 'Hello world!', format: 'html') }
it { is_expected.to eq 'Hello world!' }
end
@@ @@ -129,7 +129,7 @@ describe Locomotive::Steam::Liquid::Tags::Editable::Text do
context 'markdown format' do
- let(:element) { instance_double('EditableText', content: "#Hello world!\nLorem ipsum", default_content?: false, format: 'markdown') }
+ let(:element) { instance_double('EditableText', content: "#Hello world!\nLorem ipsum", format: 'markdown') }
it { is_expected.to eq "<h1>Hello world!</h1>\n<p>Lorem ipsum</p>\n" }
end