geoblacklight 0.0.2 → 0.0.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (100) hide show
  1. checksums.yaml +5 -13
  2. data/.coveralls.yml +1 -0
  3. data/.gitmodules +1 -1
  4. data/.travis.yml +9 -0
  5. data/Gemfile +18 -0
  6. data/README.md +36 -38
  7. data/Rakefile +9 -9
  8. data/app/assets/fonts/geoblacklight.eot +0 -0
  9. data/app/assets/fonts/geoblacklight.svg +117 -0
  10. data/app/assets/fonts/geoblacklight.ttf +0 -0
  11. data/app/assets/fonts/geoblacklight.woff +0 -0
  12. data/app/assets/images/blacklight/logo.png +0 -0
  13. data/app/assets/javascripts/geoblacklight/application.js +1 -0
  14. data/app/assets/javascripts/geoblacklight/geoblacklight.js +86 -2
  15. data/app/assets/javascripts/geoblacklight/modules/collapse.js +6 -0
  16. data/app/assets/javascripts/geoblacklight/modules/download.js +45 -0
  17. data/app/assets/javascripts/geoblacklight/modules/geosearch.js +77 -0
  18. data/app/assets/javascripts/geoblacklight/modules/home.js +10 -0
  19. data/app/assets/javascripts/geoblacklight/modules/item.js +72 -0
  20. data/app/assets/javascripts/geoblacklight/modules/map-view.js +7 -7
  21. data/app/assets/javascripts/geoblacklight/modules/results.js +50 -0
  22. data/app/assets/stylesheets/geoblacklight/_geoblacklight.css.scss +20 -0
  23. data/app/assets/stylesheets/geoblacklight/_styles.css.scss +44 -0
  24. data/app/assets/stylesheets/geoblacklight/application.css.scss +3 -0
  25. data/app/assets/stylesheets/geoblacklight/modules/home.css.scss +3 -0
  26. data/app/assets/stylesheets/geoblacklight/modules/icon-customization.css.scss +10 -0
  27. data/app/assets/stylesheets/geoblacklight/modules/icons.css.scss +77 -0
  28. data/app/assets/stylesheets/geoblacklight/modules/item.css.scss +4 -0
  29. data/app/assets/stylesheets/geoblacklight/modules/results.css.scss +29 -0
  30. data/app/controllers/download_controller.rb +22 -94
  31. data/app/controllers/wms_controller.rb +2 -74
  32. data/app/helpers/geoblacklight_helper.rb +6 -36
  33. data/app/views/catalog/_document_split.html.erb +4 -0
  34. data/app/views/catalog/_home_text.html.erb +2 -39
  35. data/app/views/catalog/_index_split_default.html.erb +24 -0
  36. data/app/views/catalog/_show_default.html.erb +4 -57
  37. data/app/views/catalog/_show_header_default.html.erb +8 -0
  38. data/app/views/catalog/_show_sidebar.html.erb +17 -57
  39. data/app/views/catalog/_upper_metadata.html.erb +38 -0
  40. data/config/initializers/rails_config.rb +3 -0
  41. data/config/jetty.yml +6 -0
  42. data/config/locales/geoblacklight.en.yml +5 -0
  43. data/geoblacklight.gemspec +5 -5
  44. data/lib/generators/geoblacklight/install_generator.rb +45 -15
  45. data/lib/generators/geoblacklight/templates/geoblacklight.css.scss +2 -78
  46. data/lib/generators/geoblacklight/templates/settings.yml +9 -0
  47. data/lib/geoblacklight.rb +13 -0
  48. data/lib/geoblacklight/controller_override.rb +18 -0
  49. data/lib/geoblacklight/download.rb +63 -0
  50. data/lib/geoblacklight/download/kmz_download.rb +14 -0
  51. data/lib/geoblacklight/download/shapefile_download.rb +14 -0
  52. data/lib/geoblacklight/engine.rb +11 -1
  53. data/lib/geoblacklight/solr_document.rb +30 -0
  54. data/lib/geoblacklight/version.rb +1 -1
  55. data/lib/geoblacklight/view_helper_override.rb +17 -0
  56. data/lib/geoblacklight/wms_layer.rb +38 -0
  57. data/lib/geoblacklight/wms_layer/feature_info_response.rb +30 -0
  58. data/lib/tasks/geoblacklight.rake +15 -0
  59. data/spec/features/download_layer_spec.rb +18 -0
  60. data/spec/features/home_page_spec.rb +49 -0
  61. data/spec/features/layer_inspection_spec.rb +9 -0
  62. data/spec/features/layer_preview_spec.rb +16 -0
  63. data/spec/features/split_view.html.erb_spec.rb +35 -0
  64. data/spec/fixtures/test-berkeley-fields.json +44 -0
  65. data/spec/lib/geoblacklight/controller_override_spec.rb +28 -0
  66. data/spec/lib/geoblacklight/download/kmz_download_spec.rb +15 -0
  67. data/spec/lib/geoblacklight/download/shapefile_download_spec.rb +14 -0
  68. data/spec/lib/geoblacklight/download_spec.rb +76 -0
  69. data/spec/lib/geoblacklight/solr_document.rb +52 -0
  70. data/spec/lib/geoblacklight/view_helper_override_spec.rb +23 -0
  71. data/spec/lib/geoblacklight/wms_layer/feature_info_response_spec.rb +43 -0
  72. data/spec/lib/geoblacklight/wms_layer_spec.rb +33 -0
  73. data/spec/spec_helper.rb +3 -6
  74. data/spec/test_app_templates/lib/generators/test_app_generator.rb +2 -2
  75. data/spec/views/catalog/_document_split.html.erb_spec.rb +5 -0
  76. data/spec/views/catalog/_index_split.html.erb_spec.rb +5 -0
  77. data/template.rb +10 -0
  78. data/vendor/assets/javascripts/native.history.js +1 -0
  79. metadata +129 -82
  80. data/app/assets/images/geoblacklight/src_berkeley.png +0 -0
  81. data/app/assets/images/geoblacklight/src_cambridge.png +0 -0
  82. data/app/assets/images/geoblacklight/src_harvard.png +0 -0
  83. data/app/assets/images/geoblacklight/src_maryland.png +0 -0
  84. data/app/assets/images/geoblacklight/src_massgis.png +0 -0
  85. data/app/assets/images/geoblacklight/src_mit.png +0 -0
  86. data/app/assets/images/geoblacklight/src_princeton.png +0 -0
  87. data/app/assets/images/geoblacklight/src_stanford.png +0 -0
  88. data/app/assets/images/geoblacklight/src_tufts.png +0 -0
  89. data/app/assets/images/geoblacklight/src_un.png +0 -0
  90. data/app/assets/images/geoblacklight/type_arc.png +0 -0
  91. data/app/assets/images/geoblacklight/type_dot.png +0 -0
  92. data/app/assets/images/geoblacklight/type_library.png +0 -0
  93. data/app/assets/images/geoblacklight/type_map.png +0 -0
  94. data/app/assets/images/geoblacklight/type_polygon.png +0 -0
  95. data/app/assets/images/geoblacklight/type_raster.png +0 -0
  96. data/app/assets/javascripts/geoblacklight/modules/map-home.js +0 -25
  97. data/app/assets/javascripts/geoblacklight/modules/map-results.js +0 -72
  98. data/app/views/catalog/_document_list.html.erb +0 -12
  99. data/app/views/catalog/_index_header_default.html.erb +0 -59
  100. data/spec/fixtures/geoblacklight_schema/transformed.json +0 -53
