From b7683a19317cf29110a1cbaf0f2774fb344e4d4c Mon Sep 17 00:00:00 2001 From: Seth Call Date: Fri, 11 Jul 2014 22:22:15 -0500 Subject: [PATCH] * VRFS-1876 - added details to the sesison info page --- .../javascripts/accounts_session_detail.js | 18 +++++++++++++++--- .../assets/javascripts/accounts_sessions.js | 6 ++++++ .../clients/_account_session_detail.html.haml | 10 +++++++--- .../views/clients/_account_sessions.html.haml | 1 + web/spec/features/session_detail_spec.rb | 2 +- 5 files changed, 30 insertions(+), 7 deletions(-) diff --git a/web/app/assets/javascripts/accounts_session_detail.js b/web/app/assets/javascripts/accounts_session_detail.js index 68b2b7626..76f9b2401 100644 --- a/web/app/assets/javascripts/accounts_session_detail.js +++ b/web/app/assets/javascripts/accounts_session_detail.js @@ -15,7 +15,9 @@ var $screen = null; var $cancelRsvpBtn = null; var $inviteOthersBtn = null; + var $sessionPageBtn = null; var $sessionDetail = null; + var $shareUrl = null; var $templateOpenSlots = null; var instrument_logo_map = context.JK.getInstrumentIconMap24(); var invitationDialog = null; @@ -57,6 +59,12 @@ }); } + function openSessionPage(e) { + + context.JK.popExternalLink('/sessions/' + sessionId + '/details') + return false; + } + function buildRsvpRequestActionParams(request_id, action) { var params = {}; @@ -109,6 +117,7 @@ function events() { $inviteOthersBtn.on('click', inviteMusicians); $cancelRsvpBtn.on('click', cancelRsvpRequest); + $sessionPageBtn.on('click', openSessionPage); $screen.find(".approveRsvpRequest").on('click', approveRsvpRequest); $screen.find(".declineRsvpRequest").on('click', declineRsvpRequest); @@ -175,6 +184,8 @@ $cancelRsvpBtn.show(); } + $shareUrl.text(sessionData.share_url); + var pendingRsvpHtml = ""; if (isOwner) { pendingRsvpHtml = generatePendingRsvps(); @@ -376,10 +387,11 @@ app.bindScreen('account/sessionDetail', screenBindings); $screen = $(".account-session-detail"); - $inviteOthersBtn = $screen.find("#invite-others"); - $cancelRsvpBtn = $screen.find("#cancel-rsvp"); - $inviteOthersBtn.hide(); $cancelRsvpBtn.hide(); + $inviteOthersBtn = $screen.find(".sessions-header .invite-others"); + $cancelRsvpBtn = $screen.find(".sessions-header .cancel-rsvp"); + $sessionPageBtn = $screen.find(".sessions-header .session-detail-page"); $sessionDetail = $screen.find("#account-session-detail-div"); + $shareUrl = $screen.find('.share-url'); invitationDialog = invitationDlg; $templateOpenSlots = $('#template-open-slots'); } diff --git a/web/app/assets/javascripts/accounts_sessions.js b/web/app/assets/javascripts/accounts_sessions.js index 883c2e185..94295130c 100644 --- a/web/app/assets/javascripts/accounts_sessions.js +++ b/web/app/assets/javascripts/accounts_sessions.js @@ -42,6 +42,11 @@ window.location = '/client#/account/sessionDetail/' + session_id; } + function openSessionPage(e) { + context.JK.popExternalLink('/sessions/' + $(this).attr('session-id') + '/details') + return false; + } + function events() { } @@ -49,6 +54,7 @@ $("#account-scheduled-sessions table tbody").replaceWith(template); $sessions.find(".session-cancel-button").on('click', cancelSession); $sessions.find(".session-detail-button").on('click', detailSession); + $sessions.find(".session-page-button").on('click', openSessionPage) } function populateSessions(sessionList) { diff --git a/web/app/views/clients/_account_session_detail.html.haml b/web/app/views/clients/_account_session_detail.html.haml index 906014f9f..d0d857464 100644 --- a/web/app/views/clients/_account_session_detail.html.haml +++ b/web/app/views/clients/_account_session_detail.html.haml @@ -14,8 +14,9 @@ .left.sessions-caption %h2 session details: .right - %a.button-orange{href: "#", id: 'cancel-rsvp'} CANCEL RSVP - %a.button-orange{href: "#", id: 'invite-others'} INVITE OTHERS + %a.cancel-rsvp.button-orange{href: "#"} CANCEL RSVP + %a.session-detail-page.button-orange{href: "#", rel:'external'} SESSION PAGE + %a.invite-others.button-orange{href: "#"} INVITE OTHERS .clearall #account-session-detail-div @@ -143,9 +144,12 @@ .clearall.session-properties-left Access: .session-properties-right {{data.musician_access_description}} {{data.fan_access_description}} - .clearall.session-properties-left Legal + .clearall.session-properties-left Legal: .session-properties-right {{data.legal_policy}} + .clearall.session-properties-left Session URL: + .session-properties-right + {{data.share_url}} .clearall diff --git a/web/app/views/clients/_account_sessions.html.haml b/web/app/views/clients/_account_sessions.html.haml index f89e846bc..8e0824c28 100644 --- a/web/app/views/clients/_account_sessions.html.haml +++ b/web/app/views/clients/_account_sessions.html.haml @@ -45,6 +45,7 @@ .session-left .session-right %a.button-orange.session-detail-button{href: '#', 'session-id' => "{{session.id}}"} DETAILS + %a.button-orange.session-page-button{href: '#', 'session-id' => "{{session.id}}", rel: 'external'} SESSION PAGE = "{% if (data.current_user == session.user_id) { %}" %a.button-orange.session-cancel-button{href: '#', 'session-id' => "{{session.id}}"} CANCEL SESSION = "{% } %}" diff --git a/web/spec/features/session_detail_spec.rb b/web/spec/features/session_detail_spec.rb index 2e8ff5d64..b0ce4456e 100644 --- a/web/spec/features/session_detail_spec.rb +++ b/web/spec/features/session_detail_spec.rb @@ -30,7 +30,7 @@ describe "Session Detail", :js => true, :type => :feature, :capybara_feature => it "view pending requests on music session searcher side" do fast_signin(searcher, Nav.session_detail(requested_rsvp_slot.music_session)) - find('a#cancel-rsvp.button-orange') + find('.sessions-header a.cancel-rsvp.button-orange') find('h2', text: 'RSVPs') find('div.rsvp-help-notice', text: 'Your RSVP has not been processed by session organizer yet') end