function stripHtml(n){let t=document.createElement("DIV");return t.innerHTML=n,t.textContent||t.innerText||""}function cleanurlTitle(n){return stripHtml(n.replace(/\s/g,"-").replace("/","").replace(" ","-").replace("%20","-"))}function initializeTooltips(){$('[data-rel="tooltip"]').tooltip({container:"body",animation:!1,delay:{show:500,hide:0}});$('[data-toggle="tooltip"]').tooltip()}function initializeFreemiumFeatures(){function t(n,t){var f=n.data("modal-target"),s=n.data("modal-case-id"),h=n.data("modal-title"),a=n.find(".hidden-description").html(),v=n.find(".hidden-tag").html(),i,c,r,e,o,u,l;n.addClass("open");i=$(".gizmo-details-modal");i.find("#gizmoModalTitle").html(h+v);i.find(".tag-case, .tag-handbook").addClass("case-header-tag");i.find("#gizmoModalDescription").html(a);c=cleanurlTitle(h);r=i.find("#lessonInfoLink").data("href").replace("{gizmoID}",f).replace("{gizmoTitle}",c);i.find("#lessonInfoLink").attr("href",r);i.find("#caseModalLink");e=i.find(".launch-link").data("href");e=r;i.find(".launch-link").attr("href",e);o=i.find(".lesson-link").data("href");(o=r,i.find(".lesson-link").attr("href",o),s)?(u=i.find(".img-responsive").data("src")+"CaseSnap/"+s+"DET_1.jpg",i.find(".img-responsive").attr("src",u),i.find("#addToClassButton, .launch-link").hide(),i.find(".lesson-link, #caseModalLink").show()):(u=i.find(".img-responsive").data("src")+"GizmoSnap/"+f+"DET.jpg",i.find(".img-responsive").attr("src",u),i.find("#addToClassButton").data("id",f),i.find("#addToClassButton, .launch-link").show(),i.find(".lesson-link, #caseModalLink").hide());l=r;i.find(".gizmo-image-link").attr("href",l);t&&i.modal("show")}function n(n){var i;0==(i="right"==n?$(".gizmo-gallery-modal.open").nextAll(".gizmo-gallery-modal:visible").first():$(".gizmo-gallery-modal.open").prevAll(".gizmo-gallery-modal:visible").first()).length&&"right"==n?i=$(".gizmo-gallery-modal").first():0==i.length&&"left"==n&&(i=$(".gizmo-gallery-modal").last());$(".gizmo-gallery-modal.open").removeClass("open");t(i,!1)}function i(){var n=$(".subject button.active").data("subjectname"),t=$(".grade-level button.active").data("grade");void 0!==n&&void 0!==t&&($(".choose-class").hide(),$(".my-classes button").hide(),"both"==n?$(".my-classes button[data-gradelevel*="+t+"]").show():$(".my-classes button[data-gradelevel*="+t+"][data-subject*="+n+"]").show(),$(".my-classes").show())}if($("#fullpage.login-intercept-page").length>0){if($(".section-footer").length>0){var r=$("footer").html(),u=$("<footer>"+r+"<\/footer>");$(".section-footer").append(u)}$("#fullpage").fullpage({navigation:!1,slidesNavigation:!0,controlArrows:!1})}$("#upgradeEligibleModal.launch-now").modal("show");$("#pilotApplicationApproved").modal("show");$("#trialAccountExpired").modal("show");$("#upgradeEligibleModal .btn.apply").on("click",function(){$("#upgradeEligibleModal form").submit()});$(".free-gizmo-page-content .btn-group-toggle button").on("click",function(n){button=$(this);button.hasClass("active")||($(".btn-group-toggle .active").removeClass("active"),button.addClass("active"),$(".free-gizmo-page-content").toggleClass("grid-view").toggleClass("list-view"));n.preventDefault()});$(".free-gizmo-page-content").length>0&&(window.onkeyup=function(t){if($(".gizmo-gallery-modal.open").length>0){var i=t.keyCode?t.keyCode:t.which;39==i?n("right"):37==i&&n("left")}});$(".gizmo-details-modal").on("click",".gizmo-nav",function(){$(this).hasClass("gizmo-nav-right")?n("right"):n("left")});$(".gizmo-details-modal").on("hide.bs.modal",function(){$(".gizmo-gallery-modal.open").removeClass("open")});$(".gizmo-gallery-modal").on("click",function(n){t($(this),!0);n.preventDefault()});$(".gizmo-gallery-modal.show-on-load").length>0&&t($(".free-gizmo-block.show-on-load"),!0);$(".gizmo-list-body .free-gizmo-toggle-2").on("click",function(n){if(!$(this).hasClass("active")){$(".free-gizmo-toggle-2.active").removeClass("active");$(this).addClass("active");var t=$(this).data("category-target");"all"==t?($(".free-gizmo-block").removeClass("free-hidden"),$(".card-gizmo").removeClass("free-hidden")):($(".free-gizmo-block,.card-gizmo").addClass("free-hidden"),$(".free-gizmo-block.category-"+t+",.card-gizmo.category-"+t).removeClass("free-hidden"));$(".category-name").text($(this).data("category-name"))}n.preventDefault()});$(".category-list-page .section-header").on("click",function(){$(this).find("> .glyphicon").toggleClass("glyphicon-minus").toggleClass("glyphicon-plus")});$("#upgradeForm").validate({rules:{phone:{phoneNumberCheck:!0},title:{checkSelection:!0}},errorClass:"text-danger",errorElement:"em",messages:{title:{checkSelection:"Please select your title."}}});$("#promoForm").validate({submitHandler:function(n,t){t.preventDefault();var i=$("input[name=phone]").val(),r=$("select[name=title] option:selected").text();$.ajax({type:"POST",url:"index.cfm",data:{method:"cFreemium.actPromoPeriodUpgrade",title:r,phone:i},success:function(){window.location.href=elPaths.myself+"cFreemium.dspPromoAccountComplete"}})},rules:{phone:{phoneNumberCheck:!0},title:{checkSelection:!0}},errorClass:"text-danger",errorElement:"em",messages:{title:{checkSelection:"Please select your title."}}});$(".promo-upgrade").one("click",function(){$("#promoForm").submit()});$(".apply-now-button").on("click",function(){$("#upgradeForm").submit()});$(".gizmo-category-btn").on("click",function(){var n=$(this).data("category");$(".free-gizmos").hide();$(".free-gizmos-"+n).show();$(this).addClass("active").siblings(".btn").removeClass("active")});$("#searchSection .search-filter").on("click","[data-filter-url]",function(n){var t=$(this).data("filter-url");location.href=t;n.preventDefault()});$(".radio-button-group button").on("click",function(n){$(this).siblings("button").removeClass("active");$(this).addClass("active");n.preventDefault()});$(".subject button").on("click",function(n){$("#subjectid").val($(this).data("subjectid"));i();n.preventDefault()});$(".grade-level button").on("click",function(){i()});$(".checkbox-button-group button").on("click",function(n){$(this).toggleClass("active");n.preventDefault();var t="";$(".my-classes button.topic-btn.active").each(function(){t+=$(this).data("topicid")+","});$("#topiclist").val(t);t="";$("button.gradecode-btn.active").each(function(){t+=$(this).data("gradecodeid")+","});$("#gradecodelist").val(t);$(".checkbox-button-group button.active").length>0?$(".what-i-teach-form button[type=submit]").removeClass("disabled").removeAttr("disabled"):$(".what-i-teach-form button[type=submit]").addClass("disabled").attr("disabled",!0)});$(".free-gizmo-tag, .locked-gizmo-tag").on("click",function(){$("#howFreemiumWorks").modal("show")})}function initializeTeacherHomepage(){function n(){parentCard=$(this).parents(".borderless-card").addClass("expanded");parentCard.find(".hidden-list-item").show();parentCard.find(".list").animate({scrollTop:80},1500);$(this).unbind("click")}$("#teacherHomeBottomBar .close").on("click",function(){$("#teacherHomeBottomBar").css("display","none")});$("#recommendedGizmosBar").length>0&&$("#recommendedGizmosBar").slick({slidesToShow:4,dots:!1,infinite:!0,speed:300,slidesToScroll:4,nextArrow:$(".arrow-control.next-arrow .glyphicon"),prevArrow:$(".arrow-control.previous-arrow .glyphicon"),responsive:[{breakpoint:565,settings:{slidesToShow:2,slidesToScroll:2}},{breakpoint:991,settings:{slidesToShow:3,slidesToScroll:3}}]});$(".recommended-gizmos").show();$(window).bind("pageshow",function(t){if(t.originalEvent.persisted){var i=$(".borderless-card.expanded");i.find(".hidden-list-item").hide();i.find(".list").scrollTop(0);i.removeClass("expanded");$(".show-more").on("click",n)}});$(".show-more").on("click",n);$(".founder-message").popover();$(".fixed-bottom-bar").on("click",".getting-started-video",function(){$(".founder-message").popover("hide");$("#videoModal").modal("show")})}function iterateStates(){var t=["AK","AL","AR","AZ","CA","CO","CT","DC","DE","FL","GA","HI","IA","ID","IL","IN","KS","KY","LA","MA","MD","ME","MI","MN","MO","MS","MT","NC","ND","NE","NH","NJ","NM","NV","NY","OH","OK","OR","PA","RI","SC","SD","TN","TX","UT","VA","VI","VT","WA","WI","WV","WY"],n=0;window.setInterval(function(){$(".stateface").attr("class","stateface stateface-"+t[n]);n++},3e3)}function checkUTMCodes(){addUTMCodesToSession();addUTMCodesToExternalLinks();addUTMCodesToForms()}function addUTMCodesToExternalLinks(){var n=getUTMParams();n.length>0&&$('a[href*="blog.explorelearning.com"], a[href*="info.explorelearning.com"], a[href*="help.explorelearning.com"], a[href*="explorelearning.zendesk.com"], a[href*="reflexmath.com"] ').each(function(){var t=$(this).attr("href").split("?"),i;i=1==t.length?t[0]+"?"+n:t[0]+"?"+t[1]+"&"+n;$(this).attr("href",i.replace(/%2B/gi,"+"))})}function addUTMCodesToForms(){var n=$(".utmCodeTracking");n.length>0&&$.each(TRACKED_UTM_VALUES,function(t,i){var r=readCookie(i);r&&n.append('<input type="hidden" name="'+i+'" value="'+r+'">')})}function addUTMCodesToSession(){var t,n;if(document.location.search.length){t=$.getQueryParameters();for(n in t)0===n.indexOf("utm_")&&setCookie(n,t[n],180)}}function getUTMParams(){return paramString="",$.each(TRACKED_UTM_VALUES,function(n,t){var i=readCookie(t);i&&(paramString.length>0&&(paramString+="&"),paramString+=t+"="+i)}),paramString}function initializeCommonValidatorMethods(){jQuery.validator.addMethod("checkHTMLChars",function(n,t){return this.optional(t)||!/<+|>+|\/+/.test(n)},"Invalid characters found.  Characters &gt;, &lt;, and / not allowed.");jQuery.validator.addMethod("forbidCharacter",function(n,t,i){return this.optional(t)||-1==n.indexOf(i[0])},function(n){return"The "+n[0]+" character is not allowed."});jQuery.validator.addMethod("emailWithDot",function(n,t){return this.optional(t)||/^[_'a-zA-Z0-9-]+(\.[_'a-zA-Z0-9-]+)*@[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)*\.(([a-zA-Z]{2,})|(aero|coop|info|museum|name|ae))$/.test(n)},"Please enter a valid email address.");jQuery.validator.addMethod("multipleEmails",function(n,t){var i="[_'a-zA-Z0-9-]+(\\.[_a-zA-Z0-9-]+)*@[a-zA-Z0-9-]+(\\.[a-zA-Z0-9-]+)*\\.(([a-zA-Z]{2,})|(aero|coop|info|museum|name|ae))",r=new RegExp("^"+i+"(\\s*,\\s*"+i+")*\\s*$","g");return this.optional(t)||r.test(n)},"An address above does not follow a valid email address format.");jQuery.validator.addMethod("nameFormatCheck",function(n,t){return this.optional(t)||/^[a-zA-Z\s'-]+$/.test(n)},"Invalid Characters.");jQuery.validator.addMethod("displaynameFormatCheck",function(n,t){return this.optional(t)||/^[a-zA-Z0-9_\.'\-\ \@]+$/.test(n)},"Cannot contain special characters.");jQuery.validator.addMethod("phoneNumberCheck",function(n,t){return this.optional(t)||/^[0-9 \(\)\\.\\-]+$/.test(n)},"Invalid Characters.  Only use numbers, spaces, parentheses, dashes, and periods.");jQuery.validator.addMethod("mustBeTrue",function(n){return"true"==n},"School not selected");jQuery.validator.addMethod("checkSelection",function(n,t){return this.optional(t)||n!=NOT_SELECTED},"School not selected");COMMON_VALIDATION_PARAMETERS={errorClass:"text-danger",errorElement:"em",highlight:function(n){$(n).closest("div").addClass("has-error")},unhighlight:function(n){$(n).closest("div").removeClass("has-error")}}}function getCaseDescription(n,t){var i="";return $.each(t,function(){this.interactivecaseid==n&&(i=this.introText)}),i}function localStorageOutOfDate(n){try{var t=store.get(n).version;return serverLocalStorageVersion>t}catch(n){return!0}}function setCookie(n,t,i){var r=new Date,u;r.setTime(r.getTime()+864e5*i);u="expires="+r.toUTCString();document.cookie=n+"="+t+"; "+u+";path=/;"}function addCharacterCounter(n,t){n.on("keyup paste",function(){var n=$(this);setTimeout(function(){var r=n.val().length,i;r>t&&n.val(n.val().substring(0,t));i=t-r;i<=0?n.siblings().find(".characters-left").text("No "):n.siblings().find(".characters-left").text(i)},0)});n.trigger("keyup")}function notifySuccess(n){$.notify({message:n,target:"_self"},{placement:{align:"center"},type:"success",z_index:99999})}function notifyError(n){$.notify({message:n,target:"_self"},{placement:{align:"center"},type:"danger",z_index:99999})}function notify(n,t){void 0===t&&(t=5e3);$.notify({message:n,target:"_self"},{type:"el",placement:{align:"left",from:"bottom"},delay:t,template:'<div data-notify="container" class="col-xs-10 col-sm-5 col-md-4 alert alert-{0}" role="alert"><button type="button" class="close" data-dismiss="alert" data-notify="dismiss">&times;<\/button><span class="message-content">{2}<\/span><\/div>'})}function printPage(){if(window.print)window.print();else{var n='<OBJECT ID="WebBrowser1" WIDTH=0 HEIGHT=0 CLASSID="CLSID:8856F961-340A-11D0-A96B-00C04FD705A2"><\/OBJECT>';document.body.insertAdjacentHTML("beforeEnd",n);n.ExecWB(6,2)}}function usernameIsTaken(n,t){$.getJSON(AJAX_URL,{method:AJAX_GET_METHOD,a:AJAX_CHECK_USERNAME,id:n},function(n){var i=n.isTaken;t(i)})}function dismissAlert(n,t){$.ajax({type:"POST",url:"index.cfm",dataType:"json",data:{method:"cUserSecure.actUserAlertDismiss",AlertID:n,UserID:t},success:function(){}})}function detectIE(){var n=window.navigator.userAgent,i=n.indexOf("MSIE "),r,t;return i>0?parseInt(n.substring(i+5,n.indexOf(".",i)),10):n.indexOf("Trident/")>0?(r=n.indexOf("rv:"),parseInt(n.substring(r+3,n.indexOf(".",r)),10)):(t=n.indexOf("Edge/"),t>0&&parseInt(n.substring(t+5,n.indexOf(".",t)),10))}function freemiumClassInitialization(){$("#inset_3").on("change",function(){$(".freemium-class-message .student-toggle").toggleClass("active");$(".locked-gizmo-tag, .locked-case-tag").parents(".card-gizmo").toggle();0==$(".freemium-class-page-tag").length&&$(".no-free-gizmos-message").toggle()});$(".freemium-class-message .student-toggle").on("click",function(){$("#inset_3").trigger("click")})}function classSizeCalculations(){if($("#rosterForm").length&&(elTableGroup=$("#rosterForm").parent(".el-table-group"),0!=elTableGroup.find(".select-student").length)){var n=elTableGroup.find(".select-student").filter(":unchecked").length,i=$("#maxStudentSeats").html(),t=parseInt(i)-parseInt(n);t>0?($("#classFullWarning").hide(),$("#addNewStudentButton").removeClass("disabled")):($("#classFullWarning").show(),$("#addNewStudentButton").addClass("disabled"));$("#totalNumStudents").html(n);$("#remainingStudentSeats").html(t)}}function initializeNewClassValidation(){$("#addClassForm").validate({errorClass:"text-danger",errorElement:"em",rules:{addClassForm_shortName:{checkHTMLChars:!0,forbidCharacter:"$"},addClassForm_descName:{checkHTMLChars:!0,forbidCharacter:"$"}},submitHandler:function(n){$(n).find("button.btn-primary").attr("disabled",!0);n.submit()},highlight:function(n){$(n).parent("div").addClass("has-error")},unhighlight:function(n){$(n).parent("div").removeClass("has-error")}})}function initializeEditClassFormValidation(){var n=jQuery.extend({},COMMON_VALIDATION_PARAMETERS);n.rules={editClassForm_shortName:{checkHTMLChars:!0,forbidCharacter:"$"},editClassForm_descName:{checkHTMLChars:!0,forbidCharacter:"$"}};$("#editClassForm").validate(n)}function initializeResetDeleteFormValidation(){var n=jQuery.extend({},COMMON_VALIDATION_PARAMETERS);n.errorPlacement=function(n,t){n.insertAfter(t.parent())};n.messages={resetClassForm_confirm:{required:"Please confirm your action."},deleteConfirm:{required:"Please confirm your action."}};$("#resetClassForm").validate(n);$("#deleteClassForm").validate(n)}function initializeAddStudentValidation(){var n=jQuery.extend({},COMMON_VALIDATION_PARAMETERS);n.rules={addStudentForm_firstName:{checkHTMLChars:!0,nameFormatCheck:!0},addStudentForm_lastName:{checkHTMLChars:!0,nameFormatCheck:!0}};$("#addStudentForm").validate(n)}function setActionButton(n){var t=n.find(".select-student").filter(":checked").length;t?(n.find(".action-button").removeClass("disabled").show(),n.find(".action-count").html("/ "+t)):(n.find(".action-button").addClass("disabled").show(),n.find(".action-count").html(""));n.find(".action-confirm").hide()}function resetMultipleStudents(n){var t="",i=n.find(".select-student").filter(":checked");i.each(function(){t+=$(this).val()+","});successFunction=function(){i.each(function(){$(this).prop("checked",!1).prop("disabled",!0);setProgress($(this).parents("tr"),0,0)});setActionButton(n)};resetStudents(t,successFunction)}function resetSingleStudent(n){userList=$("#studentID").val();successFunction=function(){n.find("tr.data-row").each(function(n){0==n||$(this).hasClass("summary-row")?($(this).find(".progress-col .progress-bar").css("width","0%").find("glyphicon-ok").hide(),$(this).find(".student-percentage").html("0%"),$(this).find(".student-average").html("0.0")):($(this).find(".progress-col").prop("colspan",3).find(".progress").html("LOCKED"),$(this).find(".student-percentage").remove(),$(this).find(".student-average").remove())});setActionButton(n)};resetStudents(userList,successFunction)}function setClassTabSortOrder(n){$.getJSON(AJAX_REQUEST_URL,{method:CLASS_TAB_REORDER_METHOD,classIDList:n},function(n){1!=n.success&&notify("<strong>Error:<\/strong> There was an error while reordering class tabs.  Changes not saved.")},"json")}function resetStudents(n,t){var i=$("#classID").val(),r=$("#resourceID").val();$.getJSON(AJAX_REQUEST_URL,{method:RESET_STUDENTS_METHOD,classID:i,resourceID:r,users:n},function(n){1==n.success?(notify("<strong>Success:<\/strong> Student results reset."),t()):notify("<strong>Error:<\/strong> There was a problem with your request.")})}function upgradeStudent(n,t){var i=$("#classID").val(),r=$("#resourceID").val();$.getJSON(AJAX_REQUEST_URL,{method:UPGRADE_STUDENT_METHOD,classID:i,resourceID:r,userID:n},function(n){1==n.success?(t.hide(),setProgress(t.parent("td").parent("tr"),n.VERSIONPERCENTCOMPLETED,n.VERSIONAVERAGESCORE),notify("Upgrade successful.")):notify("Upgrade failed.")})}function deleteStudents(n,t,i,r){$.post(AJAX_REQUEST_URL,{method:n,classID:t,studentIDs:i},function(n){1==n.success?(notify("<strong>Success:<\/strong> Student(s) deleted."),r()):notify("<strong>Error:<\/strong> There was a problem with your request.")},"json")}function setProgress(n,t,i){n.find(".student-percentage").html(t.toFixed(0)+"%");n.find(".student-average").html(i.toFixed(1));setProgressBar(n,t)}function setProgressBar(n,t){var i=n.find(".progress-bar-success");i.css("width",t+"%");t<100&&i.find(".glyphicon").hide()}function scrollToAssessmentResultsTop(){$(document).scrollTop($("#assessmentQuestionsForm").offset().top-125)}function printAssessmentResults(){$("#assessmentQuestionSummary").addClass("no-print");printPage();$("#assessmentQuestionSummary").removeClass("no-print")}function printAssessmentAnswerSummary(){$(".card.el-table-group").addClass("no-print");printPage();$(".card.el-table-group").removeClass("no-print")}function printAssessmentQuestions(){$(".gizmo-view").addClass("no-print");$("#affixedBarWrap").addClass("no-print");printPage();$(".gizmo-view").removeClass("no-print");$("#affixedBarWrap").removeClass("no-print")}function processAssessmentSubmit(){resourceID=$("#assessmentForm").find('input[name="ResourceID"]').val();questionIDs=$("#assessmentForm").find('input[name="QuestionIDs"]').val();var t=$("#assessmentForm").find('input[type="radio"]:checked'),n="";t.each(function(){n.length>0&&(n+=",");n+=$(this).val()});"true"==saveResults?(0==classIDForResults&&alert("Error: no class ID defined."),saveAssessmentResults(classIDForResults,resourceID,questionIDs,n)):getAssessmentAnswers(resourceID,!0,n,displayAssessmentResults,!1)}function saveAssessmentResults(n,t,i,r){$.post(AJAX_REQUEST_URL,{method:"cResource.saveStudentAssessmentResults",classID:n,questionIDs:i,resourceID:t,assessmentChoiceList:r},function(n){1==n.success?(classname=n.classname,getAssessmentAnswers(t,!0,r,displayAssessmentResults,classname)):notifyError("Problem."+n.message)},"json").fail(function(){$("#resultsWarning").remove();$("#assessmentForm").hide();$("#assessmentResultsViewTop").find("div.clearfix").hide();addAssessmentAnswersToPage('<div class="billboard"><div class="graphic glyphicon glyphicon-remove"><\/div><h1 class="title">You have been logged out due to inactivity.<\/h1><h3>Please <a href="'+elPaths.myself+'cUser.dspLoginJoin">login<\/a> and re-take the assessment questions. <\/h3><\/div>');$(document).scrollTop($("#assessmentQuestionsForm").offset().top)})}function getAssessmentAnswers(n,t,i,r,u){$.post(AJAX_REQUEST_URL,{method:"cResource.getAssessmentAnswers",resourceID:n,answerList:i,checkResults:t},function(n){1==n.success?(LTIRequestID=$("#assessmentForm").find('input[name="LTIRequestID"]').val(),callBackURL=$("#assessmentForm").find('input[name="callBackURL"]').val(),null!=LTIRequestID&&null!=callBackURL?(decimal=n.numofcorrectanswers/n.numofquestions,$.post(callBackURL,{LTIRequestID:LTIRequestID,Grade:decimal,gizmostudentanswer:n.gizmostudentanswer},function(t){t.success?(r(n,u),refreshMathjax()):notifyError("Something Wrong. Please contact the school administrator.")},"json")):(r(n,u),refreshMathjax())):notifyError("There was a problem retreiving the assessment answers."+JSON.stringify(n.errors))},"json")}function refreshMathjax(){MathJax.Hub.Queue(["Typeset",MathJax.Hub])}function displayAssessmentResults(n,t){var r,i,u,f;if($("#resultsWarning").remove(),addAssessmentAnswersToPage(n.html),"undefined"!=typeof studentPreviousResults)for(r=function(n,t){var i=$(n.html).find("#assessmentScorecard table.el-table tbody tr");i.find("td:first-child").html("Saved Results for <strong>"+t+"<\/strong>");$("#assessmentScorecard table.el-table tbody").append("<tr>"+i.html()+"<\/tr>")},t||$("#assessmentScorecard table tbody tr:first-child").addClass("student-duplicate-results").find("td:first-child").html("Current Results NOT Saved  &nbsp;&nbsp;<em>You have already taken this assessment<\/em>"),i=0;i<studentPreviousResults.length;i++)u=studentPreviousResults[i].classname,f=studentPreviousResults[i].answers,resourceID=$("#assessmentForm").find('input[name="ResourceID"]').val(),getAssessmentAnswers(resourceID,!0,f,r,u);t&&$("#assessmentScorecard table tbody .student-answer-your-results").html("Your Results &nbsp;<em>saved for class <strong>"+t+"<\/strong><\/em>");$("#noResultsAlert").hide();$("#assessmentForm").hide().parents(".bg-panel").css("background-color","#F9F9FB");$("#assessmentResultButtons").show();scrollToAssessmentResultsTop()}function addAssessmentAnswersToPage(n){var t=$("#assessmentQuestionResults");t.append($(n));t.show();"undefined"==typeof elUser||elUser.isTeacher||$("#studentName").text(elUser.userFullName)}function addWhatITeachValidationSettings(){$(".whatITeachFormElements .subject-button").each(function(){$(this).rules("add",{messages:{required:"You must choose at least one subject."}})});$(".whatITeachFormElements .grades-checkbox").each(function(){$(this).rules("add",{required:function(){return!$(".classes-checkbox").is(":checked")},messages:{required:"Please choose at least one grade or topic."}})});$(".whatITeachFormElements .classes-checkbox").on("change",function(){$(this).parents("form").valid()});$(".whatITeachFormElements .grades").on("change",function(){$(this).parents("form").valid()})}function displayWhatITeachFormElements(n){var i=n.find("li.active").data("grade"),t,r,u,f;(n.find("div.grades label.checkbox-inline").filter("."+i).length?n.find("div.grades").show():n.find("div.grades").hide(),n.find("div.grades label.checkbox-inline").hide().filter("."+i).show(),"E"==i)?n.find("div.classes").hide():(n.find("div.classes").show(),t=n.find("div.classes label.checkbox-inline"),t.hide(),r=n.find("div.subjects input").first().is(":checked"),u=n.find("div.subjects input").last().is(":checked"),(r||u||(r=!0,u=!0),r)?(f=new RegExp("Math-.*["+i+"].*"),t.filter(function(){return $(this).attr("class").indexOf("Math")>0&&f.test($(this).attr("class"))}).show()):t.filter('[class*=" Math-"]').children("input").prop("checked",!1),u?(f=new RegExp("Science-.*["+i+"].*"),t.filter(function(){return $(this).attr("class").indexOf("Science")>0&&f.test($(this).attr("class"))}).show()):t.filter('[class*=" Science-"]').children("input").prop("checked",!1))}function initializeContactUsForm(){$("#ContactUsForm").validate({errorClass:"text-danger",errorElement:"em",rules:{supportFormUserData:{emailWithDot:!0}},errorPlacement:function(){},highlight:function(n){$(n).closest("div").addClass("has-error")},unhighlight:function(n){$(n).closest("div").removeClass("has-error")},submitHandler:function(n){var t,i,r;$(n).find("#contactUsSubmit").attr("disabled",!0);t=getSupportFormData();for(i in t)r=$("<input>"),r.attr("type","hidden").attr("name",i).val(t[i]),$(n).append(r);n.submit()}});$("#ContactUsForm").on("change keyup focusout",function(){$(this).valid()?$(this).find("button#contactUsSubmit").removeClass("disabled"):$(this).find("button#contactUsSubmit").addClass("disabled")})}function initializeDeleteGizmoListValidation(){var n={errorClass:"text-danger",messages:{deleteConfirm:{required:"Please confirm your action."},stopSharingConfirm:{required:"Please confirm your action"}},errorPlacement:function(n,t){n.insertAfter(t.parent())},errorElement:"em",highlight:function(n){$(n).parent("div").addClass("has-error")},unhighlight:function(n){$(n).parent("div").removeClass("has-error")}};$("#deleteGizmoListForm").validate(n);$("#stopSharingGizmoListForm").validate(n)}function initializeGetLoginFormValidation(){$("#recoverLoginInformationForm").validate({errorClass:"text-danger",errorElement:"em",rules:{emailAddr:{emailWithDot:!0}},highlight:function(n){$(n).parent("div").addClass("has-error")},unhighlight:function(n){$(n).parent("div").removeClass("has-error")}})}function profileInterceptSetVal(){var n=$("#ProfileInterceptForm #schoolID");n.val()&&0==n.val()?$("#notlistedinfo").show():$("#notlistedinfo").hide()}function initializeUpdateProfileValidation(){$("#ProfileInterceptForm #schoolID").on("change",function(){profileInterceptSetVal()});profileInterceptSetVal();$("#ProfileInterceptForm").validate({errorClass:"text-danger",errorElement:"em"})}function initializeUserRegistrationValidation(){$("#userRegistrationForm2").validate({errorClass:"text-danger",errorElement:"em",errorPlacement:function(n,t){$(t).hasClass("subject-button")?$(t).parent("label").parent("div").append(n):$(t).hasClass("grades-checkbox")?(errorDiv=$("#userRegistrationForm2 .whatITeachErrorMessage"),0==errorDiv.children().length&&errorDiv.append(n)):$(t).closest("div").prepend(n)},submitHandler:function(n){$(n).find('button[type="submit"]').addClass("disabled").prop("disabled",!0);n.submit()}});$("#regCodeForm").validate({messages:{regCode:{required:"Please enter a Registration Key."}},errorClass:"text-danger",errorElement:"span"});jQuery.validator.addMethod("checkForSpaces",function(n,t){return this.optional(t)||-1==n.indexOf(" ")});$("#registerForm").validate({ignore:":hidden:not(#usernameUnique)",rules:{cemail:{equalTo:"[name=email]"},password:{minlength:6},cpassword:{equalTo:"[name=password]"},username:{maxlength:50,checkForSpaces:!0}},messages:{cemail:{equalTo:"Email addresses do not match."},password:{minlength:"Passwords must be at least 6 characters long."},cpassword:{equalTo:"Passwords do not match."},schoolID:{required:"Please select your school."},usernameUnique:{required:"Username has already been taken."},username:{checkForSpaces:"Username can't contain spaces."}},errorClass:"text-danger",errorElement:"span",submitHandler:function(n){$(n).find('button[type="submit"]').addClass("disabled").prop("disabled",!0);n.submit()}})}function initializeShareClassGizmosValidation(){$("#shareClassGizmosForm").validate({messages:{shareClassGizmoListForm_sharedTitle:{required:"Please provide a title."},shareClassGizmoListForm_sharedDescription:{required:"Please provide a description."}},rules:{shareClassGizmoListForm_sharedDescription:{checkHTMLChars:!0},shareClassGizmoListForm_sharedTitle:{checkHTMLChars:!0}},errorClass:"text-danger",errorElement:"em",errorPlacement:function(n,t){$(t).hasClass("subject-button")?$(t).parent("label").parent("div").append(n):$(t).hasClass("grades-checkbox")?(errorDiv=$("#shareClassGizmosForm .whatITeachErrorMessage"),0==errorDiv.children().length&&errorDiv.append(n)):$(t).closest("div").prepend(n)}})}function initializeCommentFormValidation(){$("#gizmoCommentForm").validate({errorClass:"text-danger",errorElement:"em",rules:{email:{emailWithDot:!0},message:{checkHTMLChars:!0,maxlength:1e3}}})}function initializeAddRecommendationValidation(){$("#addGizmoRecommendationForm").validate({rules:{addRecommendationForm_comment:{checkHTMLChars:!0}},messages:{addRecommendationForm_comment:{required:"Please enter a comment."}},errorClass:"text-danger",errorElement:"em",errorPlacement:function(n,t){$(t).hasClass("subject-button")?$(t).parent("label").parent("div").append(n):$(t).hasClass("grades-checkbox")?(errorDiv=$("#addGizmoRecommendationForm .whatITeachErrorMessage"),0==errorDiv.children().length&&errorDiv.append(n)):$(t).closest("div").prepend(n)}})}function initializeAddLessonMaterialsValidation(){jQuery.validator.addMethod("checkBadChars",function(n,t){return this.optional(t)||!/<+|>+|\/+/.test(n)},"Invalid characters found.  Characters &gt;, &lt;, and / not allowed.");$("#addLessonMaterialsForm").validate({rules:{addLessonMaterialForm_title:{checkBadChars:!0},addLessonMaterialForm_description:{checkBadChars:!0}},messages:{addLessonMaterialForm_agree:"Check to accept Terms and Conditions",addLessonMaterialForm_title:{required:"Please enter a title"},addLessonMaterialForm_filepath:"File was not supplied or is not of the correct type.",addLessonMaterialForm_description:{required:"Please enter a description"}},errorClass:"text-danger",errorElement:"em",errorPlacement:function(n,t){$(t).hasClass("subject-button")?$(t).parent("label").parent("div").append(n):$(t).hasClass("grades-checkbox")?(errorDiv=$("#addLessonMaterialsForm .whatITeachErrorMessage"),0==errorDiv.children().length&&errorDiv.append(n)):$(t).closest("div").prepend(n)}});$("#editUserLessonMaterial").validate({rules:{lmTitle:{checkBadChars:!0},lmDescription:{checkBadChars:!0}},errorClass:"text-danger",errorElement:"em",errorPlacement:function(n,t){$(t).hasClass("subject-button")?$(t).parent("label").parent("div").append(n):$(t).hasClass("grades-checkbox")?(errorDiv=$("#editUserLessonMaterial .whatITeachErrorMessage"),0==errorDiv.children().length&&errorDiv.append(n)):$(t).closest("div").prepend(n)}})}function initializeWhatITeachValidation(){$("#whatITeachForm").validate({errorClass:"text-danger",errorElement:"em",errorPlacement:function(n,t){$(t).hasClass("subject-button")?$(t).parent("label").parent("div").append(n):(errorDiv=$("#whatITeachForm .whatITeachErrorMessage"),0==errorDiv.children().length&&errorDiv.append(n))}})}function initializeShareEmailValidation(){$("#shareURL-email").validate({errorClass:"text-danger",errorElement:"em",rules:{recipients:{multipleEmails:!0}},submitHandler:function(n){shareURL=getShareURL(UTM_SOURCE_WEBSITE,UTM_MEDIUM_EMAIL);getShortenedURL(shareURL,function(t){$.post(AJAX_URL,{method:$(n).find("[name=method]").val(),linkHREF:t.shortenedURL,linkTitle:$(n).find("[name=linkTitle]").val(),subject:$(n).find("[name=subject]").val(),greeting:$(n).find("[name=greeting]").val(),recipients:$(n).find("[name=recipients]").val(),message:$(n).find("[name=message]").val()},function(n){n.success?notify("<strong>Success:<\/strong> "+n.message[0]):n.message?notify("<strong>Error:<\/strong> "+n.message[0]):notify("<strong>Error:<\/strong> There was a problem with your request.")})});$("#shareEmail").modal("hide")},highlight:function(n){$(n).parent("div").addClass("has-error")},unhighlight:function(n){$(n).parent("div").removeClass("has-error")}})}function getShareURL(n,t){var i=$("#socialCampaign").val(),r=$("#socialContent").val();return $("#shareBaseURL").val()+"&utm_campaign="+i+"&utm_medium="+t+"&utm_source="+n+"&utm_content="+r}function getShortenedURL(n,t){$.post(AJAX_URL,{method:"cUser.actBitlyShortenURL",URL:n},function(n){1==n.success?t(n):n.errors?notify("<strong>Error:<\/strong>"+n.errors[0]):notify("<strong>Error:<\/strong> There was a problem with your request.")},"json")}function initializeTweetValidation(){$("#shareURL-twitter").validate({errorClass:"text-danger",errorElement:"em",submitHandler:function(n){message=$(n).find("[name=message-tweet]").val();getShortenedURL(getShareURL(UTM_SOURCE_TWITTER,UTM_MEDIUM_SOCIAL),function(n){window.open("https://twitter.com/intent/tweet?url="+encodeURIComponent(n.shortenedURL)+"&text="+encodeURIComponent(message)+"&hashtags=gizmos","_blank","width=550, height=420")});$("#shareTwitter").modal("hide")},highlight:function(n){$(n).parent("div").addClass("has-error")},unhighlight:function(n){$(n).parent("div").removeClass("has-error")}})}function initializeFacebookSharing(){var n=encodeURIComponent(getShareURL(UTM_SOURCE_FACEBOOK,UTM_MEDIUM_SOCIAL));$(document.body).on("click","#shareURL-facebook",function(){window.open("http://www.facebook.com/sharer.php?u="+n,"_blank","width=550, height=420")})}function getServerID(){var n=new XMLHttpRequest;return n.open("GET",document.location,!1),n.send(null),n.getAllResponseHeaders().toLowerCase(),n.getResponseHeader("serverID")}function isFullscreen(){return!!(document.fullscreenElement||document.webkitFullscreenElement||document.mozFullScreenElement||document.msFullscreenElement)}function enterFullScreen(){window.scrollTo(0,0);$("#gizmoHolder").closest(".bg-panel").addClass("full-screen-enabled");$(".launch-fullscreen-mode").tooltip("hide");$("#fullscreenModeToolbar").show();$(".launch-fullscreen-mode").hide();$("#belowGizmoButtons").hide();$("body").css("overflow","hidden");resizeGizmo();var n=$("#gizmoHolder").closest(".bg-panel").addClass("full-screen-enabled")[0];n.requestFullscreen?n.requestFullscreen():n.msRequestFullscreen?n.msRequestFullscreen():n.mozRequestFullScreen?n.mozRequestFullScreen():n.webkitRequestFullscreen&&n.webkitRequestFullscreen();resizeGizmo()}function onFullScreenExit(){$(".launch-fullscreen-mode").show();document.fullscreenElement?document.exitFullscreen():document.msFullscreenElement?document.msExitFullscreen():document.mozFullScreenElement?document.mozCancelFullScreen():document.webkitFullscreenElement&&document.webkitExitFullscreen();$("#gizmoHolder").closest(".bg-panel").removeClass("full-screen-enabled");$("#belowGizmoButtons").show();$("body").css("overflow","scroll");$("#fullscreenModeToolbar").hide();$("#openGizmoInfo").popover("hide");resizeGizmo()}function initializeMasteryBasedGizmo(){var n=$("#gizmoHolder"),r=$("#g.html5"),u=n.data("resourceid"),f=encodeURIComponent(n.data("title")),e=encodeURIComponent(elPaths.apiPath),o=elUser.publicUserID,s=n.data("classid"),h=elPaths.amzPath,t=$("<iframe/>",{src:h+"/resources/mbg/loader.html?resourceID="+u+"&title="+f+"&userID="+o+"&classID="+s+"&api="+e,id:"myFrame",frameborder:0,scrolling:"no",title:"Interactive Gizmo"}),i=$.Deferred();t.load(i.resolve);i.done(function(){gizmoOnLoadFired=!0;n.find(".icon-el-line-logo").remove()});i.promise();r.append(t);t.css({width:1024,height:696})}function initializeHTML5Gizmo(){var i=$("#gizmoHolder"),r=$("#g.html5"),u=i.data("resourceid"),f=elPaths.amzPath,n=$("<iframe/>",{src:f+"/resources/html5_new/"+u+"/inner.html",id:"myFrame",frameborder:0,scrolling:"no",title:"Interactive Gizmo"}),t=$.Deferred();n.load(t.resolve);t.done(function(){gizmoOnLoadFired=!0;i.find(".icon-el-line-logo").remove()});t.promise();r.append(n);n.css({width:1024,height:680})}function clearCurrentGizmo(){$("#g.html5 iframe").remove()}function getGizmoIDToLoad(){var n=$("#gizmoHolder").data("resourceid");return-1!=Object.keys(gizmoDuplicates).indexOf(n+"")?gizmoDuplicates[n]:n}function initializeGetterSetterGizmo(){var u=$("#gizmoHolder"),f=$("#g.html5"),e=$("#deployedRelease").val(),t=elPaths.amzPath,i=$("<iframe/>",{src:t+"/resources/html5gs/gizmo-loader.html",id:"gizmoIframe",frameborder:0,scrolling:"no",title:"Interactive Gizmo"}),n,r;f.append(i);n=$("#gizmoIframe")[0];r=n.contentWindow?n.contentWindow:n.contentDocument.defaultView;$("#gizmoIframe").on("load",function(){var n={messageName:"loadGizmo",gizmoID:getGizmoIDToLoad(),releaseVersion:e,basePath:t};r.postMessage(n,t);u.find(".icon-el-line-logo").remove()});i.css({width:1024,height:680});$("#g.html5").css({width:1024,height:680})}function resizeIframe(){iframeHolder=$("#gizmoHolder #g");iframe=$("#g.html5 iframe");var n=Number(iframe.height()),t=Number(iframe.width()),i=(n/iframeHolder.height()).toFixed(4);iframe.css({transform:"translate(-"+t/2+"px,-"+n/2+"px) scale("+1/i+","+1/i+") translate("+t/2+"px,"+n/2+"px)","-ms-transform":"translate(-"+t/2+"px,-"+n/2+"px) scale("+1/i+","+1/i+") translate("+t/2+"px,"+n/2+"px)","-webkit-transform":"translate(-"+t/2+"px,-"+n/2+"px) scale("+1/i+","+1/i+") translate("+t/2+"px,"+n/2+"px)"})}function resizeWrapper(){var u=$("#gizmoHolder #g"),r=$("#g .wrapper"),n=(parseFloat(u.data("ratio")),Number(r.height())),i=Number(r.width()),f=u.height(),t=(n/f).toFixed(2);savedScale=t;r.css({transform:"translate(-"+i/2+"px,-"+n/2+"px) scale("+1/t+","+1/t+") translate("+i/2+"px,"+n/2+"px)","-ms-transform":"translate(-"+i/2+"px,-"+n/2+"px) scale("+1/t+","+1/t+") translate("+i/2+"px,"+n/2+"px)","-webkit-transform":"translate(-"+i/2+"px,-"+n/2+"px) scale("+1/t+","+1/t+") translate("+i/2+"px,"+n/2+"px)"})}function resizeGizmo(){var t=$("#gizmoHolder"),n=$("#g.scale");if(t.length&&n.length){var u=parseFloat(n.data("ratio")),i=$(this).height()-n.offset().top-30,r=(t.width()-10)/u,f=t.width()-10;r>i&&(r=i,f=i*u);n.height(r).width(f);$(this).scrollTop()>n.offset().top&&$(this).scrollTop($("#affixedBarWrap").offset().top);n.hasClass("html5")&&resizeIframe();n.width()+90<$(window).width()?$("#fullscreenModeToolbar").removeClass("fullscreen-toolbar-portrait").addClass("fullscreen-toolbar-landscape"):$("#fullscreenModeToolbar").removeClass("fullscreen-toolbar-landscape").addClass("fullscreen-toolbar-portrait")}}function launchFixedSize(n,t,i){var f=elPaths.amzPath,r=document.createElement("iframe"),o=n?2048:1024,s=n?1360:680,u,e;r.src=f+"/resources/html5gs/gizmo-loader.html";r.id="gizmoIframe";r.style.width=o+"px";r.style.height=s+"px";r.frameborder=0;r.scrolling="no";r.style.border="none";document.body.style.margin=0;document.body.style.padding=0;document.body.style.overflow="auto";document.body.innerHTML="";document.body.appendChild(r);u=$("#gizmoIframe")[0];e=u.contentWindow?u.contentWindow:u.contentDocument.defaultView;$("#gizmoIframe").on("load",function(){var n={messageName:"loadGizmo",gizmoID:t,releaseVersion:i,basePath:f};e.postMessage(n,f)})}function createPresetObject(n){var t=JSON.stringify(n);return'{"id" : '+resourceID+', "releaseVersion": "'+releaseVersion+'", "data" : '+t+" }"}function numBytes(n){var i=encodeURI(n),t;return-1!=i.indexOf("%")?(t=i.split("%").length-1,t=0==t?1:t,t+=i.length-3*t):t=i.length,t}function receiveMessage(n){var t,r,i;if(n.origin==elPaths.amzPath){t=n.data;switch(t.messageName){case"getterData":t.source==GETTER_SRC_DEBUG?(addDataToDebugWindow(lastSavedGizmoState=t.contents),notify("Get Complete.",500)):t.source==GETTER_SRC_PRESET?(r=$("#presetTitle").val().trim(),savePreset(elUser.userID,resourceID,r,createPresetObject(t.contents))):t.source==GETTER_SRC_INITIALIZE?(initialGizmoState=t.contents,addDataToDebugWindow(lastSavedGizmoState=initialGizmoState)):t.source==GETTER_SRC_PRESET_TEST?iteratePCTReceive(JSON.stringify(t.contents,null,3)):t.source==GETTER_SRC_PAUSE&&pauseGizmo(t.contents);break;case"cameraList":addCamerasToDebugWindow(JSON.parse(t.contents));break;case"cameraData":showScreenShot(t.contents);break;case"activityScreenshot":addImageToActivity(t.contents);break;case"errorReported":i=t.contents;pctInProgress&&pctRegisterError(i);debugModeEnabled?notifyError("<strong>Error In Gizmo:<\/strong> "+i,1e3):userPresetErrorNotification(t);break;default:window.console.log("Unknown message passed to getter-setter.js")}}}function userPresetErrorNotification(n){logPresetError("Preset failed for Gizmo: "+resourceID+".  Error Message: "+n.contents)}function logPresetError(n){$.ajax({method:"POST",url:AJAX_REQUEST_URL,data:{method:ERROR_LOG_ENDPOINT,type:"ERROR",subsystem:"PRESET",message:n}}).done(function(){}).fail(function(){})}function hidePresetBar(){$("#presetID").val("");$("#newPreset").collapse("hide");$("#presetTitle").val("");$("#newPreset .delete-preset-btn").removeClass("confirm").find(".confirm-text").remove();$("#newPreset .save-btn").text("Save");$("#newPreset .title-action").text("Add New Preset")}function initializePresets(){releaseVersion=$("#deployedRelease").val();$("#presetTitleForm").validate({errorElement:"em",errorClass:"text-danger",errorPlacement:function(n,t){n.insertAfter(t.parent())},submitHandler:function(){var n=$("#presetID").val();return n?renamePreset(n,$("#presetTitle").val()):getGizmoData(GETTER_SRC_PRESET),$("#newPreset").collapse("hide"),!1}});var n=function(n){var t=$("#newPreset");t.is(n.target)||0!=t.has(n.target).length||hidePresetBar()};$("#newPreset").on("show.bs.collapse",function(){$(document).bind("mouseup",n)});$("#newPreset").on("shown.bs.collapse",function(){$("#presetTitle").focus()});$("#newPreset").on("hide.bs.collapse",function(){$(document).unbind("mouseup",n)});$(".new-preset-btn").on("click",function(){initiatePause();$("#lessonInfo").collapse("hide");$("#newPreset .delete-preset-btn").hide()});$(".edit-bar").on("click",".close-btn",function(){hidePresetBar()});$(".list-of-presets").on("click",".preset-menu",function(){var n=$(this).siblings("a").data("id"),t=$(this).siblings("a").text();$("#presetTitle").val(t);$("#presetID").val(n);$("#newPreset .save-btn").text("Rename");$("#newPreset .delete-preset-btn").show();$("#newPreset").collapse("show");$("#newPreset .title-action").text("Edit Preset")});$("#newPreset .delete-preset-btn").on("click",function(n){if($(this).hasClass("confirm")){var t=$("#presetID").val();deletePreset(t,($(".list-of-presets").find("li.id-"+t).remove(),0==$(".list-of-presets .saved-preset").length&&($(".gs-btns").hide(),$(".new-preset").show()),notify("Gizmo Preset Deleted",500),void hidePresetBar()));$("#newPreset").collapse("hide")}else $(this).addClass("confirm"),$(this).append($("<span>").addClass("confirm-text").text("  �Confirm"));n.preventDefault()});$(".list-of-presets").on("click",".saved-preset > a",function(){loadPreset($(this).data("id"))});$("#pauseGizmo").on("click",initiatePause);$(".list-of-presets").length>0&&loadSavedPresets(elUser.userID,resourceID)}function presetTitleLengthCheck(n){return n.length>PRESET_TITLE_DISPLAY_LIMIT?n.substring(0,PRESET_TITLE_DISPLAY_LIMIT)+"... ":n}function getPresetListEntry(n,t,i){var r=presetTitleLengthCheck(n);return debugModeEnabled&&(r+=' -&nbsp;<span class="text-muted">'+i+"<\/span>"),$("<li>").addClass("saved-preset").addClass("id-"+t).append($("<a>").html(r).data("id",t)).append(presetMenu)}function loadAllPresets(n,t,i){makeRequest("get",{method:AJAX_PRESET_ENDPOINT,act:"getAll",resourceID:n,username:t},i)}function loadPreset(n){makeRequest("get",{method:AJAX_PRESET_ENDPOINT,act:"load",id:n},function(n){setGizmoData(JSON.parse(n.data).data)})}function deletePreset(n,t){makeRequest("post",{method:AJAX_PRESET_ENDPOINT,act:"delete",id:n},t)}function renamePreset(n,t){makeRequest("post",{method:AJAX_PRESET_ENDPOINT,act:"rename",id:n,title:t},function(){$(".list-of-presets li.id-"+n+" a").text(t);notify("Gizmo Preset Modified",500);hidePresetBar()})}function loadSavedPresets(n,t){makeRequest("get",{method:AJAX_PRESET_ENDPOINT,act:"get",userID:n,resourceID:t},function(n){var i=$(".list-of-presets .dropdown-header"),t;for(n.viewstates.length>0&&$(".no-saved-presets").hide(),t=0;t<n.viewstates.length;t++)i.after(getPresetListEntry(n.viewstates[t].title,n.viewstates[t].id,n.viewstates[t].version));$(".fullscreen-presets .preset-menu").remove();$('.header .list-of-presets [data-rel="tooltip"]').tooltip({})})}function savePreset(n,t,i,r){var u=releaseVersion;debugModeEnabled&&(u=$("#loadedGizmoVersion").text());makeRequest("post",{method:AJAX_PRESET_ENDPOINT,act:"save",id:0,title:i,resourceID:t,userID:n,gizmoVersion:u,data:r},function(n){notify("Gizmo Preset Saved");$(".new-preset").hide();$(".gs-btns").show();$(".list-of-presets .dropdown-header").after(getPresetListEntry(i,n.id));$(".fullscreen-presets .preset-menu").remove();$('.header .list-of-presets [data-rel="tooltip"]').tooltip({});hidePresetBar()})}function makeRequest(n,t,i){$.ajax({method:n,dataType:"json",url:AJAX_REQUEST_URL,data:t}).done(function(n){n.success?i&&i(n):n.errors||notifyError("There was a problem with your request.  Check to make sure you are still logged in.")})}function checkIframeWindow(){if(!iframeWindow){var n=$("#gizmoIframe")[0];iframeWindow=n.contentWindow?n.contentWindow:n.contentDocument.defaultView}}function resetIframewindow(){iframeWindow=null}function getGizmoData(n){checkIframeWindow();var t={messageName:"get",parentOrigin:elPaths.myself,source:n};iframeWindow.postMessage(t,elPaths.amzPath)}function setGizmoData(n){checkIframeWindow();var t={messageName:"set",contents:n};iframeWindow.postMessage(t,elPaths.amzPath)}function initiatePause(){checkIframeWindow();var n={messageName:"get",parentOrigin:elPaths.myself,source:GETTER_SRC_PAUSE};iframeWindow.postMessage(n,elPaths.amzPath)}function pauseGizmo(n){if(-1!=Object.keys(n).indexOf("Controls")){var t=n.Controls.values;-1!=Object.keys(t).indexOf("play")&&-1!=Object.keys(t).indexOf("pause")&&t.play&&1!=t.pause&&(t.play=!1,t.pause=!0,setGizmoData(n))}}function resetGizmo(){checkIframeWindow();iframeWindow.postMessage({messageName:"reset",contents:""},elPaths.amzPath)}function getListOfCameras(){checkIframeWindow();var n={messageName:"cameraList",parentOrigin:elPaths.myself,contents:""};iframeWindow.postMessage(n,elPaths.amzPath)}function cameraCapture(n){checkIframeWindow();var t={messageName:"cameraCapture",parentOrigin:elPaths.myself,contents:n};iframeWindow.postMessage(t,elPaths.amzPath)}function activityScreenshot(){checkIframeWindow();var n={messageName:"activityScreenshot",parentOrigin:elPaths.myself,contents:SCREENSHOT_CAMERA_ID};iframeWindow.postMessage(n,elPaths.amzPath)}function validateObject(n,t){if("object"!=typeof t)return{valid:!1,trace:"No object found for key "+n};for(var u=!0,r=["values","caption","common","componentname","settable"],f="",i=0;i<r.length;i++)r[i]in t||(u=!1,f+="Expected key "+r[i]+" missing\n");return{valid:u,trace:f}}function addDataToDebugWindow(n){function r(n,t){return void 0===t&&(t="-"),void 0===n?$('<span class="glyphicon glyphicon-minus" data-toggle="tooltip" title="Undefined"><\/span>'):"string"==typeof n&&"true"==n||"boolean"==typeof n&&n?$('<span class="glyphicon glyphicon-ok" data-toggle="getset" data-key="'+t+'" data-value="false"><\/span>'):$('<span class="glyphicon glyphicon-remove" data-toggle="getset" data-key="'+t+'" data-value="true"><\/span>')}function u(n,t,i,u,f,e,o){var s=$("<tr>"),h=$("<td>").text(n),c;return(i&&t.valid&&(h=$("<td>").html('<span data-toggle="tooltip" title="'+u+'">'+n+"<\/span>")),i||h.append(' <span class="glyphicon glyphicon-flag" data-toggle="tooltip" title="Not a Common Element"><\/span>'),t.valid||(h.css("color","red"),h.attr("data-toggle","tooltip").attr("title",t.trace)),s.append(h),jQuery.isEmptyObject(f)||"string"==typeof f)?c="-":"value"in f&&1==Object.keys(f).length?c=f.value:(c=$("<button>").text("V").addClass("btn btn-xs btn-default values-popover")).attr("data-toggle","popover").attr("data-placement","right").attr("data-html","true").attr("data-container",".gizmo-debug-bar").attr("data-content","<pre class='gizmo-debug-window'>"+JSON.stringify(f,null,"\t")+"<\/pre>"),s.append($("<td>").append(c)),s.append($("<td>").append(r(e,"visible"))),s.append($("<td>").append(r(o,"enabled"))),s}var i,t;$("#editGSData .raw-data").val(JSON.stringify(n,null,3));$("#setEditedData").on("click",function(){setGizmoData($("#editGSData textarea").val());$("#editGSData").modal("hide")});i=$("#gizmoDebugWindow #getterData table");for(key in i.find("tr:not(:first-child)").remove(),n)t=n[key],i.append(u(key,validateObject(key,t),t.common,t.componentname,t.values,t.visible,t.enabled));$(".values-popover").popover({});$('#gizmoDebugWindow [data-toggle="tooltip"]').tooltip({})}function addCamerasToDebugWindow(n){for(var r,u,i=Object.keys(n),t=0;t<i.length;t++)r=n[i[t]].caption,u=n[i[t]].id,$(".gizmo-camera-window").append('<li><a href="#" data-cameraid="'+u+'">'+r+"<\/a><\/li>");$(".gizmo-camera-window").on("click","[data-cameraid]",function(){cameraCapture($(this).data("cameraid"))})}function pctRegisterError(n){pctParameters&&pctParameters.results[pctParameters.currentIndex].errors.push(n)}function iteratePCTSend(){var n,t;pctParameters&&(n=pctParameters.currentIndex,setGizmoData(pctParameters.testData[n].data),t=n+1+"/"+pctParameters.testData.length,$(".pct-current-preset").text(t),setTimeout(function(){getGizmoData(GETTER_SRC_PRESET_TEST)},pctParameters.timeBetweenPresets))}function iteratePCTReceive(n){pctParameters&&(pctParameters.results[pctParameters.currentIndex].data=n,pctParameters.currentIndex<pctParameters.testData.length-1?(pctParameters.currentIndex+=1,iteratePCTSend()):pctParameters.callback())}function searchAllOriginalPresets(n,t){for(var i,u=!1,r=0;r<pctParameters.testData.length;r++)i=pctParameters.testData[r].data,t.forEach(function(r,f){null!=i&&i.hasOwnProperty(r)&&(i=i[r],f==t.length-1&&i==n&&(u=!0))});return u}function iterateObject(n,t,i,r,u,f){var c=f?"Returned Preset":"Original Preset",s,o,h,e;if(null!=t){for(e in n)s=Array.isArray(n)?0==i.length?e:i+"["+e+"]":0==i.length?e:i+"->"+e,"object"!=typeof t?r.push(s+" expecting object, but found: "+typeof t):e in t?n.hasOwnProperty(e)&&t.hasOwnProperty(e)&&("object"==typeof n[e]?null==n[e]?n[e]="<span class='"+STRUCTURE_WARNING_CLASS+"'><strong>NULL<\/strong><\/span>":iterateObject(n[e],t[e],s,r,u,f):(o=typeof n[e],h=typeof t[e],o!=h?u.push(s+": object types differ ("+o+"/"+h+")"):"string"!=o&&"number"!=o&&"boolean"!=o||("string"==o?n[e].trim()!=t[e].trim()&&(u.push("Values differ:  "+s+"  ('"+n[e]+"' / '"+t[e]+"')"),n[e]="<span class='"+DIFF_VALUE_CLASS+"'>"+n[e]+"<\/span>"):"number"==o?n[e]!=t[e]&&Math.abs(n[e]-t[e])>ROUNDING_THRESHOLD&&(u.push("Values Differ:  "+s+"  ( "+n[e]+" / "+t[e]+" )"),n[e]="<span class='"+DIFF_VALUE_CLASS+"'>"+n[e]+"<\/span>"):"boolean"==o&&n[e]!=t[e]&&(u.push("Values Differ: "+s+"  &nbsp; ( "+n[e]+" / "+t[e]+" )"),n[e]="<span class='"+DIFF_VALUE_CLASS+"'>"+n[e]+"<\/span>")))):r.push(s+" not found in "+c);if(null!=t)for(e in t)null==n||e in n||(n[e]="<span class='"+STRUCTURE_WARNING_CLASS+"'><strong>MISSING<\/strong><\/span>")}else r.push(i+" expecting object, but found: null")}function pctAddErrorMessage(n,t,i,r,u){var f=$('<li class="list-group-item list-group-item-danger pct-error-'+n+'" data-preset-title="'+t+'"><\/li>"'),e;f.append('<p class="pull-right"><small>preset version: '+i+"<\/small><\/p>");f.append("<p><strong>"+t+"<\/strong><\/p>");f.append('<p class="error-body">'+r+"<\/p>");e=$('<p class="error-icons"><\/p>');e.append('<a href="#" data-action="view" data-target="'+n+'"><span class="glyphicon glyphicon-new-window"><\/span> View<\/a> &nbsp; &nbsp;');e.append('<a href="#" data-action="copy" data-target="'+n+'"><span class="glyphicon glyphicon-copy"><\/span> Copy<\/a> &nbsp; &nbsp;');e.append('<a href="#" data-action="set" data-target="'+n+'"><span class="glyphicon glyphicon-import"><\/span> Set<\/a>');f.append(e);f.append('<textarea class="original-preset" style="display: none;">'+u+"<\/textarea>");$(".error-report").append(f)}function pctAddWarningMessage(n,t,i,r,u,f,e,o){var s=$('<li class="list-group-item list-group-item-warning pct-error-'+n+'" data-preset-title="'+t+'"><\/li>"'),h;s.append('<p class="pull-right"><small>preset version: '+i+"<\/small><\/p>");s.append("<p><strong>"+t+"<\/strong><\/p>");r.length>0&&(s.append("<p class='pct-error-title'><a href='#valueErrorsCollapse"+n+"' data-toggle='collapse'><span class='glyphicon glyphicon-warning-sign'><\/span> &nbsp;Value Differences  <span class='pct-error-count'>"+r.length+"<\/span><\/a><\/p>"),s.append("<p class='pct-errors collapse' id='valueErrorsCollapse"+n+"'>"+r.join("<br>")+"<\/p>"));u.length>0&&(s.append("<p class='pct-error-title'><a href='#structureErrorsCollapse"+n+"' data-toggle='collapse'><span class='glyphicon glyphicon-warning-sign'><\/span> &nbsp; Missing or Inconsistent Values <span class='pct-error-count'>"+u.length+"<\/span><\/a><\/p>"),s.append("<p class='pct-errors collapse' id='structureErrorsCollapse"+n+"'>"+u.join("<br>")+"<\/p>"));h=$('<p class="error-icons"><\/p>');h.append('<a href="#" data-action="compare" data-target="'+n+'"><span class="glyphicon glyphicon-new-window"><\/span> View<\/a> &nbsp; &nbsp;');h.append('<a href="#" data-action="copy" data-target="'+n+'"><span class="glyphicon glyphicon-copy"><\/span> Copy<\/a> &nbsp; &nbsp;');h.append('<a href="#" data-action="set" data-target="'+n+'"><span class="glyphicon glyphicon-import"><\/span> Set<\/a>');s.append(h);s.append('<textarea class="original-preset" style="display: none;">'+f+"<\/textarea>");s.append('<pre class="original-preset-annotated" style="display: none;">'+e+"<\/pre>");s.append('<pre class="returned-preset-annotated" style="display: none;">'+o+"<\/pre>");$(".error-report").append(s)}function pctAddEventListeners(){$("#gizmoDebugWindow").on("click","[data-action]",function(){var i=$(this).data("action"),n=$(this).data("target");if("compare"==i){var t=$(".pct-error-"+n+" .original-preset-annotated").html(),u=$(".pct-error-"+n+" .returned-preset-annotated").html(),r=$(".pct-error-"+n).data("preset-title");$("#pctCompareResults .preset-original").html(t);$("#pctCompareResults .preset-returned").html(u);$("#pctCompareResults .preset-title").text(r);$("#pctCompareResults").modal("show")}else"view"==i?(t=$(".pct-error-"+n+" .original-preset").html(),r=$(".pct-error-"+n).data("preset-title"),$("#pctViewResults .preset-original").html(t),$("#pctViewResults .preset-title").text(r),$("#pctViewResults").modal("show")):"copy"==i?((t=$(".pct-error-"+n+" .original-preset")).show(),copyVisibleText(".pct-error-"+n+" .original-preset"),t.hide()):"set"==i&&setGizmoData(t=$(".pct-error-"+n+" .original-preset").text())})}function addToSummaryTab(n){var f=$("#pctSummary table"),t=[],u,i,r;for(u in n)t.push([u,n[u]]);for(t.sort(function(n,t){return t[1]-n[1]}),i=0;i<t.length;i++)r=$("<tr><\/tr>"),r.append("<td>"+t[i][1]+"<\/td>"),r.append("<td>"+t[i][0]+"<\/td>"),f.append(r)}function analyzePCTResults(){function o(n){for(var i,t=0;t<n.length;t++)i=n[t],-1==Object.keys(r).indexOf(i)?r[i]=1:r[i]+=1}var i,n;for(pctAddEventListeners(),i=pctParameters.testData.length,n=0;n<i;n++){var t=pctParameters.results[n],l=pctParameters.testData[n].data,a=JSON.parse(t.data);pctParameters.testData[n].originalPresetAnnotated=JSON.parse(JSON.stringify(pctParameters.testData[n].data));pctParameters.testData[n].returnedPresetAnnotated=JSON.parse(pctParameters.results[n].data);iterateObject(pctParameters.testData[n].originalPresetAnnotated,a,"",pctParameters.results[n].structureCompare,pctParameters.results[n].valueCompare,!0);iterateObject(pctParameters.testData[n].returnedPresetAnnotated,l,"",pctParameters.results[n].structureCompare,[],!1)}$(".total-presets-analyzed").text(i);$(".error-report").empty();var u=0,f=0,e=0,r={};for(n=0;n<i;n++){t=pctParameters.results[n];var s=pctParameters.testData[n].title,h=pctParameters.testData[n].version,v=JSON.stringify(pctParameters.testData[n].returnedPresetAnnotated,null,3),c=JSON.stringify(pctParameters.testData[n].data,null,3),y=JSON.stringify(pctParameters.testData[n].originalPresetAnnotated,null,3);t.errors.length>0?(u+=1,pctAddErrorMessage(n,s,h,t.errors[0],c)):(t.structureCompare.length>0||t.valueCompare.length>0)&&(t.structureCompare.join("<br>"),t.valueCompare.join("<br>"),o(t.structureCompare),o(t.valueCompare),pctAddWarningMessage(n,s,h,t.valueCompare,t.structureCompare,c,y,v),t.structureCompare.length&&(f+=1),t.valueCompare.length&&(e+=1))}$(".error-test-total").text(u);$(".warnings-total").text(f+e);$(".no-test-results").hide();$(".test-results").show();$("#gizmoDebugWindow").show();$(".pct-results-tab-handle.results").tab("show");addToSummaryTab(r);$(".run-pct").attr("disabled",!1);pctParameters=null;pctInProgress=null}function startPresetCompatabilityTest(n,t,i){var r,u;for(pctInProgress=!0,pctParameters={testData:[],currentIndex:0,results:[],callback:t,timeBetweenPresets:i},r=0;r<n.length;r++)try{presetData=JSON.parse(n[r].data);u="N/A";-1!=Object.keys(presetData).indexOf("releaseVersion")&&(u=presetData.releaseVersion);pctParameters.testData.push({title:n[r].title,version:u,data:presetData.data});pctParameters.results.push({data:"NULL",errors:[],structureCompare:[],valueCompare:[]})}catch(n){notifyError("Preset found with incorrect JSON. See console.",800)}iteratePCTSend()}function copyVisibleText(n){document.querySelector(n).select();try{document.execCommand("copy")&&notify("Data copied to clipboard.",500)}catch(n){notifyError("There was a problem copying the data",800)}$(n).blur()}function initializeGSDebug(n){var i,t,r;window.setTimeout(function(){getGizmoData(GETTER_SRC_INITIALIZE);getListOfCameras()},3e3);loadAllPresets(n,LOAD_PRESETS_ALL_USERS,function(n){$(".total-presets").text(n.viewstates.length);0==(allSavedPresets=n.viewstates).length&&$(".run-pct-all").attr("disabled",!0)});loadAllPresets(n,elUser.userName,function(n){$(".total-presets-mine").text(n.viewstates.length);0==(mySavedPresets=n.viewstates).length&&$(".run-pct-mine").attr("disabled",!0)});$(".run-pct-all").on("click",function(){$(".run-pct-all,.run-pct-mine").attr("disabled",!0);$(".error-report").empty();var n=$("#pctDuration").val();startPresetCompatabilityTest(allSavedPresets,analyzePCTResults,n)});$(".run-pct-mine").on("click",function(){$(".run-pct-all,.run-pct-mine").attr("disabled",!0);$(".error-report").empty();var n=$("#pctDuration").val();startPresetCompatabilityTest(mySavedPresets,analyzePCTResults,n)});window.onerror=function(n){return notifyError("Gizmo Error: "+n,1e3),!1};$("#gsGet").on("click",function(){getGizmoData(GETTER_SRC_DEBUG)});$(".copy-gs-data").on("click",function(){$("#editGSData.in").length>0?copyVisibleText(".raw-data"):($("#editGSData").toggle(),copyVisibleText(".raw-data"),$("#editGSData").toggle())});$("#gsSet").on("click",function(){lastSavedGizmoState&&(addDataToDebugWindow(lastSavedGizmoState),setGizmoData(lastSavedGizmoState))});$(".toggle-debug-window").on("click",function(){$("#gizmoDebugWindow").toggle()});$(".minimize-debug-window").on("click",function(){$("#gizmoDebugWindow").toggleClass("minimized");$(this).toggleClass("glyphicon-remove").toggleClass("glyphicon-fullscreen")});i=$("<span/>",{"class":"text-muted",html:" ("+n+")"});$("#affixedBarWrap .header h1").append(i);$("#gizmoDebugWindow").on("click",'[data-toggle="getset"]',function(){var n=$.trim($(this).parents("tr").find("td:first-child").text()),i=$(this).data("value"),t=$(this).data("key");"-"!=t&&(lastSavedGizmoState[n][t]=i,addDataToDebugWindow(lastSavedGizmoState),setGizmoData(function(n){var t=lastSavedGizmoState[n];return'{ "'+n+'" : '+JSON.stringify(t)+" }"}(n)))});$("#gsRefresh").on("click",function(){resetGizmo()});t=["checked","selected","value"];r=function(n,t){switch(n){case"checked":return!t;case"selected":return 0==t?1:0;case"value":return"string"==typeof t?""+(parseInt(t)+1):t+1;default:return t}};$("#runGSAutomation").on("click",function(){var n=JSON.parse(getterSetter.get()),i,f,u,e,o;for(i in getterSetter.set(JSON.stringify(n)),n=JSON.parse(getterSetter.get()))if(n[i].settable&&"Table"!=i)for(f=0;f<t.length;f++)u=t[f],u in n[i].values&&(e=n[i].values[u],n[i].values[u]=r(u,e),getterSetter.set(JSON.stringify(n)),o=JSON.parse(getterSetter.get()),JSON.stringify(n[i]),JSON.stringify(o[i]),n[i].values[u]=e,getterSetter.set(JSON.stringify(n)))})}function addImageToActivity(n){var t=document.createElement("img");$(t).attr("src",n).addClass("img-responsive");$(".saved-screenshots").append(t)}function showScreenShot(n){var t=document.createElement("img");$(t).attr("src",n).addClass("img-responsive");$(".gizmo-screenshot-modal .modal-dialog").css("width","55vw");$(".gizmo-screenshot-modal .modal-body").empty().append(t);$(".gizmo-screenshot-modal").modal("show")}function addTeacherProp(n){var t=[],i=1,r;for(r in n)t.push({id:n[r],hasRole:user.hasRole,sortOrder:i}),i++;return t}function applyFilter(n){currentFilter=n;var t=$(".card-gizmo"),i=0;"all"===n?t.removeClass("hide"):t.each(function(){var t=$(this);t.hasClass("card-gizmo-"+n)?t.removeClass("hide"):(t.addClass("hide"),++i)});i>=t.length?$(".emptyMsg").length||displayArea.append($("<h3>").addClass("emptyMsg").text("No Gizmos match your search criteria.")):$(".emptyMsg").remove()}function changeBtnText(n,t){n.empty();n.append(t+" ");n.append($("<span>").addClass("caret"))}function changeHeader(n){$("div.page-header h2.title").html('Browse by Grade &amp; Topic <span class="sub">'+n.trim()+"<\/span>")}function constructDropdown(n,t){var u=Object.keys(t).sort(function(n,i){return t[n].sortOrder-t[i].sortOrder}),i=n.parent().children(".dropdown-menu"),f,r;for(f in i.empty(),u)r=u[f],i.append($("<li>").append($("<a>").attr({"data-target":"#","data-value":r,href:"#"}).append(r)));i.append($("<li>").addClass("divider").attr("role","presentation"));i.append($("<li>").append($("<a>").attr({"data-target":"#","data-value":"All",href:"#"}).append("<em>All "+n.data("label")+"<\/em>")));n.removeClass("hide")}function disableDependents(n){n.addClass("hide");n.parent().children(".dropdown-menu").empty();changeBtnText(n,"All "+n.data("label"));n.data("value","All");var t=n.data("dependent");void 0!==t&&disableDependents($("#"+t))}function gizmoTreeToList(n){var i=[],t;for(t in n)i=n[t].gradeLevels?i.concat(gizmoTreeToList(n[t].gradeLevels)):n[t].topics?i.concat(gizmoTreeToList(n[t].topics)):n[t].subtopics?i.concat(gizmoTreeToList(n[t].subtopics)):n[t].resources?i.concat(gizmoTreeToList(n[t].resources)):i.concat(n[t]);return i}function interpretParam(){try{var t,r=decodeURIComponent($.urlParam("browse")),n=(r=r.replace(/\+/g," ")).split("/"),i=null;"null"!==r&&"0"!==n[0]?(t=store.enabled?store.get("browseTree").tree.subjects:localStorageBackup.browseTree.tree.subjects,n.length>=1&&t[n[0]]?(i=0,t=t[n[0]].gradeLevels,browseBtn=$("#browse-subject"),changeBtnText(browseBtn,n[0]),browseBtn.data("value",n[0]),browseBtn.attr("data-value",n[0]),dependent=$("#"+browseBtn.data("dependent")),constructDropdown(dependent,t)):$("#browse-gradeLevel").addClass("hide"),n.length>=2&&t[n[1]]?(i=1,t=t[n[1]].topics,browseBtn=$("#browse-gradeLevel"),browseBtn.removeClass("hide"),changeBtnText(browseBtn,n[1]),browseBtn.data("value",n[1]),browseBtn.attr("data-value",n[1]),dependent=$("#"+browseBtn.data("dependent")),constructDropdown(dependent,t)):$("#browse-topic").addClass("hide"),n.length>=3&&t[n[2]]?(i=2,t=t[n[2]].subtopics,browseBtn=$("#browse-topic"),browseBtn.removeClass("hide"),changeBtnText(browseBtn,n[2]),browseBtn.data("value",n[2]),browseBtn.attr("data-value",n[2]),dependent=$("#"+browseBtn.data("dependent")),constructDropdown(dependent,t)):$("#browse-subTopic").addClass("hide"),n.length>=4&&t[n[3]]&&(i=3,t=t[n[3]].resources,browseBtn=$("#browse-subTopic"),browseBtn.removeClass("hide"),changeBtnText(browseBtn,n[3]),browseBtn.data("value",n[3]),browseBtn.attr("data-value",n[3])),i&&changeHeader(n[i]),$("#browse-results").empty(),el.gizmoHelper.displayGizmos(addTeacherProp(gizmoTreeToList(t)),$("#browse-results"),"horizontalTemplate","sortOrder")):($("#browse-results").empty(),store.enabled?el.gizmoHelper.displayGizmos(addTeacherProp(gizmoTreeToList(store.get("browseTree").tree.subjects)),$("#browse-results"),"horizontalTemplate","sortOrder"):el.gizmoHelper.displayGizmos(addTeacherProp(gizmoTreeToList(localStorageBackup.browseTree.tree.subjects)),$("#browse-results"),"horizontalTemplate","sortOrder"))}catch(t){}}var localStorageBackup,COMMON_VALIDATION_PARAMETERS,TRACKED_UTM_VALUES,NOT_SELECTED,saveResults,classIDForResults,AJAX_REQUEST_URL,windowWidth,windowHeight,lastSavedGizmoState,savedScale,gizmoOnLoadFired,ERROR_LOG_ENDPOINT,presetMenu,SCREENSHOT_CAMERA_ID,currentFilter,displayArea;!function(n,t){"function"==typeof define&&define.amd?define("bloodhound",["jquery"],function(i){return n.Bloodhound=t(i)}):"object"==typeof exports?module.exports=t(require("jquery")):n.Bloodhound=t(jQuery)}(this,function(n){var t=function(){"use strict";return{isMsie:function(){return!!/(msie|trident)/i.test(navigator.userAgent)&&navigator.userAgent.match(/(msie |rv:)(\d+(.\d+)?)/i)[2]},isBlankString:function(n){return!n||/^\s*$/.test(n)},escapeRegExChars:function(n){return n.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&")},isString:function(n){return"string"==typeof n},isNumber:function(n){return"number"==typeof n},isArray:n.isArray,isFunction:n.isFunction,isObject:n.isPlainObject,isUndefined:function(n){return void 0===n},isElement:function(n){return!(!n||1!==n.nodeType)},isJQuery:function(t){return t instanceof n},toStr:function(n){return t.isUndefined(n)||null===n?"":n+""},bind:n.proxy,each:function(t,i){n.each(t,function(n,t){return i(t,n)})},map:n.map,filter:n.grep,every:function(t,i){var r=!0;return t?(n.each(t,function(n,u){if(!(r=i.call(null,u,n,t)))return!1}),!!r):r},some:function(t,i){var r=!1;return t?(n.each(t,function(n,u){if(r=i.call(null,u,n,t))return!1}),!!r):r},mixin:n.extend,identity:function(n){return n},clone:function(t){return n.extend(!0,{},t)},getIdGenerator:function(){var n=0;return function(){return n++}},templatify:function(t){return n.isFunction(t)?t:function(){return String(t)}},defer:function(n){setTimeout(n,0)},debounce:function(n,t,i){var r,u;return function(){var f,e,o=this,s=arguments;return f=function(){r=null;i||(u=n.apply(o,s))},e=i&&!r,clearTimeout(r),r=setTimeout(f,t),e&&(u=n.apply(o,s)),u}},throttle:function(n,t){var u,f,i,e,r,o;return r=0,o=function(){r=new Date;i=null;e=n.apply(u,f)},function(){var s=new Date,h=t-(s-r);return u=this,f=arguments,h<=0?(clearTimeout(i),i=null,r=s,e=n.apply(u,f)):i||(i=setTimeout(o,h)),e}},stringify:function(n){return t.isString(n)?n:JSON.stringify(n)},noop:function(){}}}(),u="0.11.1",f=function(){"use strict";function n(n){return(n=t.toStr(n))?n.split(/\s+/):[]}function i(n){return(n=t.toStr(n))?n.split(/\W+/):[]}function r(n){return function(i){return i=t.isArray(i)?i:[].slice.call(arguments,0),function(r){var u=[];return t.each(i,function(i){u=u.concat(n(t.toStr(r[i])))}),u}}}return{nonword:i,whitespace:n,obj:{nonword:r(i),whitespace:r(n)}}}(),i=function(){"use strict";function i(i){this.maxSize=t.isNumber(i)?i:100;this.reset();this.maxSize<=0&&(this.set=this.get=n.noop)}function r(){this.head=this.tail=null}function u(n,t){this.key=n;this.val=t;this.prev=this.next=null}return t.mixin(i.prototype,{set:function(n,t){var i,r=this.list.tail;this.size>=this.maxSize&&(this.list.remove(r),delete this.hash[r.key],this.size--);(i=this.hash[n])?(i.val=t,this.list.moveToFront(i)):(i=new u(n,t),this.list.add(i),this.hash[n]=i,this.size++)},get:function(n){var t=this.hash[n];if(t)return this.list.moveToFront(t),t.val},reset:function(){this.size=0;this.hash={};this.list=new r}}),t.mixin(r.prototype,{add:function(n){this.head&&(n.next=this.head,this.head.prev=n);this.head=n;this.tail=this.tail||n},remove:function(n){n.prev?n.prev.next=n.next:this.head=n.next;n.next?n.next.prev=n.prev:this.tail=n.prev},moveToFront:function(n){this.remove(n);this.add(n)}}),i}(),e=function(){"use strict";function r(n,r){this.prefix=["__",n,"__"].join("");this.ttlKey="__ttl__";this.keyMatcher=new RegExp("^"+t.escapeRegExChars(this.prefix));this.ls=r||i;!this.ls&&this._noop()}function u(){return(new Date).getTime()}function f(n){return JSON.stringify(t.isUndefined(n)?null:n)}function e(t){return n.parseJSON(t)}var i;try{(i=window.localStorage).setItem("~~~","!");i.removeItem("~~~")}catch(r){i=null}return t.mixin(r.prototype,{_prefix:function(n){return this.prefix+n},_ttlKey:function(n){return this._prefix(n)+this.ttlKey},_noop:function(){this.get=this.set=this.remove=this.clear=this.isExpired=t.noop},_safeSet:function(n,t){try{this.ls.setItem(n,t)}catch(n){"QuotaExceededError"===n.name&&(this.clear(),this._noop())}},get:function(n){return this.isExpired(n)&&this.remove(n),e(this.ls.getItem(this._prefix(n)))},set:function(n,i,r){return t.isNumber(r)?this._safeSet(this._ttlKey(n),f(u()+r)):this.ls.removeItem(this._ttlKey(n)),this._safeSet(this._prefix(n),f(i))},remove:function(n){return this.ls.removeItem(this._ttlKey(n)),this.ls.removeItem(this._prefix(n)),this},clear:function(){for(var t=function(n){for(var r,u=[],f=i.length,t=0;t<f;t++)(r=i.key(t)).match(n)&&u.push(r.replace(n,""));return u}(this.keyMatcher),n=t.length;n--;)this.remove(t[n]);return this},isExpired:function(n){var i=e(this.ls.getItem(this._ttlKey(n)));return!!(t.isNumber(i)&&u()>i)}}),r}(),r=function(){"use strict";function r(n){n=n||{};this.cancelled=!1;this.lastReq=null;this._send=n.transport;this._get=n.limiter?n.limiter(this._get):this._get;this._cache=!1===n.cache?new i(0):o}var u=0,f={},e=6,o=new i(10);return r.setMaxPendingRequests=function(n){e=n},r.resetCache=function(){o.reset()},t.mixin(r.prototype,{_fingerprint:function(t){return(t=t||{}).url+t.type+n.param(t.data||{})},_get:function(n,t){function s(n){t(null,n);r._cache.set(i,n)}function h(){t(!0)}function c(){u--;delete f[i];r.onDeckRequestArgs&&(r._get.apply(r,r.onDeckRequestArgs),r.onDeckRequestArgs=null)}var i,o,r=this;i=this._fingerprint(n);this.cancelled||i!==this.lastReq||((o=f[i])?o.done(s).fail(h):u<e?(u++,f[i]=this._send(n).done(s).fail(h).always(c)):this.onDeckRequestArgs=[].slice.call(arguments,0))},get:function(i,r){var f,u;r=r||n.noop;i=t.isString(i)?{url:i}:i||{};u=this._fingerprint(i);this.cancelled=!1;this.lastReq=u;(f=this._cache.get(u))?r(null,f):this._get(i,r)},cancel:function(){this.cancelled=!0}}),r}(),o=window.SearchIndex=function(){"use strict";function i(i){(i=i||{}).datumTokenizer&&i.queryTokenizer||n.error("datumTokenizer and queryTokenizer are both required");this.identify=i.identify||t.stringify;this.datumTokenizer=i.datumTokenizer;this.queryTokenizer=i.queryTokenizer;this.reset()}function r(n){return n=t.filter(n,function(n){return!!n}),n=t.map(n,function(n){return n.toLowerCase()})}function u(){return{i:[],c:{}}}return t.mixin(i.prototype,{bootstrap:function(n){this.datums=n.datums;this.trie=n.trie},add:function(n){var i=this;n=t.isArray(n)?n:[n];t.each(n,function(n){var f,e;i.datums[f=i.identify(n)]=n;e=r(i.datumTokenizer(n));t.each(e,function(n){for(var r,t=i.trie,e=n.split("");r=e.shift();)(t=t.c[r]||(t.c[r]=u())).i.push(f)})})},get:function(n){var i=this;return t.map(n,function(n){return i.datums[n]})},search:function(n){var u,i,f=this;return u=r(this.queryTokenizer(n)),t.each(u,function(n){var t,r,e,u;if(i&&0===i.length)return!1;for(t=f.trie,r=n.split("");t&&(e=r.shift());)t=t.c[e];if(!t||0!==r.length)return!(i=[]);u=t.i.slice(0);i=i?function(n,t){var i=0,r=0,u=[],f,e;for(n=n.sort(function(n,t){return n-t}),t=t.sort(function(n,t){return n-t}),f=n.length,e=t.length;i<f&&r<e;)n[i]<t[r]?i++:(n[i]>t[r]||(u.push(n[i]),i++),r++);return u}(i,u):u}),i?t.map(function(n){for(var i={},r=[],t=0,u=n.length;t<u;t++)i[n[t]]||(i[n[t]]=!0,r.push(n[t]));return r}(i),function(n){return f.datums[n]}):[]},all:function(){var n=[],t;for(t in this.datums)n.push(this.datums[t]);return n},reset:function(){this.datums={};this.trie=u()},serialize:function(){return{datums:this.datums,trie:this.trie}}}),i}(),s=function(){"use strict";function i(n){this.url=n.url;this.ttl=n.ttl;this.cache=n.cache;this.prepare=n.prepare;this.transform=n.transform;this.transport=n.transport;this.thumbprint=n.thumbprint;this.storage=new e(n.cacheKey)}var n;return n={data:"data",protocol:"protocol",thumbprint:"thumbprint"},t.mixin(i.prototype,{_settings:function(){return{url:this.url,type:"GET",dataType:"json"}},store:function(t){this.cache&&(this.storage.set(n.data,t,this.ttl),this.storage.set(n.protocol,location.protocol,this.ttl),this.storage.set(n.thumbprint,this.thumbprint,this.ttl))},fromCache:function(){var i,t={};return this.cache?(t.data=this.storage.get(n.data),t.protocol=this.storage.get(n.protocol),t.thumbprint=this.storage.get(n.thumbprint),i=t.thumbprint!==this.thumbprint||t.protocol!==location.protocol,t.data&&!i?t.data:null):null},fromNetwork:function(n){var t,i=this;n&&(t=this.prepare(this._settings()),this.transport(t).fail(function(){n(!0)}).done(function(t){n(null,i.transform(t))}))},clear:function(){return this.storage.clear(),this}}),i}(),h=function(){"use strict";function n(n){this.url=n.url;this.prepare=n.prepare;this.transform=n.transform;this.transport=new r({cache:n.cache,limiter:n.limiter,transport:n.transport})}return t.mixin(n.prototype,{_settings:function(){return{url:this.url,type:"GET",dataType:"json"}},get:function(n,t){var i,r=this;if(t)return n=n||"",i=this.prepare(n,this._settings()),this.transport.get(i,function(n,i){t(n?[]:r.transform(i))})},cancelLastRequest:function(){this.transport.cancel()}}),n}(),c=function(){"use strict";function r(r){var u;if(r)return u={url:null,cache:!0,prepare:null,replace:null,wildcard:null,limiter:null,rateLimitBy:"debounce",rateLimitWait:300,transform:t.identity,transport:null},r=t.isString(r)?{url:r}:r,!(r=t.mixin(u,r)).url&&n.error("remote requires url to be set"),r.transform=r.filter||r.transform,r.prepare=function(n){function u(n,t){return t.url=i(t.url,n),t}function f(n,t){return t.url=t.url.replace(r,encodeURIComponent(n)),t}function e(n,t){return t}var t,i,r;return t=n.prepare,i=n.replace,r=n.wildcard,t||(t=i?u:n.wildcard?f:e)}(r),r.limiter=function(n){function f(n){return function(i){return t.debounce(i,n)}}function e(n){return function(i){return t.throttle(i,n)}}var i,u,r;return i=n.limiter,u=n.rateLimitBy,r=n.rateLimitWait,i||(i=/^throttle$/i.test(u)?e(r):f(r)),i}(r),r.transport=r.transport?i(r.transport):n.ajax,delete r.replace,delete r.wildcard,delete r.rateLimitBy,delete r.rateLimitWait,r}function i(i){return function(r){var u=n.Deferred();return i(r,function(n){t.defer(function(){u.resolve(n)})},function(n){t.defer(function(){u.reject(n)})}),u}}return function(f){var o,e;return o={initialize:!0,identify:t.stringify,datumTokenizer:null,queryTokenizer:null,sufficient:5,sorter:null,local:[],prefetch:null,remote:null},!(f=t.mixin(o,f||{})).datumTokenizer&&n.error("datumTokenizer is required"),!f.queryTokenizer&&n.error("queryTokenizer is required"),e=f.sorter,f.sorter=e?function(n){return n.sort(e)}:t.identity,f.local=t.isFunction(f.local)?f.local():f.local,f.prefetch=function(r){var f;return r?(f={url:null,ttl:864e5,cache:!0,cacheKey:null,thumbprint:"",prepare:t.identity,transform:t.identity,transport:null},r=t.isString(r)?{url:r}:r,!(r=t.mixin(f,r)).url&&n.error("prefetch requires url to be set"),r.transform=r.filter||r.transform,r.cacheKey=r.cacheKey||r.url,r.thumbprint=u+r.thumbprint,r.transport=r.transport?i(r.transport):n.ajax,r):null}(f.prefetch),f.remote=r(f.remote),f}}();return function(){"use strict";function i(n){n=c(n);this.sorter=n.sorter;this.identify=n.identify;this.sufficient=n.sufficient;this.local=n.local;this.remote=n.remote?new h(n.remote):null;this.prefetch=n.prefetch?new s(n.prefetch):null;this.index=new o({identify:this.identify,datumTokenizer:n.datumTokenizer,queryTokenizer:n.queryTokenizer});!1!==n.initialize&&this.initialize()}var u;return u=window&&window.Bloodhound,i.noConflict=function(){return window&&(window.Bloodhound=u),i},i.tokenizers=f,t.mixin(i.prototype,{__ttAdapter:function(){var n=this;return this.remote?function(t,i,r){return n.search(t,i,r)}:function(t,i){return n.search(t,i)}},_loadPrefetch:function(){var t,r,i=this;return t=n.Deferred(),this.prefetch?(r=this.prefetch.fromCache())?(this.index.bootstrap(r),t.resolve()):this.prefetch.fromNetwork(function(n,r){if(n)return t.reject();i.add(r);i.prefetch.store(i.index.serialize());t.resolve()}):t.resolve(),t.promise()},_initialize:function(){var n=this;return this.clear(),(this.initPromise=this._loadPrefetch()).done(function(){n.add(n.local)}),this.initPromise},initialize:function(n){return!this.initPromise||n?this._initialize():this.initPromise},add:function(n){return this.index.add(n),this},get:function(n){return n=t.isArray(n)?n:[].slice.call(arguments),this.index.get(n)},search:function(n,i,r){var u,f=this;return u=this.sorter(this.index.search(n)),i(this.remote?u.slice():u),this.remote&&u.length<this.sufficient?this.remote.get(n,function(n){var i=[];t.each(n,function(n){t.some(u,function(t){return f.identify(n)===f.identify(t)})||i.push(n)});r&&r(i)}):this.remote&&this.remote.cancelLastRequest(),this},all:function(){return this.index.all()},clear:function(){return this.index.reset(),this},clearPrefetchCache:function(){return this.prefetch&&this.prefetch.clear(),this},clearRemoteCache:function(){return r.resetCache(),this},ttAdapter:function(){return this.__ttAdapter()}}),i}()}),function(n,t){"function"==typeof define&&define.amd?define("typeahead.js",["jquery"],function(n){return t(n)}):"object"==typeof exports?module.exports=t(require("jquery")):t(jQuery)}(0,function(n){var t=function(){"use strict";return{isMsie:function(){return!!/(msie|trident)/i.test(navigator.userAgent)&&navigator.userAgent.match(/(msie |rv:)(\d+(.\d+)?)/i)[2]},isBlankString:function(n){return!n||/^\s*$/.test(n)},escapeRegExChars:function(n){return n.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&")},isString:function(n){return"string"==typeof n},isNumber:function(n){return"number"==typeof n},isArray:n.isArray,isFunction:n.isFunction,isObject:n.isPlainObject,isUndefined:function(n){return void 0===n},isElement:function(n){return!(!n||1!==n.nodeType)},isJQuery:function(t){return t instanceof n},toStr:function(n){return t.isUndefined(n)||null===n?"":n+""},bind:n.proxy,each:function(t,i){n.each(t,function(n,t){return i(t,n)})},map:n.map,filter:n.grep,every:function(t,i){var r=!0;return t?(n.each(t,function(n,u){if(!(r=i.call(null,u,n,t)))return!1}),!!r):r},some:function(t,i){var r=!1;return t?(n.each(t,function(n,u){if(r=i.call(null,u,n,t))return!1}),!!r):r},mixin:n.extend,identity:function(n){return n},clone:function(t){return n.extend(!0,{},t)},getIdGenerator:function(){var n=0;return function(){return n++}},templatify:function(t){return n.isFunction(t)?t:function(){return String(t)}},defer:function(n){setTimeout(n,0)},debounce:function(n,t,i){var r,u;return function(){var f,e,o=this,s=arguments;return f=function(){r=null;i||(u=n.apply(o,s))},e=i&&!r,clearTimeout(r),r=setTimeout(f,t),e&&(u=n.apply(o,s)),u}},throttle:function(n,t){var u,f,i,e,r,o;return r=0,o=function(){r=new Date;i=null;e=n.apply(u,f)},function(){var s=new Date,h=t-(s-r);return u=this,f=arguments,h<=0?(clearTimeout(i),i=null,r=s,e=n.apply(u,f)):i||(i=setTimeout(o,h)),e}},stringify:function(n){return t.isString(n)?n:JSON.stringify(n)},noop:function(){}}}(),e=function(){"use strict";function i(n){return{wrapper:'<span class="'+n.wrapper+'"><\/span>',menu:'<div class="'+n.menu+'"><\/div>'}}function r(n){var i={};return t.each(n,function(n,t){i[t]="."+n}),i}function u(){var n={wrapper:{position:"relative",display:"inline-block"},hint:{position:"absolute",top:"0",left:"0",borderColor:"transparent",boxShadow:"none",opacity:"1"},input:{position:"relative",verticalAlign:"top",backgroundColor:"transparent"},inputWithNoHint:{position:"relative",verticalAlign:"top"},menu:{position:"absolute",top:"100%",left:"0",zIndex:"100",display:"none"},ltr:{left:"0",right:"auto"},rtl:{left:"auto",right:" 0"}};return t.isMsie()&&t.mixin(n.input,{backgroundImage:"url(data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)"}),n}var n={wrapper:"twitter-typeahead",input:"tt-input",hint:"tt-hint",menu:"tt-menu",dataset:"tt-dataset",suggestion:"tt-suggestion",selectable:"tt-selectable",empty:"tt-empty",open:"tt-open",cursor:"tt-cursor",highlight:"tt-highlight"};return function(f){var e,o;return o=t.mixin({},n,f),{css:(e={css:u(),classes:o,html:i(o),selectors:r(o)}).css,html:e.html,classes:e.classes,selectors:e.selectors,mixin:function(n){t.mixin(n,e)}}}}(),o=function(){"use strict";function r(t){t&&t.el||n.error("EventBus initialized without el");this.$el=n(t.el)}var i;return i={render:"rendered",cursorchange:"cursorchanged",select:"selected",autocomplete:"autocompleted"},t.mixin(r.prototype,{_trigger:function(t,i){var r;return r=n.Event("typeahead:"+t),(i=i||[]).unshift(r),this.$el.trigger.apply(this.$el,i),r},before:function(n){var t;return t=[].slice.call(arguments,1),this._trigger("before"+n,t).isDefaultPrevented()},trigger:function(n){var t;this._trigger(n,[].slice.call(arguments,1));(t=i[n])&&this._trigger(t,[].slice.call(arguments,1))}}),r}(),r=function(){"use strict";function t(t,i,r,u){var f;if(!r)return this;for(i=i.split(n),r=u?function(n,t){return n.bind?n.bind(t):function(){n.apply(t,[].slice.call(arguments,0))}}(r,u):r,this._callbacks=this._callbacks||{};f=i.shift();)this._callbacks[f]=this._callbacks[f]||{sync:[],async:[]},this._callbacks[f][t].push(r);return this}function i(n,t,i){return function(){for(var r,u=0,f=n.length;!r&&u<f;u+=1)r=!1===n[u].apply(t,i);return!r}}var n=/\s+/,r=window.setImmediate?function(n){setImmediate(function(){n()})}:function(n){setTimeout(function(){n()},0)};return{onSync:function(n,i,r){return t.call(this,"sync",n,i,r)},onAsync:function(n,i,r){return t.call(this,"async",n,i,r)},off:function(t){var i;if(!this._callbacks)return this;for(t=t.split(n);i=t.shift();)delete this._callbacks[i];return this},trigger:function(t){var u,f,e,o,s;if(!this._callbacks)return this;for(t=t.split(n),e=[].slice.call(arguments,1);(u=t.shift())&&(f=this._callbacks[u]);)o=i(f.sync,this,[u].concat(e)),s=i(f.async,this,[u].concat(e)),o()&&r(s);return this}}}(),s=function(n){"use strict";var i={node:null,pattern:null,tagName:"strong",className:null,wordsOnly:!1,caseSensitive:!1};return function(r){var u;(r=t.mixin({},i,r)).node&&r.pattern&&(r.pattern=t.isArray(r.pattern)?r.pattern:[r.pattern],u=function(n,i,r){for(var u,f=[],e=0,o=n.length;e<o;e++)f.push(t.escapeRegExChars(n[e]));return u=r?"\\b("+f.join("|")+")\\b":"("+f.join("|")+")",i?new RegExp(u):new RegExp(u,"i")}(r.pattern,r.caseSensitive,r.wordsOnly),function n(t,i){for(var u,r=0;r<t.childNodes.length;r++)3===(u=t.childNodes[r]).nodeType?r+=i(u)?1:0:n(u,i)}(r.node,function(t){var i,e,f;return(i=u.exec(t.data))&&(f=n.createElement(r.tagName),r.className&&(f.className=r.className),(e=t.splitText(i.index)).splitText(i[0].length),f.appendChild(e.cloneNode(!0)),t.parentNode.replaceChild(f,e)),!!i}))}}(window.document),u=function(){"use strict";function i(i,r){(i=i||{}).input||n.error("input is missing");r.mixin(this);this.$hint=n(i.hint);this.$input=n(i.input);this.query=this.$input.val();this.queryWhenFocused=this.hasFocus()?this.query:null;this.$overflowHelper=function(t){return n('<pre aria-hidden="true"><\/pre>').css({position:"absolute",visibility:"hidden",whiteSpace:"pre",fontFamily:t.css("font-family"),fontSize:t.css("font-size"),fontStyle:t.css("font-style"),fontVariant:t.css("font-variant"),fontWeight:t.css("font-weight"),wordSpacing:t.css("word-spacing"),letterSpacing:t.css("letter-spacing"),textIndent:t.css("text-indent"),textRendering:t.css("text-rendering"),textTransform:t.css("text-transform")}).insertAfter(t)}(this.$input);this._checkLanguageDirection();0===this.$hint.length&&(this.setHint=this.getHint=this.clearHint=this.clearHintIfInvalid=t.noop)}function e(n,t){return i.normalizeQuery(n)===i.normalizeQuery(t)}function f(n){return n.altKey||n.ctrlKey||n.metaKey||n.shiftKey}var u;return u={9:"tab",27:"esc",37:"left",39:"right",13:"enter",38:"up",40:"down"},i.normalizeQuery=function(n){return t.toStr(n).replace(/^\s*/g,"").replace(/\s{2,}/g," ")},t.mixin(i.prototype,r,{_onBlur:function(){this.resetInputValue();this.trigger("blurred")},_onFocus:function(){this.queryWhenFocused=this.query;this.trigger("focused")},_onKeydown:function(n){var t=u[n.which||n.keyCode];this._managePreventDefault(t,n);t&&this._shouldTrigger(t,n)&&this.trigger(t+"Keyed",n)},_onInput:function(){this._setQuery(this.getInputValue());this.clearHintIfInvalid();this._checkLanguageDirection()},_managePreventDefault:function(n,t){var i;switch(n){case"up":case"down":i=!f(t);break;default:i=!1}i&&t.preventDefault()},_shouldTrigger:function(n,t){var i;switch(n){case"tab":i=!f(t);break;default:i=!0}return i},_checkLanguageDirection:function(){var n=(this.$input.css("direction")||"ltr").toLowerCase();this.dir!==n&&(this.dir=n,this.$hint.attr("dir",n),this.trigger("langDirChanged",n))},_setQuery:function(n,t){var i,r;r=!!(i=e(n,this.query))&&this.query.length!==n.length;this.query=n;t||i?!t&&r&&this.trigger("whitespaceChanged",this.query):this.trigger("queryChanged",this.query)},bind:function(){var n,i,r,f,e=this;return n=t.bind(this._onBlur,this),i=t.bind(this._onFocus,this),r=t.bind(this._onKeydown,this),f=t.bind(this._onInput,this),this.$input.on("blur.tt",n).on("focus.tt",i).on("keydown.tt",r),!t.isMsie()||9<t.isMsie()?this.$input.on("input.tt",f):this.$input.on("keydown.tt keypress.tt cut.tt paste.tt",function(n){u[n.which||n.keyCode]||t.defer(t.bind(e._onInput,e,n))}),this},focus:function(){this.$input.focus()},blur:function(){this.$input.blur()},getLangDir:function(){return this.dir},getQuery:function(){return this.query||""},setQuery:function(n,t){this.setInputValue(n);this._setQuery(n,t)},hasQueryChangedSinceLastFocus:function(){return this.query!==this.queryWhenFocused},getInputValue:function(){return this.$input.val()},setInputValue:function(n){this.$input.val(n);this.clearHintIfInvalid();this._checkLanguageDirection()},resetInputValue:function(){this.setInputValue(this.query)},getHint:function(){return this.$hint.val()},setHint:function(n){this.$hint.val(n)},clearHint:function(){this.setHint("")},clearHintIfInvalid:function(){var n,t,i;i=(n=this.getInputValue())!==(t=this.getHint())&&0===t.indexOf(n);""!==n&&i&&!this.hasOverflow()||this.clearHint()},hasFocus:function(){return this.$input.is(":focus")},hasOverflow:function(){var n=this.$input.width()-2;return this.$overflowHelper.text(this.getInputValue()),this.$overflowHelper.width()>=n},isCursorAtEnd:function(){var n,i,r;return n=this.$input.val().length,i=this.$input[0].selectionStart,t.isNumber(i)?i===n:!document.selection||((r=document.selection.createRange()).moveStart("character",-n),n===r.text.length)},destroy:function(){this.$hint.off(".tt");this.$input.off(".tt");this.$overflowHelper.remove();this.$hint=this.$input=this.$overflowHelper=n("<div>")}}),i}(),f=function(){"use strict";function u(i,r){(i=i||{}).templates=i.templates||{};i.templates.notFound=i.templates.notFound||i.templates.empty;i.source||n.error("missing source");i.node||n.error("missing node");i.name&&!function(n){return/^[_a-zA-Z0-9-]+$/.test(n)}(i.name)&&n.error("invalid dataset name: "+i.name);r.mixin(this);this.highlight=!!i.highlight;this.name=i.name||f();this.limit=i.limit||5;this.displayFn=function(n){function i(t){return t[n]}return n=n||t.stringify,t.isFunction(n)?n:i}(i.display||i.displayKey);this.templates=function(i,r){function u(t){return n("<div>").text(r(t))}return{notFound:i.notFound&&t.templatify(i.notFound),pending:i.pending&&t.templatify(i.pending),header:i.header&&t.templatify(i.header),footer:i.footer&&t.templatify(i.footer),suggestion:i.suggestion||u}}(i.templates,this.displayFn);this.source=i.source.__ttAdapter?i.source.__ttAdapter():i.source;this.async=t.isUndefined(i.async)?2<this.source.length:!!i.async;this._resetLastSuggestion();this.$el=n(i.node).addClass(this.classes.dataset).addClass(this.classes.dataset+"-"+this.name)}var i,f;return i={val:"tt-selectable-display",obj:"tt-selectable-object"},f=t.getIdGenerator(),u.extractData=function(t){var r=n(t);return r.data(i.obj)?{val:r.data(i.val)||"",obj:r.data(i.obj)||null}:null},t.mixin(u.prototype,r,{_overwrite:function(n,t){(t=t||[]).length?this._renderSuggestions(n,t):this.async&&this.templates.pending?this._renderPending(n):!this.async&&this.templates.notFound?this._renderNotFound(n):this._empty();this.trigger("rendered",this.name,t,!1)},_append:function(n,t){(t=t||[]).length&&this.$lastSuggestion.length?this._appendSuggestions(n,t):t.length?this._renderSuggestions(n,t):!this.$lastSuggestion.length&&this.templates.notFound&&this._renderNotFound(n);this.trigger("rendered",this.name,t,!0)},_renderSuggestions:function(n,t){var i;i=this._getSuggestionsFragment(n,t);this.$lastSuggestion=i.children().last();this.$el.html(i).prepend(this._getHeader(n,t)).append(this._getFooter(n,t))},_appendSuggestions:function(n,t){var i,r;r=(i=this._getSuggestionsFragment(n,t)).children().last();this.$lastSuggestion.after(i);this.$lastSuggestion=r},_renderPending:function(n){var t=this.templates.pending;this._resetLastSuggestion();t&&this.$el.html(t({query:n,dataset:this.name}))},_renderNotFound:function(n){var t=this.templates.notFound;this._resetLastSuggestion();t&&this.$el.html(t({query:n,dataset:this.name}))},_empty:function(){this.$el.empty();this._resetLastSuggestion()},_getSuggestionsFragment:function(r,u){var e,f=this;return e=document.createDocumentFragment(),t.each(u,function(t){var u,o;o=f._injectQuery(r,t);u=n(f.templates.suggestion(o)).data(i.obj,t).data(i.val,f.displayFn(t)).addClass(f.classes.suggestion+" "+f.classes.selectable);e.appendChild(u[0])}),this.highlight&&s({className:this.classes.highlight,node:e,pattern:r}),n(e)},_getFooter:function(n,t){return this.templates.footer?this.templates.footer({query:n,suggestions:t,dataset:this.name}):null},_getHeader:function(n,t){return this.templates.header?this.templates.header({query:n,suggestions:t,dataset:this.name}):null},_resetLastSuggestion:function(){this.$lastSuggestion=n()},_injectQuery:function(n,i){return t.isObject(i)?t.mixin({_query:n},i):i},update:function(t){function e(n){u||(u=!0,n=(n||[]).slice(0,i.limit),r=n.length,i._overwrite(t,n),r<i.limit&&i.async&&i.trigger("asyncRequested",t))}var i=this,f=!1,u=!1,r=0;this.cancel();this.cancel=function(){f=!0;i.cancel=n.noop;i.async&&i.trigger("asyncCanceled",t)};this.source(t,e,function(u){u=u||[];!f&&r<i.limit&&(i.cancel=n.noop,r+=u.length,i._append(t,u.slice(0,i.limit-r)),i.async&&i.trigger("asyncReceived",t))});!u&&e([])},cancel:n.noop,clear:function(){this._empty();this.cancel();this.trigger("cleared")},isEmpty:function(){return this.$el.is(":empty")},destroy:function(){this.$el=n("<div>")}}),u}(),i=function(){"use strict";function i(i,r){var u=this;(i=i||{}).node||n.error("node is required");r.mixin(this);this.$node=n(i.node);this.query=null;this.datasets=t.map(i.datasets,function(t){var i=u.$node.find(t.node).first();return t.node=i.length?i:n("<div>").appendTo(u.$node),new f(t,r)})}return t.mixin(i.prototype,r,{_onSelectableClick:function(t){this.trigger("selectableClicked",n(t.currentTarget))},_onRendered:function(n,t,i,r){this.$node.toggleClass(this.classes.empty,this._allDatasetsEmpty());this.trigger("datasetRendered",t,i,r)},_onCleared:function(){this.$node.toggleClass(this.classes.empty,this._allDatasetsEmpty());this.trigger("datasetCleared")},_propagate:function(){this.trigger.apply(this,arguments)},_allDatasetsEmpty:function(){return t.every(this.datasets,function(n){return n.isEmpty()})},_getSelectables:function(){return this.$node.find(this.selectors.selectable)},_removeCursor:function(){var n=this.getActiveSelectable();n&&n.removeClass(this.classes.cursor)},_ensureVisible:function(n){var t,i,r,u;i=(t=n.position().top)+n.outerHeight(!0);r=this.$node.scrollTop();u=this.$node.height()+parseInt(this.$node.css("paddingTop"),10)+parseInt(this.$node.css("paddingBottom"),10);t<0?this.$node.scrollTop(r+t):u<i&&this.$node.scrollTop(r+(i-u))},bind:function(){var i,n=this;return i=t.bind(this._onSelectableClick,this),this.$node.on("click.tt",this.selectors.selectable,i),t.each(this.datasets,function(t){t.onSync("asyncRequested",n._propagate,n).onSync("asyncCanceled",n._propagate,n).onSync("asyncReceived",n._propagate,n).onSync("rendered",n._onRendered,n).onSync("cleared",n._onCleared,n)}),this},isOpen:function(){return this.$node.hasClass(this.classes.open)},open:function(){this.$node.addClass(this.classes.open)},close:function(){this.$node.removeClass(this.classes.open);this._removeCursor()},setLanguageDirection:function(n){this.$node.attr("dir",n)},selectableRelativeToCursor:function(n){var t,r,i;return r=this.getActiveSelectable(),t=this._getSelectables(),-1===(i=(i=((i=(r?t.index(r):-1)+n)+1)%(t.length+1)-1)<-1?t.length-1:i)?null:t.eq(i)},setCursor:function(n){this._removeCursor();(n=n&&n.first())&&(n.addClass(this.classes.cursor),this._ensureVisible(n))},getSelectableData:function(n){return n&&n.length?f.extractData(n):null},getActiveSelectable:function(){var n=this._getSelectables().filter(this.selectors.cursor).first();return n.length?n:null},getTopSelectable:function(){var n=this._getSelectables().first();return n.length?n:null},update:function(n){var i=n!==this.query;return i&&(this.query=n,t.each(this.datasets,function(t){t.update(n)})),i},empty:function(){t.each(this.datasets,function(n){n.clear()});this.query=null;this.$node.addClass(this.classes.empty)},destroy:function(){this.$node.off(".tt");this.$node=n("<div>");t.each(this.datasets,function(n){n.destroy()})}}),i}(),h=function(){"use strict";function r(){i.apply(this,[].slice.call(arguments,0))}var n=i.prototype;return t.mixin(r.prototype,i.prototype,{open:function(){return!this._allDatasetsEmpty()&&this._show(),n.open.apply(this,[].slice.call(arguments,0))},close:function(){return this._hide(),n.close.apply(this,[].slice.call(arguments,0))},_onRendered:function(){return this._allDatasetsEmpty()?this._hide():this.isOpen()&&this._show(),n._onRendered.apply(this,[].slice.call(arguments,0))},_onCleared:function(){return this._allDatasetsEmpty()?this._hide():this.isOpen()&&this._show(),n._onCleared.apply(this,[].slice.call(arguments,0))},setLanguageDirection:function(t){return this.$node.css("ltr"===t?this.css.ltr:this.css.rtl),n.setLanguageDirection.apply(this,[].slice.call(arguments,0))},_hide:function(){this.$node.hide()},_show:function(){this.$node.css("display","block")}}),r}(),c=function(){"use strict";function r(r,u){var f,e,o,s,h,c,l,a,v,y,p;(r=r||{}).input||n.error("missing input");r.menu||n.error("missing menu");r.eventBus||n.error("missing event bus");u.mixin(this);this.eventBus=r.eventBus;this.minLength=t.isNumber(r.minLength)?r.minLength:1;this.input=r.input;this.menu=r.menu;this.enabled=!0;this.active=!1;this.input.hasFocus()&&this.activate();this.dir=this.input.getLangDir();this._hacks();this.menu.bind().onSync("selectableClicked",this._onSelectableClicked,this).onSync("asyncRequested",this._onAsyncRequested,this).onSync("asyncCanceled",this._onAsyncCanceled,this).onSync("asyncReceived",this._onAsyncReceived,this).onSync("datasetRendered",this._onDatasetRendered,this).onSync("datasetCleared",this._onDatasetCleared,this);f=i(this,"activate","open","_onFocused");e=i(this,"deactivate","_onBlurred");o=i(this,"isActive","isOpen","_onEnterKeyed");s=i(this,"isActive","isOpen","_onTabKeyed");h=i(this,"isActive","_onEscKeyed");c=i(this,"isActive","open","_onUpKeyed");l=i(this,"isActive","open","_onDownKeyed");a=i(this,"isActive","isOpen","_onLeftKeyed");v=i(this,"isActive","isOpen","_onRightKeyed");y=i(this,"_openIfActive","_onQueryChanged");p=i(this,"_openIfActive","_onWhitespaceChanged");this.input.bind().onSync("focused",f,this).onSync("blurred",e,this).onSync("enterKeyed",o,this).onSync("tabKeyed",s,this).onSync("escKeyed",h,this).onSync("upKeyed",c,this).onSync("downKeyed",l,this).onSync("leftKeyed",a,this).onSync("rightKeyed",v,this).onSync("queryChanged",y,this).onSync("whitespaceChanged",p,this).onSync("langDirChanged",this._onLangDirChanged,this)}function i(n){var i=[].slice.call(arguments,1);return function(){var r=[].slice.call(arguments);t.each(i,function(t){return n[t].apply(n,r)})}}return t.mixin(r.prototype,{_hacks:function(){var r,i;r=this.input.$input||n("<div>");i=this.menu.$node||n("<div>");r.on("blur.tt",function(n){var u,f,e;u=document.activeElement;f=i.is(u);e=0<i.has(u).length;t.isMsie()&&(f||e)&&(n.preventDefault(),n.stopImmediatePropagation(),t.defer(function(){r.focus()}))});i.on("mousedown.tt",function(n){n.preventDefault()})},_onSelectableClicked:function(n,t){this.select(t)},_onDatasetCleared:function(){this._updateHint()},_onDatasetRendered:function(n,t,i,r){this._updateHint();this.eventBus.trigger("render",i,r,t)},_onAsyncRequested:function(n,t,i){this.eventBus.trigger("asyncrequest",i,t)},_onAsyncCanceled:function(n,t,i){this.eventBus.trigger("asynccancel",i,t)},_onAsyncReceived:function(n,t,i){this.eventBus.trigger("asyncreceive",i,t)},_onFocused:function(){this._minLengthMet()&&this.menu.update(this.input.getQuery())},_onBlurred:function(){this.input.hasQueryChangedSinceLastFocus()&&this.eventBus.trigger("change",this.input.getQuery())},_onEnterKeyed:function(n,t){var i;(i=this.menu.getActiveSelectable())&&this.select(i)&&t.preventDefault()},_onTabKeyed:function(n,t){var i;(i=this.menu.getActiveSelectable())?this.select(i)&&t.preventDefault():(i=this.menu.getTopSelectable())&&this.autocomplete(i)&&t.preventDefault()},_onEscKeyed:function(){this.close()},_onUpKeyed:function(){this.moveCursor(-1)},_onDownKeyed:function(){this.moveCursor(1)},_onLeftKeyed:function(){"rtl"===this.dir&&this.input.isCursorAtEnd()&&this.autocomplete(this.menu.getTopSelectable())},_onRightKeyed:function(){"ltr"===this.dir&&this.input.isCursorAtEnd()&&this.autocomplete(this.menu.getTopSelectable())},_onQueryChanged:function(n,t){this._minLengthMet(t)?this.menu.update(t):this.menu.empty()},_onWhitespaceChanged:function(){this._updateHint()},_onLangDirChanged:function(n,t){this.dir!==t&&(this.dir=t,this.menu.setLanguageDirection(t))},_openIfActive:function(){this.isActive()&&this.open()},_minLengthMet:function(n){return(n=t.isString(n)?n:this.input.getQuery()||"").length>=this.minLength},_updateHint:function(){var r,i,n,f,e,o;r=this.menu.getTopSelectable();i=this.menu.getSelectableData(r);n=this.input.getInputValue();!i||t.isBlankString(n)||this.input.hasOverflow()?this.input.clearHint():(f=u.normalizeQuery(n),e=t.escapeRegExChars(f),(o=new RegExp("^(?:"+e+")(.+$)","i").exec(i.val))&&this.input.setHint(n+o[1]))},isEnabled:function(){return this.enabled},enable:function(){this.enabled=!0},disable:function(){this.enabled=!1},isActive:function(){return this.active},activate:function(){return!!this.isActive()||!(!this.isEnabled()||this.eventBus.before("active"))&&(this.active=!0,this.eventBus.trigger("active"),!0)},deactivate:function(){return!this.isActive()||!this.eventBus.before("idle")&&(this.active=!1,this.close(),this.eventBus.trigger("idle"),!0)},isOpen:function(){return this.menu.isOpen()},open:function(){return this.isOpen()||this.eventBus.before("open")||(this.menu.open(),this._updateHint(),this.eventBus.trigger("open")),this.isOpen()},close:function(){return this.isOpen()&&!this.eventBus.before("close")&&(this.menu.close(),this.input.clearHint(),this.input.resetInputValue(),this.eventBus.trigger("close")),!this.isOpen()},setVal:function(n){this.input.setQuery(t.toStr(n))},getVal:function(){return this.input.getQuery()},select:function(n){var t=this.menu.getSelectableData(n);return!(!t||this.eventBus.before("select",t.obj)||(this.input.setQuery(t.val,!0),this.eventBus.trigger("select",t.obj),this.close(),0))},autocomplete:function(n){var i,t;return i=this.input.getQuery(),!(!((t=this.menu.getSelectableData(n))&&i!==t.val)||this.eventBus.before("autocomplete",t.obj)||(this.input.setQuery(t.val),this.eventBus.trigger("autocomplete",t.obj),0))},moveCursor:function(n){var u,i,t,r;return u=this.input.getQuery(),i=this.menu.selectableRelativeToCursor(n),r=(t=this.menu.getSelectableData(i))?t.obj:null,!(this._minLengthMet()&&this.menu.update(u))&&!this.eventBus.before("cursorchange",r)&&(this.menu.setCursor(i),t?this.input.setInputValue(t.val):(this.input.resetInputValue(),this._updateHint()),this.eventBus.trigger("cursorchange",r),!0)},destroy:function(){this.input.destroy();this.menu.destroy()}}),r}();!function(){"use strict";function r(t,i){t.each(function(){var t,r=n(this);(t=r.data(f.typeahead))&&i(t,r)})}function v(n,t){return n.clone().addClass(t.classes.hint).removeData().css(t.css.hint).css(function(n){return{backgroundAttachment:n.css("background-attachment"),backgroundClip:n.css("background-clip"),backgroundColor:n.css("background-color"),backgroundImage:n.css("background-image"),backgroundOrigin:n.css("background-origin"),backgroundPosition:n.css("background-position"),backgroundRepeat:n.css("background-repeat"),backgroundSize:n.css("background-size")}}(n)).prop("readonly",!0).removeAttr("id name placeholder required").attr({autocomplete:"off",spellcheck:"false",tabindex:-1})}function y(n,t){n.data(f.attrs,{dir:n.attr("dir"),autocomplete:n.attr("autocomplete"),spellcheck:n.attr("spellcheck"),style:n.attr("style")});n.addClass(t.classes.input).attr({autocomplete:"off",spellcheck:!1});try{n.attr("dir")||n.attr("dir","auto")}catch(n){}return n}function a(i){var r;return(r=t.isJQuery(i)||t.isElement(i)?n(i).first():[]).length?r:null}var l,f,s;l=n.fn.typeahead;f={www:"tt-www",attrs:"tt-attrs",typeahead:"tt-typeahead"};s={initialize:function(r,s){function p(){var e,d,p,w,b,k,g,nt,tt,it,rt;t.each(s,function(n){n.highlight=!!r.highlight});e=n(this);d=n(l.html.wrapper);p=a(r.hint);w=a(r.menu);b=!1!==r.hint&&!p;k=!1!==r.menu&&!w;b&&(p=v(e,l));k&&(w=n(l.html.menu).css(l.css.menu));p&&p.val("");e=y(e,l);(b||k)&&(d.css(l.css.wrapper),e.css(b?l.css.input:l.css.inputWithNoHint),e.wrap(d).parent().prepend(b?p:null).append(k?w:null));rt=k?h:i;g=new o({el:e});nt=new u({hint:p,input:e},l);tt=new rt({node:w,datasets:s},l);it=new c({input:nt,menu:tt,eventBus:g,minLength:r.minLength},l);e.data(f.www,l);e.data(f.typeahead,it)}var l;return s=t.isArray(s)?s:[].slice.call(arguments,1),l=e((r=r||{}).classNames),this.each(p)},isEnabled:function(){var n;return r(this.first(),function(t){n=t.isEnabled()}),n},enable:function(){return r(this,function(n){n.enable()}),this},disable:function(){return r(this,function(n){n.disable()}),this},isActive:function(){var n;return r(this.first(),function(t){n=t.isActive()}),n},activate:function(){return r(this,function(n){n.activate()}),this},deactivate:function(){return r(this,function(n){n.deactivate()}),this},isOpen:function(){var n;return r(this.first(),function(t){n=t.isOpen()}),n},open:function(){return r(this,function(n){n.open()}),this},close:function(){return r(this,function(n){n.close()}),this},select:function(t){var i=!1,u=n(t);return r(this.first(),function(n){i=n.select(u)}),i},autocomplete:function(t){var i=!1,u=n(t);return r(this.first(),function(n){i=n.autocomplete(u)}),i},moveCursor:function(n){var t=!1;return r(this.first(),function(i){t=i.moveCursor(n)}),t},val:function(n){var t;return arguments.length?(r(this,function(t){t.setVal(n)}),this):(r(this.first(),function(n){t=n.getVal()}),t)},destroy:function(){return r(this,function(n,i){(function(n){var r,i;r=n.data(f.www);i=n.parent().filter(r.selectors.wrapper);t.each(n.data(f.attrs),function(i,r){t.isUndefined(i)?n.removeAttr(r):n.attr(r,i)});n.removeData(f.typeahead).removeData(f.www).removeData(f.attr).removeClass(r.classes.input);i.length&&(n.detach().insertAfter(i),i.remove())})(i);n.destroy()}),this}};n.fn.typeahead=function(n){return s[n]?s[n].apply(this,[].slice.call(arguments,1)):s.initialize.apply(this,arguments)};n.fn.typeahead.noConflict=function(){return n.fn.typeahead=l,this}}()});Modernizr.addTest("ipad",function(){return!!navigator.userAgent.match(/iPad/i)});Modernizr.addTest("iphone",function(){return!!navigator.userAgent.match(/iPhone/i)});Modernizr.addTest("ipod",function(){return!!navigator.userAgent.match(/iPod/i)});Modernizr.addTest("appleios",function(){return Modernizr.ipad||Modernizr.ipod||Modernizr.iphone});Modernizr.addTest("windows",function(){return-1!=navigator.appVersion.indexOf("Win")});jQuery.extend({getQueryParameters:function(n){return(n||decodeURIComponent(document.location.search)).replace(/(^\?)/,"").split("&").map(function(n){return this[(n=n.split("="))[0]]=n[1],this}.bind({}))[0]}});localStorageBackup={};$(document).ready(function(){function r(){if(n.length){var i,u,t=$("#uncompiledQuery"),f=$("#navBarSearchButton"),e=n.find(".nav-search-box");t.on("keyup focus",function(){e[(""===t.val()?"add":"remove")+"Class"]("nav-search-box-cleared")}).on("keyup",function(){var i=[],n=[],t=[],r=$(".gizmo-suggestion");r.each(function(r,u){var f=$(u),s=f.data("id"),e=f.data("case"),o=f.data("guide");-1===$.inArray(s,i)&&-1===$.inArray(e,n)&&-1===$.inArray(o,t)?i.push(s):f.remove();e&&-1===$.inArray(e,n)&&n.push(e);o&&-1===$.inArray(o,t)&&t.push(o)});r.each(function(n,t){var i=$(t);n>9&&i.remove()})});n.find(".nav-search-clear").on("click",function(n){n.stopPropagation();n.preventDefault();t.val("");t.typeahead("val","");t.focus()});i=store.enabled?store.get("resources").gizmos:localStorageBackup.resources.gizmos;u=store.enabled?store.get("browseStrands"):localStorageBackup.browseStrands;var o=new Bloodhound({datumTokenizer:function(n){var t=n.title;return Bloodhound.tokenizers.whitespace(t.replace("(","").replace(")",""))},queryTokenizer:Bloodhound.tokenizers.whitespace,identify:function(n){return n.resourceID},local:i}),s=new Bloodhound({datumTokenizer:function(n){var t=n.keywords;return Bloodhound.tokenizers.whitespace(t)},queryTokenizer:Bloodhound.tokenizers.whitespace,identify:function(n){return n.resourceID},local:i}),h=new Bloodhound({datumTokenizer:function(n){var t=n.resourceID;return Bloodhound.tokenizers.whitespace(t)},queryTokenizer:Bloodhound.tokenizers.whitespace,identify:function(n){return n.resourceID},local:i}),c=new Bloodhound({datumTokenizer:function(n){var t=n.searchTerms;return Bloodhound.tokenizers.whitespace(t)},queryTokenizer:Bloodhound.tokenizers.whitespace,identify:function(n){return n.displayName},local:u}),r={suggestion:function(n){var t="",i="";return"InteractiveCase"==n.resourceTypeName?(t+='<span class="labels"><span class="tag-case">STEM Case<\/span><\/span>',thumbName="TNc",i='data-case ="'+n.interactivecaseid+'" '):"InteractiveGuide"==n.resourceTypeName?(t+='<span class="labels"><span class="tag-handbook">Handbook<\/span><\/span>',thumbName="TNg",i='data-guide ="'+n.interactivecaseid+'" '):""!=n.flag&&(t+='<span class="labels">',"N"==n.flag?t+='<span style="background:green;" class="tag-case">New':(t+='<span class="tag-case">',t+="U"==n.flag?"Updated":"Featured"),t+="<\/span><\/span>"),imageString=n.interactivecaseid>0?"CaseSnap/"+n.interactivecaseid+thumbName:"GizmoSnap/"+n.resourceID+"TN",'<div data-id="'+n.resourceID+'" '+i+' class="gizmo-suggestion">'+t+'<img src="'+elPaths.imageRoot+"/img/"+imageString+'.png" srcset="'+elPaths.imageRoot+"/img/"+imageString+'@2x.png 2x" class="thumb"><span class="title">'+n.title.replace(/(<([^>]+)>)/gi,"").replace(/([^a-zA-Z0-9\-.!\(\)+,'=_"]+\s)/gi," ")+"<\/span><\/div>"}};t.typeahead({hint:!0,highlight:!0,minLength:1,autoselect:!0},{name:"IDs",displayKey:"title",source:h,templates:r},{name:"Titles",displayKey:"title",source:o,templates:r},{name:"Keywords",displayKey:"title",source:s,templates:r,limit:20},{name:"browseStrands",displayKey:"displayName",source:c,templates:{header:'<div class="tt-divider">Grade Bands &AMP; Topics<\/div>',suggestion:function(n){return'<div data-browseStrand="'+n.deepLink+'" class="browseStrand-suggestion"><span class="glyphicon fas fa-list"><\/span>'+n.displayName+"<\/div>"}}}).on("typeahead:selected",function(n,t){t.resourceID?window.location.href="/find-gizmos/lesson-info?resourceId="+t.resourceID:t.deepLink&&(window.location.href="/find-gizmos/browse-by-grade-topic-gizmos?browse="+t.deepLink)});$(".tt-menu").append($("<div>").addClass("tt-suggestion tt-selectable tt-footer more text-center").append($("<a>").attr("href","#").text("See Full Search Results")));f.find(".glyphicon").css("color","inherit");$(".tt-menu").on("click","div.more",function(){$(this).parents("form").submit()})}}function u(){$.ajax({method:"GET",url:el.getContentRoot()+"/json/qryBrowse.json",dataType:"JSON"}).done(function(n){var u={name:"root",subjects:{}},o,i,f,e;for(o in n.data)i=n.data[o],i.subjectname in u.subjects||(u.subjects[i.subjectname]={gradeLevels:{}}),i.gradelevelname in u.subjects[i.subjectname].gradeLevels||(u.subjects[i.subjectname].gradeLevels[i.gradelevelname]={sortOrder:i.gradelevelsortorder,topics:{}}),i.topicname in u.subjects[i.subjectname].gradeLevels[i.gradelevelname].topics||(u.subjects[i.subjectname].gradeLevels[i.gradelevelname].topics[i.topicname]={sortOrder:i.topicsortorder,subtopics:{}}),i.subtopicname in u.subjects[i.subjectname].gradeLevels[i.gradelevelname].topics[i.topicname].subtopics||(u.subjects[i.subjectname].gradeLevels[i.gradelevelname].topics[i.topicname].subtopics[i.subtopicname]={sortOrder:i.subtopicsortorder,resources:[]}),-1===u.subjects[i.subjectname].gradeLevels[i.gradelevelname].topics[i.topicname].subtopics[i.subtopicname].resources.indexOf(i.resourceID)&&u.subjects[i.subjectname].gradeLevels[i.gradelevelname].topics[i.topicname].subtopics[i.subtopicname].resources.push(i.resourceid);f={tree:u,version:serverLocalStorageVersion};e=t(u,{},[]);store.enabled?(store.set("browseTree",f),store.set("browseStrands",e)):(localStorageBackup.browseTree=f,localStorageBackup.browseStrands=e);interpretParam&&interpretParam();r();$.ajax({method:"GET",url:el.getContentRoot()+"/json/deprecatedGizmos.json",dataType:"JSON"}).done(function(n){var t={};$.each(n,function(n,i){t[n]=i});store.enabled?store.set("gizmoReplacements",t):localStorageBackup.gizmoReplacements=t;$(document).trigger("localStorageReady")}).fail(function(){})}).fail(function(){})}function t(n,r,u){var e,f,o,s,h;if(n.subjects)for(e in n.subjects)f=i($.extend({},r),e),u.push(f),t(n.subjects[e],f,u);else if(n.gradeLevels)for(o in n.gradeLevels)f=i($.extend({},r),o),u.push(f),t(n.gradeLevels[o],f,u);else if(n.topics)for(s in n.topics)f=i($.extend({},r),s),u.push(f),t(n.topics[s],f,u);else if(n.subtopics)for(h in n.subtopics)f=i($.extend({},r),h),u.push(f),t(n.subtopics[h],f,u);return u}function i(n,t){return void 0===n.displayName?(n.displayName=t,n.searchTerms=t,n.deepLink=t.replace(/\ /g,"+"),n):(n.displayName+=" > "+t,n.searchTerms=t,n.deepLink+="/"+t.replace(/\ /g,"+"),n)}function f(){var n=$(".open .dropdown-menu");if(n.length){var t=n.parent(),f=t.offset().left+t.width(),i=n.width(),r=f-i,u=$(window).width()/2-i/2;n.css("right",r<u?r-u:0)}}var n=$("#navBarSearch");n.length&&n.on("shown.bs.dropdown",function(){f();$("#uncompiledQuery").focus()});try{null===store.get("resources")||null===store.get("browseTree")||null===store.get("browseStrands")||null===store.get("gizmoReplacements")||localStorageOutOfDate("resources")?($("#navBarSearchButton").find(".glyphicon").css("color","#555"),$.ajax({method:"GET",url:el.getContentRoot()+"/json/qryResources.json",dataType:"JSON"}).done(function(n){var t=[];$.each(n.data,function(n,i){var r={title:i.title.replace(/(<([^>]+)>)/gi,"").replace(/([^a-zA-Z0-9\-.!\(\)+,'=_"]+\s)/gi," "),urlTitle:cleanurlTitle(i.title),keywords:i.keywords,introText:i.introtext,resourceID:Number(i.resourceid),flag:i.flag,resourceTypeName:i.resourcetypename,measurementSystem:i.measurementsystem,free:Number(i.free),interactivecaseid:Number(i.interactivecaseid)};if(0!=r.interactivecaseid)switch(i.academiclevel){case"H":r.academicLevel="High School";break;case"A":r.academicLevel="AP";break;case"M":r.academicLevel="Middle School"}t.push(r)});$.ajax({method:"GET",url:el.getContentRoot()+"/json/qryInteractiveCases.json",dataType:"JSON"}).done(function(n){var r=[],i;$.each(n.data,function(n,t){var i={interactivecaseid:Number(t.id),title:t.title,urlTitle:cleanurlTitle(t.title),keywords:t.keywords,introText:t.introtext};r.push(i)});i={gizmos:t,cases:r,version:serverLocalStorageVersion};store.enabled?store.set("resources",i):localStorageBackup.resources=i;u()}).fail(function(){var n={gizmos:t,version:serverLocalStorageVersion};store.enabled?store.set("resources",n):localStorageBackup.resources=n;u()})}).fail(function(){})):($(document).trigger("localStorageReady"),$("#browse-results").length&&interpretParam&&interpretParam(),r())}catch(n){$("#browse-results").length&&notifyError("Local storage must be enabled in your browser to make use of this feature.")}$(".theme-nav .btn").on("click",function(){$(".home").attr("class",$(this).data("class"))});$(".dropdown-menu input, .dropdown-header, .dropdown-body").on("click",function(n){n.stopPropagation()});initializeTooltips();$(window).resize(f);$(document.body).on("click","[data-context-dropdown]",function(){var n=$(this),t=$(n.data("context-dropdown"));n.dropdown();n.parent().on("show.bs.dropdown",function(){t.data("id",n.data("id"));n.parent().append(t)})});$(document.body).on("click","[data-menu]",function(n){switch($(this).data("menu")){case"support-form":$("#help-popover").trigger("click");$("#help-popover-container #helpdeskContactButton").trigger("click")}n.preventDefault()});$(document.body).on("click",".unwrap",function(n){n.preventDefault();var t=$(this),i="white-space",r="nowrap"==t.css(i);t.css(i,r?"normal":"nowrap")});$(document.body).on("click",".addToClass",function(n){n.preventDefault();var t=$(this),i=t.data("classid"),e=t.parents("ul").siblings("a").data("listid"),u=t.parents("ul").data("id"),c=t.parents("ul").siblings("a").data("ctype"),o=t.parents("ul").siblings("a").data("cid"),s=!1,r=t.text().trim(),f=!1,h="cResourceSecure.actAddResourceToClass_ajax";imageString=o>0?"CaseSnap/"+o+"TN"+c:"GizmoSnap/"+u+"TN";"number"==typeof e&&(f=!0);t.hasClass("addToAllClasses")&&(r="all classes",s=!0);window.devicePixelRatio;elPaths.imageRoot;imageString;Modernizr.touch;el.getAjaxBaseUrl();f&&(h="cResourceSecure.actAddResourcesToClasses_ajax",Modernizr.touch,el.getAjaxBaseUrl());$.post("index.cfm",{method:h,resourceID:u,SharedGizmoListID:e,classID:i,classIDs:i},function(n){var e=$('[data-context-dropdown="#addToClassMenu"][data-id="'+u+'"]'),t;e.html();(e.addClass("btn-outline").html('<span class="glyphicon glyphicon-ok"><\/span>&nbsp; Added'),window.setTimeout(function(){e.removeClass("btn-outline").html('<span class="glyphicon glyphicon-plus"><\/span><span class="hidden-xs"> Add to<span class="hidden-sm"> Class<\/span><\/span>')},3e3),"1"==n.trim())?f?$.notify({title:"Gizmo List added to "+r,message:(Modernizr.touch?"Tap":"Click")+" to View Class",url:el.getAjaxBaseUrl()+"method=cUserSecure.dspClass&ClassID="+i,target:"_self"},{type:"el",delay:5e3,placement:{align:"left",from:"bottom"},icon_type:"image",mouse_over:"pause",template:'<div data-notify="container" class="col-xs-10 col-sm-5 col-md-4 alert alert-{0}" role="alert"><button type="button" class="close" data-dismiss="alert" data-notify="dismiss">&times;<\/button><span data-notify="title">{1}<\/span><span data-notify="message">Click to see updated class.<\/span><a href="{3}" target="{4}" data-notify="url"><\/a><\/div>'}):s?(t=window.devicePixelRatio>1?elPaths.imageRoot+"/img/"+imageString+"@2x.png":elPaths.imageRoot+"/img/"+imageString+".png",$.notify({icon:t,title:"Gizmo added to "+r},{type:"el",delay:5e3,placement:{align:"left",from:"bottom"},icon_type:"image",mouse_over:"pause",template:'<div data-notify="container" class="col-xs-10 col-sm-5 col-md-4 alert alert-{0}" role="alert"><button type="button" class="close" data-dismiss="alert" data-notify="dismiss">&times;<\/button><img data-notify="icon" class="pull-left"><span data-notify="title">{1}<\/span><\/div>'})):(t=window.devicePixelRatio>1?elPaths.imageRoot+"/img/"+imageString+"@2x.png":elPaths.imageRoot+"/img/"+imageString+".png",$.notify({icon:t,title:'Gizmo added to <span class="classname">'+r+"<\/span>",url:el.getAjaxBaseUrl()+"method=cUserSecure.dspClass&ClassID="+i,target:"_self"},{type:"el",delay:5e3,placement:{align:"left",from:"bottom"},icon_type:"image",mouse_over:"pause",template:'<div data-notify="container" class="col-xs-10 col-sm-5 col-md-4 alert alert-{0}" role="alert"><button type="button" class="close" data-dismiss="alert" data-notify="dismiss">&times;<\/button><img data-notify="icon" class="pull-left"><span data-notify="title">{1}<\/span><a href="{3}" target="{4}" data-notify="url"><\/a><\/div>'})):"2"==n.trim()&&$.notify({},{type:"el",delay:5e3,placement:{align:"left",from:"bottom"},icon_type:"image",mouse_over:"pause",template:'<div data-notify="container" class="col-xs-10 col-sm-5 col-md-4 alert alert-danger" role="alert"><button type="button" class="close" data-dismiss="alert" data-notify="dismiss">&times;<\/button><img data-notify="icon" class="pull-left"><span data-notify="title"><strong>Error: Gizmo(s) Not Added<\/strong><br><\/span><span data-notify="message">Check to make sure you are still logged in.<\/span><\/div>'})})});$("#bc1").length&&$(window).resize(function(){ellipses1=$("#bc1 :nth-child(2)");$("#bc1 a:hidden").length>0?ellipses1.show():ellipses1.hide()});$(".user-submitted-list .description").each(function(){0!==$(this).find("span.desc-hidden").length&&$(this).on("click",function(){$(this).find("span.desc-hidden").removeClass("hidden");$(this).find("a.more-link").addClass("hidden")})});$(".user-submitted-list a.more-link").on("click",function(n){$(this).addClass("hidden");$(this).siblings("span.desc-hidden").removeClass("hidden");n.preventDefault()});$(".user-submitted-list a.overflow-link").on("click",function(n){$(this).closest("div").find(".user-submitted-list").removeClass("hidden");$(this).addClass("hidden");n.preventDefault()});$(".best-for-popover").popover({content:function(){return $(this).siblings(".best-for-content").html()},html:!0,container:".user-submitted-list",placement:"top"});$("#flashNotifications .notification").each(function(){notify($(this).html())});$("#expirationDialogue").modal("show");$("#dismissWelcomeAlert").on("click",function(){$(this).parents("#affixedBarWrap").hide();dismissAlert(1,$("#welcomeAlertUserID").val())});$(".dismiss-bar").on("click",function(){$(this).parents(".bar-dismissable").addClass($(this).data("hidden-class"));dismissAlert($(this).data("alertid"),elUser.userID)});$("#heatmapTour").length&&$("#heatmapTour").data("flag")&&$("#heatmapTour").modal("show");$("#heatmapTour").on("hide.bs.modal",function(){1==$("#dismissHeatmapModal").prop("checked")&&dismissAlert($("#heatmapTour").data("alertid"),elUser.userID)});$("#nextTour").click(function(){$("#heatmapTour1, #nextTour").addClass("hidden");$("#heatmapTour2, #closeTour").removeClass("hidden")});$("#closeTour").click(function(){$("#heatmapTour1, #nextTour").removeClass("hidden");$("#heatmapTour2, #closeTour").addClass("hidden")});$(".promo-trial-modal").on("hide.bs.modal",function(){!1===$("#declineUpgradeCheck").prop("checked")&&dismissAlert($(".promo-trial-modal").data("alertid"),elUser.userID)});$(".read-more-link").on("click",function(n){n.preventDefault();$(this).parents(".read-more-row").hide().next(".read-more-content").show()});$(document).on("click touchstart","#introVideo",function(){var n=elPaths.amzPath+"/js/vendor/video.js?b="+elPaths.jsBuildNumber,t=elPaths.amzPath+"/css/video-js.css";$("head").append($("<link/>",{rel:"stylesheet",type:"text/css",href:t}));$.getScript(n).done(function(){window.setTimeout(function(){$("#videoModal").modal("show")},1)})});$("[class^=caseVideo]").click(function(){var n=this.className.replace("caseVideo","");$("#videoModal"+n).modal("show")});$(".gizmoVideo").click(function(){$("#videoModal").modal("show")});$("[id^=videoModal]").on("hide.bs.modal",function(){$(this).find("video")[0].pause()});$("[id^=videoModal]").on("shown.bs.modal",function(){$(this).find("video")[0].play()});$("#presetHelp").on("show.bs.modal",function(){$("#presetHelp [data-lazy-load-image]").each(function(n,t){var i=new Image;i.src=$(t).data("lazy-load-image");i.className=$(t).data("image-classes");$(t).after(i);$(t).remove()})});$(".disable-on-submit").on("submit",function(){$(this).find('button[type="submit"]').addClass("disabled").prop("disabled",!0)});$("#gallery-container").length&&$("#gallery-container").magnificPopup({delegate:"a",type:"image",gallery:{enabled:!0}});$(".card-case-large").on("click",function(){window.location.href=elPaths.myself+"cResource.dspDetail&interactivecaseID="+$(this).data("caseid")});initializeTeacherHomepage();initializeFreemiumFeatures();initializeCommonValidatorMethods();checkUTMCodes()});TRACKED_UTM_VALUES=["utm_source","utm_medium","utm_term","utm_content","utm_campaign","utm_type"];NOT_SELECTED="NOT_SELECTED";el={gizmoHelper:{displayGizmos:function(n,t,i,r){var s,u,h,c,f,e,o;try{if(s=document.getElementById(i).firstChild.textContent,"string"===$.type(t)&&(t=$("#"+t)),u=[],"number"==typeof n[0]||"string"==typeof n[0])u=this.getGizmosByID(n,store.get("resources").gizmos,store.get("resources").cases);else if("object"==typeof n[0]){for(h in gizmoIDs=[],n)gizmoIDs.push(Number(n[h].id));for(c in u=store.enabled?this.getGizmosByID(gizmoIDs,store.get("resources").gizmos,store.get("resources").cases):this.getGizmosByID(gizmoIDs,localStorageBackup.resources.gizmos,localStorageBackup.resources.cases),n){f=n[c];for(e in u)o=u[e],parseInt(f.id)==o.resourceID&&(u[e]=$.extend(!0,o,f))}}u=this.filterCaseDupes(u);void 0!==r&&("string"==typeof u[0][r]?u.sort(function(n,t){return n[r].localeCompare(t[r])}):"number"==typeof u[0][r]&&u.sort(function(n,t){return n[r]-t[r]}));$(u).each(function(){t.append(Mark.up(s,this))})}catch(n){throw"store not available.";}},filterCaseDupes:function(n){for(var r,i=[],t=n.length-1;t>=0;--t)n[t].interactivecaseid&&(r=n[t].interactivecaseid+n[t].resourceTypeName,$.inArray(r,i)>=0?n.splice(t,1):i.push(r));return n},getGizmosByID:function(n,t,i){var r=[];return $.each(t,function(){$.inArray(this.resourceID,n)>=0&&(this.isTypeCase="InteractiveCase"==this.resourceTypeName?1:0,this.interactivecaseid&&(this.caseDescription=getCaseDescription(this.interactivecaseid,i)),this.urlTitle=cleanurlTitle(this.title),r.push(this))}),r}},getAjaxBaseUrl:function(){return elPaths.secureBasePath},getContentRoot:function(){return elPaths.contentRoot}};$.urlParam=function(n){var t=new RegExp("[?&]"+n+"=([^&#]*)").exec(window.location.href);return null==t?null:t[1]||0};var AJAX_CHECK_USERNAME="ut",AJAX_URL="index.cfm",AJAX_GET_METHOD="cUser.actAJAXMDR";var AJAX_REQUEST_URL="index.cfm",RESET_STUDENTS_METHOD="cUserSecure.actResetAssessmentResultsG2",UPGRADE_STUDENT_METHOD="cUserSecure.actUpgradeVersionG2",CLASS_TAB_REORDER_METHOD="cUser.actReorderClassTab",ENTER_KEYCODE=13,SMALL_SCREEN_BREAKPOINT=767,isClass=!0,isGizmoList=!1;$(document).on("localStorageReady",function(){var n,t,i,r;store.enabled?(n=store.get("resources").gizmos,t=store.get("resources").cases):(n=localStorageBackup.resources.gizmos,t=localStorageBackup.resources.cases);i={gizmo:'<a class="unviewed-results" href="'+elPaths.myself+'cUserSecure.dspAssessmentResults{{if gizmo.resourceTypeName|equals>MasteryBasedGizmo}}G2{{/if}}&ClassID={{classID}}&ResourceID={{gizmo.resourceID}}"><div class="numberUnviewed"><div class="count">&nbsp;{{unviewedResults}}<span class="glyphicon glyphicon-stats"><\/span><\/div><img src="'+elPaths.imageRoot+'/img/GizmoSnap/{{gizmo.resourceID}}tn_58.png"><\/div><p>{{gizmo.title}}<\/p><\/a>'};r={trigger:"click",placement:function(){return window.innerWidth<SMALL_SCREEN_BREAKPOINT?"left":"right"},html:!0,selector:'.unviewed-results[data-toggle="popover"]',content:function(){var r=$(this);if(!r.data("classid"))return"test";popoverAnchor=r;var f=popoverAnchor.data("classid"),e=String(popoverAnchor.data("assessmentResources")).split(",").map(Number),o=el.gizmoHelper.getGizmosByID(e,n,t),s=String(popoverAnchor.data("assessmentUnviewed")).split(",").map(Number),u="";return $.each(o,function(n){u+=Mark.up(i.gizmo,{gizmo:this,unviewedResults:s[n],classID:f})}),u}};$("body").popover(r);$("body").on("show.bs.popover",function(){$(".popover").popover("hide")});$("body").on("click",function(n){0===$(n.target).closest('[data-toggle="popover"]').length&&0===$(n.target).parents(".popover").length&&$(".popover").popover("hide")});$(document).keyup(function(n){27===n.keyCode&&$(".popover").popover("hide")});$(window).resize(function(){$(".popover").popover("hide")})});$(document).ready(function(){var r=$("#teacher-homepage-tour"),u,i,n;if(r.length){u=new SpotLight({startLocation:".teacherhome-top .teacherhome-spotlight-select",masterCloseBtn:!0,slideCloseBtns:!0,endBtnTxt:"Exit"});r.on("click",function(){u.tour([{selector:".teacherhome-top .teacherhome-spotlight-select",title:"Welcome Home",message:"The teacher homepage is your home base.  All your classes, recommended Gizmos, professional development webinars and more, all in one place."},{selector:"body > div:eq(2) > div:eq(0) > div:eq(0) > div:eq(1)",title:"Gizmo History",message:"Pick up right where you left off with quick access to recently viewed Gizmos."},{selector:".list-of-links > li:eq(0) > a:eq(1)",title:"Class Updates",message:"Keep track of student activity with assessment notifications."},{selector:".teacherhome-top .state-standards-button",title:"Your Standards",message:"Quickly find Gizmos that support your curriculum standards."},{selector:".fixed-bottom-bar button.getting-started-video",title:"Get Started",message:"Get up and running now with our Gizmos Quick Start video."}])})}if($("nav.tabs").sortable({items:"> a.draggable-class-tab",tolerance:"pointer",update:function(){allClasses=$("nav.tabs a.draggable-class-tab, nav.tabs div.dropdown a.draggable-class-tab");setClassTabSortOrder(allClasses.map(function(){return this.dataset.classid}).get().join(", "))}}),$("nav.tabs a.draggable-class-tab").on("mousedown",function(){$(this).tooltip("hide").tooltip("disable")}).on("mouseleave",function(){$(this).tooltip("enable")}),i=$("#gizmoList"),i.data("isgizmolist")&&(isClass=!1,isGizmoList=!0),i.length){function t(n,t){$.ajax({type:"POST",url:"index.cfm",data:{method:"cUserSecure.actManageClass",action:"updateResourceListSortOrder",StartSortOrder:n,ResourceListResourceIDs:t},success:function(n){n.success||notify("<strong>Error:<\/strong> Changes not saved.")}})}n=Sortable.create(i[0],{group:"classGizmos",handle:".drag-handle",animation:90,draggable:".drag-item",ghostClass:"drag-ghost",dataIdAttr:"data-rlrid",onUpdate:function(){t(1,n.toArray().join(", "))}});function f(n,t){$.ajax({type:"POST",url:"index.cfm",data:{method:"cUserSecure.actManageClass",action:"updateResourceListResourceVisibility",isHidden:t?1:0,resourceListResourceID:n},success:function(n){n.success||notify("<strong>Error:<\/strong> Changes not saved.")}})}function e(n){if(0==$("#gizmoList #addDividerTemplate").length){var t=$("#addDividerTemplate").clone().removeClass("hidden").addClass("active");t.find("input").on("keyup",function(n){n.which==ENTER_KEYCODE&&$(this).val().length>0?$(this).parents("#addDividerTemplate").find(".add-header-button").click():$(this).val().length>0?$(this).parent().find("button").attr("disabled",!1):$(this).parent().find("button").attr("disabled",!0)});t.insertBefore(n).find("input").focus()}else $("#gizmoList #addDividerTemplate input").focus()}function o(n,t){n.slideUp("fast",function(){n.remove()});$.ajax({type:"POST",url:"index.cfm",data:{method:"cUserSecure.actManageClass",action:"deleteResourceListResource",resourceListResourceID:t},success:function(n){n.success||notify("Error: Changes not saved.")}})}$(document.body).on("click","[data-rlr-menu]",function(n){var t=$($(this).data("rlr-menu"));t.data("id",$(this).data("id"));var r=$(n.target),u=r.offset(),s=$(document.createElement("div")).addClass("dropdown-backdrop"),f=$("body"),i=r.parents(".drag-item"),e=i.hasClass("rlr-hidden");s.appendTo(f);var o=i.is(":first-child"),h=i.is(":last-child"),c=0==i.nextAll(".divider").length;return t.find("[data-action='group-up']")[i.next().hasClass("card-gizmo")&&!o?"show":"hide"](),t.find("[data-action='group-down']")[i.next().hasClass("card-gizmo")&&!c?"show":"hide"](),t.find("[data-action='up']")[o?"hide":"show"](),t.find("[data-action='down']")[h?"hide":"show"](),t.find(".toggle-hide")[e?"hide":"show"](),t.find(".toggle-unhide")[e?"show":"hide"](),t.appendTo(f),t.css({display:"block",left:u.left-t.width()+r.width(),top:u.top+r.height()}),r.parents(".menu").addClass("active"),!1});$(document).on("click","[data-context] [data-action]",function(i){var v,y,s,p,l;i.preventDefault();var c=$(this),u=c.parents("[data-context]"),k=u.data("context"),h=u.data("id"),d=k+"-"+c.data("action"),r=$("[data-rlrid='"+h+"']"),a=u.hasClass("dropdown-menu");switch(d){case"rlr-up":r.insertBefore(r.prev());t(1,n.toArray().join(", "));break;case"rlr-down":r.insertAfter(r.next());t(1,n.toArray().join(", "));break;case"rlr-cancel-remove":(v=r.find(".confirm-gizmo-delete")).hide();break;case"rlr-remove":(v=r.find(".confirm-gizmo-delete")).length>0?v.show():o(r,h);break;case"rlr-remove-confirm":o(r,h);break;case"rlr-hide":r.addClass("rlr-hidden");f(h,!0);a&&(u.find(".toggle-unhide").show(),u.find(".toggle-hide").hide());break;case"rlr-unhide":r.removeClass("rlr-hidden");f(h,!1);a&&(u.find(".toggle-hide").show(),u.find(".toggle-unhide").hide());break;case"rlr-group-up":y=r.prevAll(".divider");s=r.nextUntil(".divider");0==y.length?$("#gizmoList").prepend(s).prepend(r):(p=y.filter(":first"),r.insertBefore(p),s.insertBefore(p));t(1,n.toArray().join(", "));break;case"rlr-group-down":l=r.nextAll(".divider").filter(":eq(1)");s=r.nextUntil(".divider");0==l.length?$("#gizmoList").append(r).append(s):(r.insertBefore(l),s.insertBefore(l));t(1,n.toArray().join(", "));break;case"rlr-heading":e(r);break;case"manage-heading":e($("#gizmoList div").first());break;case"manage-addHeading":var w=$(this).parents("#addDividerTemplate").find(".heading-input").val(),g=$("#gizmoList").data("rlid"),b=$("#gizmoList #addDividerTemplate").prevAll().length;!function(n,t){var i=$("#addHeadingTemplate").clone().removeClass("hidden");i.find("h4.title span.inner").text(n);$("#addDividerTemplate.active").remove();i.insertBefore($("#gizmoList div.drag-item:nth-child("+t+")"));initializeTooltips()}(w,b+1),function(i,r,u){var f={method:"cUserSecure.actManageClass",action:"addClassResourceListHeading",ClassID:r,HeadingText:i,HeadingSortOrder:u};isGizmoList&&(f={method:"cUserSecure.actManageClass",action:"addGizmoListResourceListHeading",GizmoListID:r,HeadingText:i,HeadingSortOrder:u});$.ajax({type:"POST",url:"index.cfm",data:f,success:function(i){if(i.success){var r=i.data.resourceListResourceID,u=$("#gizmoList #addHeadingTemplate").removeAttr("id");u.attr("data-rlrid",r);u.find("[data-id]").each(function(){$(this).data("id",r)});t(1,n.toArray().join(", "))}else notify("<strong>Error:<\/strong> Changes not saved."),$("#gizmoList #addHeadingTemplate").remove()}})}(w,g,b);break;case"manage-cancelHeading":$("#addDividerTemplate.active").remove()}a&&($(".menu.active").removeClass("active"),u.hide());c.attr("data-original-title")&&c.tooltip("hide")});$(document).on("click",".dropdown-backdrop",function(){$("body > .dropdown-menu").hide();$(".menu.active").removeClass("active")})}$(".el-table-group").on("click","input.select-all-checkboxes",function(){var n=$(this).parents("table").find(".select-student").not(":disabled");1==$(this).prop("checked")?n.prop("checked",!0):n.prop("checked",!1);setActionButton($(this).parents(".el-table-group"))});$(".el-table-group").on("click","table .select-student",function(){$(this).is(":checked")||$(this).parents("table").find(".select-all-checkboxes").prop("checked",!1);setActionButton($(this).parents(".el-table-group"))});$(".el-table-group .action-button").on("click",function(n){$(this).hasClass("disabled")||($(this).parents(".el-table-group").find(".action-confirm").show(),$(this).hide());n.preventDefault()});$(".el-table-group .cancel-action").on("click",function(n){$(this).parents(".el-table-group").find(".action-button").show();$(this).parents(".action-confirm").hide();n.preventDefault()});$(".el-table-group .reset-students").on("click",function(){resetMultipleStudents($(this).parents(".el-table-group"))});$(".el-table-group .reset-single-student").on("click",function(){resetSingleStudent($(this).parents(".el-table-group"))});$(".el-table-group .reset-multiple-students-original").on("click",function(){$(this).parents(".el-table-group").find("#DeleteStudentAnswers").submit()});$(".el-table-group .level-popover").popover({}).on("click, mouseenter",function(){$(this).popover("toggle")}).on("mouseleave",function(){$(this).popover("hide")});$(".recent-title").length&&$(".recent-title").each(function(){if($(this).width()<300&&$(this).html().length>25&&$(this).addClass("small-12-text"),$(this).width()<225&&$(this).html().length>35){var n=$(this).html();$(this).html(n.substring(0,35)+"...")}});$(".card-gizmo.recent").length&&$(".card-gizmo.recent").click(function(){window.location=$(this).data("href")});$(".el-table-group .label-upgrade").on("click",function(){upgradeStudent($(this).attr("data-userid"),$(this))});$(".el-table-group tr.student-data").each(function(){setProgressBar($(this),$(this).find("td.student-progress").attr("data-initial-completion"))});$(".el-table-group .show-level-description").on("click",function(){$(this).siblings(".level-description").toggle();$(this).find("span").toggleClass("glyphicon-triangle-right").toggleClass("glyphicon-triangle-bottom")});$("#rosterForm").on("submit",function(n){var t;n.preventDefault();t=$(this).parents(".el-table-group");t.find(".action-confirm").hide();t.find(".action-button").addClass("disabled").show();var r=$(this).find('input[name="method"]').val(),u=$(this).find('input[name="ClassID"]').val(),i="";$(this).find(".select-student").filter(":checked").each(function(){i+=$(this).val()+","});successFunction=function(){t.find(".select-student").filter(":checked").parents("tr").remove();classSizeCalculations();setActionButton(t)};deleteStudents(r,u,i,successFunction)});$(".el-table-group .notify-block").popover({container:".el-table-group"}).on("click, mouseenter",function(){$(this).popover("toggle")}).on("mouseleave",function(){$(this).popover("hide")});$(".el-table-roster").on("click",".password-toggle",function(){$(this).find(".password-mask").toggleClass("hidden")});freemiumClassInitialization();initializeNewClassValidation();initializeEditClassFormValidation();initializeResetDeleteFormValidation();initializeAddStudentValidation();classSizeCalculations()});saveResults=!1;classIDForResults=0;$(document).ready(function(){$("#resultsStored").length&&(saveResults=$("#resultsStored").val().toLowerCase());$("#classIDForResults").length&&(classIDForResults=$("#classIDForResults").val());$("#selectClassForResults ul a.list-group-item").on("click",function(n){n.preventDefault();$(this).siblings().removeClass("active");$(this).addClass("active");classIDForResults=$(this).data("classid");$("#submitAssessment").removeClass("disabled")});$("#submitAssessment").on("click",function(n){if(n.preventDefault(),!$(this).hasClass("disabled"))if($("#assessmentForm ol ul.options input:checked").length<$("#assessmentForm ol ul.options").length){var t=[];$("#assessmentForm ol li.list-group-item ul.options").each(function(n){0==$(this).find("input:checked").length&&t.push(n+1)});$("#missingQuestions").html(t.join(", "));$("#assessmentSubmitDialogue").show();$(this).parent().hide()}else $(this).addClass("disabled"),processAssessmentSubmit()});$("#confirmAssessmentSubmit").on("click",function(n){n.preventDefault();$(this).addClass("disabled");processAssessmentSubmit()});$("#cancelAssessmentSubmit").on("click",function(n){n.preventDefault();$("#assessmentSubmitDialogue").hide();$("#submitAssessment").removeClass("disabled").parent().show()});$("body").on("click","a.resultsTop",function(n){n.preventDefault();scrollToAssessmentResultsTop()});$("body").on("click","a.assessmentTop",function(n){n.preventDefault();$("#DeleteStudentAnswers").length>0?$(window).scrollTop(0):$(document).scrollTop($("#assessmentQuestionSummary").offset().top-75)});$("body").on("click","#printAssessmentQuestions",function(n){n.preventDefault();printAssessmentQuestions()});$("body").on("click",".question-click",function(n){n.preventDefault();var t=$(this).attr("href");$(window).scrollTop($(t).offset().top-55)});$("body").on("click",".view-past-results",function(n){n.preventDefault();className=$(this).data("classname");answers=$(this).data("answers");resourceID=$("#assessmentForm").find('input[name="ResourceID"]').val();successFunction=function(n){var t=$(n.html).find("#assessmentScorecard");t.find(".student-answer-your-results").html("Saved Results for <strong>"+className+"<\/strong>").show();$("#pastResults").empty().append(t).show()};getAssessmentAnswers(resourceID,!0,answers,successFunction)});$("#gotoAnswersExplanations").on("click",function(n){n.preventDefault();resourceID=$("#assessmentForm").find('input[name="ResourceID"]').val();getAssessmentAnswers(resourceID,!1,"",displayAssessmentResults)});$("#assessmentQuestionSummaryContainer").length>0&&(resourceID=$("#assessmentResourceID").val(),successFunction=function(n){var t=$(n.html).find("#assessmentQuestionSummary");$("#assessmentQuestionSummaryContainer").append(t)},getAssessmentAnswers(resourceID,!1,"",successFunction))});AJAX_REQUEST_URL="index.cfm";$(document).ready(function(){addCharacterCounter($("#addLessonMaterialsForm textarea"),300);addCharacterCounter($("#addLessonMaterialsForm .input-sm"),100);addCharacterCounter($("#editUserLessonMaterial textarea"),300);addCharacterCounter($("#shareClassGizmosForm textarea"),256);$("div.whatITeachFormElements ul.nav a").on("click",function(n){$(this).parent("li").addClass("active").siblings().removeClass("active");var t=$(this).parents("form").find('input[name="academicLevel"]');t.length>0&&t.val($(this).parent("li").data("level"));displayWhatITeachFormElements($(this).parents(".whatITeachFormElements"));n.preventDefault()});$("div.whatITeachFormElements div.subjects input").on("change",function(){displayWhatITeachFormElements($(this).parents(".whatITeachFormElements"))});$("div.whatITeachFormElements").each(function(){displayWhatITeachFormElements($(this))});$("#registerForm #username").on("keyup change",function(){successFunction=function(n){n?$("#usernameUnique").val("").valid():$("#usernameUnique").val("true").valid()};usernameIsTaken($(this).val(),successFunction)});initializeAddLessonMaterialsValidation();initializeAddRecommendationValidation();initializeWhatITeachValidation();initializeShareClassGizmosValidation();initializeUserRegistrationValidation();initializeUpdateProfileValidation();initializeCommentFormValidation();initializeGetLoginFormValidation();initializeDeleteGizmoListValidation();initializeContactUsForm();addWhatITeachValidationSettings()});UTM_SOURCE_TWITTER="twitter";UTM_SOURCE_FACEBOOK="facebook";UTM_SOURCE_WEBSITE="website";UTM_MEDIUM_SOCIAL="social";UTM_MEDIUM_EMAIL="email";$(document).ready(function(){initializeFacebookSharing();initializeTweetValidation();initializeShareEmailValidation()});gizmoOnLoadFired=!1;$(document).ready(function(){function n(){$("#lessonInfo").collapse("toggle")}$("#gizmoHolder").length&&($("#g.html5").length&&($("#gizmoHolder").data("getset-enabled")?initializeGetterSetterGizmo():$("#gizmoHolder").data("mbg")?initializeMasteryBasedGizmo():initializeHTML5Gizmo()),resizeGizmo(),windowWidth=$(window).width(),windowHeight=$(window).height(),$(window).resize(function(){$(window).width()==windowWidth&&$(window).height()==windowHeight||(resizeGizmo(),windowWidth=$(window).width(),windowHeight=$(window).height())}));$("body").on("click","#exitFullScreenMode",onFullScreenExit);$("body").keyup(function(n){27==n.keyCode&&onFullScreenExit()});$("#openGizmoInfo").popover({html:"true"});$("#openGizmoInfo").on("show.bs.popover",function(){$(this).tooltip("hide");$(this).tooltip("disable");$("#openGizmoInfo").removeClass("glyphicon-info-sign").addClass("glyphicon-remove-circle")});$("#openGizmoInfo").on("hidden.bs.popover",function(){$(this).tooltip("enable");$("#openGizmoInfo").removeClass("glyphicon-remove-circle").addClass("glyphicon-info-sign")});$("#openGizmoInfo").tooltip({title:"View Gizmo Info"});$(".launch-fullscreen-mode").on("click",function(){enterFullScreen()});$(document).on("fullscreenchange webkitfullscreenchange mozfullscreenchange MSFullscreenChange",function(){isFullscreen()||onFullScreenExit()});$("#affixedBarWrap.gizmo-bar").on("click",".header",function(n){0==$(n.target).parents(".pull-right").length&&$("#lessonInfo").collapse("toggle")});$("#answerKey").length&&$("body").append($("#answerKey").remove());$("#lessonInfo").on("shown.bs.collapse",function(){$("body").append($("<div/>",{id:"closeLessonInfoBackgroundDiv",style:"position:absolute; top: 0; left: 0; right: 0; bottom: 0;"}));$("body").on("click","#closeLessonInfoBackgroundDiv",n)});$("#lessonInfo").on("hide.bs.collapse",function(){$("body").unbind("click",n);$("#closeLessonInfoBackgroundDiv").remove()})});var lastSavedGizmoState,initialGizmoState,resourceID,releaseVersion,allSavedPresets,mySavedPresets,pctParameters,iframeWindow,debugModeEnabled=!1,presetsEnabled=!1,pctInProgress=!1,AJAX_PRESET_ENDPOINT="cUserSecure.actUserResourcePresets",GETTER_SRC_DEBUG="debug",GETTER_SRC_PRESET="preset",GETTER_SRC_INITIALIZE="initialize",GETTER_SRC_PRESET_TEST="presetTest",GETTER_SRC_PAUSE="pause",PRESET_TITLE_DISPLAY_LIMIT=45;ERROR_LOG_ENDPOINT="cUserSecure.logUserError";$(document).ready(function(){resourceID=$("#gizmoHolder").data("resourceid");window.addEventListener("message",receiveMessage,!1);(presetsEnabled=$("#presetHelp").length>0)&&initializePresets();(debugModeEnabled=$(".gs-debug-menu").length>0)&&initializeGSDebug(resourceID);$(".preview-release").on("click",function(){var n=$(this).data("version");n!=$("#deployedVersion").val()&&($("#deployedRelease").val(n),$(".gizmo-version").text(n),resetIframewindow(),clearCurrentGizmo(),initializeGetterSetterGizmo(),resizeGizmo())})});presetMenu='<span class="glyphicon glyphicon-option-vertical preset-menu" data-rel="tooltip" title="Edit"><\/span>';SCREENSHOT_CAMERA_ID="toolPanel";var ROUNDING_THRESHOLD=.1,DIFF_VALUE_CLASS="value-compare-warning",STRUCTURE_WARNING_CLASS="structure-compare-warning";LOAD_PRESETS_ALL_USERS="all";LOAD_PRESETS_ALL_GIZMOS=-1;currentFilter="all";displayArea=null;$(document).ready(function(){var n=$.getQueryParameters();n.hasOwnProperty("method")&&"cResource.dspResourceCatalog"==n.method&&location.hash&&$(location.hash+"Panel").length&&$(location.hash+"Panel").find(".glyphicon")[1].click();displayArea=$("#browse-results")});$("div.panel-correlation div.panel-heading").on("click",function(){var n=$(this).parents(".panel");n.find(".controls .glyphicon").toggleClass("hide");n.children(".panel-body").toggleClass("hide")});$("div.panel-correlation").length&&(window.onhashchange=function(){$(location.hash+"Panel").length&&($(".panel .panel-body").addClass("hide"),$(".controls .glyphicon-menu-up").addClass("hide"),$(".controls .glyphicon-menu-down").removeClass("hide"),$(location.hash+"Panel").find(".glyphicon")[1].click())});$(document).on("localStorageReady",function(){var t=document.URL.replace(/&browse=.*/,""),n=!1;window.addEventListener("popstate",function(){n?n=!1:interpretParam()},!1);$(".browse-menu").on("click","a",function(){var u,f,c,i,r,e,o,s,h,l;$("body").append($("#addToClassMenu"));u=$(this);f=$("#"+u.parents(".browse-menu").data("browse-btn"));changeBtnText(f,u.text());f.data("value",u.data("value"));c=$("#"+f.data("dependent"));disableDependents(c);r="";i=store.enabled?store.get("browseTree").tree.subjects:localStorageBackup.browseTree.tree.subjects;e=$("#browse-subject");e.hasClass("hide")||"All"===e.data("value")||(r+=e.data("value"),i=i[e.data("value")].gradeLevels,o=$("#browse-gradeLevel"),o.hasClass("hide")||"All"===o.data("value")||(r=r+"/"+o.data("value"),i=i[o.data("value")].topics,s=$("#browse-topic"),s.hasClass("hide")||"All"===s.data("value")||(r=r+"/"+s.data("value"),i=i[s.data("value")].subtopics,h=$("#browse-subTopic"),h.hasClass("hide")||"All"===h.data("value")||(r=r+"/"+h.data("value"),i=i[h.data("value")].resources))));("All"!==u.data("value")&&constructDropdown(c,i),n=!0,r=r.replace(/\s/g,"+"),history.pushState({},"",t+"&browse="+JSON.stringify(r).replace(/\"/g,"")),"All"===f.data("value"))?(l=$('[data-dependent="'+f.attr("id")+'"]'),l.length>0?changeHeader(l.text()):changeHeader("Gizmo Catalog")):changeHeader(u.text());displayArea.empty();el.gizmoHelper.displayGizmos(addTeacherProp(gizmoTreeToList(i)),displayArea,"horizontalTemplate","sortOrder");!Array.isArray(i)&&Object.keys(i).length;applyFilter(currentFilter)});$("#resourceExplorer .tab[data-filter]").on("click",function(){$(".tab").removeClass("active");$(this).addClass("active");applyFilter($(this).data("filter"))});$("[class^=caseVideo]").click(function(){var n=this.className.replace("caseVideo","");$("#videoModal"+n).modal("show")});$("[id^=videoModal]").on("hide.bs.modal",function(){$(this).find("video")[0].pause()});$("[id^=videoModal]").on("shown.bs.modal",function(){$(this).find("video")[0].play()})});$(document).ready(function(){var i=1600,n=1,t=$(window).width();t<=991?n=.625:t<=1199?n=.75:t<=1279?n=.875:t<=1499&&(n=1);$(".imageHandler").each(function(){var u=n,r=i,f=100,e="image",t;"background"==$(this).data("mtype")&&(e="background");$(this).data("mratio")&&!isNaN($(this).data("mratio"))&&(u*=$(this).data("mratio"));$(this).data("mwidth")&&!isNaN($(this).data("mwidth"))&&(r=$(this).data("mwidth"));$(this).data("mquality")&&!isNaN($(this).data("mquality"))&&(f=$(this).data("mquality"));r=Math.round(r*u);t=$(this).data("msrc")+"?w="+r+"&quality="+f;$(this).data("mheight")&&(thisheight=Math.round($(this).data("mheight")*u),t=t+"&h="+thisheight);$(this).data("mformat")&&(t=t+"&format="+$(this).data("mformat"));$(this).data("mmode")&&(t=t+"&mode="+$(this).data("mmode"));$(this).data("mscale")&&(t=t+"&scale="+$(this).data("mscale"));$(this).data("manchor")&&(t=t+"&anchot="+$(this).data("manchor"));"image"==e?$(this).attr("src",t):$(this).css("background-image","url('"+t+"')")})});window.addEventListener("click",function(n){this.document.querySelectorAll(".detail-summary-dropdown").forEach(function(t){t.contains(n.target)||(t.open=!1)})})