{"version":3,"sources":["app/globals.js","app/murli.js","app/scrollfade.js","app/slideoutmenu.js","app/utils.js","app/zoom.js","app/initialize.js"],"names":["Globals","CordovaFileCache","require","CordovaPromiseFS","fs","persistent","storageSize","concurrency","Promise","cache","mode","localRoot","module","exports","MurliModule","slideOutMenu","utils","moment","avyaktMurliDates","murliReady","menuReady","isMurliApp","navigator","userAgent","indexOf","isOffline","onLine","connection","type","globals","checkMurliExists","config","callback","cat","url","baseUrl","lang","currentDate","format","fetch","method","then","response","ok","catch","err","console","log","toPath","existsInCache","exists","loadMurli","murliContainer","$","html","text","body","write","trigger","entry","read","content","error","moveToDate","d","pos","length","previousDate","nextDate","subtract","add","onFileOpenSuccess","data","message","onFileOpenError","alert","endsWith","str","suffix","downloadFile","filename","device","platform","mimeType","fail","success","cordova","plugins","DownloadManager","download","storageLocation","file","dataDirectory","requestFileSystem","LocalFileSystem","PERSISTENT","resolveLocalFileSystemURL","fileEntry","fullPath","fileOpener2","open","toURL","fileSystem","getDirectory","create","exclusive","dir","getFile","ProgressIndicator","showSimpleWithLabel","req","XMLHttpRequest","responseType","onload","oEvent","blob","createWriter","writer","onwriteend","evt","hide","send","errorCallback1","errorCallback2","errorCallback3","getFSFail","e","JSON","stringify","target","code","langSwitchCtl","conf","_private","bind","unbind","change","val","init","localStorage","setItem","window","gaU","navCtls","click","date","ordinalSuffixOf","today","clone","isAfter","prop","removeClass","addClass","downloadCtls","windowWidth","removeAttr","toggle","document","on","event","closest","setAudio","audioType","play","pause","ext","setSrc","renderAudioBtn","audios","filter","style","display","show","width","renderPlayer","getItem","audioSrc","empty","append","mediaelementplayer","autosizeProgress","enableAutosize","defaultAudioWidth","parent","stretching","features","timeAndDurationSeparator","me","addEventListener","pdfFilename","attr","removeItem","initAudioCtls","initControls","print","initSong","audioHeight","onAvyaktListReady","avyaktMurliDates1","onMurliReady","iScrollPos","scroll","delta","iCurScrollPos","scrollTop","Math","abs","marginTop","height","css","fadeIn","SlideOutMenu","menuClose","slideoutMenu","slideoutMenuWidth","animate","right","loadMetaData","localFilename","json","generateAvyaktMenu","reverse","readJSON","generateSeasonMenu","years","app","each","y","year","months","m","days","id","push","$date","options","endDate","Date","toDate","autoShow","startDate","inline","container","language","offset","weekStart","startView","datepicker","preventDefault","toggleClass","hasClass","stopImmediatePropagation","children","slideToggle","location","reload","socialsharing","share","Userback","Utils","i","j","k","isBlank","test","Zoom","savedFontSize","currentFontSize","parseInt","fontSize","zoom","murliApp","pullToRefresh","screen","orientation","replaceWith","now","darkTheme","reqUrl","href","redirectPar","substring","params","split","isValid","$win","$self","isHidden","lastScrollTop","mainElement","onRefresh"],"mappings":"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","file":"public/app.js","sourcesContent":["var Globals = (function() {\n\t'use strict';\n\n\tvar CordovaFileCache = require('cordova-file-cache');\n\tvar CordovaPromiseFS = require('cordova-promise-fs');\n\tvar fs = new CordovaPromiseFS({ // An instance of CordovaPromiseFS is REQUIRED\n\t\t\t persistent: true,\n\t\t\t storageSize: 20 * 1024 * 1024,\n\t\t\t concurrency: 3,\n\t\t\t Promise: Promise\n\t\t\t});\n\tvar cache = new CordovaFileCache({\n\t\t\t fs: fs,\n\t\t\t mode: 'hash', // or 'hash', optional\n\t\t\t localRoot: 'data' //optional\n\t\t\t //serverRoot: 'http://yourserver.com/files/', // optional, required on 'mirror' mode\n\t\t\t //cacheBuster: false // optional\n\t\t\t});\n\n\n\treturn {\n\t\tfs : fs,\n\t\tcache : cache\n\t}\n}());\n\nmodule.exports = Globals;","var MurliModule = (function () {\n 'use strict';\n var slideOutMenu = require('./slideoutmenu');\n var utils = require('./utils');\n var moment = require('moment');\n var avyaktMurliDates = [];\n var murliReady = false;\n var menuReady =false;\n var isMurliApp = navigator.userAgent.indexOf(\"MurliApp\") !== -1;\n var isOffline = ('onLine' in navigator && !navigator.onLine) || (typeof navigator.connection != 'undefined' && navigator.connection.type === 'none');\n var globals = require('globals.js');\n\n function checkMurliExists(config, type, callback) {\n if (config.cat == \"season\") {\n callback(false);\n return;\n }\n var url = '';\n if (type == 'audio1')\n url = config.baseUrl + \"/murlis/\" + config.lang + \"/mp3/murli-\" + config.currentDate.format('YYYY-MM-DD') + \".mp3\";\n else if (type == 'audio2')\n url = config.baseUrl + \"/murlis/\" + config.lang + \"/mp3/murli-\" + config.currentDate.format('YYYY-MM-DD') + \"-\" + ((config.lang == \"hi\") ? \"osb\" : \"e2\") + \".mp3\";\n else if (type == 'essence')\n url = config.baseUrl + \"/murlis/\" + config.lang + \"/mp3/murli-\" + config.currentDate.format('YYYY-MM-DD') + \"-\" + 'ess' + \".mp3\";\n else if (type == 'experiment')\n url = config.baseUrl + \"/murlis/\" + config.lang + \"/mp3/me-\" + config.currentDate.format('YYYY-MM-DD') + \".mp3\";\n else if (type == 'song')\n url = config.baseUrl + \"/murlis/hi/mp3/song-\" + config.currentDate.format('YYYY-MM-DD') + \".mp3\";\n else {\n callback(false);\n return;\n }\n //console.log('Checking murli on url: ' + url);\n //else if (type == 'latest')\n // url = \"/murlis/\" + config.lang + \"/mp3/latest.mp3\";\n //console.log('Checking file: ' + url);\n fetch(url, {\n method: 'HEAD'\n }).then(function (response) {\n callback(response.ok);\n }).catch(function (err) {\n\t\t\tif (isOffline) {\n\t\t\t\tconsole.log('App is offline checking cache for file: ' + globals.cache.toPath(url));\n\t\t\t\tvar existsInCache = globals.fs.exists(globals.cache.toPath(url));\n\t\t\t\tconsole.log('Exists in cache is ' + !(existsInCache == false));\n\t\t\t callback(!(existsInCache == false));\n\t\t\t}\n\t\t\telse {\n\t\t\t\tconsole.log(\"No murli found or isOffline\");\n\t\t\t callback(false);\n\t\t\t}\n });\n }\n\n function loadMurli(config) {\n var murliContainer = $(\"#murli-container\");\n murliContainer.html('

Please have a moment of remembrance whilst the murli is loading....

');\n var url = config.baseUrl + \"/murlis/\" + config.lang + \"/html/murli-\" + config.currentDate.format('YYYY-MM-DD') + \".html\";\n if (config.cat == \"season\")\n url = config.baseUrl + \"/murlis/\" + config.lang + \"/html/murli-\" + config.currentDate.format('YYYY-MM-DD') + \"-season.html\";\n\n fetch(url).then(function (response) {\n if (response.ok) {\n \treturn response.text();\n }\n return '

The requested murli does not seem to be available at the moment.
Please try again later.

';\n }).then(function (body) {\n globals.fs.write(globals.cache.toPath(url), body);\n murliContainer.html(body);\n murliContainer.trigger('murliready', config);\n }).catch(function (err) { \n console.log('Trying to read murli from cache. File: ' + globals.cache.toPath(url));\n\n\t\t\tglobals.fs.exists(globals.cache.toPath(url)).then(function(entry) {\n\t\t\t\tglobals.fs.read(globals.cache.toPath(url)).then(function(content) {\n\t\t\t\t\tmurliContainer.html(content);\n\t\t\t\t\tmurliContainer.trigger('murliready', config);\n\t\t\t\t}).catch(function(err) {\n\t\t\t\t\tconsole.error('An error occurred reading murli from cache. Error: ', err);\n\t\t\t\t});\n\t\t\t}).catch(function(err) {\n\t\t\t\tconsole.error('File does not exist: ' + globals.cache.toPath(url));\n\t\t\t\tif (isOffline)\n\t\t\t\t\tmurliContainer.html('

You're currently offline, so I could not retrieve the requested murli.
Please try again when you're online.

');\n\t\t\t\telse\n\t\t\t\t\tmurliContainer.html('

The requested murli does not seem to be available at the moment.
Please try again later.

');\n\t\t\t\tmurliContainer.trigger('murliready', config);\n\t\t\t});\n });\n };\n\n function moveToDate(config, d) {\n //console.log('Moving to date: ' + ((d) ? d.format() : config.currentDate.format()) + ', ' + config);\n murliReady = false;\n $(\"#murli-container\").html(\"Have a moment of remembrance whilst I'm loading the murli.\");\n if (d) {\n config.currentDate = d;\n if (config.cat == 'season') {\n var pos = avyaktMurliDates.indexOf(d.format('YYYY-MM-DD'));\n if (pos > 0 && pos < avyaktMurliDates.length - 1) {\n config.previousDate = moment(avyaktMurliDates[pos - 1]);\n config.nextDate = moment(avyaktMurliDates[pos + 1]);\n }\n else if (pos < 1) {\n config.previousDate = moment('1900-01-01');\n config.nextDate = moment(avyaktMurliDates[pos + 1]);\n }\n else if (pos > avyaktMurliDates.length - 1) {\n config.nextDate = moment('2099-12-31');\n config.previousDate = moment(avyaktMurliDates[pos - 1]);\n }\n }\n else {\n config.previousDate = moment(d).subtract(1, 'days');\n config.nextDate = moment(d).add(1, 'days');\n }\n }\n loadMurli(config);\n}\n\n\n // onSuccess Callback\n // This method accepts a JSON object, which contains the\n // message response\n var onFileOpenSuccess = function(data) {\n console.log('File successfully opened. ' + data.message);\n };\n\n // onError Callback receives a json object\n function onFileOpenError(error) {\n alert('Error message: ' + error.message);\n }\n function endsWith(str, suffix) {\n return str.indexOf(suffix, str.length - suffix.length) !== -1;\n }\n\n function downloadFile(url, filename){\n if (device.platform == \"Android\") {\n //storageLocation = cordova.file.externalApplicationStorageDirectory;\n var mimeType = 'audio/mpeg';\n if (endsWith(filename, 'pdf')) {\n mimeType = 'application/pdf';\n }\n var fail = function (message) { \n alert(message);\n };\n var success = function (data) {\n console.log(\"Succes downloading \" + filename);\n };\n cordova.plugins.DownloadManager.download(url, null, filename, mimeType, null, success, fail);\n }\n else {\n // ==================================================\n // # iOS\n // ==================================================\n var storageLocation = cordova.file.dataDirectory;\n requestFileSystem(LocalFileSystem.PERSISTENT, 0, function (fs) {\n console.log(\"StorageLocation = \" + storageLocation);\n resolveLocalFileSystemURL(storageLocation + 'Download/' + filename, function (fileEntry) { \n console.log(\"File \" + fileEntry.fullPath + \" exists!\");\n //cordova.plugins.FileOpener.openFile(fileEntry.toURL(), onFileOpenSuccess, onFileOpenError);\n cordova.plugins.fileOpener2.open(fileEntry.toURL(), null, {\n success: onFileOpenSuccess,\n error: onFileOpenError\n });\n },\n function() {\n resolveLocalFileSystemURL(storageLocation, \n function(fileSystem) {\n fileSystem.getDirectory('Download', {\n create: true,\n exclusive: false\n },\n function(dir) {\n dir.getFile(filename, {create:true}, function(file) {\n ProgressIndicator.showSimpleWithLabel(false, 'Downloading...');\n var req = new XMLHttpRequest();\n console.log('Downloading file: ' + url);\n req.open(\"GET\", url, true);\n req.responseType = \"blob\";\n req.onload = function (oEvent) {\n var blob = req.response;\n if (blob) { \n file.createWriter(function (writer) {\n writer.onwriteend = function (evt) {\n console.log(\"File written successfully.\");\n ProgressIndicator.hide();\n cordova.plugins.fileOpener2.open(\n file.toURL(),\n null,\n {\n success: onFileOpenSuccess,\n error: onFileOpenError\n });\n };\n writer.write(blob);\n }, function (error) {\n ProgressIndicator.hide();\n console.log(\"Failed to write file.\");\n alert('Error message: ' + error.message);\n });\n } else {\n ProgressIndicator.hide();\n console.error('Did not receive a XHR response for: ' + url);\n alert('Error message: Failed to download file. Please try again later.');\n }\n };\n req.send(null);\n } ,errorCallback1);\n } ,errorCallback2);\n }, errorCallback3\n );\n console.log('File download complete'); \n });\n }, getFSFail); //of requestFileSystem\n }\n }\n\n var errorCallback1 = function(e) {\n console.log('1' + JSON.stringify(e, null, 4));\n }\n var errorCallback2 = function(e) {\n console.log('2' + JSON.stringify(e, null, 4));\n }\n var errorCallback3 = function(e) {\n console.log('3' + JSON.stringify(e, null, 4));\n }\n\n function getFSFail(evt) {\n console.log(evt.target.error.code);\n }\n\n var langSwitchCtl = function() {\n var conf;\n \n var _private = {\n bind: function () { \n $(\"#lang-switch\").unbind().change(function () {\n conf.lang = $(this).val();\n conf.cat = \"daily\";\n slideOutMenu.init(conf);\n moveToDate(conf);\n //init(conf);\n localStorage.setItem(\"murli.lang\", conf.lang);\n window.gaU('send', 'event', { 'eventCategory': 'Language', 'eventAction': 'selection', 'eventLabel': conf.lang });\n });\n }\n };\n \n return {\n init: function (config) {\n conf = config;\n _private.bind();\n }\n };\n }();\n\n var navCtls = function () {\n var conf;\n \n var _private = {\n bind: function () { \n $(\"#back-btn\").unbind().click(function () {\n //conf.cat = 'daily';\n moveToDate(conf, conf.previousDate);\n window.gaU('send', 'event', { 'eventCategory': 'Navigation', 'eventAction': 'click', 'eventLabel': 'Navigate back ' + conf.lang });\n });\n $(\"#forward-btn\").unbind().click(function () {\n //conf.cat = 'daily';\n moveToDate(conf, conf.nextDate);\n window.gaU('send', 'event', { 'eventCategory': 'Navigation', 'eventAction': 'click', 'eventLabel': 'Navigate forward ' + conf.lang });\n });\n }\n };\n \n return {\n init: function (config) {\n conf = config;\n if (conf.cat == 'season') {\n $('#previous-day').html(\"Prev\");\n $('#previous-day-suffix').html(\"\");\n $('#next-day').html(\"Next\");\n $('#next-day-suffix').html(\"\");\n }\n else {\n $('#previous-day').html(conf.previousDate.date());\n $('#previous-day-suffix').html(utils.ordinalSuffixOf(conf.previousDate.date()));\n $('#next-day').html(conf.nextDate.date());\n $('#next-day-suffix').html(utils.ordinalSuffixOf(conf.nextDate.date()));\n if (conf.today.clone().add(3, 'days').isAfter(conf.nextDate))\n $('#forward-btn').prop('disabled', false).removeClass('disabled');\n else\n $('#forward-btn').prop('disabled', true).addClass('disabled');\n } \n _private.bind();\n }\n };\n }();\n\n var downloadCtls = new function () {\n var conf;\n var windowWidth;\n \n var _private = {\n bind: function () {\n $('#download-btn').unbind().removeAttr('href').addClass('btn-dropdown').click(function () {\n $('#downloadList').toggle();\n });\n\n $(document).on('click', function (event) {\n if (!$(event.target).closest('#downloadList').length && !$(event.target).closest('#download-btn').length) {\n $('#downloadList').hide();\n }\n if (!$(event.target).closest('#audioList').length && !$(event.target).closest('#audio-btn').length) {\n $('#audioList').hide();\n }\n });\n\n $('#audio-btn').unbind().click(function () {\n $('#audioList').toggle();\n });\n\n $(\"#audioListItem1\").click(function () {\n _private.setAudio('audio1', true);\n $('#audioList').hide();\n });\n\n $(\"#audioListItem2\").click(function () {\n _private.setAudio('audio2', true);\n $('#audioList').hide();\n });\n\n $(\"#audioListItem3\").click(function () {\n _private.setAudio('essence', true);\n $('#audioList').hide();\n });\n\n $(\"#audioListItem4\").click(function () {\n _private.setAudio('experiment', true);\n $('#audioList').hide();\n });\n\n },\n setAudio: function (audioType, play) {\n $(\"#player1\")[0].pause();\n var ext = \"\";\n if (audioType == \"essence\")\n ext = \"-ess\";\n if (audioType == \"audio2\" && conf.lang == \"hi\")\n ext = \"-osb\";\n if (audioType == \"audio2\" && conf.lang == \"en\")\n ext = \"-e2\";\n if (audioType == \"experiment\")\n $(\"#player1\")[0].setSrc(conf.baseUrl + \"/murlis/\" + conf.lang + \"/mp3/me-\" + conf.currentDate.format('YYYY-MM-DD') + \".mp3\");\n else\n $(\"#player1\")[0].setSrc(conf.baseUrl + \"/murlis/\" + conf.lang + \"/mp3/murli-\" + conf.currentDate.format('YYYY-MM-DD') + ext + \".mp3\");\n localStorage.setItem(\"murli.audioType\", audioType);\n if (play) {\n $(\"#player1\")[0].play();\n }\n },\n renderAudioBtn: function () {\n var audios = $(\"#audioList li.menuItem\").filter(function () {\n return this.style.display != 'none';\n });\n if (audios.length > 1) {\n $('#audio-btn').show();\n }\n else if (audios.length == 1 && $(window).width() < 992) {\n $('#audio-btn').show();\n $('#audioListItem0').show();\n }\n else\n $('#audio-btn').hide();\n return audios.length;\n },\n renderPlayer: function (width) {\n var audioType = localStorage.getItem('murli.audioType');\n if (typeof audioType === 'undefined' || audioType === null) {\n audioType = 'audio1';\n }\n var audioSrc = conf.baseUrl + \"/murlis/\" + conf.lang + \"/mp3/murli-\" + conf.currentDate.format('YYYY-MM-DD') + \".mp3\";\n if ((conf.lang == \"hi\" || conf.lang == \"en\") && audioType == \"audio2\") {\n audioSrc = conf.baseUrl + \"/murlis/\" + conf.lang + \"/mp3/murli-\" + conf.currentDate.format('YYYY-MM-DD') + \"-\" + ((conf.lang == \"hi\") ? \"osb\" : \"e2\") + \".mp3\";\n }\n $('#audioListItem0').empty();\n $('#audio-container').empty();\n if (width < 992) {\n $('#audioListItem0').append('');\n $('#player1').mediaelementplayer({\n autosizeProgress: true,\n enableAutosize: true,\n defaultAudioWidth: $('#object').width($('#object').parent().width() - 24),\n stretching: 'fill',\n features: ['playpause', 'progress', 'current', 'duration'],\n timeAndDurationSeparator: '/',\n success: function (me) {\n me.addEventListener('play', function (e) {\n \tconsole.log('Play event fired for: ' + audioSrc);\n window.gaU('send', 'event', { 'eventCategory': 'Audio', 'eventAction': 'play', 'eventLabel': 'Playing ' + audioType + \" \" + conf.lang + \" \" + conf.cat });\n }, false);\n me.addEventListener('pause', function (e) {\n \tconsole.log('Pause event fired for: ' + audioSrc);\n window.gaU('send', 'event', { 'eventCategory': 'Audio', 'eventAction': 'play', 'eventLabel': 'Pausing ' + audioType + ' ' + conf.lang + ' ' + conf.cat });\n }, false);\n }\n });\n $(\".mejs__time-rail\").width(\"130px\");\n }\n else {\n $('#audio-container').append('');\n $('#player1').mediaelementplayer({\n features: ['playpause', 'progress', 'current', 'duration'],\n timeAndDurationSeparator: ' / ',\n defaultAudioWidth: $('#audio-container').width(),\n stretching: 'fill',\n success: function (me) {\n me.addEventListener('play', function (e) {\n \tconsole.log('Play event fired for: ' + audioSrc);\n window.gaU('send', 'event', { 'eventCategory': 'Audio', 'eventAction': 'play', 'eventLabel': 'Playing ' + audioType + ' ' + conf.lang + ' ' + conf.cat });\n }, false);\n me.addEventListener('pause', function (e) {\n \tconsole.log('Pause event fired for: ' + audioSrc);\n window.gaU('send', 'event', { 'eventCategory': 'Audio', 'eventAction': 'play', 'eventLabel': 'Pausing ' + audioType + ' ' + conf.lang + ' ' + conf.cat });\n }, false);\n }\n });\n }\n\n }\n };\n return {\n init: function (config) {\n conf = config;\n windowWidth = $(window).width();\n\n var pdfFilename = \"murli-\" + conf.currentDate.format('YYYY-MM-DD') + \".pdf\";\n $(\"#murli-type>span\").text(\"Daily Murli\");\n if (config.cat == \"season\") {\n pdfFilename = \"murli-\" + conf.currentDate.format('YYYY-MM-DD') + \"-season.pdf\";\n $(\"#murli-type>span\").text(\"Avyakt Murli\");\n }\n $(\"#download-btn\").unbind().removeClass(\"btn-dropdown\").attr(\"href\", conf.baseUrl + \"/murlis/\" + conf.lang + \"/pdf/\" + pdfFilename).attr(\"download\", pdfFilename);\n if (isMurliApp) {\n $(\"#downloadPdf\").attr(\"download\", pdfFilename).unbind().click(function(event) {\n downloadFile(conf.baseUrl + \"/murlis/\" + conf.lang + \"/pdf/\" + pdfFilename, pdfFilename);\n $('#downloadList').hide();\n });\n }\n else\n $(\"#downloadPdf\").attr(\"href\", conf.baseUrl + \"/murlis/\" + conf.lang + \"/pdf/\" + pdfFilename).attr(\"download\", pdfFilename);\n $(\"#downloadListItem1\").hide();\n $(\"#downloadListItem2\").hide();\n $(\"#downloadListItem3\").hide();\n $(\"#downloadListItem4\").hide();\n\n $(\"#audio-btn\").hide();\n $(\"#audioListItem0\").hide();\n $(\"#audioListItem1\").hide();\n $(\"#audioListItem2\").hide();\n $(\"#audioListItem3\").hide();\n $(\"#audioListItem4\").hide();\n\n if (conf.cat !== \"season\")\n _private.renderPlayer($(window).width());\n \n $(\".mejs__container\").hide();\n\n checkMurliExists(conf, 'audio1', function (exists) {\n if (exists) {\n \n if (isMurliApp) {\n $(\"#downloadAudio1\").attr(\"download\", \"audio-murli-\" + conf.lang + \"-\" + conf.currentDate.format('YYYY-MM-DD') + \".mp3\").unbind().click(function(event) {\n downloadFile(conf.baseUrl + \"/murlis/\" + conf.lang + \"/mp3/murli-\" + conf.currentDate.format('YYYY-MM-DD') + \".mp3\", \"murli-\" + conf.lang + \"-\" + conf.currentDate.format('YYYY-MM-DD') + \".mp3\");\n $('#downloadList').hide();\n });\n }\n else\n $(\"#downloadAudio1\").attr(\"href\", \"#\").attr(\"onclick\", \"window.open('\" + conf.baseUrl + \"/murlis/\" + conf.lang + \"/mp3/murli-\" + conf.currentDate.format('YYYY-MM-DD') + \".mp3', '_system');\").attr(\"download\", \"audio-murli-\" + conf.lang + \"-\" + conf.currentDate.format('YYYY-MM-DD') + \".mp3\");\n\n $(\"#downloadListItem1\").show();\n $(\"#audio-btn\").show();\n $(\"#audioListItem1\").text('Play ' + $(\"#lang-switch option:selected\").text() + ' Murli');\n $(\"#audioListItem1\").show();\n _private.renderAudioBtn();\n\n $(\".mejs__container\").show();\n\n _private.bind();\n }\n else {\n \tif (localStorage.getItem('murli.audioType') === 'audio1')\n \t\tlocalStorage.removeItem('murli.audioType');\n }\n });\n checkMurliExists(conf, 'audio2', function (exists) {\n if (exists) {\n if (isMurliApp) {\n $(\"#downloadAudio2\").attr(\"download\", \"audio-murli-\" + conf.lang + \"-\" + conf.currentDate.format('YYYY-MM-DD') + \"-\" + ((conf.lang == \"hi\") ? \"osb\" : \"e2\") + \".mp3\").unbind().click(function(event) {\n downloadFile(conf.baseUrl + \"/murlis/\" + conf.lang + \"/mp3/murli-\" + conf.currentDate.format('YYYY-MM-DD') + \"-\" + ((conf.lang == \"hi\") ? \"osb\" : \"e2\") + \".mp3\", \"murli-\" + conf.lang + \"-\" + conf.currentDate.format('YYYY-MM-DD') + \"-\" + ((conf.lang == \"hi\") ? \"osb\" : \"e2\") + \".mp3\");\n $('#downloadList').hide();\n });\n }\n else\n $(\"#downloadAudio2\").attr(\"href\", \"#\").attr(\"onclick\", \"window.open('\" + conf.baseUrl + \"/murlis/\" + conf.lang + \"/mp3/murli-\" + conf.currentDate.format('YYYY-MM-DD') + \"-\" + ((conf.lang==\"hi\")?\"osb\":\"e2\") + \".mp3', '_system');\").attr(\"download\", \"audio-murli-\" + conf.lang + \"-\" + conf.currentDate.format('YYYY-MM-DD') + \"-\" + ((conf.lang==\"hi\")?\"osb\":\"e2\") + \".mp3\");\n $(\"#downloadListItem2 span.downloadTxt\").text((conf.lang == \"en\") ? \"English 2\" : \"Hindi (Madhuban)\");\n $(\"#downloadListItem2\").show();\n\n $(\"#audio-btn\").show();\n $(\"#audioListItem2\").text(((conf.lang === \"hi\") ? \"Play Hindi Murli (Madhuban)\" : \"Play English 2 Murli\")).show();\n $(\"#audioListItem2\").show();\n _private.renderAudioBtn()\n\n $(\".mejs__container\").show();\n\n _private.bind();\n }\n else {\n \tif (localStorage.getItem('murli.audioType') === 'audio2')\n \t\tlocalStorage.removeItem('murli.audioType');\n }\n });\n checkMurliExists(conf, 'essence', function (exists) {\n if (exists) {\n if (isMurliApp) {\n $(\"#downloadAudio3\").attr(\"download\", \"audio-murli-\" + conf.lang + \"-\" + conf.currentDate.format('YYYY-MM-DD') + \"-ess.mp3\").unbind().click(function(event) {\n downloadFile(conf.baseUrl + \"/murlis/\" + conf.lang + \"/mp3/murli-\" + conf.currentDate.format('YYYY-MM-DD') + \"-ess.mp3\", \"murli-\" + conf.lang + \"-\" + conf.currentDate.format('YYYY-MM-DD') + \"-ess.mp3\");\n $('#downloadList').hide();\n });\n }\n else \n $(\"#downloadAudio3\").attr(\"href\", \"#\").attr(\"onclick\", \"window.open('\" + conf.baseUrl + \"/murlis/\" + conf.lang + \"/mp3/murli-\" + conf.currentDate.format('YYYY-MM-DD') + \"-ess.mp3', '_system');\").attr(\"download\", \"murli-essence-\" + conf.lang + \"-\" + conf.currentDate.format('YYYY-MM-DD') + \".mp3\");\n $(\"#downloadListItem3\").show();\n $(\"#audio-btn\").show();\n $(\"#audioListItem3\").show();\n _private.renderAudioBtn();\n $(\".mejs__container\").show();\n _private.bind();\n }\n else {\n \tif (localStorage.getItem('murli.audioType') === 'essence')\n \t\tlocalStorage.removeItem('murli.audioType');\n }\n });\n checkMurliExists(conf, 'experiment', function (exists) {\n if (exists) {\n if (isMurliApp) {\n $(\"#downloadAudio4\").attr(\"download\", \"audio-murli-\" + conf.lang + \"-\" + conf.currentDate.format('YYYY-MM-DD') + \"-me.mp3\").unbind().click(function(event) {\n downloadFile(conf.baseUrl + \"/murlis/\" + conf.lang + \"/mp3/me-\" + conf.currentDate.format('YYYY-MM-DD') + \".mp3\", \"murli-experiment-\" + conf.lang + \"-\" + conf.currentDate.format('YYYY-MM-DD') + \".mp3\");\n $('#downloadList').hide();\n });\n }\n else \n $(\"#downloadAudio4\").attr(\"href\", conf.baseUrl + \"/murlis/\" + conf.lang + \"/mp3/me-\" + conf.currentDate.format('YYYY-MM-DD') + \".mp3\").attr(\"download\", \"murli-experiment-\" + conf.lang + \"-\" + conf.currentDate.format('YYYY-MM-DD') + \".mp3\");\n $(\"#downloadListItem4\").show();\n $(\"#audio-btn\").show();\n $(\"#audioListItem4\").show();\n _private.renderAudioBtn();\n $(\".mejs__container\").show();\n _private.bind();\n }\n else {\n \tif (localStorage.getItem('murli.audioType') === 'experiment')\n \t\tlocalStorage.removeItem('murli.audioType');\n }\n });\n }\n };\n }();\n\n function initAudioCtls(config) {\n $(\"#player1\")[0].pause();\n $(\".mejs__button.mejs__playpause-button\").removeClass(\"mejs__pause\").addClass(\"mejs__play\");\n $(\".mejs__container\").hide();\n $(\"#audioList\").hide();\n };\n\n function initControls(config) {\n langSwitchCtl.init(config);\n navCtls.init(config);\n downloadCtls.init(config);\n //initAudioCtls(config);\n $(\"#print-btn\").click(function () {\n window.print();\n window.gaU('send', 'event', { 'eventCategory': 'Print', 'eventAction': 'click', 'eventLabel': 'Printed ' + config.lang + ' ' + config.cat });\n });\n };\n\n function initSong(config) {\n if ($(\".song-txt\").length) {\n checkMurliExists(config, 'song', function (exists) {\n if (exists) {\n $(\".song-txt\").append(' ');\n $(\"#song-player\").mediaelementplayer({\n defaultAudioWidth: 80,\n audioHeight: 24,\n enableAutosize: false,\n features: ['playpause'],\n success: function (me) {\n me.addEventListener('play', function (e) {\n console.log('Play event fired for song.');\n window.gaU('send', 'event', { 'eventCategory': 'Audio', 'eventAction': 'play', 'eventLabel': 'Playing song ' + config.lang + ' ' + config.cat });\n }, false);\n me.addEventListener('pause', function (e) {\n console.log('Pause event fired for song.');\n window.gaU('send', 'event', { 'eventCategory': 'Audio', 'eventAction': 'play', 'eventLabel': 'Pausing song ' + config.lang + ' ' + config.cat });\n }, false);\n }\n });\n }\n });\n }\n }\n\n function onAvyaktListReady(event, config, avyaktMurliDates1) {\n menuReady = true;\n avyaktMurliDates = avyaktMurliDates1;\n //if (menuReady && murliReady) {\n // initControls(config);\n //}\n };\n\n function onMurliReady(event, config) {\n murliReady = true;\n //if (menuReady && murliReady) {\n initControls(config);\n //}\n $(\"#lang-switch\").val(config.lang);\n initSong(config);\n window.gaU('send', 'pageview', { 'title': 'Official Brahma Kumaris Daily Murli', 'page': '/' + config.cat + '-' + config.lang + '-' + config.currentDate.format('YYYY-MM-DD') });\n //window.history.pushState({ href: \"/#\" + config.lang + \"+\" + config.currentDate.format(\"YYYY-MM-DD\") }, \"Official Brahma Kumaris Daily Murli\", \"/#\" + config.lang + \"+\" + config.currentDate.format(\"YYYY-MM-DD\") + \"+\" + config.cat);\n };\n\n // main init method\n function init(config) {\n console.log('Initialising murli module .....');\n\n $(\".slideout-menu\").on('avyaktlistready', function (event, config, avyaktMurliDates) {\n onAvyaktListReady(event, config, avyaktMurliDates);\n });\n slideOutMenu.init(config);\n\n $(\"#murli-container\").on('murliready', function (event, config) {\n onMurliReady(event, config);\n });\n moveToDate(config);\n }\n\n return {\n init: init,\n downloadFile: downloadFile,\n moveToDate: moveToDate\n };\n}());\n\nmodule.exports = MurliModule;\n"," var iScrollPos = 0;\n $(window).scroll(function () {\n var delta = 50;\n var iCurScrollPos = $(this).scrollTop();\n\n if(Math.abs(iScrollPos - iCurScrollPos) >= delta){\n if ((iCurScrollPos > iScrollPos) && (iCurScrollPos > 50)) {\n $(\"header\").addClass(\"navbar-fixed-top fade-in\").hide();\n $(\"#button-bar\").addClass(\"mt-header fade-in\").hide();\n $(\"#full-screen\").hide();\n $(\"footer\").hide().removeClass(\"fade-in\");\n }\n else {\n var marginTop = $(\"header\").height();\n $(\"header\").addClass(\"navbar-fixed-top fade-in\").show();\n $(\"#button-bar\").addClass(\"mt-header fade-in\").css(\"top\", marginTop+1).show();\n if($(document).width() < 769){\n $(\"footer\").addClass(\"fade-in\").show(); \n }\n if (iCurScrollPos <= 50){\n $(\"header\").removeClass(\"navbar-fixed-top fade-in\").fadeIn();\n $(\"#button-bar\").removeClass(\"mt-header fade-in\").fadeIn();\n $(\"#full-screen\").fadeIn();\n }\n }\n iScrollPos = iCurScrollPos;\n }\n });","var SlideOutMenu = (function () {\n 'use strict';\n var conf;\n var moment = require('moment');\n var utils = require('./utils');\n var avyaktMurliDates = [];\n var isMurliApp = navigator.userAgent.indexOf(\"MurliApp\") !== -1;\n var globals = require('globals.js');\n var isOffline = ('onLine' in navigator && !navigator.onLine) || typeof navigator.connection != 'undefined' && navigator.connection.type === 'none';\n\n function menuClose() {\n // create menu variables\n var slideoutMenu = $('.slideout-menu');\n var slideoutMenuWidth = slideoutMenu.width();\n // toggle open class\n slideoutMenu.removeClass(\"open\");\n slideoutMenu.animate({\n right: -slideoutMenuWidth\n }, 320);\n }\n\n function loadMetaData(conf) {\n var localFilename = conf.lang + '-season-murli-list.json';\n fetch(conf.baseUrl + \"/murlis/\" + conf.lang + \"/season-murli-list.json\").then(function (response) {\n return response.json();\n // TODO: in case of /#error remove menu options\n }).then(function (body) {\n globals.fs.write(globals.cache.toPath(localFilename), body);\n generateAvyaktMenu(body.reverse());\n $(\".slideout-menu\").trigger('avyaktlistready', [conf, avyaktMurliDates]);\n }).catch(function (err) {\n globals.fs.exists(globals.cache.toPath(localFilename)).then(function (entry) {\n globals.fs.readJSON(globals.cache.toPath(localFilename)).then(function (content) {\n generateSeasonMenu(content);\n }).catch(function (err) {\n console.error('An error occurred reading the json file from cache.', err);\n });\n }).catch(function (err) {\n console.log('Error fetching metadata. ' + err);\n $(\"#seasonalMurliList\").empty();\n $(\".slideout-menu\").trigger('avyaktlistready', [conf, []]);\n });\n });\n }\n\n function generateAvyaktMenu(years) {\n var app = require('./murli');\n $(\"#seasonalMurliList\").empty();\n $.each(years, function (y) {\n var html = '
  • ' + years[y].year + '
  • '\n $(\"#seasonalMurliList\").append(html);\n });\n $.each(years, function (y) {\n $.each(years[y].months, function (m) {\n $.each(years[y].months[m].days, function (d) {\n var id = y + '-' + m + '-' + d;\n $(\"#day-item-\" + id).click(function () {\n conf.cat = \"season\";\n app.moveToDate(conf, moment(years[y].months[m].days[d]));\n $(\"#murli-type>span\").text(\"Season Avyakt\");\n menuClose();\n window.gaU('send', 'event', { 'eventCategory': 'Navigation', 'eventAction': 'click', 'eventLabel': conf.cat + '/' + conf.lang + '/' + years[y].months[m].days[d] });\n });\n });\n });\n });\n }\n\n function init(config) {\n var app = require('./murli');\n conf = config;\n loadMetaData(conf);\n\n $(function () {\n var $date = $('.docs-date');\n var options = {\n endDate: new Date(conf.today.clone().add(2, 'days').toDate()),\n autoShow: true,\n startDate: new Date(2017, 0, 1),\n inline: true,\n container: '#pastMurliListItem1',\n language: 'en-GB',\n offset: 0,\n weekStart: 1,\n startView: 0\n };\n $date.on({\n 'pick.datepicker': function (e) {\n conf.cat = \"daily\";\n app.moveToDate(conf, moment(e.date));\n menuClose();\n }\n }).datepicker(options);\n });\n\n $('.slideout-menu-toggle').on('click', function (e) {\n e.preventDefault();\n // create menu variables\n var slideoutMenu = $('.slideout-menu');\n var slideoutMenuWidth = $('.slideout-menu').width();\n // toggle open class\n slideoutMenu.toggleClass(\"open\");\n // slide menu\n if (slideoutMenu.hasClass(\"open\")) {\n slideoutMenu.animate({\n right: \"0px\"\n });\n } else {\n slideoutMenu.animate({\n right: -slideoutMenuWidth\n }, 320);\n }\n e.stopImmediatePropagation();\n });\n\n $(\"#dailyMenuItem\").click(function (event) {\n conf.cat = \"daily\";\n app.moveToDate(conf, conf.today);\n $(\"#murli-type>span\").text(\"Daily Murli\");\n window.gaU('send', 'event', { 'eventCategory': 'Navigation', 'eventAction': 'click', 'eventLabel': conf.cat + '/' + conf.lang + '/' + conf.today.format('YYYY-MM-DD') });\n menuClose();\n });\n\n $(document).on(\"click\", \".daily-item\", function (e) {\n $(this).parent().children(\"ul:first-of-type\").slideToggle(300);\n $(this).parent().toggleClass(\"toggled toggle\");\n e.stopImmediatePropagation();\n }).on(\"click\", \".past-murli-item\", function (e) {\n $(this).parent().children(\"ul:first-of-type\").slideToggle(300);\n $(this).parent().toggleClass(\"toggled toggle\");\n e.stopImmediatePropagation();\n });\n\n $(document).on(\"click\", \".seasonal-item\", function (e) {\n $(this).parent().children(\"ul:first-of-type\").slideToggle(300);\n $(this).parent().toggleClass(\"toggled toggle\");\n e.stopImmediatePropagation();\n }).on(\"click\", \".year-item\", function (e) {\n $(this).parent().children(\"ul\").slideToggle(300);\n $(this).parent().toggleClass(\"toggled toggle\");\n e.stopImmediatePropagation();\n }).on(\"click\", \".month-item\", function (e) {\n $(this).parent().children(\"ul\").slideToggle(300);\n $(this).parent().toggleClass(\"toggled toggle\");\n e.stopImmediatePropagation();\n });\n\n $(\"#refreshBtn\").click(function (e) {\n location.reload();\n menuClose();\n });\n\n $(\"#shareBtn\").click(function (e) {\n window.plugins.socialsharing.share('Murli of ' + conf.currentDate.format(\"MMM Do YYYY\"), null, 'https://madhubanmurli.org/img/favicon-96x96.png', 'http://ec2-52-50-182-7.eu-west-1.compute.amazonaws.com/#' + conf.lang + '+' + conf.currentDate.format(\"YYYY-MM-DD\") + '+' + conf.cat);\n menuClose();\n });\n\n $(\"#themeLnk\").click(function (e) {\n $(\"#themeCbx\").click();\n //$(\"#themeCbx\").prop('checked', !$(\"#themeCbx\").prop(\"checked\"))\n });\n\n $(\"#themeCbx\").change(function (e) {\n if ($(this).prop('checked')) {\n $('head').append('');\n localStorage.setItem(\"murli.darkTheme\", true);\n }\n else {\n localStorage.removeItem(\"murli.darkTheme\");\n $('link[title=dark-theme]').prop('disabled', true);\n }\n });\n\n $(\"#feedbackBtn\").click(function (e) {\n menuClose();\n Userback.open(\"form\");\n });\n\n if (isMurliApp) {\n $('#download-menu-item').hide();\n if (isOffline) {\n $('#refresh-menu-item').hide();\n $('#share-menu-item').hide();\n }\n else {\n $('#refresh-menu-item').show();\n $('#share-menu-item').show();\n }\n }\n else {\n $('#refresh-menu-item').hide();\n $('#download-menu-item').show();\n $('#share-menu-item').hide();\n }\n }\n\n return {\n menuClose: menuClose,\n init: init\n }\n}());\n\nmodule.exports = SlideOutMenu;","var Utils = (function() {\n \n function ordinalSuffixOf(i) {\n var j = i % 10,\n k = i % 100;\n if (j == 1 && k != 11) {\n return \"st\";\n }\n if (j == 2 && k != 12) {\n return \"nd\";\n }\n if (j == 3 && k != 13) {\n return \"rd\";\n }\n return \"th\";\n };\n\n function isBlank(str) {\n return (!str || /^\\s*$/.test(str));\n }\n\n return {\n \tordinalSuffixOf: ordinalSuffixOf,\n isBlank: isBlank\n };\n}());\n\nmodule.exports = Utils;","var Zoom = (function() {\n 'use strict';\n var utils = require('./utils');\n\n function init() {\n\n var savedFontSize = localStorage.getItem(\"murli.fontSize\");\n var currentFontSize = parseInt($(\"#murli-container\").css(\"font-size\"));\n if (!utils.isBlank(savedFontSize) && currentFontSize != savedFontSize) {\n $('#murli-container').animate({'font-size':savedFontSize + \"px\"}, 100);\n }\n\n $(\"#zoom-in , #m-zoom-in\").click(function(event) {\n event.preventDefault();\n var fontSize = parseInt($(\"#murli-container\").css(\"font-size\"));\n fontSize = fontSize + 1;\n $('#murli-container').animate({'font-size':fontSize + \"px\"}, 100);\n localStorage.setItem(\"murli.fontSize\", fontSize);\n });\n\n $(\"#zoom-out, #m-zoom-out\").click(function(event) {\n event.preventDefault();\n var fontSize = parseInt($(\"#murli-container\").css(\"font-size\"));\n fontSize = fontSize - 1;\n $('#murli-container').animate({'font-size':fontSize + \"px\"}, 100);\n localStorage.setItem(\"murli.fontSize\", fontSize);\n });\n\n $(\"#full-screen\").click(function() {\n /*if ($(this).scrollTop()!==0){\n $(\"header\").fadeOut();\n $(\"#button-bar\").fadeOut();\n }*/\n if($(\"#full-screen i\").hasClass( \"icon-expand\" )){\n $(\"#full-screen i\").addClass(\"icon-compress\").removeClass(\"icon-expand\");\n //$(\"header\").hide();\n }else{\n $(\"#full-screen i\").addClass(\"icon-expand\").removeClass(\"icon-compress\");\n //$(\"header\").show();\n }\n $('#murli-container').toggleClass(\"container\").toggleClass(\"containter-fluid pa-1 px-2\");\n $(\"#nav-container\").toggleClass(\"container\").toggleClass(\"containter-fluid px-2\");\n $(\"#header-container\").toggleClass(\"container\").toggleClass(\"containter-fluid px-2\");\n $(\"#footer-text\").toggleClass(\"container\").toggleClass(\"containter-fluid px-2\");\n $(\"#footer-zoom\").toggleClass(\"container\").toggleClass(\"containter-fluid px-2\");\n });\n }\n\n return {\n init: init\n };\n}());\n\nmodule.exports = Zoom;\n","var $ = require('jquery');\nrequire('mediaelement');\nrequire('promiscuous');\nrequire('whatwg-fetch');\nrequire('@chenfengyuan/datepicker');\n\nvar moment = require('moment');\nvar zoom = require('./zoom');\nvar murliApp = require('./murli');\nvar pullToRefresh = require('pulltorefreshjs');\n\nwindow.addEventListener(\"orientationchange\", function(){\n console.log(screen.orientation.type); // e.g. portrait\n if(device.platform == \"iOS\") {\n // Force CSS refresh\n $('#css').replaceWith('');\n }\n});\n\ndocument.addEventListener('DOMContentLoaded', () => {\n\n var d = moment();\n var today = moment();\n var lang = localStorage.getItem(\"murli.lang\");\n var cat = 'daily';\n\n // Set theme\n var darkTheme = localStorage.getItem(\"murli.darkTheme\");\n if (darkTheme) {\n $('head').append('');\n $(\"#themeCbx\").prop('checked', true);\n }\n\n var reqUrl = window.location.href;\n //TODO: do regex check.\n var redirectPar = (reqUrl.indexOf(\"#\") > 0) ? reqUrl.substring(reqUrl.indexOf(\"#\") + 1) : null;\n if (redirectPar && redirectPar.length > 0) {\n var params = redirectPar.split(/[\\s\\+]+/);\n if (params[0])\n lang = params[0];\n if (params[1]) {\n d = moment(params[1], 'YYYY-MM-DD');\n if (!d.isValid || d.isAfter(today.add(1, 'days')))\n d = today;\n }\n if (params[2])\n cat = params[2];\n }\n\n if (typeof lang === 'undefined' || lang === null)\n lang = 'hi';\n var config = {\n baseUrl: 'https://murli.madhuban.org/',\n lang: lang,\n cat: cat,\n currentDate: d,\n today: today,\n nextDate: moment(d).add(1, 'days'),\n previousDate: moment(d).subtract(1, 'days')\n };\n murliApp.init(config);\n\n $(function () {\n $('.headroom').each(function () {\n var $win = $(window), $self = $(this), isHidden = false, lastScrollTop = 0;\n\n $win.on('scroll', function () {\n var scrollTop = $win.scrollTop();\n var offset = scrollTop - lastScrollTop;\n lastScrollTop = scrollTop;\n\n // min-offset, min-scroll-top\n if (offset > 10 && scrollTop > 200 ) {\n if (!isHidden) {\n $self.addClass('headroom-hidden');\n isHidden = true;\n }\n } else if (offset < -30 || scrollTop < 200) {\n if (isHidden) {\n $self.removeClass('headroom-hidden');\n isHidden = false;\n }\n }\n })\n });\n\n $('.footroom').each(function () {\n var $win = $(window), $self = $(this), isHidden = false, lastScrollTop = 0;\n\n $win.on('scroll', function () {\n var scrollTop = $win.scrollTop();\n var offset = scrollTop - lastScrollTop;\n lastScrollTop = scrollTop;\n\n // min-offset, min-scroll-top\n if (offset > 10 && scrollTop > 200 ) {\n if (!isHidden) {\n $self.addClass('footroom-hidden');\n isHidden = true;\n }\n } else if (offset < -30 || scrollTop < 200) {\n if (isHidden) {\n $self.removeClass('footroom-hidden');\n isHidden = false;\n }\n }\n });\n });\n });\n zoom.init();\n pullToRefresh.init({\n mainElement: 'body',\n onRefresh() {\n window.location.reload();\n }\n /*\n iconArrow: ReactDOMServer.renderToString(\n \n ),\n iconRefreshing: ReactDOMServer.renderToString(\n \n ),*/\n });\n});\n"]}