Skip to content

Commit

Permalink
Merge pull request #67 from bmic-development/edit-ssr-nav
Browse files Browse the repository at this point in the history
Fix step navigation links during SSR edit [#139412147] [#139420459]
  • Loading branch information
Stuart-Johnson committed Feb 10, 2017
2 parents 3133e0c + 7f44b34 commit 5f1a1ec
Show file tree
Hide file tree
Showing 12 changed files with 41 additions and 35 deletions.
6 changes: 4 additions & 2 deletions app/helpers/service_requests_helper.rb
Original file line number Diff line number Diff line change
Expand Up @@ -79,8 +79,10 @@ def feedback_helper
end
end

def save_as_draft_button
link_to t(:proper)[:navigation][:bottom][:save_as_draft], save_and_exit_service_request_path, remote: true, class: 'btn btn-default'
def save_as_draft_button(sub_service_request_id=nil)
link_to t(:proper)[:navigation][:bottom][:save_as_draft],
save_and_exit_service_request_path(sub_service_request_id: sub_service_request_id),
remote: true, class: 'btn btn-default'
end

def step_nav_button(text, color, link, url)
Expand Down
2 changes: 1 addition & 1 deletion app/views/service_requests/confirmation.html.haml
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@
-# TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
= javascript_include_tag 'confirmation'

= render '/service_requests/navigation/steps', service_request: @service_request, step: @step_text, step_number: @step_number, css_class: @css_class
= render '/service_requests/navigation/steps', service_request: @service_request, sub_service_request_id: @sub_service_request.try(:id), step: @step_text, step_number: @step_number, css_class: @css_class
.col-sm-12.body-container#confirmation-page
= form_tag navigate_service_request_path(@service_request) do
= hidden_field_tag :location, ''
Expand Down
4 changes: 2 additions & 2 deletions app/views/service_requests/document_management.html.haml
Original file line number Diff line number Diff line change
Expand Up @@ -23,12 +23,12 @@
= javascript_include_tag 'dashboard/delete_submission'
= stylesheet_link_tag 'additional_details/styles/document_table'

= render '/service_requests/navigation/steps', service_request: @service_request, step: @step_text, step_number: @step_number, css_class: @css_class
= render '/service_requests/navigation/steps', service_request: @service_request, sub_service_request_id: @sub_service_request.try(:id), step: @step_text, step_number: @step_number, css_class: @css_class
.col-sm-12.body-container#documents-page
= form_tag navigate_service_request_path(@service_request), id: 'service-request-form' do
- if @sub_service_request
= hidden_field_tag :sub_service_request_id, @sub_service_request.id
= render 'service_requests/document_management/document_management_left', service_request: @service_request, notable_type: @notable_type, notable_id: @notable_id
= render 'service_requests/document_management/document_management_right', service_request: @service_request, sub_service_request: @sub_service_request, sub_service_requests: @sub_service_requests, line_items_count: @line_items_count
= render 'service_requests/navigation/footer', service_request: @service_request, css_class: @css_class, back: @back, forward: @forward
= render 'service_requests/navigation/footer', service_request: @service_request, sub_service_request_id: @sub_service_request.try(:id), css_class: @css_class, back: @back, forward: @forward
= render 'additional_details/submissions/submission_modal'
12 changes: 8 additions & 4 deletions app/views/service_requests/navigation/_footer.html.haml
Original file line number Diff line number Diff line change
Expand Up @@ -22,17 +22,21 @@
= link_to t(:proper)[:navigation][:bottom][:back], back, class: 'btn btn-default'
- if controller.action_name == 'review'
.col-sm-3.text-center
= save_as_draft_button
= save_as_draft_button(sub_service_request_id)
.col-sm-3.text-center
= link_to t(:proper)[:navigation][:bottom][:get_cost_estimate], obtain_research_pricing_service_request_path, class: 'btn btn-default get-a-cost-estimate'
= link_to t(:proper)[:navigation][:bottom][:get_cost_estimate],
obtain_research_pricing_service_request_path(sub_service_request_id: sub_service_request_id),
class: 'btn btn-default get-a-cost-estimate'
- else
.col-sm-6.text-center
- if service_request.submitted_at.blank? && service_request.protocol.present?
= save_as_draft_button
= save_as_draft_button(sub_service_request_id)
-# This was extracted because the surveyor gem requires an href location to redirect to post-submit and it was being cranky
- if SYSTEM_SATISFACTION_SURVEY && action_name == 'review'
.col-sm-3.text-right
= link_to t(:proper)[:navigation][:bottom][:submit], confirmation_service_request_path(service_request), class: 'btn btn-default form-submit-button'
= link_to t(:proper)[:navigation][:bottom][:submit],
confirmation_service_request_path(service_request, sub_service_request_id: sub_service_request_id),
class: 'btn btn-default form-submit-button'
- else
.col-sm-3.text-right
= link_to action_name == 'review' ? t(:proper)[:navigation][:bottom][:submit] : t(:proper)[:navigation][:bottom][:save_and_continue], 'javascript:void(0)', class: 'btn btn-default form-submit-button'
10 changes: 5 additions & 5 deletions app/views/service_requests/navigation/_steps.html.haml
Original file line number Diff line number Diff line change
Expand Up @@ -22,15 +22,15 @@
.steps-banner-container
%ul#steps-banner
%li
= step_nav_button(t(:proper)[:navigation][:steps][:step1], 'blue', ['1','2','3','4'].include?(step_number), protocol_service_request_path(service_request))
= step_nav_button(t(:proper)[:navigation][:steps][:step1], 'blue', ['1','2','3','4'].include?(step_number), protocol_service_request_path(service_request, sub_service_request_id: sub_service_request_id))
%li
= step_nav_button(t(:proper)[:navigation][:steps][:step2], 'light-blue', ['1','2','3','4'].include?(step_number), service_details_service_request_path(service_request))
= step_nav_button(t(:proper)[:navigation][:steps][:step2], 'light-blue', ['1','2','3','4'].include?(step_number), service_details_service_request_path(service_request, sub_service_request_id: sub_service_request_id))
%li
= step_nav_button(t(:proper)[:navigation][:steps][:step3], 'orange', ['1','2','3','4'].include?(step_number), document_management_service_request_path(service_request))
= step_nav_button(t(:proper)[:navigation][:steps][:step3], 'orange', ['1','2','3','4'].include?(step_number), document_management_service_request_path(service_request, sub_service_request_id: sub_service_request_id))
%li
= step_nav_button(t(:proper)[:navigation][:steps][:step4], 'red', ['1','2','3','4'].include?(step_number), review_service_request_path(service_request))
= step_nav_button(t(:proper)[:navigation][:steps][:step4], 'red', ['1','2','3','4'].include?(step_number), review_service_request_path(service_request, sub_service_request_id: sub_service_request_id))
%li
= step_nav_button(t(:proper)[:navigation][:steps][:step5], 'green', step_number == '5',confirmation_service_request_path(service_request))
= step_nav_button(t(:proper)[:navigation][:steps][:step5], 'green', step_number == '5',confirmation_service_request_path(service_request, sub_service_request_id: sub_service_request_id))
.col-sm-12.ui-corner-all.step-header{ class: css_class }
%h4
= step
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@
-# TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
= javascript_include_tag 'confirmation'

= render '/service_requests/navigation/steps', service_request: @service_request, step: @step_text, step_number: @step_number, css_class: @css_class
= render '/service_requests/navigation/steps', service_request: @service_request, sub_service_request_id: @sub_service_request.try(:id), step: @step_text, step_number: @step_number, css_class: @css_class
.col-sm-12.body-container#confirmation-page
= form_tag navigate_service_request_path(@service_request) do
= hidden_field_tag :location, ''
Expand Down
4 changes: 2 additions & 2 deletions app/views/service_requests/protocol.html.haml
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@
-# TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
= javascript_include_tag 'protocol'
= stylesheet_link_tag 'associated_users_table'
= render '/service_requests/navigation/steps', service_request: @service_request, step: @step_text, step_number: @step_number, css_class: @css_class
= render '/service_requests/navigation/steps', service_request: @service_request, sub_service_request_id: @sub_service_request.try(:id), step: @step_text, step_number: @step_number, css_class: @css_class
= render 'service_requests/modals/request_submitted_modal', service_request: @service_request
.col-sm-12.body-container#protocols-page
= form_tag navigate_service_request_path(@service_request), id: 'service-request-form' do
Expand All @@ -28,4 +28,4 @@
= render 'shared/modal_errors', errors: @errors
= render 'service_requests/protocol/protocol_left', service_request: @service_request, sub_service_request: @sub_service_request
= render 'service_requests/protocol/protocol_right', service_request: @service_request, sub_service_request: @sub_service_request, sub_service_requests: @sub_service_requests, line_items_count: @line_items_count
= render 'service_requests/navigation/footer', service_request: @service_request, css_class: @css_class, back: @back, forward: @forward
= render 'service_requests/navigation/footer', service_request: @service_request, sub_service_request_id: @sub_service_request.try(:id), css_class: @css_class, back: @back, forward: @forward
4 changes: 2 additions & 2 deletions app/views/service_requests/review.html.haml
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@
-# TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
= javascript_include_tag 'review'

= render '/service_requests/navigation/steps', service_request: @service_request, step: @step_text, step_number: @step_number, css_class: @css_class
= render '/service_requests/navigation/steps', service_request: @service_request, sub_service_request_id: @sub_service_request.try(:id), step: @step_text, step_number: @step_number, css_class: @css_class
.col-sm-12.body-container#review-page
= form_tag navigate_service_request_path(@service_request), id: 'service-request-form' do
- if @sub_service_request
Expand All @@ -30,7 +30,7 @@
= render 'service_requests/review/documents', service_request: @service_request, protocol: @service_request.protocol
= render 'service_requests/review/notes', service_request: @service_request, notable_id: @service_request.id, notable_type: 'ServiceRequest'
= render 'service_requests/review/calendars', service_request: @service_request, sub_service_request: @sub_service_request, pages: @pages, tab: @tab, arm: @arm, portal: @portal, admin: @admin, review: @review, merged: @merged, consolidated: @consolidated
= render 'service_requests/navigation/footer', service_request: @service_request, css_class: @css_class, back: @back, forward: @forward
= render 'service_requests/navigation/footer', service_request: @service_request, sub_service_request_id: @sub_service_request.try(:id), css_class: @css_class, back: @back, forward: @forward

- if SYSTEM_SATISFACTION_SURVEY
= javascript_include_tag 'system_satisfaction'
Expand Down
4 changes: 2 additions & 2 deletions app/views/service_requests/service_calendar.html.haml
Original file line number Diff line number Diff line change
Expand Up @@ -19,12 +19,12 @@
-# TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
= javascript_include_tag 'service_calendar'

= render '/service_requests/navigation/steps', service_request: @service_request, step: @step_text, step_number: @step_number, css_class: @css_class
= render '/service_requests/navigation/steps', service_request: @service_request, sub_service_request_id: @sub_service_request.try(:id), step: @step_text, step_number: @step_number, css_class: @css_class
.col-sm-12.body-container
= form_tag navigate_service_request_path(@service_request), id: 'service-request-form' do
- if @sub_service_request
= hidden_field_tag :sub_service_request_id, @sub_service_request.id
= render 'shared/modal_errors', errors: @errors
= render 'service_calendars/quantity_billing_labels'
= render 'service_requests/service_calendar/tabs', service_request: @service_request, sub_service_request: @sub_service_request
= render 'service_requests/navigation/footer', service_request: @service_request, css_class: @css_class, back: @back, forward: @forward
= render 'service_requests/navigation/footer', service_request: @service_request, sub_service_request_id: @sub_service_request.try(:id), css_class: @css_class, back: @back, forward: @forward
4 changes: 2 additions & 2 deletions app/views/service_requests/service_details.html.haml
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@
-# TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
= javascript_include_tag 'service_details'

= render '/service_requests/navigation/steps', service_request: @service_request, step: @step_text, step_number: @step_number, css_class: @css_class
= render '/service_requests/navigation/steps', service_request: @service_request, sub_service_request_id: @sub_service_request.try(:id), step: @step_text, step_number: @step_number, css_class: @css_class
= render 'service_requests/modals/request_submitted_modal', service_request: @service_request
.col-sm-12.body-container#service-details-page
= form_tag navigate_service_request_path(@service_request), id: 'service-request-form' do
Expand All @@ -28,4 +28,4 @@
= render 'shared/modal_errors', errors: @errors
= render 'service_requests/service_details/service_details_left', service_request: @service_request, sub_service_request: @sub_service_request, protocol: @service_request.protocol
= render 'service_requests/service_details/service_details_right', service_request: @service_request, sub_service_request: @sub_service_request, sub_service_requests: @sub_service_requests, line_items_count: @line_items_count
= render 'service_requests/navigation/footer', service_request: @service_request, css_class: @css_class, back: @back, forward: @forward
= render 'service_requests/navigation/footer', service_request: @service_request, sub_service_request_id: @sub_service_request.try(:id), css_class: @css_class, back: @back, forward: @forward
4 changes: 2 additions & 2 deletions app/views/service_requests/service_subsidy.html.haml
Original file line number Diff line number Diff line change
Expand Up @@ -19,11 +19,11 @@
-# TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
= javascript_include_tag 'service_subsidy'

= render '/service_requests/navigation/steps', service_request: @service_request, step: @step_text, step_number: @step_number, css_class: @css_class
= render '/service_requests/navigation/steps', service_request: @service_request, sub_service_request_id: @sub_service_request.try(:id), step: @step_text, step_number: @step_number, css_class: @css_class
.col-sm-12.body-container#service-subsidy-page
= form_tag navigate_service_request_path(@service_request), id: 'service-request-form', class: 'form-horizontal' do
- if @sub_service_request
= hidden_field_tag :sub_service_request_id, @sub_service_request.id
= render 'service_requests/service_subsidy/service_subsidy_left', service_request: @service_request, has_subsidy: @has_subsidy, eligible_for_subsidy: @eligible_for_subsidy
= render 'service_requests/service_subsidy/service_subsidy_right', service_request: @service_request, sub_service_request: @sub_service_request, sub_service_requests: @sub_service_requests, line_items_count: @line_items_count
= render 'service_requests/navigation/footer', service_request: @service_request, css_class: @css_class, back: @back, forward: @forward
= render 'service_requests/navigation/footer', service_request: @service_request, sub_service_request_id: @sub_service_request.try(:id), css_class: @css_class, back: @back, forward: @forward
Original file line number Diff line number Diff line change
Expand Up @@ -31,69 +31,69 @@

context 'User is currently on step 1' do
it 'should have links on the arrows for steps 1-4' do
render '/service_requests/navigation/steps', service_request: @service_request, step: "Step 1", step_number: '1', css_class: 'blue-provider'
render '/service_requests/navigation/steps', service_request: @service_request, sub_service_request_id: nil, step: "Step 1", step_number: '1', css_class: 'blue-provider'

expect(response).to have_selector('a.step-btn', count: 4)
end

it 'should just have a div for the arrow for step 5' do
render '/service_requests/navigation/steps', service_request: @service_request, step: "Step 1", step_number: '1', css_class: 'blue-provider'
render '/service_requests/navigation/steps', service_request: @service_request, sub_service_request_id: nil, step: "Step 1", step_number: '1', css_class: 'blue-provider'

expect(response).to have_selector('div.step-btn', count: 1)
end
end

context 'User is currently on step 2' do
it 'should have links on the arrows for steps 1-4' do
render '/service_requests/navigation/steps', service_request: @service_request, step: "Step 2", step_number: '2', css_class: 'blue-provider'
render '/service_requests/navigation/steps', service_request: @service_request, sub_service_request_id: nil, step: "Step 2", step_number: '2', css_class: 'blue-provider'

expect(response).to have_selector('a.step-btn', count: 4)
end

it 'should just have a div for the arrow for step 5' do
render '/service_requests/navigation/steps', service_request: @service_request, step: "Step 2", step_number: '2', css_class: 'blue-provider'
render '/service_requests/navigation/steps', service_request: @service_request, sub_service_request_id: nil, step: "Step 2", step_number: '2', css_class: 'blue-provider'

expect(response).to have_selector('div.step-btn', count: 1)
end
end

context 'User is currently on step 3' do
it 'should have links on the arrows for steps 1-4' do
render '/service_requests/navigation/steps', service_request: @service_request, step: "Step 3", step_number: '3', css_class: 'blue-provider'
render '/service_requests/navigation/steps', service_request: @service_request, sub_service_request_id: nil, step: "Step 3", step_number: '3', css_class: 'blue-provider'

expect(response).to have_selector('a.step-btn', count: 4)
end

it 'should just have a div for the arrow for step 5' do
render '/service_requests/navigation/steps', service_request: @service_request, step: "Step 3", step_number: '3', css_class: 'blue-provider'
render '/service_requests/navigation/steps', service_request: @service_request, sub_service_request_id: nil, step: "Step 3", step_number: '3', css_class: 'blue-provider'

expect(response).to have_selector('div.step-btn', count: 1)
end
end

context 'User is currently on step 4' do
it 'should have links on the arrows for steps 1-4' do
render '/service_requests/navigation/steps', service_request: @service_request, step: "Step 4", step_number: '4', css_class: 'blue-provider'
render '/service_requests/navigation/steps', service_request: @service_request, sub_service_request_id: nil, step: "Step 4", step_number: '4', css_class: 'blue-provider'

expect(response).to have_selector('a.step-btn', count: 4)
end

it 'should just have a div for the arrow for step 5' do
render '/service_requests/navigation/steps', service_request: @service_request, step: "Step 4", step_number: '4', css_class: 'blue-provider'
render '/service_requests/navigation/steps', service_request: @service_request, sub_service_request_id: nil, step: "Step 4", step_number: '4', css_class: 'blue-provider'

expect(response).to have_selector('div.step-btn', count: 1)
end
end

context 'User is currently on step 5' do
it 'should just have a div on the arrows for steps 1-4' do
render '/service_requests/navigation/steps', service_request: @service_request, step: "Step 5", step_number: '5', css_class: 'blue-provider'
render '/service_requests/navigation/steps', service_request: @service_request, sub_service_request_id: nil, step: "Step 5", step_number: '5', css_class: 'blue-provider'

expect(response).to have_selector('div.step-btn', count: 4)
end

it 'should have a link on the arrow for step 5' do
render '/service_requests/navigation/steps', service_request: @service_request, step: "Step 5", step_number: '5', css_class: 'blue-provider'
render '/service_requests/navigation/steps', service_request: @service_request, sub_service_request_id: nil, step: "Step 5", step_number: '5', css_class: 'blue-provider'

expect(response).to have_selector('a.step-btn', count: 1)
end
Expand Down

0 comments on commit 5f1a1ec

Please sign in to comment.