@@ -0,0 +1,76 @@
1
+ require 'spec_helper'
2
+
3
+ describe Download do
4
+ let(:response) { double('response') }
5
+ let(:get) { double('get') }
6
+ let(:body) { double('body') }
7
+ let(:document) { SolrDocument.new(layer_slug_s: 'test', solr_wms_url: 'http://www.example.com/wms') }
8
+ let(:options) { { type: 'shapefile', extension: 'zip', service_type: :solr_wms_url, content_type: 'application/zip' } }
9
+ let(:download) { Download.new(document, options) }
10
+
11
+ describe '#initialize' do
12
+ it 'should initialize as a Download object' do
13
+ expect(download).to be_an Download
14
+ end
15
+ end
16
+ describe '#file_name' do
17
+ it 'should give the file name with path and extension' do
18
+ expect(download.file_name).to eq 'test-shapefile.zip'
19
+ end
20
+ end
21
+ describe '#file_path' do
22
+ it 'should return the path with name and extension' do
23
+ expect(download.file_path).to eq "#{Rails.root}/tmp/downloads/#{download.file_name}"
24
+ end
25
+ end
26
+ describe '#download_exists?' do
27
+ it 'should return false if file does not exist' do
28
+ expect(File).to receive(:file?).and_return(false)
29
+ expect(download.download_exists?).to be_falsey
30
+ end
31
+ it 'should return true if file does not exist' do
32
+ expect(File).to receive(:file?).and_return(true)
33
+ expect(download.download_exists?).to be_truthy
34
+ end
35
+ end
36
+ describe '#get' do
37
+ it 'should return filename if download exists' do
38
+ expect(download).to receive(:download_exists?).and_return(true)
39
+ expect(download.get).to eq download.file_name
40
+ end
41
+ it 'should call create_download_file if it does not exist' do
42
+ expect(download).to receive(:download_exists?).and_return(false)
43
+ expect(download).to receive(:initiate_download).and_return('')
44
+ expect(File).to receive(:open).with("#{download.file_path}.tmp", 'wb').and_return('')
45
+ expect(File).to receive(:delete).with("#{download.file_path}.tmp").and_return(nil)
46
+ expect(download.get).to eq nil
47
+ end
48
+ end
49
+ describe '#create_download_file' do
50
+ it 'should create the file in fs and delete it if the content headers are not correct' do
51
+ expect(download).to receive(:initiate_download).and_return('')
52
+ expect(File).to receive(:open).with("#{download.file_path}.tmp", 'wb').and_return('')
53
+ expect(File).to receive(:delete).with("#{download.file_path}.tmp").and_return(nil)
54
+ expect(download.create_download_file).to eq nil
55
+ end
56
+ it 'should create the file, write it, and then rename from tmp if everything is ok' do
57
+ shapefile = OpenStruct.new(headers: {'content-type' => 'application/zip'})
58
+ expect(download).to receive(:initiate_download).and_return(shapefile)
59
+ expect(File).to receive(:open).with("#{download.file_path}.tmp", 'wb').and_return('')
60
+ expect(File).to receive(:rename)
61
+ expect(download.create_download_file).to eq download.file_name
62
+ end
63
+ end
64
+ describe '#initiate_download' do
65
+ it 'request download from server' do
66
+ expect(response).to receive(:get).and_return(get)
67
+ expect(Faraday).to receive(:new).with(url: 'http://www.example.com/wms').and_return(response)
68
+ download.initiate_download
69
+ end
70
+ it 'should return nil with a connection failure' do
71
+ expect(response).to receive(:get).and_return(Faraday::Error::ConnectionFailed)
72
+ expect(Faraday).to receive(:new).with(url: 'http://www.example.com/wms').and_return(response)
73
+ expect(download.initiate_download).to be Faraday::ConnectionFailed
74
+ end
75
+ end
76
+ end
@@ -0,0 +1,52 @@
1
+ require 'spec_helper'
2
+
3
+ describe Geoblacklight::SolrDocument do
4
+ let(:document) { SolrDocument.new(document_attributes) }
5
+ describe '#available?' do
6
+ let(:document_attributes) { {} }
7
+ describe 'a public document' do
8
+ it 'should always be available' do
9
+ allow(document).to receive('same_institution?').and_return(false)
10
+ allow(document).to receive('public?').and_return(true)
11
+ expect(document.available?).to be_truthy
12
+ end
13
+ end
14
+ describe 'a restricted document' do
15
+ describe 'should only be available if from same institution' do
16
+ allow(document).to receive('same_institution?').and_return(true)
17
+ allow(document).to receive('public?').and_return(false)
18
+ expect(document.available?).to be_truthy
19
+ end
20
+ end
21
+ end
22
+ describe '#public?' do
23
+ describe 'a public document' do
24
+ let(:document_attributes) { { dc_rights_s: 'Public' } }
25
+ it 'should be public' do
26
+ expect(document.public?).to be_truthy
27
+ end
28
+ end
29
+ describe 'a restricted resource' do
30
+ let(:document_attributes) { { dc_rights_s: 'Restricted' } }
31
+ it 'should not be public' do
32
+ expect(document.public?).to be_falsey
33
+ end
34
+ end
35
+ end
36
+ describe '#same_institution?' do
37
+ describe 'within the same institution' do
38
+ let(:document_attributes) { { dct_provenance_s: 'Stanford' } }
39
+ it 'should be true' do
40
+ allow(Settings).to receive('Institution').and_return('Stanford')
41
+ expect(document.same_institution?).to be_truthy
42
+ end
43
+ end
44
+ describe 'within a different institution' do
45
+ let(:document_attributes) { { dct_provenance_s: 'MIT' } }
46
+ it 'should be false' do
47
+ allow(Settings).to receive('Institution').and_return('Stanford')
48
+ expect(document.same_institution?).to be_falsey
49
+ end
50
+ end
51
+ end
52
+ end
@@ -0,0 +1,23 @@
1
+ require 'spec_helper'
2
+
3
+ describe Geoblacklight::ViewHelperOverride do
4
+ class GeoblacklightControllerTestClass
5
+ attr_accessor :params
6
+ end
7
+
8
+ before(:each) do
9
+ @fake_controller = GeoblacklightControllerTestClass.new
10
+ @fake_controller.extend(Geoblacklight::ViewHelperOverride)
11
+ end
12
+
13
+ describe 'has_spatial_parameters?' do
14
+ it 'should not have spatial parameters' do
15
+ @fake_controller.params = {}
16
+ expect(@fake_controller.has_spatial_parameters?).to be_falsey
17
+ end
18
+ it 'should have spatial parameters' do
19
+ @fake_controller.params = { bbox: '123'}
20
+ expect(@fake_controller.has_spatial_parameters?).to be_truthy
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,43 @@
1
+ require 'spec_helper'
2
+
3
+ describe FeatureInfoResponse do
4
+ let(:response) { FeatureInfoResponse.new(OpenStruct.new(body: '<html><body><table><th>Header1</th><th>Header2</th><td>value1</td><td>value2</td></body></html>', headers: {'content-type' => 'all good'})) }
5
+ let(:error_response) { FeatureInfoResponse.new({error: 'bad stuff'}) }
6
+ let(:content_response) { FeatureInfoResponse.new(OpenStruct.new(headers: { 'content-type' => 'text/xml' })) }
7
+
8
+ describe '#initialize' do
9
+ it 'should initialize as a FeatureInfoResponse type' do
10
+ expect(response).to be_an FeatureInfoResponse
11
+ end
12
+ end
13
+
14
+ describe '#error?' do
15
+ it 'if no error' do
16
+ expect(response.error?).to be_falsey
17
+ end
18
+ it 'if error key is present' do
19
+ expect(error_response.error?).to be_truthy
20
+ end
21
+ it 'if content-type header is text/xml' do
22
+ expect(content_response.error?).to be_truthy
23
+ end
24
+ end
25
+
26
+ describe '#format' do
27
+ it 'should return a formated response' do
28
+ expect(response.format).to_not be_nil
29
+ expect(response.format[:values].length).to eq 2
30
+ expect(response.format[:values][0]).to eq ["Header1", "value1"]
31
+ expect(response.format[:values][1]).to eq ["Header2", "value2"]
32
+ end
33
+ end
34
+
35
+ describe '#check' do
36
+ it 'should return a formated response if no errors' do
37
+ expect(response.check).to eq response.format
38
+ end
39
+ it 'should return the unformated response if there are errors' do
40
+ expect(error_response.check).to eq error_response.instance_variable_get('@response')
41
+ end
42
+ end
43
+ end
@@ -0,0 +1,33 @@
1
+ require 'spec_helper'
2
+
3
+ describe WmsLayer do
4
+ let(:params) { { 'URL' => 'http://www.example.com/', 'X' => '277' } }
5
+ let(:wms_layer) { WmsLayer.new(params) }
6
+ describe '#initialize' do
7
+ it 'should initialize as a WmsLayer object' do
8
+ expect(wms_layer).to be_an WmsLayer
9
+ end
10
+ end
11
+
12
+ describe '#url' do
13
+ it 'should return only URL parameter' do
14
+ expect(wms_layer.url).to eq 'http://www.example.com/'
15
+ end
16
+ end
17
+
18
+ describe '#search_params' do
19
+ it 'should return all params except URL plus default params' do
20
+ expect(wms_layer.search_params.length).to eq 8
21
+ expect(wms_layer.search_params).to_not include 'URL' => 'http://www.example.com'
22
+ end
23
+ end
24
+
25
+ describe '#request_response' do
26
+ it 'should return a Faraday object' do
27
+ faraday = double('faraday')
28
+ allow(faraday).to receive(:get)
29
+ expect(Faraday).to receive(:new).and_return(faraday)
30
+ WmsLayer.new(params)
31
+ end
32
+ end
33
+ end
data/spec/spec_helper.rb CHANGED
@@ -1,6 +1,8 @@
1
1
  ENV["RAILS_ENV"] ||= 'test'
