{"version":3,"sources":["au-flowbox.legacy.js"],"names":["AU","flowbox_legacy","options","config","container","tracking","render","multipleDepartments","data","mode","source","headline","prepend","prependIndex","byline","boxes","mergeOptions","box","hasOwnProperty","conf","this","init","i","length","id","$","items","name","children","parent","get","parseList","each","obj","html","push","foundPeople","findSearchableData","text","ipure","indexOf","index","empty","pageLang","click","e","preventDefault","parseInt","selectBegin","selectEnd","paragraphs","change","val","search","autocomplete","request","response","matcher","RegExp","ui","escapeRegex","term","grep","map","key","label","value","test","helpers","normalizeAccents","minLength","autoFocus","delay","select","show","item","append","_renderItem","ul","url","appendTo","peopleBoxes","me","phone","foundMarkup","fp","markup","getXML","searchCrossSite","people","getPeople","searchDetailsCrossSite","getPersonDetails","personHTML","buildingNumber","email","officePhone","address","auid","centerMap","removeClass","officePhoneSplit","split","pMarkup"],"mappings":"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","file":"au-flowbox.legacy.js","sourcesContent":["/**\r\n * Titel: FLOWBOX\r\n * Beskrivelse: bruges primært til visning af kontaktpersoner på medarbejdersider, samt til åbningstider for it-supporten\r\n * Status: ES5-syntax hele vejen igennem; bør omskrives til ES6/React\r\n */\r\n\r\nAU.flowbox_legacy = {\r\n options: {\r\n config: {\r\n container: '.au_flowbox',\r\n tracking: '/virtual/flowbox/',\r\n render: 'ul',\r\n multipleDepartments: false\r\n },\r\n data: {\r\n mode: 'list',\r\n source: '.au_flowbox_list',\r\n headline: 'Overskrift',\r\n prepend: '',\r\n prependIndex: 0,\r\n byline: ''\r\n }\r\n },\r\n boxes: [],\r\n mergeOptions: function (box) {\r\n if (!box.hasOwnProperty('config')) {\r\n box.config = {};\r\n }\r\n\r\n for (var conf in this.options.config) {\r\n if (!box.config.hasOwnProperty(conf)) {\r\n box.config[conf] = this.options.config[conf];\r\n }\r\n }\r\n\r\n if (!box.hasOwnProperty('data')) {\r\n box.data = {};\r\n }\r\n\r\n for (var data in this.options.data) {\r\n if (!box.data.hasOwnProperty(data)) {\r\n box.data[data] = this.options.data[data];\r\n }\r\n }\r\n\r\n },\r\n init: function () {\r\n\r\n for (var i = 0; i < this.boxes.length; i++) {\r\n\r\n var box = this.boxes[i];\r\n this.mergeOptions(box);\r\n\r\n box.id = i;\r\n box.container = $(box.config.container);\r\n box.items = [];\r\n box.items.name = box.data.headline;\r\n box.items.children = [];\r\n box.items.parent = null;\r\n\r\n this.data.get(box);\r\n\r\n }\r\n },\r\n data: {\r\n get: function (box) {\r\n if (typeof box.container !== \"undefined\") {\r\n\r\n var parseList = function (items, source) {\r\n\r\n $(source).each(function () {\r\n $('> li > p', this).each(function () {\r\n var obj = {\r\n name: $(this).html(),\r\n children: [],\r\n parent: items\r\n };\r\n\r\n items.children.push(obj);\r\n var children = $('> ul', $(this).parent());\r\n if (children.length > 0) {\r\n parseList(obj, children);\r\n }\r\n });\r\n });\r\n };\r\n\r\n switch (box.data.mode) {\r\n case 'list':\r\n parseList(box.items, box.data.source);\r\n this.render(box, box.items, 0);\r\n break;\r\n default:\r\n break;\r\n }\r\n\r\n }\r\n },\r\n foundPeople: [],\r\n findSearchableData: function (text, render) {\r\n\r\n if (typeof AU.ipure !== \"undefined\" && text.indexOf(' ') === -1) {\r\n return '
';\r\n\r\n } else {\r\n\r\n if (render === \"ul\") {\r\n return '' + text + '
' + (AU.pageLang === \"da\" ? 'Tilbage' : 'Back') + '
';\r\n }\r\n\r\n box.container.html(html);\r\n\r\n\r\n\r\n $('.next', box.container).click(function (e) {\r\n e.preventDefault();\r\n\r\n var index = parseInt($(this).data('index'));\r\n var id = parseInt($(this).data('id'));\r\n\r\n AU.flowbox_legacy.data.render(box, items.children[id], index + 1);\r\n\r\n });\r\n\r\n }\r\n\r\n if (box.config.render === \"select\") {\r\n\r\n html = '' + (AU.pageLang === \"da\" ? 'Tilbage' : 'Back') + '
';\r\n }\r\n\r\n box.container.html(html);\r\n\r\n\r\n\r\n $('.next', box.container).change(function (e) {\r\n e.preventDefault();\r\n\r\n var index = parseInt($(this).data('index'));\r\n var id = parseInt($(this).val());\r\n\r\n if (id > -1) {\r\n AU.flowbox_legacy.data.render(box, items.children[id], index + 1);\r\n }\r\n\r\n });\r\n\r\n }\r\n\r\n if (box.config.render === \"autocomplete\") {\r\n html = \"' + ui.item.children[i].name + '
';\r\n }\r\n\r\n $('.au_flowbox_ac_results', box.container).append(html);\r\n }\r\n }).data('ui-autocomplete')._renderItem = function (ul, item) {\r\n return $('').data('ui-autocomplete-item', item).append('' + item.label + '').appendTo(ul);\r\n };\r\n\r\n }\r\n\r\n var peopleBoxes = $('.au_flowbox_wrap.person');\r\n peopleBoxes.each(function () {\r\n var me = $(this);\r\n var phone = me.data('phone');\r\n\r\n var foundMarkup = \"\";\r\n var fp = AU.flowbox_legacy.data.foundPeople;\r\n for (var i = 0; i < fp.length; i++) {\r\n if (parseInt(fp[i].id) === phone) {\r\n foundMarkup = fp[i].markup;\r\n break;\r\n }\r\n }\r\n\r\n if (foundMarkup === \"\") {\r\n\r\n AU.helpers.getXML(AU.ipure.source.searchCrossSite + phone, function (data) {\r\n var people = AU.ipure.getPeople(data);\r\n if (people.length === 1) {\r\n AU.helpers.getXML(AU.ipure.source.searchDetailsCrossSite + people[0].url, function (data) {\r\n AU.ipure.getPersonDetails(data, function (personHTML, buildingNumber, email, officePhone, address, auid, centerMap) {\r\n me.html(personHTML);\r\n me.removeClass('loading');\r\n var officePhoneSplit = officePhone.split(' ');\r\n\r\n AU.flowbox_legacy.data.foundPeople.push({\r\n id: officePhoneSplit.length > 1 ? officePhoneSplit[1] : officePhone,\r\n markup: personHTML\r\n });\r\n }, box.config.multipleDepartments);\r\n\r\n });\r\n } else {\r\n var pMarkup = '';\r\n me.html(pMarkup);\r\n me.removeClass('loading');\r\n\r\n AU.flowbox_legacy.data.foundPeople.push({\r\n id: phone,\r\n markup: pMarkup\r\n });\r\n }\r\n });\r\n\r\n } else {\r\n me.html(foundMarkup);\r\n me.removeClass('loading');\r\n }\r\n });\r\n\r\n $('.prev', box.container).click(function (e) {\r\n e.preventDefault();\r\n\r\n var index = parseInt($(this).data('index'));\r\n\r\n AU.flowbox_legacy.data.render(box, items.parent, index - 1);\r\n\r\n });\r\n }\r\n\r\n }\r\n }\r\n};"]}