discordrb 1.3.9 → 1.3.10

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of discordrb might be problematic. Click here for more details.

checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 569e1f420904120c2bcc90a4d3210dcd6e2bbb33
4
- data.tar.gz: 4aa9f7b948e80d2b510981089df082fe3b25e536
3
+ metadata.gz: d3394dc24297810feb875acf67f18bc2faaf2e4e
4
+ data.tar.gz: d99fd2f8d5ea8fed3627d225c8b0ac46f9a62fe9
5
5
  SHA512:
6
- metadata.gz: 4ccdf4a5c16ea40690f0bcd522c7532bf71a857bd006a7b332484409ae1ecdb68380673250c5d96850be92ede58381af76f4d5154f26ff59e0dcdc8b2e51990c
7
- data.tar.gz: 5cd3c4927f10709b9605f242da79d9cc881d3cd466eab30b3996d5827fb6dae2619e2f6a160fa22ca8750a614d6926389dccbffa5d1b40908319633423400d34
6
+ metadata.gz: 5775f0196014a3a7a4633cd855a93dbd963f1b4c54a54380151dfad7c4eda2023e3846e489cb3b9803e2ce1a7477812cc2d6aa6066275fa330fbb458e26a252b
7
+ data.tar.gz: 72dfb6f70176919bd345ad7414cdff3ad1ce420bdc43f2ef6ca1af02cc829957e50b39049b2cffbe7211e2282dde6ffe67c00e3114251a962a41d77ac6478cfb
File without changes
@@ -142,6 +142,10 @@ module Discordrb
142
142
  class Channel
143
143
  attr_reader :name, :server, :type, :id, :is_private, :recipient, :topic, :position, :permission_overwrites
144
144
 
145
+ def private?
146
+ @is_private
147
+ end
148
+
145
149
  def initialize(data, bot, server = nil)
146
150
  @bot = bot
147
151
 
@@ -4,13 +4,7 @@ require 'discordrb/data'
4
4
  module Discordrb::Events
5
5
  # Raised when a channel is created
6
6
  class ChannelCreateEvent
7
- attr_reader :type
8
- attr_reader :topic
9
- attr_reader :position
10
- attr_reader :name
11
- attr_reader :is_private
12
- attr_reader :id
13
- attr_reader :server
7
+ attr_reader :type, :topic, :position, :name, :is_private, :id, :server
14
8
 
15
9
  def initialize(data, bot)
16
10
  @type = data['type']
@@ -4,13 +4,7 @@ require 'discordrb/data'
4
4
  module Discordrb::Events
5
5
  # Raised when a channel is deleted
6
6
  class ChannelDeleteEvent
7
- attr_reader :type
8
- attr_reader :topic
9
- attr_reader :position
10
- attr_reader :name
11
- attr_reader :is_private
12
- attr_reader :id
13
- attr_reader :server
7
+ attr_reader :type, :topic, :position, :name, :is_private, :id, :server
14
8
 
15
9
  def initialize(data, bot)
16
10
  @type = data['type']
@@ -4,13 +4,7 @@ require 'discordrb/data'
4
4
  module Discordrb::Events
5
5
  # Raised when a channel is updated (e.g. topic changes)
6
6
  class ChannelUpdateEvent
7
- attr_reader :type
8
- attr_reader :topic
9
- attr_reader :position
10
- attr_reader :name
11
- attr_reader :is_private
12
- attr_reader :channel
13
- attr_reader :server
7
+ attr_reader :type, :topic, :position, :name, :is_private, :channel, :server
14
8
 
15
9
  def initialize(data, bot)
16
10
  @type = data['type']
@@ -13,7 +13,7 @@ module Discordrb::Events
13
13
 
14
14
  def self.matches_all(attributes, to_check, &block)
15
15
  # "Zeroth" case: attributes is nil
16
- return true unless attributes
16
+ return true if attributes.nil?
17
17
 
18
18
  # First case: there's a single negated attribute
19
19
  if attributes.is_a? Negated
@@ -4,8 +4,7 @@ require 'discordrb/data'
4
4
  module Discordrb::Events
5
5
  # Raised when a role is created on a server
6
6
  class GuildRoleCreateEvent
7
- attr_reader :role
8
- attr_reader :server
7
+ attr_reader :role, :server
9
8
 
10
9
  def initialize(data, bot)
11
10
  @server = bot.server(data['guild_id'].to_i)
@@ -4,8 +4,7 @@ require 'discordrb/data'
4
4
  module Discordrb::Events
5
5
  # Raised when a role is deleted from a server
6
6
  class GuildRoleDeleteEvent
7
- attr_reader :id
8
- attr_reader :server
7
+ attr_reader :id, :server
9
8
 
10
9
  def initialize(data, bot)
11
10
  # The role should already be deleted from the server's list
@@ -4,8 +4,7 @@ require 'discordrb/data'
4
4
  module Discordrb::Events