2
2
 
3
3
  require 'engine_cart'
4
+ require 'coveralls'
5
+ Coveralls.wear!('rails')
4
6
  EngineCart.load_application!
5
7
 
6
8
  require 'capybara/poltergeist'
@@ -16,8 +18,6 @@ end
16
18
 
17
19
  if ENV["COVERAGE"] or ENV["CI"]
18
20
  require 'simplecov'
19
- require 'coveralls'
20
-
21
21
  SimpleCov.formatter = Coveralls::SimpleCov::Formatter
22
22
  SimpleCov.start do
23
23
  add_filter "/spec/"
@@ -25,13 +25,10 @@ if ENV["COVERAGE"] or ENV["CI"]
25
25
  end
26
26
 
27
27
 
28
- require 'Geoblacklight'
28
+ require 'geoblacklight'
29
29
 
30
30
  require 'rspec/rails'
31
- require 'rspec/autorun'
32
31
  require 'capybara/rspec'
33
32
 
34
-
35
33
  RSpec.configure do |config|
36
-
37
34
  end
@@ -4,7 +4,7 @@ class TestAppGenerator < Rails::Generators::Base
4
4
  source_root "./spec/test_app_templates"
5
5
 
6
6
  def add_gems
7
- gem 'blacklight', ">= 5.4.0"
7
+ gem 'blacklight', "~> 5.7.1"
8
8
  Bundler.with_clean_env do
9
9
  run "bundle install"
10
10
  end
@@ -13,7 +13,7 @@ class TestAppGenerator < Rails::Generators::Base
13
13
  def run_blacklight_generator
14
14
  say_status("warning", "GENERATING BL", :yellow)
15
15
 
16
- generate 'blacklight:install'
16
+ generate 'blacklight:install', '--devise'
17
17
  end
18
18
 
19
19
  def install_engine
