yalemenus 1.0.0
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 +7 -0
- data/lib/yalemenus.rb +96 -0
- metadata +44 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 873d28276939609f0fd2d1660869a92858c9af26acacd863edbee3b1baf8796d
|
4
|
+
data.tar.gz: c58ea796e98f9c008a9b46b50020b23e2677004297e304d3bc53b63f7dfce9a1
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 2a45e7f0428fc68d5abfde951eb07460c888da78dfaecec2dfd25240b352184547ce45ca0d0dcfacce7d32634aa04a1182c9e5336303b6a522f566e837b92dd1
|
7
|
+
data.tar.gz: 25b61c2877d8e007f31aad37d6f3091415b50a04c93d70b3153053f46358291a322026be360d231dd2785064e6a56eddd2ee44ef94e3e9f590a325fc104f0fcd
|
data/lib/yalemenus.rb
ADDED
@@ -0,0 +1,96 @@
|
|
1
|
+
require "net/http"
|
2
|
+
require "uri"
|
3
|
+
require "json"
|
4
|
+
require "date"
|
5
|
+
|
6
|
+
class YaleMenus
|
7
|
+
|
8
|
+
@@API_ROOT = "https://api.yalemenus.com/"
|
9
|
+
|
10
|
+
class << self
|
11
|
+
|
12
|
+
def get(path, params = nil)
|
13
|
+
uri = URI(@@API_ROOT + path)
|
14
|
+
unless params.nil?
|
15
|
+
uri.query = URI.encode_www_form(params)
|
16
|
+
end
|
17
|
+
|
18
|
+
res = Net::HTTP.get_response(uri)
|
19
|
+
return JSON.parse(res.body)
|
20
|
+
end
|
21
|
+
|
22
|
+
def format_date(date)
|
23
|
+
if date.is_a? Date
|
24
|
+
return date.strftime('%Y-%m-%d')
|
25
|
+
end
|
26
|
+
return date
|
27
|
+
end
|
28
|
+
|
29
|
+
def status()
|
30
|
+
get("status")
|
31
|
+
end
|
32
|
+
|
33
|
+
def halls()
|
34
|
+
get("halls")
|
35
|
+
end
|
36
|
+
|
37
|
+
def hall(hall_id)
|
38
|
+
get("halls/#{hall_id}")
|
39
|
+
end
|
40
|
+
|
41
|
+
def hall_people(hall_id)
|
42
|
+
get("halls/#{hall_id}/people")
|
43
|
+
end
|
44
|
+
|
45
|
+
def hall_meals(hall_id, date: nil, start_date: nil, end_date: nil)
|
46
|
+
params = {}
|
47
|
+
unless date.nil?
|
48
|
+
params[:date] = format_date(date)
|
49
|
+
end
|
50
|
+
unless start_date.nil?
|
51
|
+
params[:start_date] = format_date(start_date)
|
52
|
+
end
|
53
|
+
unless end_date.nil?
|
54
|
+
params[:end_date] = format_date(end_date)
|
55
|
+
end
|
56
|
+
get("halls/#{hall_id}/meals", params)
|
57
|
+
end
|
58
|
+
|
59
|
+
def meal(meal_id)
|
60
|
+
get("meals/#{meal_id}")
|
61
|
+
end
|
62
|
+
|
63
|
+
def meal_items(meal_id)
|
64
|
+
get("meals/#{meal_id}/items")
|
65
|
+
end
|
66
|
+
|
67
|
+
def item(item_id)
|
68
|
+
get("items/#{item_id}")
|
69
|
+
end
|
70
|
+
|
71
|
+
def item_nutrition(item_id)
|
72
|
+
get("items/#{item_id}/nutrition")
|
73
|
+
end
|
74
|
+
|
75
|
+
def item_reviews(item_id)
|
76
|
+
get("items/#{item_id}/reviews")
|
77
|
+
end
|
78
|
+
|
79
|
+
def item_photos(item_id)
|
80
|
+
get("items/#{item_id}/photos")
|
81
|
+
end
|
82
|
+
|
83
|
+
def butteries
|
84
|
+
get("butteries")
|
85
|
+
end
|
86
|
+
|
87
|
+
def buttery(buttery_id)
|
88
|
+
get("butteries/#{buttery_id}")
|
89
|
+
end
|
90
|
+
|
91
|
+
def buttery_items(buttery_id)
|
92
|
+
get("butteries/#{buttery_id}/items")
|
93
|
+
end
|
94
|
+
|
95
|
+
end
|
96
|
+
end
|
metadata
ADDED
@@ -0,0 +1,44 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: yalemenus
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 1.0.0
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Erik Boesen
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
date: 2022-03-25 00:00:00.000000000 Z
|
12
|
+
dependencies: []
|
13
|
+
description: A simple set of functions for easily fetching data from the Yale Menus
|
14
|
+
API.
|
15
|
+
email: me@erikboesen.com
|
16
|
+
executables: []
|
17
|
+
extensions: []
|
18
|
+
extra_rdoc_files: []
|
19
|
+
files:
|
20
|
+
- lib/yalemenus.rb
|
21
|
+
homepage: https://github.com/YaleMenus/yalemenus-ruby
|
22
|
+
licenses:
|
23
|
+
- MIT
|
24
|
+
metadata: {}
|
25
|
+
post_install_message:
|
26
|
+
rdoc_options: []
|
27
|
+
require_paths:
|
28
|
+
- lib
|
29
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - ">="
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '0'
|
34
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
35
|
+
requirements:
|
36
|
+
- - ">="
|
37
|
+
- !ruby/object:Gem::Version
|
38
|
+
version: '0'
|
39
|
+
requirements: []
|
40
|
+
rubygems_version: 3.1.6
|
41
|
+
signing_key:
|
42
|
+
specification_version: 4
|
43
|
+
summary: Easily retrieve data from the Yale Menus API
|
44
|
+
test_files: []
|