5
5
  # Event raised when a role updates on a server
6
6
  class GuildRoleUpdateEvent
7
- attr_reader :role
8
- attr_reader :server
7
+ attr_reader :role, :server
9
8
 
10
9
  def initialize(data, bot)
11
10
  @server = bot.server(data['guild_id'].to_i)
@@ -4,9 +4,7 @@ require 'discordrb/data'
4
4
  module Discordrb::Events
5
5
  # Generic subclass for server member events (add/update/delete)
6
6
  class GuildMemberEvent
7
- attr_reader :user
8
- attr_reader :roles
9
- attr_reader :server
7
+ attr_reader :user, :roles, :server
10
8
 
11
9
  def initialize(data, bot)
12
10
  @server = bot.server(data['guild_id'].to_i)
@@ -30,9 +30,27 @@ module Discordrb::Events
30
30
  return false unless event.is_a? MessageEvent
31
31
 
32
32
  [
33
- matches_all(@attributes[:starting_with], event.content) { |a, e| e.start_with? a },
34
- matches_all(@attributes[:ending_with], event.content) { |a, e| e.end_with? a },
35
- matches_all(@attributes[:containing], event.content) { |a, e| e.include? a },
33
+ matches_all(@attributes[:starting_with] || @attributes[:start_with], event.content) do |a, e|
34
+ if a.is_a? String
35
+ e.start_with? a
36
+ elsif a.is_a? Regexp
37
+ (e =~ a) == 0
38
+ end
39
+ end,
40
+ matches_all(@attributes[:ending_with] || @attributes[:end_with], event.content) do |a, e|
41
+ if a.is_a? String
42
+ e.end_with? a
43
+ elsif a.is_a? Regexp
44
+ a.match(e) ? e.end_with?(a.match(e)[-1]) : false
45
+ end
46
+ end,
47
+ matches_all(@attributes[:containing] || @attributes[:contains], event.content) do |a, e|
48
+ if a.is_a? String
49
+ e.include? a
50
+ elsif a.is_a? Regexp
51
+ (e =~ a)
52
+ end
53
+ end,
36
54
  matches_all(@attributes[:in], event.channel) do |a, e|
37
55
  if a.is_a? String
38
56
  # Make sure to remove the "#" from channel names in case it was specified
@@ -52,9 +70,16 @@ module Discordrb::Events
52
70
  a == e
53
71
  end
54
72
  end,
55
- matches_all(@attributes[:with_text], event.content) { |a, e| e == a },
73
+ matches_all(@attributes[:with_text] || @attributes[:content], event.content) do |a, e|
74
+ if a.is_a? String
75
+ e == a
76
+ elsif a.is_a? Regexp
77
+ a.match(e) ? (e == (a.match(e)[0])) : false
78
+ end
79
+ end,
56
80
  matches_all(@attributes[:after], event.timestamp) { |a, e| a > e },
57
- matches_all(@attributes[:before], event.timestamp) { |a, e| a < e }
81
+ matches_all(@attributes[:before], event.timestamp) { |a, e| a < e },
82
+ matches_all(@attributes[:private], event.channel.private?) { |a, e| !e == !a }
58
83
  ].reduce(true, &:&)
59
84
  end
60
85
  end
@@ -4,16 +4,7 @@ require 'discordrb/data'
4
4
  module Discordrb::Events
5
5
  # Event raised when a user's voice state updates
6
6
  class VoiceStateUpdateEvent
7
- attr_reader :user
8
- attr_reader :token
9
- attr_reader :suppress
10
- attr_reader :session_id
11
- attr_reader :self_mute
12
- attr_reader :self_deaf
13
- attr_reader :mute
14
- attr_reader :deaf
15
- attr_reader :server
16
- attr_reader :channel
7
+ attr_reader :user, :token, :suppress, :session_id, :self_mute, :self_deaf, :mute, :deaf, :server, :channel
17
8
 
18
9
  def initialize(data, bot)
19
10
  @token = data['token']
@@ -1,4 +1,4 @@
1
1
  # Discordrb and all its functionality, in this case only the version.
2
2
  module Discordrb
3
- VERSION = '1.3.9'
3
+ VERSION = '1.3.10'
4
4
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: discordrb
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.3.9
4
+ version: 1.3.10
5
5
  platform: ruby
6
6
  authors:
7
7
  - meew0
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2015-11-27 00:00:00.000000000 Z
11
+ date: 2015-11-28 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: faye-websocket
@@ -99,7 +99,7 @@ files:
99
99
  - discordrb.gemspec
100
100
  - examples/commands.rb
101
101
  - examples/ping.rb
102
- - examples/pm.rb
102
+ - examples/pm_send.rb
103
103
  - lib/discordrb.rb
104
104
  - lib/discordrb/api.rb
105
105
  - lib/discordrb/await.rb