@@ -0,0 +1,5 @@
1
+ require 'spec_helper'
2
+
3
+ describe 'catalog/_document_split.html.erb' do
4
+ # TODO js plugin refactor really needs to be redone so that the views can be testable
5
+ end
@@ -0,0 +1,5 @@
1
+ require 'spec_helper'
2
+
3
+ describe 'catalog/_document_split.html.erb' do
4
+ # TODO js plugin refactor really needs to be redone so that the views can be testable
5
+ end
data/template.rb ADDED
@@ -0,0 +1,10 @@
1
+ gem 'blacklight'
2
+ gem 'geoblacklight', github: 'geoblacklight/geoblacklight'
3
+ gem 'jettywrapper'
4
+
5
+ run 'bundle install'
6
+
7
+ generate 'blacklight:install', '--devise'
8
+ generate 'geoblacklight:install'
9
+
10
+ rake 'db:migrate'
@@ -0,0 +1 @@
1
+ (function(e,t){"use strict";var n=e.History=e.History||{};if(typeof n.Adapter!="undefined")throw new Error("History.js Adapter has already been loaded...");n.Adapter={handlers:{},_uid:1,uid:function(e){return e._uid||(e._uid=n.Adapter._uid++)},bind:function(e,t,r){var i=n.Adapter.uid(e);n.Adapter.handlers[i]=n.Adapter.handlers[i]||{},n.Adapter.handlers[i][t]=n.Adapter.handlers[i][t]||[],n.Adapter.handlers[i][t].push(r),e["on"+t]=function(e,t){return function(r){n.Adapter.trigger(e,t,r)}}(e,t)},trigger:function(e,t,r){r=r||{};var i=n.Adapter.uid(e),s,o;n.Adapter.handlers[i]=n.Adapter.handlers[i]||{},n.Adapter.handlers[i][t]=n.Adapter.handlers[i][t]||[];for(s=0,o=n.Adapter.handlers[i][t].length;s<o;++s)n.Adapter.handlers[i][t][s].apply(this,[r])},extractEventData:function(e,n){var r=n&&n[e]||t;return r},onDomLoad:function(t){var n=e.setTimeout(function(){t()},2e3);e.onload=function(){clearTimeout(n),t()}}},typeof n.init!="undefined"&&n.init()})(window),function(e,t){"use strict";var n=e.console||t,r=e.document,i=e.navigator,s=!1,o=e.setTimeout,u=e.clearTimeout,a=e.setInterval,f=e.clearInterval,l=e.JSON,c=e.alert,h=e.History=e.History||{},p=e.history;try{s=e.sessionStorage,s.setItem("TEST","1"),s.removeItem("TEST")}catch(d){s=!1}l.stringify=l.stringify||l.encode,l.parse=l.parse||l.decode;if(typeof h.init!="undefined")throw new Error("History.js Core has already been loaded...");h.init=function(e){return typeof h.Adapter=="undefined"?!1:(typeof h.initCore!="undefined"&&h.initCore(),typeof h.initHtml4!="undefined"&&h.initHtml4(),!0)},h.initCore=function(d){if(typeof h.initCore.initialized!="undefined")return!1;h.initCore.initialized=!0,h.options=h.options||{},h.options.hashChangeInterval=h.options.hashChangeInterval||100,h.options.safariPollInterval=h.options.safariPollInterval||500,h.options.doubleCheckInterval=h.options.doubleCheckInterval||500,h.options.disableSuid=h.options.disableSuid||!1,h.options.storeInterval=h.options.storeInterval||1e3,h.options.busyDelay=h.options.busyDelay||250,h.options.debug=h.options.debug||!1,h.options.initialTitle=h.options.initialTitle||r.title,h.options.html4Mode=h.options.html4Mode||!1,h.options.delayInit=h.options.delayInit||!1,h.intervalList=[],h.clearAllIntervals=function(){var e,t=h.intervalList;if(typeof t!="undefined"&&t!==null){for(e=0;e<t.length;e++)f(t[e]);h.intervalList=null}},h.debug=function(){(h.options.debug||!1)&&h.log.apply(h,arguments)},h.log=function(){var e=typeof n!="undefined"&&typeof n.log!="undefined"&&typeof n.log.apply!="undefined",t=r.getElementById("log"),i,s,o,u,a;e?(u=Array.prototype.slice.call(arguments),i=u.shift(),typeof n.debug!="undefined"?n.debug.apply(n,[i,u]):n.log.apply(n,[i,u])):i="\n"+arguments[0]+"\n";for(s=1,o=arguments.length;s<o;++s){a=arguments[s];if(typeof a=="object"&&typeof l!="undefined")try{a=l.stringify(a)}catch(f){}i+="\n"+a+"\n"}return t?(t.value+=i+"\n-----\n",t.scrollTop=t.scrollHeight-t.clientHeight):e||c(i),!0},h.getInternetExplorerMajorVersion=function(){var e=h.getInternetExplorerMajorVersion.cached=typeof h.getInternetExplorerMajorVersion.cached!="undefined"?h.getInternetExplorerMajorVersion.cached:function(){var e=3,t=r.createElement("div"),n=t.getElementsByTagName("i");while((t.innerHTML="<!--[if gt IE "+ ++e+"]><i></i><![endif]-->")&&n[0]);return e>4?e:!1}();return e},h.isInternetExplorer=function(){var e=h.isInternetExplorer.cached=typeof h.isInternetExplorer.cached!="undefined"?h.isInternetExplorer.cached:Boolean(h.getInternetExplorerMajorVersion());return e},h.options.html4Mode?h.emulated={pushState:!0,hashChange:!0}:h.emulated={pushState:!Boolean(e.history&&e.history.pushState&&e.history.replaceState&&!/ Mobile\/([1-7][a-z]|(8([abcde]|f(1[0-8]))))/i.test(i.userAgent)&&!/AppleWebKit\/5([0-2]|3[0-2])/i.test(i.userAgent)),hashChange:Boolean(!("onhashchange"in e||"onhashchange"in r)||h.isInternetExplorer()&&h.getInternetExplorerMajorVersion()<8)},h.enabled=!h.emulated.pushState,h.bugs={setHash:Boolean(!h.emulated.pushState&&i.vendor==="Apple Computer, Inc."&&/AppleWebKit\/5([0-2]|3[0-3])/.test(i.userAgent)),safariPoll:Boolean(!h.emulated.pushState&&i.vendor==="Apple Computer, Inc."&&/AppleWebKit\/5([0-2]|3[0-3])/.test(i.userAgent)),ieDoubleCheck:Boolean(h.isInternetExplorer()&&h.getInternetExplorerMajorVersion()<8),hashEscape:Boolean(h.isInternetExplorer()&&h.getInternetExplorerMajorVersion()<7)},h.isEmptyObject=function(e){for(var t in e)if(e.hasOwnProperty(t))return!1;return!0},h.cloneObject=function(e){var t,n;return e?(t=l.stringify(e),n=l.parse(t)):n={},n},h.getRootUrl=function(){var e=r.location.protocol+"//"+(r.location.hostname||r.location.host);if(r.location.port||!1)e+=":"+r.location.port;return e+="/",e},h.getBaseHref=function(){var e=r.getElementsByTagName("base"),t=null,n="";return e.length===1&&(t=e[0],n=t.href.replace(/[^\/]+$/,"")),n=n.replace(/\/+$/,""),n&&(n+="/"),n},h.getBaseUrl=function(){var e=h.getBaseHref()||h.getBasePageUrl()||h.getRootUrl();return e},h.getPageUrl=function(){var e=h.getState(!1,!1),t=(e||{}).url||h.getLocationHref(),n;return n=t.replace(/\/+$/,"").replace(/[^\/]+$/,function(e,t,n){return/\./.test(e)?e:e+"/"}),n},h.getBasePageUrl=function(){var e=h.getLocationHref().replace(/[#\?].*/,"").replace(/[^\/]+$/,function(e,t,n){return/[^\/]$/.test(e)?"":e}).replace(/\/+$/,"")+"/";return e},h.getFullUrl=function(e,t){var n=e,r=e.substring(0,1);return t=typeof t=="undefined"?!0:t,/[a-z]+\:\/\//.test(e)||(r==="/"?n=h.getRootUrl()+e.replace(/^\/+/,""):r==="#"?n=h.getPageUrl().replace(/#.*/,"")+e:r==="?"?n=h.getPageUrl().replace(/[\?#].*/,"")+e:t?n=h.getBaseUrl()+e.replace(/^(\.\/)+/,""):n=h.getBasePageUrl()+e.replace(/^(\.\/)+/,"")),n.replace(/\#$/,"")},h.getShortUrl=function(e){var t=e,n=h.getBaseUrl(),r=h.getRootUrl();return h.emulated.pushState&&(t=t.replace(n,"")),t=t.replace(r,"/"),h.isTraditionalAnchor(t)&&(t="./"+t),t=t.replace(/^(\.\/)+/g,"./").replace(/\#$/,""),t},h.getLocationHref=function(e){return e=e||r,e.URL===e.location.href?e.location.href:e.location.href===decodeURIComponent(e.URL)?e.URL:e.location.hash&&decodeURIComponent(e.location.href.replace(/^[^#]+/,""))===e.location.hash?e.location.href:e.URL.indexOf("#")==-1&&e.location.href.indexOf("#")!=-1?e.location.href:e.URL||e.location.href},h.store={},h.idToState=h.idToState||{},h.stateToId=h.stateToId||{},h.urlToId=h.urlToId||{},h.storedStates=h.storedStates||[],h.savedStates=h.savedStates||[],h.normalizeStore=function(){h.store.idToState=h.store.idToState||{},h.store.urlToId=h.store.urlToId||{},h.store.stateToId=h.store.stateToId||{}},h.getState=function(e,t){typeof e=="undefined"&&(e=!0),typeof t=="undefined"&&(t=!0);var n=h.getLastSavedState();return!n&&t&&(n=h.createStateObject()),e&&(n=h.cloneObject(n),n.url=n.cleanUrl||n.url),n},h.getIdByState=function(e){var t=h.extractId(e.url),n;if(!t){n=h.getStateString(e);if(typeof h.stateToId[n]!="undefined")t=h.stateToId[n];else if(typeof h.store.stateToId[n]!="undefined")t=h.store.stateToId[n];else{for(;;){t=(new Date).getTime()+String(Math.random()).replace(/\D/g,"");if(typeof h.idToState[t]=="undefined"&&typeof h.store.idToState[t]=="undefined")break}h.stateToId[n]=t,h.idToState[t]=e}}return t},h.normalizeState=function(e){var t,n;if(!e||typeof e!="object")e={};if(typeof e.normalized!="undefined")return e;if(!e.data||typeof e.data!="object")e.data={};return t={},t.normalized=!0,t.title=e.title||"",t.url=h.getFullUrl(e.url?e.url:h.getLocationHref()),t.hash=h.getShortUrl(t.url),t.data=h.cloneObject(e.data),t.id=h.getIdByState(t),t.cleanUrl=t.url.replace(/\??\&_suid.*/,""),t.url=t.cleanUrl,n=!h.isEmptyObject(t.data),(t.title||n)&&h.options.disableSuid!==!0&&(t.hash=h.getShortUrl(t.url).replace(/\??\&_suid.*/,""),/\?/.test(t.hash)||(t.hash+="?"),t.hash+="&_suid="+t.id),t.hashedUrl=h.getFullUrl(t.hash),(h.emulated.pushState||h.bugs.safariPoll)&&h.hasUrlDuplicate(t)&&(t.url=t.hashedUrl),t},h.createStateObject=function(e,t,n){var r={data:e,title:t,url:n};return r=h.normalizeState(r),r},h.getStateById=function(e){e=String(e);var n=h.idToState[e]||h.store.idToState[e]||t;return n},h.getStateString=function(e){var t,n,r;return t=h.normalizeState(e),n={data:t.data,title:e.title,url:e.url},r=l.stringify(n),r},h.getStateId=function(e){var t,n;return t=h.normalizeState(e),n=t.id,n},h.getHashByState=function(e){var t,n;return t=h.normalizeState(e),n=t.hash,n},h.extractId=function(e){var t,n,r,i;return e.indexOf("#")!=-1?i=e.split("#")[0]:i=e,n=/(.*)\&_suid=([0-9]+)$/.exec(i),r=n?n[1]||e:e,t=n?String(n[2]||""):"",t||!1},h.isTraditionalAnchor=function(e){var t=!/[\/\?\.]/.test(e);return t},h.extractState=function(e,t){var n=null,r,i;return t=t||!1,r=h.extractId(e),r&&(n=h.getStateById(r)),n||(i=h.getFullUrl(e),r=h.getIdByUrl(i)||!1,r&&(n=h.getStateById(r)),!n&&t&&!h.isTraditionalAnchor(e)&&(n=h.createStateObject(null,null,i))),n},h.getIdByUrl=function(e){var n=h.urlToId[e]||h.store.urlToId[e]||t;return n},h.getLastSavedState=function(){return h.savedStates[h.savedStates.length-1]||t},h.getLastStoredState=function(){return h.storedStates[h.storedStates.length-1]||t},h.hasUrlDuplicate=function(e){var t=!1,n;return n=h.extractState(e.url),t=n&&n.id!==e.id,t},h.storeState=function(e){return h.urlToId[e.url]=e.id,h.storedStates.push(h.cloneObject(e)),e},h.isLastSavedState=function(e){var t=!1,n,r,i;return h.savedStates.length&&(n=e.id,r=h.getLastSavedState(),i=r.id,t=n===i),t},h.saveState=function(e){return h.isLastSavedState(e)?!1:(h.savedStates.push(h.cloneObject(e)),!0)},h.getStateByIndex=function(e){var t=null;return typeof e=="undefined"?t=h.savedStates[h.savedStates.length-1]:e<0?t=h.savedStates[h.savedStates.length+e]:t=h.savedStates[e],t},h.getCurrentIndex=function(){var e=null;return h.savedStates.length<1?e=0:e=h.savedStates.length-1,e},h.getHash=function(e){var t=h.getLocationHref(e),n;return n=h.getHashByUrl(t),n},h.unescapeHash=function(e){var t=h.normalizeHash(e);return t=decodeURIComponent(t),t},h.normalizeHash=function(e){var t=e.replace(/[^#]*#/,"").replace(/#.*/,"");return t},h.setHash=function(e,t){var n,i;return t!==!1&&h.busy()?(h.pushQueue({scope:h,callback:h.setHash,args:arguments,queue:t}),!1):(h.busy(!0),n=h.extractState(e,!0),n&&!h.emulated.pushState?h.pushState(n.data,n.title,n.url,!1):h.getHash()!==e&&(h.bugs.setHash?(i=h.getPageUrl(),h.pushState(null,null,i+"#"+e,!1)):r.location.hash=e),h)},h.escapeHash=function(t){var n=h.normalizeHash(t);return n=e.encodeURIComponent(n),h.bugs.hashEscape||(n=n.replace(/\%21/g,"!").replace(/\%26/g,"&").replace(/\%3D/g,"=").replace(/\%3F/g,"?")),n},h.getHashByUrl=function(e){var t=String(e).replace(/([^#]*)#?([^#]*)#?(.*)/,"$2");return t=h.unescapeHash(t),t},h.setTitle=function(e){var t=e.title,n;t||(n=h.getStateByIndex(0),n&&n.url===e.url&&(t=n.title||h.options.initialTitle));try{r.getElementsByTagName("title")[0].innerHTML=t.replace("<","&lt;").replace(">","&gt;").replace(" & "," &amp; ")}catch(i){}return r.title=t,h},h.queues=[],h.busy=function(e){typeof e!="undefined"?h.busy.flag=e:typeof h.busy.flag=="undefined"&&(h.busy.flag=!1);if(!h.busy.flag){u(h.busy.timeout);var t=function(){var e,n,r;if(h.busy.flag)return;for(e=h.queues.length-1;e>=0;--e){n=h.queues[e];if(n.length===0)continue;r=n.shift(),h.fireQueueItem(r),h.busy.timeout=o(t,h.options.busyDelay)}};h.busy.timeout=o(t,h.options.busyDelay)}return h.busy.flag},h.busy.flag=!1,h.fireQueueItem=function(e){return e.callback.apply(e.scope||h,e.args||[])},h.pushQueue=function(e){return h.queues[e.queue||0]=h.queues[e.queue||0]||[],h.queues[e.queue||0].push(e),h},h.queue=function(e,t){return typeof e=="function"&&(e={callback:e}),typeof t!="undefined"&&(e.queue=t),h.busy()?h.pushQueue(e):h.fireQueueItem(e),h},h.clearQueue=function(){return h.busy.flag=!1,h.queues=[],h},h.stateChanged=!1,h.doubleChecker=!1,h.doubleCheckComplete=function(){return h.stateChanged=!0,h.doubleCheckClear(),h},h.doubleCheckClear=function(){return h.doubleChecker&&(u(h.doubleChecker),h.doubleChecker=!1),h},h.doubleCheck=function(e){return h.stateChanged=!1,h.doubleCheckClear(),h.bugs.ieDoubleCheck&&(h.doubleChecker=o(function(){return h.doubleCheckClear(),h.stateChanged||e(),!0},h.options.doubleCheckInterval)),h},h.safariStatePoll=function(){var t=h.extractState(h.getLocationHref()),n;if(!h.isLastSavedState(t))return n=t,n||(n=h.createStateObject()),h.Adapter.trigger(e,"popstate"),h;return},h.back=function(e){return e!==!1&&h.busy()?(h.pushQueue({scope:h,callback:h.back,args:arguments,queue:e}),!1):(h.busy(!0),h.doubleCheck(function(){h.back(!1)}),p.go(-1),!0)},h.forward=function(e){return e!==!1&&h.busy()?(h.pushQueue({scope:h,callback:h.forward,args:arguments,queue:e}),!1):(h.busy(!0),h.doubleCheck(function(){h.forward(!1)}),p.go(1),!0)},h.go=function(e,t){var n;if(e>0)for(n=1;n<=e;++n)h.forward(t);else{if(!(e<0))throw new Error("History.go: History.go requires a positive or negative integer passed.");for(n=-1;n>=e;--n)h.back(t)}return h};if(h.emulated.pushState){var v=function(){};h.pushState=h.pushState||v,h.replaceState=h.replaceState||v}else h.onPopState=function(t,n){var r=!1,i=!1,s,o;return h.doubleCheckComplete(),s=h.getHash(),s?(o=h.extractState(s||h.getLocationHref(),!0),o?h.replaceState(o.data,o.title,o.url,!1):(h.Adapter.trigger(e,"anchorchange"),h.busy(!1)),h.expectedStateId=!1,!1):(r=h.Adapter.extractEventData("state",t,n)||!1,r?i=h.getStateById(r):h.expectedStateId?i=h.getStateById(h.expectedStateId):i=h.extractState(h.getLocationHref()),i||(i=h.createStateObject(null,null,h.getLocationHref())),h.expectedStateId=!1,h.isLastSavedState(i)?(h.busy(!1),!1):(h.storeState(i),h.saveState(i),h.setTitle(i),h.Adapter.trigger(e,"statechange"),h.busy(!1),!0))},h.Adapter.bind(e,"popstate",h.onPopState),h.pushState=function(t,n,r,i){if(h.getHashByUrl(r)&&h.emulated.pushState)throw new Error("History.js does not support states with fragement-identifiers (hashes/anchors).");if(i!==!1&&h.busy())return h.pushQueue({scope:h,callback:h.pushState,args:arguments,queue:i}),!1;h.busy(!0);var s=h.createStateObject(t,n,r);return h.isLastSavedState(s)?h.busy(!1):(h.storeState(s),h.expectedStateId=s.id,p.pushState(s.id,s.title,s.url),h.Adapter.trigger(e,"popstate")),!0},h.replaceState=function(t,n,r,i){if(h.getHashByUrl(r)&&h.emulated.pushState)throw new Error("History.js does not support states with fragement-identifiers (hashes/anchors).");if(i!==!1&&h.busy())return h.pushQueue({scope:h,callback:h.replaceState,args:arguments,queue:i}),!1;h.busy(!0);var s=h.createStateObject(t,n,r);return h.isLastSavedState(s)?h.busy(!1):(h.storeState(s),h.expectedStateId=s.id,p.replaceState(s.id,s.title,s.url),h.Adapter.trigger(e,"popstate")),!0};if(s){try{h.store=l.parse(s.getItem("History.store"))||{}}catch(m){h.store={}}h.normalizeStore()}else h.store={},h.normalizeStore();h.Adapter.bind(e,"unload",h.clearAllIntervals),h.saveState(h.storeState(h.extractState(h.getLocationHref(),!0))),s&&(h.onUnload=function(){var e,t,n;try{e=l.parse(s.getItem("History.store"))||{}}catch(r){e={}}e.idToState=e.idToState||{},e.urlToId=e.urlToId||{},e.stateToId=e.stateToId||{};for(t in h.idToState){if(!h.idToState.hasOwnProperty(t))continue;e.idToState[t]=h.idToState[t]}for(t in h.urlToId){if(!h.urlToId.hasOwnProperty(t))continue;e.urlToId[t]=h.urlToId[t]}for(t in h.stateToId){if(!h.stateToId.hasOwnProperty(t))continue;e.stateToId[t]=h.stateToId[t]}h.store=e,h.normalizeStore(),n=l.stringify(e);try{s.setItem("History.store",n)}catch(i){if(i.code!==DOMException.QUOTA_EXCEEDED_ERR)throw i;s.length&&(s.removeItem("History.store"),s.setItem("History.store",n))}},h.intervalList.push(a(h.onUnload,h.options.storeInterval)),h.Adapter.bind(e,"beforeunload",h.onUnload),h.Adapter.bind(e,"unload",h.onUnload));if(!h.emulated.pushState){h.bugs.safariPoll&&h.intervalList.push(a(h.safariStatePoll,h.options.safariPollInterval));if(i.vendor==="Apple Computer, Inc."||(i.appCodeName||"")==="Mozilla")h.Adapter.bind(e,"hashchange",function(){h.Adapter.trigger(e,"popstate")}),h.getHash()&&h.Adapter.onDomLoad(function(){h.Adapter.trigger(e,"hashchange")})}},(!h.options||!h.options.delayInit)&&h.init()}(window)
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: geoblacklight
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Darren Hardy
@@ -9,202 +9,202 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2014-07-02 00:00:00.000000000 Z
12
+ date: 2014-11-07 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
- name: rails
15
+ name: blacklight
16
16
  requirement: !ruby/object:Gem::Requirement
17
17
  requirements:
18
- - - ~>
18
+ - - "~>"
19
19
  - !ruby/object:Gem::Version
20
- version: 4.0.0
20
+ version: 5.7.1
21
21
  type: :runtime
22
22
  prerelease: false
23
23
  version_requirements: !ruby/object:Gem::Requirement
24
24
  requirements:
25
- - - ~>
25
+ - - "~>"
26
26
  - !ruby/object:Gem::Version
27
- version: 4.0.0
27
+ version: 5.7.1
28
28
  - !ruby/object:Gem::Dependency
29
- name: blacklight
29
+ name: leaflet-rails
30
30
  requirement: !ruby/object:Gem::Requirement
31
31
  requirements:
32
- - - ~>
32
+ - - "~>"
33
33
  - !ruby/object:Gem::Version
34
- version: 5.4.0
34
+ version: 0.7.3
35
35
  type: :runtime
36
36
  prerelease: false
37
37
  version_requirements: !ruby/object:Gem::Requirement
38
38
  requirements:
39
- - - ~>
39
+ - - "~>"
40
40
  - !ruby/object:Gem::Version
41
- version: 5.4.0
41
+ version: 0.7.3
42
42
  - !ruby/object:Gem::Dependency
43
- name: bootstrap-sass
43
+ name: blacklight_range_limit
44
44
  requirement: !ruby/object:Gem::Requirement
45
45
  requirements:
46
- - - ~>
46
+ - - "~>"
47
47
  - !ruby/object:Gem::Version
48
- version: '3.0'
48
+ version: 5.0.1
49
49
  type: :runtime
50
50
  prerelease: false
51
51
  version_requirements: !ruby/object:Gem::Requirement
52
52
  requirements:
53
- - - ~>
53
+ - - "~>"
54
54
  - !ruby/object:Gem::Version
55
- version: '3.0'
55
+ version: 5.0.1
56
56
  - !ruby/object:Gem::Dependency
57
- name: leaflet-rails
57
+ name: font-awesome-rails
58
58
  requirement: !ruby/object:Gem::Requirement
59
59
  requirements:
60
- - - ~>
60
+ - - "~>"
61
61
  - !ruby/object:Gem::Version
62
- version: 0.7.3
62
+ version: 4.1.0.0
63
63
  type: :runtime
64
64
  prerelease: false
65
65
  version_requirements: !ruby/object:Gem::Requirement
66
66
  requirements:
67
- - - ~>
67
+ - - "~>"
68
68
  - !ruby/object:Gem::Version
69
- version: 0.7.3
69
+ version: 4.1.0.0
70
70
  - !ruby/object:Gem::Dependency
71
- name: blacklight_range_limit
71
+ name: httparty
72
72
  requirement: !ruby/object:Gem::Requirement
73
73
  requirements:
74
- - - ~>
74
+ - - "~>"
75
75
  - !ruby/object:Gem::Version
76
- version: 5.0.1
76
+ version: 0.13.1
77
77
  type: :runtime
78
78
  prerelease: false
79
79
  version_requirements: !ruby/object:Gem::Requirement
80
80
  requirements:
81
- - - ~>
81
+ - - "~>"
82
82
  - !ruby/object:Gem::Version
83
- version: 5.0.1
83
+ version: 0.13.1
84
84
  - !ruby/object:Gem::Dependency
85
- name: font-awesome-rails
85
+ name: rails_config
86
86
  requirement: !ruby/object:Gem::Requirement
87
87
  requirements:
88
- - - ~>
88
+ - - ">="
89
89
  - !ruby/object:Gem::Version
90
- version: 4.1.0.0
90
+ version: '0'
91
91
  type: :runtime
92
92
  prerelease: false
93
93
  version_requirements: !ruby/object:Gem::Requirement
94
94
  requirements:
95
- - - ~>
95
+ - - ">="
96
96
  - !ruby/object:Gem::Version
97
- version: 4.1.0.0
97
+ version: '0'
98
98
  - !ruby/object:Gem::Dependency
99
- name: httparty
99
+ name: faraday
100
100
  requirement: !ruby/object:Gem::Requirement
101
101
  requirements:
102
- - - ~>
102
+ - - ">="
103
103
  - !ruby/object:Gem::Version
104
- version: 0.13.1
104
+ version: '0'
105
105
  type: :runtime
106
106
  prerelease: false
107
107
  version_requirements: !ruby/object:Gem::Requirement
108
108
  requirements:
109
- - - ~>
109
+ - - ">="
110
110
  - !ruby/object:Gem::Version
111
- version: 0.13.1
111
+ version: '0'
112
112
  - !ruby/object:Gem::Dependency
113
113
  name: bundler
114
114
  requirement: !ruby/object:Gem::Requirement
115
115
  requirements:
116
- - - ~>
116
+ - - "~>"
117
117
  - !ruby/object:Gem::Version
118
118
  version: '1.5'
119
119
  type: :development
120
120
  prerelease: false
121
121
  version_requirements: !ruby/object:Gem::Requirement
122
122
  requirements:
123
- - - ~>
123
+ - - "~>"
124
124
  - !ruby/object:Gem::Version
125
125
  version: '1.5'
126
126
  - !ruby/object:Gem::Dependency
127
127
  name: rake
128
128
  requirement: !ruby/object:Gem::Requirement
129
129
  requirements:
130
- - - ~>
130
+ - - "~>"
131
131
  - !ruby/object:Gem::Version
132
132
  version: 10.3.2
133
133
  type: :development
134
134
  prerelease: false
135
135
  version_requirements: !ruby/object:Gem::Requirement
136
136
  requirements:
137
- - - ~>
137
+ - - "~>"
138
138
  - !ruby/object:Gem::Version
139
139
  version: 10.3.2
140
140
  - !ruby/object:Gem::Dependency
141
141
  name: rspec-rails
142
142
  requirement: !ruby/object:Gem::Requirement
143
143
  requirements:
144
- - - ~>
144
+ - - "~>"
145
145
  - !ruby/object:Gem::Version
146
146
  version: 3.0.1
147
147
  type: :development
148
148
  prerelease: false
149
149
  version_requirements: !ruby/object:Gem::Requirement
150
150
  requirements:
151
- - - ~>
151
+ - - "~>"
152
152
  - !ruby/object:Gem::Version
153
153
  version: 3.0.1
154
154
  - !ruby/object:Gem::Dependency
155
155
  name: jettywrapper
156
156
  requirement: !ruby/object:Gem::Requirement
157
157
  requirements:
158
- - - ~>
158
+ - - "~>"
159
159
  - !ruby/object:Gem::Version
160
160
  version: 1.7.0
161
161
  type: :development
162
162
  prerelease: false
163
163
  version_requirements: !ruby/object:Gem::Requirement
164
164
  requirements:
165
- - - ~>
165
+ - - "~>"
166
166
  - !ruby/object:Gem::Version
167
167
  version: 1.7.0
168
168
  - !ruby/object:Gem::Dependency
169
169
  name: engine_cart
170
170
  requirement: !ruby/object:Gem::Requirement
171
171
  requirements:
172
- - - ~>
172
+ - - "~>"
173
173
  - !ruby/object:Gem::Version
174
- version: 0.3.4
174
+ version: 0.4.0
175
175
  type: :development
176
176
  prerelease: false
177
177
  version_requirements: !ruby/object:Gem::Requirement
178
178
  requirements:
179
- - - ~>
179
+ - - "~>"
180
180
  - !ruby/object:Gem::Version
181
- version: 0.3.4
181
+ version: 0.4.0
182
182
  - !ruby/object:Gem::Dependency
183
183
  name: capybara
184
184
  requirement: !ruby/object:Gem::Requirement
185
185
  requirements:
186
- - - ~>
186
+ - - "~>"
187
187
  - !ruby/object:Gem::Version
188
188
  version: 2.3.0
189
189
  type: :development
190
190
  prerelease: false
191
191
  version_requirements: !ruby/object:Gem::Requirement
192
192
  requirements:
193
- - - ~>
193
+ - - "~>"
194
194
  - !ruby/object:Gem::Version
195
195
  version: 2.3.0
196
196
  - !ruby/object:Gem::Dependency
197
197
  name: poltergeist
198
198
  requirement: !ruby/object:Gem::Requirement
199
199
  requirements:
200
- - - ~>
200
+ - - "~>"
201
201
  - !ruby/object:Gem::Version
202
202
  version: 1.5.0
203
203
  type: :development
204
204
  prerelease: false
205
205
  version_requirements: !ruby/object:Gem::Requirement
206
206
  requirements:
207
- - - ~>
207
+ - - "~>"
208
208
  - !ruby/object:Gem::Version
209
209
  version: 1.5.0
210
210
  description: GeoBlacklight started at Stanford and its goal is to provide a world-class
@@ -218,57 +218,90 @@ executables: []
218
218
  extensions: []
219
219
  extra_rdoc_files: []
220
220
  files:
221
- - .gitignore
222
- - .gitmodules
221
+ - ".coveralls.yml"
222
+ - ".gitignore"
223
+ - ".gitmodules"
224
+ - ".travis.yml"
223
225
  - Gemfile
224
226
  - LICENSE.txt
225
227
  - README.md
226
228
  - Rakefile
229
+ - app/assets/fonts/geoblacklight.eot
230
+ - app/assets/fonts/geoblacklight.svg
231
+ - app/assets/fonts/geoblacklight.ttf
232
+ - app/assets/fonts/geoblacklight.woff
227
233
  - app/assets/images/blacklight/logo.png
228
- - app/assets/images/geoblacklight/src_berkeley.png
229
- - app/assets/images/geoblacklight/src_cambridge.png
230
- - app/assets/images/geoblacklight/src_harvard.png
231
- - app/assets/images/geoblacklight/src_maryland.png
232
- - app/assets/images/geoblacklight/src_massgis.png
233
- - app/assets/images/geoblacklight/src_mit.png
234
- - app/assets/images/geoblacklight/src_princeton.png
235
- - app/assets/images/geoblacklight/src_stanford.png
236
- - app/assets/images/geoblacklight/src_tufts.png
237
- - app/assets/images/geoblacklight/src_un.png
238
- - app/assets/images/geoblacklight/type_arc.png
239
- - app/assets/images/geoblacklight/type_dot.png
240
- - app/assets/images/geoblacklight/type_library.png
241
- - app/assets/images/geoblacklight/type_map.png
242
- - app/assets/images/geoblacklight/type_polygon.png
243
- - app/assets/images/geoblacklight/type_raster.png
244
234
  - app/assets/javascripts/geoblacklight/application.js
245
235
  - app/assets/javascripts/geoblacklight/geoblacklight.js
246
- - app/assets/javascripts/geoblacklight/modules/map-home.js
247
- - app/assets/javascripts/geoblacklight/modules/map-results.js
236
+ - app/assets/javascripts/geoblacklight/modules/collapse.js
237
+ - app/assets/javascripts/geoblacklight/modules/download.js
238
+ - app/assets/javascripts/geoblacklight/modules/geosearch.js
239
+ - app/assets/javascripts/geoblacklight/modules/home.js
240
+ - app/assets/javascripts/geoblacklight/modules/item.js
248
241
  - app/assets/javascripts/geoblacklight/modules/map-view.js
242
+ - app/assets/javascripts/geoblacklight/modules/results.js
243
+ - app/assets/stylesheets/geoblacklight/_geoblacklight.css.scss
244
+ - app/assets/stylesheets/geoblacklight/_styles.css.scss
245
+ - app/assets/stylesheets/geoblacklight/application.css.scss
246
+ - app/assets/stylesheets/geoblacklight/modules/home.css.scss
247
+ - app/assets/stylesheets/geoblacklight/modules/icon-customization.css.scss
248
+ - app/assets/stylesheets/geoblacklight/modules/icons.css.scss
249
+ - app/assets/stylesheets/geoblacklight/modules/item.css.scss
250
+ - app/assets/stylesheets/geoblacklight/modules/results.css.scss
249
251
  - app/controllers/download_controller.rb
250
252
  - app/controllers/wms_controller.rb
251
253
  - app/helpers/geoblacklight_helper.rb
252
- - app/views/catalog/_document_list.html.erb
254
+ - app/views/catalog/_document_split.html.erb
253
255
  - app/views/catalog/_home_text.html.erb
254
- - app/views/catalog/_index_header_default.html.erb
256
+ - app/views/catalog/_index_split_default.html.erb
255
257
  - app/views/catalog/_show_default.html.erb
258
+ - app/views/catalog/_show_header_default.html.erb
256
259
  - app/views/catalog/_show_sidebar.html.erb
260
+ - app/views/catalog/_upper_metadata.html.erb
261
+ - config/initializers/rails_config.rb
262
+ - config/jetty.yml
263
+ - config/locales/geoblacklight.en.yml
257
264
  - geoblacklight.gemspec
258
265
  - lib/generators/geoblacklight/install_generator.rb
259
266
  - lib/generators/geoblacklight/templates/catalog_controller.rb
260
267
  - lib/generators/geoblacklight/templates/geoblacklight.css.scss
261
268
  - lib/generators/geoblacklight/templates/geoblacklight.js
269
+ - lib/generators/geoblacklight/templates/settings.yml
262
270
  - lib/geoblacklight.rb
263
271
  - lib/geoblacklight/config.rb
272
+ - lib/geoblacklight/controller_override.rb
273
+ - lib/geoblacklight/download.rb
274
+ - lib/geoblacklight/download/kmz_download.rb
275
+ - lib/geoblacklight/download/shapefile_download.rb
264
276
  - lib/geoblacklight/engine.rb
265
277
  - lib/geoblacklight/fixtures_indexer.rb
278
+ - lib/geoblacklight/solr_document.rb
266
279
  - lib/geoblacklight/version.rb
280
+ - lib/geoblacklight/view_helper_override.rb
281
+ - lib/geoblacklight/wms_layer.rb
282
+ - lib/geoblacklight/wms_layer/feature_info_response.rb
267
283
  - lib/tasks/geoblacklight.rake
268
- - spec/fixtures/geoblacklight_schema/transformed.json
284
+ - spec/features/download_layer_spec.rb
285
+ - spec/features/home_page_spec.rb
286
+ - spec/features/layer_inspection_spec.rb
287
+ - spec/features/layer_preview_spec.rb
288
+ - spec/features/split_view.html.erb_spec.rb
289
+ - spec/fixtures/test-berkeley-fields.json
290
+ - spec/lib/geoblacklight/controller_override_spec.rb
291
+ - spec/lib/geoblacklight/download/kmz_download_spec.rb
292
+ - spec/lib/geoblacklight/download/shapefile_download_spec.rb
293
+ - spec/lib/geoblacklight/download_spec.rb
294
+ - spec/lib/geoblacklight/solr_document.rb
295
+ - spec/lib/geoblacklight/view_helper_override_spec.rb
296
+ - spec/lib/geoblacklight/wms_layer/feature_info_response_spec.rb
297
+ - spec/lib/geoblacklight/wms_layer_spec.rb
269
298
  - spec/spec_helper.rb
270
299
  - spec/test_app_templates/lib/generators/test_app_generator.rb
271
- homepage: http://github.com/sul-dlss/geoblacklight
300
+ - spec/views/catalog/_document_split.html.erb_spec.rb
301
+ - spec/views/catalog/_index_split.html.erb_spec.rb
302
+ - template.rb
303
+ - vendor/assets/javascripts/native.history.js
304
+ homepage: http://github.com/geoblacklight/geoblacklight
272
305
  licenses:
273
306
  - Apache 2.0
274
307
  metadata: {}
@@ -278,22 +311,36 @@ require_paths:
278
311
  - lib
279
312
  required_ruby_version: !ruby/object:Gem::Requirement
280
313
  requirements:
281
- - - ! '>='
314
+ - - ">="
282
315
  - !ruby/object:Gem::Version
283
316
  version: '0'
284
317
  required_rubygems_version: !ruby/object:Gem::Requirement
285
318
  requirements:
286
- - - ! '>='
319
+ - - ">="
287
320
  - !ruby/object:Gem::Version
288
321
  version: '0'
289
322
  requirements: []
290
323
  rubyforge_project:
291
- rubygems_version: 2.2.2
324
+ rubygems_version: 2.4.2
292
325
  signing_key:
293
326
  specification_version: 4
294
327
  summary: A discovery platform for geospatial holdings
295
328
  test_files:
296
- - spec/fixtures/geoblacklight_schema/transformed.json
329
+ - spec/features/download_layer_spec.rb
330
+ - spec/features/home_page_spec.rb
331
+ - spec/features/layer_inspection_spec.rb
332
+ - spec/features/layer_preview_spec.rb
333
+ - spec/features/split_view.html.erb_spec.rb
334
+ - spec/fixtures/test-berkeley-fields.json
335
+ - spec/lib/geoblacklight/controller_override_spec.rb
336
+ - spec/lib/geoblacklight/download/kmz_download_spec.rb
337
+ - spec/lib/geoblacklight/download/shapefile_download_spec.rb
338
+ - spec/lib/geoblacklight/download_spec.rb
339
+ - spec/lib/geoblacklight/solr_document.rb
340
+ - spec/lib/geoblacklight/view_helper_override_spec.rb
341
+ - spec/lib/geoblacklight/wms_layer/feature_info_response_spec.rb
342
+ - spec/lib/geoblacklight/wms_layer_spec.rb
297
343
  - spec/spec_helper.rb
298
344
  - spec/test_app_templates/lib/generators/test_app_generator.rb
299
- has_rdoc:
345
+ - spec/views/catalog/_document_split.html.erb_spec.rb
346
+ - spec/views/catalog/_index_split.html.erb_spec.rb