Merge remote-tracking branch 'ihavenoface1/patch-3'
This commit is contained in:
commit
15ba2dd06a
@ -1,6 +1,6 @@
|
|||||||
Embedding =
|
Embedding =
|
||||||
init: ->
|
init: ->
|
||||||
return unless Conf['Embedding'] or Conf['Link Title']
|
return unless Conf['Embedding'] or Conf['Link Title'] or Conf['Cover Preview']
|
||||||
@types = {}
|
@types = {}
|
||||||
@types[type.key] = type for type in @ordered_types
|
@types[type.key] = type for type in @ordered_types
|
||||||
|
|
||||||
@ -22,21 +22,28 @@ Embedding =
|
|||||||
return
|
return
|
||||||
|
|
||||||
events: (post) ->
|
events: (post) ->
|
||||||
return unless Conf['Embedding']
|
if Conf['Embedding']
|
||||||
i = 0
|
i = 0
|
||||||
items = $$ '.embedder', post.nodes.comment
|
items = $$ '.embedder', post.nodes.comment
|
||||||
while el = items[i++]
|
while el = items[i++]
|
||||||
$.on el, 'click', Embedding.cb.click
|
$.on el, 'click', Embedding.cb.click
|
||||||
Embedding.cb.toggle.call el if $.hasClass el, 'embedded'
|
Embedding.cb.toggle.call el if $.hasClass el, 'embedded'
|
||||||
return
|
if Conf['Cover Preview']
|
||||||
|
i = 0
|
||||||
|
items = $$ '.linkify', post.nodes.comment
|
||||||
|
while el = items[i++]
|
||||||
|
data = Embedding.services el
|
||||||
|
Embedding.preview data
|
||||||
|
return
|
||||||
|
|
||||||
process: (link, post) ->
|
process: (link, post) ->
|
||||||
return unless Conf['Embedding'] or Conf['Link Title']
|
return unless Conf['Embedding'] or Conf['Link Title'] or Conf['Cover Preview']
|
||||||
return if $.x 'ancestor::pre', link
|
return if $.x 'ancestor::pre', link
|
||||||
if data = Embedding.services link
|
if data = Embedding.services link
|
||||||
data.post = post
|
data.post = post
|
||||||
Embedding.embed data if Conf['Embedding']
|
Embedding.embed data if Conf['Embedding']
|
||||||
Embedding.title data if Conf['Link Title']
|
Embedding.title data if Conf['Link Title']
|
||||||
|
Embedding.preview data if Conf['Cover Preview']
|
||||||
|
|
||||||
services: (link) ->
|
services: (link) ->
|
||||||
{href} = link
|
{href} = link
|
||||||
@ -119,6 +126,23 @@ Embedding =
|
|||||||
$.extend data.link, <%= html('[${data.key}] <span class="warning">Title Link Blocked</span> (are you using NoScript?)</a>') %>
|
$.extend data.link, <%= html('[${data.key}] <span class="warning">Title Link Blocked</span> (are you using NoScript?)</a>') %>
|
||||||
return
|
return
|
||||||
|
|
||||||
|
preview: (data) ->
|
||||||
|
{key, uid, link} = data
|
||||||
|
return if not (service = Embedding.types[key].preview)
|
||||||
|
$.on link, 'mouseover', (e) ->
|
||||||
|
src = service.url uid
|
||||||
|
{height} = service
|
||||||
|
el = $.el 'img',
|
||||||
|
src: src
|
||||||
|
id: 'ihover'
|
||||||
|
$.add d.body, el
|
||||||
|
UI.hover
|
||||||
|
root: link
|
||||||
|
el: el
|
||||||
|
latestEvent: e
|
||||||
|
endEvents: 'mouseout click'
|
||||||
|
height: height
|
||||||
|
|
||||||
cb:
|
cb:
|
||||||
click: (e) ->
|
click: (e) ->
|
||||||
e.preventDefault()
|
e.preventDefault()
|
||||||
@ -427,4 +451,7 @@ Embedding =
|
|||||||
for item in data.items when item.id is uid
|
for item in data.items when item.id is uid
|
||||||
return item.snippet.title
|
return item.snippet.title
|
||||||
'Not Found'
|
'Not Found'
|
||||||
|
preview:
|
||||||
|
url: (uid) -> "https://img.youtube.com/vi/#{uid}/0.jpg"
|
||||||
|
height: 360
|
||||||
]
|
]
|
||||||
|
|||||||
@ -136,6 +136,11 @@ Config =
|
|||||||
'Replace the link of a supported site with its actual title.'
|
'Replace the link of a supported site with its actual title.'
|
||||||
1
|
1
|
||||||
]
|
]
|
||||||
|
'Cover Preview': [
|
||||||
|
true
|
||||||
|
'Show preview of supported links on hover.'
|
||||||
|
1
|
||||||
|
]
|
||||||
'Embedding': [
|
'Embedding': [
|
||||||
true
|
true
|
||||||
'Embed supported services. Note: Some services don\'t work on HTTPS.'
|
'Embed supported services. Note: Some services don\'t work on HTTPS.'
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user