pageflow-chart 2.1.0 → 2.4.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.travis.yml +1 -0
- data/CHANGELOG.md +12 -8
- data/README.md +2 -2
- data/app/assets/javascripts/pageflow/chart/consent.js +16 -0
- data/app/assets/javascripts/pageflow/chart/editor/config.js +7 -0
- data/app/assets/javascripts/pageflow/chart/editor/models/scraped_site.js +11 -50
- data/app/assets/javascripts/pageflow/chart/editor/views/configuration_editor.js +6 -4
- data/app/assets/javascripts/pageflow/chart/editor/views/embedded/iframe_embedded_view.js +32 -16
- data/app/assets/javascripts/pageflow/chart/editor/views/inputs/scraped_url_input_view.js +18 -39
- data/app/assets/javascripts/pageflow/chart/editor.js +4 -3
- data/app/assets/javascripts/pageflow/chart/page_type.js +61 -53
- data/app/assets/javascripts/pageflow/chart.js +2 -3
- data/app/assets/stylesheets/pageflow/chart/editor.scss +3 -20
- data/app/assets/stylesheets/pageflow/chart/themes/default.scss +3 -0
- data/app/assets/stylesheets/pageflow/chart.scss +9 -16
- data/app/helpers/pageflow/chart/scraped_sites_helper.rb +17 -8
- data/app/jobs/pageflow/chart/scrape_site_job.rb +14 -4
- data/app/models/pageflow/chart/scraped_site.rb +37 -4
- data/app/views/pageflow/chart/editor/scraped_sites/_scraped_site.json.jbuilder +1 -0
- data/app/views/pageflow/chart/page.html.erb +9 -2
- data/chart.gemspec +2 -2
- data/config/locales/de.yml +4 -0
- data/config/locales/en.yml +4 -0
- data/db/migrate/20190531141820_add_file_attributes_to_scraped_sites.rb +8 -0
- data/db/migrate/20190531145431_insert_file_usages_for_scraped_sites.rb +59 -0
- data/db/migrate/20200507141608_add_javascript_body_attachment_to_scraped_site.rb +5 -0
- data/lib/pageflow/chart/configuration.rb +6 -3
- data/lib/pageflow/chart/downloader.rb +4 -1
- data/lib/pageflow/chart/page_type.rb +17 -0
- data/lib/pageflow/chart/plugin.rb +10 -0
- data/lib/pageflow/chart/refresh_tag_following_downloader.rb +3 -3
- data/lib/pageflow/chart/scraper.rb +25 -13
- data/lib/pageflow/chart/version.rb +1 -1
- data/lib/pageflow/chart.rb +4 -0
- data/spec/factories/scraped_sites.rb +17 -3
- data/spec/fixtures/all.css +3 -0
- data/spec/fixtures/all.js +1 -0
- data/spec/fixtures/all_body.js +1 -0
- data/spec/fixtures/data.csv +1 -0
- data/spec/fixtures/index.html +7 -0
- data/spec/helpers/pageflow/chart/scraped_sites_helper_spec.rb +59 -0
- data/spec/integration/file_type_spec.rb +10 -0
- data/spec/jobs/pageflow/chart/scrape_site_job_spec.rb +14 -1
- data/spec/models/pageflow/chart/scraped_site_spec.rb +54 -0
- data/spec/pageflow/chart/downloader_spec.rb +13 -3
- data/spec/pageflow/chart/refresh_tag_following_downloader_spec.rb +23 -10
- data/spec/pageflow/chart/scraper_spec.rb +201 -63
- metadata +28 -20
- data/app/assets/javascripts/pageflow/chart/editor/collections/scraped_sites_collection.js +0 -23
- data/app/assets/javascripts/pageflow/chart/editor/initializers/setup_collections.js +0 -1
- data/app/assets/javascripts/pageflow/chart/editor/templates/scraped_site_status.jst.ejs +0 -2
- data/app/assets/javascripts/pageflow/chart/editor/templates/url_input.jst.ejs +0 -7
- data/app/assets/javascripts/pageflow/chart/editor/views/scraped_site_status_view.js +0 -18
- data/app/controllers/pageflow/chart/application_controller.rb +0 -6
- data/app/controllers/pageflow/chart/scraped_sites_controller.rb +0 -25
- data/config/routes.rb +0 -3
- data/spec/controllers/pageflow/chart/scraped_sites_controller_spec.rb +0 -35
- data/spec/requests/scraping_site_spec.rb +0 -23
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: pageflow-chart
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.
|
4
|
+
version: 2.4.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Codevise Solutions Ltd
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2022-07-18 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: pageflow
|
@@ -16,14 +16,14 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version:
|
19
|
+
version: 15.7.x
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version:
|
26
|
+
version: 15.7.x
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: nokogiri
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
@@ -58,14 +58,14 @@ dependencies:
|
|
58
58
|
requirements:
|
59
59
|
- - "~>"
|
60
60
|
- !ruby/object:Gem::Version
|
61
|
-
version:
|
61
|
+
version: 15.x
|
62
62
|
type: :development
|
63
63
|
prerelease: false
|
64
64
|
version_requirements: !ruby/object:Gem::Requirement
|
65
65
|
requirements:
|
66
66
|
- - "~>"
|
67
67
|
- !ruby/object:Gem::Version
|
68
|
-
version:
|
68
|
+
version: 15.x
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: bundler
|
71
71
|
requirement: !ruby/object:Gem::Requirement
|
@@ -179,29 +179,25 @@ files:
|
|
179
179
|
- app/assets/images/pageflow/ov-chart.png
|
180
180
|
- app/assets/javascripts/pageflow/chart.js
|
181
181
|
- app/assets/javascripts/pageflow/chart/asset_urls.js.erb
|
182
|
+
- app/assets/javascripts/pageflow/chart/consent.js
|
182
183
|
- app/assets/javascripts/pageflow/chart/editor.js
|
183
|
-
- app/assets/javascripts/pageflow/chart/editor/
|
184
|
-
- app/assets/javascripts/pageflow/chart/editor/initializers/setup_collections.js
|
184
|
+
- app/assets/javascripts/pageflow/chart/editor/config.js
|
185
185
|
- app/assets/javascripts/pageflow/chart/editor/models/scraped_site.js
|
186
186
|
- app/assets/javascripts/pageflow/chart/editor/templates/datawrapper_ad.jst.ejs
|
187
|
-
- app/assets/javascripts/pageflow/chart/editor/templates/scraped_site_status.jst.ejs
|
188
|
-
- app/assets/javascripts/pageflow/chart/editor/templates/url_input.jst.ejs
|
189
187
|
- app/assets/javascripts/pageflow/chart/editor/views/configuration_editor.js
|
190
188
|
- app/assets/javascripts/pageflow/chart/editor/views/datawrapper_ad_view.js
|
191
189
|
- app/assets/javascripts/pageflow/chart/editor/views/embedded/iframe_embedded_view.js
|
192
190
|
- app/assets/javascripts/pageflow/chart/editor/views/inputs/scraped_url_input_view.js
|
193
|
-
- app/assets/javascripts/pageflow/chart/editor/views/scraped_site_status_view.js
|
194
191
|
- app/assets/javascripts/pageflow/chart/page_type.js
|
195
192
|
- app/assets/stylesheets/pageflow/chart.scss
|
196
193
|
- app/assets/stylesheets/pageflow/chart/custom.scss
|
197
194
|
- app/assets/stylesheets/pageflow/chart/editor.scss
|
198
195
|
- app/assets/stylesheets/pageflow/chart/themes/default.scss
|
199
196
|
- app/assets/stylesheets/pageflow/chart/transparent_background.css.erb
|
200
|
-
- app/controllers/pageflow/chart/application_controller.rb
|
201
|
-
- app/controllers/pageflow/chart/scraped_sites_controller.rb
|
202
197
|
- app/helpers/pageflow/chart/scraped_sites_helper.rb
|
203
198
|
- app/jobs/pageflow/chart/scrape_site_job.rb
|
204
199
|
- app/models/pageflow/chart/scraped_site.rb
|
200
|
+
- app/views/pageflow/chart/editor/scraped_sites/_scraped_site.json.jbuilder
|
205
201
|
- app/views/pageflow/chart/page.html.erb
|
206
202
|
- app/views/pageflow/chart/page_type.json.jbuilder
|
207
203
|
- bin/rails-cmd
|
@@ -210,21 +206,30 @@ files:
|
|
210
206
|
- chart.gemspec
|
211
207
|
- config/locales/de.yml
|
212
208
|
- config/locales/en.yml
|
213
|
-
- config/routes.rb
|
214
209
|
- db/migrate/20140417112724_create_pageflow_chart_scraped_sites.rb
|
215
210
|
- db/migrate/20160211085234_add_use_custom_theme_to_scraped_sites.rb
|
211
|
+
- db/migrate/20190531141820_add_file_attributes_to_scraped_sites.rb
|
212
|
+
- db/migrate/20190531145431_insert_file_usages_for_scraped_sites.rb
|
213
|
+
- db/migrate/20200507141608_add_javascript_body_attachment_to_scraped_site.rb
|
216
214
|
- lib/generators/pageflow_chart/install/install_generator.rb
|
217
215
|
- lib/pageflow/chart.rb
|
218
216
|
- lib/pageflow/chart/configuration.rb
|
219
217
|
- lib/pageflow/chart/downloader.rb
|
220
218
|
- lib/pageflow/chart/engine.rb
|
221
219
|
- lib/pageflow/chart/page_type.rb
|
220
|
+
- lib/pageflow/chart/plugin.rb
|
222
221
|
- lib/pageflow/chart/refresh_tag_following_downloader.rb
|
223
222
|
- lib/pageflow/chart/scraper.rb
|
224
223
|
- lib/pageflow/chart/version.rb
|
225
|
-
- spec/controllers/pageflow/chart/scraped_sites_controller_spec.rb
|
226
224
|
- spec/factories/scraped_sites.rb
|
225
|
+
- spec/fixtures/all.css
|
226
|
+
- spec/fixtures/all.js
|
227
|
+
- spec/fixtures/all_body.js
|
228
|
+
- spec/fixtures/data.csv
|
227
229
|
- spec/fixtures/datawrapper.html
|
230
|
+
- spec/fixtures/index.html
|
231
|
+
- spec/helpers/pageflow/chart/scraped_sites_helper_spec.rb
|
232
|
+
- spec/integration/file_type_spec.rb
|
228
233
|
- spec/integration/page_type_spec.rb
|
229
234
|
- spec/jobs/pageflow/chart/scrape_site_job_spec.rb
|
230
235
|
- spec/models/pageflow/chart/scraped_site_spec.rb
|
@@ -232,7 +237,6 @@ files:
|
|
232
237
|
- spec/pageflow/chart/downloader_spec.rb
|
233
238
|
- spec/pageflow/chart/refresh_tag_following_downloader_spec.rb
|
234
239
|
- spec/pageflow/chart/scraper_spec.rb
|
235
|
-
- spec/requests/scraping_site_spec.rb
|
236
240
|
- spec/spec_helper.rb
|
237
241
|
- spec/support/active_job.rb
|
238
242
|
- spec/support/factory_bot.rb
|
@@ -258,15 +262,20 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
258
262
|
- !ruby/object:Gem::Version
|
259
263
|
version: '0'
|
260
264
|
requirements: []
|
261
|
-
|
262
|
-
rubygems_version: 2.7.5
|
265
|
+
rubygems_version: 3.0.8
|
263
266
|
signing_key:
|
264
267
|
specification_version: 4
|
265
268
|
summary: Pagetype for Embedded Datawrapper Charts
|
266
269
|
test_files:
|
267
|
-
- spec/controllers/pageflow/chart/scraped_sites_controller_spec.rb
|
268
270
|
- spec/factories/scraped_sites.rb
|
271
|
+
- spec/fixtures/all.css
|
272
|
+
- spec/fixtures/all.js
|
273
|
+
- spec/fixtures/all_body.js
|
274
|
+
- spec/fixtures/data.csv
|
269
275
|
- spec/fixtures/datawrapper.html
|
276
|
+
- spec/fixtures/index.html
|
277
|
+
- spec/helpers/pageflow/chart/scraped_sites_helper_spec.rb
|
278
|
+
- spec/integration/file_type_spec.rb
|
270
279
|
- spec/integration/page_type_spec.rb
|
271
280
|
- spec/jobs/pageflow/chart/scrape_site_job_spec.rb
|
272
281
|
- spec/models/pageflow/chart/scraped_site_spec.rb
|
@@ -274,7 +283,6 @@ test_files:
|
|
274
283
|
- spec/pageflow/chart/downloader_spec.rb
|
275
284
|
- spec/pageflow/chart/refresh_tag_following_downloader_spec.rb
|
276
285
|
- spec/pageflow/chart/scraper_spec.rb
|
277
|
-
- spec/requests/scraping_site_spec.rb
|
278
286
|
- spec/spec_helper.rb
|
279
287
|
- spec/support/active_job.rb
|
280
288
|
- spec/support/factory_bot.rb
|
@@ -1,23 +0,0 @@
|
|
1
|
-
pageflow.chart.ScrapedSitesCollection = Backbone.Collection.extend({
|
2
|
-
model: pageflow.chart.ScrapedSite,
|
3
|
-
|
4
|
-
name: 'scraped_sites',
|
5
|
-
|
6
|
-
getOrFetch: function(id, options) {
|
7
|
-
options = options || {};
|
8
|
-
var model = this.get(id);
|
9
|
-
|
10
|
-
if (model) {
|
11
|
-
if (options.success) {
|
12
|
-
options.success(model);
|
13
|
-
}
|
14
|
-
}
|
15
|
-
else {
|
16
|
-
model = new pageflow.chart.ScrapedSite({id: id});
|
17
|
-
this.add(model);
|
18
|
-
model.fetch(options);
|
19
|
-
}
|
20
|
-
|
21
|
-
return model;
|
22
|
-
}
|
23
|
-
});
|
@@ -1 +0,0 @@
|
|
1
|
-
pageflow.chart.scrapedSites = new pageflow.chart.ScrapedSitesCollection();
|
@@ -1,18 +0,0 @@
|
|
1
|
-
pageflow.chart.ScrapedSiteStatusView = Backbone.Marionette.ItemView.extend({
|
2
|
-
template: 'pageflow/chart/editor/templates/scraped_site_status',
|
3
|
-
className: 'scraped_site_status',
|
4
|
-
|
5
|
-
modelEvents: {
|
6
|
-
change: 'update'
|
7
|
-
},
|
8
|
-
|
9
|
-
onRender: function() {
|
10
|
-
this.update();
|
11
|
-
},
|
12
|
-
|
13
|
-
update: function() {
|
14
|
-
this.$el.toggleClass('processed', this.model.isProcessed());
|
15
|
-
this.$el.toggleClass('failed', this.model.isFailed());
|
16
|
-
this.$el.toggleClass('processing', this.model.isProcessing());
|
17
|
-
}
|
18
|
-
});
|
@@ -1,25 +0,0 @@
|
|
1
|
-
module Pageflow
|
2
|
-
module Chart
|
3
|
-
class ScrapedSitesController < Chart::ApplicationController
|
4
|
-
respond_to :json
|
5
|
-
|
6
|
-
def create
|
7
|
-
scraped_site = ScrapedSite.create!(scraped_site_params)
|
8
|
-
scraped_site.process!
|
9
|
-
|
10
|
-
respond_with(scraped_site)
|
11
|
-
end
|
12
|
-
|
13
|
-
def show
|
14
|
-
scraped_site = ScrapedSite.find(params[:id])
|
15
|
-
respond_with(scraped_site)
|
16
|
-
end
|
17
|
-
|
18
|
-
protected
|
19
|
-
|
20
|
-
def scraped_site_params
|
21
|
-
params.require(:scraped_site).permit(:url)
|
22
|
-
end
|
23
|
-
end
|
24
|
-
end
|
25
|
-
end
|
data/config/routes.rb
DELETED
@@ -1,35 +0,0 @@
|
|
1
|
-
require 'spec_helper'
|
2
|
-
|
3
|
-
module Pageflow
|
4
|
-
module Chart
|
5
|
-
describe ScrapedSitesController do
|
6
|
-
describe '#create' do
|
7
|
-
routes { Pageflow::Chart::Engine.routes }
|
8
|
-
|
9
|
-
it 'responds with success' do
|
10
|
-
post(:create, params: {scraped_site: {url: "http://example.com/chart.html"}}, format: 'json')
|
11
|
-
|
12
|
-
expect(response.status).to eq(201)
|
13
|
-
end
|
14
|
-
|
15
|
-
it 'creates scraped site' do
|
16
|
-
expect {
|
17
|
-
post(:create, params: {scraped_site: {url: "http://example.com/chart.html"}}, format: 'json')
|
18
|
-
}.to change { ScrapedSite.count }
|
19
|
-
end
|
20
|
-
end
|
21
|
-
|
22
|
-
describe '#show' do
|
23
|
-
routes { Pageflow::Chart::Engine.routes }
|
24
|
-
|
25
|
-
it 'responds with success' do
|
26
|
-
scraped_site = create(:scraped_site, state: 'unprocessed')
|
27
|
-
|
28
|
-
get(:show, params: { id: scraped_site.id }, format: 'json')
|
29
|
-
|
30
|
-
expect(response.status).to eq(200)
|
31
|
-
end
|
32
|
-
end
|
33
|
-
end
|
34
|
-
end
|
35
|
-
end
|
@@ -1,23 +0,0 @@
|
|
1
|
-
require 'spec_helper'
|
2
|
-
|
3
|
-
module Pageflow
|
4
|
-
module Chart
|
5
|
-
describe 'scraping site', perform_jobs: true do
|
6
|
-
before do
|
7
|
-
stub_request(:get, "http://example.com/chart.html")
|
8
|
-
.to_return(:status => 200, :body => File.read('spec/fixtures/datawrapper.html'))
|
9
|
-
stub_request(:get, /js$|css$|csv$/)
|
10
|
-
.to_return(:status => 200, :body => 'file')
|
11
|
-
end
|
12
|
-
|
13
|
-
it 'downloads html and dependencies' do
|
14
|
-
post('/charts/scraped_sites.json', params: {scraped_site: {url: 'http://example.com/chart.html'}})
|
15
|
-
|
16
|
-
expect(ScrapedSite.first.html_file).to be_present
|
17
|
-
expect(ScrapedSite.first.javascript_file).to be_present
|
18
|
-
expect(ScrapedSite.first.stylesheet_file).to be_present
|
19
|
-
expect(ScrapedSite.first.csv_file).to be_present
|
20
|
-
end
|
21
|
-
end
|
22
|
-
end
|
23
|
-
end
|