{"version":3,"file":"application_hachetteantoine-b06c6683.js","sources":["../../../app/whitelabels/hachetteantoine/assets/javascripts/login_signup.js","../../../app/whitelabels/hachetteantoine/assets/javascripts/school_select.js","../../../app/whitelabels/hachetteantoine/assets/javascripts/events.js","../../../app/whitelabels/hachetteantoine/assets/javascripts/custom.js","../../../app/whitelabels/hachetteantoine/assets/javascripts/tutors/check_box_form.js","../../../app/whitelabels/hachetteantoine/assets/javascripts/tutors/flash.js","../../../app/whitelabels/hachetteantoine/assets/javascripts/tutors/login.js","../../../app/whitelabels/hachetteantoine/assets/javascripts/tutors/custom.js","../../../app/whitelabels/hachetteantoine/assets/javascripts/tableau/custom.js","../../../app/whitelabels/hachetteantoine/assets/javascripts/application.js","../../../app/frontend/entrypoints/application_hachetteantoine.js"],"sourcesContent":["$(function() {\n $(\"header.user-role-select-form .signup-steps input:submit[name!='commit']\").on('click', function(event) {\n event.preventDefault();\n manageStepChange(this);\n });\n\n $('header.user-role-select-form .flat-box-steps-circle div').on('click', function() {\n manageStepCircles(this);\n });\n\n $(\"header.user-role-select-form .signup-steps input:submit[name='commit']\").on('click', function(event) {\n event.preventDefault();\n $(this).closest('form').submit();\n });\n\n $('header.user-role-select-form input').on('change keyup', function() {\n manageInputChange(this);\n });\n\n // ---> START ---- role 1\n\n $('.step-1-role1 input').on('change keyup', function() {\n manageDisableBtn(this, 1);\n });\n\n $('.step-1-role1 select').on('change keyup', function() {\n manageDisableBtn(this, 1);\n });\n\n $('.step-1-role1 select').on('change keyup', function() {\n // $('.userbday-day').parsley().validate();\n // $('.userbday-month').parsley().validate();\n // $('.userbday-year').parsley().validate();\n manageDisableBtn(this, 1);\n });\n\n $('.step-2-role1 input').on('change keyup', function() {\n manageDisableBtn(this, 2);\n });\n\n $('.step-2-role1 select.user-school-nation').on('change keyup', function() {\n manageDisableBtn(this, 2);\n });\n\n $('.step-2-role1 select.user-school-id').on('change keyup', function() {\n manageDisableBtn(this, 2);\n });\n\n $('.step-3-role1 input').on('change keyup', function() {\n manageDisableBtn(this, 3);\n });\n\n // <--- END ---- role 1\n\n // ---> START ---- role 2\n\n $('.step-1-role2 input').on('change keyup', function() {\n manageDisableBtn(this, 1);\n });\n\n $('.step-1-role2 select').on('change keyup', function() {\n // $('.userbday-day').parsley().validate();\n // $('.userbday-month').parsley().validate();\n // $('.userbday-year').parsley().validate();\n manageDisableBtn(this, 1);\n });\n\n $('.step-2-role2 input').on('change keyup', function() {\n manageDisableBtn(this, 2);\n });\n\n $('.step-2-role2 select').on('change keyup', function() {\n manageDisableBtn(this, 2);\n });\n\n $('.step-3-role2 input').on('change keyup', function() {\n manageDisableBtn(this, 3);\n });\n\n $('.step-3-role2 select').on('change keyup', function() {\n // $('.parentbday-day').parsley().validate();\n // $('.parentbday-month').parsley().validate();\n // $('.parentbday-year').parsley().validate();\n manageDisableBtn(this, 3);\n });\n\n $('.step-4-role2 input').on('change keyup', function() {\n manageDisableBtn(this, 4);\n });\n\n // <--- END ---- role 2\n\n // ---> START ---- role 3\n\n $('.step-3-role3 input').on('change keyup', function() {\n manageDisableBtn(this, 3);\n });\n\n $('.step-1-role3 input').on('change keyup', function() {\n manageDisableBtn(this, 1);\n });\n $('.step-2-role3 input').on('change keyup', function() {\n manageDisableBtn(this, 2);\n });\n $('.step-1-role3 select').on('change keyup', function() {\n // $('.userbday-day').parsley().validate();\n // $('.userbday-month').parsley().validate();\n // $('.userbday-year').parsley().validate();\n manageDisableBtn(this, 1);\n });\n $('.step-2-role3 select').on('change keyup', function() {\n manageDisableBtn(this, 2);\n });\n\n // <--- END ---- role 3\n\n // required to avoid double-click on submit button\n $(\".btn-signup-flow-last\").one('click', function (event) {\n $(this).prop('disabled', true);\n });\n $(\".btn-signup-flow-last\").dblclick(function(e){\n e.preventDefault();\n });\n});\n\n\n// --- START login/sign-up flow functions ----\n\nvar getCurrentStep = window.getCurrentStep = function($this) {\n var classesParent = $($this).closest('.signup-steps').attr('class').split(' ');\n var curStep = classesParent[2].split('-')[1];\n return curStep;\n};\n\nvar manageDisableBtn = window.manageDisableBtn = function($this, step) {\n var btn = $($this).closest('.signup-steps').find(\"input[type='submit']\");\n var filled = $('#new_user').parsley({excluded: \"\"}).isValid({group: 'step_' + step});\n if (filled === true) {\n $(btn).prop('disabled', false);\n } else {\n $(btn).prop('disabled', true);\n }\n};\n\nvar onPrivaciesChange = window.onPrivaciesChange = function($this, step) {\n if ($($this).is(':checked')) {\n $($this).attr('value', '1');\n $($this).attr('checked', true);\n } else {\n $($this).attr('value', '');\n $($this).attr('checked', null);\n }\n manageDisableBtn($this, step);\n};\n\nvar dateSeparator = '/';\n\nvar correctCaptcha = window.correctCaptcha = function(response) {\n $('#recaptcha_status').val('1');\n var classesParent = $(\".g-recaptcha\").closest('.signup-steps').attr('class').split(' ');\n var curStep = classesParent[2].split('-')[1];\n manageDisableBtn(\".g-recaptcha\", curStep);\n};\n\nvar manageStepCircles = window.manageStepCircles = function($this) {\n var currentIndex = $($this).siblings('.active').attr('class').split(' ')[0].split('-')[1];\n var selected = $($this).attr('class').split(' ')[0];\n var selectedIndex = selected.split('-')[1];\n if (selectedIndex*1 < currentIndex*1) {\n $('.flat-box.signup-steps').hide();\n $('.flat-box-header.signup-steps').hide();\n $('.flat-box-steps-circle').hide();\n $('.flat-box.signup-steps.'+ selected).show();\n $('.flat-box-header.signup-steps.'+ selected).show();\n $('.flat-box-steps-circle.'+selected).show();\n $(\"html, body\").animate({ scrollTop: 0 }, \"slow\");\n }\n};\n\nvar manageInputChange = window.manageInputChange = function($this) {\n var step = getCurrentStep($this);\n if ($($this).is(':checkbox')) {\n if ($($this).attr('id') == 'checkbox-form-tos_agreement') {\n $('.privacies input:checkbox').prop('checked', $($this).is(':checked'));\n $('.privacies input:checkbox').each(function() {\n onPrivaciesChange(this);\n });\n } else {\n $('#checkbox-form-tos_agreement').prop('checked', false);\n $('#checkbox-form-tos_agreement').attr('value', '');\n }\n onPrivaciesChange($this, step);\n }\n};\n\nvar manageStepChange = window.manageStepChange = function($this) {\n var classesParent = $($this).closest('.signup-steps').attr('class').split(' ');\n var curStep = classesParent[2].split('-')[1];\n var curFlow = classesParent[2].split('-')[2]\n var nextStep = curStep*1+1;\n $('.signup-steps').hide();\n if ($('.step-'+ nextStep + '-' + curFlow).hasClass('skip-step')) {\n console.log('skip this step');\n nextStep = nextStep +1;\n }\n $('.step-'+ nextStep + '-' + curFlow).show();\n $(\"html, body\").animate({ scrollTop: 0 }, \"slow\");\n};\n\nvar gobackSignupFlow = window.gobackSignupFlow = function($this) {\n // event.preventDefault();\n var classesParent = $($this).closest('.signup-steps').attr('class').split(' ');\n var curStep = classesParent[2].split('-')[1];\n var curFlow = classesParent[2].split('-')[2]\n var nextStep = curStep*1-1;\n $('.signup-steps').hide();\n if ($('.step-'+ nextStep + '-' + curFlow).hasClass('skip-step')) {\n nextStep = nextStep - 1;\n }\n $('.step-'+ nextStep + '-' + curFlow).show();\n $(\"html, body\").animate({ scrollTop: 0 }, \"slow\");\n};\n\n// --- START login/sign-up flow functions ----\n\n","// get served country list\nvar servedCountryList = (window.servedCountryList = function () {\n var countryList;\n $.ajax({\n url: \"/school_data/countries_with_regions_list\",\n dataType: \"json\",\n async: false,\n success: function (data) {\n countryList = data;\n },\n });\n return countryList;\n});\n\n// function thet gets the list of coutries from endpoint '/school_data/countries_with_regions_list' and returns it\n\n$(document).on(\"change focusout\", '[data-purpose=\"fill-dropdown\"]', function (e) {\n var input = $(this).closest(\".dynamic_section\").find(\"input\")[1];\n $.each($('[data-purpose=\"auto-school\"]'), function (idx, v) {\n setAutocompleteSchool($(v));\n });\n});\n\n$(function () {\n $(\".user-school-id\").on(\"change\", function () {\n if ($(\".user-school-id\").val() == \"custom_school\") {\n displayCustomSchool($(\".trigger-show-custom-school-name\"));\n showSchoolSecondaryFields();\n $(\".back-to-sel-school\").show();\n } else {\n showSchoolSecondaryFields();\n }\n });\n});\n\n$(function () {\n $.each($('[data-purpose=\"fill-dropdown\"]'), function (idx, v) {\n setAutocompleteRegion($(v));\n });\n var city = $(\".user-school-region\");\n city.attr(\"autocomplete\", \"none\");\n});\n\n// --- START school select functions ----\n\nvar schoolNationChange = (window.schoolNationChange = function (param) {\n var $this = $(param);\n var container = $this.parents(\".user-school-inputs\");\n var nation = container.find(\".user-school-nation\");\n var cityContainer = container.find(\".user-school-region-container\");\n var city = container.find(\".user-school-region\");\n var cityOptions = container.find(\".user-school-region option\");\n var cityOptionsOther = container.find(\".user-school-region option[data-country!='\" + $this.val() + \"']\");\n var sel = container.find(\".user-school-id\");\n var customSchoolName = container.find(\".custom-school-name\");\n var customUserClass = container.find(\".custom-user-class\");\n var schools = container.find(\".school-name\");\n\n // clear fields\n city.val(\"\");\n customSchoolName.val(\"\");\n customUserClass.val(\"\");\n sel.find(\"option\").filter(\".deletable\").remove();\n schools.hide();\n hideCustomSchool(container.find(\".trigger-show-custom-school-name\"));\n\n // show city if supported\n // if Nation not supported list available schools or fill school name manually\n // nation.val() is the country id selcted\n if (nation.val() !== \"\" && servedCountryList().includes(parseInt(nation.val()))) {\n fillRegions(city, nation.val());\n cityOptions.show();\n // Hide city of other states\n cityOptionsOther.hide();\n cityContainer.show();\n // container.find('.ask-for-custom-school').show();\n } else {\n showSchoolSecondaryFields();\n displayCustomSchool(param);\n cityContainer.hide();\n city.val(\"-ANY-\");\n $(\".back-to-sel-school\").hide();\n // container.find('.ask-for-custom-school').hide();\n }\n});\n\nvar clearSelectSchool = (window.clearSelectSchool = function (param) {\n var $this = $(param);\n var container = $this.parents(\".user-school-inputs\");\n var sel = container.find(\".user-school-id\");\n var userClass = container.find(\".user-class\");\n sel.selectedIndex = 0;\n userClass.val(\"\");\n});\n\nvar clearCustomSchool = (window.clearCustomSchool = function (param) {\n var $this = $(param);\n var container = $this.parents(\".user-school-inputs\");\n var customSchoolName = container.find(\"#user_schools_attributes_name\");\n var customUserClass = container.find(\".custom-user-class input\");\n customSchoolName.val(\"\");\n customUserClass.val(\"\");\n});\n\nvar clearChosenSchool = (window.clearChosenSchool = function (param) {\n clearSelectSchool(param);\n clearCustomSchool(param);\n});\n\nvar schoolCityChange = (window.schoolCityChange = function (param) {\n clearChosenSchool(param);\n hideCustomSchool($(\".trigger-show-custom-school-name\"));\n var $this = $(param);\n var container = $this.parents(\".user-school-inputs\");\n var nation = container.find(\".user-school-nation\").val();\n var region_id = container.find(\".user-school-region\").val();\n var sel = container.find(\".user-school-id\");\n var schools = container.find(\".school-name\");\n fillSchools(sel, region_id);\n});\n\n// var triggerShowCustomSchoolName = function(param) {\n// clearChosenSchool(param);\n// var $this = $(param);\n// var container = $this.parents('.user-school-inputs');\n// container.children('.trigger-show-custom-school-name').each(function() {\n// $this.toggle();\n// });\n// container.find('.school-name').toggle();\n// container.find('.custom-school-name').toggle();\n// select school from existing\n// if (container.find('.user-school-id').is(\":hidden\")) {\n// container.find('.user-school-id').attr('required', null);\n// container.find('.user-school-region').attr('required', null);\n// container.find('.user-school-region').val('');\n// container.find('.user-school-region-container').hide();\n// container.find('#user_schools_attributes_name').attr('required', 'required');\n// } else { // custom school\n// container.find('.user-school-id').attr('required', 'required');\n// container.find('.user-school-region').attr('required', 'required');\n// container.find('.user-school-region-container').show();\n// container.find('#user_schools_attributes_name').attr('required', null);\n// };\n// container.find('.custom-user-class').toggle();\n// container.find('.user-class').toggle();\n\n// manageDisableBtn($this.parents('.user-school-inputs'), 2);\n// };\n\nvar displayCustomSchool = (window.displayCustomSchool = function (param) {\n var $this = $(param);\n var container = $this.parents(\".user-school-inputs\");\n clearChosenSchool(param);\n container.find(\".school-name\").hide();\n // container.find(\".user-school-region-container\").hide();\n container.find(\".custom-school-name\").show();\n //fix required\n // container.find(\".user-school-id\").attr(\"required\", null);\n container.find(\".user-school-region\").attr(\"required\", null);\n // container.find(\".user-school-region\").val(\"-ANY-\");\n // container.find(\".user-school-region-container\").hide();\n container.find(\"#user_schools_attributes_name\").attr(\"required\", \"required\");\n});\n\nvar hideCustomSchool = (window.hideCustomSchool = function (param) {\n clearChosenSchool(param);\n var $this = $(param);\n var container = $this.parents(\".user-school-inputs\");\n // container.find('.school-name').show();\n container.find(\".custom-school-name\").hide();\n // fix required\n container.find(\".user-school-id\").attr(\"required\", \"required\");\n container.find(\".user-school-region\").attr(\"required\", \"required\");\n container.find(\".user-school-region-container\").show();\n container.find(\"#user_schools_attributes_name\").attr(\"required\", null);\n});\n\nwindow.backToSelSchool = function backToSelSchool(param) {\n hideCustomSchool($(\".trigger-show-custom-school-name\"));\n $(\".school-name\").show();\n};\n\nwindow.showSchoolSecondaryFields = function showSchoolSecondaryFields(param) {\n $(\".user-school-class-container\").show();\n $(\".user-school-position-container\").show();\n $(\".user-school-subject-container\").show();\n};\n\nwindow.hideSchoolSecondaryFields = function hideSchoolSecondaryFields(param) {\n $(\".user-school-class-container\").hide();\n $(\".user-school-position-container\").hide();\n $(\".user-school-subject-container\").hide();\n};\n\nvar addSchool = (window.addSchool = function () {\n if ($(\"#countainer_schools\").children().length < 5) {\n var lastBlock = $(\"#countainer_schools .dynamic_section\").last();\n var lastCounter = lastBlock.attr(\"data-counter\");\n $(\"#countainer_schools\").append(lastBlock.clone());\n var newBlock = $(\"#countainer_schools .dynamic_section\").last();\n\n newBlock.find(\"input\").val(\"\");\n newBlock.find(\"select.user-school-id option\").remove();\n\n var counter = lastCounter * 1 + 1;\n newBlock.attr(\"data-counter\", counter);\n\n newBlock.find(\".chosen-container\").remove();\n newBlock.find(\".user-school-nation\").chosen();\n // newBlock.find('.user-school-nation').attr('name', 'user[custom_schools]['+ counter + '][state]');\n // newBlock.find('.user-school-region').attr('name', 'user[custom_schools]['+ counter + '][city]');\n // newBlock.find('.user-school-name').attr('name', 'user[custom_schools]['+ counter + '][name]');\n newBlock.find(\".user-school-name\").attr(\"id\", \"user_custom_schools_\" + counter + \"_name\");\n newBlock.find(\".user-school-region\").attr(\"id\", \"user_custom_schools_\" + counter + \"_city\");\n\n setAutocompleteRegion(newBlock.find('[data-purpose=\"fill-dropdown\"]'));\n setAutocompleteSchool(newBlock.find('[data-purpose=\"auto-school\"]'));\n $(\".remove_school_link\").css(\"display\", \"block\");\n }\n});\n\nvar removeSchool = (window.removeSchool = function (me) {\n if ($(\"#countainer_schools\").children().length > 1) {\n $(me).closest(\".dynamic_section\").remove();\n }\n if ($(\"#countainer_schools\").children().length == 1) {\n $(\".remove_school_link\").css(\"display\", \"none\");\n }\n});\n\nwindow.fillSchools = function fillSchools(obj, region_id) {\n var schools = obj.parents(\".school-name\");\n if (region_id === undefined) {\n region_id = 0;\n }\n obj.find(\"option\").filter(\".deletable\").remove();\n if (region_id) {\n var composedUrl = \"/school_data/school_list_by_region_id?codice_scuola_parsed=false®ion_id=\" + region_id;\n $.ajax({\n url: composedUrl,\n dataType: \"json\",\n success: function (result) {\n if (result.length == 0) {\n // do nothing\n schools.hide();\n } else {\n $.each(result, function (key, value) {\n obj.prepend('\");\n });\n obj.prepend(\"\");\n schools.show();\n }\n },\n });\n }\n};\n\nwindow.fillRegions = function fillRegions(obj, nation) {\n var regions = obj.parents(\".user-school-region-container\");\n if (nation === undefined) {\n nation = \"undefined\";\n }\n obj.find(\"option\").filter(\".deletable\").remove();\n var sanitizedNation = trim(nation);\n if (sanitizedNation && sanitizedNation !== \"\") {\n var composedUrl = \"/school_data/regions_list_by_country_id?country_id=\" + sanitizedNation;\n $.ajax({\n url: composedUrl,\n dataType: \"json\",\n success: function (result) {\n if (result.length == 0) {\n // do nothing\n regions.hide();\n } else {\n obj.append(\"\");\n $.each(result, function (key, value) {\n obj.append(\"\");\n });\n regions.show();\n }\n },\n });\n }\n};\n\nwindow.setAutocompleteRegion = function setAutocompleteRegion(obj) {\n obj\n .autocomplete({\n minLength: 2,\n delay: 500,\n source: \"/profile/city-list\",\n source: function (request, response) {\n // request.term is the term searched for.\n // response is the callback function you must call to update the autocomplete's\n // suggestion list.\n var nation = $(obj).parents(\".user-school-inputs\").find(\".user-school-nation\").val();\n var params = { term: request.term };\n if (nation !== undefined) {\n params.nation = nation;\n }\n $.ajax({\n url: \"/profile/city-list\",\n data: params,\n dataType: \"json\",\n success: response,\n error: function () {\n response([]);\n },\n });\n },\n\n focus: function (event, ui) {\n obj.val(ui.item.label);\n return false;\n },\n\n select: function (event, ui) {\n obj.val(toTitleCase(ui.item.city));\n return false;\n },\n })\n .data(\"ui-autocomplete\")._renderItem = function (ul, item) {\n return $(\"
  • \")\n .append(\"
    \" + toTitleCase(item.city) + \"
  • \")\n .appendTo(ul);\n };\n};\n\n// $(document).on('change focusout', '[data-purpose=\"fill-dropdown\"]', function(e){\n\n// var input = $(this).closest('.dynamic_section').find('input')[1];\n// $.each($( '[data-purpose=\"auto-school\"]' ), function(idx, v){\n// setAutocompleteSchool($(v));\n// });\n// });\n\nwindow.setAutocompleteSchool = function setAutocompleteSchool(obj) {\n var city = $(obj).parents(\".user-school-inputs\").find(\".user-school-region\").val();\n obj\n .autocomplete({\n minLength: 2,\n source: \"/profile/school-list-by-name?city=\" + city,\n\n focus: function (event, ui) {\n obj.val(ui.item.label);\n return false;\n },\n\n select: function (event, ui) {\n obj.val(toTitleCase(ui.item.name));\n $(obj).parents(\".user-school-inputs\").find(\".user-school-id\").val(ui.item.id);\n $(obj).parents(\".user-school-inputs\").find(\".auto_mail\").val(ui.item.email);\n $(\".mail_miur\").val(\"\");\n return false;\n },\n })\n .data(\"ui-autocomplete\")._renderItem = function (ul, item) {\n return $(\"
  • \")\n .append(\"
    \" + toTitleCase(item.name) + \"
  • \")\n .appendTo(ul);\n };\n};\n// $(function() {\n// $.each($( '[data-purpose=\"fill-dropdown\"]' ), function(idx, v){\n// setAutocompleteRegion($(v));\n// });\n// });\n\n// --- END school select functions ----\n","$(function () {\n // hide fullname if avatar is clicked and show when not clicked\n $(\"#drop-avatar\").change(function () {\n if (this.checked) {\n $(\"#fullname-header\").hide();\n } else {\n $(\"#fullname-header\").show();\n }\n });\n});\n","$(function () {\n //navbar bg on window scroll\n if ($(window).scrollTop() > 200) {\n $(\".nav-bar\").addClass(\"coloredBG\");\n $(\".logo\").addClass(\"show\");\n }\n\n $(window).scroll(function scrolledNavStyles() {\n if ($(window).scrollTop() > 120) {\n $(\".nav-bar\").addClass(\"coloredBG\");\n $(\".logo\").addClass(\"show\");\n } else {\n $(\".nav-bar\").removeClass(\"coloredBG\");\n $(\".logo\").removeClass(\"show\");\n }\n });\n //navbar bg on window scroll // end\n\n var $myCarousel = $(\"header.carousel\");\n // Initialize carousel\n $myCarousel.carousel({\n interval: 5000,\n });\n //*****************************//\n // ** slider for reviews box **\n var $myCarousel2 = $(\"#bottom-slider\");\n // Initialize carousel\n $myCarousel2.carousel({\n interval: 5000,\n });\n\n //*****************************//\n // slider on genitori page\n var $myCarousel2 = $(\"#genitori-slider\");\n // Initialize carousel\n $myCarousel2.carousel({\n interval: 5000,\n });\n\n $myCarousel2.bind(\"slid.bs.carousel\", function (e) {\n var indx = $(\"ol.carousel-indicators li.active\").data(\"slide-to\");\n $(\".genitori .box-slider a\").each(function () {\n $(this).removeClass(\"focused\");\n });\n $('div.slider-console a[data-bs-target=\"#genitori-slider\"][data-bs-slide-to=' + indx + \"]\").addClass(\"focused\");\n });\n\n var $myCarousel3 = $(\"#insegnanti-slider\");\n // Initialize carousel\n $myCarousel3.carousel({\n interval: 5000,\n });\n //*****************************//\n // slider on genitori page\n var $myCarouselBlog = $(\"#blog-slider\");\n // Initialize carousel\n $myCarouselBlog.carousel({\n interval: 5000,\n });\n //*****************************//\n // slider on insegnanti page\n // Instantiate the Bootstrap carousel\n $(\".multi-item-carousel\").carousel({\n interval: false,\n });\n // for every slide in carousel, copy the next slide's item in the slide.\n // Do the same for the next, next item.\n $(\".multi-item-carousel .item\").each(function () {\n var next = $(this).next();\n if (!next.length) {\n next = $(this).siblings(\":first\");\n }\n next.children(\":first-child\").clone().appendTo($(this));\n\n if (next.next().length > 0) {\n next.next().children(\":first-child\").clone().appendTo($(this));\n } else {\n $(this).siblings(\":first\").children(\":first-child\").clone().appendTo($(this));\n }\n });\n\n // Select all links with hashes\n $('a.scrollAnimation[href*=\"#\"]')\n // Remove links that don't actually link to anything\n .not('[href=\"#\"]')\n .not('[href=\"#0\"]')\n .click(function (event) {\n // On-page links\n if (location.pathname.replace(/^\\//, \"\") == this.pathname.replace(/^\\//, \"\") && location.hostname == this.hostname) {\n // Figure out element to scroll to\n var target = $(this.hash);\n target = target.length ? target : $(\"[name=\" + this.hash.slice(1) + \"]\");\n // Does a scroll target exist?\n if (target.length) {\n // Only prevent default if animation is actually gonna happen\n event.preventDefault();\n $(\"html, body\").animate(\n {\n scrollTop: target.offset().top,\n },\n 1000,\n function () {\n // Callback after animation\n // Must change focus!\n var $target = $(target);\n $target.focus();\n if ($target.is(\":focus\")) {\n // Checking if the target was focused\n return false;\n } else {\n $target.attr(\"tabindex\", \"-1\"); // Adding tabindex for elements not focusable\n $target.focus(); // Set focus again\n }\n }\n );\n }\n }\n });\n});\n\n//*********************************************************************//\n//**** header carousel scripts for text and buttons animations ****//\n//*********************************************************************//\n// slider on the homepage\n\n$(function () {\n $(\"#reg_teacher_form\").submit(function () {\n return validate(this);\n });\n\n if ($(\"#countainer_schools\").children().length == 1) {\n $(\".remove_school_link\").css(\"display\", \"none\");\n }\n});\n\n// Is `n` a number or numeric string (eg \"3\")?\nwindow.isNumeric = function isNumeric(n) {\n return !isNaN(parseFloat(n)) && isFinite(n);\n}\n\n// Pad `n` with `z` (or `0` by default) to `width`.\nwindow.zeroPad = function zeroPad(n, width, z) {\n z = z || \"0\";\n n = n + \"\";\n return n.length >= width ? n : new Array(width - n.length + 1).join(z) + n;\n}\n\nwindow.toggle_visibility = function toggle_visibility(id) {\n var e = document.getElementById(id);\n if (e.style.display != \"none\") e.style.display = \"none\";\n else e.style.display = \"block\";\n}\n\n$('[data-purpose=\"fill-dropdown\"]').change();\n\nwindow.isOdd = function isOdd(value) {\n if (value % 2 != 0) return true;\n else return false;\n}\n\nwindow.update_panel_school_subjects = function update_panel_school_subjects(me) {\n var summary = $(\"#school_subject_summary\").text();\n var selected = $(me).text();\n $(\"#school_subject_summary\").text((summary += selected));\n}\n\n$(document).on(\"click\", 'input[data-purpose=\"fill_summary_school_subjects\"]', function () {\n $(\".panel_checkboxes\").css(\"display\", \"block\");\n var $checked = $(\"input:checked\");\n var texts = $checked.map(function (i, el) {\n return $(el).closest(\"label\").find(\"span\").html();\n });\n $(\"#school_subject_summary\").text($.makeArray(texts).join(\", \"));\n});\n\nwindow.trim = function trim(s) {\n if (s != null) {\n s = s.replace(/(^\\s*)|(\\s*$)/gi, \"\");\n s = s.replace(/[ ]{2,}/gi, \" \");\n s = s.replace(/\\n /, \"\\n\");\n return s;\n }\n}\n\n$(\"#areadropdown\")\n .change(function (e) {\n var container1 = document.getElementById(\"container_school_subjects_1\");\n var container2 = document.getElementById(\"container_school_subjects_2\");\n $(\"#school_subject_summary\").text(\"\");\n container1.innerHTML = \"\";\n container2.innerHTML = \"\";\n var selected = this.value.split(\"-\");\n var term = trim(selected[0]);\n var area = trim(selected[1]);\n var query = \"/profile/school-subject?term=\" + term;\n if (area != null) {\n query += \"&area=\" + area;\n }\n $.getJSON(query, function (schoolSubjects) {\n for (var i = 0; i < schoolSubjects.length; i++) {\n var obj = schoolSubjects[i];\n var target = container1;\n if (isOdd(i)) target = container2;\n\n var content = \"
    \";\n content += '';\n content += '\";\n content += \"
    \";\n\n $(content).appendTo(target);\n }\n });\n })\n .change();\n\n// $(function (){\n// var pickerOpts = {\n// monthNames: ['Gennaio','Febbraio','Marzo','Aprile','Maggio','Giugno',\n// 'Luglio','Agosto','Settembre','Ottobre','Novembre','Dicembre'],\n// monthNamesShort: ['Gen','Feb','Mar','Apr','Mag','Giu',\n// 'Lug','Ago','Set','Ott','Nov','Dic'],\n// dayNames: ['Domenica','Lunedì','Martedì','Mercoledì','Giovedì','Venerdì','Sabato'],\n// dayNamesShort: ['Dom','Lun','Mar','Mer','Gio','Ven','Sab'],\n// dayNamesMin: ['Do','Lu','Ma','Me','Gi','Ve','Sa'],\n// prevText: '<Prec', prevStatus: '',\n// prevJumpText: '<<', prevJumpStatus: '',\n// nextText: 'Succ>', nextStatus: '',\n// nextJumpText: '>>', nextJumpStatus: '',\n// currentText: 'Oggi', currentStatus: '',\n// todayText: 'Oggi', todayStatus: '',\n// clearText: '-', clearStatus: '',\n// closeText: 'Chiudi', closeStatus: '',\n// yearStatus: '', monthStatus: '',\n// weekText: 'Sm', weekStatus: '',\n// dayStatus: 'DD d MM',\n// defaultStatus: '',\n// dateFormat: 'dd/mm/yy',\n// firstDay: 1,\n// isRTL: false,\n// showButtonPanel: false,\n// changeMonth: true,\n// changeYear: true,\n// yearRange: '1920:2020',\n// defaultDate: \"1/1/1980\"\n// };\n// $(\"#profile_birthdate\").datepicker(pickerOpts);\n\n// });\n\nwindow.toTitleCase = function toTitleCase(str) {\n return str.replace(/\\w\\S*/g, function (txt) {\n return txt.charAt(0).toUpperCase() + txt.substr(1).toLowerCase();\n });\n}\n\n$(function () {\n $(document).on(\"click\", \".mail_miur\", function () {\n $.each($(\".dynamic_section :input\"), function (idx, v) {\n $(v).val(null);\n });\n });\n});\n\n$(function () {\n $.each($('[data-purpose=\"open-modal\"]'), function () {\n $(\"#post_reg_popup\").foundation(\"reveal\", \"open\");\n });\n});\n\n$(function () {\n var searchStyle = $('[data-purpose=\"virtual_class_search_style\"]').get(0);\n if ($('[data-purpose=\"virtual_class_search\"]').length) {\n $('[data-purpose=\"virtual_class_search\"]')\n .get(0)\n .addEventListener(\"input\", function () {\n if (!this.value) {\n searchStyle.innerHTML = \"\";\n return;\n }\n searchStyle.innerHTML = '.searchable:not([data-index*=\"' + this.value.toLowerCase() + '\"]) { display: none; }';\n });\n }\n});\n\nwindow.update_school_mail = function update_school_mail() {\n $(\"#school_subject_summary\").text((summary += selected));\n}\n\n$(document).on(\"change\", '[data-purpose=\"virtual_class_jump\"]', function () {\n document.location.href = this.options[this.selectedIndex].value;\n});\n\nvar hide_show_others = window.hide_show_others = function (event) {\n $(\".show_hide_others\").toggle();\n content = $(\".show_hide_others_link\").html().trim() == \"Mostra altre della tua scuola:\" ? \"Nascondi altre della tua scuola:\" : \"Mostra altre della tua scuola:\";\n return $(\".show_hide_others_link\").html(content);\n};\n\n$(document).on(\"ready page:load\", function () {\n return $(document).on(\"click\", \".show_hide_others_link\", hide_show_others);\n});\n\n$(document).on(\"click\", \"a\", function (e) {\n if (this.pathname === window.location.pathname && /Modal$/.test(this.hash) && $(this.hash).length) {\n e.preventDefault();\n $(this.hash).foundation(\"reveal\", \"open\");\n }\n});\n\n$(function () {\n if (/Modal$/.test(window.location.hash) && $(window.location.hash).length) {\n $(window.location.hash).foundation(\"reveal\", \"open\");\n }\n});\n\n// $(function () {\n// $(\".with_smooth_scroll\").smoothScroll();\n// });\n\n$(document).on(\"click\", \".hide_strip_button\", function hideButton() {\n $(\".containg_strip\").css(\"visibility\", \"hidden\");\n});\n\n$(document).on(\"change\", '[data-purpose=\"render_modal_activation\"]', function () {\n var brandId = $('[data-purpose=\"render_modal_activation\"]').val();\n var divToShow = [\"#modal_activation_for_brand_id_\", brandId].join(\"\");\n $(\"[id^=modal_activation_for_brand_id_]\").hide();\n $(divToShow).show();\n});\n\n$(\"#user_pwd\").capsChecker({\n capson: function (e, isOn) {\n $(\".registrazione_pw span.capsLockMessage\").html(\"MAIUSC BLOCK attivato\");\n },\n capsoff: function (e, isOn) {\n $(\".registrazione_pw span.capsLockMessage\").html(\"\");\n },\n});\n\n$(document).on(\"click\", '[data-purpose=\"with-book-stats\"]', function (e) {\n e.preventDefault();\n var query = this.href;\n $.getJSON(query, function (data) {\n var source = $(\"#bookStatModalTemplate\").html();\n var template = Handlebars.compile(source);\n var html = template(data);\n $(\"#bookStatModal\").html(html).foundation(\"reveal\", \"open\");\n });\n});\n\n$(document).on(\"change\", 'select[data-purpose=\"hideOrShowSchool\"]', function (e) {\n if (e.target.value == \"teacher\") {\n $(\".hide_or_show_school\").show();\n } else {\n $(\".hide_or_show_school\").hide();\n }\n});\n\n$(document).on(\"click\", \"#open_drop_for_login_menu img\", function (e) {\n e.preventDefault();\n Foundation.libs.dropdown.open($(\"#drop_for_login_menu\"), $(\"#open_drop_for_login_menu\"));\n return false;\n});\n\n$(document).on(\"click\", '[data-purpose=\"showJsonHelp\"]', function (e) {\n e.preventDefault();\n $(\"#help_for_json\").toggle();\n $('[data-purpose=\"showJsonHelp\"]').text($(\"#help_for_json\").is(\":visible\") ? \"Nascondi\" : \"Mostra esempio\");\n return false;\n});\n\n$(document).on(\"click\", '[data-purpose=\"changeWelcomeSlideshow\"]', function (a) {\n $(\"[class^=welcome_slideshow_content_panel_activate]\").removeClass(\"block\");\n var target = $(this).attr(\"data-bs-target\");\n var divToShow = [\".welcome_slideshow_content_panel_\", target].join(\"\");\n var cellToActivate = [\".welcome_cell_\", target].join(\"\");\n $(\"[class^=welcome_slideshow_content_panel_]\").hide();\n $(\"[class^=welcome_cell_]\").removeClass(\"welcome_selected_cell\");\n $(divToShow).show();\n $(cellToActivate).addClass(\"welcome_selected_cell\");\n window.location.hash = target;\n return false;\n});\n\n$(function () {\n var welcomeTarget = window.location.hash.substring(1);\n if (welcomeTarget && /activate|downloadapp|downloadbook|profile/.test(welcomeTarget)) {\n $(\"[class^=welcome_slideshow_content_panel_]\").hide();\n $(\".welcome_slideshow_content_panel_\" + welcomeTarget).show();\n $(\"[class^=welcome_cell_]\").removeClass(\"welcome_selected_cell\");\n $([\".welcome_cell_\", welcomeTarget].join(\"\")).addClass(\"welcome_selected_cell\");\n }\n});\n\n$(function () {\n $(\"img[usemap]\").rwdImageMaps();\n});\n\n$(document).on(\"click\", \".slide_carousel\", function (a) {\n var slideNumber = $(this).attr(\"data-orbit-slide-number\");\n $(\"#welcomeExerciseModal\").foundation(\"reveal\", \"open\");\n $(\"#exerciseOrbit\")\n .siblings(\".orbit-bullets\")\n .find(\"[data-orbit-slide='\" + slideNumber + \"']\")\n .click();\n});\n\n$(document).on(\"click\", \"#welcomeExerciseModal a.close-reveal-modal\", function (a) {\n $(\"#welcomeExerciseModal\").foundation(\"reveal\", \"close\");\n});\n\n$(document).on(\"click\", \".clearing-blackout\", function (e) {\n // $('a.clearing-close').trigger('click');\n});\n","// Rails wraps input[type=checkbox] with div.field_with_errors tag\n// this script exists to keep the same style of the clear form\n\n(function () {\n $(function () {\n return $(\".field_with_errors > input[type=checkbox]\").change(function (event) {\n if (this.checked) {\n return $(\".field_with_errors + label.checktype\").addClass(\"checked\");\n } else {\n return $(\".field_with_errors + label.checktype\").removeClass(\"checked\");\n }\n });\n });\n}.call(this));\n","(function () {\n $(function () {\n return $(\"a.close-action\").on(\"click\", function (e) {\n e.preventDefault();\n return $(this).closest(\".messages\").slideUp(200);\n });\n });\n}.call(this));\n","$(function () {\n\n $('.role-select-trigger').click(function() {\n var wrapper = $(this).closest('.user-role-select-form')\n var role = $(this).data('role');\n $(wrapper).find('#user_role_select_form_role').val(role);\n\n\n if (role === 'teacher') {\n if ( $(this).data('locale') === 'it') {\n $(wrapper).find('.first-step').hide();\n $(wrapper).find('.second-step').show();\n $(wrapper).find('.birthday-select').hide();\n $(wrapper).find('.users-select-school-teacher-subtitle').show();\n $(wrapper).find('.users-select-school-student-subtitle').hide();\n } else {\n $(wrapper).find('.btn-submit').trigger('click');\n }\n\n } else {\n $(wrapper).find('.users-select-school-teacher-subtitle').hide();\n $(wrapper).find('.users-select-school-student-subtitle').show();\n $(wrapper).find('.first-step').hide();\n $(wrapper).find('.second-step').show();\n };\n\n var birthdayOK = true;\n var schoolOK = true;\n\n\n $(wrapper).find('.birthday-select select').on('change', function() {\n var complete = true;\n var count = $(wrapper).find('.birthday-select select').size();\n var index = 0;\n birthdayOK = true;\n $(wrapper).find('.birthday-select select').each(function(i, obj) {\n var val = $(this).val();\n if (val === '') {\n index++;\n complete = false;\n }\n });\n if (!complete && index !== count && index !== 0) {\n // console.warn(\"Birthday is NOT OK\");\n birthdayOK = false;\n }\n\n checkBDayAndSchool();\n });\n\n $(wrapper).find('.school-select input.to-complete').on('change', function() {\n var complete = true;\n var count = $(wrapper).find('.school-select input.to-complete').size();\n var index = 0;\n schoolOK = true;\n $(wrapper).find('.school-select input.to-complete').each(function(i, obj) {\n var val = $(this).val();\n if (val === '') {\n index++;\n complete = false;\n }\n });\n if (!complete && index !== count && index !== 0) {\n schoolOK = false;\n }\n\n checkBDayAndSchool();\n });\n\n var checkBDayAndSchool = function() {\n if (birthdayOK && schoolOK) {\n // console.log(\"Everything is fine!\");\n $(wrapper).find('.btn-submit').attr(\"disabled\",false);\n } else {\n // console.warn(\"Something is NOT OK\");\n $(wrapper).find('.btn-submit').attr(\"disabled\",true);\n }\n };\n });\n\n});\n","import \"./check_box_form\";\r\nimport \"./flash\";\r\nimport \"./login\";\r\n\r\n$(function () {\r\n //navbar bg on window scroll\r\n if ($(window).scrollTop() > 200) {\r\n $(\".nav-bar\").addClass(\"coloredBG\");\r\n $(\".logo\").addClass(\"show\");\r\n }\r\n\r\n // search-navbar class switch to open the input\r\n $(\".search-form-opener\").on(\"click\", function () {\r\n $(this).prev().toggleClass(\"opened\");\r\n });\r\n});\r\n\r\n//navbar bg on window scroll\r\n$(window).scroll(function scrolledNavStyles() {\r\n if ($(window).scrollTop() > 120) {\r\n $(\".nav-bar\").addClass(\"coloredBG\");\r\n $(\".logo\").addClass(\"show\");\r\n } else {\r\n $(\".nav-bar\").removeClass(\"coloredBG\");\r\n $(\".logo\").removeClass(\"show\");\r\n }\r\n});\r\n\r\n$(function () {\r\n $('[data-bs-toggle=\"tooltip\"]').tooltip();\r\n});\r\n","$(function () {\n var viz;\n var div = document.getElementById('tableau-viz-cont');\n\n var options = {\n hideTabs: true,\n hideToolbar: true,\n width: \"1016px\",\n height: \"964px\"\n };\n\n window.createViz = function createViz(url) {\n if (!div) {\n return;\n }\n if (viz) {\n viz.dispose();\n }\n viz = new tableau.Viz(div, url, options);\n }\n\n window.select = function select($el) {\n var url = $el.attr('href');\n if (!viz || viz.getUrl() !== url) {\n createViz(url);\n }\n }\n\n var first = $('.tableau-wb-link').first();\n if (first) {\n select(first);\n }\n\n $('.tableau-wb-link').on('click', function(evt) {\n evt.preventDefault();\n select($(this));\n });\n\n});\n","import \"parsleyjs/src/parsley.js\";\nimport \"parsleyjs/src/i18n/fr.js\";\nimport \"parsleyjs/src/i18n/es.js\";\nimport \"parsleyjs/src/i18n/it.js\";\nimport \"parsleyjs/src/i18n/de.js\";\nimport \"jquery-ui/dist/jquery-ui.js\";\nimport \"@hotwired/turbo-rails\";\n// import \"jquery-smooth-scroll/jquery.smooth-scroll.js\";\n// import \"bootstrap/dist/js/bootstrap.bundle.js\";\nimport \"moment/src/moment.js\";\nimport \"moment/src/locale/de.js\";\nimport \"moment/src/locale/es.js\";\nimport \"moment/src/locale/fr.js\";\nimport \"moment/src/locale/it.js\";\n// import \"flexslider/jquery.flexslider.js\";\nimport \"@vendor/jquery.rwdImageMaps.js\";\nimport \"@vendor/jquery.capsChecker.js\";\nimport \"@vendor/handlebars-v1.2.0\";\nimport \"bootstrap-select\";\n\nimport \"./login_signup.js\";\nimport \"./school_select.js\";\n// import \"./jquery.flexslider.js\"; // why another flexslider?\nimport \"./events.js\";\nimport \"./custom.js\";\nimport \"./tutors/custom.js\";\nimport \"./tableau/custom.js\";\n\n$(function () {\n $('[data-bs-toggle=\"tooltip\"]').tooltip();\n // $(\".chosen-select\").chosen({\n // width: \"300px\",\n // allow_single_deselect: true,\n // placeholder_text_single: select_option,\n // no_results_text: no_results_text,\n // });\n\n $(function () {\n setTimeout(function () {\n $(\".alert\").slideUp(500);\n }, 5000);\n });\n\n $(\"select[name='filter_for_publisher_select']\").on(\"change\", function () {\n var url = $(this).val();\n if (url) {\n // require a URL\n window.location = url; // redirect\n }\n return false;\n });\n\n // Required to trigger validation when step 1 is\n // completely autofilled with oauth data\n $(\"#user_name\").trigger(\"change\");\n\n var userLang = sessionLang || navigator.language || navigator.userLanguage;\n console.log(\"User language is:\", userLang);\n\n userLang = userLang.substring(0, 2).toLowerCase();\n if (![\"en\", \"fr\"].includes(userLang)) {\n userLang = \"en\";\n }\n window.Parsley.setLocale(userLang);\n\n window.Parsley.addValidator('rejectPattern', {\n requirementType: 'string',\n validateString: function(value, requirement) {\n // check that the email value does not contain http or // via regex\n var regex = new RegExp(requirement);\n return !regex.test(value);\n },\n });\n\n window.Parsley.addValidator(\"rejectEmoji\", {\n // requirementType: \"string\",\n validateString: function (value) {\n var regex = new RegExp(\n /[\\u{1f300}-\\u{1f5ff}\\u{1f900}-\\u{1f9ff}\\u{1f600}-\\u{1f64f}\\u{1f680}-\\u{1f6ff}\\u{2600}-\\u{26ff}\\u{2700}-\\u{27bf}\\u{1f1e6}-\\u{1f1ff}\\u{1f191}-\\u{1f251}\\u{1f004}\\u{1f0cf}\\u{1f170}-\\u{1f171}\\u{1f17e}-\\u{1f17f}\\u{1f18e}\\u{3030}\\u{2b50}\\u{2b55}\\u{2934}-\\u{2935}\\u{2b05}-\\u{2b07}\\u{2b1b}-\\u{2b1c}\\u{3297}\\u{3299}\\u{303d}\\u{00a9}\\u{00ae}\\u{2122}\\u{23f3}\\u{24c2}\\u{23e9}-\\u{23ef}\\u{25b6}\\u{23f8}-\\u{23fa}]/gu\n );\n return !regex.test(value);\n },\n });\n\n window.Parsley.addAsyncValidator(\n \"emailUnique\",\n function (xhr) {\n // Ritorna true anche se la richiesta non funziona per far\n // comunque andare avanti l'utente.\n // La validazione della mail c'è comunque alla fine del form.\n return xhr.status !== 200 || !xhr.responseJSON.found;\n },\n \"/api/v5/users/email/check?email={value}\"\n );\n\n});\n","import \"../src/shared/wrap_ready.js\"\nimport Cookie from \"../src/shared/cookie\";\n\nwindow.Hachetteantoine = {};\n\nwindow.addEventListener(\"DOMContentLoaded\", () => {\n window.Hachetteantoine.Cookie = new Cookie();\n});\n\n// we moved Bootstrap here afer updating to BS5 because\n// it wasn't loaded in the right order in application.js\nimport * as bootstrap from '../../../node_modules/bootstrap/dist/js/bootstrap.bundle.js';\n\nwindow.bootstrap = bootstrap;\n\nimport \"../../whitelabels/hachetteantoine/assets/javascripts/application.js\";\n"],"names":["$","event","manageStepChange","manageStepCircles","manageInputChange","manageDisableBtn","e","getCurrentStep","$this","classesParent","curStep","step","btn","filled","onPrivaciesChange","response","currentIndex","selected","selectedIndex","curFlow","nextStep","servedCountryList","countryList","data","idx","v","displayCustomSchool","city","param","container","nation","cityContainer","cityOptions","cityOptionsOther","sel","customSchoolName","customUserClass","schools","hideCustomSchool","clearSelectSchool","userClass","clearCustomSchool","clearChosenSchool","region_id","lastBlock","lastCounter","newBlock","counter","me","obj","composedUrl","result","key","value","regions","sanitizedNation","request","params","ui","ul","item","$myCarousel","$myCarousel2","indx","$myCarousel3","$myCarouselBlog","next","target","$target","n","width","z","id","summary","$checked","texts","i","el","s","container1","container2","term","area","query","schoolSubjects","content","str","txt","searchStyle","hide_show_others","brandId","divToShow","isOn","source","template","html","a","cellToActivate","welcomeTarget","slideNumber","this","wrapper","role","birthdayOK","schoolOK","complete","count","index","val","checkBDayAndSchool","viz","div","options","url","$el","first","evt","userLang","requirement","regex","xhr","Cookie","bootstrap"],"mappings":"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"}