1
- class Kandan.Plugins.YoutubeEmbed
1
+ class Kandan.Plugins.Embeds
2
2
3
- @regex : / ^ http(s)? :\/\/ www. youtube. com\/ watch/ i
4
- @youtube_id_pattern : / \W v=([\w |\- ] * )/
3
+ @youtube_regex : / ^ http(s)? :\/\/ www. youtube. com\/ watch/ i
4
+ @link_regex : / (http? :\S * )/ g
5
+ @image_regex : / ^ http. * \. (jpg| jpeg| gif| png)/ i
6
+
7
+ @youtube_id_regex : / \W v=([\w |\- ] * )/
8
+
9
+
10
+ @youtube_embed_template : _ .template (' <div class="youtube-preview"><a target="_blank" class="youtube-preview-link" href="<%= video_url %>"><img class="youtube-preview-image" src="<%= thumb_url %>" /></a></div>' )
11
+
12
+ @image_template : _ .template (' <a target="_blank" href="<%= image_url %>"><img class="image-embed" src="<%= image_url %>" height="200" width="200" /></a>' )
5
13
6
- @youtube_embed_template : _ .template (' <div class="youtube-preview"><a target="_blank" class="youtube-preview-link" href="<%= video_url %>"><img class="youtube-preview-image" src="<% thumb_url %>" /></a></div>' )
7
14
8
15
@ init: ()->
9
- Kandan .Modifiers .register @regex , (message , state )=>
10
- video_id = message .content .match (@youtube_id_pattern )[1 ]
16
+ @ register_youtube_modifier ()
17
+ @ register_image_modifier ()
18
+ @ register_link_modifier ()
19
+
20
+
21
+
22
+ @ register_image_modifier: ()->
23
+ Kandan .Modifiers .register @image_regex , (message , state )=>
24
+ message .content = @ image_template ({ image_url : message .content })
25
+ console .log message .content
26
+ return Kandan .Helpers .Activities .build_from_message_template (message)
27
+
28
+
29
+ @ register_youtube_modifier: ()->
30
+ Kandan .Modifiers .register @youtube_regex , (message , state )=>
31
+ video_id = message .content .match (@youtube_id_regex )[1 ]
11
32
thumb_url = " http://img.youtube.com/vi/#{ video_id } /0.jpg"
12
33
message .content = @ youtube_embed_template ({
13
34
video_url : message .content ,
14
- image_url : thumb_url
35
+ thumb_url : thumb_url
15
36
})
16
37
return Kandan .Helpers .Activities .build_from_message_template (message)
17
38
18
- Kandan .Plugins .register " Kandan.Plugins.YoutubeEmbed"
39
+
40
+ @ register_link_modifier: ()->
41
+ Kandan .Modifiers .register @link_regex , (message , state )=>
42
+ message .content = message .content
43
+ .replace (@link_regex , ' <a target="_blank" href="$1">$1</a>' )
44
+ return Kandan .Helpers .Activities .build_from_message_template (message)
45
+
46
+ Kandan .Plugins .register " Kandan.Plugins.Embeds"
0 commit comments