editmode 1.2.4 → 1.2.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: bd467da504ef11a5ba029cc7dcf3b4957dbbc758fa37fe8cf38f2aed358fb17b
4
- data.tar.gz: 577f1989ff49f7c624fd2d1864cc78c6bd0f3249e7c67951bf6b94e375794744
3
+ metadata.gz: 944adb32f3ec654befa27d7f8f85e95939d56af9fa6892b890702d4d1a6b1ac1
4
+ data.tar.gz: 89c1928fa45b58c2cb7579b38aa0ffcc109c199f3b62c3696f799fb739ddf88b
5
5
  SHA512:
6
- metadata.gz: 5466ebc92b03dde2acc135dd0e90ff54c2b18242a0eb5011889ff429fd5c168f9ec09b7181be3df8d8a864f78911a49b620b0ed239a3aec9330e4d3fb9b3a3f7
7
- data.tar.gz: bd302d21b044b4927e787f5aaacc530bae2a811f5e72138519b6b2b5cc594dc6322ec9fa026a1fa256d5d65a26ee79877d0256e547a11ad6589197482d0e5fb1
6
+ metadata.gz: 2aade9c6ba2688cfedcedef29bb4fc58d2c5a57f671458f79925951b79fbf9374f2e94fb2a3d2478856a725e99b1fb9544b67045315121b2b342003c84244b40
7
+ data.tar.gz: 98cd35b091d8993d601443fa7cf4097b0f1d42ea4b93d6c15eafc936b1eb5cc66086b666c752ad7c2cc6ee563dcb08a110f88e50b1e363bb053d23fd0d63118e
@@ -10,10 +10,10 @@ module Editmode
10
10
 
11
11
  attr_writer :content
12
12
 
13
- def initialize(identifier, **options)
13
+ def initialize(identifier, project_id: Editmode.project_id, **options)
14
14
  @identifier = identifier
15
15
  @branch_id = options[:branch_id].presence
16
- @project_id = Editmode.project_id
16
+ @project_id = project_id
17
17
  @variable_values = options[:variables].presence || {}
18
18
  @raw = options[:raw].present?
19
19
  @skip_sanitize = options[:dangerously_skip_sanitization]
@@ -5,17 +5,34 @@ module Editmode
5
5
  field, options = parse_arguments(args)
6
6
  begin
7
7
  chunk = Editmode::ChunkValue.new(identifier, options.merge({raw: true}))
8
-
9
- if chunk.chunk_type == 'collection_item'
10
- chunk.field(field)
11
- else
12
- chunk.content
13
- end
8
+ render_noneditable_chunk(chunk, field, options)
14
9
  rescue => er
15
10
  puts er
16
11
  end
17
12
  end
18
13
 
14
+ def render_noneditable_chunk(chunk, field=nil, options=nil)
15
+ return render_collection_item(chunk, field, options) if chunk.chunk_type == 'collection_item'
16
+
17
+ render_content(chunk, options)
18
+ end
19
+
20
+ def render_collection_item(chunk, field=nil, options=nil)
21
+ return render_image(chunk.field(field), options[:class]) if chunk.field_chunk(field)['chunk_type'] == 'image'
22
+
23
+ chunk.field(field)
24
+ end
25
+
26
+ def render_content(chunk, options=nil)
27
+ return render_image(chunk.content, options[:class]) if chunk.chunk_type == 'image'
28
+
29
+ chunk.content
30
+ end
31
+
32
+ def render_image(content, css_class=nil)
33
+ image_tag(content, class: css_class)
34
+ end
35
+
19
36
  def render_custom_field_raw(label, options={})
20
37
  e(@custom_field_chunk["identifier"], label, options.merge({response: @custom_field_chunk}))
21
38
  end
@@ -33,4 +50,4 @@ module Editmode
33
50
  return field, options
34
51
  end
35
52
  end
36
- end
53
+ end
@@ -1,3 +1,3 @@
1
1
  module Editmode
2
- VERSION = "1.2.4"
2
+ VERSION = "1.2.5"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: editmode
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.4
4
+ version: 1.2.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tony Ennis
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-12-02 00:00:00.000000000 Z
11
+ date: 2020-12-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -94,7 +94,7 @@ homepage: https://github.com/tonyennis145/editmode-rails
94
94
  licenses:
95
95
  - MIT
96
96
  metadata: {}
97
- post_install_message:
97
+ post_install_message:
98
98
  rdoc_options: []
99
99
  require_paths:
100
100
  - lib
@@ -109,8 +109,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
109
109
  - !ruby/object:Gem::Version
110
110
  version: '0'
111
111
  requirements: []
112
- rubygems_version: 3.0.3
113
- signing_key:
112
+ rubygems_version: 3.0.8
113
+ signing_key:
114
114
  specification_version: 4
115
115
  summary: Editmode allows you to turn plain text in your rails app into easily inline-editable
116
116
  bits of content that can be managed by anyone with no technical knowledge