* add preview text and preload master on landing page

This commit is contained in:
Seth Call 2015-05-28 13:52:20 -05:00
parent 54a7cb40c9
commit de4411fbdd
7 changed files with 42 additions and 6 deletions

View File

@ -344,7 +344,7 @@ module JamRuby
stats['count'] = result['total'].to_i
stats['signing_count'] = result['signing_count'].to_i
stats['redeemed_count'] = result['redeem_count'].to_i
stats['redeemed_and_dl_count'] = result['redeem_and_dl_count'].to_i
stats['redeemed_and_dl_count'] = result['redeemed_and_dl_count'].to_i
stats['purchased_count'] = stats['count'] - stats['redeemed_count']
stats
end

View File

@ -9,7 +9,7 @@ context.JK.JamTrackPreview = class JamTrackPreview
@EVENTS = context.JK.EVENTS
@rest = context.JK.Rest()
@logger = context.JK.logger
@options = options || {master_shows_duration: false, color:'gray', add_line_break: false}
@options = options || {master_shows_duration: false, color:'gray', add_line_break: false, preload_master:false}
@app = app
@jamTrack = jamTrack
@jamTrackTrack = jamTrackTrack
@ -19,7 +19,9 @@ context.JK.JamTrackPreview = class JamTrackPreview
@instrumentIcon = null
@instrumentName = null
@part = null
@loaded = false
@loading = null
@loadingText = null
template = $('#template-jam-track-preview')
throw "no jam track preview template" if not template.exists()
@ -31,6 +33,7 @@ context.JK.JamTrackPreview = class JamTrackPreview
@instrumentName = @root.find('.instrument-name')
@part = @root.find('.part')
@loading = @root.find('.loading')
@loadingText = @root.find('.loading-text')
@playButton.on('click', @play)
@stopButton.on('click', @stop)
@ -91,6 +94,16 @@ context.JK.JamTrackPreview = class JamTrackPreview
if @no_audio
@playButton.addClass('disabled')
@stopButton.addClass('disabled')
else
if @options.preload_master && @jamTrackTrack.track_type == 'Master'
@sound = new Howl({
src: @urls,
autoplay: false,
loop: false,
volume: 1.0,
preload: true,
onload: @onHowlerLoad
onend: @onHowlerEnd})
onDestroyed: () =>
@sound.unload()
@ -108,7 +121,9 @@ context.JK.JamTrackPreview = class JamTrackPreview
@removeNowPlaying()
onHowlerLoad: () =>
@loading.addClass('hidden')
@loaded = true
@loading.fadeOut();
@loadingText.fadeOut(); #addClass('hidden')
play: (e) =>
if e?
@ -129,7 +144,9 @@ context.JK.JamTrackPreview = class JamTrackPreview
onload: @onHowlerLoad
onend: @onHowlerEnd})
unless @loaded
@loading.removeClass('hidden')
@loadingText.removeClass('hidden')
@logger.debug("play issued for jam track preview")

View File

@ -44,7 +44,7 @@
$previews.append($element);
new context.JK.JamTrackPreview(app, $element, jam_track, track, {master_shows_duration: false, color:'black', master_adds_line_break: true})
new context.JK.JamTrackPreview(app, $element, jam_track, track, {master_shows_duration: false, color:'black', master_adds_line_break: true, preload_master:true})
})
$previews.append('<br clear = "all" />')

View File

@ -34,7 +34,7 @@
$previews.append($element);
new context.JK.JamTrackPreview(app, $element, jam_track, track, {master_shows_duration: false, color:'black', master_adds_line_break:true})
new context.JK.JamTrackPreview(app, $element, jam_track, track, {master_shows_duration: false, color:'black', master_adds_line_break:true, preload_master:true})
})
$previews.append('<br clear = "all" />')

View File

@ -69,6 +69,19 @@
}
}
.loading-text {
position:absolute;
right:-135px;
top:0;
padding:0 3px;
font-style:italic;
z-index:1;
-webkit-border-radius:10px;
-moz-border-radius:10px;
border-radius:10px;
border:0 solid black;
}
.adds-line-break {
display:block;
margin-left:66px;

View File

@ -198,6 +198,11 @@
.jam-track-preview {
font-size:11px;
white-space:nowrap;
.loading-text {
right:-115px;
background-color:#262626;
}
}
.jamtrack-action {

View File

@ -6,4 +6,5 @@ script type="text/template" id='template-jam-track-preview'
img.instrument-icon hoveraction="instrument" data-instrument-id="" width="24" height="24"
.instrument-name
.part
.loading.spinner-small.hidden
.loading.spinner-small.hidden
.loading-text.hidden preview loading