Merge branch 'master' into pmitros/dexml

This commit is contained in:
Piotr Mitros
2012-06-01 16:00:48 -04:00
20 changed files with 403 additions and 24 deletions

View File

@@ -126,6 +126,14 @@ describe 'VideoPlayer', ->
it 'trigger pause event', ->
expect('pause').toHaveBeenTriggeredOn @player
describe 'when the video is unstarted', ->
beforeEach ->
spyOnEvent @player, 'pause'
@player.onStateChange data: YT.PlayerState.UNSTARTED
it 'trigger pause event', ->
expect('pause').toHaveBeenTriggeredOn @player
describe 'when the video is ended', ->
beforeEach ->
spyOnEvent @player, 'ended'

View File

@@ -12,6 +12,8 @@ $ ->
window.onTouchBasedDevice = ->
navigator.userAgent.match /iPhone|iPod|iPad/i
$('body').addClass 'touch-based-device' if onTouchBasedDevice()
$("a[rel*=leanModal]").leanModal()
$('#csrfmiddlewaretoken').attr 'value', $.cookie('csrftoken')

View File

@@ -1,5 +1,8 @@
class @VideoPlayer
constructor: (@video) ->
# Define a missing constant of Youtube API
YT.PlayerState.UNSTARTED = -1
@currentTime = 0
@element = $("#video_#{@video.id}")
@render()
@@ -57,7 +60,7 @@ class @VideoPlayer
switch event.data
when YT.PlayerState.PLAYING
$(@).trigger('play')
when YT.PlayerState.PAUSED
when YT.PlayerState.PAUSED, YT.PlayerState.UNSTARTED
$(@).trigger('pause')
when YT.PlayerState.ENDED
$(@).trigger('ended')

View File

@@ -10,7 +10,9 @@ class @VideoSpeedControl
$(@player).bind('speedChange', @onSpeedChange)
@$('.video_speeds a').click @changeVideoSpeed
if onTouchBasedDevice()
@$('.speeds').click -> $(this).toggleClass('open')
@$('.speeds').click (event) ->
event.preventDefault()
$(this).toggleClass('open')
else
@$('.speeds').mouseenter ->
$(this).addClass('open')