meetup-cli 1.1.0 → 2.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 +4 -4
- data/lib/meetup-cli.rb +45 -12
- data/lib/meetup-cli/api.rb +20 -4
- data/lib/meetup-cli/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 34373c8b071816ba79116114352108a4b47ff63e
|
4
|
+
data.tar.gz: 43ee4aea625716bdaf4dd0e62e7d335a9831c881
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 9b9c957493fd260593cc6cd15ff27124c4347021524716b8de8b71c30eb799f9cbb0036763b6d8ba32627fc83499607a098733bdbc1c4a28d61f378a1686a0dc
|
7
|
+
data.tar.gz: fb891f2c12e302bb79fd67ef783d7917c90a846f0d94869d75aff2bed7c8fd3d33c4db6048e4f0081eadc69bdfab06e96b26d0a69c5a16948a358781bcd0a0d3
|
data/lib/meetup-cli.rb
CHANGED
@@ -7,15 +7,19 @@ require 'meetup-cli/version'
|
|
7
7
|
APP_NAME = File.basename $0, File.extname($0)
|
8
8
|
CONFIG_FILE = File.join(ENV['HOME'], ".#{APP_NAME}rc")
|
9
9
|
|
10
|
+
# Use the GLI command line parser to create this CLI app
|
11
|
+
# https://github.com/davetron5000/gli
|
12
|
+
#
|
10
13
|
include GLI::App
|
11
14
|
program_desc "Meetup command line interface"
|
12
15
|
version MCLI::VERSION
|
13
|
-
default_command :
|
16
|
+
default_command :going
|
17
|
+
sort_help :manually
|
14
18
|
|
15
19
|
switch :color, :desc => 'Force colorized output', :negatable => false
|
16
20
|
|
17
21
|
pre do |global_options|
|
18
|
-
# Exit
|
22
|
+
# Exit without a stack trace when terminating due to a broken pipe
|
19
23
|
Signal.trap "PIPE", "SYSTEM_DEFAULT" if Signal.list.include? "PIPE"
|
20
24
|
|
21
25
|
String.disable_colorization(true) unless STDOUT.isatty or global_options['color']
|
@@ -60,23 +64,52 @@ def print_event_details(event)
|
|
60
64
|
puts " #{"Where:".magenta} #{(event.venue.name.nil? ? "Not specified" : "#{event.venue.address_1}, #{event.venue.city}, #{event.venue.state} (#{event.venue.name.colorize(:green)})")}"
|
61
65
|
end
|
62
66
|
|
63
|
-
|
67
|
+
def query_events(attendance)
|
68
|
+
MCLI::send('get_' + attendance + '_events').each do |event|
|
69
|
+
print_event_details event
|
70
|
+
puts
|
71
|
+
end
|
72
|
+
end
|
73
|
+
|
74
|
+
desc "List upcoming meetups you are going to (default command)"
|
75
|
+
command :going do |c|
|
76
|
+
c.action do
|
77
|
+
query_events c.name.to_s
|
78
|
+
end
|
79
|
+
end
|
80
|
+
|
81
|
+
desc "List upcoming meetups you are not going to"
|
82
|
+
command :notgoing do |c|
|
83
|
+
c.action do
|
84
|
+
query_events c.name.to_s
|
85
|
+
end
|
86
|
+
end
|
87
|
+
|
88
|
+
desc "List upcoming meetups you RSVP'ed (yes or no) to"
|
64
89
|
command :upcoming do |c|
|
65
90
|
c.action do
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
91
|
+
query_events c.name.to_s
|
92
|
+
end
|
93
|
+
end
|
94
|
+
|
95
|
+
desc "List past meetups you went to"
|
96
|
+
command :went do |c|
|
97
|
+
c.action do
|
98
|
+
query_events c.name.to_s
|
99
|
+
end
|
100
|
+
end
|
101
|
+
|
102
|
+
desc "List past meetups you didn't go to"
|
103
|
+
command :didntgo do |c|
|
104
|
+
c.action do
|
105
|
+
query_events c.name.to_s
|
70
106
|
end
|
71
107
|
end
|
72
108
|
|
73
|
-
desc "List
|
109
|
+
desc "List past meetups you RSVP'ed (yes or no) to"
|
74
110
|
command :past do |c|
|
75
111
|
c.action do
|
76
|
-
|
77
|
-
print_event_details event
|
78
|
-
puts
|
79
|
-
end
|
112
|
+
query_events c.name.to_s
|
80
113
|
end
|
81
114
|
end
|
82
115
|
|
data/lib/meetup-cli/api.rb
CHANGED
@@ -7,14 +7,30 @@ module MCLI
|
|
7
7
|
end
|
8
8
|
end
|
9
9
|
|
10
|
-
#
|
11
|
-
# https://www.meetup.com/meetup_api/docs/2/events/
|
10
|
+
# Meetup API docs: https://www.meetup.com/meetup_api/docs/2/events/
|
12
11
|
|
13
|
-
def self.
|
12
|
+
def self.get_going_events
|
14
13
|
api = init_api.fetch(:events, {member_id: 'self', rsvp: 'yes'})
|
15
14
|
end
|
16
15
|
|
16
|
+
def self.get_notgoing_events
|
17
|
+
api = init_api.fetch(:events, {member_id: 'self', rsvp: 'no'})
|
18
|
+
end
|
19
|
+
|
20
|
+
def self.get_upcoming_events
|
21
|
+
api = init_api.fetch(:events, {member_id: 'self'})
|
22
|
+
end
|
23
|
+
|
24
|
+
def self.get_went_events
|
25
|
+
api = init_api.fetch(:events, {member_id: 'self', status: 'past', desc: 'true', rsvp: 'yes'})
|
26
|
+
end
|
27
|
+
|
28
|
+
def self.get_didntgo_events
|
29
|
+
api = init_api.fetch(:events, {member_id: 'self', status: 'past', desc: 'true', rsvp: 'no'})
|
30
|
+
end
|
31
|
+
|
17
32
|
def self.get_past_events
|
18
|
-
|
33
|
+
# Unlike upcoming events, does not return valid results if 'rsvp' value is not explicitly specified
|
34
|
+
api = init_api.fetch(:events, {member_id: 'self', status: 'past', desc: 'true', rsvp: 'yes,no'})
|
19
35
|
end
|
20
36
|
end
|
data/lib/meetup-cli/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: meetup-cli
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 2.0.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ildar Sagdejev
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-
|
11
|
+
date: 2017-11-25 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: gli
|