Tor Hveem
a02573a9c2
Construct plugin elements async. Fixes #660
...
This commit changes the plugins that uses angular.element to load
resources directly to instead return a function that runs
angular.element. When the browser runs angular.element('<img>') and gets
a src attr it will fetch the content in the src. This makes the
browser running gb automatically fetch all plugin content that gets
linked even if the user didn't request it.
Maybe we could change our plugin architecture to split the match
function and the generator functions so this could be solved more
elegantly.
2015-10-19 14:54:21 +02:00
Alex Schneider
1d628ed849
Remove comments that we don't really need
2015-10-17 16:23:48 -07:00
Alex Schneider
6dcb579de4
Fix sanitization by constructing elements in Javascript.
...
This is still technically a hack, the elements should really be defined in a view with templates, but it fixes the issue with sanitize where it can't sanitize if it can't parse HTML.
2015-10-17 16:15:42 -07:00
David Cormier
0afa7bc184
plugins: sanitize user input before passing it to plugins
2015-10-16 15:13:53 -04:00
Colin Arnott
2f8ab9dbf3
roll back tls upgrade for giphy plugin link, as it conflicts with printed link
2015-09-28 17:35:28 +00:00
Colin Arnott
875001f1b2
simplify regex matching and increase readability of the giphy plugin and have plugin link to original userfacing url, not cdn image file
2015-09-26 22:40:30 +00:00
Colin Arnott
03a6e391f6
added plugin support for giphy gifs as embedded content and created testcases
2015-09-26 05:06:11 +00:00
David Cormier
d8c4ba78c1
plugins: add html5 video support
...
Shows ogv, mp4 and webm files inside a video tag
2015-02-17 09:48:18 +01:00
Vivien Didelot
c4bddc993d
Revert "Check GET parameters in image embedding"
...
There's no need to check for every GET parameters (using the line ending
'$' character), we can just add a word boundary (the '\b' character)
instead. Thus, revert commit b939bc7ca8
.
2015-02-13 09:05:45 +01:00
Lorenz Hübschle-Schneider
c57911db64
Restructure plugin constructors to make them more convenient
2015-02-08 21:48:31 +01:00
Lorenz Hübschle-Schneider
4b65847b46
Rewrite youtube plugin with urlPlugin
...
Remove URL without protocol from tests
2015-02-08 11:23:32 +01:00
Lorenz Hübschle-Schneider
beaa3426dd
Rewrite vine plugin with urlPlugin
2015-02-08 11:17:06 +01:00
Lorenz Hübschle-Schneider
18c0db6c4f
Fix Asciinema plugin
2015-02-08 11:16:55 +01:00
Vivien Didelot
ab260cb5a7
plugins: add Vine support
...
This commit adds support for Vine embeddable content.
2015-01-30 19:13:17 -05:00
Vivien Didelot
b365272aa6
plugins: (image) support :size suffix
...
Some images URL (such as Twitter hosting site twimg.com) are suffixed
with :size where size can be small, medium or large.
2015-01-14 10:38:25 -05:00
Kenneth Chung
fdc598c00f
fix a typo and some grammar mistakes
2014-10-14 22:21:22 -07:00
Lorenz Hübschle-Schneider
bc037720bd
Fix plugin selectors after angular upgrade
...
The recent angular update changed the format of the hash keys.
They're now in the format 'object:123' (etc), which isn't a valid
CSS class name any more, but we used the $$hashKey as such.
I used this opportunity to introduce a bit of abstraction there as well
2014-09-28 21:01:13 +02:00
Lorenz Hübschle-Schneider
a80db339f8
Use strict
...
Requires turning IrcUtils into an Angular service, because the global variable
trick won't work with use strict.
Reuse is still easily possible by removing the angular wrapping around it.
2014-09-07 16:55:18 +01:00
Lorenz Hübschle-Schneider
b939bc7ca8
Check GET parameters in image embedding
...
This is a great candidate for the tests!
2014-08-18 16:41:30 +01:00
Lorenz Hübschle-Schneider
1235a5e148
Embed Dropbox images
...
We need to pass a parameter, "?dl=1", to get the actual file
2014-08-18 16:37:45 +01:00
Lorenz Hübschle-Schneider
7d13f49dab
Add tweet embedding plugin
2014-08-09 14:18:13 +01:00
Lorenz Hübschle-Schneider
6d988069c7
Add asynchronous GitHub Gist embedding plugin
...
requires a few selectors to be more precise in our CSS
2014-08-09 14:18:13 +01:00
Lorenz Hübschle-Schneider
3d719f3671
Simplify plugins that detect URLs by eliminating redundancy
2014-08-09 14:18:13 +01:00
Lorenz Hübschle-Schneider
703fcb1668
Add support for asynchronous / lazy plugins
...
Fixes #253
2014-08-09 14:18:13 +01:00
Lorenz Hübschle-Schneider
ccf7b1c51e
Adapt common plugins to make use of multiple embeds per message
2014-07-27 12:55:25 +01:00
Lorenz Hübschle-Schneider
e962472414
Fix Google maps regex
2014-07-27 12:55:25 +01:00
Lorenz Hübschle-Schneider
ac31901d7d
Allow plugins to return an array of results and display each of them
...
Also fix the URL regex to match multiple URLs ('g' modifier)
2014-07-27 12:55:22 +01:00
David Cormier
ceb31c1947
contentForMessage doesn't have to care about content visibility
2014-07-26 09:38:24 -04:00
Lorenz Hübschle-Schneider
8e1e871411
Fix matching (#segments)
2014-07-14 23:21:23 +01:00
Lorenz Hübschle-Schneider
885b47eaaf
Add yr.no plugin
2014-07-14 22:51:07 +01:00
Lorenz Hübschle-Schneider
39b6d7a179
Fix URL regex
...
Old one doesn't match umlauts and other unicode stuff
New one is a lot more general and similar to what angular uses
2014-07-14 22:51:07 +01:00
Lorenz Hübschle-Schneider
86f4c7308b
Image plugin: case insensitive regex
...
Fixes #305
2014-05-21 17:45:49 +01:00
Lorenz Hübschle-Schneider
9f46e656cb
Improve youtube matching URL
...
closes #266
2014-04-25 18:39:01 -04:00
Felix Eckhofer
cd6ee96ae7
Use https for dailymotion
2014-04-04 20:43:13 +02:00
Lorenz Hübschle-Schneider
3c1bdfeb71
Improve plugin regular expressions, load imgur over https if enabled
2014-03-05 15:53:13 +00:00
Felix Eckhofer
18dd4eae1f
Replace tabs with spaces
2014-02-24 11:41:25 +01:00
Felix Eckhofer
b3b4651e33
Remove trailing spaces
2014-02-24 11:41:25 +01:00
David Cormier
fb5a477b73
Implement asciinema plugin
...
Close #66
2014-02-23 10:04:14 -05:00
Lorenz H-S
5ad01dac81
embed youtube over SSL
2014-01-09 21:45:00 +00:00
David Cormier
68f24554d1
Remove global for variables
2013-12-17 15:55:41 -05:00
David Cormier
c251c3b74c
Fix is already defined errors
2013-12-17 15:48:43 -05:00
David Cormier
0912a2b55b
Remove extra comma and unnecessary semicolons
2013-12-17 15:39:22 -05:00
David Cormier
e2a84470ce
Add missing semicolons
2013-12-17 15:35:36 -05:00
David Cormier
6d5573a148
Delete trailing whitespaces
2013-12-17 15:30:22 -05:00
Tor Hveem
1615f3016b
Use angular function to linkify text.
...
Fixes bugs with HTML escaping in text
2013-10-28 14:37:21 +01:00
Tor Hveem
d57127cc84
make class for embedded image, and fix its height parameter so its
...
better for small images
2013-10-28 13:32:48 +01:00
Tor Hveem
6258303465
New user setting for display embedded content by default
2013-10-28 13:32:47 +01:00
Vivien Didelot
15e267a9ee
plugins: add AlloCine support
2013-10-23 09:44:21 -04:00
Vivien Didelot
98ad8d152d
plugins: add Dailymotion support
2013-10-22 10:48:05 -04:00
Tor Hveem
453a8d5ef3
Make images clickable so you can get full size
2013-10-19 13:10:35 +02:00