mad_chatter 0.2.0 → 0.2.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.
- data/CHANGELOG.txt +4 -0
- data/lib/mad_chatter/server.rb +5 -3
- data/lib/mad_chatter/version.rb +1 -1
- data/templates/extensions.rb +5 -4
- data/templates/web/styles.css +3 -0
- metadata +13 -13
data/CHANGELOG.txt
CHANGED
@@ -1,5 +1,9 @@
|
|
1
1
|
Mad Chatter
|
2
2
|
|
3
|
+
Version 0.2.1
|
4
|
+
- Realized the simple extensions aren't actually working. This is why we need tests. :(
|
5
|
+
- Also, fixed some styles that weren't being applied.
|
6
|
+
|
3
7
|
Version 0.2.0
|
4
8
|
- Added a '/clear' command to client-side javascript to be able to clear all chat messages
|
5
9
|
- Fixed HTML injection vulnerability by adding markdown parsing and escaping all incoming html
|
data/lib/mad_chatter/server.rb
CHANGED
@@ -52,7 +52,9 @@ module MadChatter
|
|
52
52
|
def message_received(json)
|
53
53
|
msg = JSON.parse(json)
|
54
54
|
username = MadChatter::Users.find_username_by_token(msg['token'])
|
55
|
-
|
55
|
+
original_message = msg['message']
|
56
|
+
filtered_message = filter_message(original_message)
|
57
|
+
message = MadChatter::Message.new(msg['type'], filtered_message, msg['token'], username)
|
56
58
|
|
57
59
|
if message.token.nil?
|
58
60
|
return # Token is required to send messages
|
@@ -60,9 +62,9 @@ module MadChatter
|
|
60
62
|
|
61
63
|
begin
|
62
64
|
MadChatter.simple_extensions.each do |extension|
|
63
|
-
if
|
65
|
+
if original_message =~ extension[:regex]
|
64
66
|
MadChatter::Action.instance_exec do
|
65
|
-
args = extension[:regex].match(
|
67
|
+
args = extension[:regex].match(original_message).captures
|
66
68
|
extension[:block].call(args)
|
67
69
|
end
|
68
70
|
end
|
data/lib/mad_chatter/version.rb
CHANGED
data/templates/extensions.rb
CHANGED
@@ -12,7 +12,8 @@
|
|
12
12
|
# end
|
13
13
|
#
|
14
14
|
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
15
|
+
# this still doesnt work yet. hopefully soon
|
16
|
+
# on_message %r{/youtube http://youtu.be/(.*)} do |youtube_id|
|
17
|
+
# send_message "<iframe width='560' height='315' src='http://www.youtube.com/embed/#{youtube_id}' frameborder='0' allowfullscreen></iframe>"
|
18
|
+
# stop_message_handling
|
19
|
+
# end
|
data/templates/web/styles.css
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: mad_chatter
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.1
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -13,7 +13,7 @@ date: 2012-01-02 00:00:00.000000000 Z
|
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: thor
|
16
|
-
requirement: &
|
16
|
+
requirement: &2169907800 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ! '>='
|
@@ -21,10 +21,10 @@ dependencies:
|
|
21
21
|
version: '0'
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *2169907800
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: eventmachine
|
27
|
-
requirement: &
|
27
|
+
requirement: &2169907380 !ruby/object:Gem::Requirement
|
28
28
|
none: false
|
29
29
|
requirements:
|
30
30
|
- - ! '>='
|
@@ -32,10 +32,10 @@ dependencies:
|
|
32
32
|
version: '0'
|
33
33
|
type: :runtime
|
34
34
|
prerelease: false
|
35
|
-
version_requirements: *
|
35
|
+
version_requirements: *2169907380
|
36
36
|
- !ruby/object:Gem::Dependency
|
37
37
|
name: em-websocket
|
38
|
-
requirement: &
|
38
|
+
requirement: &2169906960 !ruby/object:Gem::Requirement
|
39
39
|
none: false
|
40
40
|
requirements:
|
41
41
|
- - ! '>='
|
@@ -43,10 +43,10 @@ dependencies:
|
|
43
43
|
version: '0'
|
44
44
|
type: :runtime
|
45
45
|
prerelease: false
|
46
|
-
version_requirements: *
|
46
|
+
version_requirements: *2169906960
|
47
47
|
- !ruby/object:Gem::Dependency
|
48
48
|
name: redcarpet
|
49
|
-
requirement: &
|
49
|
+
requirement: &2156004680 !ruby/object:Gem::Requirement
|
50
50
|
none: false
|
51
51
|
requirements:
|
52
52
|
- - ! '>='
|
@@ -54,10 +54,10 @@ dependencies:
|
|
54
54
|
version: '0'
|
55
55
|
type: :runtime
|
56
56
|
prerelease: false
|
57
|
-
version_requirements: *
|
57
|
+
version_requirements: *2156004680
|
58
58
|
- !ruby/object:Gem::Dependency
|
59
59
|
name: rspec
|
60
|
-
requirement: &
|
60
|
+
requirement: &2152011900 !ruby/object:Gem::Requirement
|
61
61
|
none: false
|
62
62
|
requirements:
|
63
63
|
- - ! '>='
|
@@ -65,10 +65,10 @@ dependencies:
|
|
65
65
|
version: '0'
|
66
66
|
type: :development
|
67
67
|
prerelease: false
|
68
|
-
version_requirements: *
|
68
|
+
version_requirements: *2152011900
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: shoulda
|
71
|
-
requirement: &
|
71
|
+
requirement: &2152011480 !ruby/object:Gem::Requirement
|
72
72
|
none: false
|
73
73
|
requirements:
|
74
74
|
- - ! '>='
|
@@ -76,7 +76,7 @@ dependencies:
|
|
76
76
|
version: '0'
|
77
77
|
type: :development
|
78
78
|
prerelease: false
|
79
|
-
version_requirements: *
|
79
|
+
version_requirements: *2152011480
|
80
80
|
description: Mad Chatter is a fun, easy to customize chat server, utilizing HTML 5
|
81
81
|
Web Sockets
|
82
82
|
email:
|