{"version":3,"sources":["../../../pages/home/program_view.js"],"names":["doc","NUMTOLOAD","ProgramViewPage","progContainer","app","$","filterBoxArea","btnLoadMore","btnLaunch","lastIdx","prgIdx","curProvider","loadIndex","bindFilterEvents","topOfFilterBox","getBoundingClientRect","top","bindLaunch","btnClear","btnApply","btnfilterClose","addEventListener","body","classList","remove","toggle","y","util","getWindowScrollPosition","lastProgramItem","loadingPrograms","window","innerHeight","offsetTop","loadList","fetch","then","rsp","success","innerHTML","obj","console","log","msg","scrollTo","ddProvider","gradeArea","contentArea","grades","contents","$$","forEach","el","value","filter","providerId","cleanContainer","length","cntr","neededPrgs","insertMonthBefore","push","programId","provider","programs","displayPrgs","i","prg","idxBefore","indexOf","cnt","e","providerDisplay","createElement","textContent","add","appendChild","onePrgContainer","html","a","ProgramItem","requestAnimationFrame","cbFree","progItems","checked","cost","prog","prevMonthHdr","previousSibling","nextMonthHdr","nextSibling","JSON","stringify","pvp","document"],"mappings":"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","file":"program_view.js","sourcesContent":["( function( doc ) {\r\n\t'use strict';\r\n\r\n const NUMTOLOAD = 5;\r\n\r\n\tclass ProgramViewPage {\r\n\t\tconstructor() {\r\n\t\t\tthis.progContainer = app.$( '#program-container' );\r\n\t\t\tthis.filterBoxArea = app.$( '#filter-box-area' );\r\n\t\t\tthis.btnLoadMore = app.$( '#btn-load-more' );\r\n\t\t\tthis.btnLaunch = app.$( '#bt-open-filter' );\r\n this.lastIdx = -1;\r\n this.prgIdx = [];\r\n this.curProvider = '';\r\n this.loadIndex();\r\n this.bindFilterEvents();\r\n this.topOfFilterBox = this.filterBoxArea.getBoundingClientRect().top;\r\n this.bindLaunch();\r\n\t\t}\r\n\r\n bindFilterEvents() {\r\n \tconst btnClear = app.$( '#btn-clear-filter' );\r\n \tconst btnApply = app.$( '#btn-apply-filter' );\r\n \tconst btnfilterClose = app.$( '#btn-box-close' );\r\n\r\n \tif ( btnfilterClose ) {\r\n \t\tbtnfilterClose.addEventListener( 'click', e => {\r\n \t\t\tdoc.body.classList.remove( 'nav-in' );\r\n \t\t\tdoc.body.classList.toggle( 'filter-in' );\r\n \t\t} );\r\n \t}\r\n\r\n \tdoc.addEventListener( 'scroll', e => {\r\n \t\tconst y = app.util.getWindowScrollPosition();\r\n\r\n //let newTopMargin = y - this.topOfFilterBox;\r\n\r\n //if ( newTopMargin < 0 ) {\r\n // newTopMargin = 0;\r\n //}\r\n\r\n //if ( newTopMargin > 40 && this.progContainer.offsetHeight > this.filterBoxArea.offsetHeight ) {\r\n // this.filterBoxArea.classList.add( 'fixed' );\r\n //} else {\r\n // this.filterBoxArea.classList.remove( 'fixed' );\r\n //}\r\n\r\n \t// Auto load more content on scroll\r\n if ( this.lastProgramItem && !this.loadingPrograms ) {\r\n\r\n \tif ( y + window.innerHeight >= this.lastProgramItem.offsetTop ) {\r\n \t\tthis.loadList(false);\r\n \t}\r\n }\r\n\r\n } );\r\n\r\n if ( this.btnLoadMore ) {\r\n this.btnLoadMore.addEventListener( 'click', e => {\r\n this.loadList(false);\r\n });\r\n }\r\n\r\n if ( btnClear ) {\r\n btnClear.addEventListener( 'click', e => {\r\n app.$.fetch( 'api/programEventFitlerBoxGet', {}).then( rsp => {\r\n\r\n \tif ( rsp.success ) {\r\n this.filterBoxArea.innerHTML = rsp.obj;\r\n this.bindFilterEvents();\r\n this.loadIndex();\r\n } else {\r\n console.log( rsp.msg );\r\n }\r\n\r\n window.scrollTo( 0, 0 );\r\n } );\r\n });\r\n }\r\n\r\n if ( btnApply ) {\r\n\r\n btnApply.addEventListener( 'click', e => {\r\n //collect filter settings\r\n const ddProvider = app.$( '#dd-provider' ),\r\n gradeArea = app.$( '#grade-filter' ),\r\n contentArea = app.$( '#content-filter' );\r\n\r\n let grades = '',\r\n contents = '';\r\n\r\n app.$$('input[type=\"checkbox\"]:checked', gradeArea).forEach(el => {\r\n grades += el.value + ',';\r\n });\r\n\r\n app.$$('input[type=\"checkbox\"]:checked', contentArea).forEach(el => {\r\n contents += el.value + ',';\r\n });\r\n\r\n const filter = {\r\n providerId: ddProvider.value,\r\n grades: grades,\r\n contents: contents\r\n };\r\n\r\n this.loadIndex( filter );\r\n\r\n doc.body.classList.remove( 'filter-in' );\r\n\r\n window.scrollTo( 0, 0 );\r\n } );\r\n }\r\n }\r\n\r\n loadList( cleanContainer ) {\r\n\r\n //First we need to build a list of the next needed events\r\n if ( this.lastIdx < this.prgIdx.length ) {\r\n\t\t\t\t\r\n let cntr = 1,\r\n neededPrgs = [],\r\n insertMonthBefore = [];\r\n\r\n //Build list of needed events to pass to web service\r\n while ( this.lastIdx < this.prgIdx.length - 1 ) {\r\n \tthis.lastIdx += 1;\r\n\r\n neededPrgs.push( this.prgIdx[this.lastIdx].programId );\r\n\r\n if ( this.prgIdx[this.lastIdx].provider !== this.curProvider ) {\r\n insertMonthBefore.push( this.prgIdx[this.lastIdx].programId );\r\n this.curProvider = this.prgIdx[this.lastIdx].provider;\r\n }\r\n cntr += 1;\r\n if ( cntr > NUMTOLOAD ) {\r\n break;\r\n }\r\n }\r\n\r\n if ( neededPrgs.length > 0 ) {\r\n \tthis.loadingPrograms = true;\r\n\r\n app.$.fetch( 'api/programsGetForView', {\r\n body: {\r\n programs: neededPrgs\r\n }\r\n }).then( rsp => {\r\n\r\n if ( rsp.success ) {\r\n \t\r\n \tconst displayPrgs = rsp.obj;\r\n\r\n if ( cleanContainer ) {\r\n this.progContainer.innerHTML = '';\r\n }\r\n\r\n for ( let i = 0; i < displayPrgs.length; i++ ) {\r\n let prg = displayPrgs[i];\r\n\t\t\t\t\t\t\r\n //Check to see if we need to insert the Month before current event\r\n let idxBefore = insertMonthBefore.indexOf( prg.programId );\r\n if ( idxBefore > -1 ) {\r\n // need to insert month header, find the event in the EventList to get month display string.\r\n for ( let cnt = 0; cnt < this.prgIdx.length; cnt++ ) {\r\n let e = this.prgIdx[cnt];\r\n \tif ( e.programId === insertMonthBefore[idxBefore] ) {\r\n \t\tlet providerDisplay = doc.createElement( 'div' );\r\n \t\tproviderDisplay.textContent = e.provider;\r\n \t\tproviderDisplay.classList.add( 'program-view-provider-head' );\r\n this.progContainer.appendChild( providerDisplay );\r\n }\r\n }\r\n }\r\n\r\n //dislay the program on page\r\n let onePrgContainer = doc.createElement( 'div' );\r\n onePrgContainer.innerHTML = prg.html;\r\n this.progContainer.appendChild( onePrgContainer );\r\n let a = new app.ProgramItem(prg.programId, onePrgContainer);\r\n\r\n if ( i + 1 === displayPrgs.length ) {\r\n\r\n /* jshint loopfunc: true */\r\n requestAnimationFrame( _ => this.lastProgramItem = onePrgContainer);\r\n\r\n \t// Display FREE when they enter 0 as Cost\r\n // const costValue = app.$$( '.cost-val' );\r\n\r\n // costValue.forEach( el => {\r\n \t\t//if (el.innerHTML === '$0' || el.innerHTML === '0') {\r\n \t\t//\tel.innerHTML = 'FREE';\r\n \t\t//}\r\n // } );\r\n }\r\n } // end of program list loop\r\n\r\n const cbFree = app.$( '#cb-free' );\r\n const progItems = app.$$( '.program-item-container' );\r\n\r\n if ( cbFree.checked ) {\r\n progItems.forEach( prog => {\r\n const cost = app.$( '.cost-val', prog );\r\n const prevMonthHdr = prog.previousSibling;\r\n const nextMonthHdr = prog.nextSibling;\r\n\r\n if ( cost.textContent === '$FREE' || cost.textContent === 'FREE' ) {\r\n prog.classList.add( 'free' );\r\n } else {\r\n prog.classList.add( 'not-free' );\r\n }\r\n\r\n } );\r\n }\r\n\r\n } else {\r\n console.log( rsp.msg );\r\n }\r\n\r\n this.loadingPrograms = false;\r\n\r\n });\r\n }\r\n\r\n if ( neededPrgs.length < NUMTOLOAD ) {\r\n this.btnLoadMore.classList.add( 'hidden' );\r\n }\r\n\r\n } else {\r\n this.btnLoadMore.classList.add( 'hidden' );\r\n }\r\n }\r\n\r\n\r\n loadIndex( filter ) {\r\n\r\n if ( !filter ) {\r\n filter = {\r\n providerId: -1,\r\n grades: '',\r\n contents: ''\r\n };\r\n }\r\n\r\n this.btnLoadMore.classList.add( 'hidden' );\r\n this.progContainer.innerHTML = '
';\r\n this.curProvider = '';\r\n\r\n app.$.fetch( 'api/programsGetFiltered', {\r\n\t\t\t\tbody: {\r\n filter: JSON.stringify(filter)\r\n\t\t\t\t}\r\n\t\t\t} ).then( rsp => {\r\n\t\t\t\tif ( rsp.success ) {\r\n this.prgIdx = rsp.obj;\r\n this.lastIdx = -1;\r\n this.progContainer.innerHTML = '';\r\n this.btnLoadMore.classList.remove( 'hidden' );\r\n this.loadList( true );\r\n\t\t\t\t} else {\r\n\t\t\t\t\tconsole.log( rsp.msg );\r\n\t\t\t\t}\r\n\t\t\t} );\r\n }\r\n\r\n bindLaunch() {\r\n \tif ( this.btnLaunch ) {\r\n \t\tthis.btnLaunch.addEventListener( 'click', e => {\r\n \t\t\tdoc.body.classList.toggle( 'filter-in' );\r\n \t\t} );\r\n \t}\r\n }\r\n\t}\r\n\r\n\tlet pvp = new ProgramViewPage();\r\n\r\n} )( document );"]}