Skip to content

Commit 2bfb0c5

Browse files
committed
Merge branch 'develop' into topic/EM-1322-Subscription-FAQ
2 parents 3b463c8 + 5bf8c86 commit 2bfb0c5

File tree

6 files changed

+32
-0
lines changed

6 files changed

+32
-0
lines changed

app/api/v1/entities/webpage.rb

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ class Webpage < Grape::Entity
2121
expose :dynamic_yield_category, documentation: { type: 'String', desc: "Dynamic Yield Webpage Category" }
2222

2323
expose :tables_widget_json, documentation: {type: 'Hash', is_array: true, desc: 'Tables Widget Data as JSON'}
24+
expose :charts_widget_json, documentation: {type: 'Hash', is_array: true, desc: 'Charts Widget Data as JSON'}
2425
expose :accordion_group_widget_json, documentation: {type: 'Hash', is_array: true, desc: 'Accordion Group Widget Data as JSON'}
2526

2627
with_options if: { full: true } do
@@ -29,6 +30,7 @@ class Webpage < Grape::Entity
2930

3031
expose :tables_widget_yaml, documentation: {type: 'Hash', is_array: true, desc: 'Tables Widget Data as YAML'}
3132
expose :accordion_group_widget_yaml, documentation: {type: 'Hash', is_array: true, desc: 'Accordion Group Widget Data as YAML'}
33+
expose :charts_widget_yaml, documentation: {type: 'Hash', is_array: true, desc: 'Charts Widget Data as YAML'}
3234
end
3335
end
3436
end

app/assets/legacy_templates/webpages/edit.html

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -118,6 +118,12 @@
118118
ng-model="data.webpage.accordion_group_widget_yaml"
119119
placeholder="YAML-formatted accordion group data"></textarea>
120120
</div>
121+
<div class="form-group">
122+
<label for="charts_widget_yaml">Charts Data</label>
123+
<textarea id="charts_widget_yaml" name="charts_widget_yaml" class="form-control" rows="15"
124+
ng-model="data.webpage.charts_widget_yaml"
125+
placeholder="YAML-formatted chart data"></textarea>
126+
</div>
121127
</form>
122128
</div>
123129
</tab>

app/models/concerns/searchable_webpage.rb

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@ module SearchableWebpage
3131
indexes :noimageindex, :type => :boolean, :index => :not_analyzed
3232
indexes :tables_widget, :type => :nested, :enabled => false
3333
indexes :accordion_group_widget, :type => :nested, :enabled => false
34+
indexes :charts_widget, :type => :nested, :enabled => false
3435
end
3536

3637
def as_indexed_json(options = {})

app/models/webpage.rb

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ class Webpage < ApplicationRecord
33
include SearchableWebpage
44

55
serialize :tables_widget
6+
serialize :charts_widget
67

78
scope :find_by_protocol_agnostic_url, ->(suffix) { where('url LIKE :suffix', suffix: "%#{suffix}") }
89

@@ -31,6 +32,22 @@ def tables_widget_json= p
3132
self.tables_widget = JSON.parse(p, quirks_mode: true) # Quirks mode will let us parse a null JSON object
3233
end
3334

35+
def charts_widget_yaml
36+
charts_widget.to_yaml
37+
end
38+
39+
def charts_widget_yaml= p
40+
self.charts_widget = YAML.load(p)
41+
end
42+
43+
def charts_widget_json
44+
charts_widget.to_json
45+
end
46+
47+
def charts_widget_json= p
48+
self.charts_widget = JSON.parse(p, quirks_mode: true) # Quirks mode will let us parse a null JSON object
49+
end
50+
3451
def accordion_group_widget_yaml
3552
accordion_group_widget.to_yaml
3653
end
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
class AddChartsWidgetToWebpage < ActiveRecord::Migration[5.0]
2+
def change
3+
add_column :webpages, :charts_widget, :jsonb
4+
end
5+
end

db/schema.rb

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -472,6 +472,7 @@
472472
t.string "dynamic_yield_category"
473473
t.jsonb "tables_widget"
474474
t.jsonb "accordion_group_widget"
475+
t.jsonb "charts_widget"
475476
t.index ["user_id"], name: "index_webpages_on_user_id", using: :btree
476477
end
477478

0 commit comments

Comments
 (0)