From be59b85d3be2a3cff2c349d1074e87cb1513175f Mon Sep 17 00:00:00 2001 From: Oleksii Kriuchykhin Date: Tue, 22 Nov 2016 13:49:35 +0100 Subject: [PATCH] Added additional checks for tutorial steps [SCI-703] --- .../javascripts/my_modules/protocols.js | 38 ++++++++++--------- .../javascripts/my_modules/results.js.erb | 28 ++++++++------ app/assets/javascripts/projects/canvas.js.erb | 2 +- app/assets/javascripts/projects/show.js | 7 +++- app/assets/javascripts/protocols/index.js | 7 +++- app/assets/javascripts/reports/index.js | 19 ++++++---- app/assets/javascripts/reports/new.js.erb | 14 ++++--- app/assets/javascripts/samples/samples.js | 24 +++++++----- 8 files changed, 81 insertions(+), 58 deletions(-) diff --git a/app/assets/javascripts/my_modules/protocols.js b/app/assets/javascripts/my_modules/protocols.js index 311c3fbda..842297607 100644 --- a/app/assets/javascripts/my_modules/protocols.js +++ b/app/assets/javascripts/my_modules/protocols.js @@ -119,24 +119,28 @@ function bindEditDueDateAjax() { * Initializes tutorial */ function initTutorial() { - var resultsTab = $('#results-nav-tab'); + var stepNum = parseInt(Cookies.get('current_tutorial_step'), 10); + if (stepNum >= 12 && stepNum <= 14) { + var resultsTab = $('#results-nav-tab'); - var nextPage = resultsTab.find('a').attr('href'); - var steps = [{ - intro: $("[data-role='tutorial-data']") - .attr('data-module-protocols-step-text') - }, { - element: $('#protocol-copy-to-repository')[0], - intro: $("[data-role='tutorial-data']") - .attr('data-module-protocols-save-step-text'), - position: 'right' - }, { - element: resultsTab[0], - intro: $("[data-role='tutorial-data']") - .attr('data-module-protocols-click-results-step-text'), - position: 'right' - }]; - initPageTutorialSteps(12, 14, nextPage, function() {}, function() {}, steps); + var nextPage = resultsTab.find('a').attr('href'); + var steps = [{ + intro: $("[data-role='tutorial-data']") + .attr('data-module-protocols-step-text') + }, { + element: $('#protocol-copy-to-repository')[0], + intro: $("[data-role='tutorial-data']") + .attr('data-module-protocols-save-step-text'), + position: 'right' + }, { + element: resultsTab[0], + intro: $("[data-role='tutorial-data']") + .attr('data-module-protocols-click-results-step-text'), + position: 'right' + }]; + initPageTutorialSteps(12, 14, nextPage, + function() {}, function() {}, steps); + } } function initCopyToRepository() { diff --git a/app/assets/javascripts/my_modules/results.js.erb b/app/assets/javascripts/my_modules/results.js.erb index 7cb702f7b..f5d0e824f 100644 --- a/app/assets/javascripts/my_modules/results.js.erb +++ b/app/assets/javascripts/my_modules/results.js.erb @@ -123,19 +123,23 @@ function renderTable(table) { * Initializes tutorial */ function initTutorial() { - var samplesTab = $('#module-samples-nav-tab'); + var stepNum = parseInt(Cookies.get('current_tutorial_step'), 10); + if (stepNum >= 15 && stepNum <= 16) { + var samplesTab = $('#module-samples-nav-tab'); - var nextPage = samplesTab.find('a').attr('href'); - var steps = [{ - element: $('#results-toolbar')[0], - intro: $('#results').attr('data-module-protocols-step-text') - }, { - element: samplesTab[0], - intro: $('#results') - .attr('data-module-protocols-click-samples-step-text'), - position: 'left' - }]; - initPageTutorialSteps(15, 16, nextPage, function() {}, function() {}, steps); + var nextPage = samplesTab.find('a').attr('href'); + var steps = [{ + element: $('#results-toolbar')[0], + intro: $('#results').attr('data-module-protocols-step-text') + }, { + element: samplesTab[0], + intro: $('#results') + .attr('data-module-protocols-click-samples-step-text'), + position: 'left' + }]; + initPageTutorialSteps(15, 16, nextPage, function() {}, + function() {}, steps); + } } var ResultTypeEnum = Object.freeze({ diff --git a/app/assets/javascripts/projects/canvas.js.erb b/app/assets/javascripts/projects/canvas.js.erb index a89de226a..54683ec69 100644 --- a/app/assets/javascripts/projects/canvas.js.erb +++ b/app/assets/javascripts/projects/canvas.js.erb @@ -3164,7 +3164,7 @@ function initTutorial() { tutorialAfterCb(); }, steps); }, 1000); - } else if (stepNum >= 10 || stepNum <= 11) { + } else if (stepNum >= 10 && stepNum <= 11) { var qpcrModuleLeaf = $("li.leaf[data-module-id='" + tutorialData[0].qpcr_module + "']"); diff --git a/app/assets/javascripts/projects/show.js b/app/assets/javascripts/projects/show.js index 1d82f63e8..707c6a955 100644 --- a/app/assets/javascripts/projects/show.js +++ b/app/assets/javascripts/projects/show.js @@ -67,8 +67,11 @@ * Initializes tutorial */ function initTutorial() { - var nextPage = $('[data-canvas-link]').data('canvasLink'); - initPageTutorialSteps(4, 5, nextPage, tutorialBeforeCb, tutorialAfterCb); + var stepNum = parseInt(Cookies.get('current_tutorial_step'), 10); + if (stepNum >= 4 && stepNum <= 5) { + var nextPage = $('[data-canvas-link]').data('canvasLink'); + initPageTutorialSteps(4, 5, nextPage, tutorialBeforeCb, tutorialAfterCb); + } } /** diff --git a/app/assets/javascripts/protocols/index.js b/app/assets/javascripts/protocols/index.js index e2d5af32f..d294e574f 100644 --- a/app/assets/javascripts/protocols/index.js +++ b/app/assets/javascripts/protocols/index.js @@ -717,8 +717,11 @@ function initImport() { * Initializes tutorial */ function initTutorial() { - var nextPage = $('.navbar-brand').attr('href'); - initPageTutorialSteps(23, 24, nextPage, function() {}, function() {}); + var stepNum = parseInt(Cookies.get('current_tutorial_step'), 10); + if (stepNum >= 23 && stepNum <= 24) { + var nextPage = $('.navbar-brand').attr('href'); + initPageTutorialSteps(23, 24, nextPage, function() {}, function() {}); + } } init(); diff --git a/app/assets/javascripts/reports/index.js b/app/assets/javascripts/reports/index.js index b04da367d..5f362077f 100644 --- a/app/assets/javascripts/reports/index.js +++ b/app/assets/javascripts/reports/index.js @@ -167,14 +167,17 @@ * Initializes tutorial */ function initTutorial() { - var nextPage = $('#new-report-btn').attr('href'); - var steps = [{ - element: $('#new-report-btn')[0], - intro: $('#content').attr('data-reports-click-new-report-step-text'), - position: 'right' - }]; - initPageTutorialSteps(19, 19, nextPage, function() {}, function() {}, - steps); + var stepNum = parseInt(Cookies.get('current_tutorial_step'), 10); + if (stepNum === 19) { + var nextPage = $('#new-report-btn').attr('href'); + var steps = [{ + element: $('#new-report-btn')[0], + intro: $('#content').attr('data-reports-click-new-report-step-text'), + position: 'right' + }]; + initPageTutorialSteps(19, 19, nextPage, function() {}, function() {}, + steps); + } } $(document).ready(init); diff --git a/app/assets/javascripts/reports/new.js.erb b/app/assets/javascripts/reports/new.js.erb index de8ba0670..f7d1995df 100644 --- a/app/assets/javascripts/reports/new.js.erb +++ b/app/assets/javascripts/reports/new.js.erb @@ -1147,12 +1147,14 @@ function initializeReportSidebartruncation() { * Initializes tutorial */ function initTutorial() { - ignoreUnsavedWorkAlert = true; - - var nextPage = $('.navbar-brand').attr('href'); - initPageTutorialSteps(20, 21, nextPage, function() {}, function() { - ignoreUnsavedWorkAlert = false; - }); + var stepNum = parseInt(Cookies.get('current_tutorial_step'), 10); + if (stepNum >= 20 && stepNum <= 21) { + ignoreUnsavedWorkAlert = true; + var nextPage = $('.navbar-brand').attr('href'); + initPageTutorialSteps(20, 21, nextPage, function() {}, function() { + ignoreUnsavedWorkAlert = false; + }); + } } $(document).ready(function() { diff --git a/app/assets/javascripts/samples/samples.js b/app/assets/javascripts/samples/samples.js index a0627f3ff..bd60c5639 100644 --- a/app/assets/javascripts/samples/samples.js +++ b/app/assets/javascripts/samples/samples.js @@ -158,16 +158,20 @@ function sampleAlertMsgHide() { * Initializes tutorial */ function initTutorial() { - var nextPage = $('#reports-nav-tab a').attr('href'); - var steps = [{ - element: $('#importSamplesButton')[0], - intro: $('#samples-toolbar').attr('data-samples-step-text'), - position: 'right' - }, { - element: $('#secondary-menu')[0], - intro: $('#samples-toolbar').attr('data-breadcrumbs-step-text') - }]; - initPageTutorialSteps(17, 18, nextPage, function() {}, function() {}, steps); + var stepNum = parseInt(Cookies.get('current_tutorial_step'), 10); + if (stepNum >= 17 && stepNum <= 18) { + var nextPage = $('#reports-nav-tab a').attr('href'); + var steps = [{ + element: $('#importSamplesButton')[0], + intro: $('#samples-toolbar').attr('data-samples-step-text'), + position: 'right' + }, { + element: $('#secondary-menu')[0], + intro: $('#samples-toolbar').attr('data-breadcrumbs-step-text') + }]; + initPageTutorialSteps(17, 18, nextPage, + function() {}, function() {}, steps); + } } initTutorial();