diff --git a/admin/config/application.rb b/admin/config/application.rb index eb5c1c612..be5ce3803 100644 --- a/admin/config/application.rb +++ b/admin/config/application.rb @@ -154,5 +154,8 @@ module JamAdmin config.jmep_dir = ENV['JMEP_DIR'] || File.expand_path(File.join(File.dirname(__FILE__), "..", "..", "..", "jmep")) config.email_dump_code = 'rcAUyC3TZCbgGx4YQpznBRbNnQMXW5iKTzf9NSBfzMLsnw9dRQ' + + config.admin_port = ENV['ADMIN_PORT'] || 3333 + config.admin_root_url = "#{config.external_protocol}#{config.external_hostname}#{(config.admin_port == 80 || config.admin_port == 443) ? '' : ':' + config.admin_port.to_s}" end end diff --git a/web/app/assets/javascripts/react-components/landing/JamTrackLandingPage.js.jsx.coffee b/web/app/assets/javascripts/react-components/landing/JamTrackLandingPage.js.jsx.coffee index 96d968f96..a1e01f323 100644 --- a/web/app/assets/javascripts/react-components/landing/JamTrackLandingPage.js.jsx.coffee +++ b/web/app/assets/javascripts/react-components/landing/JamTrackLandingPage.js.jsx.coffee @@ -166,6 +166,7 @@ rest = context.JK.Rest() rest.placeOrder() .done((response) => this.setState({done: true}) + context.JK.Tracking.redeemCompleteTrack() window.location = '/client?redeemed_flow=1#/jamtrack' ) .fail((jqXHR) => diff --git a/web/app/assets/javascripts/redeem_complete.js b/web/app/assets/javascripts/redeem_complete.js index da264f510..c04289d4c 100644 --- a/web/app/assets/javascripts/redeem_complete.js +++ b/web/app/assets/javascripts/redeem_complete.js @@ -35,6 +35,9 @@ } function afterShow(data) { + + context.JK.Tracking.redeemCompleteTrack() + $noPurchasesPrompt.addClass('hidden') $purchasedJamTracks.empty() $thanksPanel.addClass("hidden") diff --git a/web/app/assets/javascripts/web/tracking.js.coffee b/web/app/assets/javascripts/web/tracking.js.coffee index 8186066de..cb912a684 100644 --- a/web/app/assets/javascripts/web/tracking.js.coffee +++ b/web/app/assets/javascripts/web/tracking.js.coffee @@ -74,6 +74,9 @@ class Tracking @logger.debug("existing new recorded") context.JK.GA.virtualPageView('/client#/redeemSignup/new-user') + redeemCompleteTrack: () -> + context.JK.GA.virtualPageView('/client#/redeemed-successful') + context.JK.Tracking = new Tracking() diff --git a/web/spec/features/individual_jamtrack_spec.rb b/web/spec/features/individual_jamtrack_spec.rb index 0aea10088..533cf0e35 100644 --- a/web/spec/features/individual_jamtrack_spec.rb +++ b/web/spec/features/individual_jamtrack_spec.rb @@ -42,8 +42,8 @@ describe "Individual JamTrack", :js => true, :type => :feature, :capybara_featur it "logged out" do visit "/landing/jamtracks/#{@jamtrack_acdc_backinblack.slug}" - find('h1', jamtrack_acdc_backinblack.name.upper) - find('h2', "by " + jamtrack_acdc_backinblack.original_artist.upper) + find('h1.jam-track-name', jamtrack_acdc_backinblack.name.upcase) + find('h2.original-artist', "by " + jamtrack_acdc_backinblack.original_artist.upcase) jamtrack_acdc_backinblack.jam_track_tracks.each do |track| if track.master? find('.tracks.previews[data-id="' + track.id + '"] img.instrument-icon[data-instrument-id="other"]') @@ -53,28 +53,29 @@ describe "Individual JamTrack", :js => true, :type => :feature, :capybara_featur find('.tracks.previews[data-id="' + track.id + '"] .instrument-name', text:track.instrument.description) end end - find('.browse-band a')['href'].should eq("/client?artist=#{jamtrack_acdc_backinblack.original_artist}#/jamtrack/search") find('a.browse-all')['href'].should eq("/client?search=#/jamtrack/search") - find('a.cta-button').trigger(:click) + find('button.cta-button', text: 'GET IT FREE!').trigger(:click) # should fail because we haven't filled out email/password/terms - find('.browse-jamtracks', text: 'search jamtracks') find('.register-area .errors', text: "Email can't be blank") fill_in "email", with: 'testuser_123@jamkazam.com' fill_in "password", with: 'jam123' find('.register-area ins').trigger(:click) - find('a.cta-button').trigger(:click) + find('button.cta-button', text: 'GET IT FREE!').trigger(:click) - # now go back, and then try to click checkout again - visit "/landing/jamtracks/#{@jamtrack_acdc_backinblack.slug}" - find('.price-advisory', text:"$1.99") - find('a.cta-free-jamtrack').trigger(:click) - find('h1', text: 'check out') + # this should show on the /client#/jamtrack page find('.no-free-jamtrack') # make sure we can find the webplayer link find('.purchased-jam-tracks .play-jamtrack') + # now go back, and then try to click checkout again + visit "/landing/jamtracks/#{@jamtrack_acdc_backinblack.slug}" + find('butt.cta-button', text: 'Add To Cart') + find('.price-advisory', text:"$1.99") + find('a.cta-free-jamtrack').trigger(:click) + find('h1', text: 'check out') + end @@ -82,8 +83,8 @@ describe "Individual JamTrack", :js => true, :type => :feature, :capybara_featur it "logged in" do fast_signin(user, "/landing/jamtracks/#{@jamtrack_acdc_backinblack.slug}") - find('h1', jamtrack_acdc_backinblack.name.upper) - find('h2', "by " + jamtrack_acdc_backinblack.original_artist.upper) + find('h1.jam-track-name', jamtrack_acdc_backinblack.name.upcase) + find('h2.original-artist', "by " + jamtrack_acdc_backinblack.original_artist.upcase) jamtrack_acdc_backinblack.jam_track_tracks.each do |track| if track.master? find('.tracks.previews[data-id="' + track.id + '"] img.instrument-icon[data-instrument-id="other"]') @@ -94,9 +95,8 @@ describe "Individual JamTrack", :js => true, :type => :feature, :capybara_featur end end find('a.cta-free-jamtrack').trigger(:click) - find('.browse-band a')['href'].should eq("/client?artist=#{jamtrack_acdc_backinblack.original_artist}#/jamtrack/search") find('a.browse-all')['href'].should eq("/client?search=#/jamtrack/search") - find('a.cta-button').trigger(:click) + find('button.cta-button').trigger(:click) find('.browse-jamtracks', text: 'search jamtracks') end