tower_bridge_lifts 1.0.0 → 1.0.1
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 +4 -4
- data/.gitignore +0 -2
- data/lib/tower_bridge_lifts/application.rb +0 -2
- data/lib/tower_bridge_lifts/base.rb +1 -0
- data/lib/tower_bridge_lifts/server.rb +0 -10
- data/lib/tower_bridge_lifts/version.rb +1 -1
- data/lib/tower_bridge_lifts/views.rb +2 -2
- data/reload +1 -1
- data/spec/tower_bridge_lifts_spec.rb +0 -1
- data/tower_bridge_lifts.gemspec +2 -1
- metadata +13 -50
- data/.rspec +0 -2
- data/.travis.yml +0 -5
- data/README.md +0 -107
- data/web/apidoc.html +0 -87
- data/web/apidoc.yaml +0 -163
- data/web/css/print.css +0 -1367
- data/web/css/reset.css +0 -125
- data/web/css/screen.css +0 -1497
- data/web/css/style.css +0 -249
- data/web/css/tblifts.css +0 -4
- data/web/css/typography.css +0 -14
- data/web/fonts/DroidSans-Bold.ttf +0 -0
- data/web/fonts/DroidSans.ttf +0 -0
- data/web/images/collapse.gif +0 -0
- data/web/images/expand.gif +0 -0
- data/web/images/explorer_icons.png +0 -0
- data/web/images/logo_small.png +0 -0
- data/web/images/throbber.gif +0 -0
- data/web/images/wordnik_api.png +0 -0
- data/web/index.rhtml +0 -42
- data/web/lib/backbone-min.js +0 -15
- data/web/lib/es5-shim.js +0 -2065
- data/web/lib/handlebars-4.0.5.js +0 -4608
- data/web/lib/highlight.9.1.0.pack.js +0 -2
- data/web/lib/highlight.9.1.0.pack_extended.js +0 -34
- data/web/lib/jquery-1.8.0.min.js +0 -2
- data/web/lib/jquery.ba-bbq.min.js +0 -18
- data/web/lib/jquery.slideto.min.js +0 -1
- data/web/lib/jquery.wiggle.min.js +0 -8
- data/web/lib/js-yaml.min.js +0 -3
- data/web/lib/jsoneditor.min.js +0 -11
- data/web/lib/lodash.min.js +0 -102
- data/web/lib/marked.js +0 -1272
- data/web/lib/object-assign-pollyfill.js +0 -23
- data/web/lib/sanitize-html.min.js +0 -6
- data/web/lib/swagger-oauth.js +0 -347
- data/web/o2c.html +0 -20
- data/web/swagger-ui.js +0 -25067
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: f8c2cfe2b2b6cd3b83b1f4a885588caa00229910
|
4
|
+
data.tar.gz: 876d50de5f419fdff93dc7e66906209d7fe04363
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e533588dfa4ae0023b635a41aec67fbb2bb8cae03044e4b8857fbc79e6c94e6745cc4703621eee727ef6fd9a5d22fd599fd24d6af60a100b918cf0a0efad8f03
|
7
|
+
data.tar.gz: 7d178bbfbd60b1b88758480a2d7db7f1073c16a185278939be160c4a20cd9a716b9aa4ac1cc5c76d90b9b8fb3a5a3f9383393692bbb2db91000bac023ab4e7db
|
data/.gitignore
CHANGED
@@ -3,21 +3,11 @@ require 'sinatra/base'
|
|
3
3
|
module TowerBridgeLifts
|
4
4
|
class Server < Sinatra::Base
|
5
5
|
|
6
|
-
helpers Helpers
|
7
6
|
enable :logging
|
8
|
-
set :public_folder, 'web'
|
9
7
|
|
10
8
|
tblifts = Base.new
|
11
9
|
view = View.new
|
12
10
|
|
13
|
-
get '/' do
|
14
|
-
tblifts.fetch if tblifts.expired?
|
15
|
-
@tblifts = tblifts
|
16
|
-
@view = view
|
17
|
-
erb :index, views: settings.public_folder
|
18
|
-
end
|
19
|
-
|
20
|
-
|
21
11
|
get '/api/v1/:command' do
|
22
12
|
content_type :json
|
23
13
|
command = params['command']
|
@@ -4,9 +4,10 @@ require 'erb'
|
|
4
4
|
|
5
5
|
module TowerBridgeLifts
|
6
6
|
|
7
|
-
class View
|
7
|
+
class View
|
8
8
|
|
9
9
|
def render(object, command, options, format)
|
10
|
+
options = {} if command != 'lifts'
|
10
11
|
result = object.error || (options.empty? ? object.send(command) : object.send(command, options))
|
11
12
|
view_name = case
|
12
13
|
when object.error then 'error'
|
@@ -19,7 +20,6 @@ module TowerBridgeLifts
|
|
19
20
|
|
20
21
|
private
|
21
22
|
|
22
|
-
|
23
23
|
def error(result, format)
|
24
24
|
result.to_s
|
25
25
|
end
|
data/reload
CHANGED
data/tower_bridge_lifts.gemspec
CHANGED
@@ -1,6 +1,7 @@
|
|
1
1
|
# coding: utf-8
|
2
2
|
lib = File.expand_path('../lib', __FILE__)
|
3
3
|
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
4
|
+
|
4
5
|
require 'tower_bridge_lifts/version'
|
5
6
|
|
6
7
|
Gem::Specification.new do |spec|
|
@@ -23,9 +24,9 @@ Gem::Specification.new do |spec|
|
|
23
24
|
spec.add_development_dependency "rake", "~> 10.0"
|
24
25
|
spec.add_development_dependency "rspec", "~> 3.0"
|
25
26
|
|
26
|
-
spec.add_dependency 'nokogiri', '~> 1.6'
|
27
27
|
spec.add_dependency 'sinatra', '~> 1.4'
|
28
28
|
spec.add_dependency 'tzinfo', '~> 1.2'
|
29
|
+
spec.add_dependency 'nokogiri', '~> 1.6'
|
29
30
|
|
30
31
|
end
|
31
32
|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: tower_bridge_lifts
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Andre Parmeggiani
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-01-
|
11
|
+
date: 2017-01-15 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -53,47 +53,47 @@ dependencies:
|
|
53
53
|
- !ruby/object:Gem::Version
|
54
54
|
version: '3.0'
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
|
-
name:
|
56
|
+
name: sinatra
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
58
58
|
requirements:
|
59
59
|
- - ~>
|
60
60
|
- !ruby/object:Gem::Version
|
61
|
-
version: '1.
|
61
|
+
version: '1.4'
|
62
62
|
type: :runtime
|
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: '1.
|
68
|
+
version: '1.4'
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
|
-
name:
|
70
|
+
name: tzinfo
|
71
71
|
requirement: !ruby/object:Gem::Requirement
|
72
72
|
requirements:
|
73
73
|
- - ~>
|
74
74
|
- !ruby/object:Gem::Version
|
75
|
-
version: '1.
|
75
|
+
version: '1.2'
|
76
76
|
type: :runtime
|
77
77
|
prerelease: false
|
78
78
|
version_requirements: !ruby/object:Gem::Requirement
|
79
79
|
requirements:
|
80
80
|
- - ~>
|
81
81
|
- !ruby/object:Gem::Version
|
82
|
-
version: '1.
|
82
|
+
version: '1.2'
|
83
83
|
- !ruby/object:Gem::Dependency
|
84
|
-
name:
|
84
|
+
name: nokogiri
|
85
85
|
requirement: !ruby/object:Gem::Requirement
|
86
86
|
requirements:
|
87
87
|
- - ~>
|
88
88
|
- !ruby/object:Gem::Version
|
89
|
-
version: '1.
|
89
|
+
version: '1.6'
|
90
90
|
type: :runtime
|
91
91
|
prerelease: false
|
92
92
|
version_requirements: !ruby/object:Gem::Requirement
|
93
93
|
requirements:
|
94
94
|
- - ~>
|
95
95
|
- !ruby/object:Gem::Version
|
96
|
-
version: '1.
|
96
|
+
version: '1.6'
|
97
97
|
description: Provides lift times information, parsed from TowerBridge.org.uk
|
98
98
|
email:
|
99
99
|
- aaparmeggiani@gmail.com
|
@@ -103,12 +103,10 @@ extensions: []
|
|
103
103
|
extra_rdoc_files: []
|
104
104
|
files:
|
105
105
|
- .gitignore
|
106
|
-
- .rspec
|
107
|
-
- .travis.yml
|
108
106
|
- Gemfile
|
109
|
-
- README.md
|
110
107
|
- Rakefile
|
111
108
|
- bin/tblifts
|
109
|
+
- lib/.DS_Store
|
112
110
|
- lib/tower_bridge_lifts.rb
|
113
111
|
- lib/tower_bridge_lifts/application.rb
|
114
112
|
- lib/tower_bridge_lifts/base.rb
|
@@ -126,41 +124,6 @@ files:
|
|
126
124
|
- spec/spec_helper.rb
|
127
125
|
- spec/tower_bridge_lifts_spec.rb
|
128
126
|
- tower_bridge_lifts.gemspec
|
129
|
-
- web/apidoc.html
|
130
|
-
- web/apidoc.yaml
|
131
|
-
- web/css/print.css
|
132
|
-
- web/css/reset.css
|
133
|
-
- web/css/screen.css
|
134
|
-
- web/css/style.css
|
135
|
-
- web/css/tblifts.css
|
136
|
-
- web/css/typography.css
|
137
|
-
- web/fonts/DroidSans-Bold.ttf
|
138
|
-
- web/fonts/DroidSans.ttf
|
139
|
-
- web/images/collapse.gif
|
140
|
-
- web/images/expand.gif
|
141
|
-
- web/images/explorer_icons.png
|
142
|
-
- web/images/logo_small.png
|
143
|
-
- web/images/throbber.gif
|
144
|
-
- web/images/wordnik_api.png
|
145
|
-
- web/index.rhtml
|
146
|
-
- web/lib/backbone-min.js
|
147
|
-
- web/lib/es5-shim.js
|
148
|
-
- web/lib/handlebars-4.0.5.js
|
149
|
-
- web/lib/highlight.9.1.0.pack.js
|
150
|
-
- web/lib/highlight.9.1.0.pack_extended.js
|
151
|
-
- web/lib/jquery-1.8.0.min.js
|
152
|
-
- web/lib/jquery.ba-bbq.min.js
|
153
|
-
- web/lib/jquery.slideto.min.js
|
154
|
-
- web/lib/jquery.wiggle.min.js
|
155
|
-
- web/lib/js-yaml.min.js
|
156
|
-
- web/lib/jsoneditor.min.js
|
157
|
-
- web/lib/lodash.min.js
|
158
|
-
- web/lib/marked.js
|
159
|
-
- web/lib/object-assign-pollyfill.js
|
160
|
-
- web/lib/sanitize-html.min.js
|
161
|
-
- web/lib/swagger-oauth.js
|
162
|
-
- web/o2c.html
|
163
|
-
- web/swagger-ui.js
|
164
127
|
homepage: https://github.com/aaparmeggiani/tower_bridge_lifts
|
165
128
|
licenses:
|
166
129
|
- MIT
|
@@ -181,7 +144,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
181
144
|
version: '0'
|
182
145
|
requirements: []
|
183
146
|
rubyforge_project:
|
184
|
-
rubygems_version: 2.
|
147
|
+
rubygems_version: 2.6.8
|
185
148
|
signing_key:
|
186
149
|
specification_version: 4
|
187
150
|
summary: Tower Bridge lift times
|
data/.rspec
DELETED
data/.travis.yml
DELETED
data/README.md
DELETED
@@ -1,107 +0,0 @@
|
|
1
|
-
# Tower Bridge Lifts
|
2
|
-
|
3
|
-
Provides lift times information, parsed from TowerBridge.org.uk
|
4
|
-
|
5
|
-
[missing_demo_link](http://www.github.com)
|
6
|
-
|
7
|
-
|
8
|
-
## Description
|
9
|
-
This repo was born as I couldn't find an API to access bridge info to another side project and didn't hear back from the official website mantainers.
|
10
|
-
It parses data from the official page (http://www.towerbridge.org.uk/lift-times) and makes it available in other formats.
|
11
|
-
|
12
|
-
Bascule and traffic information are inferred from the lift times and might not correspond to reality.
|
13
|
-
(Please ping me if you'd like to collaborate and improve them using computer vision on this live stream
|
14
|
-
http://www.ustream.tv/towerbridge ;-)
|
15
|
-
|
16
|
-
|
17
|
-
## Installation
|
18
|
-
|
19
|
-
Add it to your application's Gemfile:
|
20
|
-
|
21
|
-
```ruby
|
22
|
-
gem 'tower_bridge_lifts'
|
23
|
-
```
|
24
|
-
|
25
|
-
and..
|
26
|
-
|
27
|
-
$ bundle
|
28
|
-
|
29
|
-
OR from the command line:
|
30
|
-
|
31
|
-
$ gem install tower_bridge_lifts
|
32
|
-
|
33
|
-
## Usage
|
34
|
-
|
35
|
-
### IRB or inside your own application:
|
36
|
-
|
37
|
-
```ruby
|
38
|
-
require 'tower_bridge_lifts'
|
39
|
-
|
40
|
-
bridge = TowerBridgeLifts::Base.new
|
41
|
-
puts bridge.status
|
42
|
-
puts bridge.time
|
43
|
-
puts bridge.lifts
|
44
|
-
puts bridge.next_lift
|
45
|
-
puts bridge.updated
|
46
|
-
|
47
|
-
```
|
48
|
-
### Command line wrapper:
|
49
|
-
|
50
|
-
```
|
51
|
-
$ tblifts --help
|
52
|
-
|
53
|
-
Tower Bridge Lifts - provides lift times information, parsed from towerbridge.org.uk
|
54
|
-
|
55
|
-
Usage:
|
56
|
-
tblifts [COMMAND] [OPTIONS]
|
57
|
-
|
58
|
-
Commands:
|
59
|
-
<none> | lifts shows all scheduled lifts
|
60
|
-
next | next_lift shows the next lift only
|
61
|
-
bascules shows the bascules position
|
62
|
-
time shows local time (London)
|
63
|
-
traffic shows traffic status accross the bridge
|
64
|
-
status shows all above
|
65
|
-
server serves an api in server mode
|
66
|
-
|
67
|
-
Options:
|
68
|
-
-d, --date=date filter by date (DD-MM-YY | today | tomorrow)
|
69
|
-
-c, --compact shows compact
|
70
|
-
-g, --group group lifts by date
|
71
|
-
-l, --lines=num lines to display
|
72
|
-
|
73
|
-
-p, --port=port sets the port on server mode
|
74
|
-
|
75
|
-
-h, --help displays help
|
76
|
-
-v, --version displays version
|
77
|
-
|
78
|
-
For more info, please visit http://github.com/aaparmeggiani/tower_bridge_lifts
|
79
|
-
|
80
|
-
$ tblifts --date=today
|
81
|
-
01-Jan-16 Sun 08:00 ⬆︎ A Vessel
|
82
|
-
01-Jan-16 Sun 13:00 ⬇︎ Another Vessel
|
83
|
-
|
84
|
-
$tblifts --group --lines=2
|
85
|
-
01-Jan-16 Sun [2] 08:00 13:00
|
86
|
-
02-Jan-16 Mon [4] 08:00 08:30 12:00 15:00 15:00
|
87
|
-
```
|
88
|
-
### Server mode:
|
89
|
-
|
90
|
-
tblifts can also operate as a daemon, serving json through RESTful http requests.
|
91
|
-
|
92
|
-
```
|
93
|
-
$ tblifts server -p 3000
|
94
|
-
<tblifts listening on port 3000>
|
95
|
-
|
96
|
-
$ curl http://localhost:3000/api/v1/status
|
97
|
-
<json answer>
|
98
|
-
```
|
99
|
-
API docs + sandbox can be found [here_missing_link](http://github.com).
|
100
|
-
|
101
|
-
## Contributing
|
102
|
-
|
103
|
-
Bug reports and pull requests are welcome through this repo.
|
104
|
-
|
105
|
-
## License
|
106
|
-
|
107
|
-
MIT
|
data/web/apidoc.html
DELETED
@@ -1,87 +0,0 @@
|
|
1
|
-
<!DOCTYPE html>
|
2
|
-
<html>
|
3
|
-
<head>
|
4
|
-
<meta charset="UTF-8">
|
5
|
-
<title>Tower Bridge Lifts - API</title>
|
6
|
-
<link href='css/typography.css' media='screen' rel='stylesheet' type='text/css'/>
|
7
|
-
<link href='css/reset.css' media='screen' rel='stylesheet' type='text/css'/>
|
8
|
-
<link href='css/screen.css' media='screen' rel='stylesheet' type='text/css'/>
|
9
|
-
<link href='css/reset.css' media='print' rel='stylesheet' type='text/css'/>
|
10
|
-
<link href='css/print.css' media='print' rel='stylesheet' type='text/css'/>
|
11
|
-
|
12
|
-
<script src='lib/object-assign-pollyfill.js' type='text/javascript'></script>
|
13
|
-
<script src='lib/jquery-1.8.0.min.js' type='text/javascript'></script>
|
14
|
-
<script src='lib/jquery.slideto.min.js' type='text/javascript'></script>
|
15
|
-
<script src='lib/jquery.wiggle.min.js' type='text/javascript'></script>
|
16
|
-
<script src='lib/jquery.ba-bbq.min.js' type='text/javascript'></script>
|
17
|
-
<script src='lib/handlebars-4.0.5.js' type='text/javascript'></script>
|
18
|
-
<script src='lib/lodash.min.js' type='text/javascript'></script>
|
19
|
-
<script src='lib/backbone-min.js' type='text/javascript'></script>
|
20
|
-
<script src='swagger-ui.js' type='text/javascript'></script>
|
21
|
-
<script src='lib/highlight.9.1.0.pack.js' type='text/javascript'></script>
|
22
|
-
<script src='lib/highlight.9.1.0.pack_extended.js' type='text/javascript'></script>
|
23
|
-
<script src='lib/jsoneditor.min.js' type='text/javascript'></script>
|
24
|
-
<script src='lib/marked.js' type='text/javascript'></script>
|
25
|
-
<script src='lib/swagger-oauth.js' type='text/javascript'></script>
|
26
|
-
|
27
|
-
|
28
|
-
<script type="text/javascript">
|
29
|
-
$(function () {
|
30
|
-
|
31
|
-
hljs.configure({
|
32
|
-
highlightSizeThreshold: 5000
|
33
|
-
});
|
34
|
-
|
35
|
-
|
36
|
-
window.swaggerUi = new SwaggerUi({
|
37
|
-
url: "/apidoc.yaml",
|
38
|
-
dom_id: "swagger-ui-container",
|
39
|
-
supportedSubmitMethods: ['get', 'post', 'put', 'delete', 'patch'],
|
40
|
-
onComplete: function(swaggerApi, swaggerUi){
|
41
|
-
if(typeof initOAuth == "function") {
|
42
|
-
initOAuth({
|
43
|
-
clientId: "your-client-id",
|
44
|
-
clientSecret: "your-client-secret-if-required",
|
45
|
-
realm: "your-realms",
|
46
|
-
appName: "your-app-name",
|
47
|
-
scopeSeparator: " ",
|
48
|
-
additionalQueryStringParams: {}
|
49
|
-
});
|
50
|
-
}
|
51
|
-
|
52
|
-
},
|
53
|
-
onFailure: function(data) {
|
54
|
-
log("Unable to Load SwaggerUI");
|
55
|
-
},
|
56
|
-
docExpansion: "list",
|
57
|
-
jsonEditor: false,
|
58
|
-
defaultModelRendering: 'schema',
|
59
|
-
showRequestHeaders: false
|
60
|
-
});
|
61
|
-
|
62
|
-
window.swaggerUi.load();
|
63
|
-
|
64
|
-
function log() {
|
65
|
-
if ('console' in window) {
|
66
|
-
console.log.apply(console, arguments);
|
67
|
-
}
|
68
|
-
}
|
69
|
-
});
|
70
|
-
</script>
|
71
|
-
</head>
|
72
|
-
|
73
|
-
<body class="swagger-section">
|
74
|
-
|
75
|
-
<div class="swagger-ui-wrap">
|
76
|
-
<div id='header'>
|
77
|
-
<div id="api_selector">
|
78
|
-
<a href="/">home</a> |
|
79
|
-
<a href="/apidoc.html">api</a> |
|
80
|
-
<a href="https://github.com/aaparmeggiani/tower_bridge_lifts">github</a>
|
81
|
-
</div>
|
82
|
-
</div>
|
83
|
-
<div id="swagger-ui-container"></div>
|
84
|
-
</div>
|
85
|
-
|
86
|
-
</body>
|
87
|
-
</html>
|